New function configuration-layer/lazy-install to add support for
lazy installation of layers based on auto-mode-alist emacs mechanism.
This is essentially the Prelude feature but translated at the layer
level for Spacemacs.
New dotspacemacs variable to enable this feature:
dotspacemacs-enable-lazy-installation
For now this variable is set to nil by default, it will be put to t when
the feature is stable.
POC with elixir layer.
Start to isolate the list of packages. Also we want to define packages
function at the top level of an elisp file in order to not prevent
emacs from knowing where the functions are defined.
This commit has a POC made with elfeed and elixir layers.
Keep the point the same for evil-unimpaired/insert-space-above and
evil-unimpaired/insert-space-below.
Old Behavior
A newline<POINT>
\n
===== (evil-unimpaired/insert-space-below)
<POINT>A newline
\n
\n
New behavior
A newline<POINT>
\n
===== (evil-unimpaired/insert-space-below)
A newline<POINT>
\n
\n
Switching between layouts didn't save the tag of any (eyebrowse)
workspace, resulting in transient workspace tags. This fixes it so tags
are saved correctly.
This reverts commit bddf9de8f1.
When pyenv-auto-set-local-pyenv-version is set to 'on-visit then this
switched the python version when e.g. using jump to definition.
If " -- " appears in the search string split the search string on the
first occurrence with everything before treated as args to the search
and everything after treated as part of the regex.
This version of counsel--async-command feels smoother for me. Right now
it is just being used for the search functions. If others like it, I'll
propose it upstream.
With the introduction of `rspec` support in version 0.105.0
tests run with rspec launch in their own `rspec-compilation`
which is not managed in `spacemacs-base/init-popwin` causing
those compilations to open a new buffer and take over an exisiting
window.
It is preferable to have the test compilation open in a popwin
that does not disrupt the current state of a workspace layout and
takes advantage of the full width of the current editor view
so it's easier to read. Popwin is also nice because it is easier
to dismiss with a simple `C-g` or `SPC w p p`.
Enable a global binding to access a list of available REPLs to run
everywhere. If the requested REPL depends on a major-mode that hasn't
been loaded, it will be loaded along its dependencies.
To make this work, a new `spacemacs/register-repl` function is included.
This function adds a major-mode and its repl function to a global
variable.
Addressing #4630. C-d is now bound to eshell-delchar-or-maybe-eof which
checks if there is a char after the point. If so, it performs the normal
delete-char, otherwise eshell-life-is-too-much.
Two specific issues have been addressed. In README.org there was no
mention of the workspaces micro-state.
The micro-state documentation erroneously stated that 'R' could be used
to create a new layout. 'l' was mentioned nowhere as the way to create a
new layout.
The rest of this commit only updates both docs to contain the same info.
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