First Commit
This is a first dotfiles config. I think I have a lot more to add tho...
This commit is contained in:
		
							
								
								
									
										194
									
								
								vim/.vimrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										194
									
								
								vim/.vimrc
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,194 @@ | ||||
| autocmd Filetype python noremap <F11> <ESC>:vert term python -i %<CR> | ||||
| autocmd Filetype python noremap <F12> <ESC>:vert term python %<CR>  | ||||
|  | ||||
| autocmd Filetype tex noremap <silent> <F12> <ESC>:silent !pdflatex % && mupdf %:r.pdf&<CR> | ||||
|  | ||||
| autocmd FileType asm noremap <F12> <ESC>:execute 'silent !qtspim' expand('%::p')<CR> | ||||
|  | ||||
| " autocmd FileType python set sw=4 | ||||
| " autocmd FileType python set ts=4 | ||||
| " autocmd FileType python set sts=4 | ||||
|  | ||||
| " let g:AutoPairsMapCR = 0 "Workaround for 27_AutoPairsReturn | ||||
| " imap <silent><CR> <CR><Plug>AutoPairsReturn | ||||
|  | ||||
| nnoremap <C-p> :GFiles<CR> | ||||
| nnoremap <C-g> :Ag<CR> | ||||
|  | ||||
| nnoremap <leader><CR> :vert term<CR> | ||||
|  | ||||
| let python_highlight_all=1 | ||||
| let g:pymode_python = 'python3' | ||||
| let g:pymode_options_max_line_length = 120 | ||||
| " let g:ctrlp_cmd = 'CtrlPTag' | ||||
| let g:htmljinja_disable_detection = 1 | ||||
| let g:vimtex_grammar_vlty = {'lt_command': 'languagetool'} | ||||
| let g:vimtex_grammar_textidote = {'jar': '/usr/share/java/textidote.jar'} | ||||
|  | ||||
| let g:vimtex_view_method = 'mupdf' | ||||
|  | ||||
| " nnoremap <c-p> <plug>(YCMFindSymbolInDirectory) | ||||
| " nnoremap <c-P> <plug>(YCMFindSymbolInWorkspace) | ||||
|  | ||||
| function ManPage(expr) | ||||
| 	execute 'silent vert term' &keywordprg a:expr | ||||
| endfunction | ||||
|  | ||||
| nnoremap gd :YcmCompleter GoToDefinition<CR> | ||||
| nnoremap gr :YcmCompleter GoToReferences<CR> | ||||
| nnoremap K :YcmCompleter GetDoc<CR> | ||||
| nnoremap <F12> :Make<CR> | ||||
| nnoremap <leader><F12> :Make run<CR> | ||||
|  | ||||
| "Documentation | ||||
| " nnoremap K :execute 'Man' expand('<cexpr>')<cr> | ||||
| command Curl :execute 'vert term lynx -dump' escape(@+, '#') | ||||
| command OpenLink :silent w !urlscan | ||||
| command -nargs=? Man call fzf#run(fzf#wrap({'source': 'whatis ' .  shellescape(<q-args>) . '| sed -r "s/(^\w*)\s\((.*)\).*/\2 \1/"', 'sink': function('ManPage') , 'options': ['--preview', 'MANPAGER=cat MANWIDTH='.  (&columns/2-4) .' man {1} {2}']})) | ||||
|  | ||||
| " 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(<bang>0, <f-args>) | ||||
|  | ||||
| let g:UltiSnipsExpandTrigger="<c-l>" | ||||
| let g:UltiSnipsListSnipets="<c-h>" | ||||
| 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_java_binary_path = "/usr/lib/jvm/java-17-openjdk/bin/java" | ||||
|  | ||||
| " let g:completor_clang_binary = "/usr/bin/clang" | ||||
| "fold with space | ||||
| nnoremap <space> za | ||||
| syntax on | ||||
|  | ||||
| set nu | ||||
| set rnu | ||||
| set hls | ||||
| set tabstop=4 | ||||
| set shiftwidth=4 | ||||
| set encoding=utf-8 | ||||
| set nocompatible | ||||
| set ignorecase | ||||
| set nowrap | ||||
| set splitbelow splitright | ||||
| set spelllang+=fr | ||||
| set foldmethod=syntax | ||||
| set foldlevel=99 | ||||
| set incsearch | ||||
| set autochdir | ||||
| " set foldcolumn=1 | ||||
| set clipboard^=unnamed,unnamedplus | ||||
| set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<,space:· | ||||
| set concealcursor= | ||||
| set conceallevel=2 | ||||
| set mouse=a | ||||
|  | ||||
| color desert  | ||||
| hi Normal ctermfg=None ctermbg=None | ||||
| hi NonText ctermfg=None ctermbg=None | ||||
|  | ||||
| packadd termdebug | ||||
|  | ||||
| filetype off | ||||
| set rtp+=$HOME/.vim/bundle/vundle.vim/ | ||||
| call vundle#begin() | ||||
|  | ||||
| "Mandatory | ||||
| Plugin 'vundleVim/Vundle.vim'		"plugin Manager | ||||
|  | ||||
| "Quality of life (any)  | ||||
| Plugin 'itchyny/lightline.vim'		"status bar | ||||
| Plugin 'kien/rainbow_parentheses.vim'	"Better Raimbow Parentheses | ||||
| Plugin 'mhinz/vim-startify'		"start screen  | ||||
| Plugin 'lilydjwg/colorizer'		"color hexcode | ||||
| Plugin 'jiangmiao/auto-pairs'		"auto Pair Brackets | ||||
| " Plugin 'Yggdroot/indentLine'		"show indent - bugging conceal | ||||
| Plugin 'szw/vim-maximizer' | ||||
| " Plugin 'preservim/nerdtree'		"Directory Visulaliser :Nerdtree | ||||
| Plugin 'junegunn/fzf', {'do': { -> fzf#install() }} | ||||
| Plugin 'junegunn/fzf.vim' | ||||
| Plugin 'junegunn/vim-peekaboo'		"see content of register before past for @ C-R and \" | ||||
|  | ||||
| "useful in multiple languages | ||||
| Plugin 'SirVer/ultisnips'		"fast write | ||||
| Plugin 'honza/vim-snippets'		"lib of snips | ||||
| Plugin 'majutsushi/tagbar'		"display tagBar with :TagbarToggle | ||||
| " Plugin 'maralla/completor.vim'		"completion menu | ||||
| " Plugin 'tokorom/completor-shell'	"Add on of completor.vim for shell scripting | ||||
| Plugin 'tpope/vim-commentary'		"comment with <gcc> | ||||
| " Plugin 'dense-analysis/ale'		"Async error checker (test usefulness) | ||||
| Plugin 'puremourning/vimspector'	"Debugger | ||||
|  | ||||
| Plugin 'ycm-core/YouCompleteMe'		"completion tool | ||||
|  | ||||
| "git | ||||
| Plugin 'mhinz/vim-signify'		"git diff show | ||||
| Plugin 'tpope/vim-fugitive'		"for the :Git <command> | ||||
|  | ||||
| "php | ||||
| " Plugin 'StanAngeloff/php.vim'		"php syntax | ||||
| " Plugin 'phpactor/phpactor'		"php auto-completion | ||||
|  | ||||
| "python | ||||
| " Plugin 'python-mode/python-mode'	"A python IDE | ||||
| Plugin 'mitsuhiko/vim-jinja' | ||||
|  | ||||
| "html/css | ||||
| Plugin 'mattn/emmet-vim'		"Fast http | ||||
| Plugin 'vim-scripts/loremipsum'		"ipsum generator :Loremipsum <word> | ||||
| Plugin 'tpope/vim-surround'		"Surround html tags | ||||
| Plugin 'sukima/xmledit'		"Edit XML and HTML | ||||
|  | ||||
| "lua | ||||
| " Plugin 'wsdjeg/vim-lua'			"lua syntax | ||||
|  | ||||
| "markdown | ||||
| Plugin 'iamcco/markdown-preview.nvim', { 'do': { -> mkdp#util#install() }, 'for': ['markdown', 'vundle'] } | ||||
|  | ||||
| "c & cpp | ||||
| Plugin 'bfrg/vim-cpp-modern'		"Extended vim syntax highlight c++ | ||||
| Plugin 'a.vim'				"go from hpp to cpp with :A | ||||
| " Plugin 'xavierd/clang_complete'		"CLang Complete (don't work with ycm) | ||||
| " Plugin 'ctrlpvim/ctrlp.vim'		"ctrl p support | ||||
| Plugin 'cdelledonne/vim-cmake' | ||||
|  | ||||
| "glsl (shader) | ||||
| Plugin 'tikhomirov/vim-glsl' | ||||
|  | ||||
| "c sharp | ||||
| " Plugin 'OmniSharp/omnisharp-vim' | ||||
|  | ||||
| "java | ||||
|  | ||||
| Plugin 'hdiniz/vim-gradle' | ||||
|  | ||||
| "latex | ||||
|  | ||||
| Plugin 'lervag/vimtex' | ||||
|  | ||||
| "uml | ||||
| Plugin 'weirongxu/plantuml-previewer.vim' | ||||
| Plugin 'tyru/open-browser.vim' | ||||
| Plugin 'aklt/plantuml-syntax' | ||||
|  | ||||
| call vundle#end() | ||||
|  | ||||
| filetype plugin indent on | ||||
| set omnifunc=syntaxcomplete#Complete | ||||
		Reference in New Issue
	
	Block a user