This was done to help the modeline build its file path in indirect
buffers, but this has been fixed by using buffer-base-buffer.
Both ui/modeline and ui/doom-modeline have been refactored to
accommodate this.
ws-butler only strips trailing spaces on lines that have been modified.
+ ws-butler is disabled if editorconfig enables
trim_trailing_whitespace, which resorts to delete-trailing-whitespace
instead.
+ Updates doom|(enable|disable)-delete-trailing-whitespace hooks to use
ws-butler-mode.
+ Uses alist variable to store config, rather than hooks
+ Added check for installed docsets in +lookup/documentation
+ Set docsets for various language modules (c-mode, c++-mode, css-mode,
scss-mode, sass-mode, web-mode, go-mode, racket-mode, emacs-lisp-mode,
js2-mode, rjsx-mode, typescript-mode, rust-mode, and php-mode)
+ Made *eww* popups for dash docsets larger
+ Renamed set-docset! => set-docsets! (set-docset! is aliased to
set-docsets!)
+ New +lookup/install-docset alias
The nimsuggest plugin tries to build a unique path for temporary files
for its flycheck checker. This path contains /tmp/emacs-nim-mode/A/B,
where A is the frame ID and B is the full path to the file being checked.
However, the original `nimsuggest--get-dirty-dir' incorrectly extracts
the frame ID from the string representation of `selected-frame' if
frame-title-format has been modified (which Doom has). The result is the
title of the frame, which can contain illegal path characters in
Windows, which in turn causes invalid argument errors when
`nimsuggest--make-tempdir' tries to use it.
This should really be reported upstream!
Also adds doom|disable-delete-trailing-whitespace hook, which can be
used to disable this behavior on a per-buffer basis. If you want to turn
off this global behavior:
(remove-hook 'write-file-functions #'delete-trailing-whitespace)
New snippets (created with yas-new-snippet) may not yet be associated
with a file when it is passed to the functions in yas-prompt-functions.
One of those functions, +snippets-prompt-private, prioritizes private
snippets over default ones, but determines which is which with
`file-in-directory-p`, which expects string arguments.
To fix this, we can safely assume that if a snippet has no associated
file, it is a private snippet.
This redesigns how format-all applies changes. Before, it would erase
the buffer and insert the formatted result. This would throw markers out
of whack, and usually meant the cursor would end up somewhere else (e.g.
the beginning of the file).
Now, changes are made to the buffer line by line, via RCS patch.
Other changes:
+ +format-region function was removed (replaced by +format-buffer and
+format/region).
+ set-formatter! was moved to autoload/settings.el
+ New +format/buffer command to replace format-all-buffer
This is much too unpredictable, considering the variable nature of elisp
indentation, and the possibility that certain functions and their indent
behavior may not be defined/declared when the file is being formatted.
devdocs-lookup is broken at the moment. devdocs search is still
available through +lookup/online as a provider however. This may be
reversed later, when (and if) we find a better devdocs backend.
Also renames +format|on-save to +format|buffer for clarity. It should
not (normally) be used directly. Use `+format|enable-on-save-maybe` and
`+format|enable-on-save`.