summaryrefslogtreecommitdiff
path: root/reviews/emacs
diff options
context:
space:
mode:
authorKévin Le Gouguec <kevin.legouguec@gmail.com>2021-04-11 18:37:06 +0200
committerKévin Le Gouguec <kevin.legouguec@gmail.com>2021-04-11 18:37:21 +0200
commit39163472677ab9619e43607020fd430b8667c2a7 (patch)
treef7b92191bd3813857197c5e68d22166483929718 /reviews/emacs
parent54d185518fca7ad98c6855c21f15732faea4cd71 (diff)
downloadmemory-leaks-39163472677ab9619e43607020fd430b8667c2a7.tar.xz
Gush about incoming Emacs features
Diffstat (limited to 'reviews/emacs')
-rw-r--r--reviews/emacs/hype.org85
1 files changed, 85 insertions, 0 deletions
diff --git a/reviews/emacs/hype.org b/reviews/emacs/hype.org
new file mode 100644
index 0000000..94a0ead
--- /dev/null
+++ b/reviews/emacs/hype.org
@@ -0,0 +1,85 @@
+Emacs's NEWS files are useful as a searchable reference, but they can
+be overwhelming as an entry point. In this file, I'm keeping track of
+the changes /I/ am excited about.
+* Unmerged branches & patches
+** "Pure GTK" Emacs
+Some brave souls took it upon themselves to drag Emacs kicking and
+screaming into The Wayland Future™.
+* 28
+** Transient input methods
+*** Background
+Input methods make it easier to type in certain classes of characters.
+Emacs includes different kinds of methods:
+
+- alternative keyboard layouts :: if you are familiar with specific
+ layouts, e.g. Dvorak, French AZERTY, Russian, you can ask Emacs to
+ switch to this layout;
+
+- composition :: some methods let you specify characters by typing in
+ short sequences of other symbols:
+ - =french-prefix= provides easy access to diacritics with e.g. ='e=
+ for =é=, =,c= for =ç=;
+ - =TeX= turns TeX macros such as =\alpha=, =\pi=, =\le=, =\ne=,
+ =\wedge= into their corresponding characters, i.e. α, π, ≤, ≠, ∧.
+
+Input methods can be toggled with =C-\=; prefix that with =C-u= to
+select a new method. =C-h I <METHOD>= shows what characters
+=<METHOD>= supports. =C-u C-x == on a character tells you how to
+input that character with the current input method ("to input: …").
+*** What's new
+The new =C-x \= command enables an input method temporarily, just for
+the next character, disables it afterward.
+
+As an occasional user of the =TeX= method, I find this useful because
+I no longer need to choose between
+1. enabling =TeX=, typing a sequence, disabling =TeX=, or
+2. enabling =TeX=, typing a sequence, keeping =TeX= enabled, getting
+ bitten by it whenever I type in =oh_no= and that turns into =ohₙo=.
+
+=C-x \= seems to follow the same rules as =C-\=:
+- the first time you call it, it prompts for a method,
+- subsequent calls do not prompt,
+- add =C-u= to get a prompt back.
+** ~same-window-prefix~, ~other-window-prefix~, ~other-frame-prefix~
+The rules which govern how Emacs manages windows are beyond my
+reckoning. I know [[https://protesilaos.com/codelog/2020-01-07-emacs-display-buffer/][it is possible to tame them]] with patience and
+discipline; still, these new commands appeal to my humble caveman
+brain.
+
+Assuming the command run by key sequence =<KEYSEQ>= will display its
+own buffer =<BUF>=,
+
+- =C-x 4 1 <KEYSEQ>= says "please display =<BUF>= right here, in this
+ window";
+- =C-x 4 4 <KEYSEQ>= says "please display =<BUF>= in another window";
+- =C-x 5 5 <KEYSEQ>= says "please display =<BUF>= in another frame".
+
+These new ~other-…-prefix~ commands can be seen as generalizations of
+common shorthands such as =C-x 4 f= or =C-x 5 b=.
+** Visibility-cycling with =TAB= in outline.el
+=TAB= and =S-TAB= now work in Outline mode like they do in Org. Look
+at e.g. NEWS (=C-h N=) to see them in action. Customize
+~outline-minor-mode-cycle~ to enable this in ~outline-minor-mode~.
+
+One small, /tiny/ step toward chipping good features out of Org in
+order to generalize them.
+** ~yank-from-kill-ring~
+I've always been somewhat ambivalent about Emacs's ~kill-ring~:
+
+1. Everything I ever copied is saved forever! This is a revolutionary
+ feature on par with the undo system 🙌
+
+2. … Surely we can find a more ergonomic UI than =C-y M-y M-y M-y=
+ /dammit/ =C-_ C-_= /ah screw it/ =C-h v kill-ring RET C-s= 🤔
+
+And lo! =M-y= now prompts for the ~kill-ring~ item to yank, with
+completion. This makes the ~kill-ring~ so much more accessible IMO.
+** repeat-mode
+=C-x o o o=!
+** ~read-char-by-name-group~, ~read-char-by-name-sort~
+Some very welcome quality-of-life tweaks to =C-x 8 RET=.
+* 27
+** ~what-cursor-show-names~
+Most of my uses of =C-u C-x == are to (re)discover how the Unicode
+consortium decided some character should be called; having plain =C-x
+== give me that information without popping an extra buffer is neat.