前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >IdeaVim 基本操作

IdeaVim 基本操作

作者头像
全栈程序员站长
发布2022-11-10 09:57:55
2.1K0
发布2022-11-10 09:57:55
举报
文章被收录于专栏:全栈程序员必看

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

IdeaVim 基本操作

安装插件

  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

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月1日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • IdeaVim 基本操作
  • 安装插件
  • ideaVim 剪贴板与系统剪贴板同步
  • Caps Lock 键映射为 Esc 键
  • 光标的移动
  • 文本的插入
  • 剪切和复制
  • 撤销与重做
  • 查找与替换
  • 宏的使用
  • 排版与辅助
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档