dotfiles/nvim/.config/nvim/plugin_settings.vim
Sanchayan Maity 491ffb9bee nvim: Drop vim-polyglot & miscellaneous clean up
Drop polyglot and add the necessary language support manually. While at
it disable some internal plugins and drop vim-qlist. qlist is only useful
if path is set correctly and it can search for files as indicated by the
path. Since we do not do this, it does not add any value.

Add vim-tmux-focus-events back again. As per this thread
https://github.com/tmux-plugins/vim-tmux-focus-events/issues/1

neovim shouldn't require this plugin however the observation seems that
it's required.

Gitgutter quickfix entries should be loaded in quickfix and not location
list.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-19 14:21:29 +05:30

120 lines
3.8 KiB
VimL

" Let vim-gitgutter do its thing on large files
let g:gitgutter_max_signs=1000
let g:gitgutter_map_keys = 0
let g:gitgutter_highlight_linenrs = 1
let g:gitgutter_preview_win_floating = 1
let g:gitgutter_use_location_list = 0
let g:gitgutter_sign_added = '+a'
let g:gitgutter_sign_modified = '+m'
let g:gitgutter_sign_removed = '-r'
let g:gitgutter_sign_removed_first_line = '^^'
let g:gitgutter_sign_modified_removed = 'mr'
" Neomake
" When compilation is done, open the Location list or quickfix list
" Value of 2 preserves cursor position
let g:neomake_open_list = 2
let g:neomake_warning_sign = {'text': '?'}
let g:neomake_c_enabled_makers = ['gcc']
let g:neomake_c_gcc_maker = {
\ 'exe': 'gcc',
\ 'args': ['-Wall', '-Iinclude', '-Wextra', '-Weverything', '-pedantic', '-Wno-sign-conversion'],
\ }
" Automatically detect style file and apply style to formatting
let g:clang_format#detect_style_file = 1
" Fix tab behaviour while switching through completion options
let g:SuperTabDefaultCompletionType = "<c-n>"
" For workspace
let g:workspace_session_directory = $HOME . '/.vim/session/'
let g:workspace_undodir = $HOME . '/.vim/undodir'
let g:workspace_autosave = 0
let g:workspace_autosave_ignore = ['gitcommit', 'qf', 'tagbar']
let g:workspace_session_disable_on_args = 1
" Toggle quickfix/location list
let g:toggle_list_no_mappings = 1
let g:nvimgdb_config_override = {
\ 'key_next': 'n',
\ 'key_step': 's',
\ 'key_finish': 'f',
\ 'key_continue': 'c',
\ 'key_until': 'u',
\ 'key_breakpoint': 'b',
\ 'set_tkeymaps': "NvimGdbNoTKeymaps",
\ }
let g:mapleader = "\<Space>"
let g:maplocalleader = ','
let g:which_key_use_floating_win = 1
" Rainbow Parentheses
let g:rainbow_active = 1
" FZF
let $FZF_DEFAULT_OPTS='--layout=reverse'
let g:fzf_layout = { 'window': { 'width': 0.8, 'height': 0.8 } }
" Floaterm
let g:floaterm_open_in_root = 0
let g:floaterm_position = 'center'
let g:floaterm_width = 0.8
let g:floaterm_height = 0.8
let g:floaterm_winblend = 0
let g:floaterm_borderchars = ['─', '│', '─', '│', '╭', '╮', '╯', '╰']
" Vim grepper
let g:grepper = {}
let g:grepper.tools = ['rg']
let g:grepper.quickfix = 1
let g:grepper.buffer = 0
let g:grepper.buffers = 0
let g:grepper.switch = 0
let g:grepper.append = 0
let g:grepper.prompt = 0
" Incremental search
let g:incsearch#auto_nohlsearch = 1
" Buftabline
let g:buftabline_plug_max = 0
let g:buftabline_numbers = 1
let g:buftabline_indicators = 1
" Markdown
let g:vim_markdown_conceal = 0
" Python
let g:python_highlight_all = 1
" C/CPP
let g:cpp_class_scope_highlight = 1
let g:cpp_member_variable_highlight = 1
let g:cpp_class_decl_highlight = 1
let g:cpp_posix_standard = 1
let g:cpp_experimental_template_highlight = 1
let g:cpp_concepts_highlight = 1
" Deoplete
let g:deoplete#enable_at_startup = 0
let g:deoplete#sources#rust#disable_keymap = 1
let g:deoplete#sources#rust#racer_binary=expand('$HOME/.cargo/bin/racer')
let g:deoplete#sources#rust#rust_source_path=expand('$HOME/GitSources/rust/src')
let g:deoplete#sources = {}
call deoplete#custom#source('_', 'disabled_syntaxes', ['Comment', 'String'])
call deoplete#custom#option('sources', {
\ '_' : ['buffer', 'omni', 'around', 'file', 'member'],
\ 'haskell': ['tag', 'buffer', 'omni'],
\ 'c': ['tag', 'buffer'],
\ 'purescript': ['buffer', 'omni'],
\ 'rust': ['racer', 'buffer'],
\})
call deoplete#custom#source('omni', 'functions', {
\ 'purescript': 'PSCIDEComplete',
\})
call deoplete#custom#var('omni', 'input_patterns', {
\ 'purescript': '\w*',
\})
call deoplete#custom#option({
\ 'auto_complete_delay': 200,
\ 'auto_complete': v:true,
\ 'smart_case': v:true,
\ })