程序员编辑器- VIM.pdfVIP

  • 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 从当前行开

文档评论(0)

1亿VIP精品文档

相关文档