本文共 2154 字,大约阅读时间需要 7 分钟。
转载自:http://www.csser.com/board/4f4f9083735faf2d1a000a28
跳转到指定行
跳转到指定行
:line_number
回车,则光标跳转到 line_number 行,如果 line_number 超过文档总行数,则跳转到最后一行。
搜索查找字符
搜索查找字符
通常的编辑器查找字符用 CTRL + f 组合键,假如查找文档中的
csser
字符串,VIM 中在 normal 模式下:
/csser
回车,然后按小写 n 查找下一个,大写 N 查找上一个。
匹配括号
匹配括号
在normal模式下,当光标在可配对的符号上时,如(, [, { 时,按下%,光标会跳转到对应的封闭符号上。
让配置脚本(.vimrc)立刻生效
让配置脚本(.vimrc)立刻生效
在配置vim时,有时候我们想立刻就看到效果,如果你不知道如何执行当前脚本,那么你需要退出VIM再重新进入,很麻烦。
source表示运行后续文件,而在命令行中,% 代表当前文件。
直接调用系统命令
直接调用系统命令
在命令行窗口,首先输入叹号( ! ),再输入目标命令,就能直接调用系统命令。
拷贝(粘贴)内容至剪贴板
拷贝(粘贴)内容至剪贴板
拷贝: 在可视模式下,选中需要拷贝的内容,按 "+y 将内容拷贝至剪贴板
粘贴: 在插入模式下,直接按 shift+insert,将插入剪贴板内容。
1:使用vim -d file1 file2 直接打开两个文件对比
或:使用vim file1打开第一个文件,然后使用vert diffsplit file2打开第二个文件进行对比;
(vert表示垂直分割窗口,默认为水平分割窗口)
2:直接对比两个文件的不同:使用diffthis分别在两个窗口输入;
3:其他技巧:
3.1:定位不同点:[c、]c 分别跳到前一个、后一个不同点;
3.2:窗口跳转:ctrl-w w 跳到下一个窗口
ctrl-w h/l 跳到左侧(右侧)窗口
ctrl-w j/k 跳到上方(下方)窗口
3.3:文档合并:dp将差异点的当前文档内容合并到另外一个文档(diff put)
do 将差异点的另一个文档内容拷贝到当前文档
3.4:打开文件折叠:(文本默认将部分内容折叠,扩大视野)
zo 临时展开被折叠的相同内容
zc 重新折叠
===========================================new=============================================
1. 使用vim的比较模式打开两个文件:
vim -d file1 file2
或
vimdiff file1 file2
2. 如果已经打开了文件file1,再打开另一个文件file2进行比较:
:vert diffsplit file2
如果没有用vert命令,diffsplit则会分上下两个窗口。
3. 如果已经用split方式打开了两个文件file1,file2,又想比较两文件的不同。
分别在两个窗口里面输入命令:
:diffthis
4. 如果更改了某个窗口的内容,vim又没有自动更新diff检查,可以使用如下命令更新:
:diffupdate
5. 定位到不同点:
[c 跳到前一个不同点
]c 跳到后一个不同点
6. 在窗口间跳转:
ctrl-w w 跳到下一个窗口
ctrl-w h 跳到左侧窗口
ctrl-w l 跳到右侧窗口
ctrl-w j 跳到下方的窗口
ctrl-w k 跳到上方的窗口
7. 合并文档:
dp 将差异点的当前文档内容应用到另一文档(diff put)
do 将差异点的另一文档的内容拷贝到当前文档(diff get)
8. 上下文的展开和查看
比较和合并文件的时候经常需要结合上下文来确定最终要采取的操作。Vimdiff 缺省是会把不同之处上下各 6 行的文本都显示出来以供参考。其他的相同的文本行被自动折叠。如果希望修改缺省的上下文行数为3行,可以这样设置:
:set diffopt=context:3
可以用简单的折叠命令来临时展开被折叠的相同的文本行:
zo (folding open, z这个字母看上去比较像折叠的纸)
然后可以用下列命令来重新折叠:
zc (folding close)
转载于:https://blog.51cto.com/noworry/1105129