nnoremap :Buffers nnoremap :Ag map gf :e "FZF Buffer Delete function! s:list_buffers() redir => list silent ls redir END return split(list, "\n") endfunction function! s:delete_buffers(lines) execute 'bwipeout' join(map(a:lines, {_, line -> split(line)[0]})) endfunction command! BD call fzf#run(fzf#wrap({ \ 'source': s:list_buffers(), \ 'sink*': { lines -> s:delete_buffers(lines) }, \ 'options': '--multi --reverse --bind ctrl-a:select-all+accept' \ })) "alt g to :Gfiles (if in git folder) else :Files function! GFilesFallback() let output = system('git rev-parse --show-toplevel') " Is there a faster way? let prefix = get(g:, 'fzf_command_prefix', '') if v:shell_error == 0 exec "normal :" . prefix . "GFiles\" else exec "normal :" . prefix . "Files\" endif return 0 endfunction execute "set =\eg" nnoremap :call GFilesFallback() nnoremap :vert term let g:netrw_keepdir=0 let g:netrw_banner=0 let g:netrw_liststyle=3 let python_highlight_all=1 let g:pymode_python = 'python3' let g:pymode_options_max_line_length = 120 let g:htmljinja_disable_detection = 1 let g:vimtex_view_method = 'zathura' let g:vimtex_grammar_vlty = {'lt_command': 'languagetool'} let g:vimtex_grammar_textidote = {'jar': '/usr/share/java/textidote.jar'} let g:vimtex_view_method = 'zathura' " nnoremap gd :YcmCompleter GoToDefinition " nnoremap gr :YcmCompleter GoToReferences " nnoremap K :YcmCompleter GetDoc " nnoremap \ :YcmCompleter FixIt noremap gN :Lex nnoremap :Make nnoremap :Make run "Documentation " nnoremap K :execute 'vert term' &keywordprg '' command Curl :execute 'vert term lynx -dump' escape(@+, '#') command OpenLink :silent w !urlscan " AgIn: Start ag in the specified directory " " e.g. " :AgIn .. foo function! s:ag_in(bang, ...) let start_dir=expand(a:1) if !isdirectory(start_dir) throw 'not a valid directory: ' .. start_dir endif " Press `?' to enable preview window. call fzf#vim#ag(join(a:000[1:], ' '), fzf#vim#with_preview({'dir': start_dir}, 'up:50%:hidden', '?'), a:bang) endfunction command! -bang -nargs=+ -complete=dir AgIn call s:ag_in(0, ) let g:UltiSnipsExpandTrigger="" let g:UltiSnipsListSnipets="" let g:UltiSnipsEditSplit="vertical" let g:cpp_attributes_highlight = 1 let g:ycm_always_populate_location_list = 1 let g:ycm_goto_buffer_command = "'split-or-existing-window'" let g:ycm_global_ycm_extra_conf = '~/.vim/ycm_extra_conf.py' " let g:ycm_java_binary_path = "/usr/lib/jvm/java-17-openjdk/bin/java" let g:ycm_language_server = [ \ { \ 'name': 'tex', \ 'cmdline': ['texlab'], \ 'filetypes': ['tex'], \ }, \ { \ 'name': 'vue', \ 'cmdline': [ 'vue-language-server', '--stdio' ], \ 'filetypes': ['vue'], \ }, \ { \ 'name': 'godot', \ 'filetypes': ['gdscript'], \ 'port': 6008, \ 'project_root_files': ['project.godot'] \ }, \ { \ 'name': 'arduino', \ 'filetypes': ['arduino'], \ 'cmdline': ['arduino-language-server', \ '-clangd', '/usr/bin/clangd', \ '-cli', '/usr/bin/arduino-cli', \ '-cli-config', '$HOME/.arduino15/arduino-cli.yaml', \ '-fqbn', 'arduino:avr:uno'], \ }, \ ] " let g:completor_clang_binary = "/usr/bin/clang" "fold with space nnoremap za syntax on " set foldcolumn=1 set autochdir set clipboard^=unnamed,unnamedplus set concealcursor= set conceallevel=2 set encoding=utf-8 set foldlevel=99 set foldmethod=syntax set hidden set hls set ignorecase set incsearch set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<,space:ยท set mouse=a set nocompatible set nowrap set nu set rnu set scrolloff=10 set shiftwidth=4 set shortmess=atToOs set showcmd set spelllang+=fr set splitbelow splitright set tabstop=4 if !has('nvim') set ttymouse=xterm2 endif color desert hi Normal ctermfg=None ctermbg=None hi NonText ctermfg=None ctermbg=None " packadd termdebug let g:termdebug_wide=1 filetype plugin indent on