vim使用心得

本文详细介绍了 Vim 编辑器的高级使用技巧,包括配置文件设置、复制粘贴基本命令、自动缩进、显示行号、翻页功能、查找与替换功能、ctags 和 taglist 插件的使用方法,以及排版和快捷键自定义等。此外,还提供了 Vim 配置文件示例和相关插件安装步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用4个空格替换tab键

在用户目录下新建.vimrc文件。

在里面加入

set ts=4

set expandtab


显示行号

在.vimrc 文件中加入set nu!

ps:

我的.vimrc设置

  1 set ts=4
  2 set expandtab
  3 set nu!

//设置自动缩进=====================================

  4 set shiftwidth=4   
  5 set cindent
  6 set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s
//================================================




下面是vim复制粘贴的基本命令:


  1. vim有12个粘贴板,分别是0、1、2、...、9、a、“、+;用:reg命令可以查看各个粘贴板里的内容。在vim中简单用y只是复制到“(双引号)粘贴板里,同样用p粘贴的也是这个粘贴板里的内容;

  2. 要将vim的内容复制到某个粘贴板,需要退出编辑模式,进入正常模式后,选择要复制的内容,然后按"Ny(注意带引号)完成复制,其中N为粘贴板号(注意是按一下双引号然后按粘贴板号最后按y),例如要把内容复制到粘贴板a,选中内容后按"ay就可以了,有两点需要说明一下:
    • “号粘贴板(临时粘贴板)比较特殊,直接按y就复制到这个粘贴板中了,直接按p就粘贴这个粘贴板中的内容;
    • +号粘贴板是系统粘贴板,用"+y将内容复制到该粘贴板后可以使用Ctrl+V将其粘贴到其他文档(如firefox、gedit)中,同理,要把在其他地方用Ctrl+C或右键复制的内容复制vim中,需要在正常模式下按"+p;

  3. 要将vim某个粘贴板里的内容粘贴进来,需要退出编辑模式,在正常模式按"Np,其中N为粘贴板号,如上所述,可以按"5p将5号粘贴板里的内容粘贴进来,也可以按"+p将系统全局粘贴板里的内容粘贴进来。


yy复制游标所在行整行。或大写一个Y。
2yy或y2y复制两行。 ㄟ ,请举一反三好不好! :-)
y^复制至行首,或y0。不含游标所在处字元。
y$复制至行尾。含游标所在处字元。
yw复制一个word。
y2w复制两个字(单词)。
yG复制至档尾。
y1G复制至档首。
p小写p代表贴至游标后(下)。
P大写P代表贴至游标前(上)。

在命令模式下:1,10y       就是复制1~10行。

注:删除操作与复制类似!!!


//翻页功能

命令模式下

Ctrl+f下翻页 Ctrl+b上翻页

Ctrl+d下半翻页Ctrl+u上半翻页

gg跳到文件开始

G跳到文件结束


//查找功能

一、用/和?的区别:
/后跟查找的字符串。vim会显示文本中第一个出现的字符串。
?后跟查找的字符串。vim会显示文本中最后一个出现的字符串。
按n键转到下一个匹配,按N键转到上一个匹配。

match Search /XXXXX/ 高亮/ /中间的文本

Search位置有多种选择,ErrorMsg,WarmingMsg,MoreMsg


//替换功能

:n,$s/vivian/sky/g 替换第 n 行开始到最后一行中每一行所有 vivian 为 sky

(n 为数字,若 n 为 .,表示从当前行开始到最后一行)

g 放在命令末尾,表示对搜索字符串的每次出现进行替换;不加 g,表示只对搜索字符串的首次出现进行替换;


//ctags

首先要安装了ctags,在程序的根目录下运行ctags -R,生成tags文件,然后在编辑程序时按Ctrl+]就会跳转到当前光标所在东西的定义处。若有多个tag,执行:ts,进行选择。按Ctrl+o即可跳回。不过,当修改过代码后,需要重新生成tags

//Taglist

Taglist是以tags文件为基础,需要ctags生成tags文件。

安装ctags,Redhat和CentOS可以执行yum install ctags,Debian和Ubantu可以执行apt-get install ctags

下载Taglist,地址是http://sourceforge.net/projects/vim-taglist/files/vim-taglist/

解压taglist_45.zip,可以看到有两个目录doc和plugin,结构如下

复制代码
taglist_45
|
|-------- doc
|         \-------- taglist.txt
|
\-------- plugin
          \-------- taglist.vim
复制代码

 

执行下列shell命令,即安装完成

cp  doc/taglist.txt  /usr/share/vim/vim72/doc/
cp  plugin/taglist.vim  /usr/share/vim/vim72/plugin/

 

使用方法:

在源码目录下,执行ctags -R对各目录递归创建生成tags文件

用Vim打开源码文件,以命令模式执行Tlist,即可启用Taglist插件,<F1>可以查看taglist的帮助信息

附上我的Vim配置文件.vimrc

复制代码
"语法高亮
syntax on

"显示行号
set number

"自动缩进与C语言风格缩进
set autoindent
set cindent

"缩进宽度
set tabstop=4
set softtabstop=4
set shiftwidth=4
"建议开启expandtab选项,会自动将tab扩展很空格,代码缩进会更美观
set expandtab
"set noexpandtab

"switch case 对齐风格
set cino=g0,:0


"
" taglist
"
let Tlist_Show_One_File=1    "只显示当前文件的tags
let Tlist_WinWidth=40        "设置taglist宽度
let Tlist_Exit_OnlyWindow=1  "tagList窗口是最后一个窗口,则退出Vim
let Tlist_Use_Right_Window=1 "在Vim窗口右侧显示taglist窗口
复制代码
<CR>          跳到光标下tag所定义的位置,用鼠标双击此tag功能也一样
o             在一个新打的窗口中显示光标下tag
<Space>       显示光标下tag的原型定义
u             更新taglist窗口中的tag
s             更改排序方式,在按名字排序和按出现顺序排序间切换
x             taglist窗口放大和缩小,方便查看较长的tag
+             打一个折叠,同zo
            将tag折叠起来,同zc
            打所有的折叠,同zR
            将所有tag折叠起来,同zM
[[            跳到前一个文件
]]            跳到后一个文件
q             关闭taglist窗口
<F1>          显示帮助



//排版

按v键,切换到visual模式,选中需要排版的段落,按=自动排版。(注:有些地方的不是很好,比如case语句)


//快捷键自定义。

当按F12时,相当于Esc :TlisoToggle的效果

<CR>表示回车?



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值