【程序员的手艺活儿】vim命令快速掌握

2024-03-29 00:08

本文主要是介绍【程序员的手艺活儿】vim命令快速掌握,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  程序员每天的工作都是写代码,那么如何在构思完成后快速的完成实现就是一个小手艺了。从小的学习经验告诉我,在学习一项知识的时候,系统化是最科学的方法。这篇文章就是按照编辑代码的思维方式来梳理一遍vim中的命令。

  • 基本模式切换

    命令作用
    i在当前光标前的位置,进入到插入模式
    a在当前光标后的位置,进入到插入模式
    I在行首的位置,进入到插入模式
    A在行尾的位置,进入到插入模式
    R在当前光标位置,进入到替换模式
    ESC退出插入模式/替换模式,进入到命令模式
  • 光标的基本移动

    命令作用
    h前一个字符,直到行首
    l后一个字符,直到行尾
    j后一行
    k前一行
  • 光标的单词移动

    命令作用
    w后一个单词词头,标点符号作为单独单词
    W后一个单词词头,以空格作为单词分隔
    b前一个单词词头,标点符号作为单独单词
    B前一个单词刺头,以空格作为单词分隔
    e后一个单词词尾,标点符号作为单独单词
    E后一个单词词尾,以空格作为单词分隔
    ge前一个单词词尾,标点符号作为单独单词
    gE前一个单词词尾,以空格作为单词分隔
  • 区域选中

    命令作用
    v选中当前字符,并进入[字符选择模式]
    V选中当前行,并进入[行选择模式],注意开了选择模式后关闭大小写,建议用shift+v
    ctrl+v进入[块选择模式]
    vw选中当前光标到单词词尾,标点符号作为单独单词
    vW选中当前光标到单词词尾,以空格作为单词分隔
    viw选中当前全单词,标点符号作为单独单词
    viW选中当前全单词,以空格作为单词分隔
    ESC退出选择模式,进入命令模式
  • 基本删除操作

    命令作用
    x命令模式下,删除当前字符
    X命令模式下,删除当前光标的前一个字符
    back-space插入模式下删除前一个字符,替换模式下清除替换
    del插入模式下删除后一个字符,替换模式下删除后一个字符(不是清除替换)
  • 高效删除

    命令作用
    dw删除当前光标到单词词尾,标点符号作为单独单词
    dW删除当前光标到单词词尾,以空格作为单词分隔
    diw删除当前整个单词,标点符号作为单独单词
    diW删除当前整个单词,以空格作为单词分隔
    D/d$删除当前光标到行尾
    dd删除当前整行
  • 高效复制

    命令作用
    yw复制当前光标到单词词尾,标点符号作为单独单词
    yW复制当前光标到单词词尾,以空格作为单词分隔
    yiw复制当前整个单词,标点符号作为单独单词
    yiW复制当前整个单词,以空格作为单词分隔
    y$复制当前光标到行尾
    yy复制当前整行
  • 删除并进入插入模式

    命令作用
    cw删除当前光标到单词词尾,标点符号作为单独单词,并进入插入模式
    cW删除当前光标到单词词尾,以空格作为单词分隔,并进入插入模式
    ciw删除当前整个单词,标点符号作为单独单词,并进入插入模式
    ciW删除当前整个单词,以空格作为单词分隔,并进入插入模式
    C/c$删除当前光标到行尾,并进入插入模式
    cc删除当前整行,并进入插入模式
  • 缩进调整

    命令作用
    >>为当前行/选中区域增加缩进
    <<为当前行/选中区域减少缩进
    5>>为当前5行增加缩进
    5<<为当前5行减少缩进
    >%为当前括号区域增加缩进
    <%为当前括号区域减少缩进
    > i {为当前括号内的区域增加缩进
    < i {为当前括号内的区域减少缩进
  • 基本跳转

    命令作用
    :5跳转到第5行
    gg跳转到文档开头
    G跳转到文档末尾,建议用shift+G
  • 快速查找

    命令作用
    /xxx查找xxx
    ?xxx查找xxx
    shift+*查找当前单词

这篇关于【程序员的手艺活儿】vim命令快速掌握的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/857073

相关文章

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Java -jar命令如何运行外部依赖JAR包

《Java-jar命令如何运行外部依赖JAR包》在Java应用部署中,java-jar命令是启动可执行JAR包的标准方式,但当应用需要依赖外部JAR文件时,直接使用java-jar会面临类加载困... 目录引言:外部依赖JAR的必要性一、问题本质:类加载机制的限制1. Java -jar的默认行为2. 类加

git stash命令基本用法详解

《gitstash命令基本用法详解》gitstash是Git中一个非常有用的命令,它可以临时保存当前工作区的修改,让你可以切换到其他分支或者处理其他任务,而不需要提交这些还未完成的修改,这篇文章主要... 目录一、基本用法1. 保存当前修改(包括暂存区和工作区的内容)2. 查看保存了哪些 stash3. 恢

java -jar命令运行 jar包时运行外部依赖jar包的场景分析

《java-jar命令运行jar包时运行外部依赖jar包的场景分析》:本文主要介绍java-jar命令运行jar包时运行外部依赖jar包的场景分析,本文给大家介绍的非常详细,对大家的学习或工作... 目录Java -jar命令运行 jar包时如何运行外部依赖jar包场景:解决:方法一、启动参数添加: -Xb

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

MySQL的ALTER TABLE命令的使用解读

《MySQL的ALTERTABLE命令的使用解读》:本文主要介绍MySQL的ALTERTABLE命令的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、查看所建表的编China编程码格式2、修改表的编码格式3、修改列队数据类型4、添加列5、修改列的位置5.1、把列

MybatisX快速生成增删改查的方法示例

《MybatisX快速生成增删改查的方法示例》MybatisX是基于IDEA的MyBatis/MyBatis-Plus开发插件,本文主要介绍了MybatisX快速生成增删改查的方法示例,文中通过示例代... 目录1 安装2 基本功能2.1 XML跳转2.2 代码生成2.2.1 生成.xml中的sql语句头2

JDK9到JDK21中值得掌握的29个实用特性分享

《JDK9到JDK21中值得掌握的29个实用特性分享》Java的演进节奏从JDK9开始显著加快,每半年一个新版本的发布节奏为Java带来了大量的新特性,本文整理了29个JDK9到JDK21中值得掌握的... 目录JDK 9 模块化与API增强1. 集合工厂方法:一行代码创建不可变集合2. 私有接口方法:接口

8种快速易用的Python Matplotlib数据可视化方法汇总(附源码)

《8种快速易用的PythonMatplotlib数据可视化方法汇总(附源码)》你是否曾经面对一堆复杂的数据,却不知道如何让它们变得直观易懂?别慌,Python的Matplotlib库是你数据可视化的... 目录引言1. 折线图(Line Plot)——趋势分析2. 柱状图(Bar Chart)——对比分析3