Skip to content

Instantly share code, notes, and snippets.

@rocarvaj
Created April 27, 2012 21:28
Show Gist options
  • Select an option

  • Save rocarvaj/2513367 to your computer and use it in GitHub Desktop.

Select an option

Save rocarvaj/2513367 to your computer and use it in GitHub Desktop.

Revisions

  1. rocarvaj revised this gist Apr 27, 2012. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion .vimrc
    Original file line number Diff line number Diff line change
    @@ -39,7 +39,7 @@ set tags+=~/.vim/tags/sdl
    set tags+=~/.vim/tags/qt4

    " Install DoxygenToolkit from http://www.vim.org/scripts/script.php?script_id=987
    let g:DoxygenToolkit_authorName="Rodolfo Carvajal <[email protected]>"
    let g:DoxygenToolkit_authorName="John Doe <[email protected]>"

    " Enhanced keyboard mappings
    "
  2. rocarvaj created this gist Apr 27, 2012.
    77 changes: 77 additions & 0 deletions .vimrc
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,77 @@
    " VIM Configuration File
    " Description: Optimized for C/C++ development, but useful also for other things.
    " Author: Gerhard Gappmeier
    "

    " set UTF-8 encoding
    set enc=utf-8
    set fenc=utf-8
    set termencoding=utf-8
    " disable vi compatibility (emulation of old bugs)
    set nocompatible
    " use indentation of previous line
    set autoindent
    " use intelligent indentation for C
    set smartindent
    " configure tabwidth and insert spaces instead of tabs
    set tabstop=4 " tab width is 4 spaces
    set shiftwidth=4 " indent also with 4 spaces
    set expandtab " expand tabs to spaces
    " wrap lines at 120 chars. 80 is somewaht antiquated with nowadays displays.
    set textwidth=120
    " turn syntax highlighting on
    set t_Co=256
    syntax on
    " colorscheme wombat256
    " turn line numbers on
    set number
    " highlight matching braces
    set showmatch
    " intelligent comments
    set comments=sl:/*,mb:\ *,elx:\ */

    " Install OmniCppComplete like described on http://vim.wikia.com/wiki/C++_code_completion
    " This offers intelligent C++ completion when typing ‘.’ ‘->’ or <C-o>
    " Load standard tag files
    set tags+=~/.vim/tags/cpp
    set tags+=~/.vim/tags/gl
    set tags+=~/.vim/tags/sdl
    set tags+=~/.vim/tags/qt4

    " Install DoxygenToolkit from http://www.vim.org/scripts/script.php?script_id=987
    let g:DoxygenToolkit_authorName="Rodolfo Carvajal <[email protected]>"

    " Enhanced keyboard mappings
    "
    " in normal mode F2 will save the file
    nmap <F2> :w<CR>
    " in insert mode F2 will exit insert, save, enters insert again
    imap <F2> <ESC>:w<CR>i
    " switch between header/source with F4
    map <F4> :e %:p:s,.h$,.X123X,:s,.cpp$,.h,:s,.X123X$,.cpp,<CR>
    " recreate tags file with F5
    map <F5> :!ctags -R –c++-kinds=+p –fields=+iaS –extra=+q .<CR>
    " create doxygen comment
    map <F6> :Dox<CR>
    " build using makeprg with <F7>
    map <F7> :make<CR>
    " build using makeprg with <S-F7>
    map <S-F7> :make clean all<CR>
    " goto definition with F12
    map <F12> <C-]>
    " in diff mode we use the spell check keys for merging
    if &diff
    diff settings
    map <M-Down> ]c
    map <M-Up> [c
    map <M-Left> do
    map <M-Right> dp
    map <F9> :new<CR>:read !svn diff<CR>:set syntax=diff buftype=nofile<CR>gg
    else
    " spell settings
    :setlocal spell spelllang=en
    " set the spellfile - folders must exist
    set spellfile=~/.vim/spellfile.add
    map <M-Down> ]s
    map <M-Up> [s
    endif