Maison > Questions et réponses > le corps du texte
Fichier php.snippets
里的 snippet...endsnippet 块越来越多;
越来越不方便管理,尤其是有些代码块很大时;
观察了下 honza/vim-snippets
, a constaté qu'il existe également une langue et un fichier ;
Existe-t-il une méthode ou un remède populaire pour le traiter ?
巴扎黑2017-05-16 16:39:13
Voir la documentation
Voir la documentation
Voir la documentation
https://github.com/SirVer/ultisnips/blob...
En utilisant une stratégie similaire à la façon dont Vim détecte |ftplugins|, UltiSnips
parcourt les répertoires de définition d'extraits de code à la recherche de fichiers
avec des noms des modèles suivants : ft.snippets, ft_*.snippets ou
ft/, où "ft " est le 'type de fichier' du document actuel et "" est
un caractère générique en forme de shell correspondant à n'importe quelle chaîne, y compris la chaîne vide.
Le tableau suivant montre quelques noms de fichiers d'extraits typiques et leur
type de fichier associé.snippet filename filetype ~ ruby.snippets ruby perl.snippets perl c.snippets c c_my.snippets c c/a c c/b.snippets c all.snippets *all all/a.snippets *all
Par exemple, si vous avez un tas d'extraits Ruby, vous pouvez diviser ces extraits en fichiers séparés. Vous pouvez ensuite les gérer via des répertoiresruby/*[.snippets]
, 也可以直接用文件管理ruby_*.snippets
Au fait, comment gérez-vous le code ?
PHP中文网2017-05-16 16:39:13
D'après moi, on suppose que votre gestion gênante fait référence à plus de blocs d'extraits, plus le fichier est long et il n'est pas facile à parcourir
set foldcolumn=1 "设置vim左侧1个宽度用来显示folds闭合状态"
set foldmethod=syntax "folds根据语言来决定如何进行闭合"
zR "打开所有folds"
zM "关闭所有folds"
zi "在以上两个命令间切换,其实是切换foldenable On/Off"
Fonctionnement : fermez d'abord tous les blocs d'extraits via la commande zM (le fichier devient très petit, chaque extrait n'affiche qu'une seule ligne), puis parcourez facilement pour trouver les extraits dont vous avez besoin (déplacez le curseur là-bas), puis utilisez zR ou zi ouvre tous les extraits. À ce moment, vous pouvez voir le contenu de cet extrait
Bonus : après avoir suivi les opérations ci-dessus, le curseur doit être en bas. Utilisez la commande zz pour déplacer facilement le contenu au milieu de l'écran. visualisation.
set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Plugin goes here
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-sensible'
Plugin 'tpope/vim-fugitive'
Plugin 'tpope/vim-commentary'
Plugin 'tpope/vim-repeat'
Plugin 'scrooloose/syntastic'
Plugin 'tpope/vim-surround'
Plugin 'vim-airline/vim-airline'
Plugin 'vim-airline/vim-airline-themes'
Plugin 'tomasr/molokai'
Plugin 'morhetz/gruvbox'
Plugin 'mattn/emmet-vim'
Plugin 'SirVer/ultisnips'
Plugin 'honza/vim-snippets'
Plugin 'ctrlpvim/ctrlp.vim'
Plugin 'scrooloose/nerdtree'
Plugin 'mru.vim'
Plugin 'rking/ag.vim'
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Plugin stops here
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
call vundle#end()
filetype plugin indent on
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Tab Settings
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set tabstop=4
set shiftwidth=4
set expandtab
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Colorscheme Settings
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set background=dark
if has('gui_running')
colorscheme molokai
else
colorscheme slate
endif
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Text
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set linebreak
set textwidth=500
set wrap
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Other Settings
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set number
let mapleader=','
set foldcolumn=1
set foldmethod=syntax
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" User ,ev to open .vimrc file
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
nmap <leader>ev :tabedit $MYVIMRC<CR>
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Automatically source .vimrc file
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
augroup source_vimrc
autocmd!
autocmd BufWritePost $MYVIMRC source $MYVIMRC
augroup END
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" CtrlP
""""""""""""""""""""""""""""""""""""""""""""""""""""""""
let g:ctrlp_user_command = 'ag %s -i --nocolor --nogroup --hidden
\ --ignore .git
\ --ignore .svn
\ --ignore .hg
\ --ignore .DS_Store
\ --ignore "**/*.pyc"
\ -g ""'
let g:ctrlp_working_path_mode=0
let g:ctrlp_match_window='results=100'
""""""""""""""""""""""""""""""
" JavaScript section
"""""""""""""""""""""""""""""""
au FileType javascript call JavaScriptFold()
au FileType javascript setl fen
au FileType javascript setl nocindent
au FileType javascript imap <c-t> $log();<esc>hi
au FileType javascript imap <c-a> alert();<esc>hi
au FileType javascript inoremap <buffer> $r return
au FileType javascript inoremap <buffer> $f //--- PH ----------------------------------------------<esc>FP2xi
function! JavaScriptFold()
setl foldmethod=syntax
setl foldlevelstart=1
syn region foldBraces start=/{/ end=/}/ transparent fold keepend extend
function! FoldText()
return substitute(getline(v:foldstart), '{.*', '{...}', '')
endfunction
setl foldtext=FoldText()
endfunction