贴一下我常用的几个命令

来源:百度文库 编辑:神马文学网 时间:2024/04/28 05:05:00
发信人: allanj (木瓜), 信区: VIM
标  题: 贴一下我常用的几个命令
发信站: BBS 水木清华站 (Tue Jun  1 11:07:15 2004), 站内
常用命令:
------------------------------
CTRL-Z      vim 切换到后台
:g/xxx      列出所有含 xxx 的行; 适合想到含 xxx 的某行, 但不知道行号,
/xxx 又太慢
q: q/ q?    编辑长命令时比较舒服, 执行按回车, 按 CTRL-C 再次进入
: / ? 原来的输入状态, 再按一次关闭.
CTRL-W=     所有窗口等高, 适合 diff 时自己移动了 window 大小
CTRL-Wo     等效于 :only
CTRL-Wc     等效于 :close!
gvim -u     用 NONE 的话必须大写, 可以用 nul 文件, gvim -u nul, 而且不
区分大小写
-s     执行脚本文件, 是 normal 时的指令, cmd 的命令要 :, 但不用加
-w     把所有按键记录 appedn    到指定文件中
-W                    overwrite
这 2 个适合不会 perl sed 的 vimer
--servername
--remote-silent     这 2 个搭配着用, 可以总在一个 vim 里打开新文件, 比如
gvim.exe  --servername smarter  --remote-silent  test.text
命令太长, 可以自己 alias 一下(win32 下用 doskey 就可以)
再次选中 上次选中的内容, 用 gv
在选中的区域首尾跳动, 用 大写 O
:redi       把输出信息重定向, 比如 保存所有 set 选项到 剪切板
:redi   @*
:se all
具体 :h redi
c\c++ 下常用的:
------------------------------
[[
]] 在 C 的 {} 形成的段落中移动 (在第一列 { 之间跳动,
一次一个函数,一个结构或类的定义)
[# 和 ]# 在 #if #else #endif 的上下位置间移动
[{    ]}
[(    ])
[/    ]/ 在注释 /* */ 间移动
这样在这些块的中间位置, 就能迅速到块头和块尾
如果已经在这些行上, 如果不是到对应点,
会到上一级范围, 如 { 上按 [{ 到上一级
]}  则到对应点
(vim 里常用 [ 表示 "向上",
] 表示 "向下",
比如上面的例子, 以及 [i ]i, diff 时候的 [c ]c 等)
%  在 ()   {}  []  #ifdef #endif  /* */之间跳转
可以 :so  $VIMRUNTIME/macros/matchit.vim
这样可以在 if endif <\tr> 之间使用
对 1 个块的操作, 具体 :h v_a
里面的 iX aX 什么的都很好用
ctags 用 -a 附加新 tags 到 ctags 文件后
--- 对 c
--- ctags  -R  --c-types=+px  d:\mingw\include (etags)
--- 因为 ctags 确省不把函数声明作为 tag
--- 对 c++
--- ctags -R --language-force=c++ --c++-types=+px --verbose --extra=+q
extra=+q 用来增加生成 Class::member 的形式, 默认没有
这样就可以用 :ts CView::OnDraw 这种形式看
--- 因为 c++ 一些头文件不用 .h 所以要用 --language-force
--- 对 java
--- ctags -R --languages=java c:/jdk131/src
--- 要把 src.jar 展开
:che    检查 include 的文件在 path 中是否存在, 注意会递归验证
插入模式
------------------------------
insert 模式下的:
CTRL-W      回删一个 word, 具体 :h i_ctrl-w
CTRL-U      回删在当前行输入的内容
CTRL-R      用某个 reg 的内容
CTRL-E
CTRL-Y
0CTRL-D      这 2 个对缩进, 具体 :h i_0_CTRL-D
^CTRL-D
CTRL-C      退出 insert
另外, ascii 第 1 - 26 个对应的就是 CTRL-A 到 CTRL-Z
所以下面几个也常用
CTRL-H  对
CTRL-J  对 vim 里叫
CTRL-M  对
不使用 ab:  输入 缩写 后, 按 ctrl-v 接着输入以后的字符
--
石敬瑭骂名千古
吴三桂遗臭万年
※ 来源:·BBS 水木清华站 smth.org·[FROM: 166.111.206.106]