VIM经常使用操作
VIM使用
移动命令
| 按键 | 说明 |
|---|---|
h |
左 |
l |
右(小写L) |
j |
下 |
k |
上 |
w |
移动到下一个单词 |
b |
移动到上一个单词 |
进入插入模式
| 命令 | 说明 |
|---|---|
i |
在当前光标处进行编辑 |
I |
在行首插入 |
A |
在行末插入 |
a |
在光标后插入编辑 |
o |
在当前行后插入一个新行 |
O |
在当前行前插入一个新行 |
cw |
替换从光标所在位置后到一个单词结尾的字符 |
命令行模式退出
| 命令 | 说明 |
|---|---|
:q! |
强制退出。不保存 |
:q |
退出 |
:wq! |
强制保存并退出 |
:w <文件路径> |
另存为 |
:saveas 文件路径 |
另存为 |
:x |
保存并退出 |
:wq |
保存并退出 |
普通模式
普通模式下删除
| 命令 | 说明 |
|---|---|
x |
删除游标所在的字符 |
X |
删除游标所在前一个字符 |
Delete |
同x |
dd |
删除整行 |
dw |
删除一个单词(不适用中文) |
d$或D |
删除至行尾 |
d^ |
删除至行首 |
dG |
删除到文档结尾处 |
d1G |
删至文档首部 |
能够在命令前加数字。比方10dd 删除10行
反复运行上次命令
光标的高速跳转
| 命令 | 说明 |
|---|---|
nG(n Shift+g) |
游标移动到第 n 行(假设默认没有显示行号,请先进入命令模式。输入:set以显示行号) |
gg |
游标移动到到第一行 |
G(Shift+g) |
到最后一行 |
使用ctrl+o 能够高速跳转到上次(跳转前)位置
| 命令 | 说明 |
|---|---|
w |
到下一个单词的开头 |
e |
到下一个单词的结尾 |
b |
到前一个单词的开头 |
ge |
到前一个单词的结尾 |
0或^ |
到行头 |
$ |
到行尾 |
f<字母> |
向后搜索<字母>并跳转到第一个匹配的位置(很有用) |
F<字母> |
向前搜索<字母>并跳转到第一个匹配的位置 |
t<字母> |
向后搜索<字母>并跳转到第一个匹配位置之前的一个字母(不经常使用) |
T<字母> |
向前搜索<字母>并跳转到第一个匹配位置之前的一个字母(不经常使用) |
复制和粘贴
普通模式下y 是复制 p是粘贴 普通模式中,yy复制游标所在的整行(3yy表示复制3行)
普通模式中。y^ 复制至行首。或y0。不含光标所在处字符。
普通模式中,y$ 复制至行尾。含光所在处字符。 普通模式中,yw 复制一个单词。
普通模式中,y2w 复制两个单词。
普通模式中。yG 复制至文本末。 普通模式中。y1G 复制至文本开头。 普通模式中,p(小写)代表粘贴至光标后(下)
普通模式中,P(大写)代表粘贴至光标前(上)
剪贴
dd删除命令就是剪切,你每次dd删除文档内容后,便能够使用p来粘贴,也这一点能够让我们实现一个非常爽快的功能——交换上下行: ddp,就这么简单,即实现了高速交换光标所在行与它以下的行
替换和撤销(undo)
| 命令 | 说明 |
|---|---|
r+<待替换字母> |
将游标所在字母替换为指定字母 |
R |
连续替换,直到按下Esc |
cc |
替换整行,即删除游标所在行,并进入插入模式 |
cw |
替换一个单词,即删除一个单词,并进入插入模式 |
C(大写) |
替换游标以后至行末 |
~ |
反转游标所在字母大写和小写 |
u{n} |
撤销一次或n次操作 |
U(大写) |
撤销当前行的全部改动 |
Ctrl+r |
redo。即撤销undo的操作 |
高速缩进
普通模式下输入>> 整行将向右缩进(使用。用于格式化代码超爽)
普通模式下输入<< 整行向左回退
普通模式下输入:进入命令行模式下对shiftwidth值进行设置能够控制缩进和回退的字符数
vim key_map 附上
VIM经常使用操作的更多相关文章
- vim 模式基础操作
作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 前言 虽然Emacs已经可以完成大部分的编辑操作,但有时候为了方便也会用到vim.所以记录了 ...
- (转)vim(vi)常用操作及记忆方法
vim(vi)常用操作及记忆方法 原文:https://www.cnblogs.com/doseoer/p/6241443.html vi(vim)可以说是linux中用得最多的工具了,不管你配置服务 ...
- 搞定vim的窗口操作
最近在给学生演示数据结构代码时,发现用一般的方法总会有不方便,如果使用ide又觉得太浪费了,后来觉得用vim就够了,使用buffer总会需要页面调来跳出,学生看起来容易迷糊.所以就研究了下vim的窗口 ...
- vim(vi)常用操作及记忆方法
vi(vim)可以说是linux中用得最多的工具了,不管你配置服务也好,写脚本也好,总会用到它.但是,vim作为一个“纯字符”模式下的工具,它的操作和WINDOWS中的文本编辑工具相比多少有些复杂.这 ...
- VIM的一些操作小技巧
vim的设计理念是:组合. 命令的组合,模式的组合, 普通模式 左: h 上:k 下:j 右 : l i : 当前光标处插入 I: 到光标所在行的行首进入插入模式 a: 在当前光标的后一位 ...
- 超级编辑器--VIM的常见操作
如下,都是我常用的 删除单词: d + w 关闭vim窗口: :q 或者 shift + zz 全部向左移: shift + v ---> shift + < ---&g ...
- Vimrc配置以及Vim的常用操作
""""""""""""""""&quo ...
- vim下高级操作以及文本替换命令
关于vim的一些基本和高级的操作 可参考下面的链接. http://coolshell.cn/articles/5426.html 在使用vim编辑文本的时候涉及到批量替换文本内容 :s/vivian ...
- 利用xshell密钥管理服务器远程登录+VIM dd命令操作之伤之再伤
1.打开Xshell界面,中文界面方便操作,菜单栏:工具——新建用户密钥生成向导 2.密钥类型选择RSA,密钥长度选择2048位,单击下一步继续: 3.很快生成公钥对,单击下一步继续: 4.密钥名称可 ...
- vim 基本编辑操作
一.光标跳转到指定行 1.在命令模式下,跳转到指定行 :n (n为行号) 2.命令行加参数 vim +n fileName 3.命令行加参数 vim + fileName 光标移至文件底部 4. ...
随机推荐
- 机器学习(1):Logistic回归原理及其实现
Logistic回归是机器学习中非常经典的一个方法,主要用于解决二分类问题,它是多分类问题softmax的基础,而softmax在深度学习中的网络后端做为常用的分类器,接下来我们将从原理和实现来阐述该 ...
- PostgreSQL控制台以竖行显示
\x select * from user; 这个和MySQL的有点区别,在查询之前使用\x进行显示的开启 注意:只需要用一次即可,以后的查询都是以竖行进行显示.
- Flex父子窗体相互调用
Flex父子窗体相互调用 1.设计思路 (1)子窗体调用父窗体的方法 (2)子窗体做了改动后,返回父窗体,父窗体调用子窗体函数 2.设计源代码 (1)父窗体 ParentWindow.mxml: &l ...
- ATMEL精妙的IRQ中断处理过程
A: 从栈地址开始,栈顶为AT91SAM7S64的16K片内RAM尽头0x00204000IRQ_STACK_SIZE = 3*8*4FIQ_STACK_SIZE = 0x004ABT_STACK_S ...
- 关于WEB集群中文件服务器的讨论
原文地址: http://blog.itpub.net/29806344/viewspace-1364778/ 在WEB集群中一般都要上传和删除图片.小规模的时候,图片放在本地,再通过同步方式来保持一 ...
- jsp中简易版本的图片上传程序
1.下载相应的组件的最新版本 Commons FileUpload 可以在http://jakarta.apache.org/commons/fileupload/下载 附加的Commons IO ...
- table固定首行(一)
<html> <head> <title>Untitled Document</title> <meta http-equiv="Con ...
- 最值得你所关注的10个C语言开源项目
. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具.它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接 ...
- 23.读写锁ReadWriteLock
ReentrantReadWriteLock 所谓的读写锁,是访问资源共享共享锁.互斥锁,如果对资源加了写锁,其他线程无法获取写锁与读锁,但是持有写锁的线程,可以对资源 加读锁:如果一 ...
- C++的Vector用法
转自:http://www.cnblogs.com/wang7/archive/2012/04/27/2474138.html 在c++中,vector是一个十分有用的容器,下面对这个容器做一下总结. ...