This reverts commit 91af298090.
it breaks (kill-whole-line) `kill-whole-line` (C-S <backspace>)
the SO link mentioned in it got 0 point.
and hack like this can be put it to user's own config.
When `dotspacemacs-enable-paste-transient-state` is on, there exists a minor
annoyance that deleted whitespaces appear in the kill ring. This requires an
extra C-j/C-k to bypass the noise.
This commit uses a advice function to `kill-new` to prevent text with only
whitespaces from entering kill ring.
Credit: https://stackoverflow.com/questions/12102554/emacs-skip-whitespace-kills
Co-authored-by: Lucius Hu <1222865+lebensterben@users.noreply.github.com>
Co-authored-by: Lucius Hu <lebensterben@users.noreply.github.com>
1. Delete vim-empty-lines layer and merge its code into spacemacs-evil
2. Remove unused function from spacemacs-evil/funcs.el
3. Add variable dotspacemacs-evil-show-empty-line-indicators to toggle vim-empty-lines-mode
4. Update related documents
5. Compatibilities
Add support for the very useful evil-tex package to the latex layer.
Of particular note, this package provides numerous text objects for latex, e.g.,
latex-style quotes and double quotes, and also provides valuable toggles for
managing delimeters.
I've mapped its "magnificent toggles" (which are otherwise under a `mt` prefix)
to `SPC m q` (q for "quite magnificent") to avoid interfering with any standard
evil features.
I added brief documentation for evil-tex to the latex layer's README, which
primarily refers the reader to evil-tex's thorough documentation rather
than duplicating it in the readme.
Add documentatation to the Spacemacs Git layer describing how to configure basic git identity and more importantly how to configure Magit Forge to access GitHub / GitLab using a machine configuration and an encrypted file to hold the personal access token.
Add kaocha-runner.el to the Clojure layer to enable running the kaocha test
runner from Emacs Cider
Kaocha runner added to the layer via the clojure-enable-kaocha-runner variable
Add key bindings to call Kaocha runner
C-o and C-i are standard vim keybindings to jump back/forward between previous
locations. It is annoying and unnecessary that evilified buffers break that
flow, therefore these keybindings should be added to the
`evil-evilified-state-map` so that they are available automatically in all
evilified keymaps/modes. I assume that by just adding them to the map, all
required remappings will automatically be taken car of by the
`evilified-state-evilify-map` macro (anyway, it seems to work fine).
* lsp: Bind =~SPC m g T~ to lsp-treemacs-type-hierarchy
This allows to show the type hierarchy for the type at point.
* lsp: Goto call and type hierarchy are provided by lsp-treemacs
It's nice to have a way to use common SBT commands without having to enter a
Hydra, and without having to type them out or select from a history list. The
following should be standard and quite common:
+ `scalafmtAll`
+ `compile`
+ `test`
Added mnemonic keybindings that I think match Spacemacs conventions. They
behaviors also give better parity with the build capabilities of other major
modes, which frequently support compile, format and test functionality.
This commit changes the yes-or-no-p to a read-answer with three options y, s and
n (for yes, some and no. This of course could be a, s, c for 'all',
'some/select' and 'cancel', but I decided to keep yes no as users are already
familiar with the y and n).
Finally the user can select packages by answer for each package in the list a
yes-or-no-p (pressing y or n, if you upgrade regularly the list usually is not
too long. It is anyway better than having only the options all or none).
The `nonc` construction is just a non cl alternative to cl-remove-if (I've added
the comment with the explanation).
Special mode and its derived mode(s) buffers were made evilified in PRs #14995
and #15050. However, special-mode is too aggressive (as 'warned' for already in
#14995); it makes it hard to overwrite its keybindings (e.g. `evil-local-set-key`,
or using `evil-evilified-state-map` on a derived map have no effect).
Therefore it makes more sense to open the buffers in motion-state instead. This
state also does not hijack the `q` keybindings as defined by special-mode (see
https://www.gnu.org/software/emacs/manual/html_node/elisp/Basic-Major-Modes.html),
although it does still hijack its `g` keybinding, but evil navigation is
considered to have higher priority than revert-buffer anyway.