Compare commits

...

42 Commits

Author SHA1 Message Date
a9316971f1 temp! 2022-11-08 11:21:35 +00:00
ee5110efd8 Remove minpac in preparation for using Ansible 2022-11-08 11:21:08 +00:00
330329ef2b Replace ad hoc conflict markers with plugin 2022-11-07 14:27:13 +00:00
32610db521 Make gx work in WSL 2022-11-06 11:21:32 +00:00
4c142d2fa5 Only setup cursor shape in vim, not nvim
Neovim already changes cursor shape by default, there's no need to
override it.
2022-11-06 11:12:06 +00:00
cde38c5469 Make CocInlayHint look like Comment 2022-10-31 11:48:44 +00:00
dfc26e9c40 Disable coc-powershell integrated console 2022-10-29 11:44:15 +01:00
5476d9ec86 Fix coc.nvim change of default first selection 2022-10-25 11:08:25 +01:00
78ae575efe Disable clangd inlay type hints 2022-10-13 10:45:01 +01:00
3577aa13bc Drop some coc-yaml schemas 2022-09-09 22:49:07 +01:00
2ce3d322ca Add coc-powershell on Windows only 2022-06-15 22:15:23 +01:00
27c42a6a92 Don't use GUI tabs in neovim-qt 2022-06-15 22:15:23 +01:00
61ce53bfd3 Don't conceal things in json 2022-06-08 13:56:37 +01:00
d0af1c7116 Fix Doxygen @param highlight
There are two forms of `@param`:

* `@param <name> <description>`
* `@param[<use>] <name> <description>`

Prior to this patch only the latter was highlighting `<name>` as a
special comment, now both forms do this.
2022-05-31 10:59:28 +01:00
ec2b973fc0 Update schemastore URLs 2022-05-22 15:57:11 +01:00
98b48377cd Add GitLab CI schema paths 2022-05-04 14:14:03 +01:00
eb9579e1b6 Add more ansible tasks lsp matches 2022-04-30 13:31:29 +01:00
a689039ae2 Add yaml.schemas not matches by default 2022-04-30 09:38:25 +01:00
3da17559e9 Update minpac submodule 2022-04-29 21:58:31 +01:00
68c699882d Use Source Code Pro 10 on Windows GUI 2022-04-29 21:57:05 +01:00
51c56a8633 Fix glitch in StatusLineTerm highlight group 2022-04-22 15:53:01 +01:00
14d34e0b6b Don't set formatexpr globally, only in specific filetypes 2022-04-14 10:50:52 +01:00
fd31549a32 Add coc-docker to list of global extensions 2022-02-26 17:25:09 +00:00
d66ff687d4 Install node.js dependency for coc.nvim 2022-02-19 14:39:20 +00:00
db5ebc701d Bump unmap Y version check 2022-02-18 19:51:29 +00:00
e6e3a10c87 Don't unmap Y before nvim 0.5
This version check might need some refinement, not actually sure when it
was introduced but it's deffo not in 0.4.4.
2022-02-15 10:53:58 +00:00
8277ad04ab Add <> to % matches in cpp filetype 2022-02-03 14:25:41 +00:00
caa83e88d2 Undo neovims default mapping of Y to y$ 2022-01-14 20:03:07 +00:00
177dbad101 Use ! to silence font warning on Windows
See https://github.com/equalsraf/neovim-qt/issues/732 for more context.
2021-12-22 12:05:16 +00:00
d7c1bdd27c Fix bug in #tmux#isOption()
Actually use `a:option` instead of `'set-clipboard'` string when
comparing the tmux option value. This hasn't been an issue because the
only use of the function happens to be checking the value of
`'set-clipboard'`.
2021-12-16 23:06:03 +00:00
775d07414c Use package name lists 2021-12-15 00:31:50 +00:00
49051cff43 Only install clangd-12 on Ubuntu 20.04 2021-11-19 22:34:46 +00:00
8ffdfd41cd Move main.yaml to tasks.yaml 2021-11-19 21:49:13 +00:00
aa2190daec Install clangd language server on Debian 2021-11-11 21:52:42 +00:00
b2cf9ace96 Install cmake-language-server 2021-11-11 21:35:29 +00:00
a46b128741 Start using Ansible for config management 2021-11-05 14:13:41 +00:00
c06b56115a Add minpac as a submodule 2021-07-27 23:04:35 +01:00
e1bc4428c5 Disable coc.nvim semantic highlights 2021-07-18 16:19:48 +01:00
c9711deade Only display coc#status() in regular active buffer
The statusline is only dynamically updated for the active buffer, thus
when there are multiple splits the statusline for inactive buffers may
include non-updated output of `coc#status()`. This patch adds a boolean
flag to `statusline#generic()` which enables `statusline#active()` and
`statusline#inactive()` to control when `coc#status()` is included in
the statusline.
2021-07-14 17:33:54 +01:00
0961c13316 Use compdb to post-process compile_commands.json
When selecting a `:BuildDir` for the `clangd` LSP use `compdb` to
post-process the `compile_commands.json` to also include flags for
stand alone header files.
2021-07-14 11:38:21 +01:00
eabec4e9b6 Add build#dir() popup_menu() fallback
When `popup_menu()` is not available, i.e. neovim or old version of vim,
fallback to using `inputlist()` instead.
2021-07-13 21:00:48 +01:00
7491736987 Don't set nospell in requirements.txt 2021-07-12 13:47:00 +01:00
28 changed files with 213 additions and 63 deletions

View File

@@ -1,9 +0,0 @@
---
- location: ~/.vim
- pip:
- vim-vint
- yamllint
- cmakelint
- repo:
- remote: https://github.com/k-takata/minpac.git
location: ~/.vim/pack/minpac/opt/minpac

View File

@@ -45,7 +45,7 @@ if exists('g:c_doxygen') && g:c_doxygen
" Match: @param name description. @retval name description. " Match: @param name description. @retval name description.
" ^^^^ ^^^^ " ^^^^ ^^^^
syn region cDoxygenSpecial matchgroup=cDoxygenComment start='@\(param\(\[\(\|in\|out\|in,out\)\]\)\|retval\)\=\s\+' end='\(\s\|$\)' contained display syn region cDoxygenSpecial matchgroup=cDoxygenComment start='@\(param\(\[\(\|in\|out\|in,out\)\]\)\?\|retval\)\=\s\+' end='\(\s\|$\)' contained display
" Match: @tparam name description. " Match: @tparam name description.
" ^^^^ " ^^^^

View File

@@ -1,3 +1,4 @@
hi link jsonKeyword Function hi link jsonKeyword Function
hi link jsonNull Constant hi link jsonNull Constant
hi link jsonQuote Delimiter hi link jsonQuote Delimiter
setlocal conceallevel=0

View File

@@ -10,12 +10,26 @@ function! build#dir(...) abort
let l:dir = s:dirs[0] let l:dir = s:dirs[0]
unlet s:dirs unlet s:dirs
else else
" Multiple build directories found, create popup menu to select one. " Multiple build directories found, select one.
" Set the callback to this function on completion, handled below. if exists('*popup_menu')
call popup_menu(s:dirs, #{ " Create popup menu to select the build directory. Callback to this
\ filter: 'popup_filter_menu', " function on completion, handled in the else branch below.
\ callback: 'build#dir', call popup_menu(s:dirs, #{
\ }) \ filter: 'popup_filter_menu',
\ callback: 'build#dir',
\ })
else
" Fallback to inputlist when popup_menu is not available.
let l:choices = []
let l:index = 1
for l:dir in s:dirs
call add(l:choices, string(l:index).': '.l:dir)
let l:index += 1
endfor
let l:index = inputlist(l:choices)
let l:dir = s:dirs[l:index - 1]
echomsg ' '.l:dir
endif
endif endif
else else
if a:0 == 1 if a:0 == 1
@@ -35,17 +49,30 @@ function! build#dir(...) abort
endif endif
endif endif
if exists('l:dir') if exists('l:dir')
" Set build directory and restart YouCompleteMe. " Set build directory.
let $BUILD_DIR = getcwd().'/'.substitute(l:dir, '\/$', '', '') let l:cwd = substitute(getcwd(), '\\', '\/', 'g')
let $BUILD_DIR = l:cwd.'/'.substitute(l:dir, '\/$', '', '')
if executable('compdb')
" Post-process compile_commands.json with compdb, adds header files to
" missing compile_commands.json for more accurate diagnostics.
let l:database_dir = l:cwd.'/.vim'
let l:compile_commands = l:database_dir.'/compile_commands.json'
call systemlist('compdb -p '.$BUILD_DIR.' list > '.l:compile_commands)
else
let l:database_dir = $BUILD_DIR
endif
" Read/create .vim/coc-settings.json
let l:coc_settings = {} let l:coc_settings = {}
if isdirectory('.vim') if isdirectory('.vim')
let l:coc_settings = json_decode(join(readfile('.vim/coc-settings.json'), '')) let l:coc_settings = json_decode(join(readfile('.vim/coc-settings.json'), ''))
else else
call mkdir('.vim') call mkdir('.vim')
endif endif
let l:coc_settings['clangd.compilationDatabasePath'] = $BUILD_DIR " Update .vim/coc-settings.json with new build directory.
let l:coc_settings['clangd.compilationDatabasePath'] = l:database_dir
let l:coc_settings['cmake.lsp.buildDirectory'] = $BUILD_DIR let l:coc_settings['cmake.lsp.buildDirectory'] = $BUILD_DIR
call writefile([json_encode(l:coc_settings)], '.vim/coc-settings.json') call writefile([json_encode(l:coc_settings)], '.vim/coc-settings.json')
" Finally restart coc.nvim with new config.
CocRestart CocRestart
endif endif
endfunction endfunction

View File

@@ -16,6 +16,6 @@ function! tmux#isOption(option, value) abort
if !tmux#inSession() if !tmux#inSession()
return 0 return 0
endif endif
let l:set_clipboard = trim(system('tmux show-options -g '.a:option)) let l:option = trim(system('tmux show-options -g '.a:option))
return l:set_clipboard ==# 'set-clipboard '.a:value return l:option ==# a:option.' '.a:value
endfunction endfunction

3
autoload/wsl.vim Normal file
View File

@@ -0,0 +1,3 @@
function! wsl#isDetected() abort
return $WSLENV !=# ''
endfunction

View File

@@ -1,8 +1,17 @@
{ {
"clangd.inlayHints.enable": false,
"cmake.lsp.enable": true, "cmake.lsp.enable": true,
"diagnostic.enableHighlightLineNumber": false,
"diagnostic.errorSign": "▸",
"diagnostic.hintSign": "▸", "diagnostic.hintSign": "▸",
"diagnostic.infoSign": "▸", "diagnostic.infoSign": "▸",
"diagnostic.warningSign": "▸", "diagnostic.warningSign": "▸",
"diagnostic.errorSign": "▸", "powershell.integratedConsole.showOnStartup": false,
"diagnostic.enableHighlightLineNumber": false "suggest.noselect": true,
"yaml.schemas": {
"https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json": [
".gitlab-ci.yml",
".gitlab/ci/*.yml"
]
}
} }

View File

@@ -126,7 +126,9 @@ if has('gui_running') || &t_Co == 256
call s:hi('SpellLocal', '5', '', '') call s:hi('SpellLocal', '5', '', '')
call s:hi('SpellRare', '3', '', '') call s:hi('SpellRare', '3', '', '')
call s:hi('StatusLine', '15', '233', '') call s:hi('StatusLine', '15', '233', '')
call s:hi('StatusLineTerm', '15', '233', '')
call s:hi('StatusLineNC', '', '235', '') call s:hi('StatusLineNC', '', '235', '')
call s:hi('StatusLineTermNC', '', '235', '')
call s:hi('TabLine', '246', '235', 'bold') call s:hi('TabLine', '246', '235', 'bold')
call s:hi('TabLineFill', '', '235', '') call s:hi('TabLineFill', '', '235', '')
call s:hi('TabLineSel', '248', '', 'bold') call s:hi('TabLineSel', '248', '', 'bold')
@@ -213,6 +215,7 @@ if has('gui_running') || &t_Co == 256
call s:hi('CocInfoFloat', '8', '235', '') call s:hi('CocInfoFloat', '8', '235', '')
call s:hi('CocHintSign', '33', '233', '') call s:hi('CocHintSign', '33', '233', '')
call s:hi('CocHintFloat', '33', '235', '') call s:hi('CocHintFloat', '33', '235', '')
call s:hi('CocInlayHint', '8', '', '')
call s:hi('SyntasticErrorSign', '160', '233', 'bold') call s:hi('SyntasticErrorSign', '160', '233', 'bold')
call s:hi('SyntasticWarningSign', '129', '233', 'bold') call s:hi('SyntasticWarningSign', '129', '233', 'bold')

View File

@@ -1,3 +1,3 @@
if has('pythonx') if has('pythonx')
set formatexpr=format#clang_format() setlocal formatexpr=format#clang_format()
endif endif

View File

@@ -1,3 +1,6 @@
" Add <> to % matches
setlocal matchpairs+=<:>
if has('pythonx') if has('pythonx')
set formatexpr=format#clang_format() setlocal formatexpr=format#clang_format()
endif endif

View File

@@ -1,3 +1,3 @@
if has('pythonx') if has('pythonx')
set formatexpr=format#clang_format() setlocal formatexpr=format#clang_format()
endif endif

View File

@@ -1,3 +1,3 @@
if has('pythonx') if has('pythonx')
set formatexpr=format#clang_format() setlocal formatexpr=format#clang_format()
endif endif

View File

@@ -1,3 +1,3 @@
if has('pythonx') if has('pythonx')
set formatexpr=format#clang_format() setlocal formatexpr=format#clang_format()
endif endif

View File

@@ -1,3 +1,3 @@
if has('pythonx') if has('pythonx')
set formatexpr=format#clang_format() setlocal formatexpr=format#clang_format()
endif endif

View File

@@ -1,3 +1,3 @@
if has('pythonx') if has('pythonx')
set formatexpr=format#clang_format() setlocal formatexpr=format#clang_format()
endif endif

View File

@@ -1,3 +1,3 @@
if has('pythonx') if has('pythonx')
set formatexpr=format#yapf() setlocal formatexpr=format#yapf()
endif endif

View File

@@ -1,2 +1 @@
set nospell
set commentstring=#%s set commentstring=#%s

View File

@@ -1,7 +1,12 @@
if exists(':GuiFont') if exists(':GuiFont')
if platform#is_windows() if platform#is_windows()
GuiFont Consolas:h9 GuiFont! Source\ Code\ Pro:h10
else else
GuiFont Source\ Code\ Pro:h9 GuiFont Source\ Code\ Pro:h9
endif endif
endif endif
if exists(':GuiTabline')
" Don't use GUI tabline, matches terminal tabline.
GuiTabline 0
endif

2
gvimrc
View File

@@ -6,7 +6,7 @@
set guioptions=aegi set guioptions=aegi
if platform#is_windows() if platform#is_windows()
set guifont=Consolas:h10:cDEFAULT set guifont=Source\ Code\ Pro:h10
else else
" Set default font " Set default font
set guifont=Source\ Code\ Pro\ Medium\ 9 set guifont=Source\ Code\ Pro\ Medium\ 9

28
nodejs-linux.yaml Normal file
View File

@@ -0,0 +1,28 @@
---
- name: nodejs get json containing latest version
uri:
url: https://nodejs.org/dist/index.json
register: latest
- name: nodejs create directory for downloaded package
file:
state: directory
dest: ~/.local/src
- name: nodejs download latest package
get_url:
url: 'https://nodejs.org/dist/{{latest.json[0].version}}/node-{{latest.json[0].version}}-linux-x64.tar.gz'
dest: ~/.local/src/node.tar.gz
- name: nodejs extract downloaded package
unarchive:
src: ~/.local/src/node.tar.gz
dest: ~/.local/src
remote_src: true
- name: nodejs create symlink links
file:
state: link
src: '~/.local/src/node-{{latest.json[0].version}}-linux-x64/bin/{{item}}'
dest: '~/.local/bin/{{item}}'
with_items: [corepack, node, npm, npx]

View File

@@ -12,9 +12,6 @@ augroup benieAugroup
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")
\ | exe "normal! g'\"" | endif \ | exe "normal! g'\"" | endif
" Highlight conflict markers in any filetype
au FileType * call matchadd('Todo', '^\(<<<<<<<\s.*\||||||||\|=======\|>>>>>>>\s.*\)$')
" Update `Last change: <date>` on write & go back previous cursor position " Update `Last change: <date>` on write & go back previous cursor position
au FileType help au BufWritePre <buffer> au FileType help au BufWritePre <buffer>
\ 1s/Last change: \zs.*$/\=strftime('%Y %b %d')/e|norm!`` \ 1s/Last change: \zs.*$/\=strftime('%Y %b %d')/e|norm!``

View File

@@ -1,11 +1,3 @@
" minpac
function! s:minpac_init() abort
packadd minpac | call minpac#init() | source $MYVIMRC
endfunction
command! PackUpdate call s:minpac_init() | call minpac#update('', {'do': 'call minpac#status()'})
command! PackStatus call s:minpac_init() | call minpac#status()
command! PackClean call s:minpac_init() | call minpac#clean()
" Sort Python Imports " Sort Python Imports
command! ISort call do#isort() command! ISort call do#isort()

View File

@@ -115,6 +115,10 @@ else
noremap <leader>p "+p noremap <leader>p "+p
noremap <leader>P "+P noremap <leader>P "+P
endif endif
if has('nvim-0.5.2')
" Undo neovim's default mapping of Y to y$
unmap Y
endif
" Quickly access spelling menu " Quickly access spelling menu
inoremap <C-s> <C-g>u<C-X>s inoremap <C-s> <C-g>u<C-X>s

View File

@@ -176,7 +176,7 @@ if &t_Co == 8 && $TERM !~# '^linux\|^Eterm'
endif endif
" Change cursor dependant on current mode " Change cursor dependant on current mode
if has('cursorshape') && has('unix') && !has('gui_running') if !has('nvim') && has('cursorshape') && has('unix') && !has('gui_running')
if $TMUX ==# '' && $ITERM_PROFILE !=# '' if $TMUX ==# '' && $ITERM_PROFILE !=# ''
let &t_SI = "\<Esc>]50;CursorShape=1\x7" let &t_SI = "\<Esc>]50;CursorShape=1\x7"
let &t_EI = "\<Esc>]50;CursorShape=0\x7" let &t_EI = "\<Esc>]50;CursorShape=0\x7"

View File

@@ -49,7 +49,7 @@ function! statusline#special(group, name, title)
endfunction endfunction
" Construct a statusline for generic buffer types. " Construct a statusline for generic buffer types.
function! statusline#generic(group, mode) function! statusline#generic(group, mode, coc)
" Display current mode with dynamic highlights. " Display current mode with dynamic highlights.
let l:mode = '%#'.a:group.'# '.a:mode.' ' let l:mode = '%#'.a:group.'# '.a:mode.' '
" Display spell or paste if set with dusk highlights in a group to swallow " Display spell or paste if set with dusk highlights in a group to swallow
@@ -64,7 +64,7 @@ function! statusline#generic(group, mode)
let l:state = '%#StatusLineDark#' let l:state = '%#StatusLineDark#'
\.'%{&readonly ? " 🔒" : ""}' \.'%{&readonly ? " 🔒" : ""}'
\.'%{&modifiable ? "" : " ⛔"}' \.'%{&modifiable ? "" : " ⛔"}'
if exists('*coc#status') if a:coc && exists('*coc#status')
" Display coc.nvim status. " Display coc.nvim status.
let l:coc = '%#StatusLineDuskFade#%( %{coc#status()}%)' let l:coc = '%#StatusLineDuskFade#%( %{coc#status()}%)'
else else
@@ -108,11 +108,11 @@ function! statusline#active()
if l:mode ==# 'Normal' if l:mode ==# 'Normal'
let l:mode = 'Preview' let l:mode = 'Preview'
endif endif
return statusline#generic('StatusLineLight', l:mode) return statusline#generic('StatusLineLight', l:mode, v:false)
elseif &filetype ==# 'man' elseif &filetype ==# 'man'
return statusline#special('StatusLineDusk', 'Manual', '%f') return statusline#special('StatusLineDusk', 'Manual', '%f')
endif endif
return statusline#generic('StatusLineLight', l:mode) return statusline#generic('StatusLineLight', l:mode, v:true)
endfunction endfunction
" Define inactive statusline, this remains static until the buffer gains " Define inactive statusline, this remains static until the buffer gains
@@ -130,11 +130,11 @@ function! statusline#inactive()
elseif &buftype ==# 'terminal' elseif &buftype ==# 'terminal'
let l:statusline = statusline#special('StatusLineDusk', 'Terminal', '%f') let l:statusline = statusline#special('StatusLineDusk', 'Terminal', '%f')
elseif &previewwindow elseif &previewwindow
let l:statusline = statusline#generic('StatusLineDusk', 'Preview') let l:statusline = statusline#generic('StatusLineDusk', 'Preview', v:false)
elseif &filetype ==# 'man' elseif &filetype ==# 'man'
let l:statusline = statusline#special('StatusLineDusk', 'Manual', '%f') let l:statusline = statusline#special('StatusLineDusk', 'Manual', '%f')
else else
let l:statusline = statusline#generic('StatusLineDusk', 'Idle') let l:statusline = statusline#generic('StatusLineDusk', 'Idle', v:false)
endif endif
" Escape spaces and double quotes for use in setlocal. " Escape spaces and double quotes for use in setlocal.
let l:statusline = substitute(l:statusline, '\([ "]\)', '\\\0', 'g') let l:statusline = substitute(l:statusline, '\([ "]\)', '\\\0', 'g')

17
tasks.yaml Normal file
View File

@@ -0,0 +1,17 @@
---
- include_vars: ~/.config/nvim/vars.yaml
- name: clone plugin repos
when: ansible_os_family != "Windows"
git:
repo: 'https://github.com/{{item.repo}}.git'
dest: '~/.config/nvim/pack/minpac/{{lookup("vars", "item.mode", default="start")}}/{{item.repo | regex_replace("^.*\/(.*)$", "\1")}}'
version: '{{lookup("vars", "item.branch", default="HEAD")}}'
with_items: '{{plugins}}'
- name: clone plugin repos
when: ansible_os_family == "Windows"
win_git:
repo: 'https://github.com/{{item.repo}}.git'
dest: '{{ansible_env.LOCALAPPDATA}}/nvim/pack/minpac/{{lookup("vars", "item.mode", default="start")}}/{{item.repo | regex_replace("^.*\/(.*)$", "\1")}}'
version: '{{lookup("vars", "item.branch", default="HEAD")}}'

66
vars.yaml Normal file
View File

@@ -0,0 +1,66 @@
---
plugins:
- repo: mkitt/tabline.vim
- repo: neoclide/coc.nvim
branch: release
- repo: SirVer/ultisnips
- repo: honza/vim-snippets
- repo: vim-scripts/vimomni
mode: opt
- repo: w0rp/ale
- repo: mhinz/vim-signify
# Text Objects
- repo: kana/vim-textobj-user
# TODO: Doesn't work with nvim
- repo: kana/vim-textobj-entire
- repo: sgur/vim-textobj-parameter
- repo: jceb/vim-textobj-uri
- repo: glts/vim-textobj-comment
- repo: reedes/vim-textobj-sentence
# Tim Pope
- repo: tpope/vim-commentary
- repo: tpope/vim-surround
- repo: tpope/vim-repeat
- repo: tpope/vim-fugitive
- repo: tpope/vim-eunuch
- repo: tpope/vim-vinegar
- repo: tpope/vim-abolish
- repo: tpope/vim-unimpaired
- repo: tpope/vim-speeddating
- repo: godbyk/vim-endwise
branch: patch-1
- repo: tpope/vim-jdaddy
- repo: tpope/vim-projectionist
# Still necessary?
- repo: junegunn/fzf
- repo: junegunn/fzf.vim
# Forgot about this...
- repo: kbenzie/note.vim
# TODO: Move to tmux role?
# Pack 'christoomey/vim-tmux-navigator'
# Pack 'tmux-plugins/vim-tmux-focus-events'
- repo: wincent/replay
- repo: andymass/vim-matchup
- repo: dhruvasagar/vim-table-mode
- repo: vim-scripts/DoxygenToolkit.vim
mode: opt
- repo: guns/xterm-color-table.vim
# Syntax
- repo: kalekundert/vim-coiled-snake
- repo: kbenzie/vim-spirv
- repo: rperier/vim-cmake-syntax
- repo: tikhomirov/vim-glsl
- repo: beyondmarc/hlsl.vim
- repo: frasercrmck/opencl.vim
- repo: asciidoc/vim-asciidoc
- repo: mustache/vim-mustache-handlebars
- repo: joshglendenning/vim-caddyfile
- repo: kbenzie/vim-khr
- repo: jrozner/vim-antlr

27
vimrc
View File

@@ -11,14 +11,6 @@ if has('syntax') && !exists('g:syntax_on')
syntax enable syntax enable
endif endif
if exists('*minpac#init')
" When minpac is loaded define the Pack command to add packages.
command! -nargs=+ Pack call minpac#add(<args>)
else
" Otherwise define the Pack command to do nothing.
command! -nargs=+ Pack
endif
" Append work config to runtimepath and packpath. " Append work config to runtimepath and packpath.
set runtimepath+=~/.config/work set runtimepath+=~/.config/work
set packpath+=~/.config/work set packpath+=~/.config/work
@@ -26,12 +18,13 @@ set packpath+=~/.config/work
" tabline.vim - sanely numbered tabs " tabline.vim - sanely numbered tabs
Pack 'mkitt/tabline.vim' Pack 'mkitt/tabline.vim'
" coc.nvim Conqueror of Completion " coc.nvim - Conqueror of Completion
Pack 'neoclide/coc.nvim', {'branch': 'release'} Pack 'neoclide/coc.nvim', {'branch': 'release'}
let g:coc_global_extensions = [ let g:coc_global_extensions = [
\ 'coc-clangd', \ 'coc-clangd',
\ 'coc-cmake', \ 'coc-cmake',
\ 'coc-css', \ 'coc-css',
\ 'coc-docker',
\ 'coc-html', \ 'coc-html',
\ 'coc-jedi', \ 'coc-jedi',
\ 'coc-json', \ 'coc-json',
@@ -41,6 +34,12 @@ let g:coc_global_extensions = [
\ 'coc-vimlsp', \ 'coc-vimlsp',
\ 'coc-yaml', \ 'coc-yaml',
\] \]
if has("win32")
let g:coc_global_extensions += [
\ 'coc-powershell'
\]
endif
let g:coc_default_semantic_highlight_groups = 0
" ultisnips - snippet engine " ultisnips - snippet engine
Pack 'SirVer/ultisnips' Pack 'SirVer/ultisnips'
@@ -57,9 +56,11 @@ let g:ale_linters = {'c': [], 'cpp': []}
let g:ale_cmake_cmakelint_options = let g:ale_cmake_cmakelint_options =
\ '-convention/filename,-package/consistency,-package/stdargs' \ '-convention/filename,-package/consistency,-package/stdargs'
" Version control differences in the sign column " vim-signify - Version control differences in the sign column
Pack 'mhinz/vim-signify' Pack 'mhinz/vim-signify'
let g:signify_sign_change = '~' let g:signify_sign_change = '~'
" Conflict marker utilities
Pack 'rhysd/conflict-marker.vim'
" vim-textobj-user - library for creating text objects " vim-textobj-user - library for creating text objects
Pack 'kana/vim-textobj-user' Pack 'kana/vim-textobj-user'
@@ -95,6 +96,10 @@ Pack 'tpope/vim-fugitive'
Pack 'tpope/vim-eunuch' Pack 'tpope/vim-eunuch'
" vim-vinegar - improved directory browser " vim-vinegar - improved directory browser
Pack 'tpope/vim-vinegar' Pack 'tpope/vim-vinegar'
if wsl#isDetected()
" Make gx work in WSL
let g:netrw_browsex_viewer='cmd.exe /C start'
endif
" vim-abolish - CamelCase to under_score to mixedCase " vim-abolish - CamelCase to under_score to mixedCase
" TODO: Copy the good bit remove this plugin " TODO: Copy the good bit remove this plugin
Pack 'tpope/vim-abolish' Pack 'tpope/vim-abolish'
@@ -160,7 +165,7 @@ let g:rst_syntax_code_list = {
\ 'python': ['python'] \ 'python': ['python']
\ } \ }
" Python folding " vim-coiled-snake - Python folding
Pack 'kalekundert/vim-coiled-snake' Pack 'kalekundert/vim-coiled-snake'
" Enable builtin syntax folding " Enable builtin syntax folding