vim-textlint
vim-textlint copied to clipboard
Wrapper for textlint
vim-textlint
Wrapper for textlint.

Motivations
I want to load textlint config file dynamically.
Syntastic can use textlint but not support config file.
watchdocs.vim also has textlint settings but not supporting config file.
Configure
Add textlint config file name to your .vimrc.
" textlint.vim {{{
let g:textlint_configs = [
\ '@azu/textlint-config-readme',
\ '@example/textlint-config-example',
\ ]
" }}}
Usage
:Textlint
:cwindow
If you did not set any args, vim-textlint would use g:textlint_configs's first value or textlintrc.
:Textlint -c @example/textlint-config-example
:cwindow
You can select textlint config file via command line.
Autofix
If rules are fixable, you can autofix with TextlintFix.
Helpful plugins
QuickFixstatus shows error message at the bottom of the screen.
Hier will highlight quickfix errors and location list entries in buffer.
Sample settings
After run :Textlint textlint.vim would show errors if error exists.
- Show QuickFix error in statusline, and highlight QuickFix errors run quickfixstatus.vim and vim-hier.
function! s:textlint_after(...)
execute ':QuickfixStatusEnable'
execute ':HierUpdate'
endfunction
let g:textlint_callbacks = {
\ 'after_run': function('s:textlint_after')
\ }
autocmd BufWritePost *.md call textlint#run()
autocmd InsertLeave *.md call textlint#run()
" TextChanged triggered very often, turn off if Vim is slow.
autocmd TextChanged,TextChangedI *.md call textlint#run()