let mapleader=" " let config_dir = system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/"') " if ! filereadable(system('echo -n "${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/plug.vim"')) " echo "Downloading junegunn/vim-plug to manage plugins..." " silent !mkdir -p ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/ " silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/autoload/plug.vim " autocmd VimEnter * PlugInstall " endif if filereadable(config_dir . "autoload/plug.vim") call plug#begin(system('echo -n "${XDG_DATA_HOME:-$HOME/.local/share}/nvim/plugged"')) Plug 'tpope/vim-commentary' Plug 'tpope/vim-surround' Plug 'ptzz/lf.vim' Plug 'voldikss/vim-floaterm' Plug 'xuhdev/vim-latex-live-preview', {'for': 'tex'} Plug 'ap/vim-css-color' " color code highlighting Plug 'neoclide/coc.nvim', {'on': ['CocList', 'CocConfig'], 'branch': 'release'} " Plug 'KabbAmine/zeavim.vim' ", {'on': ['Zeavim', 'ZeavimV', 'ZVVisSelection', 'ZVOperator', 'ZVKeyDocset']} " Plug 'machakann/vim-verdin', {'for': 'vim'} " Plug 'puremourning/vimspector', {'for': 'python'} " Plug 'powerman/vim-plugin-AnsiEsc' " Plug 'junegunn/goyo.vim', {'on': 'Goyo'} " Plug 'jreybert/vimagit' " Plug 'lukesmithxyz/vimling' " Plug 'vimwiki/vimwiki' " Plug 'vim-airline/vim-airline', {'on': 'AirlineTheme'} " Plug 'vim-airline/vim-airline-themes', {'on': 'AirlineTheme'} " Plug 'joshdick/onedark.vim' call plug#end() endif let g:Verdin#autocomplete = 1 let g:livepreview_previewer = 'zathura' let g:tex_flavor = 'latex' set title showmatch nowrap mouse=a scrolloff=5 set tabstop=2 shiftwidth=0 set cursorline linebreak set number relativenumber set splitbelow splitright set updatetime=1000 set notermguicolors lazyredraw set listchars=tab:\┆\ "│ syntax on filetype plugin indent on colorscheme vim highlight NonText ctermfg=242 highlight ColorColumn ctermbg=238 highlight! link CursorColumn ColorColumn autocmd FileType text,fstab setlocal tabstop=8 shiftwidth=8 autocmd FileType html setlocal tabstop=2 shiftwidth=2 list nolinebreak autocmd FileType sql setlocal commentstring=--\ %s autocmd BufEnter bm-files,bm-dirs setlocal tabstop=8 shiftwidth=8 autocmd BufWritePost bm-files,bm-dirs silent !shortcuts autocmd VimLeave *.tex !dev clean "%" " autocmd BufWritePost config.h,config.def.h !cd "%:h"; rm -f config.h; sudo make install autocmd BufWritePre * %s/\s\+$//e au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$") | exe "normal! g`\"" | endif autocmd BufWritePost */Documents/Notes/*.md silent !pandoc % -o "$HOME/Documents/Notes/.out/$(basename % .md).html" " autocmd BufWritePost */Documents/latex/resume/resume.tex !cd "%:h"; pdflatex resume.tex; cp -v resume.pdf ~/Dev/vikas.rocks/static/dox/ autocmd BufWritePost *Xresources silent !xrdb "%" autocmd BufRead,BufNewFile *.yt* set filetype=conf function SourceTemplate() let b:template = glob("${XDG_CONFIG_HOME:-$HOME/.config}/nvim/templates/_default." . expand('%:e')) if !empty(b:template) execute('0r' . b:template) endif endfunction autocmd BufNewFile * call SourceTemplate() autocmd TermOpen * startinsert command! -nargs=* T split | terminal " --> Scratch buffer if exists('g:loaded_scratch') finish endif let g:loaded_scratch = 1 command! -nargs=1 -complete=command D call scratch#open(, ) " --> Lf " let g:lf_command_override = 'lf -command ...' let g:NERDTreeHijackNetrw = 0 " let g:lf_replace_netrw = 1 let g:lf_width = 1.0 let g:lf_height = 1.0 let g:lf_map_keys = 0 nnoremap o :LfCurrentFile nnoremap l :LfWorkingDirectory nnoremap o :LfCurrentFileNewTab nnoremap l :LfWorkingDirectoryExistingOrNewTab if !exists('g:lasttab') let g:lasttab = 1 endif nmap g; :exe "tabn ".g:lasttab au TabLeave * let g:lasttab = tabpagenr() nnoremap g1 1gt nnoremap g2 2gt nnoremap g3 3gt nnoremap g4 4gt nnoremap g5 5gt nnoremap g6 6gt nnoremap g7 7gt nnoremap g8 8gt nnoremap g9 :tablast vnoremap "*y :let @+=@* vnoremap "*d :let @+=@* noremap "+p noremap "+P nnoremap c "_c inoremap jk " map ;n /<++>c4l inoremap ;n /<++>c4l nnoremap n /<++>c4l autocmd FileType html,markdown inoremap ;s >bi<ea autocmd FileType html,markdown inoremap ;c >biea autocmd FileType html,markdown inoremap ;i b"tywi<ea>PFb"tywi<ea><++>P2F>i autocmd FileType html,markdown inoremap ;b b"tywi<ea>"tpa><++>kO autocmd FileType html,markdown inoremap ;B b"tywi<ea><++>"tpa><++>3k$i autocmd FileType html,markdown inoremap ;ap

<++>

<++>3k$i autocmd FileType html,markdown inoremap ;aa <++><++>3k$hi autocmd FileType tex inoremap ;b b"tywi\begin{ea}\end{"tpa}kA autocmd FileType tex inoremap ;s \section{}i autocmd FileType tex inoremap ;at \begin{tikzpicture}\end{tikzpicture}O autocmd FileType tex inoremap ;ap \usepackage{}i autocmd FileType tex inoremap ;aP \usepackage[]{}F[a autocmd FileType tex inoremap ;ab \textbf{}i autocmd FileType tex inoremap ;ai \textit{}i autocmd FileType tex inoremap ;au \underline{}i autocmd FileType go inoremap ;ae err:=<++>iferr!=nil{returnerr}3kI nnoremap fl :w:!dev lint "%" nnoremap fm :w:%!dev format "%" nnoremap fc :w:!dev compile "%" nnoremap fe :w:!dev run "%" nnoremap ft :w:!dev test "%" nnoremap fr :w:!dev clean "%" nnoremap Fl :w:T dev lint "%" nnoremap Fm :w:T dev format "%" nnoremap Fc :w:T dev compile "%" nnoremap Fe :w:T dev run "%" nnoremap Ft :w:T dev test "%" nnoremap Fr :w:T dev clean "%" autocmd BufEnter * nmap t :w:se nornu:!dev test "%":se rnu autocmd BufEnter * nmap T :w:se nornu:T dev test "%" autocmd BufEnter * imap :w:se nornu:T dev test "%" autocmd BufEnter vartak-results-data.pl nmap t :w:se nornu:!vartak-results-data.pl ~/GDrive/vartak/results/university/1S002557.pdf:se rnu nnoremap w :set wrap! nnoremap fo :!opout "%:p" nnoremap ec :tabnew ~/.config/nvim/init.vim nnoremap :source ~/.config/nvim/init.vim nnoremap s :%s//gc nnoremap r :w:!%:p nnoremap R :w:T %:p nnoremap gc :T git add --all && git commit let shortcuts = config_dir . "shortcuts.vim" if filereadable(shortcuts) execute "source " . shortcuts endif