ivy-use-virtual-buffers was triggering recentf-mode to be called before
the recentf init function was called leading to problems with where the
recentf file was placed.
This layer configures spacemacs to use the ivy/counsel/swiper family of
packages. Default completion is done with ivy. This is meant to replace
helm for those who want it.
Background: `C-i` and `TAB` are the same keycode for historic reasons.
With the current settings, evil [1] and evil-jumper [2] associate
`jump-forward` to `C-i` (==`TAB`), what overrides bindings set to
`TAB` (==`C-i`) in terminal mode, like `orc-cycle`. To fix this,
this commit:
- Set `evil-want-C-i-jump` to `nil`, to prevent `evil` and `evil-jumper`
to use the `C-i` (==`TAB`) keycode.
- Remove the spacemacs' code that bind `jump-forward` to `TAB`(==`C-i`)
The current spacemacs code already rebind `jump-forward` to the GUI-only
`<C-i>` keycode.
[1] 082bd65ccc/evil-maps.el?fileviewer=file-view-default#evil-maps.el-323
[2] efaa841ca4/evil-jumper.el (L241)Fix#4505Fix#4487
Use mnemonic j for jumping commands. Although some of these commands
exist in other places, they are duplicated here when they don't
conflict.
Add:
1. jb for bookmark-jump
2. jc for avy char jump
3. jd for dired-jump
4. jD for dired-jump-other-window
5. jf for find-function-at-point
6. ji for spacemacs/jump-in-buffer (imenu)
7. jI for helm imenu in all buffers
8. jl for avy go to line
9. ju for avy-pop-mark (u for "undo")
10. jU for spacmacs/avy-goto-url
11. jv for find-variable-at-point
12. jw for avy go to word or subword
Move:
1. jh to j0 (push mark and go to beginning of line)
1. jl to j$ (push mark and go to end of line)
- Move all setq outside of spacemacs/load-yasnippet
- Explicitly add each snippet dirs, even the one in elpa dir
Before this commit I still get error on yasnippet loading, with this
commit the error is gone.
I hope we get yasnippet loading right this time! :-)
- Don't enable yasnippet before setting folders (avoid explicitly
loading them)
- Require yasnippet manually to get the yas-snippet-dirs value
- Don't include yas--default-user-snippet-dir (this is
~/.emacs.d/snippets)
- Allow `auto-completion-private-snippets-directory` to also be a list
of directories
Fix incorrect use of spacemacs/add-to-hook which used emacs-lisp-mode
for the hook variable. Since we are only adding a single function to the
hook, just use add-hook.
Having them in a minor mode map gives them precedence over other minor
modes. It's better to put the bindings in the same place as the original
evil jump commands which is the global motion map.
Derived modes don't inherit evil keybindings from their parents, this is
interesting to note, also it would be so great if we could have a
`set-leader-keys` macro that could take a list of modes as well.
This make `SPC h SPC` as default binding for accessing `helm-spacemacs`,
by either A) changing all the documentation; and B) adding a deprecation
message for `SPC f e h`.
The deprecation use a warning, because if a message is used it's hidden
directly when the helm buffer is shown, making it nearly unnoticeable
for the user.
Add the latex-enable-folding variable which turns on TeX-fold-mode and
adds some related bindings.
Reorganize the layer:
1. Move reftex into packages.el and delete the extensions file.
2. Don't duplicate the binding of keys. Use a loop to bind in tex-mode
and latex-mode. Then just add the additional latex-mode bindings
TeX-PDF-mode and TeX-source-correlate-mode are minor modes with the
usual functions. They should be enabled using the functions and not by
setting the variables as their docstrings both state.
Idris development results in a lot of transient popup buffers, which
the layer currently doesn't handle particularly well. This commit uses
popwin so that these special buffers appear in a predictable location
and opens them in motion state so that they can be closed immediately by
pressing ~q~.
These changes are largely based on the Clojure layer, which has worked
very well in my experience.
The keybindings in octave-mode don't follow the same standards as the
others. Also use the function `spacemacs/set-leader-keys-for-major-mode`
for setting mode specific keys.