Updated plugins
This commit is contained in:
parent
64a81818ee
commit
61a22e9f3e
39 changed files with 1372 additions and 782 deletions
|
@ -97,6 +97,7 @@ let [s:pref, s:bpref, s:opts, s:new_opts, s:lc_opts] =
|
|||
\ 'compare_lim': ['s:compare_lim', 3000],
|
||||
\ 'bufname_mod': ['s:bufname_mod', ':t'],
|
||||
\ 'bufpath_mod': ['s:bufpath_mod', ':~:.:h'],
|
||||
\ 'formatline_func': ['s:flfunc', 's:formatline(v:val)'],
|
||||
\ }, {
|
||||
\ 'open_multiple_files': 's:opmul',
|
||||
\ 'regexp': 's:regexp',
|
||||
|
@ -203,11 +204,11 @@ let s:hlgrps = {
|
|||
\ }
|
||||
|
||||
" lname, sname of the basic(non-extension) modes
|
||||
let s:coretypes = [
|
||||
let s:coretypes = filter([
|
||||
\ ['files', 'fil'],
|
||||
\ ['buffers', 'buf'],
|
||||
\ ['mru files', 'mru'],
|
||||
\ ]
|
||||
\ ], 'index(g:ctrlp_types, v:val[1])!=-1')
|
||||
|
||||
" Get the options {{{2
|
||||
fu! s:opts(...)
|
||||
|
@ -439,9 +440,9 @@ fu! s:UserCmd(lscmd)
|
|||
en
|
||||
if has('patch-7.4-597') && !(has('win32') || has('win64'))
|
||||
let g:ctrlp_allfiles = systemlist(printf(lscmd, path))
|
||||
else
|
||||
el
|
||||
let g:ctrlp_allfiles = split(system(printf(lscmd, path)), "\n")
|
||||
end
|
||||
en
|
||||
if exists('+ssl') && exists('ssl')
|
||||
let &ssl = ssl
|
||||
cal map(g:ctrlp_allfiles, 'tr(v:val, "\\", "/")')
|
||||
|
@ -624,7 +625,7 @@ fu! s:Render(lines, pat)
|
|||
en
|
||||
if s:mw_order == 'btt' | cal reverse(lines) | en
|
||||
let s:lines = copy(lines)
|
||||
cal map(lines, 's:formatline(v:val)')
|
||||
cal map(lines, s:flfunc)
|
||||
cal setline(1, s:offset(lines, height))
|
||||
cal s:unmarksigns()
|
||||
cal s:remarksigns()
|
||||
|
@ -719,7 +720,7 @@ fu! s:PrtBS()
|
|||
if empty(s:prompt[0]) && s:brfprt != 0
|
||||
cal s:PrtExit()
|
||||
retu
|
||||
endif
|
||||
en
|
||||
unl! s:hstgot
|
||||
let [s:prompt[0], s:matches] = [substitute(s:prompt[0], '.$', '', ''), 1]
|
||||
cal s:BuildPrompt(1)
|
||||
|
@ -877,12 +878,13 @@ fu! s:PrtFocusMap(char)
|
|||
endf
|
||||
|
||||
fu! s:PrtClearCache()
|
||||
if s:itemtype == 0
|
||||
let ct = s:curtype()
|
||||
if ct == 'fil'
|
||||
cal ctrlp#clr()
|
||||
elsei s:itemtype > 2
|
||||
elsei s:itemtype >= len(s:coretypes)
|
||||
cal ctrlp#clr(s:statypes[s:itemtype][1])
|
||||
en
|
||||
if s:itemtype == 2
|
||||
if ct == 'mru'
|
||||
let g:ctrlp_lines = ctrlp#mrufiles#refresh()
|
||||
el
|
||||
cal ctrlp#setlines()
|
||||
|
@ -893,9 +895,10 @@ fu! s:PrtClearCache()
|
|||
endf
|
||||
|
||||
fu! s:PrtDeleteEnt()
|
||||
if s:itemtype == 2
|
||||
let ct = s:curtype()
|
||||
if ct == 'mru'
|
||||
cal s:PrtDeleteMRU()
|
||||
elsei s:itemtype == 1
|
||||
elsei ct == 'buf'
|
||||
cal s:delbuf()
|
||||
elsei type(s:getextvar('wipe')) == 1
|
||||
cal s:delent(s:getextvar('wipe'))
|
||||
|
@ -903,7 +906,7 @@ fu! s:PrtDeleteEnt()
|
|||
endf
|
||||
|
||||
fu! s:PrtDeleteMRU()
|
||||
if s:itemtype == 2
|
||||
if s:curtype() == 'mru'
|
||||
cal s:delent('ctrlp#mrufiles#remove')
|
||||
en
|
||||
endf
|
||||
|
@ -1011,7 +1014,7 @@ fu! s:ToggleByFname()
|
|||
endf
|
||||
|
||||
fu! s:ToggleType(dir)
|
||||
let max = len(g:ctrlp_ext_vars) + 2
|
||||
let max = len(g:ctrlp_ext_vars) + len(s:coretypes) - 1
|
||||
let next = s:walker(max, s:itemtype, a:dir)
|
||||
cal ctrlp#setlines(next)
|
||||
cal ctrlp#syntax()
|
||||
|
@ -1151,7 +1154,7 @@ fu! s:AcceptSelection(action)
|
|||
if subm | if s:SpecInputs(str) | retu | en | en
|
||||
" Get the selected line
|
||||
let line = ctrlp#getcline()
|
||||
if !subm && !s:itemtype && line == '' && line('.') > s:offset
|
||||
if !subm && s:curtype() != 'fil' && line == '' && line('.') > s:offset
|
||||
\ && str !~ '\v^(\.\.([\/]\.\.)*[\/]?[.\/]*|/|\\|\?|\@.+)$'
|
||||
cal s:CreateNewFile(md) | retu
|
||||
en
|
||||
|
@ -1161,7 +1164,7 @@ fu! s:AcceptSelection(action)
|
|||
let actfunc = s:openfunc[s:ctype]
|
||||
let type = has_key(s:openfunc, 'arg_type') ? s:openfunc['arg_type'] : 'list'
|
||||
el
|
||||
if s:itemtype < 3
|
||||
if s:itemtype < len(s:coretypes)
|
||||
let [actfunc, type] = ['ctrlp#acceptfile', 'dict']
|
||||
el
|
||||
let [actfunc, exttype] = [s:getextvar('accept'), s:getextvar('act_farg')]
|
||||
|
@ -1206,15 +1209,16 @@ fu! s:CreateNewFile(...)
|
|||
endf
|
||||
" * OpenMulti() {{{1
|
||||
fu! s:MarkToOpen()
|
||||
let ct = s:curtype()
|
||||
if s:bufnr <= 0 || s:opmul == '0'
|
||||
\ || ( s:itemtype > 2 && s:getextvar('opmul') != 1 )
|
||||
\ || ( s:itemtype >= len(s:coretypes) && s:getextvar('opmul') != 1 )
|
||||
retu
|
||||
en
|
||||
let line = ctrlp#getcline()
|
||||
|
||||
" Do not allow to mark modified or current buffer
|
||||
let bufnr = s:bufnrfilpath(line)[0]
|
||||
if (s:itemtype == 1 && s:delbufcond(bufnr))
|
||||
if (ct == 'buf' && s:delbufcond(bufnr))
|
||||
retu
|
||||
en
|
||||
|
||||
|
@ -1247,7 +1251,7 @@ endf
|
|||
fu! s:OpenMulti(...)
|
||||
let has_marked = exists('s:marked')
|
||||
if ( !has_marked && a:0 ) || s:opmul == '0' || !s:ispath
|
||||
\ || ( s:itemtype > 2 && s:getextvar('opmul') != 1 )
|
||||
\ || ( s:itemtype >= len(s:coretypes) && s:getextvar('opmul') != 1 )
|
||||
retu -1
|
||||
en
|
||||
" Get the options
|
||||
|
@ -1442,7 +1446,8 @@ fu! s:shortest(lens)
|
|||
endf
|
||||
|
||||
fu! s:mixedsort(...)
|
||||
if s:itemtype == 1
|
||||
let ct = s:curtype()
|
||||
if ct == 'buf'
|
||||
let pat = '[\/]\?\[\d\+\*No Name\]$'
|
||||
if a:1 =~# pat && a:2 =~# pat | retu 0
|
||||
elsei a:1 =~# pat | retu 1
|
||||
|
@ -1453,10 +1458,10 @@ fu! s:mixedsort(...)
|
|||
let ms = []
|
||||
if s:res_count < 21
|
||||
let ms += [s:compfnlen(a:1, a:2)]
|
||||
if s:itemtype !~ '^[12]$' | let ms += [s:comptime(a:1, a:2)] | en
|
||||
if ct !~ '^\(buf\|mru\)$' | let ms += [s:comptime(a:1, a:2)] | en
|
||||
if !s:itemtype | let ms += [s:comparent(a:1, a:2)] | en
|
||||
en
|
||||
if s:itemtype =~ '^[12]$'
|
||||
if ct =~ '^\(buf\|mru\)$'
|
||||
let ms += [s:compmref(a:1, a:2)]
|
||||
let cln = cml ? cln : 0
|
||||
en
|
||||
|
@ -1540,7 +1545,8 @@ endf
|
|||
" Line formatting {{{3
|
||||
fu! s:formatline(str)
|
||||
let str = a:str
|
||||
if s:itemtype == 1
|
||||
let ct = s:curtype()
|
||||
if ct == 'buf'
|
||||
let bufnr = s:bufnrfilpath(str)[0]
|
||||
let parts = s:bufparts(bufnr)
|
||||
let str = printf('%'.s:bufnr_width.'s', bufnr)
|
||||
|
@ -1560,7 +1566,7 @@ fu! s:formatline(str)
|
|||
en
|
||||
en
|
||||
en
|
||||
let cond = s:itemtype != 1 &&s:ispath && ( s:winw - 4 ) < s:strwidth(str)
|
||||
let cond = ct != 'buf' &&s:ispath && ( s:winw - 4 ) < s:strwidth(str)
|
||||
retu s:lineprefix.( cond ? s:pathshorten(str) : str )
|
||||
endf
|
||||
|
||||
|
@ -1615,7 +1621,7 @@ fu! s:lash(...)
|
|||
endf
|
||||
|
||||
fu! s:ispathitem()
|
||||
retu s:itemtype < 3 || ( s:itemtype > 2 && s:getextvar('type') == 'path' )
|
||||
retu s:itemtype < len(s:coretypes) || s:getextvar('type') == 'path'
|
||||
endf
|
||||
|
||||
fu! ctrlp#igncwd(cwd)
|
||||
|
@ -1649,11 +1655,11 @@ fu! ctrlp#dirnfile(entries)
|
|||
endf
|
||||
|
||||
fu! s:usrign(item, type)
|
||||
if s:igntype == 1 | retu a:item =~ s:usrign | end
|
||||
if s:igntype == 1 | retu a:item =~ s:usrign | en
|
||||
if s:igntype == 2
|
||||
if call(s:usrign, [a:item, a:type])
|
||||
retu 1
|
||||
end
|
||||
en
|
||||
elsei s:igntype == 4
|
||||
if has_key(s:usrign, a:type) && s:usrign[a:type] != ''
|
||||
\ && a:item =~ s:usrign[a:type]
|
||||
|
@ -1661,8 +1667,8 @@ fu! s:usrign(item, type)
|
|||
elsei has_key(s:usrign, 'func') && s:usrign['func'] != ''
|
||||
\ && call(s:usrign['func'], [a:item, a:type])
|
||||
retu 1
|
||||
end
|
||||
end
|
||||
en
|
||||
en
|
||||
retu 0
|
||||
endf
|
||||
|
||||
|
@ -1772,7 +1778,7 @@ fu! ctrlp#syntax()
|
|||
exe "sy match CtrlPLinePre '^".escape(get(g:, 'ctrlp_line_prefix', '>'),'^$.*~\')."'"
|
||||
en
|
||||
|
||||
if s:itemtype == 1 && s:has_conceal
|
||||
if s:curtype() == 'buf' && s:has_conceal
|
||||
sy region CtrlPBufferNr matchgroup=CtrlPLinePre start='^>\s\+' end='\s'
|
||||
sy region CtrlPBufferInd concealends matchgroup=Ignore start='<bi>' end='</bi>'
|
||||
sy region CtrlPBufferRegion concealends matchgroup=Ignore start='<bn>' end='</bn>'
|
||||
|
@ -1810,7 +1816,7 @@ fu! s:highlight(pat, grp)
|
|||
if s:byfname()
|
||||
" Make sure there are no slashes in our match
|
||||
let beginning = beginning.'\([^\/]*$\)\@='
|
||||
end
|
||||
en
|
||||
|
||||
for i in range(len(chars))
|
||||
" Surround our current target letter with \zs and \ze so it only
|
||||
|
@ -1822,14 +1828,14 @@ fu! s:highlight(pat, grp)
|
|||
if i == 0
|
||||
let charcopy[i] = '\zs'.charcopy[i].'\ze'
|
||||
let middle = join(charcopy, '.\{-}')
|
||||
else
|
||||
el
|
||||
let before = join(charcopy[0:i-1], '.\{-}')
|
||||
let after = join(charcopy[i+1:-1], '.\{-}')
|
||||
let c = charcopy[i]
|
||||
" for abc, match either ab.\{-}c or a.*b.\{-}c in that order
|
||||
let cpat = '\(\zs'.c.'\|'.'.*\zs'.c.'\)\ze.*'
|
||||
let middle = before.cpat.after
|
||||
endif
|
||||
en
|
||||
|
||||
" Now we matchadd for each letter, the basic form being:
|
||||
" ^.*\zsx\ze.*$, but with our pattern we built above for the letter,
|
||||
|
@ -1956,7 +1962,7 @@ fu! s:isabs(path)
|
|||
endf
|
||||
|
||||
fu! s:bufnrfilpath(line)
|
||||
if s:isabs(a:line) || a:line =~ '^\~[/\\]' || a:line =~ '^\w\+:\/\/'
|
||||
if s:isabs(a:line) || a:line =~ '^\~[/\\]'
|
||||
let filpath = a:line
|
||||
el
|
||||
let filpath = s:dyncwd.s:lash().a:line
|
||||
|
@ -2140,12 +2146,13 @@ fu! s:modevar()
|
|||
endf
|
||||
|
||||
fu! s:nosort()
|
||||
retu s:matcher != {} || s:nolim == 1 || ( s:itemtype == 2 && s:mrudef )
|
||||
\ || ( s:itemtype =~ '\v^(1|2)$' && s:prompt == ['', '', ''] ) || !s:dosort
|
||||
let ct = s:curtype()
|
||||
retu s:matcher != {} || s:nolim == 1 || ( ct == 'mru' && s:mrudef )
|
||||
\ || ( ct =~ '^\(buf\|mru\)$' && s:prompt == ['', '', ''] ) || !s:dosort
|
||||
endf
|
||||
|
||||
fu! s:byfname()
|
||||
retu s:itemtype != 1 && s:ispath && s:byfname
|
||||
retu s:curtype() != 'buf' && s:ispath && s:byfname
|
||||
endf
|
||||
|
||||
fu! s:narrowable()
|
||||
|
@ -2374,13 +2381,17 @@ fu! s:buildpat(lst)
|
|||
retu pat
|
||||
endf
|
||||
|
||||
fu! s:curtype()
|
||||
return s:CurTypeName()[1]
|
||||
endf
|
||||
|
||||
fu! s:mfunc()
|
||||
let mfunc = 'match'
|
||||
if s:byfname()
|
||||
let mfunc = 's:matchfname'
|
||||
elsei s:itemtype == 1
|
||||
elsei s:curtype() == 'buf'
|
||||
let mfunc = 's:matchbuf'
|
||||
elsei s:itemtype > 2
|
||||
elsei s:itemtype >= len(s:coretypes)
|
||||
let matchtypes = { 'tabs': 's:matchtabs', 'tabe': 's:matchtabe' }
|
||||
if has_key(matchtypes, s:matchtype)
|
||||
let mfunc = matchtypes[s:matchtype]
|
||||
|
@ -2439,7 +2450,7 @@ fu! s:insertcache(str)
|
|||
endf
|
||||
" Extensions {{{2
|
||||
fu! s:mtype()
|
||||
retu s:itemtype > 2 ? s:getextvar('type') : 'path'
|
||||
retu s:itemtype >= len(s:coretypes) ? s:getextvar('type') : 'path'
|
||||
endf
|
||||
|
||||
fu! s:execextvar(key)
|
||||
|
@ -2450,8 +2461,8 @@ fu! s:execextvar(key)
|
|||
endf
|
||||
|
||||
fu! s:getextvar(key)
|
||||
if s:itemtype > 2
|
||||
let vars = g:ctrlp_ext_vars[s:itemtype - 3]
|
||||
if s:itemtype >= len(s:coretypes) && len(g:ctrlp_ext_vars) > 0
|
||||
let vars = g:ctrlp_ext_vars[s:itemtype - len(s:coretypes)]
|
||||
retu has_key(vars, a:key) ? vars[a:key] : -1
|
||||
en
|
||||
retu get(g:, 'ctrlp_' . s:matchtype . '_' . a:key, -1)
|
||||
|
@ -2505,7 +2516,8 @@ endf
|
|||
fu! ctrlp#setlines(...)
|
||||
if a:0 | let s:itemtype = a:1 | en
|
||||
cal s:modevar()
|
||||
let types = ['ctrlp#files()', 'ctrlp#buffers()', 'ctrlp#mrufiles#list()']
|
||||
let inits = {'fil': 'ctrlp#files()', 'buf': 'ctrlp#buffers()', 'mru': 'ctrlp#mrufiles#list()'}
|
||||
let types = map(copy(g:ctrlp_types), 'inits[v:val]')
|
||||
if !empty(g:ctrlp_ext_vars)
|
||||
cal map(copy(g:ctrlp_ext_vars), 'add(types, v:val["init"])')
|
||||
en
|
||||
|
@ -2514,11 +2526,11 @@ endf
|
|||
|
||||
" Returns [lname, sname]
|
||||
fu! s:CurTypeName()
|
||||
if s:itemtype < 3
|
||||
return s:coretypes[s:itemtype]
|
||||
else
|
||||
if s:itemtype < len(s:coretypes)
|
||||
return filter(copy(s:coretypes), 'v:val[1]==g:ctrlp_types[s:itemtype]')[0]
|
||||
el
|
||||
return [s:getextvar("lname"), s:getextvar('sname')]
|
||||
endif
|
||||
en
|
||||
endfu
|
||||
|
||||
fu! s:ExitIfSingleCandidate()
|
||||
|
@ -2526,7 +2538,7 @@ fu! s:ExitIfSingleCandidate()
|
|||
call s:AcceptSelection('e')
|
||||
call ctrlp#exit()
|
||||
return 1
|
||||
endif
|
||||
en
|
||||
return 0
|
||||
endfu
|
||||
|
||||
|
@ -2539,14 +2551,23 @@ fu! ctrlp#init(type, ...)
|
|||
cal s:SetWD(a:0 ? a:1 : {})
|
||||
cal s:MapNorms()
|
||||
cal s:MapSpecs()
|
||||
cal ctrlp#setlines(s:settype(a:type))
|
||||
if type(a:type) == 0
|
||||
let type = a:type
|
||||
el
|
||||
let type = index(g:ctrlp_types, a:type)
|
||||
if type == -1
|
||||
call ctrlp#exit()
|
||||
retu
|
||||
en
|
||||
en
|
||||
cal ctrlp#setlines(s:settype(type))
|
||||
cal ctrlp#syntax()
|
||||
cal s:SetDefTxt()
|
||||
let curName = s:CurTypeName()
|
||||
let shouldExitSingle = index(s:opensingle, curName[0])>=0 || index(s:opensingle, curName[1])>=0
|
||||
if shouldExitSingle && s:ExitIfSingleCandidate()
|
||||
return 0
|
||||
endif
|
||||
en
|
||||
cal s:BuildPrompt(1)
|
||||
if s:keyloop | cal s:KeyLoop() | en
|
||||
return 1
|
||||
|
|
|
@ -68,6 +68,7 @@ Overview:~
|
|||
|ctrlp_open_single_match|.....Automatically accept when only one candidate.
|
||||
|ctrlp_brief_prompt|..........Exit CtrlP on empty prompt by <bs>.
|
||||
|ctrlp_match_current_file|....Include current file in match entries.
|
||||
|ctrlp_types|.................Names of builtin types.
|
||||
|
||||
MRU mode:
|
||||
|ctrlp_mruf_max|..............Max MRU entries to remember.
|
||||
|
@ -454,13 +455,19 @@ This option works well together with |g:ctrlp_open_single_match|
|
|||
|
||||
|
||||
*'g:ctrlp_match_current_file'*
|
||||
Includes the current file in the match entries:
|
||||
Includes the current file in the match entries: >
|
||||
let g:ctrlp_match_current_file = 1
|
||||
|
||||
By default, the current file is excluded from the list.
|
||||
|
||||
Note: does not apply when |g:ctrlp_match_func| is used.
|
||||
|
||||
*'g:ctrlp_types'*
|
||||
Set this to list of names to customize core types: >
|
||||
let g:ctrlp_types = ['mru', 'fil']
|
||||
|
||||
By default, the types are: >
|
||||
let g:ctrlp_types = ['fil', 'buf', 'mru'].
|
||||
|
||||
*'g:ctrlp_abbrev'*
|
||||
Define input abbreviations that can be expanded (either internally or visibly)
|
||||
|
|
|
@ -10,17 +10,23 @@ if ( exists('g:loaded_ctrlp') && g:loaded_ctrlp ) || v:version < 700 || &cp
|
|||
en
|
||||
let g:loaded_ctrlp = 1
|
||||
|
||||
let s:types = ['fil', 'buf', 'mru']
|
||||
if !exists('g:ctrlp_types')
|
||||
let g:ctrlp_types = s:types
|
||||
el
|
||||
call filter(g:ctrlp_types, "index(['fil', 'buf', 'mru'], v:val)!=-1")
|
||||
en
|
||||
let [g:ctrlp_lines, g:ctrlp_allfiles, g:ctrlp_alltags, g:ctrlp_alldirs,
|
||||
\ g:ctrlp_allmixes, g:ctrlp_buftags, g:ctrlp_ext_vars, g:ctrlp_builtins]
|
||||
\ = [[], [], [], [], {}, {}, [], 2]
|
||||
\ = [[], [], [], [], {}, {}, [], len(g:ctrlp_types)-1]
|
||||
|
||||
if !exists('g:ctrlp_map') | let g:ctrlp_map = '<c-p>' | en
|
||||
if !exists('g:ctrlp_cmd') | let g:ctrlp_cmd = 'CtrlP' | en
|
||||
|
||||
com! -n=? -com=dir CtrlP cal ctrlp#init(0, { 'dir': <q-args> })
|
||||
com! -n=? -com=dir CtrlPMRUFiles cal ctrlp#init(2, { 'dir': <q-args> })
|
||||
com! -n=? -com=dir CtrlP cal ctrlp#init('fil', { 'dir': <q-args> })
|
||||
com! -n=? -com=dir CtrlPMRUFiles cal ctrlp#init('mru', { 'dir': <q-args> })
|
||||
|
||||
com! -bar CtrlPBuffer cal ctrlp#init(1)
|
||||
com! -bar CtrlPBuffer cal ctrlp#init('buf')
|
||||
com! -n=? CtrlPLastMode cal ctrlp#init(-1, { 'args': <q-args> })
|
||||
|
||||
com! -bar CtrlPClearCache cal ctrlp#clr()
|
||||
|
@ -29,9 +35,9 @@ com! -bar CtrlPClearAllCaches cal ctrlp#clra()
|
|||
com! -bar ClearCtrlPCache cal ctrlp#clr()
|
||||
com! -bar ClearAllCtrlPCaches cal ctrlp#clra()
|
||||
|
||||
com! -bar CtrlPCurWD cal ctrlp#init(0, { 'mode': '' })
|
||||
com! -bar CtrlPCurFile cal ctrlp#init(0, { 'mode': 'c' })
|
||||
com! -bar CtrlPRoot cal ctrlp#init(0, { 'mode': 'r' })
|
||||
com! -bar CtrlPCurWD cal ctrlp#init('fil', { 'mode': '' })
|
||||
com! -bar CtrlPCurFile cal ctrlp#init('fil', { 'mode': 'c' })
|
||||
com! -bar CtrlPRoot cal ctrlp#init('fil', { 'mode': 'r' })
|
||||
|
||||
exe 'nn <silent> <plug>(ctrlp) :<c-u>'.g:ctrlp_cmd.'<cr>'
|
||||
|
||||
|
@ -55,10 +61,10 @@ com! -bar CtrlPRTS cal ctrlp#init(ctrlp#rtscript#id())
|
|||
com! -bar CtrlPUndo cal ctrlp#init(ctrlp#undo#id())
|
||||
|
||||
com! -n=? -com=buffer CtrlPLine
|
||||
\ cal ctrlp#init(ctrlp#line#cmd(1, <q-args>))
|
||||
\ cal ctrlp#init(ctrlp#line#cmd('buf', <q-args>))
|
||||
|
||||
com! -n=? -com=buffer CtrlPChange
|
||||
\ cal ctrlp#init(ctrlp#changes#cmd(0, <q-args>))
|
||||
\ cal ctrlp#init(ctrlp#changes#cmd('fil', <q-args>))
|
||||
|
||||
com! -bar CtrlPChangeAll cal ctrlp#init(ctrlp#changes#cmd(1))
|
||||
com! -bar CtrlPMixed cal ctrlp#init(ctrlp#mixed#id())
|
||||
|
|
|
@ -30,16 +30,17 @@
|
|||
4.4. [Are there any local checkers for HTML5 that I can use with syntastic?](#faqhtml5)
|
||||
4.5. [The `perl` checker has stopped working...](#faqperl)
|
||||
4.6. [What happened to the `rustc` checker?](#faqrust)
|
||||
4.7. [What happened to the `xcrun` checker?](#faqxcrun)
|
||||
4.8. [I run a checker and the location list is not updated...](#faqloclist)
|
||||
4.8. [I run`:lopen` or `:lwindow` and the error window is empty...](#faqloclist)
|
||||
4.9. [How can I pass additional arguments to a checker?](#faqargs)
|
||||
4.10. [Syntastic supports several checkers for my filetype - how do I tell which one(s) to use?](#faqcheckers)
|
||||
4.11. [What is the difference between syntax checkers and style checkers?](#faqstyle)
|
||||
4.12. [I have enabled multiple checkers for the current filetype. How can I display all errors from all checkers together?](#faqaggregate)
|
||||
4.13. [How can I jump between the different errors without using the location list at the bottom of the window?](#faqlnext)
|
||||
4.14. [My favourite checker needs to load a configuration file from the project's root rather than the current directory...](#faqconfig)
|
||||
4.15. [The error window is closed automatically when I :quit the current buffer but not when I :bdelete it?](#faqbdelete)
|
||||
4.7. [What happened to the `tsc` checker?](#faqtsc)
|
||||
4.8. [What happened to the `xcrun` checker?](#faqxcrun)
|
||||
4.9. [I run a checker and the location list is not updated...](#faqloclist)
|
||||
4.9. [I run`:lopen` or `:lwindow` and the error window is empty...](#faqloclist)
|
||||
4.10. [How can I pass additional arguments to a checker?](#faqargs)
|
||||
4.11. [Syntastic supports several checkers for my filetype - how do I tell which one(s) to use?](#faqcheckers)
|
||||
4.12. [What is the difference between syntax checkers and style checkers?](#faqstyle)
|
||||
4.13. [I have enabled multiple checkers for the current filetype. How can I display all errors from all checkers together?](#faqaggregate)
|
||||
4.14. [How can I jump between the different errors without using the location list at the bottom of the window?](#faqlnext)
|
||||
4.15. [My favourite checker needs to load a configuration file from the project's root rather than the current directory...](#faqconfig)
|
||||
4.16. [The error window is closed automatically when I :quit the current buffer but not when I :bdelete it?](#faqbdelete)
|
||||
5. [Resources](#otherresources)
|
||||
|
||||
- - -
|
||||
|
@ -54,26 +55,26 @@ can be done on demand, or automatically as files are saved. If syntax errors
|
|||
are detected, the user is notified and is happy because they didn't have to
|
||||
compile their code or execute their script to find them.
|
||||
|
||||
At the time of this writing, syntastic has checking plugins for ActionScript,
|
||||
Ada, Ansible configurations, API Blueprint, AppleScript, AsciiDoc, Assembly
|
||||
languages, BEMHTML, Bro, Bourne shell, C, C++, C#, Cabal, Chef, CoffeeScript,
|
||||
Coco, Coq, CSS, Cucumber, CUDA, D, Dart, DocBook, Dockerfile, Dust, Elixir,
|
||||
Erlang, eRuby, Fortran, Gentoo metadata, GLSL, Go, Haml, Haskell, Haxe,
|
||||
Handlebars, HSS, HTML, Java, JavaScript, JSON, JSX, LESS, Lex, Limbo, LISP,
|
||||
LLVM intermediate language, Lua, Markdown, MATLAB, Mercury, NASM, Nix,
|
||||
Objective-C, Objective-C++, OCaml, Perl, Perl POD, PHP, gettext Portable
|
||||
Object, OS X and iOS property lists, Pug (formerly Jade), Puppet, Python,
|
||||
QML, R, Racket, RDF TriG, RDF Turtle, Relax NG, reStructuredText, RPM spec,
|
||||
Ruby, SASS/SCSS, Scala, Slim, SML, Sphinx, SQL, Stylus, Tcl, TeX, Texinfo,
|
||||
Twig, TypeScript, Vala, Verilog, VHDL, VimL, xHtml, XML, XSLT, XQuery,
|
||||
YACC, YAML, YANG data models, z80, Zope page templates, and Zsh. See the
|
||||
[manual][checkers] for details about the corresponding supported checkers
|
||||
(`:help syntastic-checkers` in Vim).
|
||||
At the time of this writing, syntastic has checking plugins for ACPI
|
||||
Source Language, ActionScript, Ada, Ansible configurations, API Blueprint,
|
||||
AppleScript, AsciiDoc, Assembly languages, BEMHTML, Bro, Bourne shell, C,
|
||||
C++, C#, Cabal, Chef, CoffeeScript, Coco, Coq, CSS, Cucumber, CUDA, D, Dart,
|
||||
DocBook, Dockerfile, Dust, Elixir, Erlang, eRuby, Fortran, Gentoo metadata,
|
||||
GLSL, Go, Haml, Haskell, Haxe, Handlebars, HSS, HTML, Java, JavaScript, JSON,
|
||||
JSX, LESS, Lex, Limbo, LISP, LLVM intermediate language, Lua, Markdown,
|
||||
MATLAB, Mercury, NASM, Nix, Objective-C, Objective-C++, OCaml, Perl, Perl
|
||||
POD, PHP, gettext Portable Object, OS X and iOS property lists, Pug (formerly
|
||||
Jade), Puppet, Python, QML, R, Racket, RDF TriG, RDF Turtle, Relax NG,
|
||||
reStructuredText, RPM spec, Ruby, SASS/SCSS, Scala, Slim, SML, Sphinx, SQL,
|
||||
Stylus, Tcl, TeX, Texinfo, Twig, TypeScript, Vala, Verilog, VHDL, VimL, xHtml,
|
||||
XML, XSLT, XQuery, YACC, YAML, YANG data models, z80, Zope page templates, and
|
||||
Zsh. See the [manual][checkers] for details about the corresponding supported
|
||||
checkers (`:help syntastic-checkers` in Vim).
|
||||
|
||||
A number of third-party Vim plugins also provide checkers for syntastic,
|
||||
for example: [merlin][merlin], [omnisharp-vim][omnisharp], [rust.vim][rust],
|
||||
[syntastic-extras][myint], [syntastic-more][roktas], [vim-crystal][crystal],
|
||||
[vim-eastwood][eastwood], and [vim-swift][swift].
|
||||
A number of third-party Vim plugins also provide checkers for syntastic, for
|
||||
example: [merlin][merlin], [omnisharp-vim][omnisharp], [rust.vim][rust],
|
||||
[syntastic-extras][myint], [syntastic-more][roktas], [tsuquyomi][tsuquyomi],
|
||||
[vim-crystal][crystal], [vim-eastwood][eastwood], and [vim-swift][swift].
|
||||
|
||||
Below is a screenshot showing the methods that Syntastic uses to display syntax
|
||||
errors. Note that, in practise, you will only have a subset of these methods
|
||||
|
@ -303,9 +304,17 @@ __4.6. Q. What happened to the `rustc` checker?__
|
|||
A. It is now part of the [rust.vim][rust] plugin. If you install this plugin the
|
||||
checker should be picked up automatically by syntastic.
|
||||
|
||||
<a name="faqtsc"></a>
|
||||
|
||||
__4.7. Q. What happened to the `tsc` checker?__
|
||||
|
||||
A. It didn't meet people's expectations and it has been removed. Please
|
||||
consider using the external checker [tsuquyomi][tsuquyomi] instead. If you
|
||||
install this plugin the checker should be picked up automatically by syntastic.
|
||||
|
||||
<a name="faqxcrun"></a>
|
||||
|
||||
__4.7. Q. What happened to the `xcrun` checker?__
|
||||
__4.8. Q. What happened to the `xcrun` checker?__
|
||||
|
||||
A. The `xcrun` checker used to have a security problem and it has been removed.
|
||||
A better checker for __Swift__ is part of the [vim-swift][swift] plugin. If you
|
||||
|
@ -313,8 +322,8 @@ install this plugin the checker should be picked up automatically by syntastic.
|
|||
|
||||
<a name="faqloclist"></a>
|
||||
|
||||
__4.8. Q. I run a checker and the location list is not updated...__
|
||||
__4.8. Q. I run`:lopen` or `:lwindow` and the error window is empty...__
|
||||
__4.9. Q. I run a checker and the location list is not updated...__
|
||||
__4.9. Q. I run`:lopen` or `:lwindow` and the error window is empty...__
|
||||
|
||||
A. By default the location list is changed only when you run the `:Errors`
|
||||
command, in order to minimise conflicts with other plugins. If you want the
|
||||
|
@ -326,7 +335,7 @@ let g:syntastic_always_populate_loc_list = 1
|
|||
|
||||
<a name="faqargs"></a>
|
||||
|
||||
__4.9. Q. How can I pass additional arguments to a checker?__
|
||||
__4.10. Q. How can I pass additional arguments to a checker?__
|
||||
|
||||
A. Almost all syntax checkers use the `makeprgBuild()` function. Those checkers
|
||||
that do can be configured using global variables. The general form of the
|
||||
|
@ -342,7 +351,7 @@ See `:help syntastic-checker-options` for more information.
|
|||
|
||||
<a name="faqcheckers"></a>
|
||||
|
||||
__4.10. Q. Syntastic supports several checkers for my filetype - how do I tell it
|
||||
__4.11. Q. Syntastic supports several checkers for my filetype - how do I tell it
|
||||
which one(s) to use?__
|
||||
|
||||
A. Stick a line like this in your `vimrc`:
|
||||
|
@ -383,7 +392,7 @@ filetype of the current file is `php`).
|
|||
|
||||
<a name="faqstyle"></a>
|
||||
|
||||
__4.11. Q. What is the difference between syntax checkers and style checkers?__
|
||||
__4.12. Q. What is the difference between syntax checkers and style checkers?__
|
||||
|
||||
A. The errors and warnings they produce are highlighted differently and can
|
||||
be filtered by different rules, but otherwise the distinction is pretty much
|
||||
|
@ -413,7 +422,7 @@ See `:help syntastic_quiet_messages` for details.
|
|||
|
||||
<a name="faqaggregate"></a>
|
||||
|
||||
__4.12. Q. I have enabled multiple checkers for the current filetype. How can I
|
||||
__4.13. Q. I have enabled multiple checkers for the current filetype. How can I
|
||||
display all errors from all checkers together?__
|
||||
|
||||
A. Set `g:syntastic_aggregate_errors` to 1 in your `vimrc`:
|
||||
|
@ -425,7 +434,7 @@ See `:help syntastic-aggregating-errors` for more details.
|
|||
|
||||
<a name="faqlnext"></a>
|
||||
|
||||
__4.13. Q. How can I jump between the different errors without using the location
|
||||
__4.14. Q. How can I jump between the different errors without using the location
|
||||
list at the bottom of the window?__
|
||||
|
||||
A. Vim provides several built-in commands for this. See `:help :lnext` and
|
||||
|
@ -437,7 +446,7 @@ mappings (among other things).
|
|||
|
||||
<a name="faqconfig"></a>
|
||||
|
||||
__4.14. My favourite checker needs to load a configuration file from the
|
||||
__4.15. My favourite checker needs to load a configuration file from the
|
||||
project's root rather than the current directory...__
|
||||
|
||||
A. You can set up an `autocmd` to search for the configuration file in the
|
||||
|
@ -456,7 +465,7 @@ autocmd FileType javascript let b:syntastic_javascript_jscs_args =
|
|||
```
|
||||
<a name="faqbdelete"></a>
|
||||
|
||||
__4.15. Q. The error window is closed automatically when I :quit the current buffer
|
||||
__4.16. Q. The error window is closed automatically when I :quit the current buffer
|
||||
but not when I :bdelete it?__
|
||||
|
||||
A. There is no safe way to handle that situation automatically, but you can
|
||||
|
@ -510,6 +519,7 @@ a look at [ghcmod-vim][ghcmod], [jedi-vim][jedi], [python-mode][python_mode], [v
|
|||
[swift]: https://github.com/kballard/vim-swift
|
||||
[tidy]: http://www.htacg.org/tidy-html5/
|
||||
[tidy_old]: http://tidy.sourceforge.net/
|
||||
[tsuquyomi]: https://github.com/Quramy/tsuquyomi/
|
||||
[unimpaired]: https://github.com/tpope/vim-unimpaired
|
||||
[vam]: https://github.com/MarcWeber/vim-addon-manager
|
||||
[vim]: http://www.vim.org/
|
||||
|
|
|
@ -6,6 +6,7 @@ SYNTAX CHECKERS BY LANGUAGE *syntastic-checkers-lang*
|
|||
|
||||
|syntastic| comes with checkers for the following languages:
|
||||
|
||||
ACPI Source Language.....................|syntastic-checkers-asl|
|
||||
ActionScript.............................|syntastic-checkers-actionscript|
|
||||
Ada......................................|syntastic-checkers-ada|
|
||||
Ansible..................................|syntastic-checkers-ansible|
|
||||
|
@ -132,6 +133,37 @@ SYNTAX CHECKERS BY LANGUAGE *syntastic-checkers-lang*
|
|||
|
||||
Third-party checkers are available for additional languages.
|
||||
|
||||
==============================================================================
|
||||
SYNTAX CHECKERS FOR ACPI SOURCE LANGUAGE *syntastic-checkers-asl*
|
||||
|
||||
The following checkers are available for the ACPI Source Language (filetype
|
||||
"asl"):
|
||||
|
||||
1. iasl.....................|syntastic-asl-iasl|
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
1. iasl *syntastic-asl-iasl*
|
||||
|
||||
Name: iasl
|
||||
Maintainer: Peter Wu <peter@lekensteyn.nl>
|
||||
|
||||
"iasl" is a compiler/decompiler for ACPI Source Language (ASL) and ACPI
|
||||
Machine Language (AML). See the project's page for details:
|
||||
|
||||
https://acpica.org/
|
||||
|
||||
Checker options~
|
||||
|
||||
This checker is initialised using the "makeprgBuild()" function and thus it
|
||||
accepts the standard options described at |syntastic-config-makeprg|.
|
||||
|
||||
Note~
|
||||
|
||||
You probably also need a plugin to set |filetype| for ASL files, such as
|
||||
"vim-acpi-asl":
|
||||
|
||||
https://github.com/martinlroth/vim-acpi-asl
|
||||
|
||||
==============================================================================
|
||||
SYNTAX CHECKERS FOR ACTIONSCRIPT *syntastic-checkers-actionscript*
|
||||
|
||||
|
@ -344,7 +376,7 @@ accepts the standard options described at |syntastic-config-makeprg|.
|
|||
==============================================================================
|
||||
SYNTAX CHECKERS FOR ASSEMBLY LANGUAGES *syntastic-checkers-asm*
|
||||
|
||||
The following checkers are available for asembly languages (filetype "asm"):
|
||||
The following checkers are available for assembly languages (filetype "asm"):
|
||||
|
||||
1. GCC......................|syntastic-asm-gcc|
|
||||
|
||||
|
@ -432,7 +464,7 @@ The following checkers are available for BEMHTML (filetype "bemhtml"):
|
|||
Name: bemhtmllint
|
||||
Maintainer: Sergej Tatarincev
|
||||
|
||||
BEMHTML is a template engine intended for using with BEM methodology
|
||||
BEMHTML is a template engine intended for using with the BEM methodology
|
||||
(http://bem.info/method/). See the project's page at GitHub for details:
|
||||
|
||||
https://github.com/SevInf/bemhtml-lint
|
||||
|
@ -492,9 +524,9 @@ Checker options~
|
|||
This checker is initialised using the "makeprgBuild()" function and thus it
|
||||
accepts the standard options described at |syntastic-config-makeprg|.
|
||||
|
||||
Aditionally:
|
||||
Additionally:
|
||||
|
||||
*g:syntastic_avrgcc_config_file*
|
||||
*'g:syntastic_avrgcc_config_file'*
|
||||
Type: string
|
||||
Default: ".syntastic_avrgcc_config"
|
||||
File containing compilation flags (such as defines or include directories),
|
||||
|
@ -895,17 +927,39 @@ SYNTAX CHECKERS FOR C++ *syntastic-checkers-cpp*
|
|||
|
||||
The following checkers are available for C++ (filetype "cpp"):
|
||||
|
||||
1. ClangCheck...............|syntastic-cpp-clang_check|
|
||||
2. Clang-Tidy...............|syntastic-cpp-clang_tidy|
|
||||
3. Cppcheck.................|syntastic-cpp-cppcheck|
|
||||
4. Cpplint..................|syntastic-cpp-cpplint|
|
||||
5. GCC......................|syntastic-cpp-gcc|
|
||||
6. OClint...................|syntastic-cpp-oclint|
|
||||
7. PC-Lint..................|syntastic-cpp-pc_lint|
|
||||
8. Vera++...................|syntastic-cpp-verapp|
|
||||
1. AVR-GCC..................|syntastic-cpp-avrgcc|
|
||||
2. ClangCheck...............|syntastic-cpp-clang_check|
|
||||
3. Clang-Tidy...............|syntastic-cpp-clang_tidy|
|
||||
4. Cppcheck.................|syntastic-cpp-cppcheck|
|
||||
5. Cpplint..................|syntastic-cpp-cpplint|
|
||||
6. GCC......................|syntastic-cpp-gcc|
|
||||
7. OClint...................|syntastic-cpp-oclint|
|
||||
8. PC-Lint..................|syntastic-cpp-pc_lint|
|
||||
9. Vera++...................|syntastic-cpp-verapp|
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
1. ClangCheck *syntastic-cpp-clang_check*
|
||||
1. AVR-GCC *syntastic-cpp-avrgcc*
|
||||
|
||||
Name: avrgcc
|
||||
Maintainer: Sławek Piotrowski <sentinel@atteo.com>
|
||||
|
||||
Checker options~
|
||||
|
||||
This checker is initialised using the "makeprgBuild()" function and thus it
|
||||
accepts the standard options described at |syntastic-config-makeprg|.
|
||||
|
||||
Additionally:
|
||||
|
||||
'g:syntastic_avrgcc_config_file'
|
||||
Type: string
|
||||
Default: ".syntastic_avrgcc_config"
|
||||
File containing compilation flags (such as defines or include directories),
|
||||
one option per line (cf. |syntastic-config-files|).
|
||||
|
||||
See also: |syntastic-c-avrgcc|.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2. ClangCheck *syntastic-cpp-clang_check*
|
||||
|
||||
Name: clang_check
|
||||
Maintainer: Benjamin Bannier <bbannier@gmail.com>
|
||||
|
@ -948,7 +1002,7 @@ then ignored.
|
|||
See also: |syntastic-c-clang_check|.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2. Clang-Tidy *syntastic-cpp-clang_tidy*
|
||||
3. Clang-Tidy *syntastic-cpp-clang_tidy*
|
||||
|
||||
Name: clang_tidy
|
||||
Maintainer: Benjamin Bannier <bbannier@gmail.com>
|
||||
|
@ -999,7 +1053,7 @@ then ignored.
|
|||
See also: |syntastic-c-clang_tidy|.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
3. Cppcheck *syntastic-cpp-cppcheck*
|
||||
4. Cppcheck *syntastic-cpp-cppcheck*
|
||||
|
||||
Name: cppcheck
|
||||
Maintainer: LCD 47 <lcd047@gmail.com>
|
||||
|
@ -1025,7 +1079,7 @@ one option per line (cf. |syntastic-config-files|).
|
|||
See also: |syntastic-c-cppcheck|.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
4. Cpplint *syntastic-cpp-cpplint*
|
||||
5. Cpplint *syntastic-cpp-cpplint*
|
||||
|
||||
Name: cpplint
|
||||
Maintainer: LCD 47 <lcd047@gmail.com>
|
||||
|
@ -1061,7 +1115,7 @@ However, if your "cpplint" was installed with "pip", the script's name is
|
|||
let g:syntastic_cpp_cpplint_exec = "cpplint"
|
||||
<
|
||||
------------------------------------------------------------------------------
|
||||
5. GCC *syntastic-cpp-gcc*
|
||||
6. GCC *syntastic-cpp-gcc*
|
||||
|
||||
Name: gcc
|
||||
Maintainer: Gregor Uhlenheuer <kongo2002@gmail.com>
|
||||
|
@ -1158,7 +1212,7 @@ executable.
|
|||
See also: |syntastic-c-gcc|.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
6. OClint *syntastic-cpp-oclint*
|
||||
7. OClint *syntastic-cpp-oclint*
|
||||
|
||||
Name: oclint
|
||||
Maintainer: "UnCO" Lin <undercooled@lavabit.com>
|
||||
|
@ -1198,7 +1252,7 @@ Config files pointed to by 'g:syntastic_oclint_config_file' are then ignored.
|
|||
See also: |syntastic-c-oclint|.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
7. PC-Lint *syntastic-cpp-pc_lint*
|
||||
8. PC-Lint *syntastic-cpp-pc_lint*
|
||||
|
||||
Name: pc_lint
|
||||
Maintainer: Steve Bragg <steve@empresseffects.com>
|
||||
|
@ -1225,7 +1279,7 @@ current directory and in parent directories; first such file found is used.
|
|||
See also: |syntastic-c-pc_lint|.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
8. Vera++ *syntastic-cpp-verapp*
|
||||
9. Vera++ *syntastic-cpp-verapp*
|
||||
|
||||
Name: verapp
|
||||
Maintainer: Lucas Verney <phyks@phyks.me>
|
||||
|
@ -1450,7 +1504,7 @@ The following checkers are available for Coq (filetype "coq"):
|
|||
Name: coqtop
|
||||
Maintainer: Matvey Aksenov <matvey.aksenov@gmail.com>
|
||||
|
||||
"Coqtop" is the top level intrface for Coq. See the project's page for
|
||||
"Coqtop" is the top level interface for Coq. See the project's page for
|
||||
details:
|
||||
|
||||
http://coq.inria.fr/
|
||||
|
@ -1989,8 +2043,8 @@ Name: syntaxerl
|
|||
Maintainer: locojay
|
||||
|
||||
"SyntaxErl" is a syntax checker for Erlang. It uses "rebar"
|
||||
(https://github.com/basho/rebar) to determine correct deps and libs paths.
|
||||
See the project's page for more information:
|
||||
(https://github.com/basho/rebar) to determine correct dependencies and library
|
||||
paths. See the project's page for more information:
|
||||
|
||||
https://github.com/ten0s/syntaxerl
|
||||
|
||||
|
@ -2191,7 +2245,7 @@ If the magic comment does not exist, then the dictionary
|
|||
'g:syntastic_glsl_extensions' is used to infer the appropriate profile from
|
||||
the current file's extension. If this dictionary does not exist either, a
|
||||
default dictionary is used instead. Finally, if the current file's extension
|
||||
cannott be found in these dictionaries, the checker assumes a vertex shader
|
||||
cannot be found in these dictionaries, the checker assumes a vertex shader
|
||||
profile.
|
||||
|
||||
*'g:syntastic_glsl_options'*
|
||||
|
@ -2879,7 +2933,7 @@ point |'g:syntastic_java_checkstyle_classpath'| to it:
|
|||
http://iweb.dl.sourceforge.net/project/checkstyle/checkstyle/
|
||||
http://checkstyle.sourceforge.net/cmdline.html#Usage_by_Classpath_update
|
||||
|
||||
Current builds at Maven Central do not package "checkstyles" with its
|
||||
Current builds at Maven Central do not package "checkstyle" with its
|
||||
dependencies:
|
||||
|
||||
http://search.maven.org/#search|gav|1|g%3A%22com.puppycrawl.tools%22%20AND%20a%3A%22checkstyle%22
|
||||
|
@ -4637,7 +4691,7 @@ Please note that transforming a file like this affects line numbers and
|
|||
column numbers, and syntastic has no way to make the necessary adjustments.
|
||||
Consequently, errors might appear on surprising lines if you enable this
|
||||
feature and the transformed file has code on different lines than the raw
|
||||
file. For this reason the use of these transformations should be limitted
|
||||
file. For this reason the use of these transformations should be limited
|
||||
to codecs that preserve line numbers, such as the "spec" codec provided by
|
||||
"NoseOfYeti":
|
||||
|
||||
|
@ -4741,7 +4795,7 @@ setting of "lint.style".
|
|||
Name: lintr
|
||||
Maintainer: Jim Hester <james.f.hester@gmail.com>
|
||||
|
||||
"lintr" is a static code analysys tool for R files. See the project's page at
|
||||
"lintr" is a static code analysis tool for R files. See the project's page at
|
||||
GitHub for details:
|
||||
|
||||
https://github.com/jimhester/lintr
|
||||
|
@ -4794,7 +4848,7 @@ This is a checker for R files, using the R package "svTools":
|
|||
http://cran.r-project.org/web/packages/svTools/
|
||||
|
||||
In turn, this package delegates most of the work to the "checkUsage()"
|
||||
function in the codetools package:
|
||||
function in the "codetools" package:
|
||||
|
||||
http://cran.r-project.org/web/packages/codetools/
|
||||
|
||||
|
@ -4851,7 +4905,7 @@ The following checkers are available for R Markdown (filetype "rmd"):
|
|||
Name: lintr
|
||||
Maintainer: Jim Hester <james.f.hester@gmail.com>
|
||||
|
||||
"lintr" is a static code analysys tool for R files. See the project's page at
|
||||
"lintr" is a static code analysis tool for R files. See the project's page at
|
||||
GitHub for details:
|
||||
|
||||
https://github.com/jimhester/lintr
|
||||
|
@ -5060,7 +5114,7 @@ directory, or if you want to override the autodetected paths, options
|
|||
|'g:syntastic_rst_sphinx_source_dir'| and |'g:syntastic_rst_sphinx_config_dir'|
|
||||
take precedence over the detected values.
|
||||
|
||||
Please not also that the checker creates output files in a temporary directory
|
||||
Please note also that the checker creates output files in a temporary directory
|
||||
that is created upon the first run in the current session, and is removed when
|
||||
Vim exits. If you need to change the location of this directory you can do
|
||||
so by exporting the environment variables "TMPDIR" or "TMP" (on UNIX and Mac
|
||||
|
@ -5081,7 +5135,7 @@ The following checkers are available for Linux RPM packages (filetype "spec"):
|
|||
Name: rpmlint
|
||||
Maintainer: LCD 47 <lcd047@gmail.com>
|
||||
|
||||
"rpmlint" is a trool for checking Linux RPM packages. See the project's page
|
||||
"rpmlint" is a tool for checking Linux RPM packages. See the project's page
|
||||
for details:
|
||||
|
||||
http://sourceforge.net/projects/rpmlint/
|
||||
|
@ -5165,7 +5219,7 @@ Name: macruby
|
|||
Maintainer: Martin Grenfell <martin.grenfell@gmail.com>
|
||||
|
||||
"MacRuby" is an implementation of Ruby for Mac OS X. See the project's
|
||||
pagefor details:
|
||||
page for details:
|
||||
|
||||
http://www.macruby.org/
|
||||
|
||||
|
@ -5864,7 +5918,7 @@ The following checkers are available for Texinfo (filetype "texinfo"):
|
|||
Name: makeinfo
|
||||
Maintainer: LCD 47 <lcd047@gmail.com>
|
||||
|
||||
"Makeinfo" is a convertor for Texinfo files. It is distributed together with
|
||||
"Makeinfo" is a converter for Texinfo files. It is distributed together with
|
||||
the GNU package "texinfo":
|
||||
|
||||
http://www.gnu.org/software/texinfo/
|
||||
|
@ -6087,8 +6141,7 @@ SYNTAX CHECKERS FOR TYPESCRIPT *syntastic-checkers-typescript*
|
|||
The following checkers are available for TypeScript (filetype "typescript"):
|
||||
|
||||
1. ESLint...................|syntastic-typescript-eslint|
|
||||
2. tsc......................|syntastic-typescript-tsc|
|
||||
3. TSLint...................|syntastic-typescript-tslint|
|
||||
2. TSLint...................|syntastic-typescript-tslint|
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
1. ESLint *syntastic-typescript-eslint*
|
||||
|
@ -6118,29 +6171,7 @@ as "typescript-vim":
|
|||
See also: |syntastic-html-eslint|, |syntastic-javascript-eslint|.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
2. tsc *syntastic-typescript-tsc*
|
||||
|
||||
Name: tsc
|
||||
Maintainer: Bill Casarin <bill@casarin.ca>
|
||||
|
||||
"tsc" is a compiler for TypeScript. See the project's page for details:
|
||||
|
||||
http://www.typescriptlang.org/
|
||||
|
||||
Checker options~
|
||||
|
||||
This checker is initialised using the "makeprgBuild()" function and thus it
|
||||
accepts the standard options described at |syntastic-config-makeprg|.
|
||||
|
||||
Note~
|
||||
|
||||
You probably also need a plugin to set |filetype| for TypeScript files, such
|
||||
as "typescript-vim":
|
||||
|
||||
https://github.com/leafgarland/typescript-vim
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
3. TSLint *syntastic-typescript-tslint*
|
||||
2. TSLint *syntastic-typescript-tslint*
|
||||
|
||||
Name: tslint
|
||||
Maintainer: Seon-Wook Park <seon.wook@swook.net>
|
||||
|
@ -6861,6 +6892,7 @@ syntastic-specific configuration files:
|
|||
OpenCOBOL (|syntastic-cobol-cobc|)
|
||||
|
||||
C++~
|
||||
AVR-GCC (|syntastic-cpp-avrgcc|)
|
||||
ClangCheck (|syntastic-cpp-clang_check|)
|
||||
Clang-Tidy (|syntastic-cpp-clang_tidy|)
|
||||
Cppcheck (|syntastic-cpp-cppcheck|)
|
||||
|
|
|
@ -19,7 +19,7 @@ if has('reltime')
|
|||
lockvar! g:_SYNTASTIC_START
|
||||
endif
|
||||
|
||||
let g:_SYNTASTIC_VERSION = '3.7.0-162'
|
||||
let g:_SYNTASTIC_VERSION = '3.7.0-177'
|
||||
lockvar g:_SYNTASTIC_VERSION
|
||||
|
||||
" Sanity checks {{{1
|
||||
|
|
|
@ -12,6 +12,7 @@ let s:_DEFAULT_CHECKERS = {
|
|||
\ 'apiblueprint': ['drafter'],
|
||||
\ 'applescript': ['osacompile'],
|
||||
\ 'asciidoc': ['asciidoc'],
|
||||
\ 'asl': ['iasl'],
|
||||
\ 'asm': ['gcc'],
|
||||
\ 'bro': ['bro'],
|
||||
\ 'bemhtml': ['bemhtmllint'],
|
||||
|
@ -93,7 +94,7 @@ let s:_DEFAULT_CHECKERS = {
|
|||
\ 'trig': ['rapper'],
|
||||
\ 'turtle': ['rapper'],
|
||||
\ 'twig': ['twiglint'],
|
||||
\ 'typescript': ['tsc'],
|
||||
\ 'typescript': [],
|
||||
\ 'vala': ['valac'],
|
||||
\ 'verilog': ['verilator'],
|
||||
\ 'vhdl': ['ghdl'],
|
||||
|
|
59
sources_non_forked/syntastic/syntax_checkers/asl/iasl.vim
Normal file
59
sources_non_forked/syntastic/syntax_checkers/asl/iasl.vim
Normal file
|
@ -0,0 +1,59 @@
|
|||
"============================================================================
|
||||
"File: iasl.vim
|
||||
"Description: Syntax checking plugin for syntastic using iasl
|
||||
"Maintainer: Peter Wu <peter@lekensteyn.nl>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
" it and/or modify it under the terms of the Do What The Fuck You
|
||||
" Want To Public License, Version 2, as published by Sam Hocevar.
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"============================================================================
|
||||
|
||||
if exists('g:loaded_syntastic_asl_iasl_checker')
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_asl_iasl_checker = 1
|
||||
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
function! SyntaxCheckers_asl_iasl_GetLocList() dict
|
||||
let tmpdir = syntastic#util#tmpdir() . syntastic#util#Slash()
|
||||
let makeprg = self.makeprgBuild({
|
||||
\ 'args': '-vi',
|
||||
\ 'args_after': ['-p', tmpdir] })
|
||||
|
||||
let errorformat =
|
||||
\ '%f(%l) : %trror %n - %m,' .
|
||||
\ '%f(%l) : %tarning %n - %m,' .
|
||||
\ '%f(%l) : %temark %n - %m,' .
|
||||
\ '%f(%l) : %tptimize %n - %m,' .
|
||||
\ '%f(%l) : %m'
|
||||
|
||||
let loclist = SyntasticMake({
|
||||
\ 'makeprg': makeprg,
|
||||
\ 'errorformat': errorformat,
|
||||
\ 'returns': [0, 255] })
|
||||
|
||||
for e in loclist
|
||||
if e['type'] =~? 'r'
|
||||
let e['type'] = 'W'
|
||||
elseif e['type'] =~? 'o'
|
||||
let e['type'] = 'W'
|
||||
let e['subtype'] = 'Style'
|
||||
endif
|
||||
endfor
|
||||
|
||||
call syntastic#util#rmrf(tmpdir)
|
||||
|
||||
return loclist
|
||||
endfunction
|
||||
|
||||
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||
\ 'filetype': 'asl',
|
||||
\ 'name': 'iasl'})
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim: set sw=4 sts=4 et fdm=marker:
|
|
@ -1,6 +1,6 @@
|
|||
"============================================================================
|
||||
"File: avrgcc.vim
|
||||
"Description: Syntax checking plugin for syntastic.vim
|
||||
"Description: Syntax checking plugin for syntastic
|
||||
"Maintainer: Karel <karelishere at gmail dot com>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
|
@ -22,10 +22,12 @@ endif
|
|||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
let s:opt_x = { 'c': 'c', 'cpp': 'c++' }
|
||||
|
||||
function! SyntaxCheckers_c_avrgcc_GetLocList() dict
|
||||
let makeprg = self.makeprgBuild({
|
||||
\ 'args_before': syntastic#c#ReadConfig(g:syntastic_avrgcc_config_file),
|
||||
\ 'args_after': '-x c -fsyntax-only' })
|
||||
\ 'args_after': '-x ' . get(s:opt_x, self.getFiletype(), '') . ' -fsyntax-only' })
|
||||
|
||||
let errorformat =
|
||||
\ '%-G%f:%s:,' .
|
||||
|
|
24
sources_non_forked/syntastic/syntax_checkers/cpp/avrgcc.vim
Normal file
24
sources_non_forked/syntastic/syntax_checkers/cpp/avrgcc.vim
Normal file
|
@ -0,0 +1,24 @@
|
|||
"============================================================================
|
||||
"File: avrgcc.vim
|
||||
"Description: Syntax checking plugin for syntastic
|
||||
"Maintainer: Sławek Piotrowski <sentinel at atteo dot com>
|
||||
"License: This program is free software. It comes without any warranty,
|
||||
" to the extent permitted by applicable law. You can redistribute
|
||||
" it and/or modify it under the terms of the Do What The Fuck You
|
||||
" Want To Public License, Version 2, as published by Sam Hocevar.
|
||||
" See http://sam.zoy.org/wtfpl/COPYING for more details.
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists('g:loaded_syntastic_cpp_avrgcc_checker')
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_cpp_avrgcc_checker = 1
|
||||
|
||||
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||
\ 'filetype': 'cpp',
|
||||
\ 'name': 'avrgcc',
|
||||
\ 'exec': 'avr-g++',
|
||||
\ 'redirect': 'c/avrgcc'})
|
||||
|
||||
" vim: set sw=4 sts=4 et fdm=marker:
|
|
@ -1,66 +0,0 @@
|
|||
"============================================================================
|
||||
"File: tsc.vim
|
||||
"Description: TypeScript syntax checker
|
||||
"Maintainer: Bill Casarin <bill@casarin.ca>
|
||||
"
|
||||
"============================================================================
|
||||
|
||||
if exists('g:loaded_syntastic_typescript_tsc_checker')
|
||||
finish
|
||||
endif
|
||||
let g:loaded_syntastic_typescript_tsc_checker = 1
|
||||
|
||||
if !exists('g:syntastic_typescript_tsc_sort')
|
||||
let g:syntastic_typescript_tsc_sort = 1
|
||||
endif
|
||||
|
||||
let s:save_cpo = &cpo
|
||||
set cpo&vim
|
||||
|
||||
function! SyntaxCheckers_typescript_tsc_IsAvailable() dict
|
||||
if !executable(self.getExec())
|
||||
return 0
|
||||
endif
|
||||
|
||||
let version_output = split(syntastic#util#system(self.getExecEscaped() . ' --version'), '\n', 1)
|
||||
let ver = filter(copy(version_output), 'v:val =~# ''\m\<Version ''')
|
||||
let parsed_ver = len(ver) ? syntastic#util#parseVersion(ver[0], '\v<Version \zs\d+(\.\d+)\ze') : []
|
||||
|
||||
if len(parsed_ver)
|
||||
call self.setVersion(parsed_ver)
|
||||
let s:tsc_new = syntastic#util#versionIsAtLeast(parsed_ver, [1, 5])
|
||||
else
|
||||
call syntastic#log#ndebug(g:_SYNTASTIC_DEBUG_LOCLIST, 'checker output:', version_output)
|
||||
call syntastic#log#error("checker typescript/tsc: can't parse version string (abnormal termination?)")
|
||||
let s:tsc_new = -1
|
||||
endif
|
||||
|
||||
return s:tsc_new >= 0
|
||||
endfunction
|
||||
|
||||
function! SyntaxCheckers_typescript_tsc_GetLocList() dict
|
||||
let makeprg = self.makeprgBuild({
|
||||
\ 'args': '--module commonjs',
|
||||
\ 'args_after': (s:tsc_new ? '--noEmit' : '--out ' . syntastic#util#DevNull()) })
|
||||
|
||||
let errorformat =
|
||||
\ '%E%f %#(%l\,%c): error %m,' .
|
||||
\ '%E%f %#(%l\,%c): %m,' .
|
||||
\ '%Eerror %m,' .
|
||||
\ '%C%\s%\+%m'
|
||||
|
||||
return SyntasticMake({
|
||||
\ 'makeprg': makeprg,
|
||||
\ 'errorformat': errorformat,
|
||||
\ 'postprocess': ['guards'],
|
||||
\ 'defaults': {'bufnr': bufnr('')} })
|
||||
endfunction
|
||||
|
||||
call g:SyntasticRegistry.CreateAndRegisterChecker({
|
||||
\ 'filetype': 'typescript',
|
||||
\ 'name': 'tsc'})
|
||||
|
||||
let &cpo = s:save_cpo
|
||||
unlet s:save_cpo
|
||||
|
||||
" vim: set sw=4 sts=4 et fdm=marker:
|
|
@ -41,7 +41,7 @@ the `<F7>` key if so. For example, to remap it to `<F3>` instead, use:
|
|||
|
||||
For flake8 configuration options please consult the following page:
|
||||
|
||||
https://flake8.readthedocs.org/en/latest/config.html
|
||||
http://flake8.pycqa.org/en/latest/user/configuration.html
|
||||
|
||||
To customize the location of your flake8 binary, set `g:flake8_cmd`:
|
||||
|
||||
|
|
|
@ -1,17 +1,45 @@
|
|||
## 1.8 (unplanned)
|
||||
## Unplanned
|
||||
|
||||
IMPROVEMENTS:
|
||||
|
||||
* **guru** uses now the `-modified` flag, which allows us use guru on modified
|
||||
buffers as well. This affects all commands where `guru` is used. Such as
|
||||
`:GoDef`, `:GoReferrers`, etc.. [gh-944]
|
||||
* Cleanup and improve documentation [gh-987]
|
||||
|
||||
BUG FIXES:
|
||||
|
||||
* Fix system calls on Windows [gh-988]
|
||||
|
||||
|
||||
## 1.8 (July 31, 2016)
|
||||
|
||||
FEATURES:
|
||||
|
||||
* If you open a new buffer with a Go filename it get automatically populated based on the directory. If there are no Go files a simple main package is created, otherwise the file will include the package declaration line based on the package in the current directory. Checkout the demo to see it in action: https://twitter.com/fatih/status/748333086643994624. This is enabled by default. Can be disabled with `let g:go_template_autocreate = 0`. You can use your own template with `let g:go_template_file = "foo.go"` and putting the file under the `templates/` folder. [gh-918]
|
||||
* The snippet expansion `json` is now much more smarter. It pre populates the placeholder according to the first word and it also applies `snake_case` or `camelCase` conversion. Checkout the demo to see it in action: https://github.com/fatih/vim-go/pull/927 [gh-927]
|
||||
* **`:GoSameIds`** support. When called highlights all same identifiers in the current file. Can be also enabled to highlight identifiers automatically. Checkout the demo to see it in action: https://twitter.com/fatih/status/753673709278339072. [gh-936]
|
||||
* New **`:GoAddTags`** command that adds field tags for the fields of a struct automatically based on the field names. Checkout the demo to see it in action: https://twitter.com/fatih/status/759822857773907968 [gh-971]
|
||||
* The snippet expansion `json` is now much more smarter. It pre populates the placeholder according to the first word and it also applies `snake_case` or `camelCase` conversion. Together with `:GoAddTags` it gives `vim-go` users flexible ways of populating a field tag. Checkout the demo to see it in action: https://twitter.com/fatih/status/754477622042689536 [gh-927]
|
||||
* New **`:GoSameIds`** command. When called highlights all same identifiers in the current file. Can be also enabled to highlight identifiers automatically (with `:GoSameIdsAutoToggle` or `g:go_auto_sameids`). Checkout the demo to see it in action: https://twitter.com/fatih/status/753673709278339072. [gh-936]
|
||||
* New **`:GoWhicherrs`** command. It shows all possible values of the selected error variable. [gh-948]
|
||||
* Add new `errp` snippet to expand an `if err != nil { panic() }` clause [gh-926]
|
||||
* If you open a new buffer with a Go filename it get automatically populated based on the directory. If there are no Go files a simple main package is created, otherwise the file will include the package declaration line based on the package in the current directory. Checkout the demo to see it in action: https://twitter.com/fatih/status/748333086643994624. This is enabled by default. Can be disabled with `let g:go_template_autocreate = 0`. You can use your own template with `let g:go_template_file = "foo.go"` and putting the file under the `templates/` folder. [gh-918]
|
||||
* Added new toggle commands to enable/disable feature that run for your
|
||||
automatic. For example if you have `let g:go_auto_type_info = 1` enabled, you
|
||||
can now easily enable/disable it on the fly. Support added with the following
|
||||
commands: `:GoAutoTypeInfoToggle`, `:GoFmtAutoSaveToggle`,
|
||||
`:GoAsmFmtAutoSaveToggle`, `:GoMetalinterAutoSaveToggle`,
|
||||
`:GoTemplateAutoCreateToggle` [gh-945]
|
||||
|
||||
|
||||
IMPROVEMENTS:
|
||||
* `:GoDoc` accepts arguments now which are passed directly to `godoc`. So usages like `:GoDoc flag` works again (it was changed in previous versions [gh-894]
|
||||
* `:GoDef` works now for modified files as well [gh-910]
|
||||
* Internal: pass filename to the `--srcdir` flag to enable upcoming `goimports` features [gh-957]
|
||||
* Internal: fix indentations on all files to **2-spaces/no tabs**. This is now the default vim-go style across all VimL files [gh-915]
|
||||
* Internal: autocmd settings can be now dynamically enabled/disabled [gh-939]
|
||||
* Internal: automatically detect `GOPATH` for :GoInstall [gh-980]
|
||||
* Internal: shell executions uses now by default `sh` and then resets it back to the user preference. [gh-967]
|
||||
* Syntax: improved syntax highglighting performance for methods, fields, structs and interface type declarations [gh-917]
|
||||
* Syntax: moved `:GoCoverage` highlight definition into go's syntax file for more customizability [gh-962]
|
||||
|
||||
|
||||
BUG FIXES:
|
||||
|
||||
|
@ -21,6 +49,7 @@ BUG FIXES:
|
|||
* Fix `:GoFmt` not picking up `-srcdir` if the command was set to use `goimports` [gh-904]
|
||||
* Fix `:GoTestCompile` to not leave behind artifacts if the cwd and the test files's directory do not match [gh-909]
|
||||
* Fix `:GoDocBrowser` to not fail if godoc doesn't exist [gh-920]
|
||||
* Fix `:GoFmt` to not change the permissions of saved file. Now original file permissions are restored [gh-922]
|
||||
|
||||
BACKWARDS INCOMPATIBILITIES:
|
||||
|
||||
|
|
|
@ -50,10 +50,16 @@ disabled/enabled easily.
|
|||
in their own new terminal. (beta)
|
||||
* Alternate between implementation and test code with `:GoAlternate`
|
||||
|
||||
Checkout the official [tutorial](https://github.com/fatih/vim-go-tutorial)
|
||||
that goes literally over all features and shows many tips and tricks. It shows
|
||||
how to install vim-go and explains many unknown use cases. Recommended for
|
||||
beginners as well as advanced users: https://github.com/fatih/vim-go-tutorial
|
||||
|
||||
## Install
|
||||
|
||||
Master branch is supposed to be a development branch. So stuff here can break and change.
|
||||
Please try use always the [latest release](https://github.com/fatih/vim-go/releases/latest)
|
||||
Master branch is supposed to be a development branch. So stuff here can break
|
||||
and change. Please try use always the [latest
|
||||
release](https://github.com/fatih/vim-go/releases/latest)
|
||||
|
||||
Vim-go follows the standard runtime path structure, so I highly recommend to
|
||||