- Repeatable key sequence
, m e. - Repeatable key sequence
, x u. - Repeatable key sequence group for
, m @and, m h. - Repeatable key sequence group for
, x [and, x ]. - Repeatable key sequence group for
, x ^and, x {and, x }. - Repeatable key sequences
, aand, eadded to group for, p. - Repeatable key sequences
, m aand, m eadded to group for, m b. - Customisable variable
devil-global-sets-buffer-defaultthat, when set tot, makes enablingglobal-devil-modealso enable Devil in all new buffers.
- Support for repeatable key groups. When a Devil key sequence in a repeatable group is typed, then that key sequence or any another key sequence in the same group can be executed and repeated merely by typing the last character of that key sequence.
- Repeatable key groups defined in
devil-repeatable-keysis not ignored anymore whendevil-all-keys-repeatableis set to non-nil. - Devil key sequences
, pand, nand, band, fhave been grouped together into a repeatable key group. - Devil key sequences
, m fand, m bhave been grouped together into a repeatable key group.
- Prevent special key sequences from being repeatable.
- Devil key sequence
, mnow translates toM-instead ofC-M-. - Devil key sequence
, m znow translates toM-instead ofC-M-. - Devil key sequence
, m ,now translates toM-,instead ofC-M-,. - Devil key sequence
, m mnow translates toC-M-instead ofM-. - Repeatable key sequence
, m m fchanged to, m f. - Repeatable key sequence
, m m bchanged to, m b. - Repeatable key sequence
, m m ychanged to, m y. - Repeatable key sequence
, m m ^changed to, m ^.
- Devil key translation from
m ztoM-. - Devil key translation from
m mtom. - Devil key translation from
mtoM-.
- Function
devil-set-keyto set a new Devil key and update the mode’s keymap. - Reinstate variable
devil-versionsince it is useful in determining the source version conveniently. It helps during troubleshooting the package when installed from MELPA which sets the package version to a version derived from the current date and time. - Command
devil-describe-keyto describe Devil key sequences. - Command
devil-toggle-loggingto toggle logging. - Special key
, h , kto executedevil-describe-key. - Special key
, h , lto executedevil-toggle-logging.
- Customising
devil-keyalso updates the mode’s keymap. - When no binding exists for the translated key sequence, convert the
key sequence to a fallback key sequence for terminal Emacs according
to
local-function-key-mapand execute any command bound to the fallback key sequence. For example, when the Devil key sequence, x <tab>is converted toC-x <tab>, since no command is bound to this key sequence, it is further translated toC-x TABand the commandindent-rigidlybound to it is executed. - Format control sequence to show the Devil key sequence read by Devil
has changed from
%kto%r. - The default special key sequences no longer merely insert literal
characters into the buffer. That behaviour was problematic in
isearch-modebecause typing special keys like, ,and, SPCinisearch-modeinserted the literal characters in the buffer as opposed to appending these characters to the search pattern. The default special key sequences now invokedevil-execute-keyinstead which carefully look up the current binding for the current special key and executes it. This produces the correct behaviour of special keys even inisearch-mode.
- Fix special key sequence
, <return>which was broken by the previous release of version 0.4.0. - Fix special key
, ,inisearch-mode.
- Customisable variable
devil-all-keys-repeatablethat makes all Devil key sequences repeatable when set tot. - Key
, sto the default list of repeatable keys. - Key
, dto the default list of repeatable keys. - Key
, m m ^to the default list of repeatable keys. - Translate
m mtomto support typing key sequences likeC-c m. - Translate
m ztoM-to support typing key sequences likeC-c M-mandC-M-m.
- When a Devil key sequence translates to an Emacs key sequence with
both the control key and an uppercase letter, the uppercase letter
is further translated to its shifted form, e.g.,
C-M-Vis translated toC-M-S-v.
- Fix key translation when the Devil key is a key vector, e.g.,
(kbd "<left>") - Fix key translation of key sequences involving function keys, e.g.,
, <tab>,, <backspace>, etc. For example, earlier, <tab>translated toC-TABand caused “undefined” error even if there was a command bound toC-<tab>. With this fix,, <tab>is now translated toC-<tab>and invokes the command bound to it, if any.
- Add customisation group
devil.
- Move tests out to a separate file.
- Fix spacing in documentation strings.
- Remove
devil-versionanddevil-show-version.
- Key
, kto the default list of repeatable keys. - Key
, /to the default list of repeatable keys. - Key
, m m yto the default list of repeatable keys. - Command
devil-show-versionto display Devil version.
- Automatically detect the activation key and accumulate it in order to
support
devil-mode-mapwith multiple activation keys.
- Remove a stray
messagecall. - Make the function
dev--testsnon-interactive. - Translation issue that caused invalid Emacs key sequences on mapping
-. For example, mapping-toC-xand typing- C-fproducedC-x CC-xf. This has been fixed so that- C-fis now translated toC-x C-f.
- Devil global and local minor modes.
- Default Devil key set to the comma (
,). - Special key
, ,to type a literal comma. - Special key
, SPCto type a comma followed by a space. - Special key
, RETto type a comma followed by return. - Translation rules that translate
,and, ztoC-. - Translation rules that translate
mand, m mtoM-. - Translation rule that translates
, ,to,. - Repeatable key sequences for
, p,, n,, f,, b,, m m f,, m m b, and, m x o. - Key binding for
isearch-mode-mapto support Devil key sequences in incremental search. - Key binding for
universal-argument-mapto support repeating the universal argument withu.