Si vous ne voulez pas perdre votre temps!
Jusqu'à présent , cet article est uniquement destiné aux EMACS-ers et a été créé à l'origine uniquement pour moi
Autant que je sache, de nombreux programmeurs utilisent VIM, et certains utilisent également VIM, mais ils le font en mode EMACS, EVIL (evil), ce qui signifie que ces personnes comprennent tous les charmes de VIM (édition de texte rapide sans utiliser de souris, la présence de plusieurs modes etc.), mais ils aiment vraiment la possibilité d'ajouter des milliards de plugins. Mais je sais aussi que VIM a été fait il y a plusieurs millions d'années, pour les programmeurs de l'époque et afin d'être un éditeur séparé (pas pour EMACS), donc VIM n'utilise pas toutes les fonctionnalités qu'il pourrait, par exemple: La clé pour entrer dans le mode de commande se trouve dans le coin tout en bas du clavier (et oui, je sais que cela peut être facilement corrigé dans .vimrc), également si je veux passer à l'édition d'un autre fichier, alors j'ai besoin de:
Passez en mode commande (en cliquant sur vous-même, vous savez où)
Imprimer `: find` et le nom du fichier
Si j'ai fait une erreur dans le nom du fichier ---> au point 2
Cela peut prendre une éternité et vous devez changer le fichier actuel très souvent! De plus, si vous utilisez la mise en page dvorak, comment est-il possible d'utiliser VIM du tout? Et en général, toutes les touches VIM sont configurées non pas pour les utiliser rapidement, mais pour se souvenir rapidement, c'est aussi bien sûr cool, car chaque commande dans VIM peut se transformer en une phrase magnifique et compréhensible pour tout locuteur natif, et XAH FLY KEYS ne peut pas se vanter d'un tel peut-être, car c'est cool dans une autre édition de texte rapide, et si vous êtes un utilisateur d'une mise en page impopulaire, il est peu probable que vous trouviez mieux!
Passons à la chose la plus importante dans cet excellent article.
XAH FLY KEYS
XAH FLY KEYS, VIM, !
-
XAH LEE, EMACS- , ErgoEmacs .

1 ( , ), , , :

, XAH FLY KEYS 10- , ( QWERTY DVORAK AZURE).
github , - :
xah-fly-keys MELPA package manager EMACS
Emacs Lisp :
(require 'xah-fly-keys) (xah-fly-keys-set-layout "qwerty") ; (xah-fly-keys 1)
XAH-FLY-KEYS 2 : COMMAND INSERT ( VIM), COMMAND , HOT-KEYS, :
INSERT mode - ( COMMAND f)
COMMAND mode - ( INSERT Alt+SPACE)
COMMAND mode, - - , f, INSERT mode, SPACE (), , Space f, , SPACE, , Space i f, .
- :
j -
i -
k -
l -
o - 1
u - 1
; - 1 , :

h - 1
m -
. -
/ - , :

0 - .
, import , , , 0, , .
Ctrl+4 - ( flycheck-mode)
Ctrl+3 - ( flycheck-mode)
Space H - (Space - )
Space N - (Space - )
Space p - ( -> , -> , -> )

8 - , , ,

1 - , , ,

2 7 -
6 - ""

9 -
t - , (VISUAL MODE)
Space a -
Space o Space -

d - 1
5 - 1
e -
r -
x - - , (. /)
Space g -
g - :

Space k f - , ,
Space k t -
Space k g -
Space k a - ""
' - . ( -> , -> ()), :

z - / ,
w - , .
.
p - ( INSERT )
b - ( , , )
Space 6 -
Space k e -
Space k p - ( "\" ", )
Space k k -
Space o f - , ,
Space o g -
s - ,
/ (FRAMES)
, - (FRAME)

4 -
Space 4 -
Space 5 -
Ctrl+7 - ( )
Ctrl+8 - ( )
Ctrl+t -
Ctrl+w - ( )
Ctrl+s - ( )
Space m - dired
Ctrl+Shift+s - ...
Space l b -
Space i w -
Space i g -
Space i s -
Space i f - ( )
Space , Del -
Space , x - +
Space , c -
, :
php
perl
python
ruby
go
haskell
js
typescript
shell
clojure
racket
ocaml
cscript
tex/latex
java
Space l Space -

Space l . - ( f11 )
Space l 2 -
Space l 4 - ./.
Soace l t - ./.
Ctrlr+= -
Ctrlr+- -
Space l g - EMACS
( Emacs)
Space l 6 - ( )
Space l 9 -
Space l 0 - ,
Space l c -
Space l , - Emacs
Space l d - Emacs
Space 9 -
a - ELisp ( , Alt+X)
. HELP
Space j a -
Space j j -
Space j v -
Space j l -
Space j g -
Space o e -
Space o r -
Space o h -
Space o w -
n - , , :

Space k r - + , , :
SPACE,
DEL,
ENTER,
Space k d - ( )
Space y -
/
- ( )
v -
x - ( )
1. WTF?
, 1 - , , , .. ..
Space k 1 - 1 ( -> )
Space k 2 - 1
Space k 3 - 1 = 1; 1
Space k 4 -
Emaces - Eisp ELisp-.
- - COMMAND , :
(defun my-xfk-addon-command () "Modify keys for xah fly key command mode keys To be added to `xah-fly-command-mode-activate-hook'" (interactive) (define-key xah-fly-key-map (kbd "- ") ' - ) ) (add-hook 'xah-fly-command-mode-activate-hook 'my-xfk-addon-command) ;; my-xfk-addon-command, ;; - - . ;; add-hook Command mode
Pour faire la même chose uniquement en mode INSERT, vous devez exécuter presque le même code:
(defun my-xfk-addon-command () "Modify keys for xah fly key command mode keys To be added to `xah-fly-command-mode-activate-hook'" (interactive) (define-key xah-fly-key-map (kbd "- ") ' - ) ) (add-hook 'xah-fly-insert-mode-activate-hook 'my-xfk-addon-command) ;; my-xfk-addon-command, ;; - - . ;; add-hook insert mode
C'est tout !!!