set encoding=utf-8 scriptencoding 'utf-8' " Set leader to space let g:mapleader = ' ' if has('autocmd') filetype plugin indent on endif if has('syntax') && !exists('g:syntax_on') syntax enable endif " Append work config to runtimepath and packpath. set runtimepath+=~/.config/work set packpath+=~/.config/work " Markdown fenced code block languages let g:markdown_fenced_languages = \ ['cpp', 'c', 'cmake', 'console', 'sh', 'vim', 'python', 'yaml'] " reStructedText enable code styles let g:rst_style = 1 " reStructuredText code block languages let g:rst_syntax_code_list = { \ 'vim': ['vim'], \ 'java': ['java'], \ 'c': ['c'], \ 'cpp': ['cpp', 'c++'], \ 'console': ['console'], \ 'python': ['python'] \ } " Enable builtin syntax folding let g:xml_syntax_folding = 1 let g:sh_fold_enabled = 1 if wsl#isDetected() " Make gx work in WSL let g:netrw_browsex_viewer='cmd.exe /C start' endif if tmux#inSession() " Seemless vim/tmux pane navigation packadd vim-tmux-navigator let g:tmux_navigator_no_mappings = 1 " Enable focus events when in tmux session packadd vim-tmux-focus-events endif " coc.nvim let g:coc_global_extensions = [ \ 'coc-clangd', \ 'coc-cmake', \ 'coc-css', \ 'coc-docker', \ 'coc-html', \ 'coc-jedi', \ 'coc-json', \ 'coc-marketplace', \ 'coc-pyright', \ 'coc-ultisnips', \ 'coc-vimlsp', \ 'coc-yaml', \] if has("win32") let g:coc_global_extensions += [ \ 'coc-powershell' \] endif let g:coc_default_semantic_highlight_groups = 0 " ale let g:ale_sign_error = '▸' let g:ale_sign_warning = '▸' let g:ale_echo_msg_format = '[%linter%] %s (%code%)' let g:ale_linters = {'c': [], 'cpp': []} let g:ale_cmake_cmakelint_options = \ '-convention/filename,-package/consistency,-package/stdargs' " vim-signify let g:signify_sign_change = '~' " vim-textobj-entire let g:textobj_entire_no_default_key_mappings = 1 xmap a% (textobj-entire-a) omap a% (textobj-entire-a) xmap i% (textobj-entire-i) omap i% (textobj-entire-i) " vim-textobj-comment omap a/ (textobj-comment-a) xmap a/ (textobj-comment-a) omap i/ (textobj-comment-i) xmap i/ (textobj-comment-i) " fzf.vim let g:fzf_action = { \ 'ctrl-t': 'tab split', \ 'ctrl-s': 'split', \ 'ctrl-v': 'vsplit' \ } " note.vim let g:note_directory = '~/Sync/Notes' " vim-matchit let g:matchup_matchparen_offscreen = {'method': 'status_manual'} " vim-table-mode let g:table_mode_map_prefix = 't' let g:table_mode_toggle_map = 'M' " DoxygenToolkit.vim let g:DoxygenToolkit_commentType = 'C++' " vim-spirv let g:spirv_current_id_highlight = 'ctermbg=234, guibg=#1c1c1c'