d23abed made Magit prefer the vendored git over homebrew/macports
git (or wherever else), because it appeared to speed up Magit's git
calls, but that was a premature optimization. There are some users
reporting it works, but more than report it doesn't. I don't have Mac
hardware to test this properly on, so I opt for the simpler option of
removing the optimization.
Also corrects the comment, because Magit resolves `magit-git-executable`
on Windows and MacOS already, so we only need this for Linux (where the
benefit is minimal).
Revert: d23abed66d
If you invoke a file search command (`SPC s p`) with an active
selection, that selection will be used as your initial query. However,
some characters (like #, %, @, !, etc) have a special meaning as a
separator for async sub-searches, and must be escaped to be treated as
literal text. This used to work, until the
`consult-async-split-styles-alist` spec changed at some point.
If operating on files that aren't in a project, marginalia suffers two
potentially expensive `projectile-project-root` calls per
file/directory. This reduces it to one.
These groups' parents are their source (aka the module library they
belong to). They will be:
- doomemacs/core = doom
- doomemacs/modules = doom+
- doomemacs/modules-contrib = doom++
And this module belongs to doom+.
Rewrites link handlers and keybind to use the new org-link-preview
backend.
Fix: #8164Close: #8707
Co-authored-by: andrewpeck <andrewpeck@users.noreply.github.com>
- Renames `+emacs-lisp-eval-working-buffer` to
`+emacs-lisp-working-buffer`.
- `+emacs-lisp/change-working-buffer`: Expand to accept the prefix arg,
the ability to unset the current working buffer, and only set the
working buffer buffer-locally.
tree-sitter-verilog has unfortunately not been maintained for years.
Gonzalo maintains tree-sitter-systemverilog which boasts
- Full implementation of the latest SystemVerilog standard (IEEE 1800-2023)
- Robust and reliable: sv-tests results
- Actively maintained
- Implements node fields
- Supports parsing of code snippets (e.g., always block outside of a module)
- Basic preprocessing capabilities
- Thoroughly tested (~3000 tests) including:
verilog is strictly a subset of systemverilog so the systemverilog
grammar is backwards compatible with verilog features.
tree-sitter-verilog has significant issues and fails parsing many basic
verilog files.
I use tree-sitter-systemverilog daily and have had no issues since switching.
Now, +eval/send-region-to-repl or +eval:region/+eval:buffer will
communicate with the REPL via nodejs-repl's API, instead of feeding the
selection to the REPL line-by-line (the fallback method).
Inexplicably, the built-in git on MacOS is many orders of magnitude
faster than the external builds provided by Homebrew/Macports, so use
that there. Emacs on MacOS needs all the (performance) help it can get
and, fortunately, the bundled git is 2.23 or newer on (at least) MacOS
10.15 (Catalina) and newer, so this should be a relatively safe bet
without the need for version checks.
Prevent `get-register`s advice from affecting the `get-register` call in
`evil-get-register` in `+evil--use-evil-registers-a`.
Ref: #8698Fix: #8699
Amend: 88e2a0d5de
It's too easy for `package--initialized` to be set accidentally (if the
user loads straight or uses Doom's package API, which inevitably calls
doom-initialize-packages). Instead, package--activated is a better
heuristic because users who *want* package.el will call package-install
without suppressing activation.
Amend: eccde78741
- Resolves `magit-git-executable` ahead of time. We used to do this, but
back then, magit used `magit-git-executable` in TRAMP sessions too.
Now, magit has a separate `magit-remote-git-executable` variable.
- Only invalidate projectile cache if the magit status buffer's contents
has changed. This will prevent excessive (and potentially expensive)
`projectile-invalidate-cache` calls for trivial changes, l
- Avoid changing the active buffer when fetching a specific variable
from a buffer is enough (more cpu/mem efficient).
- Don't adjust the fringe if the fringes are already the requested size.
Some major modes may only have a flymake checker (like beancount-mode),
and since flymake is built into Emacs, it's possible the user may
encounter `flymake-mode` even when they haven't enabled +flymake for
this module, so at least load its flymake config.
- Makes {next,previous}-error search the current-buffer before looking
for others (#1908, #2497).
- Makes {next,previous}-error recognize flymake errors.
Fix: #2497Fix: #1908
Doom is configured to ignore :ensure in `use-package`, unless the user
has manually called `(package-initialize)` -- in which case, we assume
the user genuinely *wants* to use package.el, or some reason.
This is because Emacs can't differentiate between C-i and TAB. Doom
creates a special input event for <C-i> to distinguish them (which only
works in GUI Emacs), so I moved this keybind there.
Fix: doomemacs/community#79
Some were outdated, some were incorrectly labeled, others were already
completed, some were missing... Gotta fix them all.
Also, in :ui hl-todo, there are comments that describe how Doom uses
each of these annotations; those have been updated.
Makes `envrc-reload`, `envrc-reload-all`, `envrc-allow`, or `envrc-deny`
restart any running lsp/eglot clients within the current direnv, so that
they reflect the new environment.