如题所述
1、光标的移动:
这里说的光标移动是指在正常模式下光标的移动。
最简单是方向键,它即使在插入模式下仍可使用,但不是最方便。
h 在当前行向左移动一个字符,或者Backspace。
j 移动到下一行,或者Enter。
k 移动到上一行,或者- 号。
l 在当前行向右移动一个字符,或者空格键Space。
Ctrl +f 向前滚动一页,或者PageDown。
Ctrl +b 向后滚动一页,或者PageUp。
0(零) 移至行首(包含空白字符,如缩进的空格),或是Home 键。
$ 移至行尾, 或End 键。
^ 移到行首第一个非空白字符。
G 移动到文档末尾,或者
gg 移动到文档开头。
w 移动到下一word的开头。
b 移动到上一word的开头。
e 移动到本word或者下个word的末尾。
ge 移动到上个word的末尾。
大写的W B E 和w b e 效果一样但会忽略像. - 等特殊字符。
中文因为是连在一起的,所以如果没有空格或者数字、英文标点的话,将视为一个word。
( 光标移至句首,句子是以. ? ! 标点来判断的。
) 光标移至句尾
{ 光标移至段落的开头,段落是以空白行来判断的。
} 光标移至段落的结尾
H 将光标移至屏幕顶第一个非空白字符。
M 光标移至屏幕中间第一个非空白字符。
L 光标移至屏幕底第一个非空白字符。这和PageDown,PageUp 不一样,内文内容并未动,只是光标在动而已。
:n 将光标定位到第n行。
n| 将光标移动到本行第n个字符。
怎么在windows下使用gvim
2模式编辑:
vim常用的模式有:
命令模式(command-mode),插入模式(insert-mode),可视模式(visual-mode),正常模式(normal-mode)。
模式的转换:
①其它模式==>命令模式
按Esc键
②正常模式==>插入模式
按i 在光标前插入
按I 在行首插入
按a 在光标后插入
按s 删除光标所在的字符再插入
按A 在行末插入
按o 在当前行之下新建行
按O 在当前行之上新建行
按S 删除光标所在行再插入
③正常模式==>命令模式
按: (shift 加分号)
④正常模式==>可视模式
按v 可视模式
按V 可视块模式
3打开和退出:
:e test.txt 打开test.txt文件进行编辑,文件不存在则创建。
:w 保存文档,但不退出vim编辑器。[3]
:q 不保存文档,退出vim编辑器。
:wq 保存文档然后退出vim编辑器。按ZZ(注意Z是大写的,并且不是在命令模式)或者:x效果是一样的。
:q! 放弃所有修改强制退出,按:q不能退出时就试试这个吧。
4文件操作:Exp 浏览文件夹:Sex 分割窗口浏览文件夹:args查看当前打开的所有文件:ls 显示缓冲区:cd 显示当前文件夹
大小写转换guu 将当前行全部小写gUU 将当前行全部大写Vu 将选中的行(单行或多行)全部小写VU 将选中的行(当行或多行)全部大写g~~ 将当前行小写的转换成大写, 大写的转换成小写
insert模式ctrl+n(p) 自动补全ctrl+w 回删一个wordctrl+u删除到行首(包括行首空白)ctrl+t 向右缩进ctrl+d 向左缩进ctrl+h 对应Backspace键ctrl+j 对应回车键ctrl+m 貌似也是回车键
使用 Ctrl-O 就可以临时切换到 normal mode, 执行一个命令后自动返回 insert mode。
"{a-z} yy 将复制的行存储在[a-z]指定的存储器中
nG 移动到第n行// 重复上一次/<regexp>搜索
5编辑(缩进,全文缩进)x 删除当前光标文字
J 将下一行接到当前行末尾
rx 将当前光标字符替换为x
. 重复前一个编辑操作命令,dd...会删除4行文字, J....可以连接4行文字
d 可以用来结合任何移动命令
dw 删除当前光标到下一个单词开始处的内容
d% 删除范围首尾字符之间的内容
d) 删除到下一个句子结束的位置
d} 删除当前段落的剩余内容
du 取消删除准备
I 在当前行开始插入
A 在当前行末尾开始插入
o 在当前行下新建一空行以供插入
O 会在当前上方新建一空行
cc 用空白行代替当前行内容
c$ 删除当前位置到当前行结束内容
c0 删除当前位置到当前行开始内容
== 对当前行自动缩进
gg=G 对全文进行自动缩进
<<(>>) 对整行进行缩进
6视图模式ctrl+q 块选择
替换:s/regexp/replacement/g 替换当前行:%s/regrep/replacement/g 全文替换, 如果一行有多个匹配只替换第一个:%s/regexp/replacement/gc 全文替换, 并在每次替换之前进行提示:%s/str/\r/g替换并换行
养成每次编辑之后随时按esc退出插入模式进入命令模式的习惯
能熟练使用各种组合命令是vi高手的一个标志
7常用插件calendar:\cal 左边垂直位置打开日历\caL下面水平位置打开日历:Calendar year month 根据制定的日期打开日历t 回到今天q 退出日历
MRU 最近打开的文件:MRU 显示最近打开的文件列表
NERDTree 在左边显示文件目录:NERDTree 打开NERDTree插件o 展开折叠选中文件夹t 在tab页打开选中文件T 在后台标签页打开! 执行此文件p 到上层目录P 到根目录K 到第一个节点J 到最后一个节点u 回到上层目录m 显示文件系统菜单? 帮助q 退出
8如何找到上次编辑的文件? Ctrl+O (按两次)
9如何选择、复制或者查找光标所在的单词? 在VIM中用iw或者aw表示一个单词,两者稍有区别。
选择光标所在的单词:viw (v进入visual模式,然后iw)
复制光标所在的单词:yiw
10如何去掉或者插入^M这样的字符? 在VIM的插入模式或者命令行中用输入^M这样的特殊字符,例如输入:%s///g实际显示是:%s/^M//g就可以去掉文件中所有的^M。同理,要在文件中输入^M只要按即可。这个问题往往发生在WINDOWS/DOS系统和UNIX系统之间交换文件时,因为这两类系统对于文本的“换行”概念解释不同。所以,还有一个解决方法就是对这类文本进行转换。vim内部就可以做这件事情。首先打开文本,然后set fileformat=unix再从新保存该文件复盖原文件就可以去除:^M了
这里说的光标移动是指在正常模式下光标的移动。
最简单是方向键,它即使在插入模式下仍可使用,但不是最方便。
h 在当前行向左移动一个字符,或者Backspace。
j 移动到下一行,或者Enter。
k 移动到上一行,或者- 号。
l 在当前行向右移动一个字符,或者空格键Space。
Ctrl +f 向前滚动一页,或者PageDown。
Ctrl +b 向后滚动一页,或者PageUp。
0(零) 移至行首(包含空白字符,如缩进的空格),或是Home 键。
$ 移至行尾, 或End 键。
^ 移到行首第一个非空白字符。
G 移动到文档末尾,或者
gg 移动到文档开头。
w 移动到下一word的开头。
b 移动到上一word的开头。
e 移动到本word或者下个word的末尾。
ge 移动到上个word的末尾。
大写的W B E 和w b e 效果一样但会忽略像. - 等特殊字符。
中文因为是连在一起的,所以如果没有空格或者数字、英文标点的话,将视为一个word。
( 光标移至句首,句子是以. ? ! 标点来判断的。
) 光标移至句尾
{ 光标移至段落的开头,段落是以空白行来判断的。
} 光标移至段落的结尾
H 将光标移至屏幕顶第一个非空白字符。
M 光标移至屏幕中间第一个非空白字符。
L 光标移至屏幕底第一个非空白字符。这和PageDown,PageUp 不一样,内文内容并未动,只是光标在动而已。
:n 将光标定位到第n行。
n| 将光标移动到本行第n个字符。
怎么在windows下使用gvim
2模式编辑:
vim常用的模式有:
命令模式(command-mode),插入模式(insert-mode),可视模式(visual-mode),正常模式(normal-mode)。
模式的转换:
①其它模式==>命令模式
按Esc键
②正常模式==>插入模式
按i 在光标前插入
按I 在行首插入
按a 在光标后插入
按s 删除光标所在的字符再插入
按A 在行末插入
按o 在当前行之下新建行
按O 在当前行之上新建行
按S 删除光标所在行再插入
③正常模式==>命令模式
按: (shift 加分号)
④正常模式==>可视模式
按v 可视模式
按V 可视块模式
3打开和退出:
:e test.txt 打开test.txt文件进行编辑,文件不存在则创建。
:w 保存文档,但不退出vim编辑器。[3]
:q 不保存文档,退出vim编辑器。
:wq 保存文档然后退出vim编辑器。按ZZ(注意Z是大写的,并且不是在命令模式)或者:x效果是一样的。
:q! 放弃所有修改强制退出,按:q不能退出时就试试这个吧。
4文件操作:Exp 浏览文件夹:Sex 分割窗口浏览文件夹:args查看当前打开的所有文件:ls 显示缓冲区:cd 显示当前文件夹
大小写转换guu 将当前行全部小写gUU 将当前行全部大写Vu 将选中的行(单行或多行)全部小写VU 将选中的行(当行或多行)全部大写g~~ 将当前行小写的转换成大写, 大写的转换成小写
insert模式ctrl+n(p) 自动补全ctrl+w 回删一个wordctrl+u删除到行首(包括行首空白)ctrl+t 向右缩进ctrl+d 向左缩进ctrl+h 对应Backspace键ctrl+j 对应回车键ctrl+m 貌似也是回车键
使用 Ctrl-O 就可以临时切换到 normal mode, 执行一个命令后自动返回 insert mode。
"{a-z} yy 将复制的行存储在[a-z]指定的存储器中
nG 移动到第n行// 重复上一次/<regexp>搜索
5编辑(缩进,全文缩进)x 删除当前光标文字
J 将下一行接到当前行末尾
rx 将当前光标字符替换为x
. 重复前一个编辑操作命令,dd...会删除4行文字, J....可以连接4行文字
d 可以用来结合任何移动命令
dw 删除当前光标到下一个单词开始处的内容
d% 删除范围首尾字符之间的内容
d) 删除到下一个句子结束的位置
d} 删除当前段落的剩余内容
du 取消删除准备
I 在当前行开始插入
A 在当前行末尾开始插入
o 在当前行下新建一空行以供插入
O 会在当前上方新建一空行
cc 用空白行代替当前行内容
c$ 删除当前位置到当前行结束内容
c0 删除当前位置到当前行开始内容
== 对当前行自动缩进
gg=G 对全文进行自动缩进
<<(>>) 对整行进行缩进
6视图模式ctrl+q 块选择
替换:s/regexp/replacement/g 替换当前行:%s/regrep/replacement/g 全文替换, 如果一行有多个匹配只替换第一个:%s/regexp/replacement/gc 全文替换, 并在每次替换之前进行提示:%s/str/\r/g替换并换行
养成每次编辑之后随时按esc退出插入模式进入命令模式的习惯
能熟练使用各种组合命令是vi高手的一个标志
7常用插件calendar:\cal 左边垂直位置打开日历\caL下面水平位置打开日历:Calendar year month 根据制定的日期打开日历t 回到今天q 退出日历
MRU 最近打开的文件:MRU 显示最近打开的文件列表
NERDTree 在左边显示文件目录:NERDTree 打开NERDTree插件o 展开折叠选中文件夹t 在tab页打开选中文件T 在后台标签页打开! 执行此文件p 到上层目录P 到根目录K 到第一个节点J 到最后一个节点u 回到上层目录m 显示文件系统菜单? 帮助q 退出
8如何找到上次编辑的文件? Ctrl+O (按两次)
9如何选择、复制或者查找光标所在的单词? 在VIM中用iw或者aw表示一个单词,两者稍有区别。
选择光标所在的单词:viw (v进入visual模式,然后iw)
复制光标所在的单词:yiw
10如何去掉或者插入^M这样的字符? 在VIM的插入模式或者命令行中用输入^M这样的特殊字符,例如输入:%s///g实际显示是:%s/^M//g就可以去掉文件中所有的^M。同理,要在文件中输入^M只要按即可。这个问题往往发生在WINDOWS/DOS系统和UNIX系统之间交换文件时,因为这两类系统对于文本的“换行”概念解释不同。所以,还有一个解决方法就是对这类文本进行转换。vim内部就可以做这件事情。首先打开文本,然后set fileformat=unix再从新保存该文件复盖原文件就可以去除:^M了
温馨提示:答案为网友推荐,仅供参考