aboutsummaryrefslogtreecommitdiff
path: root/dot_vim/ftplugin/cpp.vim
diff options
context:
space:
mode:
Diffstat (limited to 'dot_vim/ftplugin/cpp.vim')
-rw-r--r--dot_vim/ftplugin/cpp.vim164
1 files changed, 164 insertions, 0 deletions
diff --git a/dot_vim/ftplugin/cpp.vim b/dot_vim/ftplugin/cpp.vim
new file mode 100644
index 0000000..79b3445
--- /dev/null
+++ b/dot_vim/ftplugin/cpp.vim
@@ -0,0 +1,164 @@
+" Line numbering
+set number
+" Set syntax highlighting
+syntax on
+" Tabbing
+set et
+set shiftwidth=4
+set smarttab
+set autoindent
+" Complete Brackets {
+"
+" }"
+" Complete quotes"
+inoremap " ""<Left>
+" We want a mouse in consoles, so:"
+set mouse=a
+"
+"===============================================================================
+"========== load example vimrc from the distribution =========================
+"===============================================================================
+"
+runtime vimrc_example.vim
+"
+filetype plugin on
+"
+"===============================================================================
+"========== CUSTOMIZATION (vimrc) ============================================
+"===============================================================================
+"
+" Platform specific items:
+" - central backup directory (has to be created)
+" - default dictionary
+" Uncomment your choice.
+if has("win16") || has("win32") || has("win64") ||
+ \ has("win95") || has("win32unix")
+ "
+" runtime mswin.vim
+" set backupdir =$VIM\vimfiles\backupdir
+" set dictionary=$VIM\vimfiles\wordlists/german.list
+else
+" set backupdir =$HOME/.vim.backupdir
+" set dictionary=$HOME/.vim/wordlists/german.list
+endif
+"
+" Using a backupdir under UNIX/Linux: you may want to include a line similar to
+" find $HOME/.vim.backupdir -name "*" -type f -mtime +60 -exec rm -f {} \;
+" in one of your shell startup files (e.g. $HOME/.profile)
+"
+"-------------------------------------------------------------------------------
+" Use of dictionaries
+"-------------------------------------------------------------------------------
+"
+set complete+=k " scan the files given with the 'dictionary' option
+"
+"-------------------------------------------------------------------------------
+" Various settings
+"-------------------------------------------------------------------------------
+"
+set autoread " read open files again when changed outside Vim
+set autowrite " write a modified buffer on each :next , ...
+set browsedir =current " which directory to use for the file browser
+set incsearch " use incremental search
+"set nowrap " do not wrap lines
+set shiftwidth =4 " number of spaces to use for each step of indent
+set tabstop =4 " number of spaces that a <Tab> in the file counts for
+set visualbell " visual bell instead of beeping
+"
+"
+"-------------------------------------------------------------------------------
+" some additional hot keys
+"-------------------------------------------------------------------------------
+" F2 - write file without confirmation
+" F3 - call file explorer Ex
+" F4 - show tag under curser in the preview window (tagfile must exist!)
+" F5 - open quickfix error window
+" F6 - close quickfix error window
+" F7 - display previous error
+" F8 - display next error
+" S-Tab - Fast switching between buffers (see below)
+" C-q - Leave the editor with Ctrl-q (see below)
+"-------------------------------------------------------------------------------
+"
+map <silent> <F2> :write<CR>
+map <silent> <F3> :Explore<CR>
+nmap <silent> <F4> :exe ":ptag ".expand("<cword>")<CR>
+map <silent> <F5> :copen<CR>
+map <silent> <F6> :cclose<CR>
+map <silent> <F7> :cp<CR>
+map <silent> <F8> :cn<CR>
+"
+imap <silent> <F2> <Esc>:write<CR>
+imap <silent> <F3> <Esc>:Explore<CR>
+imap <silent> <F4> <Esc>:exe ":ptag ".expand("<cword>")<CR>
+imap <silent> <F5> <Esc>:copen<CR>
+imap <silent> <F6> <Esc>:cclose<CR>
+imap <silent> <F7> <Esc>:cp<CR>
+imap <silent> <F8> <Esc>:cn<CR>
+"
+"-------------------------------------------------------------------------------
+" Fast switching between buffers
+" The current buffer will be saved before switching to the next one.
+" Choose :bprevious or :bnext
+"-------------------------------------------------------------------------------
+"
+ map <silent> <s-tab> <Esc>:if &modifiable && !&readonly &&
+ \ &modified <CR> :write<CR> :endif<CR>:bprevious<CR>
+imap <silent> <s-tab> <Esc>:if &modifiable && !&readonly &&
+ \ &modified <CR> :write<CR> :endif<CR>:bprevious<CR>
+"
+"-------------------------------------------------------------------------------
+" Leave the editor with Ctrl-q : Write all changed buffers and exit Vim
+"-------------------------------------------------------------------------------
+nmap <C-q> :wqa<CR>
+"
+"-------------------------------------------------------------------------------
+" autocomplete parenthesis, brackets and braces
+"-------------------------------------------------------------------------------
+inoremap ( ()<Left>
+inoremap [ []<Left>
+inoremap { {<CR>}<ESC>ko
+"
+vnoremap ( s()<Esc>P<Right>%
+vnoremap [ s[]<Esc>P<Right>%
+vnoremap { s{}<Esc>P<Right>%
+"
+"-------------------------------------------------------------------------------
+" Change the working directory to the directory containing the current file
+"-------------------------------------------------------------------------------
+if has("autocmd")
+ autocmd BufEnter * :lchdir %:p:h
+endif " has("autocmd")
+"
+"-------------------------------------------------------------------------------
+" Filename completion
+"
+" wildmenu : command-line completion operates in an enhanced mode
+" wildignore : A file that matches with one of these
+" patterns is ignored when completing file or directory names.
+"-------------------------------------------------------------------------------
+"
+set wildmenu
+set wildignore=*.bak,*.o,*.e,*~
+"
+"-------------------------------------------------------------------------------
+" print options (pc = percentage of the media size)
+"-------------------------------------------------------------------------------
+set printoptions=left:8pc,right:3pc
+"
+"-------------------------------------------------------------------------------
+" taglist.vim : toggle the taglist window
+" taglist.vim : define the title texts for make
+" taglist.vim : define the title texts for qmake
+"-------------------------------------------------------------------------------
+ noremap <silent> <F11> <Esc><Esc>:Tlist<CR>
+inoremap <silent> <F11> <Esc><Esc>:Tlist<CR>
+
+let tlist_make_settings = 'make;m:makros;t:targets'
+
+let tlist_qmake_settings = 'qmake;t:SystemVariables'
+
+if has("autocmd")
+ " ---------- qmake : set filetype for *.pro ----------
+ autocmd BufNewFile,BufRead *.pro set filetype=qmake
+endif " has("autocmd")