vim初级命令
|
命令 |
说明 |
|
光标移动 |
|
|
h |
左 |
|
l(小写L) |
右 |
|
j |
下 |
|
k |
上 |
|
w |
移动到下一个单词 |
|
b |
移动到上一个单词 |
|
插入 |
|
|
i |
在当前光标处进行编辑 |
|
I(大写i) |
在行首插入 |
|
A |
在行末插入 |
|
a |
在光标后插入编辑 |
|
o |
在当前行后插入一个新行 |
|
O |
在当前行前插入一个新行 |
|
cw |
替换从光标所在位置后到一个单词结尾的字符 |
|
退出 |
|
|
:q! |
强制退出, 不保存 |
|
:q |
退出 |
|
:wq! |
强制保存并退出 |
|
:w <文件路径> |
另存为 |
|
:saveas 文件路径 |
另存为 |
|
:x |
保存并退出 |
|
:x |
保存并退出 |
|
:wq |
|
|
删除 |
|
|
x |
删除光标所在的字符 |
|
X |
删除光标所在前一个字符 |
|
Delete |
同x |
|
dd |
删除整行 (也是剪切) |
|
dw |
删除一个单词(不适用中文) |
|
d$或D |
删除至行尾 |
|
d^ |
删除至行首 |
|
dG |
删除到文档结尾处 |
|
d1G |
删除至文档首部 |
|
其他 |
|
|
. |
重复上一次命令 |
|
n<命令> |
5x, 3dd 执行指定次数相同的命令 |
|
:set nu |
显示行号 |
|
~ |
将光标所在字母变成大写或小写 |
|
光标快速跳转 |
|
|
nG |
光标移动到第n行 |
|
gg |
光标移动到第一行 |
|
G |
光标移动到最后一行 |
|
w |
下一个单词开头 |
|
e |
下一个单词的结尾 |
|
b |
前一个单词开头 |
|
ge |
前一个单词结尾 |
|
0或^ |
到行头 |
|
$ |
到行尾 |
|
f<字母> |
向后搜索<字母>并跳转到第一个匹配的位置 |
|
F<字母> |
向前搜索<字母>并跳转到第一个匹配的位置 |
|
复制及粘贴文本 |
|
|
yy |
复制有表所在整行 (3yy表示复制3行) |
|
y^ |
复制至行首 |
|
y$ |
复制至行尾, 含光标所在处字符 |
|
yw |
复制一个单词 |
|
y2w |
复制两个单词 |
|
yG |
复制至文本末 |
|
y1G |
复制至文本开头 |
|
p(小写) |
粘贴至光标后(下) |
|
P(大写) |
粘贴至光标前(上) |
|
替换和撤销 |
|
|
r + <待替换字母> |
|
|
R |
连续替换, 直到按下Esc |
|
快速缩进 |
|
|
>> |
整行向右缩进 |
|
<< |
整行向左回退 |
|
:set sw=4或者 :set shiftwidth = 8 |
设置缩进和回退的字符数 sw是shiftwidth的简写 |
|
:set sw? |
查看缩进字符数 |
|
调整文本位置 |
|
|
:ce |
本行内容居中 |
|
:ri |
本行文本靠右 |
|
:le |
本行内容靠左 |
|
查找 |
|
|
/<字符串> |
向下查找 |
|
?<字符串> |
向上查找 |
|
n |
查找下一个 |
|
N |
查找上一个 |
|
n和 N |
继续查找命令 |
|
多文件编辑 |
|
|
vim 1.txt 2.txt |
默认打开1.txt |
|
:n |
编辑下一个文件 |
|
:N |
编辑上一个文件 |
|
:n! 和:N! |
强制切换 |
|
:e 3.txt |
打开新文件3.txt |
|
:e# |
返回前一个文件 |
|
:ls |
列出以前编辑过的文档 |
|
:b 2.txt |
直接进入文件(或编号)2.txt |
|
:bd 2.txt |
删除以前编辑过的列表中的文件项目(或编号) |
|
:e! 4.txt |
新打开文件4.txt, 放弃正在编辑的文件 |
|
:f |
显示正在编辑的文件名 |
|
:f new.txt |
改变正在编辑的文件名字为new.txt |
|
恢复文件(断点或其他未保存文档) |
|
|
vim -r |
进入文档 |
|
:ewcover 1.txt |
恢复 |
|
选取 |
|
|
v(小写) |
字符选择, 移动光标, 再次按v取消选取 |
|
Shift+v |
整行选取 |
|
Ctrl + v |
矩形选取 |
|
d |
删除选取区域 |
|
y |
复制选取区域 |
|
视窗操作 |
|
|
:new |
打开一个新的vim视窗 |
|
:new 1.txt |
打开一个新的vim视窗, 命名为1.txt |
|
:sp 1.txt |
打开新的横向视窗来编辑1.txt |
|
:vsp 2.txt |
打开新的纵向视窗来编辑1.txt |
|
ctrl+w s |
将当前窗口分割成两个水平的窗口 |
|
ctrl+w v |
将当前窗口分割成两个垂直的窗口 |
|
ctrl+w q |
即 :q 结束分割出来的视窗。如果在新视窗中有输入需要使用强制符!即:q! |
|
ctrl+w o |
打开一个视窗并且隐藏之前的所有视窗 |
|
ctrl+w j |
移至下面视窗 |
|
ctrl+w k |
移至上面视窗 |
|
ctrl+w h |
移至左边视窗 |
|
ctrl+w l |
移至右边视窗 |
|
ctrl+w J |
将当前视窗移至下面 |
|
ctrl+w K |
将当前视窗移至上面 |
|
ctrl+w H |
将当前视窗移至左边 |
|
ctrl+w L |
将当前视窗移至右边 |
|
ctrl+w - |
减小视窗的高度 |
|
ctrl+w + |
增加视窗的高度 |
vim初级命令的更多相关文章
- Vim常用命令总结
Vim常用命令总结: 下文是小编自己整理的关于日常linux vim编程过程中用的一些常用命令,资料参考鸟哥的 如果有需要的小伙伴可以参考一下!(底部有下载地址) 一. 一般模式可用的按钮说明 1.1 ...
- vim基础命令
2015-06-04 by komilevim基础命令 打开一个文件 vim index.php 几种模式说明Normal Mode也就是最一般的普通模式,默认进入vim之后,处于这种模式.Inser ...
- vim常用命令(iOS)
iOS下vim的使用: vim 的三种模式: .一般模式(默认) .插入模式(写文字) .命令行模式(保存) 各种模式的功能区分如下: .一般模式:控制屏幕光标的移动,字符和光标的删除,移动复制某区段 ...
- 实用手册:130+ 提高开发效率的 vim 常用命令
Vim 是从 vi 发展出来的一个文本编辑器.代码补完.编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.和 Emacs 并列成为类 Unix 系统用户最喜欢的编辑器.这里收录了130+程 ...
- vim常用命令汇总
vim常用命令汇总: http://www.cnblogs.com/softwaretesting/archive/2011/07/12/2104435.html 定位 本行第一个字符 ctrl+$ ...
- [转]vim常用命令
[转]vim常用命令 http://www.cnblogs.com/sunyubo/archive/2010/01/06/2282198.html http://blog.csdn.net/wooin ...
- vim常用命令 vim键盘布局
vim键盘布局,vim快捷键 vim常用命令:
- vim替换命令
转载:http://blog.csdn.net/glorin/article/details/6317098 替換(substitute) :[range]s/pattern/string/[c,e, ...
- vim的命令集合
命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令.启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim并 ...
随机推荐
- 【BZOJ】1648: [Usaco2006 Dec]Cow Picnic 奶牛野餐(dfs)
http://www.lydsy.com/JudgeOnline/problem.php?id=1648 水题.. dfs记录能到达的就行了.. #include <cstdio> #in ...
- [转]这五种方法前四种方法只支持IE浏览器,最后一个方法支持当前主流的浏览器(火狐,IE,Chrome,Opera,Safari)
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- Codeforces Round #296 (Div. 2) B. Error Correct System
B. Error Correct System time limit per test 2 seconds memory limit per test 256 megabytes input stan ...
- poj_3260 动态规划
题目大意 顾客拿着N种硬币(币值为value[i], 数量为c[i])去买价值为T的东西,商店老板也有同样N种币值的硬币,但是数量不限.顾客买东西可能需要用硬币找零来使得花出去的钱为T,求顾客给老板的 ...
- 安装PHP扩展-----phpredis
一.redis介绍 redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统.和Memcached类似,但很大程度补偿了 memcached的不足,它支持存储的value类型相 ...
- 【BZOJ3781、2038】莫队算法2水题
[BZOJ3781]小B的询问 题意:有一个序列,包含N个1~K之间的整数.他一共有M个询问,每个询问给定一个区间[L..R],求Sigma(c(i)^2)的值,其中i的值从1到K,其中c(i)表示数 ...
- 苹果微信浏览器不能post方式提交数据问题
form表单中采用post方式提交数据时,在苹果的微信浏览器中无法传递,安卓的可以 如图: 在controller中获取该数据为 null 将表单的提交方式修改为get就能够获取到 现在采用Ajax方 ...
- Vue基础-匿名插槽与作用域插槽的合并和覆盖行为
Vue 测试版本:Vue.js v2.5.13 Vue 文档: <slot> 元素可以用一个特殊的特性 name 来进一步配置如何分发内容.多个插槽可以有不同的名字.具名插槽将匹配内容片段 ...
- Struts2中的类型转换与复杂对象配合使用
form 标签可以被映射到一个属性的属性 manager.java package com.atguigu.struts2.model; import java.util.Date; public c ...
- java讲讲几种常见的排序算法
java讲讲几种常见的排序算法(一) 目录 java讲讲几种常见的排序算法(一) java讲讲几种常见的排序算法(二) 以数组array={6,3,20,8,15,1}为例 冒泡排序 思路:从第0个到 ...