summaryrefslogtreecommitdiffstats
path: root/autoload
diff options
context:
space:
mode:
authorAdam Stankiewicz <sheerun@sher.pl>2021-04-14 11:59:14 +0200
committerAdam Stankiewicz <sheerun@sher.pl>2021-04-14 11:59:22 +0200
commit9e45c07a8d2eb77a1d276f762a448f42a33a47c6 (patch)
treef7a2926e460a75b7bd5b7498576042275e9fa57f /autoload
parent3c5fca7621a1f5e53911195ebb6e7c777fad8031 (diff)
downloadvim-polyglot-9e45c07a8d2eb77a1d276f762a448f42a33a47c6.tar.gz
vim-polyglot-9e45c07a8d2eb77a1d276f762a448f42a33a47c6.zip
Update
Diffstat (limited to 'autoload')
-rw-r--r--autoload/LaTeXtoUnicode.vim190
-rw-r--r--autoload/csv.vim17
-rw-r--r--autoload/fsharp.vim1
-rw-r--r--autoload/go/config.vim8
-rw-r--r--autoload/graphql.vim2
-rw-r--r--autoload/polyglot/init.vim6
-rw-r--r--autoload/polyglot/sleuth.vim6
-rw-r--r--autoload/requirements.vim2
-rw-r--r--autoload/zig/fmt.vim16
9 files changed, 167 insertions, 81 deletions
diff --git a/autoload/LaTeXtoUnicode.vim b/autoload/LaTeXtoUnicode.vim
index fed23032..2be1a492 100644
--- a/autoload/LaTeXtoUnicode.vim
+++ b/autoload/LaTeXtoUnicode.vim
@@ -12,28 +12,14 @@ function! s:L2U_Setup()
" Keep track of whether LaTeX-to-Unicode is activated
" (used when filetype changes)
- if !has_key(b:, "l2u_enabled")
- let b:l2u_enabled = 0
- endif
- if !has_key(b:, "l2u_autodetect_enable")
- let b:l2u_autodetect_enable = 1
- endif
+ let b:l2u_enabled = get(b:, "l2u_enabled", 0)
+ let b:l2u_autodetect_enable = get(b:, "l2u_autodetect_enable", 1)
- " Did we install the L2U tab mappings?
- if !has_key(b:, "l2u_tab_set")
- let b:l2u_tab_set = 0
- endif
- if !has_key(b:, "l2u_cmdtab_set")
- let b:l2u_cmdtab_set = 0
- endif
- if !has_key(b:, "l2u_keymap_set")
- let b:l2u_keymap_set = 0
- endif
-
- " Did we activate the L2U as-you-type substitutions?
- if !has_key(b:, "l2u_autosub_set")
- let b:l2u_autosub_set = 0
- endif
+ " Did we install the L2U tab/as-you-type/keymap... mappings?
+ let b:l2u_tab_set = get(b:, "l2u_tab_set", 0)
+ let b:l2u_cmdtab_set = get(b:, "l2u_cmdtab_set", 0)
+ let b:l2u_autosub_set = get(b:, "l2u_autosub_set", 0)
+ let b:l2u_keymap_set = get(b:, "l2u_keymap_set", 0)
" Following are some flags used to pass information between the function which
" attempts the LaTeX-to-Unicode completion and the fallback function
@@ -77,17 +63,19 @@ function! s:L2U_SetupGlobal()
let g:latex_to_unicode_suggestions = 0
endif
- " A hack to forcibly get out of completion mode: feed
- " this string with feedkeys()
- if has("win32") || has("win64")
- let s:l2u_esc_sequence = "\u0006"
- else
- let s:l2u_esc_sequence = "\u0091\b"
- end
+ " Forcibly get out of completion mode: feed
+ " this string with feedkeys(s:l2u_esc_sequence, 'n')
+ let s:l2u_esc_sequence = " \b"
" Trigger for the previous mapping of <Tab>
let s:l2u_fallback_trigger = "\u0091L2UFallbackTab"
+ " Trigger for the previous mapping of <CR>
+ let s:l2u_fallback_trigger_cr = "\u0091L2UFallbackCR"
+
+ " Trigger for autosub completion cleanup autocommand
+ let s:l2u_autosub_cleanup_trigger = "\u0091L2UAutosubCleanup"
+
endfunction
" Each time the filetype changes, we may need to enable or
@@ -203,7 +191,7 @@ function! s:L2U_ismatch()
if col0 == -1
return 0
endif
- let base = l[col0 : col1-1]
+ let base = l[col0:col1-2]
return has_key(g:l2u_symbols_dict, base)
endfunction
@@ -258,8 +246,14 @@ function! LaTeXtoUnicode#completefunc(findstart, base)
let b:l2u_in_fallback = 0
return -3
endif
+ " make sure that the options are still set
+ " (it may happen that <C-X><C-U> itself triggers the fallback before
+ " restarting, thus reseetting them; this happens when the prompt is
+ " waiting for ^U^N^P during a partial completion)
call s:L2U_SetCompleteopt()
+ " setup the cleanup/fallback operations when we're done
call s:L2U_InsertCompleteDoneAutocommand()
+ call s:L2U_InsertInsertLeaveAutocommand()
" set info for the callback
let b:l2u_found_completion = 1
" analyse current line
@@ -345,48 +339,83 @@ function! LaTeXtoUnicode#PutLiteral(k)
return ''
endfunction
+function! LaTeXtoUnicode#PutLiteralCR()
+ call feedkeys(' ', 'ni')
+ return ''
+endfunction
+
" Function which saves the current insert-mode mapping of a key sequence `s`
" and associates it with another key sequence `k` (e.g. stores the current
-" <Tab> mapping into the Fallback trigger)
+" <Tab> mapping into the Fallback trigger).
+" It returns the previous maparg dictionary, so that the previous mapping can
+" be reinstated if needed.
function! s:L2U_SetFallbackMapping(s, k)
let mmdict = maparg(a:s, 'i', 0, 1)
if empty(mmdict)
exe 'inoremap <buffer> ' . a:k . ' ' . a:s
- return
+ return mmdict
endif
let rhs = mmdict["rhs"]
if rhs =~# '^<Plug>L2U'
- return
+ return mmdict
endif
let pre = '<buffer>'
- if mmdict["silent"]
- let pre = pre . '<silent>'
- endif
- if mmdict["expr"]
- let pre = pre . '<expr>'
- endif
+ let pre = pre . (mmdict["silent"] ? '<silent>' : '')
+ let pre = pre . (mmdict["expr"] ? '<expr>' : '')
if mmdict["noremap"]
let cmd = 'inoremap '
else
let cmd = 'imap '
" This is a nasty hack used to prevent infinite recursion. It's not a
- " general solution.
+ " general solution. Also, it doesn't work with <CR> since that stops
+ " parsing of the <C-R>=... expression, so we need to special-case it.
+ " Also, if the original mapping was intended to be recursive, this
+ " will break it.
if mmdict["expr"]
- let rhs = substitute(rhs, '\c' . a:s, "\<C-R>=LaTeXtoUnicode#PutLiteral('" . a:s . "')\<CR>", 'g')
+ if a:s != "<CR>"
+ let rhs = substitute(rhs, '\c' . a:s, "\<C-R>=LaTeXtoUnicode#PutLiteral('" . a:s . "')\<CR>", 'g')
+ else
+ let rhs = substitute(rhs, '\c' . a:s, "\<C-R>=LaTeXtoUnicode#PutLiteralCR()\<CR>", 'g')
+ endif
+ " Make the mapping silent even if it wasn't originally
+ if !mmdict["silent"]
+ let pre = pre . '<silent>'
+ endif
endif
endif
exe cmd . pre . ' ' . a:k . ' ' . rhs
+ return mmdict
+endfunction
+
+" Reinstate a mapping from the maparg dict returned by SetFallbackMapping
+" (only if buffer-local, since otherwise it should still be available)
+function! s:L2U_ReinstateMapping(mmdict)
+ if empty(a:mmdict) || !a:mmdict["buffer"]
+ return ''
+ endif
+ let lhs = a:mmdict["lhs"]
+ let rhs = a:mmdict["rhs"]
+ if rhs =~# '^<Plug>L2U'
+ return ''
+ endif
+ let pre = '<buffer>'
+ let pre = pre . (a:mmdict["silent"] ? '<silent>' : '')
+ let pre = pre . (a:mmdict["expr"] ? '<expr>' : '')
+ let cmd = a:mmdict["noremap"] ? 'inoremap ' : 'imap '
+ exe cmd . pre . ' ' . lhs . ' ' . rhs
endfunction
" This is the function which is mapped to <Tab>
function! LaTeXtoUnicode#Tab()
" the <Tab> is passed through to the fallback mapping if the completion
" menu is present, and it hasn't been raised by the L2U tab, and there
- " isn't an exact match before the cursor when suggestions are disabled
- if pumvisible() && !b:l2u_tab_completing && (get(g:, "latex_to_unicode_suggestions", 1) || !s:L2U_ismatch())
+ " isn't an exact match before the cursor
+ if pumvisible() && !b:l2u_tab_completing && !s:L2U_ismatch()
call feedkeys(s:l2u_fallback_trigger)
return ''
endif
+ " ensure that we start completion with some reasonable options
+ call s:L2U_SetCompleteopt()
" reset the in_fallback info
let b:l2u_in_fallback = 0
let b:l2u_tab_completing = 1
@@ -497,7 +526,7 @@ function! s:L2U_RestoreCompleteopt()
endfunction
function! s:L2U_InsertCompleteDoneAutocommand()
- augroup L2UTab
+ augroup L2UCompleteDone
autocmd! * <buffer>
" Every time a L2U completion finishes, the fallback may be invoked
autocmd CompleteDone <buffer> call LaTeXtoUnicode#FallbackCallback()
@@ -505,8 +534,22 @@ function! s:L2U_InsertCompleteDoneAutocommand()
endfunction
function! s:L2U_RemoveCompleteDoneAutocommand()
- augroup L2UTab
+ augroup L2UCompleteDone
+ autocmd! * <buffer>
+ augroup END
+endfunction
+
+function s:L2U_InsertLeaveClenup()
+ call s:L2U_ResetLastCompletionInfo()
+ augroup L2UInsertLeave
+ autocmd! * <buffer>
+ augroup END
+endfunction
+
+function! s:L2U_InsertInsertLeaveAutocommand()
+ augroup L2UInsertLeave
autocmd! * <buffer>
+ autocmd InsertLeave <buffer> call s:L2U_InsertLeaveClenup()
augroup END
endfunction
@@ -537,12 +580,12 @@ function! s:L2U_SetTab(wait_insert_enter)
endif
" Backup the previous completefunc (the check is probably not really needed)
- if get(b:, "prev_completefunc", "") != "LaTeXtoUnicode#completefunc"
- let b:prev_completefunc = &completefunc
+ if get(b:, "l2u_prev_completefunc", "") != "LaTeXtoUnicode#completefunc"
+ let b:l2u_prev_completefunc = &completefunc
endif
setlocal completefunc=LaTeXtoUnicode#completefunc
- call s:L2U_SetFallbackMapping('<Tab>', s:l2u_fallback_trigger)
+ let b:l2u_prev_map_tab = s:L2U_SetFallbackMapping('<Tab>', s:l2u_fallback_trigger)
imap <buffer> <Tab> <Plug>L2UTab
inoremap <buffer><expr> <Plug>L2UTab LaTeXtoUnicode#Tab()
@@ -560,10 +603,10 @@ function! s:L2U_UnsetTab()
if !b:l2u_tab_set
return
endif
- exec "setlocal completefunc=" . get(b:, "prev_completefunc", "")
+ exec "setlocal completefunc=" . get(b:, "l2u_prev_completefunc", "")
iunmap <buffer> <Tab>
if empty(maparg("<Tab>", "i"))
- call s:L2U_SetFallbackMapping(s:l2u_fallback_trigger, '<Tab>')
+ call s:L2U_ReinstateMapping(b:l2u_prev_map_tab)
endif
iunmap <buffer> <Plug>L2UTab
exe 'iunmap <buffer> ' . s:l2u_fallback_trigger
@@ -572,13 +615,25 @@ endfunction
" Function which looks for viable LaTeX-to-Unicode supstitutions as you type
function! LaTeXtoUnicode#AutoSub(...)
+ " avoid recursive calls
+ if get(b:, "l2u_in_autosub", 0)
+ return ''
+ endif
let vc = a:0 == 0 ? v:char : a:1
+ " for some reason function keys seem to be passed as characters 149 (F1-F12)
+ " or 186 (F13-F37, these are entered with shift/ctrl). In such cases, we
+ " can't really do any better than giving up.
+ if char2nr(vc) == 149 || char2nr(vc) == 186
+ return ''
+ endif
+ let b:l2u_in_autosub = 1
let col1 = col('.')
let lnum = line('.')
if col1 == 1
if a:0 > 1
- call feedkeys(a:2, 'n')
+ call feedkeys(a:2, 't')
endif
+ let b:l2u_in_autosub = 0
return ''
endif
let bs = (vc != "\n")
@@ -586,21 +641,42 @@ function! LaTeXtoUnicode#AutoSub(...)
let col0 = match(l, '\\\%([_^]\?[A-Za-z]\+\%' . col1 . 'c\%([^A-Za-z]\|$\)\|[_^]\%([0-9()=+-]\)\%' . col1 .'c\%(.\|$\)\)')
if col0 == -1
if a:0 > 1
- call feedkeys(a:2, 'n')
+ call feedkeys(a:2, 't')
endif
+ let b:l2u_in_autosub = 0
return ''
endif
- let base = l[col0 : -1-bs]
+ let base = l[col0 : col1-1-bs]
let unicode = get(g:l2u_symbols_dict, base, '')
if empty(unicode)
if a:0 > 1
- call feedkeys(a:2, 'n')
+ call feedkeys(a:2, 't')
endif
+ let b:l2u_in_autosub = 0
return ''
endif
+
+ " create a temporary mapping to reset b:l2u_in_autosub when done
+ " (when invoked, it removes itself)
+ exec 'imap <buffer> ' . s:l2u_autosub_cleanup_trigger . ' <Plug>L2UAutosubReset'
+ inoremap <buffer><expr> <Plug>L2UAutosubReset <SID>L2U_AutosubReset()
+
+ " perform the substitution, wrapping it in undo breakpoints so that
+ " we can revert it as a whole
call feedkeys("\<C-G>u", 'n')
call feedkeys(repeat("\b", len(base) + bs) . unicode . vc . s:l2u_esc_sequence, 'nt')
call feedkeys("\<C-G>u", 'n')
+ " enqueue the reset mechanism
+ call feedkeys(s:l2u_autosub_cleanup_trigger)
+ return ''
+endfunction
+
+function! s:L2U_AutosubReset()
+ " no longer doing substitution
+ let b:l2u_in_autosub = 0
+ " remove the mapping that triggered this function
+ exec 'iunmap <buffer> ' . s:l2u_autosub_cleanup_trigger
+ iunmap <buffer> <Plug>L2UAutosubReset
return ''
endfunction
@@ -619,8 +695,10 @@ function! s:L2U_SetAutoSub(wait_insert_enter)
" Viable substitutions are searched at every character insertion via the
" autocmd InsertCharPre. The <Enter> key does not seem to be catched in
" this way though, so we use a mapping for that case.
+
+ let b:l2u_prev_map_cr = s:L2U_SetFallbackMapping('<CR>', s:l2u_fallback_trigger_cr)
imap <buffer> <CR> <Plug>L2UAutoSub
- inoremap <buffer><expr> <Plug>L2UAutoSub LaTeXtoUnicode#AutoSub("\n", "\<CR>")
+ exec 'inoremap <buffer><expr> <Plug>L2UAutoSub LaTeXtoUnicode#AutoSub("\n", "' . s:l2u_fallback_trigger_cr . '")'
augroup L2UAutoSub
autocmd! * <buffer>
@@ -637,7 +715,11 @@ function! s:L2U_UnsetAutoSub()
endif
iunmap <buffer> <CR>
+ if empty(maparg("<CR>", "i"))
+ call s:L2U_ReinstateMapping(b:l2u_prev_map_cr)
+ endif
iunmap <buffer> <Plug>L2UAutoSub
+ exe 'iunmap <buffer> ' . s:l2u_fallback_trigger_cr
augroup L2UAutoSub
autocmd! * <buffer>
augroup END
diff --git a/autoload/csv.vim b/autoload/csv.vim
index e47ee41d..d268cd12 100644
--- a/autoload/csv.vim
+++ b/autoload/csv.vim
@@ -1989,7 +1989,6 @@ fu! csv#AnalyzeColumn(...) "{{{3
endif
let title="Nr\tCount\t % \tValue"
- endif
echohl Title
echo printf("%s", title)
echohl Normal
@@ -2311,7 +2310,7 @@ fu! csv#CommandDefinitions() "{{{3
call csv#LocalCmd("NewDelimiter", ':call csv#NewDelimiter(<q-args>, 1, line(''$''))',
\ '-nargs=1')
call csv#LocalCmd("Duplicates", ':call csv#CheckDuplicates(<q-args>)',
- \ '-nargs=1 -complete=custom,csv#CompleteColumnNr')
+ \ '-nargs=? -complete=custom,csv#CompleteColumnNr')
call csv#LocalCmd('Transpose', ':call csv#Transpose(<line1>, <line2>)',
\ '-range=%')
call csv#LocalCmd('CSVTabularize', ':call csv#Tabularize(<bang>0,<line1>,<line2>)',
@@ -2499,12 +2498,16 @@ fu! csv#CompleteColumnNr(A,L,P) "{{{3
return join(range(1,csv#MaxColumns()), "\n")
endfu
fu! csv#CheckDuplicates(list) "{{{3
- let string = a:list
- if string =~ '\d\s\?-\s\?\d'
- let string = substitute(string, '\(\d\+\)\s\?-\s\?\(\d\+\)',
- \ '\=join(range(submatch(1),submatch(2)), ",")', '')
+ if empty(a:list)
+ let list=[csv#WColumn()]
+ else
+ let string = a:list
+ if string =~ '\d\s\?-\s\?\d'
+ let string = substitute(string, '\(\d\+\)\s\?-\s\?\(\d\+\)',
+ \ '\=join(range(submatch(1),submatch(2)), ",")', '')
+ endif
+ let list=split(string, ',')
endif
- let list=split(string, ',')
call csv#DuplicateRows(list)
endfu
fu! csv#Transpose(line1, line2) "{{{3
diff --git a/autoload/fsharp.vim b/autoload/fsharp.vim
index a37a92e7..89287042 100644
--- a/autoload/fsharp.vim
+++ b/autoload/fsharp.vim
@@ -336,6 +336,7 @@ function! s:download(branch)
\ )
if v:shell_error == 0
call system('unzip -o -d ' . s:script_root_dir . "/fsac " . zip)
+ call system('find ' . s:script_root_dir . '/fsac' . ' -type f -exec chmod 777 \{\} \;')
echom "[FSAC] Updated FsAutoComplete to version " . a:branch . ""
else
echom "[FSAC] Failed to update FsAutoComplete"
diff --git a/autoload/go/config.vim b/autoload/go/config.vim
index cafba5f4..d20ead8b 100644
--- a/autoload/go/config.vim
+++ b/autoload/go/config.vim
@@ -315,7 +315,7 @@ function! go#config#FmtAutosave() abort
endfunction
function! go#config#ImportsAutosave() abort
- return get(g:, 'go_imports_autosave', 0)
+ return get(g:, 'go_imports_autosave', 1)
endfunction
function! go#config#SetFmtAutosave(value) abort
@@ -359,11 +359,11 @@ function! go#config#DeclsMode() abort
endfunction
function! go#config#FmtCommand() abort
- return get(g:, "go_fmt_command", "gofmt")
+ return get(g:, "go_fmt_command", go#config#GoplsEnabled() ? 'gopls' : 'gofmt')
endfunction
function! go#config#ImportsMode() abort
- return get(g:, "go_imports_mode", "goimports")
+ return get(g:, "go_imports_mode", go#config#GoplsEnabled() ? 'gopls' : 'goimports')
endfunction
function! go#config#FmtOptions() abort
@@ -388,7 +388,7 @@ function! go#config#RenameCommand() abort
endfunction
function! go#config#GorenameBin() abort
- return get(g:, "go_gorename_bin", "gopls")
+ return get(g:, "go_gorename_bin", 'gopls')
endfunction
function! go#config#GorenamePrefill() abort
diff --git a/autoload/graphql.vim b/autoload/graphql.vim
index 6dc441c6..135d184a 100644
--- a/autoload/graphql.vim
+++ b/autoload/graphql.vim
@@ -2,7 +2,7 @@ if polyglot#init#is_disabled(expand('<sfile>:p'), 'graphql', 'autoload/graphql.v
finish
endif
-" Copyright (c) 2016-2020 Jon Parise <jon@indelible.org>
+" Copyright (c) 2016-2021 Jon Parise <jon@indelible.org>
"
" Permission is hereby granted, free of charge, to any person obtaining a copy
" of this software and associated documentation files (the "Software"), to
diff --git a/autoload/polyglot/init.vim b/autoload/polyglot/init.vim
index 1784f4e1..d2199398 100644
--- a/autoload/polyglot/init.vim
+++ b/autoload/polyglot/init.vim
@@ -1321,7 +1321,7 @@ endif
if !has_key(g:polyglot_is_disabled, 'html')
au BufNewFile,BufRead,BufWritePost *.html call polyglot#detect#Html()
- au BufNewFile,BufRead *.htm,*.html.hl,*.inc,*.st,*.xht,*.xhtml setf html
+ au BufNewFile,BufRead *.htm,*.html.hl,*.inc,*.xht,*.xhtml setf html
endif
if !has_key(g:polyglot_is_disabled, 'hollywood')
@@ -2000,7 +2000,7 @@ if !has_key(g:polyglot_is_disabled, 'rspec')
endif
if !has_key(g:polyglot_is_disabled, 'ruby')
- au BufNewFile,BufRead *.axlsx,*.builder,*.cap,*.eye,*.fcgi,*.gemspec,*.god,*.jbuilder,*.mspec,*.opal,*.pluginspec,*.podspec,*.rabl,*.rake,*.rant,*.rb,*.rbi,*.rbuild,*.rbw,*.rbx,*.rjs,*.ru,*.ruby,*.rxml,*.spec,*.thor,*.watchr,{.,}Brewfile,{.,}Guardfile,{.,}autotest,{.,}irbrc,{.,}pryrc,{.,}simplecov,Appraisals,Berksfile,Buildfile,Capfile,Cheffile,Dangerfile,Deliverfile,Fastfile,Gemfile,Gemfile.lock,Guardfile,Jarfile,KitchenSink,Mavenfile,Podfile,Puppetfile,Rakefile,Routefile,Snapfile,Thorfile,Vagrantfile,[Rr]antfile,buildfile,vagrantfile setf ruby
+ au BufNewFile,BufRead *.axlsx,*.builder,*.cap,*.eye,*.fcgi,*.gemspec,*.god,*.jbuilder,*.mspec,*.opal,*.pluginspec,*.podspec,*.prawn,*.rabl,*.rake,*.rant,*.rb,*.rbi,*.rbuild,*.rbw,*.rbx,*.rjs,*.ru,*.ruby,*.rxml,*.spec,*.thor,*.watchr,{.,}Brewfile,{.,}Guardfile,{.,}autotest,{.,}irbrc,{.,}pryrc,{.,}simplecov,Appraisals,Berksfile,Buildfile,Capfile,Cheffile,Dangerfile,Deliverfile,Fastfile,Gemfile,Guardfile,Jarfile,KitchenSink,Mavenfile,Podfile,Puppetfile,Rakefile,Routefile,Snapfile,Thorfile,Vagrantfile,[Rr]antfile,buildfile,vagrantfile setf ruby
au BufNewFile,BufRead [Rr]akefile* call s:StarSetf('ruby')
au BufNewFile,BufRead *.erb,*.erb.deface,*.rhtml setf eruby
endif
@@ -2592,7 +2592,7 @@ if !has_key(g:polyglot_is_disabled, 'ant')
endif
if !has_key(g:polyglot_is_disabled, 'xml')
- au BufNewFile,BufRead *.adml,*.admx,*.ant,*.axml,*.builds,*.ccproj,*.ccxml,*.cdxml,*.clixml,*.cproject,*.cscfg,*.csdef,*.csl,*.csproj,*.csproj.user,*.ct,*.depproj,*.dita,*.ditamap,*.ditaval,*.dll.config,*.dotsettings,*.filters,*.fsproj,*.fxml,*.glade,*.gml,*.gmx,*.grxml,*.gst,*.iml,*.ivy,*.jelly,*.jsproj,*.kml,*.launch,*.mdpolicy,*.mjml,*.mm,*.mod,*.mxml,*.natvis,*.ncl,*.ndproj,*.nproj,*.nuspec,*.odd,*.osm,*.pkgproj,*.pluginspec,*.proj,*.props,*.psc1,*.pt,*.rdf,*.res,*.resx,*.rs,*.rss,*.sch,*.scxml,*.sfproj,*.shproj,*.srdf,*.storyboard,*.sublime-snippet,*.targets,*.tml,*.tpm,*.ui,*.urdf,*.ux,*.vbproj,*.vcxproj,*.vsixmanifest,*.vssettings,*.vstemplate,*.vxml,*.wixproj,*.workflow,*.wpl,*.wsdl,*.wsf,*.wxi,*.wxl,*.wxs,*.x3d,*.xacro,*.xaml,*.xib,*.xlf,*.xliff,*.xmi,*.xml,*.xml.dist,*.xproj,*.xsd,*.xspec,*.xul,*.zcml,*/etc/blkid.tab,*/etc/blkid.tab.old,*/etc/xdg/menus/*.menu,*fglrxrc,{.,}classpath,{.,}cproject,{.,}project,App.config,NuGet.config,Settings.StyleCop,Web.Debug.config,Web.Release.config,Web.config,packages.config setf xml
+ au BufNewFile,BufRead *.adml,*.admx,*.ant,*.axml,*.builds,*.ccproj,*.ccxml,*.cdxml,*.clixml,*.cproject,*.cscfg,*.csdef,*.csl,*.csproj,*.csproj.user,*.ct,*.depproj,*.dita,*.ditamap,*.ditaval,*.dll.config,*.dotsettings,*.filters,*.fsproj,*.fxml,*.glade,*.gml,*.gmx,*.grxml,*.gst,*.iml,*.ivy,*.jelly,*.jsproj,*.kml,*.launch,*.mdpolicy,*.mjml,*.mm,*.mod,*.mxml,*.natvis,*.ncl,*.ndproj,*.nproj,*.nuspec,*.odd,*.osm,*.pkgproj,*.pluginspec,*.proj,*.props,*.psc1,*.pt,*.rdf,*.res,*.resx,*.rs,*.rss,*.sch,*.scxml,*.sfproj,*.shproj,*.srdf,*.storyboard,*.sublime-snippet,*.targets,*.tml,*.tpm,*.ui,*.urdf,*.ux,*.vbproj,*.vcxproj,*.vsixmanifest,*.vssettings,*.vstemplate,*.vxml,*.wixproj,*.workflow,*.wpl,*.wsdl,*.wsf,*.wxi,*.wxl,*.wxs,*.x3d,*.xacro,*.xaml,*.xib,*.xlf,*.xliff,*.xmi,*.xml,*.xml.dist,*.xmp,*.xproj,*.xsd,*.xspec,*.xul,*.zcml,*/etc/blkid.tab,*/etc/blkid.tab.old,*/etc/xdg/menus/*.menu,*fglrxrc,{.,}classpath,{.,}cproject,{.,}project,App.config,NuGet.config,Settings.StyleCop,Web.Debug.config,Web.Release.config,Web.config,packages.config setf xml
endif
if !has_key(g:polyglot_is_disabled, 'csv')
diff --git a/autoload/polyglot/sleuth.vim b/autoload/polyglot/sleuth.vim
index 5a7dd312..afb23ae4 100644
--- a/autoload/polyglot/sleuth.vim
+++ b/autoload/polyglot/sleuth.vim
@@ -229,7 +229,7 @@ let s:globs = {
\ 'hollywood': '*.hws',
\ 'hostconf': '',
\ 'hostsaccess': '',
- \ 'html': '*.html,*.htm,*.html.hl,*.inc,*.st,*.xht,*.xhtml',
+ \ 'html': '*.html,*.htm,*.html.hl,*.inc,*.xht,*.xhtml',
\ 'html.handlebars': '*.handlebars,*.hbs,*.hdbs,*.hb',
\ 'html.mustache': '*.mustache,*.hogan,*.hulk,*.hjs',
\ 'html.twig': '*.twig',
@@ -462,7 +462,7 @@ let s:globs = {
\ 'rrst': '*.rrst,*.srst',
\ 'rst': '*.rst,*.rest,*.rest.txt,*.rst.txt',
\ 'rtf': '*.rtf',
- \ 'ruby': '*.rb,*.builder,*.eye,*.fcgi,*.gemspec,*.god,*.jbuilder,*.mspec,*.pluginspec,*.podspec,*.rabl,*.rake,*.rbi,*.rbuild,*.rbw,*.rbx,*.ru,*.ruby,*.spec,*.thor,*.watchr,*.rxml,*.rjs,*.rant,*.axlsx,*.cap,*.opal,.irbrc,.pryrc,.simplecov,Appraisals,Berksfile,Buildfile,Capfile,Dangerfile,Deliverfile,Fastfile,Gemfile,Gemfile.lock,Guardfile,Jarfile,Mavenfile,Podfile,Puppetfile,Rakefile,Snapfile,Thorfile,Vagrantfile,buildfile,[Rr]antfile,.autotest,Cheffile,KitchenSink,Routefile,.Guardfile,.Brewfile,vagrantfile,[Rr]akefile*,*_spec.rb',
+ \ 'ruby': '*.rb,*.builder,*.eye,*.fcgi,*.gemspec,*.god,*.jbuilder,*.mspec,*.pluginspec,*.podspec,*.prawn,*.rabl,*.rake,*.rbi,*.rbuild,*.rbw,*.rbx,*.ru,*.ruby,*.spec,*.thor,*.watchr,*.rxml,*.rjs,*.rant,*.axlsx,*.cap,*.opal,.irbrc,.pryrc,.simplecov,Appraisals,Berksfile,Buildfile,Capfile,Dangerfile,Deliverfile,Fastfile,Gemfile,Guardfile,Jarfile,Mavenfile,Podfile,Puppetfile,Rakefile,Snapfile,Thorfile,Vagrantfile,buildfile,[Rr]antfile,.autotest,Cheffile,KitchenSink,Routefile,.Guardfile,.Brewfile,vagrantfile,[Rr]akefile*,*_spec.rb',
\ 'rust': '*.rs,*.rs.in',
\ 'samba': 'smb.conf',
\ 'sas': '*.sas',
@@ -612,7 +612,7 @@ let s:globs = {
\ 'xhtml': '*.xhtml,*.xht',
\ 'xinetd': '',
\ 'xmath': '*.msc,*.msf',
- \ 'xml': '*.xml,*.adml,*.admx,*.ant,*.axml,*.builds,*.ccproj,*.ccxml,*.clixml,*.cproject,*.cscfg,*.csdef,*.csl,*.csproj,*.ct,*.depproj,*.dita,*.ditamap,*.ditaval,*.dll.config,*.dotsettings,*.filters,*.fsproj,*.fxml,*.glade,*.gml,*.gmx,*.grxml,*.gst,*.iml,*.ivy,*.jelly,*.jsproj,*.kml,*.launch,*.mdpolicy,*.mjml,*.mm,*.mod,*.mxml,*.natvis,*.ncl,*.ndproj,*.nproj,*.nuspec,*.odd,*.osm,*.pkgproj,*.pluginspec,*.proj,*.props,*.psc1,*.pt,*.rdf,*.res,*.resx,*.rs,*.rss,*.sch,*.scxml,*.sfproj,*.shproj,*.srdf,*.storyboard,*.sublime-snippet,*.targets,*.tml,*.ui,*.urdf,*.ux,*.vbproj,*.vcxproj,*.vsixmanifest,*.vssettings,*.vstemplate,*.vxml,*.wixproj,*.workflow,*.wsdl,*.wsf,*.wxi,*.wxl,*.wxs,*.x3d,*.xacro,*.xaml,*.xib,*.xlf,*.xliff,*.xmi,*.xml.dist,*.xproj,*.xsd,*.xspec,*.xul,*.zcml,*.cdxml,*.tpm,*.csproj.user,*.wpl,.classpath,.cproject,.project,App.config,NuGet.config,Settings.StyleCop,Web.Debug.config,Web.Release.config,Web.config,packages.config,*fglrxrc',
+ \ 'xml': '*.xml,*.adml,*.admx,*.ant,*.axml,*.builds,*.ccproj,*.ccxml,*.clixml,*.cproject,*.cscfg,*.csdef,*.csl,*.csproj,*.ct,*.depproj,*.dita,*.ditamap,*.ditaval,*.dll.config,*.dotsettings,*.filters,*.fsproj,*.fxml,*.glade,*.gml,*.gmx,*.grxml,*.gst,*.iml,*.ivy,*.jelly,*.jsproj,*.kml,*.launch,*.mdpolicy,*.mjml,*.mm,*.mod,*.mxml,*.natvis,*.ncl,*.ndproj,*.nproj,*.nuspec,*.odd,*.osm,*.pkgproj,*.pluginspec,*.proj,*.props,*.psc1,*.pt,*.rdf,*.res,*.resx,*.rs,*.rss,*.sch,*.scxml,*.sfproj,*.shproj,*.srdf,*.storyboard,*.sublime-snippet,*.targets,*.tml,*.ui,*.urdf,*.ux,*.vbproj,*.vcxproj,*.vsixmanifest,*.vssettings,*.vstemplate,*.vxml,*.wixproj,*.workflow,*.wsdl,*.wsf,*.wxi,*.wxl,*.wxs,*.x3d,*.xacro,*.xaml,*.xib,*.xlf,*.xliff,*.xmi,*.xml.dist,*.xmp,*.xproj,*.xsd,*.xspec,*.xul,*.zcml,*.cdxml,*.tpm,*.csproj.user,*.wpl,.classpath,.cproject,.project,App.config,NuGet.config,Settings.StyleCop,Web.Debug.config,Web.Release.config,Web.config,packages.config,*fglrxrc',
\ 'xml.twig': '*.xml.twig',
\ 'xmodmap': '*Xmodmap,*xmodmap*',
\ 'xpm': '*.xpm,*.pm',
diff --git a/autoload/requirements.vim b/autoload/requirements.vim
index 717b6210..3d783794 100644
--- a/autoload/requirements.vim
+++ b/autoload/requirements.vim
@@ -3,7 +3,7 @@ if polyglot#init#is_disabled(expand('<sfile>:p'), 'requirements', 'autoload/requ
endif
" the Requirements File Format syntax support for Vim
-" Version: 1.5.3
+" Version: 1.6.0
" Author: raimon <raimon49@hotmail.com>
" License: MIT LICENSE
" The MIT License (MIT)
diff --git a/autoload/zig/fmt.vim b/autoload/zig/fmt.vim
index 3474f34a..7d7872f9 100644
--- a/autoload/zig/fmt.vim
+++ b/autoload/zig/fmt.vim
@@ -12,11 +12,13 @@ function! zig#fmt#Format() abort
" Save cursor position and many other things.
let view = winsaveview()
- let current_buf = bufnr('')
+ if !executable('zig')
+ echohl Error | echomsg "no zig binary found in PATH" | echohl None
+ return
+ endif
- let bin_path = get(g:, 'zig_bin_path', 'zig')
- let stderr_file = tempname()
- let cmdline = printf('%s fmt --stdin 2> %s', bin_path, stderr_file)
+ let cmdline = 'zig fmt --stdin'
+ let current_buf = bufnr('')
" The formatted code is output on stdout, the errors go on stderr.
if exists('*systemlist')
@@ -42,7 +44,7 @@ function! zig#fmt#Format() abort
call setloclist(0, [], 'r')
lclose
elseif get(g:, 'zig_fmt_parse_errors', 1)
- let errors = s:parse_errors(expand('%'), readfile(stderr_file))
+ let errors = s:parse_errors(expand('%'), out)
call setloclist(0, [], 'r', {
\ 'title': 'Errors',
@@ -53,11 +55,9 @@ function! zig#fmt#Format() abort
" Prevent the loclist from becoming too long.
let win_height = min([max_win_height, len(errors)])
" Open the loclist, but only if there's at least one error to show.
- execute 'lwindow ' . win_height
+ execute 'silent! lwindow ' . win_height
endif
- call delete(stderr_file)
-
call winrestview(view)
if err != 0