vim语法

在任何目录输入命令“vim <文件名>”就可以使用vim编辑文件了。 打开vim后,默认的是命令模式,输入i进入编辑模式,这个时候你可以编辑文件了。
在编辑模式下按Esc键回到命令模式,在命令模式输入:q ! (:wq) 命令就可以(保存修改)退出了。

命令模式常用命令:
k:向上
j:向下
h:向左
l:向右
w:下一个单词
b:上一个单词
e:单词尾部
a:追加输入,并进入编辑模式,一般 r:替换当前字符为
R:进入替换型输入方式,按Esc退出。
cw:替换单词,进入编辑模式。
x:剪切字符
dd:剪切行
D:剪切当前位置到行尾
yy:复制一行
p:粘贴
v:选择文本区域,之后可以移动光标改变选择范围,也可以使用y、x、r命令复制、删除 3.2 列模式

在命令模式下,按ctrl+v命令进入列选择模式,列选择模式同v命令的选择模式一样,同时它还可以输入I命令对选择的区域每行都插入一样的内容。

3.3 查找 命令模式下的查找命令:
/<word>:查找下一个<word>,之后可以使用n(N)命令向下(上)查找
?<word>:查找上一个<word>,之后可以使用n(N)命令向下(上)查找
*:查找光标所在单词下一处
<word>可以是任何正则表达式,用点(.)匹配任意单个字符,用星*表示匹配零或多个任意字符。如(/a*b)可以查找匹配ab、aab 下面是介绍几个常用的情况:
/^abc:找到以abc开头的行
/efg$:查找已efg结尾的行
/\s\+:查找一个或多个空白处,

vim的替换语法为:[addr]s/源字符串/目的字符串/[option]。[addr] 表示检索范围,默认是当前行,%表示整个文件,使用 v命令选中区域后输入冒号可以实现自定义范围;源字符串可以使用通配符,查找功能原理一样;[option]是操作类型,g 表示全局替换,c 表示进行确认。
下面是一些常用的例子:
在每行的开始插入>
:%s/^/>/g
删除空行。
:%s/^$/ /g
删除所有的[
:%s/\[//g
将That or this 换成 This or that
:%s/\(That\) or \(this\)/\u\2 or \l\1/

提示:输入/或者:命令然后再按上下方向键,可以查看历史命令

3.4 多文件操作

在使用vim命令时,后面可以加多个文件名。这时vim首先显示的是第一个文件。在命令模式下输入:n(N)命令可以切换到下(上)一个文件,使用ctrl+g可以查看当前打开的文件名,输入:qa退出所有的文件。
如果想在一个页面上看到多个文件内容,可以使用分屏,这样很方便让我们交互式操作。

在vim命令模式下输入:sp(:vsp) [文件名],可以进行水平(垂直)分屏。之后输入wk(j、h、l)命令可以上(下、左、右)切换窗口。输入:q可以关闭窗口。

3.5 资源管理器

如果我们打开的文件被其他程序修改了,可以使用:e命令来刷新文件内容。使用:e [文件名]可以关闭当前文件同时打开指定的文件。 使用:E命令可以打开当前文件所在目录。这个类似Windows的资源管理器。

当打开的是文件目录时,可以通过s命令修改文件排序方式,同时将光标移到指定文件后输入Enter键即可打开它。

对于开发者来说,希望可以看到一个程序的函数名列表,这是需要通过taglist插件来实现。
使用方法如下:
1) 先到官方网站下载插件:
http://www.vim.org/scripts/script.php?script_id=273
2) 将下载的文件解压到$HOME/.vim目录下。

$HOME/.vim> unzip taglist_46.zip

3)设置并激活
在.vimrc文件修改下面配置:

let TlistCtagsCmd="/lincapp/aixdev/ctags/bin/ctags"

其中/lincapp/aixdev/ctags是第一步ctags安装时指定的路径。
进入HOME/.vim目录运行vim,执行命令(:helptags .)后退出。

此时就配置好了,打开一个程序文件,按F2命令,即可显示、隐藏函数定义表了。

3.6 代码折叠

在查看源代码时,将光标移至括号(大、中、小括号 3.7 函数定义跳转

我们阅读代码时希望能跳转到被调函数的定义处。实现这个功能需要使用第一步安装ctags工具对代码库生成tags文件,方法如下:

/home/aixdev/ctags/bin/ctags -RB -f ~/leman/tags ~/rinetd/

-f用来指定生成的tags文件名,用户可以任何自行修改。最后一个参数指定代码库的主目录(为了能在任何地方都可以跳转,这里建议写绝对路径)。
生成完tags文件后需要修改.vimrc中的tags设置:

:set tags=~/leman/tags "这里修改为你自己的tags文件名

现在就可以在vim里面使用跳转了,将光标移至函数处,输入ctrl+]命令进入函数定义,输入ctrl+t退到上一层调用。如果修改代码后导致跳转位置不准了,可以通过重建tags文件来校正。

3.8 代码自动补全

在编辑模式下,当我们输入变量名或者函数名一部分时,可以输入ctrl+p(n)实现自动补全,vim自动搜索上(下)文类似的单词,如果未找到再尝试到 tags文件中找你想要的变量。如果有多个满足的内容,会显示一个列表,这时用户可以继续输入ctrl+p(n)来选择上(下)一个。

3.9 文件比较

使用vim比较文件的命令为vim -od 。参数-o表示水平分屏,默认是垂直分屏。

如上题,品红色表示本行有差异,红色部分标识了差异的地方。为了能看到全行的内容,可以输入:set wrap命令来展开,同样使用:set nowrap可以隐藏。

3.10 其他

1)调用外部命令。 如果想使用vim调用shell命令,可以在命令模式下输入:! <shell命令>实现。如查看当前所在目录可使用::!pwd

2)二进制模式查看编辑。 如果vim打开的文件中含有不可见字符,而你又想查看这些不可见字符的二进制数据,这是可以通过:%!xxd -g1命令进入二进制模式查看,进入后可以编辑二进制数据,之后通过:%!xxd -g1 -r命令返回正常模式保存。

第四章:高级用法。

4.1 Linux命令模式:Vim filename


一次移动一个光标

h        j              k          l

左       下             上         右


行内移动

0        到行首         d0或d^    删除至行首

$        至行尾         d$         删除至行尾


0=HOME    到行首        $=end      至行尾

G         到文件尾      50G        到50行

gg        到文件首


有小d/大D都是剪切

dd         剪掉当前行

5dd        剪掉当前行起共5行

D          剪空当前行

x          删除一个字母    

dw         除一个单词          del  word


u         一次撤一行中的一个动作

U         撤消一行中的所有动作    undo

多行时小u比大U管用


yy        复制当前行

5yy       复制5行

p         粘    paste


ZZ        保存退出

ZQ        不保存退出


vim中大小写转化:~或u或U

1、整篇文章大写转化为小写:gg到文件首→guG

gu=把选定范围全部小写

G=到文件结束

2、整篇文章小写转化为大写:gg到文件首→gUG

gU=把选定范围全部大写

G=到文件结束

4.2 命令模式→输入模式:按ins/a/A/i/I/o/O/r/R


o           在光标下加一空行并进入插入模式

O           在光标上开一空行并进入插入模式

r           替换一个字符

R           连续替换多个字符


文件内容查找:

操作键      功能

/word       从上而下在文件中查找字符串“word”

?word       从下而上在文件中查找字符串“word”

n            定位下一个匹配的被查找字符串

N            定位上一个匹配的被查找字符串


命令模式→Visual Block:按ctrl+v,举例:选中多行并添加注释

#vim→^v→I→#→ESC

#vim→set nu→^v→(100G:当前行到第100行)→I→#→ESC

4.3 命令模式→末行模式:按冒号


默认情况下Vim的搜索是大小写敏感的,:

:set ignorecase          忽略大小写

:set noignorecase        不忽略大小写


:set nu或:set number     设置显示行号

:set nonu或:set nonumber 不显示行号


:999              移动光标到第999行


有彩色或无彩色

:syntax clear或:set syntax=off暂时关闭语法高亮

:syntax enable    当前缓冲区打开语法高亮功能。


:w                存盘不退出

:w!               暴力存盘不退出

:w file1          另存为file1

 

:q                无脏数据时正常退出

:q!               放弃脏数据并退出

 

:wq               正常保存并退出

:wq!              暴力存盘并退出


文件内容替换

命令  功能

:s /old/new     当前行中找到的第一个old 替换为new

:s /old/new/g     当前行中查找到的所有old 替换为new

:#,# s/old/new/g    行号“#,#”范围内替换所有的old为new

:% s/old/new/g  整个文件范围内替换所有的old为new

:s /old/new/c    c命令:将对每个替换动作提示用户进行确认


文件加密与解密

vim t.c         打开一文件

:X             据提示操作//加密

:wq             保存退出

 

文件解密

vim t.c         打开文件

:set key=      解密

:wq            保存退出


查看vim帮助

4.4 典型故障现象

一般是非正常关闭VI导致的,解决办法如下:

#rm .install.log

结尾:

下面是一个高手总结VIM的用法:

标签: vimvi

原文地址:https://www.cnblogs.com/duanlinxiao/p/10778659.html

时间: 2024-11-08 21:53:50

vim语法的相关文章

Linux C/C++程序员CentOS 6.5安装YouCompleteMe使用vim语法自动补全

标题: Linux C/C++程序员CentOS 6.5安装YouCompleteMe使用vim语法自动补全 Ubuntu/Debian/Fedora比较好安装,各种软件包都比较新 CentOS6系列很难装,各种软件包版本太低了 新手不要尝试在CentOS6系上安装,会有一种挫败感! 步骤: 1, 安装操作系统 2, 文件下载 3, 更新vim 4, 安装ycm 和 Vundle 5, 编译clang 6, 编译ycm_core 7, 效果图 8, 清理工作 1, 安装操作系统: CentOS-

vim 语法高亮

1 .配置文件的位置在目录 /etc/ 下面,有个名为vimrc 的文件,这是系统中公共的vim配置文件,对所有用户都有效.而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“. vimrc ”.例如,/root目录下,通常已经存在一个. vimrc文件.如果不知道配置文件及脚本的位置,可以在vim中使用命令 :scriptnames ,将显示如下路径/etcimrc/usrimim72/syntax/syntax.vim/usrimim72/syntax/synload.vim/u

vim语法不高亮问题

今天 新到一台linux服务器上 工作,一进去发现 语法不高亮. 我是用vi 打开文件的. 然后各种改 .vimrc 的东西 改 TERM 环境变量,都不管用. 鼓捣了一阵 . . . 后来发现是 因为 没有把 vi 别名成 vim. 这样看来 ,语法高亮等那些高级的东东 都是vim的功能. 而vi 则是 基础的编辑器, 可以理解vi 是系统的一部分.  vim则是一个增强版. 解决办法就是  在 .bashrc 中 加入一行 alias vi='vim' 这样习惯用vi 打开 文件的同学, 就

[vim]设置vim语法高亮显示和自动缩进

1.配置文件的位置        在目录 /etc/vim下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效.而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:“.vimrc”.例如,/root目录下,通常已经存在一个.vimrc文件. 2.设置语法高亮显示1) 打开vimrc,添加以下语句来使得语法高亮显示:    syntax on2) 如果此时语法还是没有高亮显示,那么在/etc目录下的profile文件中添加以下语句:    export TER

如何快速编写Vim语法高亮文件

这里有一份中文的入门文档,但是太长了,不想读,所以有本文 最快的办法,就是找一个语法相近的语法高亮文件,稍微改一下 自己从头写的话,首先搞定关键字: syntax case match "是否区分大小写 syntax keyword 你的关键字类别名字x 关键字1 关键字2 syntax keyword 同样填x的话,不会覆盖,只追加 关键字3 关键字4 关键字搞不定的,一般用正则匹配: syntax match 类别名 /正则表达式/ 正则有个麻烦是不能部分匹配,比如我要匹配花括号前的,/[a

vim 语法高亮显示

1.配置文件的位置 在目录 /etc/ 下面,有个名为vimrc的文件,这是系统中公共的vim配置文件,对所有用户都有效.而在每个用户的主目录下,都可以自己建立私有的配置文件,命名为:".vimrc".例如,/root目录下,通常已经存在一个.vimrc文件. 2.设置语法高亮显示 1) 打开vimrc,添加以下语句来使得语法高亮显示: syntax on 2) 如果此时语法还是没有高亮显示,那么在/etc目录下的profile文件中添加以下语句: export TERM=xterm-

vim 语法着色完全配置

原文地址:http://blog.sina.com.cn/s/blog_878940b3010156ku.html 在终端输入:sudo vim /etc/vim/vimrc   打开配置文件.编辑命令:set showcmd     " Show (partial) command in status line.set showmatch       " Show matching brackets.set ignorecase      " Do case insensi

如何在Mac OS X中开启VIM语法高亮和显示行号

VIM (Wikipedia图) Vim 是一款相当给力的源自UNIX平台的命令行文本编辑器,不过不给力的是,Mac OS X下并没有诸多Linux发行版上VIM那些牛逼哄哄的神马代码高亮显示啊,自动缩进啊神马的. (译者注:通常Linux发行版可以通过编辑/etc/vimrc文件更改全局VIM设定或者针对某个用户的~/.vimrc进行个性化配置) 为了弥补这个缺憾,请按如下方法操作:打开Terminal,输入如下命令: cd /usr/share/vim sudo vim vimrc 两行命令

vim语法高亮显示

https://www.jb51.net/article/95603.htm CRT设置如下:第二步,如果你用的是远程登录,比如SecureCRT,这时候需要设置 "会话选项">"终端">"仿真",选择下选菜单中的xterm,并打钩ANSI彩色,并根据自己需要是否选择彩色方案此时再查看基本就会出现语法高亮显示了. 原文地址:https://blog.51cto.com/5731674/2418321