Existe-t-il un plugin pour vim, un peu comme Jsbeautify, qui génère automatiquement JavaDoc comme des commentaires dans les fichiers de script.
Par exemple, cela prendra ceci
function(a , b , c){ }
Et retourner
/** * Description. * * @param a Description. * @param b Description. * @param c Description. */ function(a , b , c){ }
Voici un petit peu pour vous aider à démarrer – tweak selon les besoins! -)
" generate doc comment template map <LocalLeader>/ :call GenerateDOCComment()<cr> function! GenerateDOCComment() let l = line('.') let i = indent(l) let pre = repeat(' ',i) let text = getline(l) let params = matchstr(text,'([^)]*)') let paramPat = '\([$a-zA-Z_0-9]\+\)[, ]*\(.*\)' echomsg params let vars = [] let m = ' ' let ml = matchlist(params,paramPat) while ml!=[] let [_,var;rest]= ml let vars += [pre.' * @param '.var] let ml = matchlist(rest,paramPat,0) endwhile let comment = [pre.'/**',pre.' * '] + vars + [pre.' */'] call append(l-1,comment) call cursor(l+1,i+3) endfunction
En supposant que la liste des paramètres est sur une seule ligne, elle essaie de faire correspondre les paramètres, crée une chaîne de commentaires et ajoute cette chaîne de commentaire à la ligne avant l'en-tête de fonction.
Avec snipmate, vous pouvez créer un extrait ou utiliser un mélange d' extraits js réels
Je pensais à un plugin mélangé avec des macros, mais combien d'arguments peut prendre une fonction? La plupart du temps, ce sera 4 au maximum.
La solution avec des extraits peut être viable.