如题所述
一、移动光标
h,j,k,l 上,下,左,右ctrl-e 移动页面ctrl-f 上翻一页ctrl-b 下翻一页ctrl-u 上翻半页ctrl-d 下翻半页w 跳到下一个字首,按标点或单词分割W 跳到下一个字首,长跳,如end-of-line被认为是一个字e 跳到下一个字尾E 跳到下一个字尾,长跳b 跳到上一个字B 跳到上一个字,长跳0 跳至行首,不管有无缩进,就是跳到第0个字符^ 跳至行首的第一个字符$ 跳至行尾gg 跳至文首G 调至文尾5gg/5G 调至第5行gd 跳至当前光标所在的变量的声明处fx 在当前行中找x字符,找到了就跳转至; 重复上一个f命令,而不用重复的输入fx* 查找光标所在处的单词,向下查找# 查找光标所在处的单词,向上查找
二、删除复制
dd 删除光标所在行dw 删除一个字(word)d/D删除到行末x删除当前字符X删除前一个字符yy复制一行yw复制一个字y/D删除到行末x删除当前字符X删除前一个字符yy复制一行yw复制一个字y/Y 复制到行末p 粘贴粘贴板的内容到当前行的下面P 粘贴粘贴板的内容到当前行的上面
三、插入模式
i 从当前光标处进入插入模式I 进入插入模式,并置光标于行首a 追加模式,置光标于当前光标之后A 追加模式,置光标于行末o 在当前行之下新加一行,并进入插入模式O 在当前行之上新加一行,并进入插入模式Esc 退出插入模式
四、编辑
J 将下一行和当前行连接为一行cc 删除当前行并进入编辑模式cw 删除当前字,并进入编辑模式c$ 擦除从当前位置至行末的内容,并进入编辑模式s 删除当前字符并进入编辑模式S 删除光标所在行并进入编辑模式xp 交换当前字符和下一个字符u 撤销ctrl+r 重做~ 切换大小写,当前字符>> 将当前行右移一个单位<< 将当前行左移一个单位(一个tab符)== 自动缩进当前行
五、查找替换
/pattern 向后搜索字符串pattern?pattern 向前搜索字符串pattern\"\\c\" 忽略大小写\"\\C\" 大小写敏感
n 下一个匹配(如果是/搜索,则是向下的下一个,?搜索则是向上的下一个)N 上一个匹配(同上):%s/oldew/g 搜索整个文件,将所有的old替换为new:%s/oldew/gc 搜索整个文件,将所有的old替换为new,每次都要你确认是否替换
六、退出编辑器
:w 将缓冲区写入文件,即保存修改:wq 保存修改并退出:x 保存修改并退出:q 退出,如果对缓冲区进行过修改,则会提示:q! 强制退出,放弃修改
七、多文件编辑
vim file1.. 同时打开多个文件:args 显示当前编辑文件:next 切换到下个文件:prev 切换到前个文件:next! 不保存当前编辑文件并切换到下个文件:prev! 不保存当前编辑文件并切换到上个文件:wnext 保存当前编辑文件并切换到下个文件:wprev 保存当前编辑文件并切换到上个文件:first 定位首文件:last 定位尾文件ctrl+^ 快速在最近打开的两个文件间切换:split[sp] 把当前文件水平分割:split file 把当前窗口水平分割, file:vsplit[vsp] file 把当前窗口垂直分割, file:new file 同split file:close 关闭当前窗口:only 只显示当前窗口, 关闭所有其他的窗口:all 打开所有的窗口:vertical all 打开所有的窗口, 垂直打开:qall 对所有窗口执行:q操作:qall! 对所有窗口执行:q!操作:wall 对所有窗口执行:w操作:wqall 对所有窗口执行:wq操作ctrl-w h 跳转到左边的窗口ctrl-w j 跳转到下面的窗口ctrl-w k 跳转到上面的窗口ctrl-w l 跳转到右边的窗口ctrl-w t 跳转到最顶上的窗口ctrl-w b 跳转到最底下的窗口
八、多标签编辑
:tabedit file 在新标签中打开文件file:tab split file 在新标签中打开文件file:tabp 切换到前一个标签:tabn 切换到后一个标签:tabc 关闭当前标签:tabo 关闭其他标签gt 到下一个tabgT 到上一个tab0gt 跳到第一个tab5gt 跳到第五个tab
九、执行shell命令
1、在命令模式下输入\":sh\",可以运行相当于在字符模式下,到输入结束想回到VIM编辑器中用exit,ctrl+D返回VIM编辑器2、可以\"!command\",运行结束后自动回到VIM编辑器中3、用“Ctrl+Z“回到shell,用fg返回编辑4、:!make -> 直接在当前目录下运行make指令
十、VIM启动项
-o[n] 以水平分屏的方式打开多个文件-O[n] 以垂直分屏的方式打开多个文件
十一、自动排版
在粘贴了一些代码之后,vim变得比较乱,只要执行gg=G就能搞定
十二、如何在vim中编译程序
在vim中可以完成make,而且可以将编译的结果也显示在vim里,先执行 :copen 命令,将结果输出的窗口打开,然后执行 :make编译后的结果就显示在了copen打开的小窗口里了,而且用鼠标双击错误信息,就会跳转到发生错误的行。
十三、buffer操作
1、buffer状态- (非活动的缓冲区)a (当前被激活缓冲区)h (隐藏的缓冲区)% (当前的缓冲区)# (交换缓冲区)= (只读缓冲区)+ (已经更改的缓冲区)
十四、 VIM 操作目录
1.打开目录vim .vim a-path/
2.以下操作在操作目录时生效p,P,t,u,U,x,v,o,r,s
c 使当前打开的目录成为当前目录d 创建目录% 创建文件D 删除文件/目录- 转到上层目录gb 转到上一个 bookmarked directoryi 改变目录文件列表方式^l 刷新当前打开的目录
mf - 标记文件mu - unmark all marked filesmz - Compress/decompress marked filesgh 显示/不显示隐藏文件( dot-files)^h 编辑隐藏文件列表a 转换显示模式, all - hide - unhideqf diplay infomation about fileqb list the bookmarked directories and directory traversal historygi Display information on file
mbmcmd - 将标记的文件(mf标记文件)使用 diff 模式me - 编辑标记的文件,只显示一个,其余放入 buffer 中mhmm - move marked files to marked-file target directorymc - copympmrmt
vim 中复制,移动文件1, mt - 移动到的目录2, mf - 标记要移动的文件3, mc - 移动/复制
R 移动文件
打开当前编辑文件的目录:Explore:Hexplore:Nexplore:Pexplore:Sexplore:Texplore:Vexplore
第一种自动模式,当我们跟着光标输入文字的时候,输到一行最后一个字时,如果还是显示不下,系统就会自动切换到下一行。
第二种手动模式,当输入文字不满一行,我们需要切换到下一行的时候,就按enter回车键,就手动切换到下一行了。
在Microsoft Word 中,按Enter键可以跳到下一行。如果你想在同一行上输入多个段落,可以使用Shift+Enter组合键。另外,你也可以通过调整行间距来控制行与行之间的距离。在“段落”对话框中,可以选择单倍行距、1.5倍行距或者双倍行距。由于Word具有不同版本,所以具体的快捷键可能会有所不同,但是这里提到的Enter键和Shift+Enter组合键是Word版本通用的跳行快_
h,j,k,l 上,下,左,右ctrl-e 移动页面ctrl-f 上翻一页ctrl-b 下翻一页ctrl-u 上翻半页ctrl-d 下翻半页w 跳到下一个字首,按标点或单词分割W 跳到下一个字首,长跳,如end-of-line被认为是一个字e 跳到下一个字尾E 跳到下一个字尾,长跳b 跳到上一个字B 跳到上一个字,长跳0 跳至行首,不管有无缩进,就是跳到第0个字符^ 跳至行首的第一个字符$ 跳至行尾gg 跳至文首G 调至文尾5gg/5G 调至第5行gd 跳至当前光标所在的变量的声明处fx 在当前行中找x字符,找到了就跳转至; 重复上一个f命令,而不用重复的输入fx* 查找光标所在处的单词,向下查找# 查找光标所在处的单词,向上查找
二、删除复制
dd 删除光标所在行dw 删除一个字(word)d/D删除到行末x删除当前字符X删除前一个字符yy复制一行yw复制一个字y/D删除到行末x删除当前字符X删除前一个字符yy复制一行yw复制一个字y/Y 复制到行末p 粘贴粘贴板的内容到当前行的下面P 粘贴粘贴板的内容到当前行的上面
三、插入模式
i 从当前光标处进入插入模式I 进入插入模式,并置光标于行首a 追加模式,置光标于当前光标之后A 追加模式,置光标于行末o 在当前行之下新加一行,并进入插入模式O 在当前行之上新加一行,并进入插入模式Esc 退出插入模式
四、编辑
J 将下一行和当前行连接为一行cc 删除当前行并进入编辑模式cw 删除当前字,并进入编辑模式c$ 擦除从当前位置至行末的内容,并进入编辑模式s 删除当前字符并进入编辑模式S 删除光标所在行并进入编辑模式xp 交换当前字符和下一个字符u 撤销ctrl+r 重做~ 切换大小写,当前字符>> 将当前行右移一个单位<< 将当前行左移一个单位(一个tab符)== 自动缩进当前行
五、查找替换
/pattern 向后搜索字符串pattern?pattern 向前搜索字符串pattern\"\\c\" 忽略大小写\"\\C\" 大小写敏感
n 下一个匹配(如果是/搜索,则是向下的下一个,?搜索则是向上的下一个)N 上一个匹配(同上):%s/oldew/g 搜索整个文件,将所有的old替换为new:%s/oldew/gc 搜索整个文件,将所有的old替换为new,每次都要你确认是否替换
六、退出编辑器
:w 将缓冲区写入文件,即保存修改:wq 保存修改并退出:x 保存修改并退出:q 退出,如果对缓冲区进行过修改,则会提示:q! 强制退出,放弃修改
七、多文件编辑
vim file1.. 同时打开多个文件:args 显示当前编辑文件:next 切换到下个文件:prev 切换到前个文件:next! 不保存当前编辑文件并切换到下个文件:prev! 不保存当前编辑文件并切换到上个文件:wnext 保存当前编辑文件并切换到下个文件:wprev 保存当前编辑文件并切换到上个文件:first 定位首文件:last 定位尾文件ctrl+^ 快速在最近打开的两个文件间切换:split[sp] 把当前文件水平分割:split file 把当前窗口水平分割, file:vsplit[vsp] file 把当前窗口垂直分割, file:new file 同split file:close 关闭当前窗口:only 只显示当前窗口, 关闭所有其他的窗口:all 打开所有的窗口:vertical all 打开所有的窗口, 垂直打开:qall 对所有窗口执行:q操作:qall! 对所有窗口执行:q!操作:wall 对所有窗口执行:w操作:wqall 对所有窗口执行:wq操作ctrl-w h 跳转到左边的窗口ctrl-w j 跳转到下面的窗口ctrl-w k 跳转到上面的窗口ctrl-w l 跳转到右边的窗口ctrl-w t 跳转到最顶上的窗口ctrl-w b 跳转到最底下的窗口
八、多标签编辑
:tabedit file 在新标签中打开文件file:tab split file 在新标签中打开文件file:tabp 切换到前一个标签:tabn 切换到后一个标签:tabc 关闭当前标签:tabo 关闭其他标签gt 到下一个tabgT 到上一个tab0gt 跳到第一个tab5gt 跳到第五个tab
九、执行shell命令
1、在命令模式下输入\":sh\",可以运行相当于在字符模式下,到输入结束想回到VIM编辑器中用exit,ctrl+D返回VIM编辑器2、可以\"!command\",运行结束后自动回到VIM编辑器中3、用“Ctrl+Z“回到shell,用fg返回编辑4、:!make -> 直接在当前目录下运行make指令
十、VIM启动项
-o[n] 以水平分屏的方式打开多个文件-O[n] 以垂直分屏的方式打开多个文件
十一、自动排版
在粘贴了一些代码之后,vim变得比较乱,只要执行gg=G就能搞定
十二、如何在vim中编译程序
在vim中可以完成make,而且可以将编译的结果也显示在vim里,先执行 :copen 命令,将结果输出的窗口打开,然后执行 :make编译后的结果就显示在了copen打开的小窗口里了,而且用鼠标双击错误信息,就会跳转到发生错误的行。
十三、buffer操作
1、buffer状态- (非活动的缓冲区)a (当前被激活缓冲区)h (隐藏的缓冲区)% (当前的缓冲区)# (交换缓冲区)= (只读缓冲区)+ (已经更改的缓冲区)
十四、 VIM 操作目录
1.打开目录vim .vim a-path/
2.以下操作在操作目录时生效p,P,t,u,U,x,v,o,r,s
c 使当前打开的目录成为当前目录d 创建目录% 创建文件D 删除文件/目录- 转到上层目录gb 转到上一个 bookmarked directoryi 改变目录文件列表方式^l 刷新当前打开的目录
mf - 标记文件mu - unmark all marked filesmz - Compress/decompress marked filesgh 显示/不显示隐藏文件( dot-files)^h 编辑隐藏文件列表a 转换显示模式, all - hide - unhideqf diplay infomation about fileqb list the bookmarked directories and directory traversal historygi Display information on file
mbmcmd - 将标记的文件(mf标记文件)使用 diff 模式me - 编辑标记的文件,只显示一个,其余放入 buffer 中mhmm - move marked files to marked-file target directorymc - copympmrmt
vim 中复制,移动文件1, mt - 移动到的目录2, mf - 标记要移动的文件3, mc - 移动/复制
R 移动文件
打开当前编辑文件的目录:Explore:Hexplore:Nexplore:Pexplore:Sexplore:Texplore:Vexplore
第一种自动模式,当我们跟着光标输入文字的时候,输到一行最后一个字时,如果还是显示不下,系统就会自动切换到下一行。
第二种手动模式,当输入文字不满一行,我们需要切换到下一行的时候,就按enter回车键,就手动切换到下一行了。
在Microsoft Word 中,按Enter键可以跳到下一行。如果你想在同一行上输入多个段落,可以使用Shift+Enter组合键。另外,你也可以通过调整行间距来控制行与行之间的距离。在“段落”对话框中,可以选择单倍行距、1.5倍行距或者双倍行距。由于Word具有不同版本,所以具体的快捷键可能会有所不同,但是这里提到的Enter键和Shift+Enter组合键是Word版本通用的跳行快_
温馨提示:答案为网友推荐,仅供参考