- 6
- 0
- 约1.67万字
- 约 15页
- 2019-07-07 发布于江苏
- 举报
程序员的编辑器——VIM
一、VIM 的历史
1976 年左右 Bill Joy 开发了 vi,他也是伯克利大学的毕业生,后来他跟其他人
一起成立了 Sun Microsystems 公司并成为了 Sun 的首席科学家。一开始Bill
开发了 ex,尔后开发了 vi 作为 ex 的visual interface,也就是说 vi 允许一次
能看到一屏的文本而非一行,vi 也因此得名。
“早期,当键盘和视频终端成为最新的计算机交互手段时,人们开发了 VI。那
时候的键盘不具有目前熟悉的全部功能键,所以,VI 就设计成只需要打字机 的
键盘加上退出键就能完成对文本的输入和修改(现在有的还接受一些其他的键输
入方式,如光标控制键)。尽管看起来受了限制,不能充分利用现代键盘新增的
许 多键,可是 ‘祸中有福’,限制带来的好处是手指不离开打字区就能完成所
有的编辑工作。”
技术不断进步,需求也在不断提高,VI 的各种变种也不断涌现,知名的有nvi,
elvis,VIM,vile,yzis,其中移植性最好、特性最 多、使用最广的当属 VIM,
VIM 主要是 Bram Moolenaar 开发的。最初 Bram 在 Amiga 计算机上改进一个叫
Stevie 的VI 版本,他称之为 “Vi IMitation”。随着功能的逐渐丰富,VIM 的
含义也就改成了 “Vi IMproved”。相比原始的VI,VIM 增加的一项最重要的功
能便是多级撤销,VI 只支持一级撤销。
[separator]
二、VI/VIM 基础知识
很多人应该都知道 VI 是个有模式的编辑器:编辑模式和命令模式,按 ESC 回到
命令模式,用 i 或者 a 进入编辑模式,由于区分了模式,导致 VI 的命令非常简
洁,而无模式编辑器比如 Emacs,所有的命令都需要加上控制键 Ctrl 或 Alt。
VI 继承了 ed 的理念,另外也有历史原因,VI 追求的是快捷——启动程
序迅速,编辑文本高效,功能专注,而 Emacs 追求的是功能的丰富强大以及集成
带来的方便。
在 VIM 里头:help mode可以看到 VIM 的所有模式,主要有如下几种:
Normal mode 即通常所谓的命令模式,在此模式使用 a、i、A、I、o、
O 等进入 Insert mode
Insert mode 即通常所谓的编辑模式,在此模式使用ESC 进入 Normal
mode 或者 Ctrl-o 临时进入Normal mode。
Command-line mode 命令行模式,在 Normal mode 下按冒号进入,按 ESC
取消执行命令或者回车执行命令,然后回到 Normal mode。(Visual
Studio.Net 也添加了命令行脚本功能,幸甚)
Visual mode 即选择模式(注意跟用鼠标选择不同),用 v,V,C-v
或 C-q 进入
Select mode 鼠标选择
Replace mode 在 Normal mode 下按 R 进入,按 ESC 返回 Normal mode,
相当于 Windows 下命令行中按 Insert 键进入的覆盖模式
从 VI/VIM 中退出:按ESC 确认返回到 Normal mode,然后
:wq 保存并退出
:q! 不保存并退出
退出,如果文件更改则保存
ZZ 退出,如果文件更改则保存(按住 Shift,再按两次 z)
VI 的命令是非常具有美感的,下面是几个例子:
i 在光标前插入 I 在行首插入
a 在光标后插入 A 在行末插入
o 在下一行插入 O 在上一行插入
x 删除当前字符 X 删除前一个字符
类似的还有 b,B,ge,gE,w,W,e,E,f,F,t,T,这些命令都可以用:help
cmdname 查到帮助。
dd 删除一行 yy 拷贝一行
h j k l 左下上右移动光标
Ctrl-w h,Ctrl-w j,Ctrl-w k,Ctrl-w l 切换到左下上右窗口
类似 ed,VI/VIM 的命令大多都可以带一个数字前缀或者一个数字范围,比
如:
5dd 从当前行开
您可能关注的文档
最近下载
- 【地域文化在主题酒店中的运用研究—以S酒店为例(附问卷)15000字】.doc
- CWI考试1PART+A+练习题及答案.docx
- PART A CWI练习题及答案 .pdf VIP
- 数学思维导图小学初中高中含目录(高清版)人教版.pdf VIP
- SY-T 6629-2005 陆上钻井作业环境保护推荐做法.pdf VIP
- SY_T 7295-2016 陆上石油天然气修井作业环境保护推荐作法.docx VIP
- 汉责文化打屁股.pptx VIP
- SY∕T 5557-2016 石油天然气钻采设备 固井成套装备.docx VIP
- SY∕T 7425-2018 石油天然气钻采设备 制氮注氮设备.docx VIP
- SY-T6113-2023石油天然气钻采设备 修井用动力卡盘.pdf VIP
原创力文档

文档评论(0)