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并 ...
随机推荐
- python虚拟环境的使用---virtualenv and virtualenvwrapper
虚拟环境 virtualenv 常用操作 step1: 安装 : pip install virtualenv step2:新建 : virtualenv venv cd venv activate ...
- iOS开发之--苹果个人开发者账号如何升级成公司账号
1.拨打苹果针对中国区开发者的咨询服务热线:4006 701 855 2.简单向对方(中文不太标准,但听懂没问题)说明意图后,会要求提供: (1)之前申请IDP时purchase form上的pers ...
- shell脚本学习总结05--变量与环境变量
bash中一切变量都是以字符串的形式存储,env命令可以查看与此终端进程相关的环境变量. man bash 查看一个进程的环境变量 1.获得程序的PID,例如Java# pgrep java23492 ...
- JS-表单提交检查表单字数方法
解决方法: //作用于整个html中 function check(form) { //topic是input的id,descrip是textarea的id var topic = $("# ...
- LA3485 Bridge[(辛普森自适应)微积分]
做此题完全是为了练积分. [普通求导版] Select Code #include<cstdio> #include<cmath> using namespace std; t ...
- java中计算时间差
Calendar cale = null; SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss" ...
- [Android Tips] 29. 如何判断当前编译的是哪个 Flavor ?
背景说明 应用需要针对不同的市场集成不同的第三方 SDK ,比如:面向海市场的版本需要集成 google-service apply plugin: 'com.google.gms.google-se ...
- SpringBoot--属性加载顺序
属性加载顺序: 1.在命令行中传入的参数: 2.SPRING_APPLICATION_JSON中的属性:SPRING_APPLICATION_JSON是以JSON格式配置在系统环境变量中内容: 3.j ...
- synchronized和volatile的使用方法以及区别
先看看下面的例子: public class ThreadTest { public static void main(String[] args) { final Counter counter = ...
- Go语言 关键字:defer
defer和go一样都是Go语言提供的关键字.defer用于资源的释放,会在函数返回之前进行调用.一般采用如下模式: f,err := os.Open(filename) if err != nil ...