Evil

作者: wlianfu | 来源:发表于2018-10-10 17:20 被阅读8次

1,强化Emacs的编辑能力(你当然可以自己写函数,有现成的不更好么),同时你也不会感觉到Vim的影子!关键的关键是C-o啊!
设置如下:

(add-to-list 'load-path "~/.emacs.d/lisp/evil") 
(require 'evil) 
(evil-mode 1) ;以上的是设置启动emacs载入evil 

(setq evil-default-state 'emacs)
;这个是打开文件后默认进入emacs模式
;我还要在emacs和vim模式里面切换:C-z,换来换去啊
;要在Vim里面使用emacs的功能!OK,使用 \ 作为leader就OK了

(define-key evil-emacs-state-map (kbd "C-o") 'evil-execute-in-normal-state)
; C-o按键调用vim功能(就是临时进入normal模式,然后自动回来)
; 比如,你要到第一行,可以使用emacs的 M-<,也可以使用evil的C-o gg
; 其中C-o是进入vim模式 gg是去第一行,命令之后自动还原emacs模式!
; "Fuck you!" 如何删除""里面的内容呢?Emacs的话,默认文本对象能力不强
; 有了evil的拓展 C-o di" 轻轻松松搞定~
; 比如C-o 3dd C-o dib C-o yy C-o p C-o f * 舒服啊~发挥想象力吧

; 下面4行是设置使用C-d作为ESC按键,这个自己看吧

(define-key evil-insert-state-map (kbd "C-d") 'evil-change-to-previous-state) 
(define-key evil-normal-state-map (kbd "C-d") 'evil-force-normal-state) 
(define-key evil-replace-state-map (kbd "C-d") 'evil-normal-state) 
(define-key evil-visual-state-map (kbd "C-d") 'evil-exit-visual-state) 

; 以下设置时使用t作为多剪贴板的起始按键,比如 tay(不是 "ay哦) tap(就是"ap啦)~
(define-key evil-normal-state-map "t" 'evil-use-register)

; 注意,如果有什么bug的话,把这个函数也添加了
; evil作者给的代码,不知道有没有添加到插件里面去

(defun evil-execute-in-normal-state () 
"Execute the next command in Normal state. C-o o works in insert-mode" 
(interactive) 
(evil-delay '(not (memq this-command 
'(evil-execute-in-normal-state 
evil-use-register 
digit-argument 
negative-argument 
universal-argument 
universal-argument-minus 
universal-argument-more 
universal-argument-other-key))) 
`(progn 
(if (evil-insert-state-p) 
(let ((prev-state (cdr-safe (assoc 'normal evil-previous-state-alist)))) 
(evil-change-state prev-state) 
(setq evil-previous-state 'normal)) 
(evil-change-to-previous-state)) 
(setq evil-move-cursor-back ',evil-move-cursor-back)) 
'post-command-hook) 
(setq evil-move-cursor-back nil) 
(evil-normal-state) 
(evil-echo "Switched to Normal state for the next command ...")) 

尊重原创,引用地址:https://www.douban.com/group/topic/34775654/

相关文章

  • The evil wins the evil

    The evil wins the evil By: Sara 10 years old A was p...

  • 《菜根谈》112

    直躬不畏人忌,无恶不惧人毁 (Be not to fear fear, evil evil evil fear w...

  • Evil

    1,强化Emacs的编辑能力(你当然可以自己写函数,有现成的不更好么),同时你也不会感觉到Vim的影子!关键的关键...

  • Evil

    最大的悲劇不是壞人的囂張,而是好人的過度沉默?‍♂️

  • If Is Evil

    nginx 是分阶段执行的,并不像 C 这种编程语言一样顺序执行。指令执行的顺序和书写的顺序没有太大关系(跟具体模...

  • If Is Evil

    介绍 当在location区块中使用 if 指令的时候会有一些问题, 在某些情况下它并不按照你的预期运行而是做一些...

  • evil

    live love evil evolve

  • Learn Emacs In Day 8

    Learn Emacs In Day 8 大纲 Outline Evil插件 把Emacs变成Vim Evil(I...

  • Python Challenge[13]

    [Level 13] Title: call him phone that evil evil?应该是之前一关找出...

  • 《菜根谈》138

    阴恶祸深,阳善功小 (Yin evil evil deep, Yang good work is small) 【...

网友评论

      本文标题:Evil

      本文链接:https://www.haomeiwen.com/subject/urhmaftx.html