饥人谷任务饥人谷技术博客

入门任务2 VIM简明按键功能

2017-05-16  本文已影响0人  饥人谷_zhangfan

Vim是从vi发展出来的一个高级文本编辑器,在编写程序时非常有用,经常被认为“程序员的编辑器”,支持Linux、Mac OS、Windows系统,它具有以下附加功能:语法突出显示,全面的帮助系统,本地脚本(vim script),文本选择的可视模式和文件比较(vim diff)。在终端中输入vim [filename]命令即可进入Vim编辑器对该文件进行编辑,若文件不存在,则会在当前目录下以这个文件名新建一个文件。

vim 拥有** 插入模式 ** 、正常模式命令模式,进入vim后会直接进入编辑模式,按下i进入插入模式,按Esc退出插入模式,在编辑模式下输入:即可进入命令模式,进行保存、退出等操作。在这里总结一下vim入门的按键功能:

移动光标
要确保按Esc退出插入模式,回到正常模式当中

| 按键 | 功能 |
|: --- :| : --- : |
|h|光标左移|
|l| 光标右移
|k| 光标上移
|j |光标下移
|Ctrl+f |向下翻一页
|Ctrl+b |向上翻一页
|Ctrl+d |向下翻半页
|Ctrl+u |向上翻半页
|0|数字键0表示移动光标到行首
|$|从当前光标当前位置直到当前行末
|w|从当前光标当前位置直到下一个单词起始处,不包括它的第一个字符
|e|从当前光标当前位置直到单词末尾,包括最后一个字符

VIM的进入和退出

| 按键 | 功能 |
|: --- :| : --- : |
|:w |保存数据
|:w filename |保存数据到文件中
|:w! |保存时强制写入数据,不管文件是否为只读文件
|:q |关闭Vim,对所做的修改不做保存
|:wq |强制保存数据并关闭Vim
|:q! | 强制关闭vim

文本编辑之插入

| 按键 | 功能 |
|: --- :| : --- : |
|i|在光标前插入文本
|a|在光标后插入文本
|A|在一行后插入文本
|o(小写)|在光标下方打开新一行并进入插入模式
|O(大写)|在光标上方打开新一行并进入插入模式
|y|(复制)高亮的文本
|p|将最后一次删除或者复制的内容放置在当前行的下一行
|r filename| 向当前文件插入另外的文件(filename)内容

文本编辑之删除

| 按键 | 功能 |
|: --- :| : --- : |
|x |删除光标所在位置的字符
|dw|从光标处删除至一个单词的末尾,包括后面的空格(个人理解的意思
|de|从当前光标处删除至单词的末尾,不包括后面的空格(个人理解的意思
|d$| 从当前光标删除到行末
|dd | 删除一整个当前行

撤销类命令

| 按键 | 功能 |
|: --- :| : --- : |
|u|撤销最后执行的(一次)命令
|U|恢复该行的原始状态
|Ctrl+R|重做(恢复)被撤销的命令
|d$| 从当前光标删除到行末
|dd | 删除一整个当前行

替换类命令

| 按键 | 功能 |
|: --- :| : --- : |
|r|替换光标所在位置的字符
|R|可连续替换多个字符
|ce|改变文本直到一个单词的末尾
|cw|改变文本直到一个单词的末尾
|:s/a/b/|可以把a替换为 b(只改变第一个匹配串)
|:s/a/b/g|可以把a替换为 b(全局改变)
|:#,#s/a/b/g| #,# 代表的是替换操作的若干行中 首尾两行的行号
|:%s/a/b/g|替换整个文件中的每个匹配串
|:%s/a/b/gc|会找到整个文件中的每个匹配串,并且对每个匹配串提示是否进行替换。

定位及搜索命令

| 按键 | 功能 |
|: --- :| : --- : |
|v|进入可视模式进行选取
|ctrl+G|显示当前编辑文件中当前光标所在行位置以及文件状态信息
|G|跳转到文件最后一行
|gg|跳转到文件第一行
|行号+G| 返回到您第一次按下CTRL-G 时所在的行
|/+字符串 | 在当前文件中查找该字符串
|?+字符串 | 在当前文件逆向查找该字符串
|n | 查找同上一次的字符串
|N | 反向查找同上一次的字符串
|% | 可以查找配对的括号 )、]、}

关于命令和对象
许多改变文本的命令都由一个操作符和一个动作构成,还可以加上数字表示计数
operator number motion

例如:d2w

d - 删除操作符。
2 -删除2次。
motion - 操作符的操作对象(在下面列出)。

一个简短的动作列表:
w - 从当前光标当前位置直到下一个单词起始处,不包括它的第一个字符。
e - 从当前光标当前位置直到单词末尾,包括最后一个字符。
$ - 从当前光标当前位置直到当前行末。

只要明白这个格式,许多命令都是如此组合而来的,大家可以试试。

本文只是为了简明地介绍一下 Vim 编辑器,vim还有很多很多的命令,本文所介绍的距离完整的差得很远。路漫漫其修远兮,吾将上下而求索~

上一篇下一篇

猜你喜欢

热点阅读