This replaces the older pattern
:toggle (configuration-layer/package-usedp ..)
This implementation ensures that :disabled-for honors dependent packages, i.e.
if package a depends on package b, which is owned by layer c, and layer c is
disabled for layer d, then neither package a nor b will be configured for layer
d. Previously, this was only true for package a, but not b.
This commit also fixes:
- configuration-layer/describe-package now shows which post-init and pre-init
functions are disabled, if any
- Does not recreate all layer objects unconditionally when calling
configuration-layer/discover-layers. Previously, this led to all layers being
recreated after e.g. `SPC h SPC`, without any of the dotfile information.
Since this information is now necessary for
configuration-layer/describe-package, it’s important that we don’t clear the
indexed layers when invoking this function.
- bind spacemacs-layouts/non-restricted-buffer-list to SPC b B instead
of SPC B b
- rename buffer listing functions in which-key to be more explicit
PR title:
bindings: non-restricted-buffer-list-* to SPC B b instead of SPC B b
PR message:
I don't know what was the thought behind this, but `spacemacs-layouts/non-restricted-buffers-list-*` was alone in its `SPC B` prefix and `SPC b B` was almost free, only used in one layer that I would be surprised if it was widely used (`ibuffer`).
I also renamed buffers listing functions in `which-key` to be clearer for the user. Indeed, I find that names like `helm-mini` are pretty obscure and kind of defeat the purpose of `which-key` and `spacemacs-layouts-non-restricted-buffer-list-blah` was so long that it couldn't even be displayed.
Now the user can choose between `list-buffers` or `global-list-buffers` for listing buffers.
org-mu4e was already handled in the mu4e layer which is the correct place for
this.
Added notmuch to mu4e layer, maybe not the right place for this but for now
it is OK.
Why?
- 'r' is free binding - not used anywhere for org related modes
- refiling is quite common activity if you use org heavily, so moving it for
easy access makes sense
Before, `org-mu4e` would be loaded when mu4e was. However, as an extension to
org mode, not mu4e, it should be loaded when org mode is.
This commit also adds similar support for notmuch.
problem: SPC C c was defined in the org layers :config section, which
runs when a .org file is loaded
solution: move the definition to the :init section, so that it loads on
startup, like SPC a o c and C-c c
Provide a way to toggle space-doc-mode in any org file with a keybinding.
Useful for reading documents in the same mode as Spacemacs documentation is
opened in.
Enabling a company backend for a specific mode was a tedious tasks with code
scattered at different locations, one for local variable definitions, one for
company hook function definitions and another where the backends were pushed to
the local variables (which was problematic, since we ended up pushing the same
backends over and over again with `SPC f e R`, pushes have been replaced by
add-to-list calls in the new macro).
All these steps are now put together at one place with the new macro
spacemacs|add-company-backends, check its docstring for more info on its
arguments.
This macro also allows to define arbitrary buffer local variables to tune
company for specific modes (similar to layer variables via a keyword :variables)
The code related to company backends management has been moved to the
auto-completion layer in the funcs.el file. A nice side effect of this move is
that it enforces correct encapsulation of company backends related code. We can
now easily detect if there is some configuration leakage when the
auto-completion layer is not used. But we loose macro expansion at file loading
time (not sue it is a big concern though).
The function spacemacs|enable-auto-complete was never used so it has been
deleted which led to the deletion of the now empty file core-auto-completion.el.
The example in LAYERS.org regarding auto-completion is now out of date and has
been deleted. An example to setup auto-completion is provided in the README.org
file of the auto-completion layer.
Add org-expiry package to be loaded lazily and autoload interactive
functions.
Provides no default configuration, but make it more convenient for users
to use the org-expiry package in their personal configuration.
Fixes#6630
In org-agenda-mode, make the org-agenda-refile and
org-agenda-clock-cancel bindings consistent with org-refile and
org-clock-cancel.
In org-agenda-transient-state, make the refile, set tags, clock in,
clock out, and clock cancel bindings consistent with their org-mode
and org-agenda-mode equivalents.
In org-capture-mode, make the org-capture-refile binding the same as
the org-agenda-refile and org-refile.