VIM editor in Linux

VIM编辑器是 Linux系统下标准的编辑器,它的强大众所周知。

1 VIM的状态

一般来讲, VIM有三种状态: command mode, insert mode, and visual mode

command mode: 在这种模式下,所有的键盘输入都对被解释为命令。

insert mode: 在这种模式下,大多数的键盘输入作为文本。

visual mode: 辅助选择文档内容,这种模式可以认为是 command mode的分支

2 mode 的切换

Insert mode     command mode      visual mode
   |------<ESC>-----
à
|                     |
   |
ß
----i/I---------|                     |
   |
ß
-----a/A--------|                     |
    |                  |----v/V--------
à
|
   |                    |---<Ctrl>+v----
à
|
    |                   |---<ESC>-------
à |

-  i, 切换到 insert mode,光标位置不变

- I, 切换到 insert mode,光标停留在当前所在行的起始位置

- a, 切换到 insert mode,光标在当前位置后退一位

- A, 切换到 insert mode,光标停留在当前所在行的结束位置

3 保存与退出

command mode下,输入:,然后键入如下值。

:w filename   à 将文档保存为指定的文件名字

:wq à 保存当前文档并退出 VIM

:q! à 不保存当前文档,强制退出 VIM

4 first time on VIM

$ VI helloworld.txt后, vim处于 command mode,输入 I,进入 insert mode,键入你的文档。按 <ESC>键,返回 command mode,输入 :wq回车,保存退出。

5 常用命令

/text - 在文档中向下查找关键字text
?text - 在文档中向上查找关键字text
n     - 在相同方向查找关键字text
N     - 在相反方向查找关键字text
:set ic   - 查找时,忽略大小写
:set noic - 查找时,不忽略大小写
u    - 取消上一次的编辑操作
.    - 重复上一次的编辑操作
yy    - 拷贝光标所在的这一行
p     - 在光标所在的位置粘贴剪切板内容

dd    - 删除光标所在的这一行

:s/oldtext/newtext        - 用newtext替换oldtext
:m,ns/oldtext/newtext     - 从m行到n行,用newtext替换oldtext
:g/text/s/oldtext/newtext - 查找包换有关键字text的行,用newtext替换该行出现的oldtext

6 设定windows风格的自动缩进

在用户根目录下打开或者创建文件.vimrc,

$vi .vimrc

输入如下内容:(注意=号后面不要有空格,删除注释说明部分/*..*/)

syntax on

set expandtab              /*用空格填充制表符*/
set tabstop=2              /*设定制表符宽度为2*/
set softtabstop=2          /*设定软制表符宽度为2*/
set shiftwidth=2           /*设定缩进为2*/
set autoindent             /*设定为自动缩进,取消为noautoindent*/
set cindent                /*设定c/c++语言类型的自动缩进*/
set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s      /*设定c/c++语言代码风格*/
set nu                     /*设定显示行号*/

if &term == "xterm"
  set t_Co=8
  set t_Sb=^[[4%dm
  set t_Sf=^[[3%dm
endif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值