vim - Comment gérer les scripts Ultisnips?
淡淡烟草味
淡淡烟草味 2017-05-16 16:37:13
0
2
705

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 ?

淡淡烟草味
淡淡烟草味

répondre à tous(2)
巴扎黑

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 ?

洪涛

Solution : pliage (basé sur les hypothèses suivantes)

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

Les paramètres .vimrc sont les suivants

set foldcolumn=1 "设置vim左侧1个宽度用来显示folds闭合状态"
set foldmethod=syntax "folds根据语言来决定如何进行闭合"

Commande (en mode normal) :

zR "打开所有folds"
zM "关闭所有folds"
zi "在以上两个命令间切换,其实是切换foldenable On/Off"

Comparaison avant et après la fermeture des plis (via la commande ci-dessus)

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.

Enfin, un simple .vimrc est joint pour référence (le plugin est géré par Vundle) :

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
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!