其他命令

<c-L>  重绘屏幕
<c-z> 挂起vim回到shell,想继续vim只需要输入 fg
<c-x-f> 文件路径提示
<c-N> 当前文件中的关键字提示
<C-X><C-O> 语义上的补全 :e main.html 更改文件名
:file main.html 更改正在编辑的文件名,不用保存
J 于下一行文本合并
ZZ 保存退出
% 在括号间跳转,配合v可以选中代码块
~ 光标下的字符转化为大写
gd 类似f12 VI// 为选中的行添加//注释
:66,70s/^/\/\/ 66-70行添加 //注释
:66,70s/^\/\// 取消多行注释 :Ve 在左侧边栏打开当前文件的目录
enter 在当前窗口打开文件
o 打开一个水平分隔的窗口显示文件
v 打开一个垂直分隔的窗口显示文件
t 在一个新标签页中打开文件
:edit . 显示当前目录的内容 :cd dirtory 切换到dirtory目录
:pwd 显示当前工作目录 :read index.html 读入文件的内容放在当前行的后面

字符查找

fa 查找当前行光标后的 a文本, ";"分号重复命令,","与";"相反, Fa 查找光标签前的a
3fa 查找当前行光标后的第3个a文本
还有 ta ,2ta,移动到a的前面 /word + 回车 从当前的行向下查找 n向下切, N向上切

光标移动

块级移动
w跳到下一个word开头 e 跳到当前word结尾
b跳到上一个word开头 ge跳到上一个word结尾 ctrl+ < G 整个文档的最后一行
gg 整个文档的第一行行
3G 跳转到3行, G意为Go H 当前page的第一行
M 当前page的中间行
L 当前文档的最后一行

删除文本

被删除的文本都可以用p取回来, put

x 删除当前光标下的字符("dl"的快捷命令)
X 删除当前光标之前的字符("dh"的快捷命令)
D 删除自当前光标至行尾的内容("d$"的快捷命令)
dw 删除自当前光标至下一个 word 的开头
db 删除自当前光标至前一个 word 的开始
diw 删除当前光标所在的 word(不包括空白字符)
daw 删除当前光标所在的 word(包括空白字符)
dG 删除当前行至文件尾的内容
dgg 删除当前行至文件头的内容 上面的d命令都可以用 c,y代替 4x 删除4个文字
cw 删除word并进入插入模式 dd 删除一行,
d$ 删除到行尾的内容, d^
cc 改变整行

替换

R  输入的文字会替换光标下的文字
<Insert>键可以再 i 和 R 模式之间切换
<BS> 退格键可以撤销替换
ra 把光标下的文字替换为a
4ra 把四个替换为a r<Enter> 替换为一个换行符 :%s/name/ajanuw/g 默认执行全部name替换为ajanuw
:%s/name/ajanuw/gc 每执行一次都需要同意,还是跳过
:1,5s/this/that/g 第 1 到第 5 行的文本执行替换操作,包括第 1 行和第 5行

复制粘贴

yy 复制当前行
yw 复制一个word p 粘贴到光标后
P 粘贴到光标前 "*yy 复制
"*p 粘贴 "ay复制 "ap 粘贴,寄存器的名字为[a-z]

撤销

u 撤销
U 块级撤销
ctrl+r 返回上一步

缩进,对齐,折叠

gg=G 是一个自动缩进的命令
== 整理当行
= 整理选中的行 :>> 设置缩进 http://vim.wikia.com/wiki/Shifting_blocks_visually
:<< zf} 折叠代码 Docs: https://www.2cto.com/os/201203/122133.html
zo 展开代码

编辑多个文件

从一个文件转到另一个文件

在不同文件之间复制粘贴

编辑另一个文件

:edit foo.txt  关闭当前文件,打开指定文件,当前文件未保存会出现错误信息
:e! foo.txt 缩写,强制打开指定文件
错误有对应的 ID 号, :help E37 查看错误帮助

同时打开多个文件

vi a.ts main.lisp

:files  查看打开所有的文件
:wn 保存在进入下一个文件
:wN 保存在进入上一个文件
:2n 向后移动2个文件
:first 第一个文件
:last 最后一个文件 :args 当前处于哪个文件 a.ts [main.lisp] :args a.ts b.ts 不用退出vim你可以定义新的编辑文件
:args *.lisp 打开所有lisp文件 ctrl+^ 快速切换文件,但不改变你的位置 `" 上次你离开该文件时光标所在的位置
`. 最后一次对文件做出改动处的位置

文件标记

mC  在当前位置添加标记,C是寄存器名,可以替换
`C 跳到标记处

保存一份原始文件

:set patchmode=.orign

分页

简写 sp
:split 上下分页
:split index.html
:vsplit 左右分页 <c-w> 点击w在分屏中移动
// 移动窗口
CTRL-W H 到左边的窗口
CTRL-W J 到下面的窗口
CTRL-W K 到上面的窗口
CTRL-W L 到右边的窗口 <c-w 10 >> 增加当前屏幕的宽度 < 向右放大, > 向左放大,10代表次数
CTRL-W + 增加当前窗口高度
CTRL-W - 减小 :close 关闭当前窗口,阻止你关闭最后一个窗口
:only 关闭除当前窗口以外的窗口
:wall 保存所有窗口打开的文件
:qall 如果所有窗口打开的文件都已经保存,退出,如果有未保存的文件,跳转到对应的窗口中
:wqall 保存并退出所有窗口。

nerdtree 常用指令

vi ./

t:在新标签中打开文件
i: open split
s: open vsplit r:刷新光标目录
C:将树改为根

vim 常用指令的更多相关文章

  1. vim 常用指令总结

    vim的好处(四大好处) vim具有大量的操作技巧,编辑能力强大且速度比其他工具快的多! (这里举个简单的小例子:将每行的前四个字母复制到每行的末尾; 将文本中的所有word替换为words; 等等很 ...

  2. vim常用指令一览

    插入指令 i 在光标处插入字符 I 在光标所在行最前插入 a 在光标所在字符后面插入 A 在光标所在行的最后插入 o 在光表所在行下面插入一行 O 在光标所在行上面插入一行 r 替换光标所在字符,只替 ...

  3. vim常用指令

    命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vim filename 打开vim ...

  4. vim常用指令及快捷键(持续更新)

    (这些文章都是从我的个人主页上粘贴过来的,大家也可以访问我的主页 www.iwangzheng.com) 发现了个非常赞的网站  http://openvim.com/ 以下很多操作都是安装好vund ...

  5. vim常用指令整理小结

    启动Vim后,默认是在 Normal 模式下,但是我们有时不知道是在编辑模式还是normal模式,按ESC键就可以返回normal模式.因为所有的命令都需要在Normal模式下使用,所以建议多按几下E ...

  6. Vim常用指令总结(持续更新中)

    1 模式变更 命令 说明 a(append)/i(insert) 普通模式→插入模式 : 普通模式→命令行模式 ESC或者Ctrl 插入模式→普通模式 R(Replace)/Insert两次 普通模式 ...

  7. vim 常用指令-持续更新

    1. 查询文件夹file1内文件数量:ls file1 | wc -l 2. 生成文件夹file1内的文件列表:find file1 -type f > list.txt 3. git管理文件, ...

  8. vim常用指令参考

    (完)

  9. (转)Linux最常用指令及快捷键 Linux学习笔记

    Linux最常用指令及快捷键 Linux学习笔记 原文:http://blog.csdn.net/yanghongche/article/details/50827478 [摘自 鸟叔的私房菜]--转 ...

随机推荐

  1. Spring Cloud 2.x-前言

    Spring Cloud Spring Boot  简介 模块介绍 文章列表 简介 微服务已经成为企业开发的标配,阿里的Dubbo已经被企业大规模使用,Spring Cloud作为后起之秀,同时也是 ...

  2. Matlab imshow, image, imagesc 三者详细分析

    1.显示RGB图像 相同点:这三个函数都是把m*n*3的矩阵中的数值当做RGB值来显示的. 区别:imshow将图像以原始尺寸显示,image和imagesc则会对图像进行适当的缩放(显示出来的尺寸大 ...

  3. USACO Training Section 1.1 题解(共4题)

    第一题 题目传送门:你的飞碟在这儿 分析 水题一道,输入两个字符串,将它们转换为数字并同时相乘,然后判断一下它们是不是对于47同余就可以了. 代码 #include<bits/stdc++.h& ...

  4. LeetCode 7. Reverse Integer(c语言版)

    题目: Given a 32-bit signed integer, reverse digits of an integer. Example 1: Input: 123Output: 321 Ex ...

  5. psutil(搬运,一个月后稍后修改)

    psutil是一个跨平台库,能够轻松实现获取系统运行的进程和系统利用率(包括CPU.内存.磁盘.网络等)信息.它主要用来做系统监控,性能分析,进程管理 安装:pip install psutil 1. ...

  6. Spring Session产生的sessionid与cookies中的sessionid不一样的问题 && httpOnly 设置不起作用的问题??

    背景: Springboot 2.0 (spring-session-data-redis + spring-boot-starter-web) 需求: 通过cookies中取到的 sessionid ...

  7. SoftEther

    sudo apt-get update   sudo wget http://www.softether-download.com/files/softether/v4.25-9656-rtm-201 ...

  8. EFCore+Mysql仓储层建设(分页、多字段排序、部分字段更新)

    前沿 园子里已有挺多博文介绍了EFCore+Mysql/MSSql如何进行使用,但实际开发不会把EF层放在Web层混合起来,需要多个项目配合结构清晰的进行分层工作,本文根据个人实践经验总结将各个项目进 ...

  9. 2018-2019-2 20165239《网络对抗技术》Exp4 恶意代码分析

    Exp4 恶意代码分析 实验内容 一.基础问题 1.如果在工作中怀疑一台主机上有恶意代码,但只是猜想,所有想监控下系统一天天的到底在干些什么.请设计下你想监控的操作有哪些,用什么方法来监控. •使用w ...

  10. 我把一些Linux的中英文命令做了对应翻译大家参考一下

    本文我们把Linux的中英文命令做了对应翻译,给需要的朋友参考一下.(http://wap.0834jl.com) 很多朋友在论坛上找Linux英文命令,我们给大家整理了比较全的Linux英文命令,并 ...