特点
- 无图形界面;
- 只能编辑文本内容,不能进行排版;
- 不支持鼠标操作;
- 无菜单、只有命令;
工作模式
- 命令模式:对文件进行常规编辑操作,如定位、翻页、复制等,是
vim
的入口; - 末行模式:执行保存、退出等功能,是
vim
的出口; - 编辑模式:正常的文字编辑功能;
命令及对应功能
功能 | 命令 |
---|---|
打开文件并定位行 | vim fileName + row |
保存 | w |
退出,未保存不许退出 | q |
强制退出 | q! |
保存并退出 | x |
重复命令多次 | 先输入一个数字,再跟上一个命令 |
向上 | h |
向下 | j |
向左 | h |
向右 | l |
向后移动一个单词 | w |
向前移动一个单词 | b |
行首 | 0 |
行首,第一个非空白字符的位置 | ^ |
行尾 | $ |
文件顶部 | gg |
文件末尾 | G |
移动到row 对应行数 | row gg 、row G 、:row |
向上翻页 | ctrl + b |
向下翻页 | ctrl + f |
屏幕顶部 | H |
屏幕中间 | M |
屏幕底部 | L |
上一段 | { |
下一段 | } |
括号匹配及切换 | % |
添加标记x | mx |
定位到标记x 所在位置 | ‘x |
从光标位置开始选择文本 | v |
选中光标经过的完整行 | V |
垂直方向选中文本 | ctrl + v |
撤销 | u |
恢复撤销 | ctrl + r |
删除光标所在字符或选中文字 | x |
删除移动命令对应内容 | d |
删除光标所在行,ndd 复制多行 | dd |
删除至行尾 | D |
复制 | y |
复制一行,nyy 复制多行 | yy |
粘贴 | p |
替换当前字符 | r |
替换当前行光标后的字符 | R |
向右增加缩进 | >> |
向左减少缩进 | << |
重复上次命令 | . |
查找str ,n 查找下一个,N 查找上一个 | /str |
向后查找当前光标所在单词 | * |
向前查找当前光标所在单词 | # |
全局替换 | :%s/旧文本/新文本/g |
可视区域替换 | :s/旧文本/新文本/g |
确认替换 | :%s/旧文本/新文本/gc |
当前字符前插入文本 | i |
行首插入文本 | I |
当前字符后添加文本 | a |
行末添加文本 | A |
当前行后插入一空行 | o |
当前行前插入一空行 | O |
打开内置文件浏览器,浏览当前目录下文件 | :e . |
新建文件 | :n |
横向增加分屏 | :sp [fileName] |
纵向增加分屏 | :vsp [fileName] |
常用配置
一般而言,想要配置Vim的相关设置,需要在root用户的权限下修改/etc/vim/vimrc或/etc/vimrc
文件相关内容。常用的配置如下:
set autoindent " 按下回车后,下一行缩进格式与上一行保持一直set tabstop=4 " 设置Tab键显示的空格数set spell spelllang=en_us "英语单词拼写检查set number " 设置行号set nocompatible " 设置是否与Vi兼容syntax on " 语法高亮set showmode " 显示当前属于命令模式还是插入模式set encoding=utf-8 " 设置utf-8编码set t_Co=256 " 启用256色filetype indent on " 文件类型检查set noerrorbells "出错时不要发出响声警告set mouse=a " 支持鼠标
总结
以上就是对与Linux中编辑器Vim的相关介绍以及基本操作的详细内容了,Vim这款编辑器在Vi的基础上又进一步,增加了新的功能,大大提高了开发效率。但同时,Vim对于新手而言是一个不太友好的编辑器,因为需要记住许多命令。所以我们作为一个新手想要快速掌握Vim的使用技巧,唯一的方法就是多去实践,在不断使用它的过程中我们就会发现我们对它的使用越来越熟练。