With +extra enabled, this module would activate `prettify-symbols-mode`
in any buffer where `prettify-symbols-alist` is non-nil, whether or not
`+ligatures-extra-alist` has an entry for the current major mode (or a
parent thereof). This behavior is poor UX, since the user may be
expecting that a empty entry for some `X-mode` in
`+ligatures-extra-alist` should mean *no` prettify-symbols-mode` at all
in `X-mode`.
With this, `+ligatures-extra-alist` is now the authority. An empty entry
for `X-mode` will result in `prettify-symbols-mode` *not* being
activated there. If that entry *isn't* empty, it will be combined only
with the global default value of `prettify-symbols-alist`, not any
pre-existing buffer-local value, to make the end result deterministic,
because some modes have their own defaults for it (like
`lisp-prettify-symbols-alist`, `js--prettify-symbols-alist`, and
`rust-prettify-symbols-alist`).
Fix: #7440
It seems there's an edge case in EXWM where input events may occur
without keys to cause them (#8064), so these two keybind fixes need to
be ready to receive an empty vector from `this-single-command-raw-keys`.
Fix: #8064
This was a tricky regression to track down. 9753bfb tries to fix an
issue where the `default` face's :foreground changes to `#000000` in any
new frames created after the initial one (by calling `make-frame`),
because those frames' `background-color` and `foreground-color`
parameters default to "#000000" (possibly a bug with `disable-theme` too
eagerly defaulting them to black).
240493a replaces that with new, seemingly cleaner approach: setting
`frame-inherited-parameters`, which instructs `make-frame` to copy those
parameters from the last open frame, however, those parameters in the
initial daemon frame will be set to "unspecified-bg" or
"unspecified-fg" (see the docstring for `face-{back,fore}ground`), which
are invalid color strings. `make-frame` crashes tries to create a frame
with those color values, causing #8059.
Fix: #8059
Amend: 240493ae92
Amend: 9753bfb775
Forgot that `ob-dot.el` exists in Org. I blindly expected the
`graphviz-dot-mode` package to provide babel support in f6b7e8a.
Also, `org-src-lang-modes` expects its CDRs to omit the -mode suffix,
which should fix syntax highlighting of graphviz/dot babel blocks.
Amend: f6b7e8ae48
Ref: #7546
In 9a6bcc3, the new default for `truncate-string-ellipsis` was long
enough that it could cause `truncate-string-to-width` to error out (see
exceeded `truncate-string-to-width`s END-COLUMN argument.
Amend: 9a6bcc31f9Fix: #8044
In 4989661, I reduced the init time for bin/doom by eliminating the
extra `emacs` call in its shebang. This does the same for
bin/doomscript.
Ref: 498966179f
The NOERROR argument on `load` no only suppress file-missing errors, but
file permission errors, so I avoided it. However, if any
`require` *inside* `doom.el` throws `file-missing`, this bootstrapper
will assume this means we're loading a non-Doom config.
Those `face-*` calls sometimes returned nil, causing new frames spawned
from emacsclient to quietly crash sometimes. By instead relying on
`frame-inherited-parameters` we achieve the same but more stable result.
Amend: 9753bfb775
`racket-mode` recently added `racket-hash-lang-mode` as an alternative
major mode.
Close: #7543
Co-authored-by: hlissner <hlissner@users.noreply.github.com>
Any buffers opened before company-mode was loaded would not have
`company-backends` initialized in them.
Fix: #6261Fix: #6180Fix: #5896Fix: #5672Fix: #2015