diff options
| author | Adam Stankiewicz <sheerun@sher.pl> | 2020-09-22 17:16:27 +0200 | 
|---|---|---|
| committer | Adam Stankiewicz <sheerun@sher.pl> | 2020-09-22 17:16:27 +0200 | 
| commit | 6f0c50457f9d197c1a1759d4302f251cce4242d8 (patch) | |
| tree | d935fca3ffab9e0a25fe062513095f968871fc77 | |
| parent | 06548fe61765d8a68a289741ce8d30f04a037e60 (diff) | |
| download | vim-polyglot-6f0c50457f9d197c1a1759d4302f251cce4242d8.tar.gz vim-polyglot-6f0c50457f9d197c1a1759d4302f251cce4242d8.zip | |
Build
| -rw-r--r-- | autoload/go/config.vim | 4 | ||||
| -rw-r--r-- | autoload/rustfmt.vim | 4 | ||||
| -rw-r--r-- | autoload/terraform.vim | 1 | ||||
| -rw-r--r-- | doc/vim-go.txt | 99 | ||||
| -rw-r--r-- | ftplugin/zig.vim | 21 | ||||
| -rw-r--r-- | syntax/odin.vim | 8 | 
6 files changed, 91 insertions, 46 deletions
| diff --git a/autoload/go/config.vim b/autoload/go/config.vim index 55bc1902..355f90fb 100644 --- a/autoload/go/config.vim +++ b/autoload/go/config.vim @@ -572,6 +572,10 @@ function! go#config#GoplsOptions() abort    return get(g:, 'go_gopls_options', ['-remote=auto'])  endfunction +function! go#config#FillStructMode() abort +  return get(g:, 'go_fillstruct_mode', 'fillstruct') +endfunction +  " Set the default value. A value of "1" is a shortcut for this, for  " compatibility reasons.  if exists("g:go_gorename_prefill") && g:go_gorename_prefill == 1 diff --git a/autoload/rustfmt.vim b/autoload/rustfmt.vim index 60e2029e..28cca07a 100644 --- a/autoload/rustfmt.vim +++ b/autoload/rustfmt.vim @@ -109,7 +109,7 @@ function! s:DeleteLines(start, end) abort  endfunction  function! s:RunRustfmt(command, tmpname, from_writepre) -    mkview! +    let l:view = winsaveview()      let l:stderr_tmpname = tempname()      call writefile([], l:stderr_tmpname) @@ -215,7 +215,7 @@ function! s:RunRustfmt(command, tmpname, from_writepre)          lwindow      endif -    silent! loadview +    call winrestview(l:view)  endfunction  function! rustfmt#FormatRange(line1, line2) diff --git a/autoload/terraform.vim b/autoload/terraform.vim index 05a88e30..1f987669 100644 --- a/autoload/terraform.vim +++ b/autoload/terraform.vim @@ -68,6 +68,7 @@ function! terraform#commands(ArgLead, CmdLine, CursorPos) abort      \ 'version',      \ 'workspace',      \ '0.12upgrade', +    \ '0.13upgrade',      \ 'debug',      \ 'force-unlock',      \ 'push', diff --git a/doc/vim-go.txt b/doc/vim-go.txt index b92ab5b9..7d4ac52d 100644 --- a/doc/vim-go.txt +++ b/doc/vim-go.txt @@ -426,10 +426,6 @@ CTRL-t      If [!] is not given the first error is jumped to. -    If using neovim `:GoTestFunc` will run in a new terminal or run -    asynchronously in the background according to |'g:go_term_enabled'|. You -    can set the mode of the new terminal with |'g:go_term_mode'|. -                                                                *:GoTestCompile*  :GoTestCompile[!] [expand] @@ -441,10 +437,6 @@ CTRL-t      If [!] is not given the first error is jumped to. -    If using neovim `:GoTestCompile` will run in a new terminal or run -    asynchronously in the background according to |'g:go_term_enabled'|. You -    can set the mode of the new terminal with |'g:go_term_mode'|. -                                                                   *:GoCoverage*  :GoCoverage[!] [options] @@ -1484,6 +1476,14 @@ and `guru`.  >    let g:go_def_mode = 'gopls'  < +                                                      *'g:go_fillstruct_mode'* + +Use this option to define the command to be used for |:GoFillStruct|. By +default `fillstruct` is used. Valid values are `fillstruct` and `gopls`. By +default it is `fillstruct`. +> +  let g:go_fillstruct_mode = 'fillstruct' +<                                                         *'g:go_referrers_mode'*  Use this option to define the command to be used for |:GoReferrers|. By @@ -1789,25 +1789,34 @@ same.                                                          *'g:go_gopls_enabled'* -Specifies whether `gopls` can be used by vim-go. By default gopls is enabled. -When gopls is disabled completion will not work and other configuration +Specifies whether `gopls` can be used by vim-go. + +Completion will not work when gopls is disabled and other configuration  options may also need to be adjusted. +By default gopls is enabled. +  >    let g:go_gopls_enabled = 1  <                                                          *'g:go_gopls_options'* -The commandline arguments to pass to gopls. By default, it's `-remote=auto`. +The commandline arguments to pass to gopls. + +By default, it is `['-remote=auto']`.  > -  let g:go_gopls_options = [] +  let g:go_gopls_options = ['-remote=auto']  <                                                         *'g:go_gopls_analyses'* -The analyses settings for `gopls`. By default, it's `v:null`. Valid map values -are `v:true` and `v:false`. +The analyses settings for `gopls`. + +The Expected value is either `v:null` or a dictionary. The dictionary will be +provided to `gopls` via json-rpc, so dictionary values need to be of the +appropriate type for Vim to convert to JSON (e.g. truthy dictionary values +should be `v:true` or `v:false`). By default, it is `v:null`.  >    let g:go_gopls_analyses = v:null  < @@ -1815,34 +1824,36 @@ are `v:true` and `v:false`.                                              *'g:go_gopls_complete_unimported'*  Specifies whether `gopls` should include suggestions from unimported packages. -When it is `v:null`, `gopls`' default will be used. By default it is -`v:null`. + +When it is `v:null`, `gopls`' default will be used. By default it is `v:null`.  >    let g:go_gopls_complete_unimported = v:null  <                                                  *'g:go_gopls_deep_completion'* -Specifies whether `gopls` should use deep completion. When it is `v:null`, -`gopls`' default will be used. By default it is `v:null`. +Specifies whether `gopls` should use deep completion. +When it is `v:null`, `gopls`' default will be used. By default it is `v:null`.  >    let g:go_gopls_deep_completion = v:null  <                                                         *'g:go_gopls_matcher'* -Specifies how `gopls` should match for completions. Valid values are `v:null`, -`fuzzy`, and `caseSensitive`.  When it is `v:null`, `gopls`' default will be -used. By default it is `v:null`. +Specifies how `gopls` should match for completions. + +Valid values are `v:null`, `fuzzy`, and `caseSensitive`. When it is `v:null`, +`gopls`' default will be used. By default it is `v:null`.  >    let g:go_gopls_matcher = v:null  <                                                     *'g:go_gopls_staticcheck'* -Specifies whether `gopls` should run staticcheck checks. When it is `v:null`, -`gopls`' default will be used. By default it is `v:null`. +Specifies whether `gopls` should run staticcheck checks. + +When it is `v:null`, `gopls`' default will be used. By default it is `v:null`.  >    let g:go_gopls_staticcheck = v:null  < @@ -1852,8 +1863,9 @@ Specifies whether `gopls` should run staticcheck checks. When it is `v:null`,  Specifies whether `gopls` can provide placeholders for function parameters and  struct fields. When set, completion items will be treated as anonymous  snippets if UltiSnips is installed and configured to be used as -|'g:go_snippet_engine'|. When it is `v:null`, `gopls`' default will be used. -By default it is `v:null`. +|'g:go_snippet_engine'|. + +When it is `v:null`, `gopls`' default will be used. By default it is `v:null`.  >    let g:go_gopls_use_placeholders = v:null  < @@ -1861,8 +1873,9 @@ By default it is `v:null`.                                                     *'g:go_gopls_temp_modfile'*  Specifies whether `gopls` should use a temp modfile and suggest edits rather -than modifying the ambient go.mod file.  When it is `v:null`, `gopls`' default -will be used.  By default it is `v:null`. +than modifying the ambient go.mod file. + +When it is `v:null`, `gopls`' default will be used. By default it is `v:null`.  >    let g:go_gopls_temp_modfile = v:null  < @@ -1870,16 +1883,18 @@ will be used.  By default it is `v:null`.                                                           *'g:go_gopls_local'*  Specifies the prefix for imports that `gopls` should consider group -separately. When it is `v:null`, `gopls`' default will be used.  By default it -is `v:null`. +separately. + +When it is `v:null`, `gopls`' default will be used. By default it is `v:null`.  >    let g:go_gopls_local = v:null  <                                                         *'g:go_gopls_gofumpt'* -Specifies whether `gopls` should use `gofumpt` for formatting. When it is -`v:null`, `gopls`' default will be used.  By default it is `v:null`. +Specifies whether `gopls` should use `gofumpt` for formatting. + +When it is `v:null`, `gopls`' default will be used. By default it is `v:null`.  >    let g:go_gopls_gofumpt = v:null  < @@ -1887,10 +1902,12 @@ Specifies whether `gopls` should use `gofumpt` for formatting. When it is                                                        *'g:go_gopls_settings'*  Specifies `gopls` workspace settings for `gopls` that are not yet officially -supported by vim-go. Any value in the dictionary will be overridden by values -provided in the specific options supported by vim-go (e.g. -g:go_gopls_staticcheck) or settings statically configured by vim-go to ensure -expected behavior. By default it is `v:null`. +supported by vim-go. + +Any value in the dictionary will be overridden by values provided in the +specific options supported by vim-go (e.g.  g:go_gopls_staticcheck) or +settings statically configured by vim-go to ensure expected behavior. By +default it is `v:null`.  >    let g:go_gopls_settings = v:null  < @@ -1898,7 +1915,9 @@ expected behavior. By default it is `v:null`.  Specifies whether `gopls` diagnostics are enabled. Only the diagnostics for  the current buffer will be processed when it is not set; all others will be -ignored. By default it is disabled. +ignored. + +By default it is disabled.  >    let g:go_diagnostics_enabled = 0  < @@ -2323,6 +2342,14 @@ The rest of the commands and mappings become available after executing      Use `-test.flag` to pass flags to `go test` when debugging a test; for      example `-test.v` or `-test.run TestFoo` +                                                            *:GoDebugTestFunc* +:GoDebugTestFunc [expand] + +    Behaves the same as |:GoDebugTest| and implicitly adds `-test.run` to run +    the nearest test or example function (i.e the nearest function declaration +    that matches `func Test` or `func Example`) at or previous to the cursor. +    Search will not wrap around when at the top of the file. +                                                               *:GoDebugRestart*  :GoDebugRestart diff --git a/ftplugin/zig.vim b/ftplugin/zig.vim index 675a3bcf..dc9af384 100644 --- a/ftplugin/zig.vim +++ b/ftplugin/zig.vim @@ -21,24 +21,31 @@ setlocal formatoptions-=t formatoptions+=croql  setlocal suffixesadd=.zig,.zir  setlocal makeprg=zig\ build -if has("comments") +if has('comments')      setlocal comments=:///,://!,://,:\\\\      setlocal commentstring=//\ %s  endif  if has('find_in_path') -	let &l:includeexpr='substitute(v:fname, "^([^.])$", "\1.zig", "")' -	let &l:include='\v(\@import>|\@cInclude>|^\s*\#\s*include)' -	let &l:define='\v(<fn>|<const>|<var>|^\s*\#\s*define)' +    let &l:includeexpr='substitute(v:fname, "^([^.])$", "\1.zig", "")' +    let &l:include='\v(\@import>|\@cInclude>|^\s*\#\s*include)'  endif -if has('eval') -	execute 'setlocal path+=' . json_decode(system('zig env'))['std_dir'] +let &l:define='\v(<fn>|<const>|<var>|^\s*\#\s*define)' + +if exists("*json_decode") && executable('zig') +    silent let s:env = system('zig env') +    if v:shell_error == 0 +        let &l:path=json_decode(s:env)['std_dir'] . ',' . &l:path +    endif +    unlet! s:env  endif -let b:undo_ftplugin = "setl et< ts< sts< sw< fo< sua< mp< com< cms<" +let b:undo_ftplugin = +    \ 'setl et< ts< sts< sw< fo< sua< mp< com< cms< inex< inc< pa<'  let &cpo = s:cpo_orig  unlet s:cpo_orig +" vim: tabstop=8 shiftwidth=4 softtabstop=4 expandtab  endif diff --git a/syntax/odin.vim b/syntax/odin.vim index c9bae639..553f4612 100644 --- a/syntax/odin.vim +++ b/syntax/odin.vim @@ -30,6 +30,9 @@ syntax keyword odinTypeIdOf typeid_of  syntax keyword odinTypeOf type_of  syntax keyword odinAlignOf align_of +syntax keyword odinInline inline +syntax keyword odinNoInline no_inline +  syntax match odinTodo "TODO"  syntax match odinNote "NOTE"  syntax match odinXXX "XXX" @@ -37,7 +40,7 @@ syntax match odinFixMe "FIXME"  syntax match odinNoCheckin "NOCHECKIN"  syntax match odinHack "HACK" -syntax keyword odinDataType string cstring bool b8 b16 b32 b64 rune any rawptr f32 f64 f32le f32be f64le f64be u8 u16 u32 u64 u128 u16le u32le u64le u128le u16be u32be u64be u128be uint i8 i16 i32 i64 i128 i16le i32le i64le i128le i16be i32be i64be i128be int +syntax keyword odinDataType string cstring bool b8 b16 b32 b64 rune any rawptr f32 f64 f32le f32be f64le f64be u8 u16 u32 u64 u128 u16le u32le u64le u128le u16be u32be u64be u128be uint uintptr i8 i16 i32 i64 i128 i16le i32le i64le i128le i16be i32be i64be i128be int  syntax keyword odinBool true false  syntax keyword odinNull nil  syntax keyword odinDynamic dynamic @@ -105,6 +108,9 @@ highlight link odinTypeIdOf Keyword  highlight link odinAlignOf Keyword  highlight link odinPackage Keyword +highlight link odinInline Keyword +highlight link odinNoInline Keyword +  highlight link odinImport Keyword  highlight link odinExport Keyword  highlight link odinForeign Keyword | 
