Linux 下,.vimrc 有两个。一个是全局使用的(/etc/vimrc),另一个是个人使用的(~/.vimrc)。

大部分的情况下,我们只需要设置自己目录下的.vimrc 即可。

# vim ~/.vimrc

然后写入配置,保存退出后,重新打开vim即可生效。

下面是一些在编写C++代码时一些配置项:

※ 设置注释的颜色

默认的颜色是深蓝色的,完全看不清楚。

写入 hi comment ctermfg=6 后颜色就活好很多。

具体解释:

0 黑色  ---默认VIM的背景就是黑色,所有如果你选择0,那么就看不到注释了

1  红色

2 墨绿

3 黄色

4 难看刺眼的颜色,即默认的颜色

5 类似粉色的,我不知道这种颜色叫什么

6 淡蓝色

7  白色 ---不要选择7,输入不刺眼,但是和其他的太一样了,不好分清楚到底哪个注释了,那个没注释

高于7以上都是白色的了

参考文档:http://blog.csdn.net/gz109/article/details/18733365

※ 设置vim颜色方案

colorscheme desert

注:desert 是一种颜色配置方案

http://www.cnblogs.com/jiao732/archive/2013/03/06/2946135.html

http://www.cnblogs.com/jiao732/archive/2013/03/06/2946135.html

※ 语法高亮

if has("syntax")

syntax on

endif

或者直接syntax on

注意:如果此时语法还是没有高亮显示,那么在/etc目录下的profile文件中添加以下语句:export TERM=xterm-color

※ 设置自动缩进

set autoindent

---- 即每行的缩进值与上一行相等,使用 set noautoindent 可以取消设置

---- 当你在输入状态用回车键插入一个新行,或者在 normal 状态用 o 或者 O 插入一个新行时,autoindent 会自动地将当前行的缩进拷贝到新行,也就是"自动对齐”

set cindent

---- 它会按照 C 语言的语法,自动地调整缩进的长度,比如,当你输入了半条语句然后回车时,缩进会自动增加一个 TABSTOP 值,当你键入了一个右花括号时,会自动减少一个 TABSTOP 值。

set smartindent

---- 在这种缩进模式中,每一行都和前一行有相同的缩进量,同时这种缩进形式能正确的识别出花括号,当遇到右花括号(}),则取消缩进形式。此外还增加了识别C语言关键字的功能。如果一行是以#开头的,那么这种格式将会被特殊对待而不采用缩进格式。

※ 设置制表符等于多少空格

set tabstop=4

set softtabstop=4(设置软制表符)

软制表符表示在Insert模式的时候按退格键时退回缩进的长度,当使用expandtab 时特别有用。

※ 显示行号

set nu

※ 更改缩进方式

set shiftwidth=4

---- 表示每一级缩进的长度为4个空格,一般设置成跟 softtabstop 一样的值

set expandtab

---- 缩进用空格来表示,而set noexpandtab 则是用制表符表示一个缩进。

---- 不应让set expandtab对所有情况都生效,因为Makefile或makefile文件中要求必须使用制表符来分割命令,而如果使用了vim编辑这些文件,制表符被自动换成空格,则会出现问题。

---- 可使用如下命令来对设置只对特定类型文件启用expandtab,

if has("autocmd")

autocmd BufRead,BufNewFile *.c, *.h set expandtab

endif

※ 短暂显示括号匹配

set showmatch/set sm

set matchtime=1

---- 匹配时间,单位是十分之一秒

※ 括号自动匹配添加

inoremap ( ()<LEFT>
    inoremap { {}<LEFT>
    inoremap [ []<LEFT>

※ 去掉响声

set vb t_vb=

---- 当vim进行编辑时,如果命令错误,会发出一个响声,该设置去掉响声

※ 显示匹配

set incsearch

---- 找要匹配的单词。eg:如果要查找search单词,当输入到/s(回车确认选择)时,会自动找到第一个s开头的单词

※ 忽略大小写

set ignorecase

※ 设置鼠标可用

set mouse=a

https://blog.csdn.net/u014805066/article/details/62891622

Linux .vimrc 设置项的更多相关文章

  1. 4.Linux开机设置项

    开机建议优化项: //关闭防火墙 systemctl stop firewalld systemctl disable firewalld //关闭SELinux: setenforce 0 sed ...

  2. linux最初配置( vimrc设置 、tab键设置 inputrc、中文输入法等等)

    1..vimrc设置   syntax on set tabstop=4 set softtabstop=4 set autoindent set cindent set nu set ruler & ...

  3. linux 路由表设置 之 route 指令详解

    使用下面的 route 命令可以查看 Linux 内核路由表. # route Destination     Gateway         Genmask Flags Metric Ref     ...

  4. linux 路由表设置 之 route 指令详解【转】

    转自:http://blog.csdn.net/vevenlcf/article/details/48026965 目录(?)[-] 种路由类型 主机路由 网络路由 默认路由 配置静态路由 route ...

  5. linux中设置TAB键的宽度

    对于编程的人员来说,常常须要排版代码,这时候就须要TAB键,但TAB键的宽度太大,非常有可能代码太长,延伸到下一行,这个时候你就须要设置TAB键的宽度了. linux下设置TAB键的宽度,做法例如以下 ...

  6. Linux scp 设置nohup后台运行

    Linux scp 设置nohup后台运行 1.正常执行scp命令 2.输入ctrl + z 暂停任务 3.bg将其放入后台 4.disown -h 将这个作业忽略HUP信号 5.测试会话中断,任务继 ...

  7. Linux 权限设置chmod

    Linux中设置权限,一般用chmod命令 1.介绍 权限设置chmod 功能:改变权限命令.常用参数: 1=x(执行权execute) 2=w(写权write) 4=r(读权Read) setuid ...

  8. 在linux中设置静态ip地址

    在linux中设置静态ip地址1.在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 2.开始编辑,填写ip地址.子网掩码.网关.DNS等[root ...

  9. .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)

    阅读目录: 1.需求背景介绍(Model元数据设置项应该与View绑定而非ViewModel) 1.1.确定问题域范围(可以使用DSL管理问题域前提是锁定领域模型) 2.迁移ViewModel设置到外 ...

随机推荐

  1. [LeetCode] 90.Subsets II tag: backtracking

    Given a collection of integers that might contain duplicates, nums, return all possible subsets (the ...

  2. 关于Java中StringBuffer的capacity问题

    从API查到capacity的作用是查看StringBuffer的容器容量是多少,刚开始纳闷这个跟length的区别在哪?试验了几次感觉有点不解.所以直接跟进源码分析. 直接通过new StringB ...

  3. JAVA:IDEA使用Hibernate(2)

    1.打开IDEA新建项目 勾选Hibernate.勾选下方生成相关配置和类 下方选择Download,如果使用本地已经下载的包则选择 Use Library ,路径选到包里面的require里导入即可 ...

  4. Python中if __name__ == '__main__',__init__和self 的解析

    1.2.1 一个.py文件被其他.py文件引用 假设我们有一个const.py文件,内容如下: 现在,我们写一个用于计算圆面积的area.py文件,area.py文件需要用到const.py文件中的P ...

  5. python进阶(四) windows下虚拟环境使用

    虚拟环境作用: 1. 通常开发一个项目,会安装很多的第三方包,这时第三方包我们是安装在本机环境的.那么如果项目进行部署或移植的时候是不是要重新安装这些包???? 2.开发环境,同时在做两相项目,同时要 ...

  6. C#文件流的读写

    1.文件流写入的一般步骤 1.定义一个写文件流 2.定义一个要写入的字符串 3.完成字符串转byte数组 4.把字节数组写入指定路径的文件 5.关闭文件流 2.文件流读入的一般步骤 1.定义一个读文件 ...

  7. python扩展包的升级

    检查更新:pip list --outdated 更新: pip install --upgrade xxxx

  8. vue深入响应式原理

    vue深入响应式原理 深入响应式原理 — Vue.jshttps://cn.vuejs.org/v2/guide/reactivity.html 注意:这里说的响应式不是bootsharp那种前端UI ...

  9. Vue 组件&组件之间的通信 之 template模板引用与动态组件的使用

    template模板引用 在component的template中书写大量的HTML元素很麻烦. Vue提供了<template>标签,可以在里边书写HTML,然后通过ID指定到组建内的t ...

  10. Python Redis set集合

    Set操作.Set集合就是不允许重复的列表 (无序集合) sadd(name,values) # name对应的集合中添加元素 scard(name) # 获取name对应的集合中元素个数 sdiff ...