Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104998
  • 博文数量: 33
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 45
  • 用 户 组: 普通用户
  • 注册时间: 2016-11-04 11:29
个人简介

所学,所得,所知

文章分类

全部博文(33)

文章存档

2017年(28)

2016年(5)

我的朋友

分类: LINUX

2017-02-07 16:19:33

原文地址:vim文本编辑器的使用 作者:lgh189491

vi和vim:vi是Visual interface的简称,它为用户提供了一个全屏幕的的窗口编辑器,vi是Linux和UNIX系统中标准的文本编辑器,vim是Vi的增强版,即Vi Improved。
vim有三种编辑模式:命令行模式(command mode),输入模式(input mode),末行模式(last line Mode)。
(1) 命令行模式:
命令行模式是用户进入Vim后的初始状态,在此模式中可以Vim的命令,完成不同的工作处理。从命令行模式也可以切换到其他两种模式中,也可以从其他两种模式切换回命令行模式。在输入模式下按Esc或者是在末行模式下输入了错误的命令都会返回到命令行模式。
Vim命令行模式常用的命令:

操作
说明
操作

0
游标移到行首'硬行首'
$
游标至行末
d+方向键
删除文字
dd
删除一整行
yy
整行复制
p 粘贴复制的文字
h ,j , k , l
方向:往左,往下,往上,往右
Ctrl+f
向下翻页
Ctrl+b
向上翻页
J
合并两行
H
屏幕顶行
L
屏幕底行
K
帮助
B/b
前一个单词
W/w
下一个单词
E/e
词尾

vim命令模式下常用的删除命令有:
操作
说明
操作
说明
d0
删除至行首,或d^(不含游标所在字符)
D
删除至行尾,或d$(含光标所在处字符)
dd
删除一整行
x
删除光标所在处的字符,也可以用Del键
dG
删除至文件尾
X
删除光标前的字符,不可使用Del
d1G
删除至文件首
u
撤销误操作的命令
dw
删除一个字



Vim命令模式下常用的复制和粘贴命令:
操作
说明
操作
说明
yy  |  Y
复制光标所在的整行
yG
复制至文件尾
2yy  |   y2y
复制两行,可以举一反三如5yy
y1G
复制到文件首
y^   |   y0
复制至行首,不含光标所在处的字符
p小写
粘贴到光标的后面,如果复制的是整行,粘贴到光标所在行的下一行
y$
复制至行尾,含光标所在处的字符
P大写
粘贴到光标前面,如果复制的整行,粘贴到光标所在行的上一行
y2w
复制两个字
yw
复制一个word

(2)输入模式:
    在输入模式下可以对编辑的文件添加新的内容,也就是文本的输入或者删除。要进入输入模式可以按 a/A,i/I,o/O键,功能
输入 说明
输入
说明
a
从光标开始的位置后面插入新的内容
A
从光标所在行的最后面插入新的内容
i
 从光标所在位置的前面开始插入新的内容
I
从光标所在行的第一个非空白字符前面插入新内容
o
在光标所在行的下面新增一行
O
在光标所在行的上面新增一行

(3) 末行模式:
    末行模式主要是进行文字编辑的辅助功能,字符串查找,替代,保存文件等。在命令行模式下输入 ':' , '/' , '?'字符,就可以进入末行模式,在这个模式下,如果完成了输入的命令或者命令出错就会退出vim或者返回命令模式。
  
输入
说明
q
   结束Vim程序,如果文件有过修改,那么必须先存储文件
q!
   强制结束Vim程序,修改后的文件不会存储
wq
   存储并结束Vim程序
e
   添加文件,可赋值文件名称
n
   加在赋值的文件

替换模式:
替换命令的格式为:[range]s/pattern/string/[c,e,g,i]
range: 指的是范围,"1,8" 指从第1行到第8行,"1,$"从第1行到最后一行,也就是整篇文章,%是目前编辑的文件。
s(search):  表示搜索。
pattern:就是要被替换的字符串。
string:将替换pattern。
c(confirm): 每次替换前都会询问。
e(error): 不显示error。
g(global):  不询问,将做整行替换。
i(ignore):不分大小写。
g大概都要加,否则只会替换每一行的第一个符合的字符串。可以合起来用,比如cgi,表示不区分大小写整行替换,替换前要询问是否替换。

查找:
在命令行模式下,按/键进入末行模式,可以使用查找功能,在/后面加入要查找的内容,然后按Enter键,查找命令如下:
操作
说明
/
在命令模式下,按/键会在左下角出现一个'/', 然后输入要查找的字符串,按Enter键进行开始查找
?
和/键一样,只是/键是向前(下)查找,?键则是向后(上)查找。
n
往前继续查找
N
反向继续查找


下面这个图大致概括vim常用的一些命令:


附加功能:
在终端下使用vim进行编辑时,默认情况下,
编辑的界面上是没有显示行号、语法高亮度显示、智能缩进等功能的。
为了更好的在vim下进行工作,需要手动设置一个配置文件:.vimrc。 在启动vim时,当前用户根目录下的.vimrc文件会被自动读取,该文件可以包含一些设置甚至脚本,所以,一般情况下把.vimrc文件创建在当前用户的根目录下比较方便,即创建的命令为:
$vi ~/.vimrc
下面是常用的一些设置:
去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
set nocompatible
显示行号
set nu
检测文件的类型
filetype on
记录历史的行数
set history=1000
背景使用黑色
set background=dark
语法高亮度显示
syntax on
设置匹配模式,比如当输入一个左括号时会匹配相应的那个右括号,相当于自动补齐模式
set showmatch
在编辑过程中,在右下角显示光标位置的状态行
set ruler
默认情况下,寻找匹配是高亮度显示的,该设置关闭高亮显示
set nohls
vim使用自动对齐,也就是把当前行的对起格式应用到下一行
set autoindent
第一行设置tab键为4个空格,第二行设置当行之间交错时使用4个空格
set tabstop=4
set shiftwidth=4
查询时非常方便,如要查找book单词,当输入到/b时,会自动找到第一
个b开头的单词,当输入到/bo时,会自动找到第一个bo开头的单词,依
次类推,进行查找时,使用此设置会快速找到答案,当你找要匹配的单词
时,别忘记回车
set incsearch
修改一个文件后,自动进行备份,备份的文件名为原文件名加“~“后缀
if has(“vms”)
set nobackup
else
set backup
endif

阅读(1644) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~