summaryrefslogtreecommitdiffstats
path: root/.vimrc
diff options
context:
space:
mode:
authorJozanLeClerc <bousset.rudy@gmail.com>2020-07-18 21:11:37 +0200
committerJozanLeClerc <bousset.rudy@gmail.com>2020-07-18 21:11:37 +0200
commitb9feaa9f23c75b79e24de0dfc033ecf46a935783 (patch)
tree63a919e8b007f322d0e96aad6987460e2d2bb3bf /.vimrc
parentAdded GNU screen dotfiles (diff)
downloaddotfiles-bsd-b9feaa9f23c75b79e24de0dfc033ecf46a935783.tar.gz
dotfiles-bsd-b9feaa9f23c75b79e24de0dfc033ecf46a935783.tar.bz2
dotfiles-bsd-b9feaa9f23c75b79e24de0dfc033ecf46a935783.tar.xz
dotfiles-bsd-b9feaa9f23c75b79e24de0dfc033ecf46a935783.tar.zst
dotfiles-bsd-b9feaa9f23c75b79e24de0dfc033ecf46a935783.zip
Added dunst and neovim configs
Diffstat (limited to '.vimrc')
-rw-r--r--.vimrc138
1 files changed, 138 insertions, 0 deletions
diff --git a/.vimrc b/.vimrc
new file mode 100644
index 0000000..66cb18d
--- /dev/null
+++ b/.vimrc
@@ -0,0 +1,138 @@
+" .vimrc 3.1 by Joe
+
+" Plugins
+call plug#begin('~/.vim/plugged')
+Plug 'vim-airline/vim-airline'
+Plug 'vim-airline/vim-airline-themes'
+Plug 'jreybert/vimagit'
+Plug 'preservim/nerdtree'
+Plug 'mbbill/undotree'
+Plug 'jiangmiao/auto-pairs'
+Plug 'tpope/vim-surround'
+Plug 'tpope/vim-fugitive'
+Plug 'luochen1990/rainbow'
+Plug 'preservim/nerdcommenter'
+call plug#end()
+
+let mapleader=","
+
+" Some basics:
+ "set bg=light
+ set go=a
+ set mouse=a
+ set nohlsearch
+ set clipboard=unnamedplus
+ set tabstop=4
+ set softtabstop=4
+ set shiftwidth=4
+ nnoremap c "_c
+ set nocompatible
+ filetype plugin indent on
+ set encoding=utf-8
+ set number
+ set ruler
+ syntax on
+ set hidden
+
+" Nerdtree
+ autocmd StdinReadPre * let s:std_in=1
+ autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif
+
+" Enable autocompletion:
+ set wildmode=longest,list,full
+
+" Some quick bindings
+ noremap <C-x>g :G<CR>
+ noremap <A-;> :call NERDComment(0,"toggle")<CR>
+ noremap <silent> <A-k> :bprevious<CR>
+ noremap <silent> <A-j> :bnext<CR>
+ noremap <C-h> <C-w>h
+ noremap <C-j> <C-w>j
+ noremap <C-k> <C-w>k
+ noremap <C-l> <C-w>l
+ noremap <C-o> <C-w>o
+ noremap <C-x>0 <C-w>q
+ noremap <C-x><C-f> :e<space>
+ noremap <silent> <leader>w :w <BAR> :bp <BAR> :bd #<CR>
+ noremap <silent> <C-x>k :w <BAR> :bp <BAR> :bd #<CR>
+
+" Airline
+ let g:airline#extensions#tabline#enabled = 1
+ let g:airline#extensions#tabline#fnamemod = ':t'
+ let g:airline_detect_modified = 1
+ let g:airline_detect_paste = 1
+ let g:airline_detect_crypt = 1
+ let g:airline_theme = 'term'
+ let g:airline_powerline_fonts = 1
+ let g:airline_symbols_ascii = 1
+ let g:airline#parts#ffenc#skip_expected_string='utf-8[unix]'
+
+" Rainbow
+ let g:rainbow_active = 1
+
+" NERD Commenter
+ let g:NERDSpaceDelims = 1
+ let g:NERDCompactSexyComs = 1
+ let g:NERDDefaultAlign = 'left'
+ let g:NERDAltDelims_java = 1
+ let g:NERDCustomDelimiters = { 'c': { 'left': '/*','right': '*/' } }
+ let g:NERDCommentEmptyLines = 1
+ let g:NERDTrimTrailingWhitespace = 1
+ let g:NERDToggleCheckAllLines = 1
+
+" Cursor mode
+ let g:airline#extensions#cursormode#enabled = 1
+ let g:cursormode_color_map = {
+ \ "i": "#7da9c7",
+ \ "n": "#eac179",
+ \ "R": "#bb5653",
+ \ "r": "#bb5653",
+ \ "v": "#b06597",
+ \ "V": "#b06597",
+ \ "\<C-V>": "#b06597",
+ \}
+
+" 10 buffers jump
+ let g:airline#extensions#tabline#buffer_idx_mode = 1
+ noremap <F1> :sp<CR><C-w>j:term<CR>:resize -10<CR>i
+ noremap <F2> :NERDTreeToggle<CR>
+ noremap <C-u> :UndotreeToggle<CR>
+ nmap <leader>1 <Plug>AirlineSelectTab1
+ nmap <leader>2 <Plug>AirlineSelectTab2
+ nmap <leader>3 <Plug>AirlineSelectTab3
+ nmap <leader>4 <Plug>AirlineSelectTab4
+ nmap <leader>5 <Plug>AirlineSelectTab5
+ nmap <leader>6 <Plug>AirlineSelectTab6
+ nmap <leader>7 <Plug>AirlineSelectTab7
+ nmap <leader>8 <Plug>AirlineSelectTab8
+ nmap <leader>9 <Plug>AirlineSelectTab9
+ nmap <leader>0 <Plug>AirlineSelectTab10
+
+" Disables automatic commenting on newline:
+ autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o
+
+" Powerline
+ set laststatus=2
+ set t_Co=256
+
+" Runs a script that cleans out tex build files whenever I close out of a .tex file.
+ autocmd VimLeave *.tex !texclear %
+
+" Compile document, be it groff/LaTeX/markdown/etc.
+ "map <leader>c :w! \| !compiler <c-r>%<CR>
+ autocmd BufWritePost *.tex !compiler %
+
+" Compile C file
+ autocmd FileType * noremap <F5> :w<CR> :!clear<CR> :!make -j5 ASAN=1<CR>
+ autocmd FileType * noremap <F6> :w<CR> :!clear<CR> :!./a.out; ret=$?; echo "~>"; if [ $ret -ne 0 ]; then echo -n "$ret"; if [ $ret -eq 127 ]; then echo " - Missing a.out"; exit; elif [ $ret -eq 134 ]; then echo " - Abort\!"; elif [ $ret -eq 138 ]; then echo " - Bus error\!"; elif [ $ret -eq 139 ]; then echo " - Segmentation fault\!"; fi; fi; echo "\n\n.vimrc v3.0 Tilde Edition by Joe"<CR>
+" === Comfy ===
+" C
+ autocmd FileType c nnoremap <Leader>m o#include<space><stdio.h><CR>#include<space><string.h><CR>#include<space><stdlib.h><CR>#include<space><stddef.h><CR>int<space>main(void)<space>{<CR>return<space>0;<CR>}<up><ESC>O
+ autocmd FileType c nnoremap <Leader>M o#include<space><stdio.h><CR>#include<space><string.h><CR>#include<space><stdlib.h><CR>#include<space><stddef.h><CR>int<space>main(int<space>argc,<space>char<space>*argv[])<space>{<CR>if<space>(argc<space>!=<space>1)<space>{<CR>printf("NOT<space>ENOUGH<space>ARGS\n");<CR>return<space>1;<CR>}<CR>return<space>0;<CR>}<up><ESC>Oprintf();<left><left>
+
+" C++
+ autocmd FileType cpp nnoremap <Leader>m oint<space>main(void)<space>{<CR>return<space>0;<CR>}<up><ESC>O
+ autocmd FileType cpp nnoremap <Leader>M oint<space>main(int<space>argc,<space>char<space>*argv[])<space>{<CR>if<space>(argc<space>!=<space>1)<CR>return<space>0;<CR>if<space>(argv[])<space>{}<CR>return<space>0;<CR>}<up><ESC>O
+ autocmd FileType cpp nnoremap <Leader>M oint<space>main(int<space>argc,<space>char<space>*argv[])<space>{<CR>if<space>(argc<space>!=<space>1)<space>{<CR>cout<space><<<space>"NOT<space>ENOUGH<space>ARGS"<space><<<space>endl;<CR>return<space>1;<CR>}<CR>return<space>0;<CR>}<up><ESC>O
+
+" .vimrc 3.1 by Joe