学习vi和Vim编辑器的前言
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习vi和Vim编辑器的前言相关的知识,希望对你有一定的参考价值。
参考技术A在任何计算机系统中,文本编辑是最常见的任务,而vi是最有用的标准文本编辑器之一。vi可以创建新文件或是编辑既有的纯文本文件。
vi,像许多于Unix早期开发的经典实用工具一样,有一个难于驾驭的名声。Bram Moolenaar的增强同类品,Vim(vi Improved),对于消除产生此印象的原因大有帮助。Vim包含无数的便利、视觉指南以及帮助画面。它或许成为最流行的vi版本,所以本书的第7版在第二部分“Vim'’中奉献了7个新的章节给它。然而,也存在许多其他有价值的vi同类品,我们将其中三个涵盖在第三部分“其他vi同类品”中。
本书的范围
这本书共有18章与4篇附录,分成4个部分。第一部分,基础与高级的vi,可以让你对vi很快地上手:接下来是高级的技巧,可以让你的工作更有效率。
前面两章,第一章“vi文本编辑器”与第二章“简单的文本编辑”,介绍了一些简单的vi命令,供初学者上手。你应该多多练习,直到熟悉为止。当你在第二章学到一些基础的编辑工具后,便可以稍事休息。
但是vi可不是只能做基本的文本编辑而已,它的各种命令与选项都可以简化编辑工作。
第三章“快速移动位置”与第四章“越过基础的藩篱”,重点都是完成任务的简化方式。第一次阅读的时侯,你只需要大致了解vi可做的事以及哪些命令可能对你特别有用即可。因为以后你可以随时回到这些章节,做更深入的研究。
第五章“ex编辑器概述”、第六章“全局替换”与第七章“高级编辑方法”,提供了一些工具,可以让你把许多繁重的编辑工作交给计算机。其中介绍了位于vi底层的ex行编辑器,并且示范了如何在vi中使用ex命令。
第八章“vi同类品的功能总览”,介绍了本书涵盖的四种vi同类品所具备的扩展功能。着重于探讨多窗口的编辑、图形用户界面(GUl)、扩展的正则表达式(reguiar expression)等等简化编辑的功能及其他特色,为后续内容提供概略总图。本章还指出原始vi源代码的取得方式,以便在时下的Unix系统(包括GNU/Linux)上轻易地编译vi。
第二部分“Vim”,则说明一种最受欢迎的vi同类品(就21世纪初期而言)。
第九章“Vim(vi Improved)概述”是对Vim的通论,包括何处可取得用于各种常见操作系统的Vim二进制版本以及一些使用Vim的不同方式。
第十章“Vim对vi的主要改进”,如题所述是描述Vim在vi之上的重大改善,例如内置帮助、对初始化的控制、额外的移动命令,还有扩展的正则表达式。
第十一章“Vim的多窗口功能”,重点在于多个窗口的编辑,这或许是标准vi的最重大附加功能。本章提供所有创建与使用多重窗口的细节。
第十二章“Vim脚本”,深入探讨Vim的命令语法,可编写脚本来自定义或修改Vim以符合需求。大部分创造性的Vim易用功能来自其他用户贡献的脚本,让Vim一并发布。
第十三章“图形化Vim(gvim)”,用于查看Vim在时下GUI环境里的发展,例如商用Unix系统上的标准、GNU/Linux与其他类似Unix的产品以及MS Windows。
第十四章“程序员专用的Vim强化功能”,着重在Vim作为程序员的编辑器,如何拥有超越一般的文本编辑能力。折叠(folding)与大纲功能、智慧缩排、语法高亮显示、“编辑—编译—调试”周期的加速是其中特别有价值的功能。
第十五章“其他好用的Vim功能”,这章有点集大成的意味,涵盖了许多有趣但不适合放在稍早章节的重要内容。
第三部分“其他vi同类品”,讲述了另外三种常用的vi同类品:nvi、elvis、vile。
第十六章“nvi:新的vi”、第十七章“Elvis”、第十八章“vile:类似Emacs的vi”,介绍各种vi的同类品——nvi、elvis、vile,除了讲述如何使用它们扩展自vi的功能,也讨论了各自的特色。
第四部分“附录”,提供了一些有用的参考资料。
. 附录A“vi、ex与Vim编辑器”,列出所有vi与ex命令,以功能排序。同时以字母顺序列出ex命令。另外还收录了用于Vim的精选vi与ex命令。
附录B“设置选项”,列出vi与本书所涵盖的四种同类品所用的set命令选项。
附录C“问题集”,是本书中常见问题的大集合。
附录D“vi与国际互联网”,描述了vi在广大Unix与Internet文化中的地位。
本书写作的方式
撰写这本手册是为了把我们认为vi新手必须了解的知识,让读者有概括性的认识。学习一种新的编辑器并不是容易的事,尤其是像vi的选项这么复杂,更是辛苦。我们努力将基本的概念与命令用浅显易读的方式呈现出来。
在讨论过(到处都适用的)vi的基础后,我们换个话题,深入讨论Vim。然后再回头在vi的范畴内,查看nvi、elvis与vile。接下来说明本书使用的编排惯例。
vi命令的讨论
例如左边的键盘按键图案,标志着这个特殊键盘命令或是相关命令的主要讨论区。你会看到对该命令主要概念的一段简短介绍,接着是介绍各项目的段落。然后会介绍不同任务适合的各种命令,并加上命令的描述与正确的使用语法。
关于第7版的前言
《学习vi和Vim编辑器》(第7版)延续了第六版的所有优秀特色。时间证明Vim是最受欢迎的vi同类品,所以本版特别加重介绍了这个编辑器的内容(也出现在了书名里)。不过,为了尽量照顾广大的vi同类品用户,我们也继续更新了nvi、elvis、vile的内容。
新增内容
以下是本版新增的内容:
·更正了基本内容的错误。
·以7个章节详尽地、无遗漏地介绍Vim。
·更新了nvi、elvis、vile的素材。
·前一版中关于ex与vi的两份参考附录合并为一章,并包含了精选的Vim相关内容。
·其他附录也已更新。
版本
我们测试vi的特性时是使用以下程序:
·以Solaris版的vi作为Unixvi的参考版本
·Keith Bostic的nvi 1.79版
·Steve Kirkendall的elvis 2.2版
·Bram Moolenaar的Vim 7.1版
·Kevin Buettner、Tom Dickey与Paul Fox的Vile 9.6版
Linux学习笔记13——vi和vim编辑器
vi: Visual Interface 可视化接口
vim: VI improved:增强版vi 建议使用!!!
全屏编辑器,模式化编辑器
vim模式:在不同的模式下,敲下的东西被解释的意义是不一样的。
编辑模式(命令模式)
输入模式
末行模式
模式转换:
编辑-->输入:
i: 在当前光标所在字符的前面,转为输入模式;
a: 在当前光标所在字符的后面,转为输入模式;
o: 在当前光标所在行的下方,新建一行,并转为输入模式;
I:在当前光标所在行的行首,转换为输入模式
A:在当前光标所在行的行尾,转换为输入模式
O:在当前光标所在行的上方,新建一行,并转为输入模式;
编辑-->末行:
:
输入-->编辑:
ESC
末行-->编辑:
ESC, ESC
一、打开文件
vim /path/to/somefile
vim +# :打开文件,并定位于第#行
vim +:打开文件,定位至最后一行
vim +/PATTERN : 打开文件,定位至第一次被PATTERN匹配到的行的行首
默认处于编辑模式
二、关闭文件
1、末行模式关闭文件
:q 退出
:wq 保存并退出
:q! 不保存并退出
:w 保存
:w! 强行保存
:wq --> :x
2、编辑模式下退出
ZZ: 保存并退出
三、移动光标(编辑模式)
1、逐字符移动:(上下左右键同样可以)
h: 左
l: 右
j: 下
k: 上
#h: 移动#个字符;
2、以单词为单位移动
w: 移至下一个单词的词首
e: 跳至当前或下一个单词的词尾
b: 跳至当前或前一个单词的词首
nw:
以上命令都可以在前面加数字,移动的定的个数
3、行内跳转:(可以搭配后面的删除复制等操作进行)
0: 绝对行首
^: 行首的第一个非空白字符
$: 绝对行尾
4、行间跳转
nG:跳转至第n行;
G:最后一行
末行模式下,直接给出行号即可
四、翻屏
Ctrl+f: 向下翻一屏
Ctrl+b: 向上翻一屏
Ctrl+d: 向下翻半屏
Ctrl+u: 向上翻半屏
五、删除单个字符
x: 删除光标所在处的单个字符
#x: 删除光标所在处及向后的共#个字符
六、删除命令: d
d命令跟跳转命令组合使用;
#dw, #de, #db
dd: 删除当前光标所在行
#dd: 删除包括当前光标所在行在内的#行;
末行模式下:
StartADD,EndADDd(如:1,10d)
.: 表示当前行
$: 最后一行
+#: 向下的#行
七、粘贴命令 p
p: 如果删除或复制为整行内容,则粘贴至光标所在行的下方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的后面;
P(大写): 如果删除或复制为整行内容,则粘贴至光标所在行的上方,如果复制或删除的内容为非整行,则粘贴至光标所在字符的前面;
八、复制命令 y
用法同d命令
九、修改:先删除内容,再转换为输入模式
c: 用法同d命令
十、替换:r 替换单个字符
R: 替换模式 在这个模式下可以替换多个字符
十一、撤消编辑操作 u (undo)
u:撤消前一次的编辑操作
连续u命令可撤消此前的n次编辑操作
#u: 直接撤消最近#次编辑操作
撤消最近一次撤消操作:Ctrl+r
十二、重复前一次编辑操作
点字符.
十三、可视化模式 用来进行删除复制粘贴等操作
v: 按字符选取
V:按矩形选取
十四、查找(支持正则表达式,在末行模式下)
/PATTERN 从当先向尾部
?PATTERN 从当前向首部
n :从上到下查找
N :从下到上查找
十五、查找并替换
在末行模式下使用s命令(sed中的command的s)
ADDR1,[email protected]@[email protected]
1,$
%:表示全文
以上是关于学习vi和Vim编辑器的前言的主要内容,如果未能解决你的问题,请参考以下文章