记录一些简单实用的vim用法

lsof -i:6789

查看哪些进程占用了6789端口


1.

假如有这么一句  #include "SocketTask.h"

如果想查看这个文件内容,那么就把光标放上面,输入命令gf~好记吧

 

 

2.

:q是退出;   q:呢?是查看输入的命令历史

 

 

3.  寄存器命令

 

用q命令,后面跟寄存器名字(单个字母假设是a),开始记录你的命令输入; 最后输入q,结束命令记录;

用@a  重复执行你刚才记录的命令

 

 

4. CTRL+D CTRL+U是翻滚半个屏幕,而CTRL+B CTRL+F是翻滚整个屏幕

 

 

5. H  光标移动到屏幕第一行

 M 移动到中间一行

L 移动到最后一行

 

 

6 vi -R file或者view file,只读打开文件

 

 

7 恢复删除:每当你删除一些内容,这些内容被保存在缓冲区。一共有9个这样的缓冲区,最近删除的保存在缓冲区1.

"2p命令就是把缓冲区2的内容粘贴出来,注意,前面有个引号。

 

 

8 复制到缓冲区:"dyy  前面有个引号,把当前行复制到d缓冲区; "dp   把缓冲区d的内容粘贴出来

"a7yy   把当前七行复制到缓冲区a。

 

 

9 书签: mx 命令 把当前位置命名为书签x,x是任意字母。 'x 是定位到书签x

 

 

10 冒号模式下 :/pattern/d 删除匹配的一行

:g/pattern/d  删除匹配的所有行

 

 

11 编辑多文件  vi file1 file2  

:n  切换文件

 

 

12 另一种复制粘贴的办法

:1,5ya a  复制前5行到缓冲区a

:pu a  将缓冲区a的内容粘贴出来

 

 

 

13 替换时确认

:1,$s/old/new/gc

 

 

 

14 命令模式下不会被使用的字符:g K q v V

map的时候考虑这几个字母

 

 

 

15 :set list

文本中的tab会被显示为^I, 结束符会显示为$

 

 

 

 16 关于 关键字 自动补全

    ) CTRL X + CTRL L, 在本文件中寻找匹配的某一行,自动补全

) CTRL X + CTRL N, 在本文件中寻找匹配的某一关键词,自动补全

) CTRL X + CTRL I, 在本文件以及include头文件中寻找匹配的某一关键词,自动补全

) CTRL X + CTRL P, 在本文件寻找匹配的某一关键词,自动补全

) CTRL X + CTRL F, 寻找匹配的某一文件名,自动补全

) CTRL X + CTRL D, 在本文件以及include头文件中寻找匹配的宏定义,自动补全  

 

17 w 是移动到单词首字母,而 e 是移动到单词尾字母 减号是移动到上一行的首部

 

dG  从光标位置删除到文件尾部,

yG  从光标位置到文件尾部,复制

 

 

18 VISUAL模式

v 进入该模式, aw 选择一个单词;

其实在visual模式下,命令模式下的命令仍然是有用的~

 

VIM手册

1. 快速入门 *:syn-qstart*
*:syn-enable* *:syntax-enable* 这个命令打开语法高亮: :syntax enable 实际上,它只是执行如下命令 :source $VIMRUNTIME/syntax/syntax.vim 如果没有设置 VIM 环境变量,Vim 会试图用其它方法找到该路径 (见 |$VIMRUNTIME|)。 通常总能找到,如果不行,你可以自己设置 VIM 环境变量为存放 Vim 相关文件所在的 目录。例如,如果你的语法文件放在 "/usr/vim/vim50/syntax" 目录,设置 $VIMRUNTIME 为 "/usr/vim/vim50"。启动 Vim 前,你必须在外壳上进行此设置。 *:syn-on* *:syntax-on* ":syntax enable" 命令会保持你当前的色彩设置。这样,不管在使用此命令的前后,你 都可以用 ":highlight" 命令设置你喜欢的颜色。如果你希望 Vim 用缺省值覆盖你自己 的,只要用: :syntax on *:hi-normal* *:highlight-normal* 如果你运行在 GUI 环境里,你可以这样得到黑底白字: :highlight Normal guibg=Black guifg=White 关于色彩终端,见 |:hi-normal-cterm|。 关于设置你自己的语法高亮色彩,见 |syncolor|。 注意: MS-DOS 和 Windows 上的语法文件以 <CR><NL> 结束每一行。Unix 上则以 <NL> 结尾。这意味着你需要为自己的系统选择合适的文件。不过,在 MS-DOS 和 Windows 上,如果 'fileformats' 选项非空,会自动选择正确的格式。 注意: 使用反转视频时 ("gvim -fg white -bg black"),'background' 的缺省值直到 GUI 窗口打开时才会设置。这发生在 |gvimrc| 的读入之后,从而会使用错误的缺省高 亮。要在打开高亮前设置 'background' 的缺省值,在 |gvimrc| 文件里包含 ":gui" 命 令: :gui " 打开窗口并设置 'background' 的缺省值 :syntax on " 启动语法高亮,使用 'background' 来设置颜色 注意: 在 |gvimrc| 里使用 ":gui" 意味着 "gvim -f" 不会在前台打开!这时,要使用 ":gui -f"。 你可以用这个命令切换语法的打开/关闭 :if exists("syntax_on") | syntax off | else | syntax enable | endif 要把它放到映射里,你可以用: :map <F7> :if exists("syntax_on") <Bar> / syntax off <Bar> / else <Bar> / syntax enable <Bar> / endif <CR> [使用 |<>| 记法,按本义输入] 细节: ":syntax" 命令是用执行文件脚本实现的。要了解它到底干了什么,察看以下文件: 命令 文件 :syntax enable $VIMRUNTIME/syntax/syntax.vim :syntax on $VIMRUNTIME/syntax/syntax.vim :syntax manual $VIMRUNTIME/syntax/manual.vim :syntax off $VIMRUNTIME/syntax/nosyntax.vim 另见 |syntax-loading|。

2. 语法文件 *:syn-files*
某个语言的语法和高亮命令通常存在一个语法文件里。命名惯例是: "{name}.vim"。其 中,{name} 是语言的名字或者缩写 (一旦在 DOS 文件系统上,要适用 8.3 字符的名字 限制)。 例如: c.vim perl.vim java.vim html.vim cpp.vim sh.vim csh.vim 语法文件可以包含任何 Ex 命令,就像 vimrc 文件那样。但应该只有适用于特定语言的 命令才放在里面。如果该语言是另外一个语言的超集,它可以包含那个语言对应的文件。 例如,cpp.vim 可以包含 c.vim 文件: :so $VIMRUNTIME/syntax/c.vim .vim 文件通常使用自动命令载入。例如: :au Syntax c runtime! syntax/c.vim :au Syntax cpp runtime! syntax/cpp.vim 这些命令通常出现在 $VIMRUNTIME/syntax/synload.vim 文件里。 如果你有多个文件,可以用文件类型作为目录名。该目录下的所有 "*.vim" 文件都会被 使用。例如: ~/.vim/after/syntax/c/one.vim ~/.vim/after/syntax/c/two.vim 创 立 你 自 己 的 语 法 文 件 *mysyntaxfile* 一旦你创立自己的语法文件,并且需要 Vim 在使用 ":syntax enable" 的时候自动调用 它们的时候,按如下操作进行: 1. 建立自己的用户运行时目录。通常,把它放在 'runtimepath' 选项的第一项。Unix 的例子: mkdir ~/.vim 2. 在其中建立 "syntax" 目录。Unix 上: mkdir ~/.vim/syntax 3. 编写 Vim 语法文件。或者从 internet 下载。然后写入你的 syntax 目录。例如,对 于 "mine" 语言的语法: :w ~/.vim/syntax/mine.vim 现在你可以手动启动语法文件: :set syntax=mine 这时,你并不需要退出 Vim。 如果你想 Vim 也实现文件类型的检测,见 |new-filetype|。 如果你想为多个用户设立系统,而不希望每个用户增加相同的语法文件的话,可以使用 'runtimepath' 里的其它目录。 添 加 到 已 存 在 的 语 法 文 件 *mysyntaxfile-add* 如果你对已有的语法文件大体满意,只需要增加或者修正一些高亮项目,执行以下步骤即 可: 1. 建立你的 'runtimepath' 里的用户目录,见上。 2. 在那里建立目录 "after/syntax"。Unix 上: mkdir ~/.vim/after mkdir ~/.vim/after/syntax 3. 编写 Vim 脚本,包含你希望使用的命令。例如,要在 C 语法里改变颜色: highlight cComment ctermfg=Green guifg=Green 4. 把该文件写道 "after/syntax" 目录。使用该语法的名字,另加上 ".vim"。对于我们 的 C 语法: :w ~/.vim/after/syntax/c.vim 这样就行了。下一次你编辑 C 文件时,Comment 色彩就不会一样了。你甚至不需要重启 Vim。 替 换 已 存 在 的 语 法 文 件 *mysyntaxfile-replace* 如果你不喜欢发布的语法文件版本,或者你下载了新版本。可以采用上述的 |mysyntaxfile| 相同的步骤。只要确保你写的语法文件在 'runtimepath' 较早的位置就 可以了。Vim 只会载入第一个找到的语法文件。 命 名 惯 例 *group-name* *{group-name}">{group-name}* *E669* *W18* 高亮或者语法组的名字必须由 ASCII 字母,数字和下划线组成。如使用正规表达式表示: "[a-zA-Z0-9_]*"。 要允许每个用户选择他自己喜欢的色彩系列,许多语言应该使用相同的高亮组名。以下是 建议的组名 (如果语法高亮能够正确工作,你应该能看到实际的颜色,除了 "Ignore" 以 外): *Comment v 任何注释 *Constant v 任何常数 String v 一个字符串常数: "这是一个字符串" Character v 一个字符常数: 'c'、'/n' Number v 一个数字常数: 234、0xff Boolean v 一个布尔型常数: TRUE、false Float v 一个浮点常数: 2.3e10 *Identifier v 任何变量名 Function v 函数名 (也包括: 类的方法名) *Statement v 任何语句 Conditional v if、then、else、endif、switch 等 Repeat v for、do、while 等 Label v case、default 等 Operator v "sizeof"、"+"、"*" 等 Keyword v 任何其它关键字 Exception v try、catch、throw *PreProc v 通用预处理命令 Include v 预处理命令 #include Define v 预处理命令 #define Macro v 等同于 Define PreCondit v 预处理命令 #if、#else、#endif 等 *Type v int、long、char 等 StorageClass v static、register、volatile 等 Structure v struct、union、enum 等 Typedef v 一个 typedef *Special v 任何特殊符号 SpecialChar v 常数中的特殊字符 Tag v 这里可以使用 CTRL-] Delimiter v 需要注意的字符 SpecialComment v 注释里的特殊字符 Debug v 调试语句 *Underlined v 需要突出的文本,HTML 链接 *Ignore v 留空,被隐藏 *Error v 任何有错的构造 *Todo v 任何需要特殊注意的部分;多是关键字 TODO FIXME 和 XXX * 标记的名字是主要组,其它是次要组。对主要组而言,"syntax.vim" 文件包含缺省的 高亮设置。次要组则链接到主要组。所以它们拥有相同的高亮设置。不过,你可以通过 ":highlight" 命令在 "syntax.vim" 文件之后改变所有组的缺省值。 注意高亮组的名字对大小写不敏感。"String" 和 "string" 可用来表示相同的组。 以下名字是保留字,它们不应用作组名: NONE ALL ALLBUT contains contained 
颜色高亮:
如果没有root权限,请将C.VIM拷贝到~下的.VIM/SYNTAX目录下。
高亮函数名字:
syn match cFun display "[a-zA-Z_][a-zA-Z_0-9]/{-1,}/s/{-0,}(/{1}"ms=s,me=e-1                                                   
hi def link cFun Special
高亮合法的标识符:
syntax match cUserword display "/<[a-zA-Z_][a-zA-Z_0-9]*/>[^(]"ms=s,me=e-1
highlight def link cUserword Comment
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值