fix: scratch buffer initializing too early #7816
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a daemon-only issue.
The scratch buffer is initialized very early
in the startup process. However, some minor
modes (such as
flycheck-posframe-mode
) andother things that should run on every prog-mode
or elisp mode buffer won't get to set a hook and
have it run. This recreates the scratch buffer
the first time it's switched to to fix this.
For some reason, simply calling the major mode
hook for the scratch buffer after doom-after-init-hook
doesn't work.
For some reason, removing the check for the buffer name in the hook function (i.e. running it on the first buffer switch after doom-after-init-hook) also works, and the buffer switch hook runs automatically despite me not switching any buffers, but just doom-after-init-hook by itself doesn't work and I don't know why.