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. 59.phpstudy升级Mysql的正确姿势

    phpstudy升级Mysql的正确姿势 phpstudy很糟心,不能选择mysql的版本,所以就强制升级. 下载mysql 首先要到官网上去下载你想要的mysql版本. 下载网址:Mysql官网地址 ...

  2. eclispe集成Scalas环境后,导入外部Spark包报错:object apache is not a member of package org

    在Eclipse中集成scala环境后,发现导入的Spark包报错,提示是:object apache is not a member of package org,网上说了一大推,其实问题很简单: ...

  3. C++中的对象初始化

    当对象在创建时获得了一个特定的值,我们说这个对象被初始化.初始化不是赋值,初始化的含义是创建变量赋予其一个初始值,而赋值的含义是把当前值擦除,而以一个新值来替代.对象初始化可以分为默认初始化.直接初始 ...

  4. matlab之导入txt文件并取其中一列数据

    1.我想导入下面这个文件的内容,并且获取这个文件中的两列数据. 2.首先确保Matlab当前所在文件夹为txt文件所在文件夹,然后命令行执行: X = load('2019_03_21_08_59_0 ...

  5. n皇后问题——关于斜线的编号

    题目大意:在n*n的棋盘中,放置n个皇后(同一行.同一列.同一斜线,只有一个皇后) 这道题是一道非常经典的dfs模板题,同一行.同一列的判断不是很难,但同一斜线有一定的难度,下面给出关于斜线编号的解决 ...

  6. codeforces 982B Bus of Characters

    题意: 有n排座位,每排有两个座位,每排座位的宽度都不一样. 有2 * n个人要上车,如果是内向的人,那么它会选择一排两个都是空位并且宽度最小的一排去坐: 如果是外向的人,会选择一排座位已经有人坐的, ...

  7. 移动端项目在ios上输入框聚焦难解决方案

    由于引入fastclick导致ios端input.textarea输入框难以点击聚焦,解决方案如下: 找到项目中的fastclick依赖或在main.js中改写fastclick的focus实现.

  8. 给datagrid的日期格式化成年月日

    $('#infos').datagrid({ title:'系统版本列表', iconCls:'icon-view', method:'POST', singleSelect:false, fit : ...

  9. Servlet+纯java+MySQL实现课程信息的增删改查

    Dbutil: package com.zh.util; import java.sql.Connection; import java.sql.DriverManager; import java. ...

  10. Vue 组件&组件之间的通信 之组件的介绍

    什么是组件? 组件Component,可扩展HTML元素,封装可重用的代码.通俗的来说,组件将可重用的HTML元素封装成为标签方便复用: 组件的使用: 1.使用全局的方法Vue.extend创建构造器 ...