,VIM会自动搜索所有当" />
当前位置:首页 > 日记 > 正文

vim设置高亮 | vim设置高亮光标所在的列

vim设置高亮 | vim设置高亮光标所在的列

1. vim设置高亮光标所在的列

VIM的自动补全功能让你有效的避免输入错误,快速的完成变量名、类名、方法名的输入,善用之可以极大的提高软件开发的工作效率。需要提前说明的是,下面介绍的所有快捷键必须让VIM位于插入模式(即"i"Insert And Replace"模式)。VIM的自动补全方式一共有三种

已知单词

这是VIM中最基本的功能,当你键入某个单词的前几个字母,然后按<C-p>,VIM会自动搜索所有当前打开的缓冲区中的单词完成自动补全。<C-p>表示VIM从当前光标位置向前搜索,你也可以按<C-n>,表示从当前光标位置向前搜索。通常我们可以忽略<C-n>和<C-p>的区别。为了方便记忆,我选择按<C-p>,因为p代表previous,<C-p>表示补全之前(previous)已经键入的单词. 下面两个图分别是<C-n>和<C-p>的效果图,区别在于在自动补全菜单弹出时默认高亮的单词

另外,如果你打开的文件太多,那么自动补全可能会列出一大串来自其他缓冲区中的单词,这时可以使用<C-x><C-p>或者<C-x><C-n>让VIM仅仅列出当前缓冲区的单词。

关键词字典

前面讲到,通过<C-x><C-p>可以使VIM仅仅根据当前缓冲区的内容补全单词,其中,<C-x>表示让VIM进入插入模式的一个子模式,通过EX命令"help ins-complete"可以查阅所有以<C-x>开头的快捷键说明,但这不是本文的重点,不再累述。基于关键字字典补全的快捷键为<C-x><C-k>, ‘k’表示"keyword",即关键字。当<C-x><C-k>按下时,VIM会从"dictionary"全局变量中搜索字典文件,进行自动补全的工作。词典的另一个作用是可以做拼写检查,快捷键是<C-x><C-S>。关于如何利用VIM做拼写检查,将另行撰文介绍。

执行 ":set dictionary+=[字典文件]" 设置字典文件的路径,执行<C-x><C-k>进行自动补全。

Omnicompletefunc

自版本7.0开始,VIM开始提供自动补全的回调函数,通过下面的快捷键触发:

<C-x><C-o>: 调用omnifunc定义的函数

<C-x><C-u>: 调用completefunc定义的函数

omnifunc和completefunc两个回调函数没有本质上的区别,但是在惯例上,omnifunc定义的函数的与特定的文件类型绑定的,不同的文件类型会定义不同的omnifunc。<C-x><C-o>中的’o',即’omnifunc’。而completefunc通常是给第三方插件或者说用户自定义使用的,<C-x><C-u>中的’u',即"User Defined"的意思。

如何编写omnifunc或者completefunc的方法,可通过"help complete-functions"查阅,本文重点在于介绍两个重要的插件,就使用了这两个函数实现C/C++语言的自动补全功能:

supertab

VIM的哲学就是尽量的减少用户需要键入的次数,因此<C-x>开头的快捷键也显得过于麻烦,"help ins-completion"参考手册中有一个例子函数,CleverTab(),在用户按下<Tab>键时,自动判断是否需要调用补全功能还是插入一个<Tab>字符,但是这还不能满足我们日常软件开发的需要,因此supertab插件是对VIM的自动补全功能的重要补充。在缺省情况下supertab就能很好的工作,不需要特别的设置。需要特别说明的是,这个插件是对下面介绍的插件OmniCppComplete的一个有效的补充。主要是因为如果不安装supertab,那么在进行自动补全的时候,需要按<C-x><C-o>进行触发。

OmniCppComplete

如前所述,当你在编写C/C++代码时,如果需要VIM为你自动补全函数名、类名等,需要依赖正确的omnifunc(或者completefunc)的实现,而OmniCppComplete正是应这个需求而出现的。安装好这个插件后,也不需要做任何设置,只需要生成相应的tag文件即可正常工作。需要注意的是,在生成tag文件时,需要使用下面的参数达到最好的效果:

ctags --sort=yes --c++-kinds=+p --fields=+iaS --extra=+q

下面是使用OmniCppComplete的效果图:

本文重点在于介绍VIM的自动补全功能,因此对于C、C++语言中自动补全功能并未作深入的探讨。众所周知,VIM中对C++语言的自动补全有一些缺陷,目前有一些插件如clang_complete、gccsense能够更好的完成C/C++语言的自动补全功能,将另行撰文介绍。多说一句,其实在大多数情况下,利用这些基本的自动补全功能也够用了。特别是针对历史遗留代码居多的大规模项目,这些最基本的功能反而是最有效率的。

2. vim 设置搜索高亮

在Fedora中vim的配置文件存放在/etc目录中,配置文件名为vimrc在终端 输入以下命令来编辑vimrc配置文件:sudo vim /etc/vim/vimrc或者sudo gedit /etc/vim/vimrc1、显示行号在文件末端添加一新行,输入 set nu2、语法高亮在文件中找到 "syntax on 这一行,去掉前面的双引号",双引号是注释的意思3、自动缩进其中autoindent 是自动缩进;

cindent是特别针对 C语言语法自动缩进 注意:如果设置好以上设置后,VIM没有作出相应的动作,那么请你把你的VIM升级到最新版,一般只要在终端输入以下命令即可:

sudo apt-get install vim

3. vim设置选中高亮显示

gedit是一个GNOME桌面环境下兼容UTF-8的文本编辑器。它使用GTK+编写而成,它十分的简单易用,有良好的语法高亮,对中文支持很好,支持包括gb2312、gbk在内的多种字符编码。

vim是从vi发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。和Emacs并列成为类Unix系统用户最喜欢的编辑器。

4. vim 回到上次光标

如果仅仅是移动到行尾就用END键如果是想从命令模式到行尾并进入输入模式:按大写A

5. vim设置光标样式

Ctrl + a 光标移动到行首(Ahead of line),相当于通常的Home键

Ctrl + e 光标移动到行尾(End of line)

Ctrl + c 取消(cancel)当前行输入的命令

Ctrl + l 清屏,相当于执行clear命令

Ctrl + p 调出命令历史中的前一条(Previous)命令,相当于通常的上箭头

Ctrl + n 调出命令历史中的下一条(Next)命令,相当于通常的上箭头

Ctrl + u 删除光标之前到行首的字符

Ctrl + k 删除光标到行尾的字符

Ctrl + w 删除从光标位置前到当前所处单词(Word)的开头

Ctrl + y 粘贴最后一次被删除的单词

Ctrl + r 显示:号提示,根据用户输入查找相关历史命令(reverse-i-search)

Option+← 光标单词间移动(向左)

Option+→ 光标单词向右移动

vim编辑快捷键

删除和删除多行的快捷键,要在默认模式下使用。在编辑模式下可以按esc,退出编辑模式。

然后输入以下指令

光标移动

移动到行尾"$",移动到行首"0"(数字)

移动到段首"{",移动到段尾"}"

移动到下一个词"w",移动到上一个词"b"

移动到文档开始"gg",移动到文档结束"G"

跳到第n行"ngg" 或 "nG" 或 ":n"

移动光标到屏幕顶端"H",移动到屏幕中间"M",移动到底部"L"

移动到上次编辑文件的位置 "`"

批量删除:

D 删除当前光标所在位置到某一行的结尾

d$ 删除当前光标所在位置到某一行的结尾

dd 删除当前所在行

5dd 删除从当前行至其后的5行内容

dL 删除当前位置到屏幕上最后一行的内容

dH 删除当前位置到屏幕上第一行的内容

dG 删除当前位置到工作缓存区结尾的内容

d1G 删除当前位置到工作缓存区开始的内容

分类: shell编程学习

6. vim 高亮光标所在行

光标定位G 移至行行首nG 移至第n行行首n+ 移n行行首n- 移n行行首n$ 移n行(1表示本行)行尾0 所行行首$ 所行行尾^ 所行首字母h,j,k,l 左移移移右移H 前屏幕首行行首M 屏幕显示文件间行行首L 前屏幕底行行首更参考原文移行道两0 ^ (shift+6)行首第字符空白字符点区别移行尾 $ (shift+4)

7. vim语法高亮设置

VS Code中的代码可以直接粘贴。

VS Code里的代码

粘进Onenote后

没有底色,字体缩进正常。要行号可以自己添加。

要注意如果装了Vim插件,用Ctrl+C复制没有颜色效果。

相关文章

wps文档中目录页中的设置页码 | wp

wps文档中目录页中的设置页码 | wp

设置,正文,文档,自动生成,文字,1.wps中有目录但是页码从正文开始怎样设置WPS中有目录,需要设置页码从正问开始,可通过在正文插入分节符,使正文和目录/封面为不同节,然后再从正文位置开始插入页码即可。具体操作步骤如下:1、打开需要设置的WPS文…

联想手机怎么跟电脑连接wifi密码忘

联想手机怎么跟电脑连接wifi密码忘

密码,连接,联想,设置,输入,1. 联想笔记本如何连接wifi密码联想thinkpade420笔记本无线网络连接不上的解决方法:  打开电脑,选择开始——控制面板。  打开控制面板中,可以看到有很多的选项,选择其中的Internet选项。  选择internet选项后,…

vivo手机开启hd高清通话的详细流程

vivo手机开启hd高清通话的详细流程

vivo手机开启hd高清通话的详细流程介绍,vivo,开启hd高清通话,  小伙伴们你们知道vivo手机开启hd高清通话吗?今天小编很乐意与大家分享vivo手机开启hd高清通话的详细流程介绍,感兴趣的可以来了解了解哦。  vivo手机开启hd高清通话的详细流…

高清手机设置 | 高清手机设置在哪

高清手机设置 | 高清手机设置在哪

设置,调成,哪里找,手机屏幕,电脑软件,1. 高清手机设置在哪里打开手机摄像头,点击设置,点击照片质量,选择高清模式就可以了。2. 手机通话高清在哪里设置x80开启高清通话操作方法:1/3 在手机上打开设置,在设置界面里,点击移动网络。2/3在移动网络…

电脑装机系统u启动 | 重装系统u启

电脑装机系统u启动 | 重装系统u启

启动,重装系统,读取,设置,知识,1. 重装系统u启动可用系统u盘或光盘安装。1、电脑Bios中设置从u盘或光盘启动。2、插入系统u盘或光盘并重启电脑。3、进入系统u盘(或光盘)pe,选c盘(默认系统盘)格式化并按引导安装(还原)。2. 怎样用u启动重装系统答:冰…

在三星note9中设置轻松静音的详细

在三星note9中设置轻松静音的详细

在三星note9中设置轻松静音的详细讲解,三星note9,设置轻松静音,  在三星note9中怎么设置轻松静音呢?下面就是在三星note9中设置轻松静音的详细讲解,我们不妨一起去学习学习吧。在三星note9中设置轻松静音的详细讲解  第一步:  在标准模…

电脑能控制小爱同学 | 可以用小爱

电脑能控制小爱同学 | 可以用小爱

控制,设置,硬件,知识,小爱,1. 可以用小爱同学控制电脑吗可以的,除了是智能音箱之外,还有普通蓝牙音箱应该有的功能2. 小爱同学能控制电脑吗?可以,小爱同学可以当蓝牙音箱使用,因为小爱同学本身也是一个音响设备,同时支持蓝牙功能,只需要通过蓝牙…

电脑关闭了内置声卡怎么开启 | 怎

电脑关闭了内置声卡怎么开启 | 怎

声卡,设置,启用,屏蔽,硬件,1. 怎么关闭电脑自带声卡具体是进入bios--advance--onboarddeviceconfiguration里面的HDAudiocontroller将它设为disable即可独立声卡,一般是只要插上,然后电脑会自动屏蔽集成声卡,但为了安全,建议先关闭集成声卡,然后…

如何设置邮箱账号申请注册 | 怎么

如何设置邮箱账号申请注册 | 怎么

账号,注册,安卓手机,邮箱,如何设置,1. 怎么申请邮箱账号电子邮箱:可以在电脑上通过互联网寄信和收信的工具,是通过网络电子邮局为网络客户提供的网络交流电子信息空间。使用方法:先在网站上申请一个邮箱,只要在收信人写上对方的电邮地址(邮箱)按…

动动计步器中更改步数的详细操作步

动动计步器中更改步数的详细操作步

动动计步器中更改步数的详细操作步骤,动动计步器,更改步数,  近期有太多的朋友使用动动计步器,你们知道怎么在动动计步器中更改步数吗?以下就是小编带来的动动计步器中更改步数的详细操作步骤,一起去看看吧。  动动计步器中更改步数的详细…

电脑复制粘贴快捷键技巧 | 电脑怎

电脑复制粘贴快捷键技巧 | 电脑怎

快捷键,复制粘贴,设置,对话框,操作,1. 电脑怎么用复制粘贴快捷键键盘上可以使用【ctrl】+【c】为复制,【ctrl】+【v】为粘贴。按住键盘shift,按键盘上左右方向键可以选择想要操作的内容。选择完想要操作的内容后,按【ctrl+v】就可以粘贴了。具…

tp扩展器设置 | tp网络扩展器怎么

tp扩展器设置 | tp网络扩展器怎么

扩展器,设置,路由器,网络,方法,1. tp网络扩展器怎么设置在使用无线扩展器的时候,遇到以下几种情况下,可能需要重新设置无线扩展器。(1)、路由器的wifi密码修改了,导致扩展器与路由器的连接失败,所以需要重新设置扩展器。(2)、无线扩展器已经扩展了…