jsdoc.vim generates JSDoc block comments based on a function signature.
jsdoc.vim supports Vim8.
Neovim works since v2.1.0, but if something wrong, send me pull requests to fix it.
If you want use old version checkout 1.0.0.
Node v12.x or above.
Plug 'heavenshell/vim-jsdoc', {
\ 'for': ['javascript', 'javascript.jsx','typescript'],
\ 'do': 'make install'
\}
If you got `yarn.lock` related error, ```console error: Your local changes to the following files would be overwritten by merge: lib/yarn.lock ``` Run following command ``` cd /path/to/plugged/vim-jsdoc git checkout -- yarn.lock ``` and re-run `PlugUpdate`
Since version 2.0.0, jsdoc.vim requires a local copy lehre installed to the plugin directory.
You can install lehre with:
# cd to <vim-jsdoc path>
make install
If you want to update lehre
use:
make clean
make install
If you want to install lehre manually, you can install from npm.
$ yarn add -D lehre
Set installed /path/to/node_modules/.bin/lehre
path to g:jsdoc_lehre_path
.
# cd to <vim-jsdoc path>/lib
npm install
If you want to set the path of lehre manually on Windows, you should use the path with the file extension .cmd
, such as /path/to/node_modules/.bin/lehre.cmd
.
function
keyword line:JsDoc
to insert JSDocfunction
keyword line:JsDocFormat
Option | Default | Description |
---|---|---|
g:jsdoc_templates_path | '' | Path to custom template. |
g:jsdoc_formatter | 'jsdoc' | Document block formatter, jsdoc , esdoc , tsdoc |
g:jsdoc_lehre_path | './lib/lehre' | Path to lehre . |
You can choose formatter from JsDoc, ESDoc, TSDoc.
If you want to create your own template, see example template.
Since ver 2.0.0 input Allow prompt for interactive input
is deprecated.
If you want input Interactively, use snippet plugin.
You can add following setting to .vimrc
nmap <silent> <C-l> <Plug>(jsdoc)
Alternatively, you could add the following setting to your .vimrc to search for the last function
declaration
and puts your jsdoc above it:
nmap <silent> <C-l> ?function<cr>:noh<cr><Plug>(jsdoc)
This plugin based on https://gist.github.com/3903772#file-jsdoc-vim written by NAKAMURA, Hisashi
The idea of npm packages installation is from vim-lsp-settings. Highly applicate @mattn and all vim-lsp-settings contributors.
New BSD LICENSE