设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 技术文摘 查看内容

文本编辑器VIM的七项实用操作技巧

2014-9-2 16:16| 发布者: joejoe0332| 查看: 3603| 评论: 0|原作者: 天使之泪|来自: CSDN

摘要: Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。 ...

  文本编辑器有很多,图形模式下有gedit、kwrite等编辑器,文本模式下的编辑器有vi、vim(vi的增强版本)和nano。vi和vim是Linux系统中最常用的编辑器。有人曾这样的说过在世界上有三种人:一种是使用Vi的,另一种是使用是Emacs的,剩下的是第三种人。


(一)初级个性化配置你的vim

1、vim是什么?

vim是Vi IMproved,是编辑器Vi的一个加强版,一个极其强大并符合IT工程师(程序员、运维)习惯的编辑器。如果你是一名职业的SE,那么一定在寻找一款出色的能够自由定制、满足灵活编辑功能的编辑器。那么答案,就是vim或者Emacs。


2、配置文件在哪?

Windows系统的配置文件是vim安装目录下的vimrc文件。

Linux系统,RHEL和CentOS的配置文件是/etc/vimrc,Debian和Ubuntu的配置文件是/usr/share/vim/vimrc。

Mac OS X的配置文件是/usr/share/vim/vimrc。


3、vimRC中的RC是什么意思?

为什么把这么个没有意义的问题也列出来?原因很简单,就是我在接触vim之初第二个想问的问题就是这个(第一个就是上面的“1”)。一般在运行某个软件、环境或工具之初,要初始执行的一些命令,称为Run Commands,即RC。根据Wikipedia.org的记载,RC缩写的用法源自MIT的相容分时操作系统(Compatible Time-Sharing System,CTSS)[参考1]。所以以后如果你看到了SystemRC或者ScreenRC,也就知其缘由了。


4、三种基本模式

在《大家来学vim》中提到vim有6+5种模式,但除了细分程度不同外,实际上常用的只有3种模式:Normal Mode、Insert Mode和Command-line Mode。

  • 从Normal Mode进入Insert Mode,可以按i、I、a、A、o、O、r、R即可。其中i和I表示插入(Insert),r和R表示替换(replace)。
  • 从Insert Mode进入Normal Mode,只需要按ESC键即可。
  • 从Normal Mode进入Command-line Mode,可以按“:”、“/”、“?”。其中“:”表示输入vim命令,“/”表示后面输入要向下搜索的字符串,“?”表示后面输入要向上搜索字符串。
  • 从Command-line Mode进入Normal Mode,只需要按ESC键即可了。

你可以把Normal Mode理解为常态,进入其他任何一种模式,需要某种特殊方式,而从其他特殊模式回到Normal Mode,就按ESC键即可。


5、vim中那些最最常用的配置

当你尝试去google一些其他人的vimrc配置时,你一定会找到一篇叫做《The ultimate vim configuration》的文章,不过它的作者,Amix后来在他的博客上提到[参考2],这份在google搜索vimrc会排在前十的vim配置文件,如今已经过时了,所以他提供了一些更新信息。

(1)颜色设置

  • syntax on “开启代码高亮
  • syntax off “关闭代码高亮
  • syntax enable “开启代码高亮

(2)搜索设置

  • set hlsearch “开启搜索高亮
  • set nohlsearch “关闭搜索高亮
  • set incsearch “输入搜索字符串的同时进行搜索
  • set ignorecase “搜索时忽略大小写

(3)用户界面

  • set showmode “开启模式显示
  • set ruler “开启光标位置提示
  • set number “显示行号
  • set nonu “不显示行号
  • set cursorline “强调光标所在行
  • set cmdheight=1 “命令部分高度为1

(4)编辑辅助配置

  • set autoindent “自动缩进
  • set noautoindent “不自动缩进
  • set smartindent “智能缩进
  • set autoread “当文件在外部被改变时,vim自动更新载入
  • set showmatch “显示匹配的括号

参考:


(二)常用的状态切换按键

1、Normal Mode -> Insert Mode

  • i 小写字母i,在光标位置插入
  • a 小写字母a,在光标的下一个位置插入
  • I 大写字母I,在光标所在行的第一个非空格处插入
  • A 大写字母A,在光标所在行的最后一个字符处插入
  • o 小写字母o,在光标所在行的下一行处插入新行
  • O 大写字母O,在光标所在行的上一行处插入新航
  • r 小写字母r,替换光标所在处的字符一次
  • R 大写字母R,持续替换光标所在处的字符,直到按下ESC


2、Normal Mode -> Command-line Mode

  • :w 保存文件
  • :w! 强制保存文件(前提是用户有修改文件访问权限的权限)
  • :q 退出缓冲区
  • :q! 强制退出缓冲区而不保存
  • :wq 保存文件并退出缓冲区
  • :ZZ 保存文件并且退出
  • :wq! 强制保存文件并退出缓冲区(前提是用户有修改文件访问权限的权限)
  • :w 另存为名为filename文件
  • :n1,n2 w 将n1行到n2行的数据另存为名为filename文件
  • : x 如果文件有更改,则保存后退出。否则直接退出。


3、Insert Mode -> Normal Mode

按下ESC键


4、Command-line -> Normal Mode

按下ESC键


(三)常用光标移动按键

1、光标字符操作

  • j 向下
  • k 向上
  • h 向左
  • l 向右
  • $ 光标移动到行尾(End),注意要按Shift键
  • 0 光标移动到行首(Home)
  • ^ 光标移动到行首第一个非空白字符(Home),注意要按Shift键


2、光标词操作

  • w 光标移动到后一词的词首
  • W 光标移动到后一词的词首且忽略标点符号
  • e 光标移动到后一词的词尾
  • E 光标移动到后一词的词尾且忽略标点符号
  • b 光标移动到前一词的词首
  • B 光标移动到前一词的词首且忽略标点符号


3、光标句操作

  • ) 光标移动到后一句的句首
  • ( 光标移动到前一句的句首
  • % 配合“(”和“)”使用,寻找相匹配的另一半


4、光标行操作

  • G 光标移动到文档的最后一行的第一个非空白字符
  • nG 光标移动到文档的第n行,相当于”:n”
  • gg 光标移动到文档的第1行的第一个非空白字符,相当于”1G”,也相当于”:1″
  • 光标向下移动N行


5、光标段操作

  • } 光标移动到下一段的段首
  • { 光标移动到上一段的段首
  • % 配合“(”和“)”使用,寻找相匹配的另一半


6、光标页操作

  • Ctrl+f 向下翻页(Pagedown)
  • Ctrl+b 向上翻页(Pageup)
  • Ctrl+d 向下翻半页
  • Ctrl+u 向上翻半页
  • H 光标移动到目前显示页的第一行
  • M 光标移动到目前显示页的中间行
  • L 光标移动到目前显示页的最后一行


7、光标自由操作

Ctrl+o 回到光标的上一位置



酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部