vimbook–OPL –official publications library

vimbook–OPL –official publications library

又大概看了一遍VIM-OPL,大概记了一些还不是很熟的知识点。

1 Basic Editing

x—删除字符

u---撤销

Ctrl+U---还原

ZZ---保存退出

o---在当前行下方新建一行

O—在当前行上方新建一行

 

CTRL+] && CTRL+T:浏览器间前进后退

 

帮助前缀

What                                         Prefix             Example

Normal-mode commands     (nothing)                 :help x

Control character CTRL-        :help                          CTRL-u

Visual-mode commands       v                                :help v_u

Insert-mode commands        i                               :help i_<Esc>

ex-mode commands             :                               :help :quit

Command-line editing          c                          :help c_<Del>

Vim command arguments           -              :help -r

Options                      (both ends)        :help ‘textwidth’

 

      特殊键需要使用尖括号括起来,例如向上的键:help <UP>

移动到行首行尾

使用$移动到行尾,如果是2$就是移动到当前光标所在的下一行的行尾;

0是移动到行首

^是移动到第一个非空的字符上。

搜索字符

fx:即为从光标开始向前搜索字符x的所在;

Fx:即为从光标开始向后搜索字符x的所在;

与之相同的为txTx,不过只是在前一个字符停下而已。

我在哪里

使用CTRL+G可以显示出你位于那里

向上或向下卷动

CTRL+U:向上移动半屏

CTRL+D:向下移动半屏

组合的威力

如果对于<B>,当光标在<时,使用df>将会把<B>整体删除,然后使用.就可以进行相同的编辑操作。

改变大小写

~

键盘宏-处理更复杂的操作

stdio.h

fcntl.h

unistd.h

stdlib.h

修改为

#include “stdio.h”

#include “fcntl.h”

#include “unistd.h”

#include “stdlib.h”

方法如下:

qa   开始录制宏到寄存器a

^   移动到行首

i#include “<Esc> 在行首插入字符串#include

$   移动到行尾

a”<Esc>  在行尾添加”

j  移动到下一行

q   停止录制宏

然后我们就可以使用@a来重复刚才的动作。

输入图标或键盘上没有的符号

可以使用:digraphs来查看可以输入的符号,输入方法为CTRL-Kat,即可输入@

正则表达式搜索

/^include:只搜索每行中的第一个include

/include$:只搜索每行中的最后一个include

/^include$:只搜索准确的include,而不显示诸如includeaaa等。

正则表达式总结

x The literal character x

^ 行的开始

$  行的结尾

.  匹配单个字符

\character  诸如.*[]ˆ%/\?~$需要\来搜索

使用标记mark

1.    使用:mark a来标记a

2.    移动到另一个位置

3.    执行d’a就可以删除从当前位置到a的文本

使用标记的好处是它可以为你一直保持,你可以随时跳转回去。

使用标记后,可以使用y’a来复制当前位置到标记的地方。

!!的妙用

!!date就是把当前 时间插入,同样地!!ls就是把当前文件夹列表的内容插入到当前行。

直接在vim中打开另一个文件

      如果你已经使用vim打开了一个文件,又想打开另外一个文件,可以先退出在打开另一个,但是还有一个比较快捷的方法,就是直接:vi filename,就可以自动关闭原来的文件,打开filename

我位于那个文件

      输入:args可以在打开过个文件的时候定位到底在那个文件。

三种visual模式

l  V:选择整行;

l  v:按照字符选择;

l  CTRL+V:矩形块选择;

Visual模式中连接多行

V模式下,使用J可以连接各行,而gJ可以不让连接的各行有空格。

Visual模式下平移

选定文本后,使用SHIFT+>来平移文本。

多行插入相同文本

使用CTRL+V选定文本后,使用I即可插入在选定的地方插入相同文本(光标其实);而A在选定的区域之后。

如果c程序的后缀名不是c

可以使用:set filetype=c来强制默认为c类型

自动缩进

有三个缩进

l  cindent

l  smartindent

l  autoindent

程序中定位

*:可以定位到光标下的单词;

gd:移动到变量的定义处;

[d:显示宏定义

匹配对

%:用于匹配()、/*  */、{}或[]

查找man信息

在关键词上直接敲K就可以打开man帮助信息。

在文件中直接make

我们可以在文件中直接使用:make来编译程序,这样就可以自动定位到错误的地方。:cc可以列出所有的编译信息,:cnext或这:clist可以到下一个报警错误或者列出所有信息。

进入命令行模式

按下Q即可进入。

文本格式命令

:range center/right/left width可以居中

自动补全

我们可以使使用CTRL+N或者CTRL+P来自动搜索匹配的词。

显示字符的ascii

输入ga就可以显示出光标下字符的各个进制数。

posted @ 2011-11-21 16:19  郭—大—侠  阅读(393)  评论(0编辑  收藏  举报