191 lines
		
	
	
	
		
			4.2 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			191 lines
		
	
	
	
		
			4.2 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
set runtimepath+=~/.config/vim,~/.config/vim/after
 | 
						|
set packpath+=~/.config/vim
 | 
						|
 | 
						|
" Plug plugins using VimPlug
 | 
						|
call plug#begin('~/.config/vim/plugged')
 | 
						|
    " Tools
 | 
						|
    Plug 'editorconfig/editorconfig-vim'
 | 
						|
    Plug 'airblade/vim-gitgutter'
 | 
						|
    Plug 'samoshkin/vim-mergetool'
 | 
						|
    Plug 'fidian/hexmode'
 | 
						|
    Plug 'scrooloose/nerdtree'
 | 
						|
    Plug 'vim-scripts/DoxygenToolkit.vim'
 | 
						|
    Plug 'drmikehenry/vim-headerguard'
 | 
						|
    "Emmet is a plugin which greatly improves HTML & CSS workflow
 | 
						|
    Plug 'mattn/emmet-vim'
 | 
						|
    Plug 'easymotion/vim-easymotion'
 | 
						|
 | 
						|
    " Eye-Candy
 | 
						|
    Plug 'machakann/vim-highlightedyank'
 | 
						|
    Plug 'itchyny/lightline.vim'
 | 
						|
    "Plug 'nanotech/jellybeans.vim'
 | 
						|
    Plug 'dracula/vim', { 'as': 'dracula' }
 | 
						|
    Plug 'scrooloose/syntastic'
 | 
						|
    Plug 'Yggdroot/indentLine'
 | 
						|
 | 
						|
    " Commands
 | 
						|
    Plug 'machakann/vim-swap'
 | 
						|
    Plug 'matze/vim-move'
 | 
						|
 | 
						|
    " Syntax highlighting
 | 
						|
    Plug 'baskerville/vim-sxhkdrc'
 | 
						|
    Plug 'sirtaj/vim-openscad'
 | 
						|
    Plug 'lervag/vimtex'
 | 
						|
    Plug 'sheerun/vim-polyglot'
 | 
						|
call plug#end()
 | 
						|
 | 
						|
 | 
						|
"let g:indentLine_setColors = 0
 | 
						|
 | 
						|
packadd termdebug
 | 
						|
 | 
						|
set number relativenumber
 | 
						|
set splitbelow splitright
 | 
						|
 | 
						|
let mapleader = " "
 | 
						|
 | 
						|
augroup numbertoggle
 | 
						|
  autocmd!
 | 
						|
  autocmd WinEnter * set relativenumber
 | 
						|
  autocmd WinLeave * set norelativenumber
 | 
						|
augroup END
 | 
						|
 | 
						|
syntax on
 | 
						|
 | 
						|
set tabstop=4
 | 
						|
set shiftwidth=4
 | 
						|
set expandtab
 | 
						|
 | 
						|
set modeline
 | 
						|
set laststatus=2
 | 
						|
 | 
						|
set encoding=utf-8
 | 
						|
 | 
						|
set mouse=a
 | 
						|
 | 
						|
set incsearch
 | 
						|
set hlsearch
 | 
						|
 | 
						|
set nowrap
 | 
						|
set nocompatible
 | 
						|
 | 
						|
if has('nvim')
 | 
						|
    " Neovim specific commands
 | 
						|
    set viminfo+=n~/.cache/nviminfo
 | 
						|
else
 | 
						|
    " Standard vim specific commands
 | 
						|
    set viminfo+=n~/.cache/viminfo
 | 
						|
endif
 | 
						|
 | 
						|
set wildmode=longest,list,full
 | 
						|
 | 
						|
set fillchars+=vert:\ 
 | 
						|
 | 
						|
runtime ftplugin/man.vim
 | 
						|
set keywordprg=:Man
 | 
						|
 | 
						|
if has("autocmd")
 | 
						|
    " Save cursor position. I don't understand this part
 | 
						|
    au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif
 | 
						|
 | 
						|
    au BufNewFile,BufRead neomutt-* setf mail
 | 
						|
 | 
						|
    au FileType yaml setlocal ai tabstop=2 shiftwidth=2 expandtab cuc nu
 | 
						|
 | 
						|
    au FileType lilypond au BufWritePost * !lilypond %
 | 
						|
    au FileType dot au BufWritePost * !dot -Tpng -O %
 | 
						|
endif
 | 
						|
 | 
						|
 | 
						|
 | 
						|
map <leader>b :Break<CR>
 | 
						|
map <leader>n :NERDTreeToggle<CR>
 | 
						|
map <Leader>m <Plug>(easymotion-prefix)
 | 
						|
 | 
						|
nnoremap <CR> :noh<CR><CR>
 | 
						|
 | 
						|
 | 
						|
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
 | 
						|
 | 
						|
let g:lightline = {
 | 
						|
\   'active': {
 | 
						|
\       'left': [
 | 
						|
\           [ 'mode', 'paste' ],
 | 
						|
\           [ 'readonly', 'filename', 'modified', 'gitbranch' ]
 | 
						|
\       ],
 | 
						|
\       'right': [
 | 
						|
\           [ 'bufnum', 'percent', 'lineinfo' ],
 | 
						|
\           [ 'fileformat', 'fileencoding', 'filetype', 'synthastic' ],
 | 
						|
\           [ 'charvaluehex' ]
 | 
						|
\       ]
 | 
						|
\   },
 | 
						|
\   'inactive': {
 | 
						|
\       'left': [
 | 
						|
\           [ 'filename' ]
 | 
						|
\       ],
 | 
						|
\       'right': [
 | 
						|
\           [ 'lineinfo' ],
 | 
						|
\           [ 'bufnum' ]
 | 
						|
\       ]
 | 
						|
\   },
 | 
						|
\   'component': {
 | 
						|
\       'charvaluehex': '0x%B',
 | 
						|
\       'bufnum': '%n'
 | 
						|
\   },
 | 
						|
\   'component_function': {
 | 
						|
\       'synthastic': 'SyntasticStatuslineFlag',
 | 
						|
\       'gitbranch': 'fugitive#head'
 | 
						|
\   },
 | 
						|
\ }
 | 
						|
 | 
						|
if has('termguicolors') && &termguicolors
 | 
						|
    let g:jellybeans_overrides['background']['guibg'] = 'none'
 | 
						|
endif
 | 
						|
let g:jellybeans_overrides = {
 | 
						|
\   'Todo': {
 | 
						|
\       'guifg': '303030',
 | 
						|
\       'guibg': 'f0f000',
 | 
						|
\       'ctermfg': 'Black',
 | 
						|
\       'ctermbg': 'Yellow',
 | 
						|
\       'attr': 'bold'
 | 
						|
\   },
 | 
						|
\   'Comment': { 'guifg': 'cccccc' },
 | 
						|
\   'LineNr': { 'guifg': 'aaaaaa' },
 | 
						|
\   'background': {
 | 
						|
\       'ctermbg': 'none',
 | 
						|
\       '256ctermbg': 'none'
 | 
						|
\   },
 | 
						|
\ }
 | 
						|
 | 
						|
try
 | 
						|
    packadd! dracula_pro
 | 
						|
    colorscheme dracula_pro
 | 
						|
catch
 | 
						|
    colorscheme dracula
 | 
						|
endtry
 | 
						|
 | 
						|
let g:dracula_colorterm = 0
 | 
						|
highlight Normal ctermbg=NONE
 | 
						|
 | 
						|
 | 
						|
let g:highlightedyank_highlight_duration = 250
 | 
						|
 | 
						|
let g:syntastic_always_populate_loc_list = 0
 | 
						|
let g:syntastic_auto_loc_list = 0
 | 
						|
let g:syntastic_check_on_open = 1
 | 
						|
let g:syntastic_check_on_wq = 0
 | 
						|
let g:syntastic_oclint_config_file = '.syntastic_oclint_config'
 | 
						|
let g:syntastic_c_config_file = '.syntastic_cc_config'
 | 
						|
 | 
						|
let g:tex_flavor = 'latex'
 | 
						|
let g:vimtex_compiler_latexmk = {
 | 
						|
\   'build_dir': 'latexmk_output'
 | 
						|
\}
 | 
						|
 | 
						|
let g:move_key_modifier = 'C'
 | 
						|
 | 
						|
let g:indentLine_char_list = ['|', '¦', '┆', '┊']
 | 
						|
 | 
						|
let g:vim_markdown_conceal = 0
 | 
						|
 | 
						|
let g:rustfmt_autosave = 1
 |