linux全套 | vi和vim编辑器 | 04

vi和vim的基本介绍

所有的linux系统都会内建vi文本编辑器.

vim具有程序编辑的能力,可以看作是vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计. 代码补全,编译几错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.

vi和vim的三种常见模式

正常模式

在正常模式下,我们可以使用快捷键.

vim打开一个文件默认就是进入正常模式.

在这个模式中, 可以使用上下左右来移动光标,对文档内容进行各种复制,删除,粘贴的操作.

插入模式

在模式下,程序员可以输入内容.

一般按a,i进行编辑输入.

命令行模式

在命令行模式中,输入相关指令,完成读取,存盘,替换,离开vim,显示行号等操作.

vi和vim 三种模式的相互转化图

vim的快捷键

  1. 选中,剪切,粘贴
选中  v
剪切  d
粘贴  p
  1. 拷贝当前行
yy  拷贝当前行
5yy  拷贝当前向下的5行
p 粘贴

  1. 删除当前行
dd  删除当前行
5dd  删除当前向下的5行
  1. 撤销,不撤销
u  Ctrl+z
Ctrl+r  Ctrl+y   
  1. 全选操作
v  可视化选择
gg  首行
G  尾行
  1. 查找
/关键字  查找关键字
n,b  前进和后退
:noh  退出查找高亮
  1. 跳转指定行数
行数+G/gg  跳转指定行数

vim的基本配置

修改vim的配置文件

如果是对个人用户,配置文件一般设置为隐藏文件~/.vimrc

vim的基本配置

默认情况下,Vim编辑器里既不显示行号,也没有语法高亮,智能缩进. 为了方便使用,基本的Vim选项一般会包括:

支持中文不乱码

'设置编码'
set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936
set termencoding=utf-8
set encoding=utf-8

与Vim编码有关的变量包括:encodinfileencodingtermencoding
encoding选项用于缓存的文本、寄存器、Vim脚本文件等;fileencoding选项是Vim写入文件时采用的编码类型;ermencoding选项表示输出到终端时采用的编码类型。

显示行号

'显示行号'
set nu

nunumber的缩写,所以上面两个配置命令是完全等效的。

突出显示当前行,列

set cul
set cuc

启用鼠标

set mouse=a
set selection=exclusive
set selectmode=mouse,key

Vim编辑器里默认是不启用鼠标的,也就是说不管你鼠标点击哪个位置,光标都不会移动。通过以上设置就可以启动鼠标,不过对于高级玩家来说,用Vim就是为了解放双方不用鼠标,所以这个设置可以根据个人爱好选择。

显示括号匹配

set showmatch

设置缩进

'设置Tab长度为4空格'
set tabstop=4
'设置自动缩进长度为4空格'
set shiftwidth=4
'继承前一行的缩进方式,适用于多行注释'
set autoindent

设置粘贴模式

set paste

Vim中通过鼠标右键粘贴时会在行首多出许多缩进和空格,通过set paste可以在插入模式下粘贴内容时不会有任何格式变形、胡乱缩进等问题

打开文件类型检测

filetype plugin indent on

显示状态栏和光标当前位置

'总是显示状态栏'
set laststatus=2
'显示光标当前位置'
set ruler
posted @ 2020-03-19 00:00  RowryCho  阅读(210)  评论(0编辑  收藏  举报