From 82df70eff06e7b44ee84283070d7f801f7fc1d92 Mon Sep 17 00:00:00 2001 From: Sam Chudnick Date: Sat, 6 Nov 2021 20:25:45 -0400 Subject: initial commit --- .vim/vimrc | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 .vim/vimrc (limited to '.vim/vimrc') diff --git a/.vim/vimrc b/.vim/vimrc new file mode 100644 index 0000000..a3ea897 --- /dev/null +++ b/.vim/vimrc @@ -0,0 +1,104 @@ +" 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 +colorscheme slate " Enable my custom colorscheme + +" 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 idef main():passif __name__ == '__main__':main()gg + +" 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 + +" 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 + +"set completeopt =menuone,longest + +" Source a global configuration file if available +if filereadable("/etc/vim/vimrc.local") + source /etc/vim/vimrc.local +endif + -- cgit v1.2.3