IdeaVim简介

IdeaVim是IntelliJ IDEA的一款插件,他提高了我们写代码的速度,对代码的跳转,查找也很友好。

  • 安装位置

安装之后它在 Tools > Vim Emulator

具体操作

  • 关闭vim模式

    i菜单栏:tools->vim emulator

  • i模式

i模式即为编辑模式,按下字母i开启就可以打字。

  • Esc

从i模式切换为Vim,按下键盘的Esc键切回Vim。

  • 方向键

上:k , 下:j , 左: h , 右:l

  • 词组正向跳转(以空格和符号作为分割)-- 小写的w

例如:“hello world,I'm wrting”,当光标在h时,连按w光标依次显示为:w > , > I > ' > m > w > "

  • 词组正向跳转(以空格为分割) -- 大写的W

例如:“hello world,I'm wrting”,当光标在h时,连按大写的W光标依次显示为:w > I > w

  • 词组反向跳转-- 小写的b和大写的B

情况与w类似。

  • 正向跳转到指定字符-- 小写的f

例如:“hello world,I'm wrting”,当光标在h时,输入fw,光标跳转到字符world的w字符处。

  • 反向跳转到指定字符-- 大写的F

例如:“hello world,I'm wrting”,当光标在d时,输入Fw,光标跳转到字符world的w字符处。

  • 正向跳转到指定字符的上一个位置(空格也算)-- 小写的t

例如:“hello world,I'm wrting”,当光标在h时,输入td,光标跳转到字符world的l字符处。

  • 反向跳转到指定字符的下一个位置(空格也算)-- 大写的T

例如:“hello world,I'm wrting”,当光标在d时,输入Tw,光标跳转到字符world的o字符处。

  • 复制当前行-- yy

  • 粘贴-- p

粘贴至光标的下一行,例如:“hello world,I'm wrting”,当光标在此行时,输入yyp,当前行复制并粘贴,下面又多出一行。

  • 10p

粘贴10次

  • 跳转至下一个与当前光标相同字符的位置(可以跨行跳转)-- *

例如:“hello world,I'm wrting”,当光标在hello的最后一个l字符处,输入 * ,跳转到world的l字符处。

  • 跳转至上一个与当前光标相同字符的位置(可以跨行跳转)-- #

情况如上。

  • 选中(再通过上下左右进行区域选中)-- v

例如:当光标在第一行hello的h字符处,输入vjj

  • 删除当前行-- dd

  • 5dd

删除当前行在内以下的5行。

  • 删除选中区域-- d

例如上面的例子中,可以输入vjjd进行区域删除。

  • 撤销 -- u

  • 正向按字符单位进行删除-- x

从光标所在位置处逐个正向删除

  • 反向从光标上一个位置处进行删除-- 大写的X

  • 从光标处删除至指定字符-- df指定字符

例如:“hello world,I'm wrting”,当光标在h时,输入dfw,结果为“orld,I'm wrting”。

  • 删除引号内的内容-- di"

例如:“hello world,I'm wrting”,当光标在此行时,输入di",结果为“”。

  • 删除包含引号在内的内容-- da"

  • 跳转至文件头-- gg

  • 跳转至文件尾-- G

  • 跳转至指定行的开头-- 行号G


原文地址:https://www.cnblogs.com/zhaozihan/p/6297217.html

IdeaVim-常用操作的更多相关文章

  1. IDEAVIM 常用快捷键总结和使用说明

    ---title: ideavim常用快捷键总结和使用tags: grammar_cjkRuby: true--- #### `待办` ideavim用于编程的常用快捷键说明 常用快捷键 插入(光标前 ...

  2. 【三】用Markdown写blog的常用操作

    本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...

  3. php模拟数据库常用操作效果

    test.php <?php header("Content-type:text/html;charset='utf8'"); error_reporting(E_ALL); ...

  4. Mac OS X常用操作入门指南

    前两天入手一个Macbook air,在装软件过程中摸索了一些基本操作,现就常用操作进行总结, 1关于触控板: 按下(不区分左右)            =鼠标左键 control+按下        ...

  5. mysql常用操作语句

    mysql常用操作语句 1.mysql -u root -p   2.mysql -h localhost -u root -p database_name 2.列出数据库: 1.show datab ...

  6. nodejs配置及cmd常用操作

    一.cmd常用操作 1.返回根目录cd\ 2.返回上层目录cd .. 3.查找当前目录下的所有文件dir 4.查找下层目录cd window 二.nodejs配置 Node.js安装包及源码下载地址为 ...

  7. Oracle常用操作——创建表空间、临时表空间、创建表分区、创建索引、锁表处理

    摘要:Oracle数据库的库表常用操作:创建与添加表空间.临时表空间.创建表分区.创建索引.锁表处理 1.表空间 ■  详细查看表空间使用状况,包括总大小,使用空间,使用率,剩余空间 --详细查看表空 ...

  8. python 异常处理、文件常用操作

    异常处理 http://www.jb51.net/article/95033.htm 文件常用操作 http://www.jb51.net/article/92946.htm

  9. byte数据的常用操作函数[转发]

    /// <summary> /// 本类提供了对byte数据的常用操作函数 /// </summary> public class ByteUtil { ','A','B',' ...

  10. Linux Shell数组常用操作详解

    Linux Shell数组常用操作详解 1数组定义: declare -a 数组名 数组名=(元素1 元素2 元素3 ) declare -a array array=( ) 数组用小括号括起,数组元 ...

随机推荐

  1. HDU 2052 Picture

    http://acm.hdu.edu.cn/showproblem.php?pid=2052 Problem Description Give you the width and height of ...

  2. 变更RHEL(Red Hat Enterprise Linux 5.8)更新源使之自动更新

    HP 4411s Install Red Hat Enterprise Linux 5.8) pick up from http://blog.chinaunix.net/uid-423637-id- ...

  3. Angular require(抄别的)

    require参数的值可以用下面的前缀进行修饰,这会改变查找控制器时的行为:?如果在当前指令中没有找到所需要的控制器,会将null作为传给link函数的第四个参数.^如果添加了^前缀,指令会在上游的指 ...

  4. python逻辑回归 自动建模

    #-*- coding: utf-8 -*- #逻辑回归 自动建模 import numpy as np import pandas as pd from sklearn.linear_model i ...

  5. 编译安装openssl

    wget https://www.openssl.org/source/openssl-1.1.0g.tar.gztar xf openssl-1.1.0g.tar.gzcd openssl-1.1. ...

  6. Java之枚举举例

    package enumdemo; /** * 枚举类 */ public enum MAPPER { // 实例 ELEMENT_NAME("mapper"), ATTRIBUT ...

  7. Java基础总结(一)

    1:程序执行是有顺序的,如果没有流程控制语句,执行顺序是从上到下, 2:对象没有引用指向他的时候,jvm虚拟机就会在合适的时候去清理内存垃圾 3:对象的引用就相当于方向盘,操作对象 4:java8大基 ...

  8. js跨域请求jsonp解决方案-最简单的小demo

    这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据.只要协议.域名.端口有任何一个不同,都被 ...

  9. mysql and不能同时运用在一个字段上

  10. Python连接字符串用join还是+

    我们先来看一下用join和+连接字符串的例子 str1 = " ".join(["hello", "world"]) str2 = &quo ...