操作tagstack的是ctrl-]与ctrl-t
:tags查看tagstack
操作jumplist的是ctrl-i与ctrl-o(in/out)
:jumps查看jumplist
cscope
构造cscope数据库: cscope -Rbq,R是递归,b是build后即退出,q是创建倒排表来加快查找。
:cscope find symbol xxx 列出所有这个symbol出现的地方,简写为:cs f s xxx
:cscope find calling xxx 列出所有call这个function的function,简写为:cs f c xxx
:cscope find called xxx 列出所有这个function要call的function,简写为:cs f d xxx
:cscope find grep xxx 按照这个正则式查找,简写为:cs f e xxx
:diffsplit vert main-modified.c
:f
:set ro/noro
vimgrep /{pattern}/[g][j] {file} ...
:cn, :cp
:cl
:cc [nr]
:cw, cwindow
when specifying {file}, use ** to denote recursive sub-directories. For example, **/*.c **/*.h denote all C source files in current directory (and all subdirectories).
我的vimrc
"
Basics {
set
nocompatible
source $VIMRUNTIME/vimrc_example.vim
"
}
"
General {
"
Set to auto read when a file is changed from the outside
set
autoread
"
always switch to the current file directory
set
autochdir
"
Backup
set
backup
set
backupdir=C:\Users\angelsmile\vim_backup
"
How many commands to memorize
set
history=
50
"
Encodings
set
fileencodings=utf-
8
,gbk,gb2312
"
Support all three, in this order.
set
fileformats=unix,dos,mac
"
Enable mouse
set
mouse=a
"
don't make noise
set
noerrorbells
"
Turn on cmdline completion wild style
set
wildmenu
"
ignore these list file extensions
set
wildignore=*.o,*.obj,*.exe,*.pyc,*.jpg,*.gif,*.png,*.pdf
"
}
"
Vim UI {
colorscheme zellner
"
Always show current position
set
ruler
"
Show line number
set
number
"
Show matching brackets
set
showmatch
"
Highlight search result
set
hlsearch
"
Inc search
set
incsearch
"
set cursorcolumn
set
cursorline
"
shortens messages
set
shortmess=a
set
showcmd
"
line wrap
set
wrap
"
}
"
Editing {
set
backspace=indent,eol,start
"
All about tabs
set
tabstop=
4
set
softtabstop=
4
set
shiftwidth=
4
set
expandtab
set
smarttab
"
}
"
I'm a C programmer {
syntax on
"
Indent
set
autoindent
set
smartindent
set
cindent
"
C-style indent
"
Fold
set
foldmethod=syntax
"
tags
set
tags=./tags,../tags,http://www.cnblogs.com/tags
"
Vertical line at col 80, only after Vim 7.3
set
colorcolumn=
80
"
}
"
GUI Settings {
"
GUI fonts
set
guifont=Consolas:h10
"
set guifont=YaHei\ Consolas\ Hybrid:h10
"
set guifontwide=YaHei\ Consolas\ Hybrid:h10
"
GUI widgets
set
guioptions-=m
"
remove menubar
set
guioptions-=T
"
remove toolbar
set
guioptions-=r
"
remove right-hand scroll bar
"
Columns
set
columns=
120
set
lines=
32
"
}
"
Keyboard mapping {
:imap <C-s> <Esc>:w<CR>a
"
}

