With my shell setup cleaned up so all environment variables are set in
`~/.zshenv`, and all the slower interactive shell setup in `~/.zshrc`,
we can no remove the `-i` flag from exec-path-from-shell's setup,
leading to a much faster setup time.
Also load additional environment variables, and also set
`temporary-file-directory` to match the `TMPDIR` environment variable.
Due to the value being set not ending with a slash, auto-save files were
being stores in `~/.emacs.d/cache` instead of
`~/.emacs.d/cache/autosave`.
The fix was to add a slash at the end, and also to ensure the directory
exists.
And get rid of:
- dash, doesn't need to be, packages which depend on it, should have it
listed as a dependency
- smart-mode-line, don't need it anymore as I use the doom-modeline
package to stylize the modeline.
I've been using doom-themes' doom-vibrant for long enough now that I'm
certain I won't be moving away from it anytime soon. So let's simplify
and strip away all other theme setup stuff.
It seems to cause very long freezes within magit itself, especially when
trying to commit. It seems to that the git diff command that's run in
the background hangs and/or takes a very long time to complete for some
reason.
Manually killing those git processes let's magit wake up instantly
again, in htop they're listed as:
git --no-pager diff --no-color -U0 <Git SHA of HEAD>
As I don't see myself using tabs all the time, but potentially wanting
access to them every now and then, I need to manually trigger one of the
tab / tab-group switching keybindings, or M-x centaur-tabs-mode to load
and enable it.
Persp-mode doesn't quite manage to restore magit buffers correctly, so
I've opted to have it ignore any and all magit buffers when performing
it's auto-save.
It is possible to configure it to know how to save and load the
magit-status buffer for example, but the snippet for it from
persp-mode's readme doesn't fully restore the buffer as is. And magit
has many different kinds of buffers, so I've simply opted for having all
ignored.
Ever since I started using persp-mode, launching Emacs in a terminal has
made it restore the same set of open files as in my main GUI instance of
Emacs. This hasn't been a big deal, but still somewhat annoying.
I've finally gotten around to disabling persp-mode's auto save/load
feature when running Emacs in a terminal.
And for good measure, I also set the theme to be doom-vibrant in the
terminal too. My old tomorrow-night-paradise is way out of date, and
nowhere near as good as doom-vibrant.
The undo history feature of undo-tree has been very unreliable lately,
to the point it fails to load undo history for nearly every file.
It seems the undohist package is a lot more reliable.
With Emacs 27 we are using the new built-in
display-fill-column-indicator mode. It does not have issues with
web-mode like fci-mode from the fill-column-indicator package does.
This module wraps around the fill-column-indicator and it's
fci-mode. This will enable easy switch-over to Emacs 27's native
display-fill-column-indicator feature.
Also create a new siren-display-line-numbers module and function that's
responsible for turning on the display of line numbers. Future changes
to how line numbers are displayed can now be done in a single place.
There are a few major modes which are not based on prog-mode, that I
want to behave like prog-mode. Previously each did nearly all the same
setup that's done via the prog-mode hooks. Now instead let's actually
run runs the hooks for prog-mode.