vim 的初始配置
我是一个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 的初始配置的更多相关文章
- vim + ctags + taglist配置和使用
vim +ctags + taglist ,ctags+cscope 安装配置和使用 内容:VIM下ctags和taglist的安装配置方法:一键安装 ctags和cscope的方法 :vim语法高亮 ...
- Linux中vim的简单配置
本文主要分享Linux中vim的简单配置 ★配置文件的位置 在目录/etc.下面,有个名为vimrc的文件,这就是系统中公共的vim配置文件,对所有用户都开放.而在每个用户的主目录下,都可以自 ...
- vim插件和配置
vim插件和配置 插件 pathogen 可以方便地管理vim插件 在没有pathogen的情况下,vim插件的文件全部都放在.vim目录,卸载插件很麻烦,pathogen可以将不同的插件放在一个单独 ...
- Git 笔记二-Git安装与初始配置
git 笔记二-Git安装与初始配置 Git的安装 由于我日常生活和工作基本上都是在Windows上,因此此处只说windows上的安装.Windows上的安装和其他程序一样,只需要到http://g ...
- IDEA 初始配置教程
IDEA 初始配置教程 如果你是第一次使用 IDEA,或者对 IDEA 常用配置仍然不熟悉,那么本文就特别适合你. 本文只是根据我自己的使用经验来进行配置,不一定适合所有的情况,但是对你肯定会有帮助. ...
- Git初始配置和基本使用
初次运行Git前的配置 本文是在安裝完git以后首先应做到一些配置,安装教程可以参考廖雪峰git教程 用户信息 当安装完 Git 应该做的第一件事就是设置你的用户名称与邮件地址. 这样做很重要,因为每 ...
- VIM懒人配置
VIM懒人配置 VIM配置起来,是很折腾人的.所以为了方便,直接使用前人的配置.重在用不在折腾. 1 VIM安装 一行命令. # sudo apt-get install vim 2 配置 vim的个 ...
- paloalto防火墙执行初始配置
1.默认情况下,防火墙的 IP 地址为 192.168.1.1,用户名/密码为 admin/admin. 为了安全起见,在继续执行其他防火墙配置任务之前,必须更改这些设置.必须从 MGT 接口(即使计 ...
- 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 ...
随机推荐
- Django框架下的增强分页组件
本文通过文章同步功能推送至博客园,显示排版可能会有所错误,请见谅! 描述:Django框架内置了分页功能,但其只能满足简单需求,难以实现复杂功能. 实现代码: #!/usr/bin/env pytho ...
- Go操作MySQL
MySQL是常用的关系型数据库,本文介绍了Go语言如何操作MySQL数据库. Go操作MySQL 连接 Go语言中的database/sql包提供了保证SQL或类SQL数据库的泛用接口,并不提供具体的 ...
- android 定时提醒 - Notification
定时弹出 demo ,代码如下: 1.MainActivity.java public class MainActivity extends Activity implements OnClickLi ...
- python SSTI利用
原理python的SSTI不仅可以向网页插入一些XSS代码,而且还可以获取一些变量和函数信息,尤其是secret_key,如果获取到则可以对flask框架的session可以进行伪造.对于tornad ...
- CSS——设置背景
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- IBM MQ reason code list
The reason code parameter (Reason) is a qualification to the completion code parameter (CompCode). I ...
- Docker Gitlab CI 部署 Spring Boot 项目
目前在学习这一块的内容,但是可能每个人环境都不同,导致找不到一篇博客能够完全操作下来没有错误的,所以自己也写一下,记录一下整个搭建的过程. Docker 的安装这里就不赘述了,基本上几行命令都可以了, ...
- [STL] Implement "vector", ”deque“ and "list"
vector “可增的”数组 vector是一块连续分配的内存,从数据安排的角度来讲,和数组极其相似. 不同的地方就是: (1) 数组是静态分配空间,一旦分配了空间的大小,就不可再改变了: (2) v ...
- php 循环从数据库分页取数据批量修改数据
//批量修改email重复 public function getEmail() { $this->model = app::get('shop')->model('manage'); / ...
- WordPress后台地址路径修改方法
用过WordPress后台的,其实都知道http://域名目录/wp-login.php就是登录地址,如果这时候使用暴力破解,很可能破解密码(这就有些想象力了),下面芝麻带你看看如何自定义美观的地址. ...