我是一个vim爱好者,项目开发过程中,大量地使用vim作为编辑工具。

今天刚开箱了一台新的 CentOS7, 现将Vim安装后的一些基本配置作一下记录。

使用配置模板

vim安装完之后,大多数配置都是默认的,如,没有显示行号等,要快速的获一个vim的配置文件很简单

vim ~/.vimrc

然后读取 vimrc 模板文件到 .vimrc中

:r $VIMRUNTIME/vimrc_example.vim

最后:wq

自动换行及tab的设置

vim中默认tab是8个字符的宽度,但软件工程师用得最多的应该是4个字符,并且最好是由4个空格组成的。

我们可以直接编辑.vimrc文件,添加以下配置:

set tabstop=4
set softtabstop=4
set shiftwidth=4
set expandtab
set autoindent

设置显示行号

参考以下配置

set number

vim产生的临时文件

在使用vim的过程中,我们经常发现,vim产生一些临时文件:

  • 交换文件 filename.swp
  • 备份文件 filename~
  • undo备份文件 filename.un.~

我们可以使用以下配置来阻止这些文件的生成:

set nobackup
set noswapfile
set noundofile

但我不建议这么做,原因是,在出现意外的时间,如果程序意外退出,而你正在编辑的内容却还没来得及保存。

如果你的手速特别快,已经关闭了临时文件的生成,也可以使用下面的命令开启:

set backup
set swapfile
set undofile

既然又想保存临时文件,又不想让这些文件把项目目录搞乱,

解决方案就是,我们新建一个目录,专门来存在这些临时文件:

cd /tmp
mkdir -p ~/tmp/vim/{backup,tmp,undo}

然后再设置这些文件的存在目录

set dir=~/tmp/vim/tmp
set udir=~/tmp/vim/undo
set bdir=~/tmp/vim/backup

细心的朋友可能发现,我将这些临时文件存在自己家目录下。

这样做一方面保证用户有足够的操作权限,一方面出于安全考虑,另一方面也不会影响到其它用户的使用。

补充

我最开始将 vim 的临时文件设置到了一个没有操作权限的目录下,每次使用 vim 打开文件时,都会看到这个错误



引以为戒。

vim 的初始配置的更多相关文章

  1. vim + ctags + taglist配置和使用

    vim +ctags + taglist ,ctags+cscope 安装配置和使用 内容:VIM下ctags和taglist的安装配置方法:一键安装 ctags和cscope的方法 :vim语法高亮 ...

  2. Linux中vim的简单配置

    本文主要分享Linux中vim的简单配置 ★配置文件的位置     在目录/etc.下面,有个名为vimrc的文件,这就是系统中公共的vim配置文件,对所有用户都开放.而在每个用户的主目录下,都可以自 ...

  3. vim插件和配置

    vim插件和配置 插件 pathogen 可以方便地管理vim插件 在没有pathogen的情况下,vim插件的文件全部都放在.vim目录,卸载插件很麻烦,pathogen可以将不同的插件放在一个单独 ...

  4. Git 笔记二-Git安装与初始配置

    git 笔记二-Git安装与初始配置 Git的安装 由于我日常生活和工作基本上都是在Windows上,因此此处只说windows上的安装.Windows上的安装和其他程序一样,只需要到http://g ...

  5. IDEA 初始配置教程

    IDEA 初始配置教程 如果你是第一次使用 IDEA,或者对 IDEA 常用配置仍然不熟悉,那么本文就特别适合你. 本文只是根据我自己的使用经验来进行配置,不一定适合所有的情况,但是对你肯定会有帮助. ...

  6. Git初始配置和基本使用

    初次运行Git前的配置 本文是在安裝完git以后首先应做到一些配置,安装教程可以参考廖雪峰git教程 用户信息 当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址. 这样做很重要,因为每 ...

  7. VIM懒人配置

    VIM懒人配置 VIM配置起来,是很折腾人的.所以为了方便,直接使用前人的配置.重在用不在折腾. 1 VIM安装 一行命令. # sudo apt-get install vim 2 配置 vim的个 ...

  8. paloalto防火墙执行初始配置

    1.默认情况下,防火墙的 IP 地址为 192.168.1.1,用户名/密码为 admin/admin. 为了安全起见,在继续执行其他防火墙配置任务之前,必须更改这些设置.必须从 MGT 接口(即使计 ...

  9. Centos6.5 安装MYSQL 5.5 -5.6.-5.7 一键yum快速安装 ,初始配置

    Centos6.5 安装MYSQL 5.5 ---5.6---5.7 一键yum快速安装 ,初始配置 第一步:安装mysql-5.5---- 5.6 ---- 5.7的yum源 [root@sv03 ...

随机推荐

  1. 5分钟理解 SpringBoot 响应式的核心-Reactor

    目录 一.前言 二. Mono 与 Flux 构造器 三. 流计算 1. 缓冲 2. 过滤/提取 3. 转换 4. 合并 5. 合流 6. 累积 四.异常处理 五.线程调度 小结 参考阅读 一.前言 ...

  2. 小白的消费为何被迫升级?-java数据类型的转换

    背景 小白最近有点烦恼,原因也很简单,不知道为何?小白的消费不知不觉被迫升级了,请看费用清单: for (byte b = Byte.MIN_VALUE; b < Byte.MAX_VALUE; ...

  3. gallery的简单使用方法

    Gallery意思是"画廊",就是一个水平可左右拖动的列表,里面可以放置多个图片,经常和ImageSwitcher一起使用 在使用ImageSwitcher时,需要传入一个View ...

  4. 应用上下文webApplicationContext

    一.先说ServletContext javaee标准规定了,servlet容器需要在应用项目启动时,给应用项目初始化一个ServletContext作为公共环境容器存放公共信息.ServletCon ...

  5. java基本数据类型与引用类型

    基本数据类型: byte:Java中最小的数据类型,在内存中占8位(bit),即1个字节,取值范围-128~127,默认值0 short:短整型,在内存中占16位,即2个字节,取值范围-32768~3 ...

  6. [LeetCode]sum合集

    LeetCode很喜欢sum,里面sum题一堆. 1.Two Sum Given an array of integers, return indices of the two numbers suc ...

  7. 暑期——第四周总结(Ubuntu系统安装新版eclipse双击无法打开问题 【已解决】)

    所花时间:7天 代码行:200(python)+3000(java) 博客量:1篇 了解到知识点 : Ubuntu安装新eclipse 在通过软件中心安装好eclipse之后,发现各种东西都不顺眼,不 ...

  8. event.stopPropagation()、event.preventDefault()与return false的区别

    做小demo时经常用到return false来取消默认事件,但一直不是很懂它和preventDefault()等的区别,今天查了查文档和大神们的博客,在这里对相关知识点做一个总结 首先开门见山,总结 ...

  9. Spring boot 梳理 - @Conditional

    @Conditional(TestCondition.class) 这句代码可以标注在类上面,表示该类下面的所有@Bean都会启用配置,也可以标注在方法上面,只是对该方法启用配置. spring框架还 ...

  10. 报表统计——java实现查询某年12个月数据,没数据补0

    一般图表绘制例如echarts等,返回数据格式都大同小异.重点是利用sql或者java实现数据格式的转型,接下来是关键部分: 1.mapper层sql语句,返回统计好的月份与对应月份的数据. < ...