linux 网络配置 阮一峰,Vim 配置入门

Vim 是最重要的编辑器之一,主要有下面几个优点。

cb10e12dcd182bc1358d7accc1455f8e.png

可以不使用鼠标,完全用键盘操作。

系统资源占用小,打开大文件毫无压力。

键盘命令变成肌肉记忆以后,操作速度极快。

服务器默认都安装 Vi 或 Vim。

Vim 的配置不太容易,它有自己的语法,许许多多的命令。我总是记不清楚,所以就整理了下面这篇文章,列出主要配置项的含义。

一、基础知识

Vim 的全局配置一般在/etc/vim/vimrc或者/etc/vimrc,对所有用户生效。用户个人的配置在~/.vimrc。

如果只对单次编辑启用某个配置项,可以在命令模式下,先输入一个冒号,再输入配置。举例来说,set number这个配置可以写在.vimrc里面,也可以在命令模式输入。

:set number

配置项一般都有"打开"和"关闭"两个设置。"关闭"就是在"打开"前面加上前缀"no"。

" 打开

set number

" 关闭

set nonumber

上面代码中,双引号开始的行表示注释。

查询某个配置项是打开还是关闭,可以在命令模式下,输入该配置,并在后面加上问号。

:set number?

上面的命令会返回number或者nonumber。

如果想查看帮助,可以使用help命令。

:help number

二、基本配置

(1)

set nocompatible

不与 Vi 兼容(采用 Vim 自己的操作命令)。

(2)

syntax on

打开语法高亮。自动识别代码,使用多种颜色显示。

(3)

set showmode

在底部显示,当前处于命令模式还是插入模式。

(4)

set showcmd

命令模式下,在底部显示,当前键入的指令。比如,键入的指令是2y3d,那么底部就会显示2y3,当键入d的时候,操作完成,显示消失。

(5)

set mouse=a

支持使用鼠标。

(6)

set encoding=utf-8

使用 utf-8 编码。

(7)

set t_Co=256

启用256色。

(8)

filetype indent on

开启文件类型检查,并且载入与该类型对应的缩进规则。比如,如果编辑的是.py文件,Vim 就是会找 Python 的缩进规则~/.vim/indent/python.vim。

三、缩进

(9)

set autoindent

按下回车键后,下一行的缩进会自动跟上一行的缩进保持一致。

(10)

set tabstop=2

按下 Tab 键时,Vim 显示的空格数。

(11)

set shiftwidth=4

在文本上按下>>(增加一级缩进)、<

(12)

set expandtab

由于 Tab 键在不同的编辑器缩进不一致,该设置自动将 Tab 转为空格。

(13)

set softtabstop=2

Tab 转为多少个空格。

四、外观

(14)

set number

显示行号

(15)

set relativenumber

显示光标所在的当前行的行号,其他行都为相对于该行的相对行号。

(16)

set cursorline

光标所在的当前行高亮。

(17)

set textwidth=80

设置行宽,即一行显示多少个字符。

(18)

set wrap

自动折行,即太长的行分成几行显示。

set nowrap

关闭自动折行

(19)

set linebreak

只有遇到指定的符号(比如空格、连词号和其他标点符号),才发生折行。也就是说,不会在单词内部折行。

(20)

set wrapmargin=2

指定折行处与编辑窗口的右边缘之间空出的字符数。

(21)

set scrolloff=5

垂直滚动时,光标距离顶部/底部的位置(单位:行)。

(22)

set sidescrolloff=15

水平滚动时,光标距离行首或行尾的位置(单位:字符)。该配置在不折行时比较有用。

(23)

set laststatus=2

是否显示状态栏。0 表示不显示,1 表示只在多窗口时显示,2 表示显示。

(24)

set ruler

在状态栏显示光标的当前位置(位于哪一行哪一列)。

五、搜索

(25)

set showmatch

光标遇到圆括号、方括号、大括号时,自动高亮对应的另一个圆括号、方括号和大括号。

(26)

set hlsearch

搜索时,高亮显示匹配结果。

(27)

set incsearch

输入搜索模式时,每输入一个字符,就自动跳到第一个匹配的结果。

(28)

set ignorecase

搜索时忽略大小写。

(29)

set smartcase

如果同时打开了ignorecase,那么对于只有一个大写字母的搜索词,将大小写敏感;其他情况都是大小写不敏感。比如,搜索Test时,将不匹配test;搜索test时,将匹配Test。

六、编辑

(30)

set spell spelllang=en_us

打开英语单词的拼写检查。

(31)

set nobackup

不创建备份文件。默认情况下,文件保存时,会额外创建一个备份文件,它的文件名是在原文件名的末尾,再添加一个波浪号(〜)。

(32)

set noswapfile

不创建交换文件。交换文件主要用于系统崩溃时恢复文件,文件名的开头是.、结尾是.swp。

(33)

set undofile

保留撤销历史。

Vim 会在编辑时保存操作历史,用来供用户撤消更改。默认情况下,操作记录只在本次编辑时有效,一旦编辑结束、文件关闭,操作历史就消失了。

打开这个设置,可以在文件关闭后,操作记录保留在一个文件里面,继续存在。这意味着,重新打开一个文件,可以撤销上一次编辑时的操作。撤消文件是跟原文件保存在一起的隐藏文件,文件名以.un~开头。

(34)

set backupdir=~/.vim/.backup//

set directory=~/.vim/.swp//

set undodir=~/.vim/.undo//

设置备份文件、交换文件、操作历史文件的保存位置。

结尾的//表示生成的文件名带有绝对路径,路径中用%替换目录分隔符,这样可以防止文件重名。

(35)

set autochdir

自动切换工作目录。这主要用在一个 Vim 会话之中打开多个文件的情况,默认的工作目录是打开的第一个文件的目录。该配置可以将工作目录自动切换到,正在编辑的文件的目录。

(36)

set noerrorbells

出错时,不要发出响声。

(37)

set visualbell

出错时,发出视觉提示,通常是屏幕闪烁。

(38)

set history=1000

Vim 需要记住多少次历史操作。

(39)

set autoread

打开文件监视。如果在编辑过程中文件发生外部改变(比如被别的编辑器编辑了),就会发出提示。

(40)

set listchars=tab:»■,trail:■

set list

如果行尾有多余的空格(包括 Tab 键),该配置将让这些空格显示成可见的小方块。

(41)

set wildmenu

set wildmode=longest:list,full

命令模式下,底部操作指令按下 Tab 键自动补全。第一次按下 Tab,会显示所有匹配的操作指令的清单;第二次按下 Tab,会依次选择各个指令。

七、参考链接

(完)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/393031.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux 文件区块连续吗,关于Linux文件系统的的简单理解和认识

关于Linux文件系统的的简单理解和认识关于文件系统的运作&#xff0c;这与操作系统带的档案数据有关。例如Linux操作系统的档案权限(rwx)与文件属性(拥有者&#xff0c;群组&#xff0c;时间参数等)。文件系统通常会将这两部分的数据分别存放在不同的区块&#xff0c;权限与属性…

Microsoft Desktop Virtualization

基本上有两套啦&#xff0c;一是大家较为熟悉的MED-V。另外就是VDI(虚拟桌面基础架构)&#xff0c;也就是以下的组合&#xff1a;1、Windows Server 2008 with Hyper-V 2、System Center Virtual Machine Manager (VMM) 2008 VMM 20083、Windows Vista Enterprise Centralized …

签入在服务器上之后,别人获取了,在解决方案资源管理器中找不到。

签入在服务器上之后&#xff0c;别人获取了&#xff0c;在解决方案资源管理器中找不到。 这个问题具体原因我也不太清楚&#xff0c;但是我找到了一个解决方案。直接在解决方案上右键&#xff0c;添加&#xff0c;添加现有项。把在解决方案资源管理器上看不见的选中&#xff0c…

03JavaScript程序设计修炼之道-2019-06-20_20-31-49

## DomDocument object model 文档对象模型Dom树html|head body| |meta title div|ul|li li li在js世界中&#xff0c;把dom树的每个元素都看成一个对象&#xff0c;对象就有属性和方法dom学什么 dom节点操作 查找元素 元素增删改查 样式操作 事件绑定等## 事件三要素 1 事件源…

linux 独占 cpu,宋宝华:谈一谈Linux让实时 高性能任务独占CPU的事

本文主要讨论在高实时要求、高效能计算、DPDK等领域&#xff0c;Linux如何让某一个线程排他性独占CPU&#xff1b;独占CPU涉及的线程、中断隔离原理&#xff1b;以及如何在排他性独占的状况下&#xff0c;甚至让系统的timer tick也不打断独占任务&#xff0c;从而实现最低的延迟…

linux update语句,MySQL 多表 update sql语句总结

MySQL 多表 update 有几种不同的写法。假定我们有两张表&#xff0c;一张表为Product表存放产品信息&#xff0c;其中有产品价格列Price&#xff1b;另外一张表是ProductPrice表&#xff0c;我们要将ProductPrice表中的价格字段Price更新为Price表中价格字段的80%。在Mysql中我…

linux延时与定时操作

1、at ---系统延迟任务发起命令 at time >command ---任务指令 >ctrld ---发起任务 at -l ---列出延时任务Id at -r id ---删除改id任务 at -m ---让无输出的命令产生邮件 at -M ---让有输…

Windows Server 2008 部署权限管理RMS

1.1 实战&#xff1a;部署权限管理 试验目的&#xff1a; 在单域环境中部署活动目录权限管理服务&#xff0c;实现文档的保护。 试验环境&#xff1a; ? DCServer安装Windows Server 2008企业版&#xff0c;是ess.com的域控制器&#xff0c;安装企业CA。 ? RMSServer安装Wind…

编写一个字节数的rtu C语言校验程序,Modbus通信协议中CRC校验的快速C语言算法

Modbus通信协议中CRC校验的快速C语言算法2004年第11期            福 建 电 脑  63Modbus通信协议中CRC校验的快速C语言算法孟开元(西安石油大学计算机学院陕西西安710065)【摘 要】 本文主要讨论了Modbus通信协议的RTU帧格式中常用的错误校验方法,即循环冗…

如何让CloudStack使用KVM创建Windows实例成功识别并挂载数据盘

问题产生背景&#xff1a; 使用CloudStack KVM组合进行资源池纳管工作&#xff0c;通过ISO镜像文件创建了两个模板&#xff1a; RHEL6U3 64位系统以及WindowsServer2008 R2 SP1 64位系统。然后通过模板创建实例&#xff0c;挂载外接存储&#xff0c;实例启动后&#xff0c;通过…

云计算openstack介绍

转载于:https://www.cnblogs.com/WIU1905/p/11107593.html

**加密解密基础、PKI及SSL、创建私有CA**

进程间通信 socket通信 客户端-->请求--> 路由转发 --> 服务端&#xff0c;取出资源 --> 封装为可响应给客户端的请求报文从接收请求端口发出 SSL/TLS协议的实现 OpenSSL OpenSSL程序组件 1234[rootlocalhost CA]# rpm -ql openssl /usr/lib/libcrypto.so.10 //加…

5.3 上午

观看英语课程——《恋练有词》 学习Linux 转载于:https://www.cnblogs.com/bgd140206110/p/6801164.html

mysql索引随记

为什么80%的码农都做不了架构师&#xff1f;>>> 先了解下Btree&#xff1a;https://my.oschina.net/u/3646190/blog/1593094 为什么每个数据项&#xff0c;即索引字段要尽量的小&#xff0c;比如int占4字节&#xff0c;要比bigint8字节少一半&#xff1f; 通过上面…

c语言写桌面程序unity,Unity和iOS原生界面交互示例

注意上面的Main方法中出现的UnityAppController&#xff0c;该类就是作为控制类来实现Unity在iOS上显示的功能&#xff0c;在Main方法中就是将该控制器作为参数传递&#xff0c;即Main方法之后就会进入该类执行。所以这是我们进入到UnityAppController.mm&#xff0c;来查看该类…

浏览器中插入富文本编辑器

常用的富文本编辑器有CKEditor、UEEditor、TinyEditor、KindEditor等、以下以kindeditor编辑器的使用为例。 1.官网下载KindEditor编辑器http://kindeditor.net/down.php&#xff0c; 当前最新版本为4.1.11&#xff0c;解压缩后放入项目的static目录&#xff0c;作为js插件引用…

获取Extjs文本域中的内容

经常在Ext.select()和Ext.query()等问题上纠结&#xff0c;今天终于有了点新认识&#xff1a; 需求&#xff0c;假设我们的页面上有个panel ,其id为clusterstab_edit_details,这个panel的内部有个textarea,这个textarea的name为editDetails_Description,那么我们有多少方法可以…

Asp.NetCoreWebApi - RESTful Api

REST 常用http动词 WebApi 在 Asp.NetCore 中的实现3.1. 创建WebApi项目.3.2. 集成Entity Framework Core操作Mysql 3.2.1. 安装相关的包(为Xxxx.Infrastructure项目安装)3.2.2. 建立Entity和Context3.2.3. ConfigureService中注入EF服务3.2.4. 迁移数据库3.2.5. 数据库迁移结果…

android动画影子效果,Android TV常用动画的效果,View选中变大且有阴影(手机也能用)...

因为电视屏幕比较大&#xff0c;而我们看电视时距离电视有一定距离&#xff0c;这样就需要动画效果比较明显&#xff0c;这个动画就是应用最广泛的&#xff0c;因为很酷&#xff0c;呵呵&#xff0c;你懂得&#xff0c;看了就知道。效果如下图&#xff1a;public class MainAct…

linux 高可用----keepalived+lvs

什么是高可用&#xff1f; HA&#xff08;high availability&#xff09;即高可用性&#xff1b;就是在高可用集群中发生单点故障时&#xff0c;能够自动转移资源并切换服务&#xff0c;以保证服务一直在线的机制。 LVS LVS&#xff1a;&#xff08;linux virtual server&#…