aboutsummaryrefslogtreecommitdiff
path: root/stow/vim/.vim/ftplugin/cpp/cpp.vim
diff options
context:
space:
mode:
Diffstat (limited to 'stow/vim/.vim/ftplugin/cpp/cpp.vim')
-rw-r--r--stow/vim/.vim/ftplugin/cpp/cpp.vim28
1 files changed, 28 insertions, 0 deletions
diff --git a/stow/vim/.vim/ftplugin/cpp/cpp.vim b/stow/vim/.vim/ftplugin/cpp/cpp.vim
new file mode 100644
index 0000000..e2072c1
--- /dev/null
+++ b/stow/vim/.vim/ftplugin/cpp/cpp.vim
@@ -0,0 +1,28 @@
+" ~/.vim/ftplugin/cpp/cpp.vim
+" C++-specific vim configuration
+
+let mapleader = " "
+
+" Column marker: 80 characters
+match ColorColumn /\%81v/
+setlocal textwidth=80
+
+nnoremap <buffer> <leader>C :sp ~/.vim/ftplugin/cpp/cpp.vim<CR>
+nnoremap <buffer> <leader>E :Errors<CR>
+
+nnoremap <buffer> <leader>c :w<CR>:!g++ "%"; ./a.out<Space>
+
+nnoremap <buffer> gd :YcmCompleter GoTo<CR>
+nnoremap <buffer> gr :YcmCompleter GoToReferences<CR>
+nnoremap <buffer> gh :YcmCompleter GetType<CR>
+nnoremap <buffer> gD :YcmCompleter GetDoc<CR>
+nnoremap <buffer> gR :YcmCompleter RefactorRename<Space>
+nnoremap <buffer> <leader>fi :YcmCompleter FixIt<CR>
+nnoremap <buffer> <leader>e :YcmDiags<CR>
+
+nnoremap <buffer> <leader>temp :-1r ~/.vim/ftplugin/cpp/snips/template.txt<CR>Gdd?<+++><CR>cf>
+
+let mapleader = ","
+
+inoremap <buffer> <leader>if if (<+++>) {<CR><++><CR>}?<+++><CR>cf>
+inoremap <buffer> <leader>for for (<+++>; <++>; <++>) {<CR><++><CR>}?<+++><CR>cf>