在spacemacs&emacs中自定义方向键

内容

这里会讲怎么在emacs,或者spacemacs里映射方向按键。

 

背景

 在使用Spacemacs的emacs里,使用evil得到Vim方式操作,在Normal模式下移动方向键是h,j,k,l。但写代码时经常会遇到一类问题,在Insert模式时,当输入前半括号时,自动补全另一半括号,这时光标位于括号内,当时想继续输入时,你有两种选择:

  • 其一:回到Normal模式,移动光标,再进入插入模式;
  • 其二,使用方向键移动光标到括号外,继续输入。

方式一,按键数量太多,方式二,要移动手臂,对于一个经常写代码的人来说,多移动一次手臂,意味着职业病多增加一分。

于是就想在Insert模式下,映射方向按键,使之不用方向键,也不用多一个Normal模式切换。

方法

使用spacemacs的,把下面加在dotspacemacs/user-config ()下:

  (define-key evil-insert-state-map (kbd "C-h") (kbd "<left>"))
  (define-key evil-insert-state-map (kbd "C-j") (kbd "<down>"))
  (define-key evil-insert-state-map (kbd "C-k") (kbd "<up>"))
  (define-key evil-insert-state-map (kbd "C-l") (kbd "<right>"))

使用emacs的,添加命令:

(global-set-key (kbd "C-h") (kbd "<left>"))
(global-set-key (kbd "C-j") (kbd "<down>"))
(global-set-key (kbd "C-k") (kbd "<up>"))
(global-set-key (kbd "C-l") (kbd "<right>"))

其实最主要是知道,emacs里方向键的命令是哪个,找这个费了点时间,其它的都很简单。

最开始我胡乱按图索骥,试了"up",发现结果很惊艳,后面才知道原来要是"<up>",可以试试,如果"up"会发生什么,也算是一大发现了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值