Maison > Questions et réponses > le corps du texte
Comme le montre l'image, lorsque vous utilisez vim pour ouvrir un nouveau fichier (tel que a.cpp), l'en-tête du fichier est automatiquement ajouté. Je voudrais demander quel plugin peut faire cela. Merci.
漂亮男人2017-05-16 16:42:17
Aucun plug-in n'est requis, configurez-le simplement, comme cet article (Configurer vim pour ajouter automatiquement les informations sur l'auteur dans le code source)
Si vous souhaitez créer un fichier à ajouter automatiquement, vous pouvez d'abord enregistrer le fichier par défaut dans un fichier, puis ajouter un code similaire au suivant dans .vimrc
:
au BufNewFile *.xml 0r ~/.vim/xml.skel | let IndentStyle = "xml"
au BufNewFile *.html 0r ~/.vim/html.skel | let IndentStyle = "html"
Pour les plug-ins, essayez ceux répertoriés sur cette page.
Source
为情所困2017-05-16 16:42:17
function MyCopy(type, position)
if a:position == 'start'
let line_num = line(".")
else
let line_num = a:position
endif
if a:type == "class"
call setline(line_num,"/**")
call append(line_num+0," * $RCSfile$ ".expand("%"))
call append(line_num+1," * @touch date ".strftime("%c"))
call append(line_num+2," * @author Rambo Lee <blabalbal#babab>")
call append(line_num+3," * @package ")
call append(line_num+4," * @link http://lanbolee.com/")
call append(line_num+5," * @Copyright © ".strftime("%Y")." All rights reserved.")
call append(line_num+6," * @license http://www.zend.com/license/3_0.txt PHP License 3.0")
call append(line_num+7," * @version $Id$ ")
call append(line_num+8," * @filesource ")
call append(line_num+9," */")
else
if a:type == "func"
call setline(line_num," /**")
call append(line_num+0," * @access ")
call append(line_num+1," * @author Rambo Lee <blabalbal#babab>")
call append(line_num+2," * @param")
call append(line_num+3," * @return")
call append(line_num+4," */")
else
call setline(line_num," /**")
call append(line_num+0," * @access ")
call append(line_num+1," * @var ")
call append(line_num+2," */")
endif
endif
endfunction
map <C-I> <Esc>:call MyCopy("class",'start')<CR><Esc>10j$a
map df <Esc>:call MyCopy("func", 'start')<CR><Esc>
map dv <Esc>:call MyCopy("var", 'start')<CR><Esc>
Partagez .vimrc. J'ai regardé d'autres l'implémenter de cette façon, puis je l'ai légèrement innové moi-même.