" All system-wide defaults are set in $VIMRUNTIME/debian.vim and sourced by " the call to :runtime you can find below. If you wish to change any of those " settings, you should do it in this file (/etc/vim/vimrc), since debian.vim " will be overwritten everytime an upgrade of the vim packages is performed. " It is recommended to make changes after sourcing debian.vim since it alters " the value of the 'compatible' option. " This line should not be removed as it ensures that various options are " properly set to work with the Vim-related packages available in Debian. runtime! debian.vim " Vim will load $VIMRUNTIME/defaults.vim if the user does not have a vimrc. " This happens after /etc/vim/vimrc(.local) are loaded, so it will override " any settings in these files. " If you don't want that to happen, uncomment the below line to prevent " defaults.vim from being loaded. " let g:skip_defaults_vim = 1 " Uncomment the next line to make Vim more Vi-compatible " NOTE: debian.vim sets 'nocompatible'. Setting 'compatible' changes numerous " options, so any other options should be set AFTER setting 'compatible'. "set compatible " Vim5 and later versions support syntax highlighting. Uncommenting the next " line enables syntax highlighting by default. syntax on " If using a dark background within the editing area and syntax highlighting " turn on this option as well set background=dark " Uncomment the following to have Vim jump to the last position when " reopening a file au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif " Uncomment the following to have Vim load indentation rules and plugins " according to the detected filetype. filetype plugin indent on " The following are commented out as they cause vim to behave a lot " differently from regular Vi. They are highly recommended though. let mapleader =" " " Map leader set showcmd " Show (partial) command in status line. set showmatch " Show matching brackets. set ignorecase " Do case insensitive matching set smartcase " Do smart case matching set incsearch " Incremental search set autowrite " Automatically save before commands like :next and :make set hidden " Hide buffers when they are abandoned set mouse=a " Enable mouse usage (all modes) set number " Enable line numbers set relativenumber " Enable line numbers to be displayed relative to current position set tabstop=4 " Set default tab size to 4 spaces set autoindent " Keep current tab depth on new line " Colors let &t_8f = "\[38;2;%lu;%lu;%lum" let &t_8b = "\[48;2;%lu;%lu;%lum" " set termguicolors colorscheme gruvbox " hi Normal ctermbg=NONE cterm=NONE " Document compilation map c :!compile % " Document Preview map p :!pdf-preview % " Spell Check map s :setlocal spell! spelllang=en_us " Disable auto comment continuation autocmd filetype * set formatoptions-=cro " C mappings autocmd filetype c inoremap ;c /* */ autocmd filetype c inoremap ;p printf(" \n");5hi " Python mappings " autocmd filetype python noremap ggI#!/usr/bin/env python3def main():passif __name__ == '__main__':main()ggji let g:autopep8_on_save = 1 " Java 'IDE' remappings autocmd filetype java inoremap [p System.out.println(); autocmd filetype java noremap ipublic class {public static void main(String[] args) {}}ggwwhhi autocmd filetype java noremap ipublic class {}ggwwhhi " Groff Mappings autocmd filetype nroff inoremap ;c .\" autocmd filetype nroff inoremap ;b \*[BOLDER]'\*[BOLDERX] F'cl autocmd filetype nroff inoremap ;h .HEADING " HTML Mappings autocmd filetype html inoremap ;; /<++>"_c4l autocmd filetype html inoremap ;1

<++>FhT>i autocmd filetype html inoremap ;2

`

<++>k$F`"_cl autocmd filetype html inoremap ;3

`

<++>k$F`"_cl autocmd filetype html inoremap ;b <++>F <++>F <++>F`<++>2k$F`"_cl autocmd filetype html inoremap ;p

`

<++>2k$F`"_cl autocmd filetype html inoremap ;c
`
<++>2k$F`"_cl " XML (for RSS) autocmd filetype xml inoremap ;i k$F[a " Restart sxhkd when config file is changed autocmd BufWritePost *sxhkdrc !pkill -SIGUSR1 sxhkd " Recompile and restart dwmblocks when file is changed autocmd BufWritePost ~/.local/src/dwmblocks/blocks.h !cd ~/.local/src/dwmblocks/; sudo make install && pkill dwmblocks; setsid -f dwmblocks " Recompile dwm when config.h is changed autocmd BufWritePost ~/.local/src/dwm/config.h !cd ~/.local/src/dwm/; sudo make install " Reload Xresources when saved autocmd BufWritePost ~/.config/x11/xresources !xrdb ~/.config/x11/xresources " Reload dunst after editing configuration file autocmd BufWritePost ~/.config/dunst/dunstrc !pkill dunst; setsid -f dunst autocmd BufWritePost ~/.config/picom/picom.conf !pkill -SIGUSR1 picom autocmd BufWritePost ~/.local/bin/bar !pkill bar; setsid -f ~/.local/bin/bar set completeopt =menuone,longest " Start NERDTree and put the cursor back in the other window. autocmd VimEnter * NERDTree | wincmd p " Show hidden files in NERDTree let NERDTreeShowHidden=1 " Exit Vim if NERDTree is the only window remaining in the only tab. autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif " Open the existing NERDTree on each new tab. autocmd BufWinEnter * if getcmdwintype() == '' | silent NERDTreeMirror | endif