viim编辑器
文本:纯文本,ASCII test;
文本编辑种类:
行编辑器:sed
全屏编辑器:nano,vi
其他编辑器:
gedit 一个简单的图形编辑器
gvim 一个vim编辑器的图形版本
一.打开文件几种方法
命令格式:
vim [options] [files]
常用选项:
+#:打开文件后,直接让光标处于第#行的行首
+/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行
PATTERB匹配到的行的行首
vim+file 直接打开file,光标在最后一行
vim -b file 二进制方式打开文件
vim -d file1 file2 ... 比较多个文件
vim -m file 以只读的方式打开文件
ex file 或 vim -e 直接进入命令行模式
二.2种模式关闭文件方法:
扩展命令模式:
:q 退出
:q! 强制退出,不保存此前的编辑操作
:wq 保存并退出
:x 保存并退出
一般模式:
ZZ:保存退出
ZQ:不保存退出
三.模式详解
三种主要模式:
一般模式:移动光标,剪切/粘贴文本
编辑模式:修改文本
命令模式:保存退出等
一.一般模式
一般模式可用按钮说明,光标移动,复制粘贴,查找替换
(1)光标移动
字符间跳转:
h:左 l:右 j:下 k:上 (和左右上下箭头功能一样)
支持数字跳转: #{h|j|k|l} 跳转由#号指定的个数的字符
单词间移动:可以使用 w,e,b键来进行移动
w:下一个单词词首
e:当前单词或下一个单词词首
b:当前单词或前一个单词词首
#{w|e|b}
屏幕上下移动
ctrl+f 屏幕向下移动一页等于Pagedown按键(常用)
ctrl+b 屏幕向下移动一页等于Pageup按键(常用)
ctrl+d 屏幕向下移动半页
ctrl+b 屏幕向上移动半页
H 光标移动到这个屏幕的最上方那一行的第一个字符
M 光标移动到这个屏幕的中央那一行的第一个字符
L 光标移动到这个屏幕的最下方那一行的第一个字符
G 移动到这个文件的最后一行(常用)
nG 移动到这个文件的第n行
gg 移动到这个文件的第一行 相当于1G
n[enter] n为数字,光标向下移动n行
行间移动
0 数字"0" 移动到这一行最前面的字符(常用)
$ 移动到这一行的最后面字符(常用)
(2)查找与替换
/word 向下寻找一个名为word的单词
?word 向上寻找一个名为word 的字符串
n 重复前一个查找的操作
N 与n正好相反 "反向"进行前一个查找操作
(3)删除,复制,粘贴
x,X x向后删除一个字符 X向前删除一个字符
nx n为数字,向后删除n个字符
dd 删除光标所在的那一整行(常用)
ndd n为数字 删除光标所在行的向下n行
d1G 删除光标所在到第一行的所有数据
dG 删除光标所在到最后一行的所有数据
d$ 删除光标所在到这一行最后一个字符的所有数据
d0 删除光标所在到这一行第一个字符间的所有数据
yy 复制光标所在的 那一行(常用)
nyy n为数字,复制光标所在行到向下的n行
y1G 复制光标所在行到第一行的所有数据
yG 复制光标所在行到最后一行的数据
y0 复制光标所在行的字符到行首的所有字符
y$ 复制光标所在行的字符到行尾的所有字符
pP p将一复制的数据在光标下一行粘贴,P则为粘贴到上一行
J 将光标所在行与下一行的数据结合成同一行
c 重复删除多个数据,例如向下删除向下删除10行
cc 删除当前行并输入新内容
u 复原前一个操作(常用)
ctrl+r 重做上一个操作(常用)
二. 编辑模式
一般模式切换到编辑模式可用的按钮说明
i,I 进入插入模式 i为从目前光标所在处插入,I为在目前所在行的第一个非空格符处开始插入(常用)
a,A 进入插入模式 a为从目前光标所在的下一个字符处开始插入,A为从光标所在行的最后一个字符插入
o,O 进入插入模式 o为字母 o为在目前光标所在的下一行处插入新的一行 O为在目前光标所在处的上一行插入新的一行(常用)
r,R 进入插入模式 r只会替换光标所在的那一个字符一次,R会一直替换光标所在的文字,直到按下esc键为止(常用)
三. 命令行模式
:w 将编辑的数据写入硬盘文件中(常用)
:w! 若文件为只读时,强制写入该文件
:q 离开vi(常用)
:q! 若曾修改文件又不想保存,用!强制离开
:wq 保存后离开
ZZ 若文件没有改动,不保存离开;若文件有改动,保存离开
:w[filename] 将编辑的文件保存到另一个文件
:r[filename] 在编辑的数据中,读入另一个文件的数据,即将"filename"这个文件内容加到光标所在行的后面
:n1,n2 w[filename] 将n1到n2的内容保存成filename这个文件
:!command 暂时离开vi到命令行模式下执行command的显示结果
命令行模式:对当前vim进程有效
(1)行号
:set nu 显示行号,设置之后,会在每一行的 显示该行的行号
:set nonu 与set nu 相反,为取消行号
(2)括号成对匹配
:set showmatch 匹配
:set nosm 取消
(3)自动缩进
:set ai 启用
:set noai 禁用
(4)高亮搜索
:set hlsearch
:set nohlsearch
(5) 语法高亮
:syntax on 启用
:syntax off 禁用
(6)忽略字符的大小写
:set ic 启用
:set noic 不忽略
(7)文件格式
:fileformat+unix 启用
:fileformat=dos
(8)设置文本宽度
:set textwidth=65(vim only)
:set wrapmargin=15