IdeaVim 基本操作

2022-11-10 09:57:55 浏览数 (2)

大家好,又见面了,我是你们的朋友全栈君。

IdeaVim 基本操作
  • 安装插件
  • ideaVim 剪贴板与系统剪贴板同步
  • Caps Lock 键映射为 Esc 键
  • 光标的移动
  • 文本的插入
  • 剪切和复制
  • 撤销与重做
  • 查找与替换
  • 宏的使用
  • 排版与辅助

安装插件

  1. File-Settings-Plugins,Browse Repositories,输入ideavim,安装
  1. 重启 IntelliJ IDEA

ideaVim 剪贴板与系统剪贴板同步

  1. 在ideavimrc文件中添加一行
代码语言:javascript复制
:set clipboard=unnamedplus,unnamed
  1. 保存并退出
代码语言:javascript复制
:wq
  1. 重启 IntelliJ IDEA

Caps Lock 键映射为 Esc 键

  1. 到 Autohotkey 官网下载软件并安装
  2. 新建 ahk 文件,添加以下内容并保存
代码语言:javascript复制
Capslock::Esc
Esc::Capslock
  1. 双击该 ahk 文件,按键映射即正常运行

光标的移动

  1. 基本移动

以下移动都是在normal模式下

快捷键

含义

h或退格

左移一个字符

l或空格

右移一个字符

j

下移一行

k

上移一行

或Enter

把光标移至下一行第一个非空白字符

把光标移至上一行第一个非空白字符

w

前移一个单词,光标停在下一个单词开头

e

前移一个单词,光标停在下一个单词末尾

b

后移一个单词,光标停在上一个单词开头

ge

后移一个单词,光标停在上一个单词末尾

{

前移1段

}

后移1段

上面的操作都可以配合n使用,比如在正常模式下输入3h,则光标向左移动3个字符

快捷键

含义

0

移动到行首

$

移动到行尾

^

移动到本行第一个非空白字符

n|

把光标移到递n列上

nG

到文件第n行

:n<cr>

移动到第n行

:$<cr>

移动到最后一行

H

把光标移到屏幕最顶端一行

M

把光标移到屏幕中间一行

gg

到文件头部

G

到文件尾部

  1. 翻屏

快捷键

含义

ctrl f

下翻一屏

ctrl b

上翻一屏

ctrl d

下翻半屏

ctrl u

上翻半屏

ctrl e

向下滚动一行

ctrl y

向上滚动一行

n%

到文件n%的位置

zz

将当前行移动到屏幕中央

zt

将当前行移动到屏幕顶端

zb

将当前行移动到屏幕底端

文本的插入

  1. 基本插入

快捷键

含义

i

在光标前插入

a

在光标后插入

I

在当前行第一个非空字符前插入

A

在当前行最后插入

gI

在当前行第一列插入

o

在下面新建一行插入

O

在上面新建一行插入

一个小技巧:按8,再按i,进入插入模式,输入=, 按esc进入命令模式,就会出现8个=。 这在插入分割线时非常有用,如30i 就插入了36个 组成的分割线

  1. 改写插入

快捷键

含义

c[n]w

改写光标后1(n)个词

c[n]l

改写光标后n个字母

c[n]h

改写光标前n个字母

[n]cc

修改当前[n]行

[n]s

以输入的文本替代光标之后1(n)个字符,相当于c[n]l

[n]S

删除指定数目的行,并以所输入文本代替之

注意,类似cnw,dnw,ynw的形式同样可以写为ncw,ndw,nyw

剪切和复制

快捷键

含义

[n]x

剪切光标右边n个字符,相当于d[n]l

[n]X

剪切光标左边n个字符,相当于d[n]h

y

复制在可视模式下选中的文本

yy or Y

复制整行文本

y[n]w

复制一(n)个词

y[n]l

复制光标右边1(n)个字符

y[n]h

复制光标左边1(n)个字符

y$

从光标当前位置复制到行尾

y0

从光标当前位置复制到行首

:m,ny

复制m行到n行的内容

y1G或ygg

复制光标以上的所有行

yG

复制光标以下的所有行

yaw和yas

复制一个词和复制一个句子,即使光标不在词首和句首也没关系

d

删除(剪切)在可视模式下选中的文本

d$ or D

删除(剪切)当前位置到行尾的内容

d[n]w

删除(剪切)1(n)个单词

d[n]l

删除(剪切)光标右边1(n)个字符

d[n]h

删除(剪切)光标左边1(n)个字符

d0

删除(剪切)当前位置到行首的内容

[n] dd

删除(剪切)1(n)行

:m,nd

剪切m行到n行的内容

d1G或dgg

剪切光标以上的所有行

dG

剪切光标以下的所有行

daw和das

剪切一个词和剪切一个句子,即使光标不在词首和句首也没关系

dt字符

删除本行内容,直到遇到第一个指定字符 [不包括该字符]

df字符

删除本行内容,直到遇到第一个指定字符 [包括该字符]

p

在光标之后粘贴

P

在光标之前粘贴

撤销与重做

快捷键

含义

u

取消一个改动

ctrl r

重做最后的改动

查找与替换

  1. 查找

快捷键

含义

/something

在后面的文本中查找something

?something

在前面的文本中查找something

/pattern/ number

将光标停在包含pattern的行后面第number行上

/pattern/-number

将光标停在包含pattern的行前面第number行上

n

向后查找下一个

N

向前查找下一个

  1. 替换

快捷键

含义

: s/old/new

用new替换当前行第一个old

: s/old/new/g

用new替换当前行所有的old

:n1,n2s/old/new/g

用new替换文件n1行到n2行所有的old

:%s/old/new/g

用new替换文件中所有的old

:%s/^/xxx/g

在每一行的行首插入xxx,^表示行首

:%s/$/xxx/g

在每一行的行尾插入xxx,$表示行尾

所有替换命令末尾加上c,每个替换都将需要用户确认。 如:%s/old/new/gc,加上i则忽略大小写(ignore)

宏的使用

快捷键

含义

q[a-z]

开始录制宏

q

停止录制

@[a-z]

使用宏

@@

调用最近使用的宏

n@[a-z]

重放宏n次

:normal @[a-z]

在选择区域的每一行上并行执行宏

排版与辅助

快捷键

含义

<<

向左缩进一个shiftwidth

>>

向右缩进一个shiftwidth

gd

跳转到局部变量的定义处

zo

打开折叠的文本

zc

收起折叠

zR

打开所有折行

zM

收起所有折行

Ctrl i

前进

Ctrl o

后退

~

反转光标所在字符的大小写

可视模式下的U或u

把选中的文本变为大写或小写

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/187141.html原文链接:https://javaforall.cn

0 人点赞