Wenn Sie Ihre Zeit nicht verschwenden wollen!
Bisher ist dieser Artikel nur für EMACS-Benutzer und wurde ursprünglich nur für mich erstellt
Soweit ich weiß, verwenden viele Programmierer VIM, und einige verwenden auch VIM, aber sie tun dies im EMACS-Modus EVIL (böse), was bedeutet, dass diese Leute alle Reize von VIM verstehen (schnelle Textbearbeitung ohne Verwendung einer Maus). das Vorhandensein mehrerer Modi usw.), aber sie lieben die Möglichkeit, Milliarden von Plugins hinzuzufügen. Ich weiß aber auch, dass VIM vor einigen Millionen Jahren für die Programmierer dieser Zeit erstellt wurde, um ein separater Editor zu sein (nicht für EMACS), sodass VIM nicht alle Funktionen verwendet, die es könnte, zum Beispiel: Der Schlüssel Der Befehlsmodus wird in der unteren Ecke der Tastatur aufgerufen (und ja, ich weiß, dass dies in .vimrc leicht korrigiert werden kann). Auch wenn ich eine andere Datei bearbeiten möchte, muss ich:
Wechseln Sie in den Befehlsmodus (indem Sie auf sich selbst klicken, wissen Sie, wo)
Drucken Sie `: find` und Dateiname
Wenn ich einen Fehler im Dateinamen gemacht habe ---> in Punkt 2
Dies kann ewig dauern und Sie müssen die aktuelle Datei sehr oft ändern! Wie ist es überhaupt möglich, VIM überhaupt zu verwenden, wenn Sie das dvorak-Layout verwenden? Und im Allgemeinen sind alle VIM-Tasten so konfiguriert, dass sie nicht schnell verwendet werden können, aber um sich schnell daran zu erinnern, ist dies natürlich auch cool, da jeder Befehl in VIM für jeden Muttersprachler zu einem schönen und verständlichen Satz werden kann. und XAH FLY KEYS können sich vielleicht nicht damit rühmen, weil es in einer anderen, schnellen Textbearbeitung cool ist und wenn Sie ein Benutzer eines unbeliebten Layouts sind, werden Sie wahrscheinlich keinen besseren finden!
Kommen wir zum Wichtigsten in diesem ausgezeichneten Artikel.
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
Um dasselbe nur im INSERT-Modus zu tun, müssen Sie fast denselben Code ausführen:
(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
Das ist alles!!!