-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
modline/spaceline clobbered during git commit with magit #14726
Comments
This is an upstream bug of spaceline. |
Same problem here, it seems this issue is caused by commits 4836a25 and 38f582d. At
But not sure if this is an appropriate way to fix this. Need the experts' help on this. |
I will take a look. |
@hhkgrz |
I still get this:
|
The code changed here wants to distinguish the cases of whether `arg` is a list with one set of args to `spacemacs|diminish` or a list of a list of such args. It used to look at the second element of `args` to make that distinction. Consequently, if you want to specify a list of a list of args for `:spacediminish`, you'd have to have at least two such lists of args in the list. However in syl20bnr@38f582d a usage with a list of just one list of args was introduced. This fixes changes the detection so that it looks at the first element of `arg`. If that's a list, `arg` is assumed to be a list of lists of args to `spacemacs|diminish`. If it's not, it's assumed to be just a list of args to `spacemacs|diminish`. That works well because the first argument to `spacemacs|diminish` is a symbol. Fixes syl20bnr#14726
I'm getting the following backtrace Tracing a bit through the code, the problem seems to be in here (defun use-package-handler/:spacediminish (name _keyword arg rest state)
(debug)
(let ((body (use-package-process-keywords name rest state)))
(use-package-concat
`((when (fboundp 'spacemacs|diminish)
,@(if (consp (cadr arg)) ;; e.g. ((MODE1 FOO BAR) (MODE2 BAZ XYZ))
(mapcar #'(lambda (var) `(spacemacs|diminish ,@var))
arg)
`((spacemacs|diminish ,@arg))))) ;; e.g. (MODE FOO BAR)
body))) at Thus, in the current implementation, A proposed fix is in #14810. |
The code changed here wants to distinguish the cases of whether `arg` is a list with one set of args to `spacemacs|diminish` or a list of a list of such args. It used to look at the second element of `args` to make that distinction. Consequently, if you want to specify a list of a list of args for `:spacediminish`, you'd have to have at least two such lists of args in the list. However in syl20bnr@38f582d a usage with a list of just one list of args was introduced. This fixes changes the detection so that it looks at the first element of `arg`. If that's a list, `arg` is assumed to be a list of lists of args to `spacemacs|diminish`. If it's not, it's assumed to be just a list of args to `spacemacs|diminish`. That works well because the first argument to `spacemacs|diminish` is a symbol. Fixes syl20bnr#14726
The code changed here wants to distinguish the cases of whether `arg` is a list with one set of args to `spacemacs|diminish` or a list of a list of such args. It used to look at the second element of `args` to make that distinction. Consequently, if you want to specify a list of a list of args for `:spacediminish`, you'd have to have at least two such lists of args in the list. However in 38f582d a usage with a list of just one list of args was introduced. This fixes changes the detection so that it looks at the first element of `arg`. If that's a list, `arg` is assumed to be a list of lists of args to `spacemacs|diminish`. If it's not, it's assumed to be just a list of args to `spacemacs|diminish`. That works well because the first argument to `spacemacs|diminish` is a symbol. Fixes #14726
Should be fixed in #14810 |
The code changed here wants to distinguish the cases of whether `arg` is a list with one set of args to `spacemacs|diminish` or a list of a list of such args. It used to look at the second element of `args` to make that distinction. Consequently, if you want to specify a list of a list of args for `:spacediminish`, you'd have to have at least two such lists of args in the list. However in syl20bnr@38f582d a usage with a list of just one list of args was introduced. This fixes changes the detection so that it looks at the first element of `arg`. If that's a list, `arg` is assumed to be a list of lists of args to `spacemacs|diminish`. If it's not, it's assumed to be just a list of args to `spacemacs|diminish`. That works well because the first argument to `spacemacs|diminish` is a symbol. Fixes syl20bnr#14726
Description
First off, thank you for all your help building spacemacs, its awesome.
This is an expansion on the brief notes I left on closed issue #176 (TheBB/spaceline#176)
In short, whenever I enter the commit menu using magit (
SPC g s
and thenc c
) my spaceline/modline gets clobbered and does not return until I restart spacemacs.Screenshot before
** Screenshot during commit (note same modline appearance is seen until spacemacs restarts)**
My .spacemacs (renamed to spacemacs.txt so I can upload to github)
spacemacs.txt
Reproduction guide 🪲
SPC g s
c c
Observed behaviour: 👀 💔
spaceline replaced by empty bordered "cells"
Expected behaviour: ❤️ 😄
spaceline not clobbered :)
System Info 💻
Backtrace 🐾
The text was updated successfully, but these errors were encountered: