jsdoc.vim
jsdoc.vim generates JSDoc block comments based on a function signature.
Note
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.
Install
Vim Plug
Plug 'heavenshell/vim-jsdoc', {
\ 'for': ['javascript', 'javascript.jsx','typescript'],
\ 'do': 'make install'
\}
PlugUpdate error
If you got `yarn.lock` related error,
error: Your local changes to the following files would be overwritten by merge:
lib/yarn.lockRun following command
cd /path/to/plugged/vim-jsdoc
git checkout -- yarn.lock
and re-run PlugUpdate
Manual Installation
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 installIf you want to update lehre use:
make clean
make installIf you want install lehre manually, you can install from npm.
$ yarn add -D lehreSet installed /path/to/node_modules/.bin/lehre path to g:jsdoc_lehre_path.
Usage
- Move cursor on
functionkeyword line - Type
:JsDocto insert JSDoc - Insert JSDoc above the
functionkeyword line
Format
- Type
:JsDocFormat - Insert JSDoc above the all signatures
Configuration
| 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. |
Formatter
You can choose formatter from JsDoc, ESDoc, TSDoc.
If you want to create your own template, see example template.
Intaractive input
Since ver 2.0.0 input Allow prompt for interactive input is deprecated.
If you want input Intaractively, use snippet plugin.
Keymap
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)Thanks
-
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.
LICENSE
New BSD LICENSE
