Eyebrowse stores window configurations for workspaces in frame properties.
These window configurations reference buffers by name, which means that
these references must be updated when a buffer is renamed. To this end,
eyebrowse advises rename-buffer.
Spacemacs integrates eyebrowse with persp-mode by saving the eyebrowse
workspaces for a perspective as a parameter for that perspective so that
Spacemacs can restore a perspective's workspaces when switching to that
perspective. However, eyebrowse's advice for rename-buffer fails to update
inactive workspaces, for which the window configurations are stored in
perspective parameters and not frame properties.
This commit disables eyebrowse's advice and adds perspective-aware advice
to update buffer references in workspace window configurations.
* layers/+spacemacs/spacemacs-layouts/funcs.el
(spacemacs//fixup-window-configs): New.
* layers/+spacemacs/spacemacs-layouts/packages.el
(spacemacs-layouts/init-eyebrowse): Remove eyebrowse-fixup-window-configs
advice for rename-buffer and advise with spacemacs//fixup-window-configs
instead.
Define an alias and use it internally so that (1) the name of the command will
be better to understand what it does than the original name and (2) Helm or Ivy
interface is invoked instead of Ido.
These are suggested in PR #11115.
Try again to fix issue #11176.
* layers/+source-control/github/packages.el (github/init-magithub): Disable
the GitHub project status, pull requests, and issues sections by default.
* layers/+source-control/github/README.org: Document that these sections
are all disabled by default, and how to enable them.
Syntax-checking and auto-complete layers should more
directly communicate that their function depends on
the installation of individual language layers to avoid
misunderstandings with new users who only install
syntax-checking or auto-complete and install the packages
manually.
This fixes issue #5776.
* layers/+spacemacs/spacemacs-layouts/packages.el
(spacemacs-layouts/init-persp-mode):
Set persp-add-buffer-on-after-change-major-mode to 'free.
Escape the filename before calling python on the filename in the shell in the
function `spacemacs/python-execute-file` by calling `shell-quote-argument`.
Fix issue #9477: spacemacs/smart-closing-parenthesis sometimes adds an
extra closing parenthesis.
spacemacs/smart-closing-parenthesis may call sp-up-sexp twice: first to
find the position of an existing closing delimiter or the position at which
one would be inserted, and second to insert a delimiter if necessary or
else move point after the existing closing delimiter.
The problem is that each call to sp-up-sexp may insert a delimiter, but
spacemacs/smart-closing-parenthesis is supposed to insert at most one.
The solution is to undo any edit performed by the first call to sp-up-sexp.
* layers/+spacemacs/spacemacs-editing/funcs.el: Undo any edit performed by
the first call to sp-up-sexp.
Fix SPC m c c (spacemacs/python-execute-file) and SPC m c C
(spacemacs/python-execute-file-focus), which were causing
the following errors:
save-current-buffer: Symbol’s value as variable is void: python-shell--interpreter
error in process filter: python-shell-comint-end-of-output-p: Wrong type argument: arrayp, nil
error in process filter: Wrong type argument: arrayp, nil
This commit also fixes issue #9070: spacemacs/python-execute-file-focus
does not change focus.
The problem is that spacemacs/python-execute-file-focus invokes
spacemacs/python-execute-file, spacemacs/python-execute-file invokes
inferior-python-mode, and inferior-python-mode uses the variables
python-shell--interpreter and python-shell--interpreter-args, which
the python package declares but does not initialize.
To resolve this problem, this commit initializes both variables to nil.
* layers/+lang/python/config.el: Initialize python-shell--interpreter and
python-shell--interpreter-args to nil.
It seems like the package is missing. We waited a while thinking it will be fixed but
people are starting to get annoyed by this. To be re-enabled once the upstream issue
is resolved.
Refs: https://github.com/melpa/melpa/issues/5657
Fix issue #10760: Magithub sections are not added to Magit.
The problem is that the Spacemacs init function's use-package form for
Magithub specifies both :after magit and :defer t. It should specify only
the former so that Magithub will be loaded when Magit is loaded.
* layers/+source-control/github/packages.el (github/init-magithub): Delete
:defer argument.
Add aliases for commands that ido-mode remaps that we want to bind to
Spacemacs keys, and use these aliases in the Spacemacs key bindings so that
these bindings invoke the original commands rather than the ido commands.
See <https://github.com/syl20bnr/spacemacs/issues/10237#issuecomment-359861570>.
Add `d` and `u` for scrolling down and up, just like the `pdf` layer.
Those are actually default `nov` keybings.
Invert `up` and `down` `nov` commands
Add keybindings in epub layer docs
Align table
Right now `alchemist-goto-definition-at-point` is marked as sync, which
sometimes shows message "No jump handler was able to find this symbol." before jumping to correct definition.
[`alchemist-goto--open-definition`](https://github.com/tonini/alchemist.el/blob/master/alchemist-goto.el#L215) calls alchemist server before jumping to definition, which I think justifies marking this as async.
I have very little experience with either Emacs, or Spacemacs, so let me
know if there's anything I can clarify and/or test before this commit gets
merged :)
Fix issue #9271: Setting clojure-enable-fancify-symbols to t causes
the following to the be printed repeatedly in the message buffer:
invalid face reference: t
The problem is that the clojure/fancify-symbols function adds font-lock
keywords with highlight forms containing face-name expressions that
evaluate to the return value of compose-region, which apparently is t;
this value is interpreted as a face name.
The solution to this problem is that the face-name expressions should
evaluate to nil, which will be interpreted as an empty list of properties
instead of a face name.
* layers/+lang/clojure/funcs.el (clojure/fancify-symbols): Define keywords
using face-name expressions that evaluate to nil.
Update key bindings to reflect some changes in Markdown Mode 2.3:
* markdown-exdent-region was renamed to markdown-outdent-region.
* markdown-insert-reference-image (SPC m i I) was folded
into markdown-insert-image (SPC m i i).
* markdown-insert-inline-link-dwim (SPC m i l) and
markdown-insert-reference-link-dwim (SPC m i L)
were replaced by markdown-insert-link (SPC m i l).
* markdown-toggle-markup-hiding (SPC m t m) was added.
* markdown-jump (SPC m RET) was replaced by markdown-do (same).
Note that the documentation listed an incorrect key binding for
markdown-jump; this has been corrected.
* layers/+lang/markdown/packages.el (markdown/init-markdown-mode):
* layers/+lang/markdown/README.org: Update key bindings.
- First remove elixir's layer project prefix, since it was used only for
one binding which would be better suited in tests prefix
- Move `alchemist-project-find-test` to test prefix
- Add `phoenix` prefix and declare bindings
Upstream renamed rtags-cycle-overlays-on-screen to
rtags-cycle-through-diagnostics. As a result, SPC m g Y
causes the following error:
Wrong type argument: commandp, rtags-cycle-overlays-on-screen
This commit updates the corresponding key binding
to the new command name in order to prevent the error.
3011f4e787
* layers/+lang/c-c++/packages.el (c-c++/init-rtags): Change
rtags-cycle-overlays-on-screen to rtags-cycle-through-diagnostics.
Fix issue #11037: Do not adjust the width of a popup shell's window unless its
position is left or right.
* layers/+tools/shell/funcs.el: Check that shell-pop-window-position is 'left
or 'right before adjusting the window's width.
Only using visual state as entry point for evil-surround doesn't guarantee
surround is available for evil-yank and evil-delete. Fixed by also using
operator state.
Fixes#11019 and #11021
Fix issue #6416: SPC s f (spacemacs/helm-files-smart-do-search) in a buffer
that is not visiting a file causes an error:
Wrong type argument: stringp, nil
* layers/+completion/helm/funcs.el
(spacemacs//helm-do-grep-region-or-symbol): Check whether preselection is
nil in order to avoid calling helm-basename on a nil value.