This commit restores the spacemacs/avy-open-url SPC x o keybinding,
and also adds spacemacs/avy-goto-url to the package :commands to fix the
missing function definition on the SPC j U keybinding.
See issue #4605. When dotspacemacs-helm-header is changed from the
default nil, then the helm-source-header theming does not updated when
a new theme is loaded.
This was due to the helm-source-header-default-xxx variables being set
only once and not updated when a new theme is loaded. The fix adds an
advice to spacemacs/post-theme-init to update these variables.
This allows for all other code including theming to take place and then
set the variables correctly i.e
load-theme -> post-theme-init -> helm-header
This also ensures the code is correctly decoupled now that helm is one
of the optional completion layers.
When a single source helm is viewed the source face-attribute was
changed from helm-selection to default as this gives a more consistent
result for themes that have bright highlight lines and/or no helm face
values.
A recent change in evil-jumper makes this unnecessary. The keys are now
bound as remaps, which means they have the same priority as the location
of the evil-jump-forward and evil-jump-backward commands. This is
exactly what this hack was trying to accomplish, so it's no longer
necessary.
Unless there is a valid reason why these shouldn't be included I think
we should keep them. after all we can yank with `v y` right?
squash! Add documentation
Key bindings should not be choosen given a package name, some helm
key bindings are under `SPC h` which are corrected the following way:
SPC h l for helm-resume to SPC r l (resume last completion)
SPC s l for last-search to SPC r s (resume search) (SPC s l is still
available)
SPC h L for helm-locate-library to SPC s L
Resolve#4592
Enable a hook in +distribution/spacemacs layer to enable bracketed-paste
in tty setups. This allows a better paste functionality in tty.
squash! Sort packages.
Move org-default-notes-file from ~/.notes to org-directory/notes.org
and remove forced creation of org-directory. User will be prompted
to create directory on completing capture.
Bind it to `SPC h d d` as it's a way to describe a lot of elements:
- commands
- functions
- classes
- generic functions
- variables
- faces
- helm-attributes
Is also bound on `SPC F1` and will also stay there.
SPC h . helm/ivy-spacemacs-help-dotspacemacs
SPC h SPC helm/ivy-spacemacs-help
SPC h f helm/ivy-spacemacs-help-faq
SPC h l helm/ivy-spacemacs-help-layers
SPC h p helm/ivy-spacemacs-help-packages
SPC h r helm/ivy-spacemacs-help-docs
SPC h t helm/ivy-spacemacs-help-toggles
There's not that many commands under `SPC h` so this gives easier access
to these commands. It also makes `SPC h SPC` get you straight to the
docs in both helm and ivy.
`SPC j j` is now for avy-goto-char (SPC SPC in 0.105)
`SPC j J` is for avy-goto-char-2
`SPC j s` is for splitting strings or sexps
`SPC j S` is for splitting strings of sexps, insert new line and indent
`SPC j n` is to split line at point, insert new line and indent
- Fix typos in README.org
- Add missing image
- Remove unecessary post-init functions
- Move SPC m h to SPC m h h to follow conventions
- Add correct copyright attribution
Instead of checking for our platform, simply test if the variables have
already been set. If not, let exec-path-from-shell figure out the right
values.
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.
Given the intended behavior of having evil-lisp-state-map available
under SPC k, it is simplest to bind it directly to
spacemacs-default-map.
This requires no changes to evil-lisp-state itself.
Fixes#4151
evil-set-initial-state is safer than manually adding and deleting from
the lists, because it knows about all available states and ensures that
the mode only shows up in one list. If it is in multiple list the
initial state depends on which is checked first, which we don't want.