vim/nvim键盘映射
vim
在输入模式下设置按键映射
imap w p "按键w 映射p,按下w等同于按下p
imap k w "按键 k 映射成p
在输入模式下,当按下k
键时按理说相当于按下w
键, 所以应该输出w
字母.
但由于 w
又映射 了 p
所以最终还是输出了p
. 这是递归映射
.
即 imap w p
影响到其它和 w
相关的按键映射.
如果不想被某个映射所影响可以使用关键字nore
, 如下:
inoremap w p "按键w 映射p,按下w等同于按下p
imap k w "按键 k 映射成p
这样inoremap w p
就不会被其它映射影响
映射延迟
下面是按下两次 w
映射成 p
的按键序列设置
inoremap ww p
当按下第一个w
时 vim 会等待你按下第二个w
. 这个等待时间就是延迟, 如果超过这个时间, 按键序列映射将重置,把这次的输入当成正常输入. 如果在没有超时按下第二个w
就是映射输入.
当然这个延迟时间是可以设置 的(默认时间是1000毫秒), 下面把延迟时间设为300毫秒:
inoremap ww p
set timeoutlen=300
不同模式下的映射
vim有不同的模式, 如,插入(输入)、普通、命令模式等。
映射也有不同形式的map命令来对应上述模式,可以针对特定的模式设置键盘映射:
映射命令和有效模式的总览:
有递归的映射 | 无递归的映射 | 在什么模式下有效 |
---|---|---|
map | noremap | 普通,可视模式及操作符等待模式 |
vmap | vnoremap | 可视模式 |
nmap | nnoremap | 普通模式 |
omap | onoremap | 操作符等待模式 |
map! | noremap! | 插入和命令模式 |
imap | inoremap | 插入模式 |
cmap | cnoremap | 命令模式 |
键盘名称
几个字母组成的键盘按键需要用尖括号 <>
例如,esc
表示连续按下 或 输出e、s、c、
字母
<esc>
表示键盘的Esc
键,
在vim中一些按键说明:对于功能组合键
<A>
表示Alt(Alt键可以使用<M-key>
或<A-key>
来表示, 例子, <A-e>
表示Alt + e
<S-F1>
表示 Shift-F1
<Space>
表示空格
<BS>
表示 Backspace
键
<Esc>
代表Escape
键:
<CR>
代表Enter
键;
<C-j>
代表Ctrl + j
.
<D>
代表Command
键.
例子
inoremap <C-j> <esc>: " 按Ctrl + j 等于按下Esc和:
inoremap <C-i> <CR> " Ctrl + j = 回车
inoremap <C-k> <BS> " Ctrl + k = 删除或退格键
nvim
init.vim 配置和vim一样,照上面搞就可以.
init.lua 有几种写法,还有很多功能 自己去看
github nvim-lua-guide-zh
gitee nvim-lua-guide-zh
我只记住觉得常用的
下面映射 需要neovim 0.7.0+版本
-- 默认是非递归的
vim.keymap.set('i', ']', 'ooo')
-- 想要递归 设置remap = true
vim.keymap.set('i', 'f', ']', {remap = true})
第一个参数 ‘i’ 表示起效模式,第二参数按什么键或组合键,第三参数,执行什么 可是函数,可以命令,或是输入 字符.
第四个参数设置为递归映射, 不设置默认为非递归。
第一个参数 是 和上面的vim表对应的
比如 'i'
就是 inoremap
, 'n'
就是nnoremap
去 nvim-lua-guide-zh 看,里面有一张对应表
vim/Gvim安装插件
nvim配置lsp语法提示错误检查和其他插件安装
Shift
和Ctrl
键太靠下了不好按, 可以设置向上了点 https://blog.csdn.net/vfffb/article/details/125245499?spm=1001.2014.3001.5502
vim/nvim键盘映射相关推荐
- VIM妙用及linux使用技巧(包括vim插件管理器、指令与键盘映射、打开多个文件、奇偶删除行、vim替换等)
前言 vim 是个非常高效.非常好用的工具,很多人一旦开始使用 Vim 之后就再也无法自拔.然而, Vim 仍然有其自身缺陷,对于普通用户来说,很难在入门的时候就体会到Vim的所谓高效性,同时,为了展 ...
- linux红外键盘映射表,linux下修改键盘映射
有段时间特别喜欢HHKB(一款适合专业人士使用的键盘),不过被它超高的价位给打败了.后来想想喜欢它的缘由有两个,第一就是它control键的位置,它的control键位于常规键盘的capslock键的 ...
- android+模拟器皮肤,自定义android模拟器皮肤和键盘映射
我想为Android模拟器创建自己的皮肤.我有照片购买了一些皮肤图像. 有一些额外的按钮,我需要映射,以便点击它时应该生成一个特定的事件. 在我的个性化皮肤文件夹的布局文件看起来是这样的:自定义and ...
- KEY键盘映射_手焊键盘,使用Python编写,一键放连招,还有什么你不会
本文转自公众号机器之心 这是一个内部运行 Python 的开源键盘,可根据个人需求定制键盘映射.从此以后,「穷苦玩家」也能在 MOBA 游戏里一键放连招了,不知这样算不算硬件外挂?「氪金玩家」请绕道. ...
- mac 使用Karabiner配置键盘映射(2)-核心标签的解读
2019独角兽企业重金招聘Python工程师标准>>> mac 使用Karabiner配置键盘映射(2)-核心标签的解读 KeyOverlaidModifier 使用场景:一般用在 ...
- apple mac 下使用机械键盘的办法,键盘映射工具软件,apple mac Mechanical keyboard
apple mac 下使用机械键盘的办法,键盘映射工具软件,apple mac Mechanical keyboard 想在苹果电脑 mac 系统下使用 机械键盘,大部分机械键盘不是为mac设计的,所 ...
- RHEL7及CentOS7的语言、字符编码、键盘映射、X11布局设置(localectl)-系统管理(1)...
这几天在阅读Red Hat Enterprise Linux 7的官方文档,发现了一些比之前有较大改善的系统管理方式,准备用一个系列的文章来分享一下自己的阅读.学习心得.在系统管理指导的开篇就提到了语 ...
- [ZZ]通过修改键盘映射替代损坏按键
[ZZ]通过修改键盘映射替代损坏按键 我买的神舟笔记本电脑因为使用不当,致使Ctrl键与PageUp键损坏.而该电脑仅有键盘左下角一个Ctrl键,损坏之后给日常使用带来许多不便.由于 我装的是Wind ...
- (转)通过修改键盘映射替代损坏按键
http://hi.baidu.com/kxw102/blog/item/aeef82fda272d1f6fd037fa1.html 通过修改键盘映射替代损坏按键 2009-12-20 05:22 通 ...
- 解决home end pgup pgdn没有独立,需要键盘映射的问题
写代码时,经常要用到home end pgup pgdn键,但我的笔记本是荣耀magic系列,没有这几个键,网上说需要配合Fn使用. 我的天!习惯了thinkpad键盘,现在居然用fn+x,两个键的组 ...
最新文章
- 借助可视化,最直观理解梯度,以及偏导数、方向导数和法向量等
- FPGA设计心得(2)边沿检测的问题进一步说明(仿真中一定能得到上升沿的设计)
- python.freelycode.com-最难搞的python“反面”代码
- 【MFC】选择文件夹时,记忆上一次路径
- python将大于输出列表_python找出列表中大于某个阈值的数据段示例
- 固定收益证券(fixed income)
- 算法:递归-八皇后问题(回溯算法)
- dg修改归档目录 oracle_DG环境下ORACLE自动回收归档空间
- DCS::TabNotebook
- skia 源码分析_【脚下有根】之Skia库的matrix代码解读
- 组合数取模模板(2)
- 【TSP】基于matlab遗传算法求解旅行商问题【含Matlab源码 1337期】
- 极光推送源码api封装改造
- 单片机课设中期报告_本科论文中期报告
- 考研专业课——845自动控制原理(一)
- 老打印机USB改无线连接
- c51为啥要宏定义时钟_C51 DS1302实时时钟的应用(2-26)
- 创业 和 移动互联网
- 计算机无法连接路由器上网,为什么路由器无法连接到网络,但是路由器无法连接到互联网!...
- 记在2019,winter is coming