bonsoir,
quelqu’un sait-il comment faire pour paramétrer vim afin que lorsque je lance
vim toto.c un fichier toto.c soit créé avec un certain nombre de lignes prédéfinie ?
Dans le temps je mettais fais un système de template :
vim-t8605-50.html#p245418
peut être qu’il t’inspireras.
regarde au bufNewFile
:h au
par exemple pour mes fichiers tex
au bufNewFile *.tex ks|call CreaFich()|'s
fun CreaFich()
set filetype=tex
execute("r! echo \"\\%Fichier: \"%")
execute("r! echo \"\\%Crée le \"".strftime("%d %b %Y"))
execute("r! echo \"\\%Dernière modification: \"".strftime("%d %b %Y %X"))
execute("r ~/.vim/ftplugin/latex-suite/templates/texte.tex")
endfun
voir aussi au BufRead *
Par exemple pour modifier la date de modification j’utilise
autocmd BufWritePre,FileWritePre *.tex ks|call DerModif2()|'s
fun DerModif2()
if line("$") > 20
let l = 20
else
let l = line("$")
endif
exe "1," . l . "g/%Fichier: .*/s/%Fichier: .*/%Fichier: ".@%
exe "1," . l . "g/Dernière modification: /s/Dernière modification: .*/Dernière modification: " .
\ strftime("%d %b %Y %X")
endfun
Pourquoi tu fais ça :
exe "1," . l . "g/%Fichier: .*/s/%Fichier: .*/%Fichier: ".@%
exe "1," . l . "g/Dernière modification: /s/Dernière modification: .*/Dernière modification: " .
\ strftime("%d %b %Y %X")
endfun
Plutôt que ça :
exe "1," . l . "s/%Fichier: .*/%Fichier: ".@%
exe "1," . l . "s/Dernière modification: .*/Dernière modification: " .
\ strftime("%d %b %Y %X")
endfun
?
Parceque ca date et que je n’ai pas mis le nez dedans depuis fort longtemps.
Normalement j’ai du m’inspirer d’un exemple que j’ai copié dans l’aide.
Il est évident que je fais mes substitutions avec s/
edit: j’ai retrouvé et c’est bien dans le fichier autocmd.txt ligne 886 (j’ai l’aide traduite en francais)
sinon :h skeleton
:autocmd BufWritePre,FileWritePre *.html ks|call DerModif()|'s
:fun DerModif()
: if line("$") > 20
: let l = 20
: else
: let l = line("$")
: endif
: exe "1," . l . "g/Dernière modification : /s/Dernière modification : .*/Dernière modification : " .
: \ strftime("%d %b %Y %X %Z")
:endfun