学习 Vim 命令总结

可以使用 vscode-vim 扩展,但是要注意一些ctrl+字母的快捷键会无效,必须去掉冲突的快捷键

esc 回到普通模式

i 普通模式进入插入模式

: 进入命令模式

:wa 保存全部文件

dd 删除一整行

u 撤销

r 替换

x 删除一个字符

cw 修改从光标到一个单词结尾的字符

% 匹配括号移动

* 移动到匹配的下个单词

# 移动到匹配的上个单词

gg 到第一行

. 重复上次命令

G 最后一行(大写的G就是按 shift+g)

数字+G 到第几行,然后按 `` 可以跳回去

ma 标记为 a, 然后按 `a 跳过去

ye 复制单词

0y$ 从行头复制到行尾

y2/foo 复制 2 个foo之间的字符

gU 全变大写

gu 全变小写

^ 本行第一个字符

g_ 本行最后一个字符

fa 到下一个为 a 的字符处

t, 到下一个为 , 的符号处

dt" 删除到 " 前的字符

vi" 选择 " 里面的字符

va" 选择包括 " 的字符

J 连成一行

<< 左缩进

>> 右缩进

== 自动缩进

用正则替换文本

%s/old/new/g 替换所有匹配的字符

10,$s/old/new 替换10行到最后的字符

10,20s/old/new 替换10到20行到最后的字符

录制宏

qa 开始录制到a

yp 复制粘贴

ctrl+a 递增 1(在 vscode-vim 中无效)

q 停止录制

@a 递增写入

10@a 重复写10次

10@@ 递增写 10 次

学习 Vim 命令总结的更多相关文章

  1. 学习vim命令:“:w !sudo tee %”

    学习vim命令:“:w !sudo tee %” Original URL:http://www.haw-haw.org/node/1501 原文来自于commandlinefu 原文是这样解释这个命 ...

  2. 一张图学习vim常用命令

    一张图学习vim常用命令

  3. VIM学习一: VIM命令学习及插件介绍

    一.光标移动及编辑命令(含查找替换) [打开关闭窗口] :e file或:open file       打开新文档 :q或者ctrl+w+q         关闭当前视图的窗口 :tab split ...

  4. vim 命令学习(高级篇)

    [1]打开文件方式 (1)vim +n filename 作用:打开文件,并定位到第n行 例如:vim +103 2019-02-26-errorrepeat.txt 效果:打开2019-02-26- ...

  5. 跟我一起学习VIM

    跟我一起学习VIM - The Life Changing Editor   前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教程.虽然准备有限,但分享过程中大家大多带着一种惊叹 ...

  6. 跟我一起学习VIM - The Life Changing Editor

    前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教程.虽然准备有限,但分享过程中大家大多带着一种惊叹的表情,原来编辑器可以这样强大,这算是对我多年来使用VIM的最大鼓舞吧.所以分 ...

  7. 新手学习 Vim 的五个技巧

    多年来,我一直想学 Vim.如今 Vim 是我最喜欢的 Linux 文本编辑器,也是开发者和系统管理者最喜爱的开源工具.我说的学习,指的是真正意义上的学习.想要精通确实很难,所以我只想要达到熟练的水平 ...

  8. 15个不起眼但非常强大的 Vim 命令

    如果我的关于这个话题的最新帖子没有提醒到你的话,那我明确地说,我是一个 vim 的粉丝.所以在你们中的某些人向我扔石头之前,我先向你们展示一系列“鲜为人知的 Vim 命令”.我的意思是,一些你可能以前 ...

  9. 【转载】跟我一起学习VIM - vim插件

    目录 写在前面:Life Changing Editor 什么是VIM 为什么选VIM 为什么选其它 为什么犹豫选择它们 VIM >= SUM(现代编辑器) 如何学习VIM 一秒钟变记事本 VI ...

随机推荐

  1. Linux上部署web服务器并发布web项目-转

    Linux上部署web服务器并发布web项目   近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以 ...

  2. Beta版本

    Beta版本 博客说明 这个作业属于哪个课程 http://edu.cnblogs.com/campus/xnsy/GeographicInformationScience 这个作业的要求在哪里 ht ...

  3. 动态规划-Dynamic Programming(DP)

    动态规划 动态规划方法心得 ​ 动态规划是一般的面试.笔试中的高频算法题,熟练掌握必要的.动态规划的中心思想是在解决当前问题时,可以由之前已经计算所得的结果并结合现在的限制条件递推出结果.由于此前的计 ...

  4. ios---剪裁圆形图片方法

    剪裁圆形图片 - (instancetype)xmg_circleImage { // 1.开启图形上下文 // 比例因素:当前点与像素比例 UIGraphicsBeginImageContextWi ...

  5. SpringMVC进阶(二)

    一.高级参数绑定 1.1. 绑定数组 Controller方法中可以用String[]接收,或者pojo的String[]属性接收.两种方式任选其一即可. /** * 包装类型 绑定数组类型,可以使用 ...

  6. (.text+0x18): undefined reference to `main'

    在将VS中的程序移植到ubuntu中出现的一个问题,主要原因是在vs中默认的主函数写成int _tmain(), 而在gcc编译时要找的是int main().改过来就可以了.

  7. 聊聊“装箱”在CLR内部的实现

    原文连接:https://mattwarren.org/2017/08/02/A-look-at-the-internals-of-boxing-in-the-CLR/ 作者 Matt Warren. ...

  8. java配置文件集

    <!-- 激活组件扫描功能,扫描aop的相关组件组件 --> <context:component-scan base-package="com.yingjun.ssm.a ...

  9. CCF_ 201512-3_画图

    直接模拟就行了,注意坐标系方向与平常数组不一样,填充操作用深搜和广搜都可以,这里用了广搜. #include<iostream> #include<cstdio> #inclu ...

  10. HDU 1004 Let the Balloon Rise(STL初体验之map)

    Problem Description Contest time again! How excited it is to see balloons floating around. But to te ...