映射vim键位,基本功能键位表(未更完)

键位映射:建议使用jj代替esc,毕竟esc离手那么远

linux下修改方法是:vim /etc/vim/vimrc 在该文件尾添加inoremap jj <Esc>该方法可以同样可以用到其他键位映射上

i:表示这个映射是在插入模式(insert mode)下有效的。Vim 有多种模式,包括普通模式(normal mode)、插入模式、命令模式等。i 限定了这个映射只在插入模式下起作用。

nore:这是 noremap 的缩写部分,意味着这个映射是"非递归"的(non-recursive)。默认情况下,Vim 的映射可以是递归的,这意味着如果你映射了一个键到另一个键序列,而那个键序列本身又包含映射,那么 Vim 会尝试解析并应用这些递归映射。使用 noremap(或简写为 nore)可以避免这种递归行为,使得映射更加直接和可预测。

map:这是基本的映射命令,用于定义键与键序列之间的对应关系。
vscode修改的方法:在setting.json文件里添加

js 复制代码
"vim.insertModeKeyBindings": [
    {
        "before":["j","j"],
        "after":["<Esc>"]
    }
]

一般我们遇到的单词不会出现连续两个j,如何输入两个j,那只能输入一个再等一会再输入了,实在不行改,你改,改成jk

普通模式下的映射功能:

键位 功能 快速记忆
i 字符前插入 insert
I 行首插入 大写字符一般对应小写字母的功能稍微改变
o 上一行插入
O 下一行插入
a 字符后插入
A 行尾插入
h 向左
j 向下
k 向上
l 向右
w 跳到下一个单词开头 word
b 跳到本单词或上一个单词开头 begin
e 跳到本单词尾或下一个单词尾 end
ge 跳到上一个单词的结尾
0 跳到行首
^ 跳到从行首开始第一个非空字符
$ 跳到行尾
gg 跳到第一行
G 跳到最后一行
f加一个字符 光标跳到同一行的下一个该字符上
F加一个字符 光标跳到同一行的上一个该字符上
t加一个字符 光标跳到下一个该字符的前一个字符位置上 f,F和t,T的主要区别在于t是跳到字符前的
T加一个字符 光标跳到上一个该字符的后一个字符都位置上
; 执行上一次查找操作
, 反向查找上一次的查找指令 反向是如何上次是t那么该次是T
yy 复制改行
y1G 复制所在行到1行的所有数据
nyy 复制向下数n行
yG 复制光标所在行包括未尾所有数据
p,P 向下一行粘贴和向上一行粘贴
dd 删除该行
d1G 删除该行到第一行
dG 删除改行到行尾
dw 删除光标后的单词
daw 删除光标所在的单词
J 将光标所在行与下一行的数据合成一行
x,X 向后或向前删除一个字符
nx 向后删除n个字符
n+回车 向下移动n行
nG 移动到第n行
M 移动到当前屏幕中央位置
L 移动到当前屏幕最低行
G 移动到文件最后一行
u 还原过去操作
Ctrl+r 重复上一个操作
. 重复前一个操作

命令模式

按键 效果
:w 保存写入内容
:w! 强制保存
:q 退出vim,不保存
:wq 保存并退出
:w [file name] 另存到filename
:set nu 文件每行设置行号
:set nonu 取消设置的行号
:n,m w [filename] 将n到m另存为filename
:! command 暂时离开vim,使用enter返回

visual模式

键位 功能 快速记忆
i+"或者(等等 比如该单词在(word)中,会选中word
iw 选中该单词
a+"或者( 选中包括"或者(
aw 选中包括单词前空格
相关推荐
莲动渔舟11 小时前
国产编辑器EverEdit - 扩展脚本:让EverEdit支持“批量查找”功能
编辑器·emeditor·notepad·everedit
cg501712 小时前
Spring Boot 的配置文件
java·linux·spring boot
暮云星影12 小时前
三、FFmpeg学习笔记
linux·ffmpeg
rainFFrain12 小时前
单例模式与线程安全
linux·运维·服务器·vscode·单例模式
GalaxyPokemon12 小时前
Muduo网络库实现 [九] - EventLoopThread模块
linux·服务器·c++
mingqian_chu13 小时前
ubuntu中使用安卓模拟器
android·linux·ubuntu
Liudef0613 小时前
deepseek v3-0324实现SVG 编辑器
开发语言·javascript·编辑器·deepseek
GalaxyPokemon14 小时前
Muduo网络库实现 [十] - EventLoopThreadPool模块
linux·服务器·网络·c++
自由鬼14 小时前
开源虚拟化管理平台Proxmox VE部署超融合
linux·运维·服务器·开源·虚拟化·pve