Commit graph

12584 commits

Author SHA1 Message Date
Henrik Lissner
0b2ccac007
fix(emacs-lisp): lookup docs backend w/o helpful
Use `helpful-symbol` if it's present and the symbol at point doesn't
represent a cl-type (falling back to `describe-symbol` otherwise).

Fix: #8068
2024-09-17 05:57:33 -04:00
Henrik Lissner
22d5e3059f
feat(emacs-lisp): extend config to lisp-{data,interaction}-mode
So these modes (and particularly .doom* dotfiles and .dir-locals.el) can
benefit from smarter syntax highlighting and integration with other
modules.
2024-09-17 05:56:44 -04:00
Henrik Lissner
037b018cdd
feat: add .doommodule files
These optional dotfiles indicate the root of a module or module
group (:lang), and will later contain module metadata. They will also
serve as an alternative to packages.el and doctor.el, and will aide the
parts of the v3.0 module API concerned with resolving the current module
from a path (`doom-module-from-path`), which currently rely too heavily
on parsing path strings.

For now, however, they're simply placeholders.
2024-09-14 20:47:39 -04:00
Henrik Lissner
7ec570fdf5
fix(format): clang-format: respect c-basic-offset
In the absence of a .clang-format file, imposing the value of
`c-basic-offset` onto clang-format seems like reasonable, default
behavior. Like all other cases, this can be disabled by unsetting
`apheleia-formatters-respect-indent-level` globally or mode-locally with
`setq-hook!` or similar.
2024-09-14 20:46:49 -04:00
Henrik Lissner
d633c15042
perf(cc): lsp-clangd: halve core count for indexing
Ref: cec81ac2cc
2024-09-14 16:08:43 -04:00
45mg
2e5307e425 fix(emacs-lisp): always try Helpful for doc lookup
As per the description in 6671adc68, this module should always use
Helpful's functions as long as Helpful is available (ie. not explicitly
disabled by the user in packages.el). The remapping of `describe-symbol`
is irrelevant here - the user might prefer to rebind `C-h C-o` to
`describe-symbol` (as `helpful-symbol` cannot look up types), but that
doesn't necessarily mean they want this module not to use it.
2024-09-14 13:08:00 -07:00
Ajai Nelson
c82e7d9ea2 fix(ligatures): avoid invalid prettify-symbols-alist
Otherwise, `prettify-symbols-alist` will be set to a list whose first
element is the mode name, a symbol. That makes `prettify-symbols-alist`
an invalid alist, so when `prettify-symbols-mode` is enabled, there's a
type error in `prettify-symbols--make-keywords`.

Amend: c07f359d64
2024-09-14 13:01:54 -07:00
Henrik Lissner
a78237cc01
fix(mu4e): org-msg: type error w/ prefix arg
Fix: #8073
2024-09-14 15:22:09 -04:00
Henrik Lissner
66a2972ebf
fix(lib): doom/set-indent-width on Emacs >=30
A built-in `editorconfig` package was added in Emacs 30, with a somewhat
different API from the other package of the same name.

Fix: #8072
2024-09-14 15:22:09 -04:00
Henrik Lissner
d34770407c
fix(emacs-lisp): unremap describe-symbol to helpful-symbol
The latter can't look up cl types. Rather than remap it globally, allow
folks to bind them separately.
2024-09-14 15:22:06 -04:00
45mg
b681504582 fix(fold): avoid Hideshow-not-supported error
Some modes are not supported by `hs-minor-mode`, but can still support
some of the `+fold/` commands. For example, `pdf-outline-minor-mode`
recognizes the same commands as `outline-minor-mode`, but
`hs-minor-mode` is not applicable. In cases like these, we shouldn't try
to enable `hs-minor-mode`, as this will produce an error that will
terminate the command.
2024-09-13 20:28:54 -07:00
Henrik Lissner
faeab956e5
fix(vertico): consult-register: make evil-aware
Since the module remaps evil-show-registers to consult-register, the
latter should be made aware of evil registers.

Fix: #6355
2024-09-13 23:07:14 -04:00
Henrik Lissner
07afef645a
tweak(company): company-idle-delay = 0.26
Bumped up from it's default of 0.2.
2024-09-13 23:07:14 -04:00
Henrik Lissner
f452677c55
docs(ligatures): revise docstrings 2024-09-13 23:07:14 -04:00
Henrik Lissner
c07f359d64
fix(ligatures): activate prettify-symbols-mode conditionally
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
2024-09-13 23:07:14 -04:00
Henrik Lissner
59de0ec15e
perf(default): eagerly loading yasnippet at startup 2024-09-13 23:07:14 -04:00
Henrik Lissner
b9eb662334
feat(vertico): allow affixes to be escaped
So we can search for "modulep\!" without it triggering the ! dispatcher.
2024-09-13 23:07:14 -04:00
Henrik Lissner
d735c9be3d
fix(graphviz): don't eagerly load flycheck at startup
Due to eager expansion of the flycheck-define-checker macro. Causes a
hefty delay in startup times.
2024-09-13 23:07:13 -04:00
Sau P
73460f42fd fix(dired): require needed for `dirvish-side'
This prevents getting load errors when calling the command
`+dired/dirvish-side-and-follow' before `dirvish' has been
loaded.
2024-09-12 13:12:24 -07:00
Henrik Lissner
be422c4516
fix(graphviz): org babel integration
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
2024-09-12 03:54:36 -04:00
Henrik Lissner
37dbc99778
fix(fold): truncate-string-to-width: type errors
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: 9a6bcc31f9
Fix: #8044
2024-09-11 20:41:13 -04:00
Henrik Lissner
bd14095516
fix(ligatures): lisp modes disobeying null +ligatures-extra-symbols
Fix: #7440
2024-09-11 19:46:16 -04:00
Henrik Lissner
b853c4106a
fix(default): SPC g r: revert without prompting to save
Will save-then-revert now, instead of first prompting to save a modified
buffer before reverting.
2024-09-11 19:46:16 -04:00
Ag Ibragimov
f27a85ed35
module: add :emacs eww
Close: #6866
Co-authored-by: hlissner <hlissner@users.noreply.github.com>
2024-09-11 19:46:16 -04:00
Henrik Lissner
1dc606bb27
fix(file-templates): __doom-readme: use doom-modules-version 2024-09-11 19:46:16 -04:00
Henrik Lissner
771fccc52b
nit: minor reformatting & revision
Also corrects the version string of obsolete variable `+mu4e-backend`.
2024-09-11 19:46:14 -04:00
Sorawee Porncharoenwase
1baebdafb3
feat(racket): add +hash-lang
`racket-mode` recently added `racket-hash-lang-mode` as an alternative
major mode.

Close: #7543
Co-authored-by: hlissner <hlissner@users.noreply.github.com>
2024-09-11 19:46:14 -04:00
Henrik Lissner
f6b7e8ae48
module: add :lang graphviz
Close: #7546
Co-authored-by: nbfalcon <nbfalcon@users.noreply.github.com>
Co-authored-by: peterhoeg <peterhoeg@users.noreply.github.com>
2024-09-11 19:45:36 -04:00
Otávio Schwanck dos Santos
fc35b3cf37
feat(ruby): add rails-{routes,i18n} & ruby-json-to-hash
Close: #5821
2024-09-11 04:33:36 -04:00
Henrik Lissner
5ad99220b8
fix(ligatures): no prettify-symbols-mode w/o +extra
Also removes unused variables and functions, and obsoletes
`+ligatures-in-modes`, since it is no longer used.

Fix: #7440
2024-09-11 03:50:57 -04:00
Nguyen Thai
30988a9720
fix(lsp): lsp-terraform removal condition
Amend: d4357c173a
Ref: #7713
2024-09-11 00:29:34 -04:00
Henrik Lissner
88a3961489
fix(company): company-backends not set in some buffers
Any buffers opened before company-mode was loaded would not have
`company-backends` initialized in them.

Fix: #6261
Fix: #6180
Fix: #5896
Fix: #5672
Fix: #2015
2024-09-10 23:34:20 -04:00
Henrik Lissner
40d67ab573
fix(spell): fail gracefully on missing ispell-program-name
Instead of stopping things dead with a hard error, emit a more readable
warning, instead.
2024-09-10 21:52:51 -04:00
Henrik Lissner
fcf8b0f8a1
fix(mu4e): treat *mu4e-main* as real 2024-09-10 20:38:01 -04:00
Henrik Lissner
28d0d4c2e9
fix(indent-guides): bars on blank lines breaking line motions
Ref: jdtsmith/indent-bars#22
2024-09-10 20:37:16 -04:00
Ajai Nelson
4790db6448 fix(dired): typo in command name
`<leader> o p` is bound to `+dired/dirvish-side-and-follow`, but the
command was previously called `+dired/dirvish-side-or-follow` instead.
2024-09-10 15:27:18 -07:00
Henrik Lissner
e6514cdf47
docs(idris): +lsp and idris2 compatibility
Close: #7229
2024-09-10 17:16:29 -04:00
Henrik Lissner
08f5eef3ce
fix(idris): add ".ibc" to completion-ignored-extensions 2024-09-10 17:05:29 -04:00
Henrik Lissner
75763ae786
feat(idris): add flycheck support 2024-09-10 17:05:19 -04:00
Henrik Lissner
0ee89cbb5c
tweak(idris): add popup rules 2024-09-10 17:04:20 -04:00
Henrik Lissner
ad5e3dcce8
fix(emacs-lisp): byte-compiling missing function
This wasn't causing any errors, but `+emacs-lisp-truncate-pin` was
removed in 639fcc6.

Amend: 639fcc6a2e
2024-09-10 03:35:27 -04:00
Henrik Lissner
dd5ae257f1
nit(indent-guides): reformat config.el & proofread comments 2024-09-10 02:26:50 -04:00
Henrik Lissner
98e28d801e
fix(indent-guides): don't activate in noninteractive sessions
Such as when `doom doctor` loads Doom.

Fix: #8058
2024-09-09 20:18:13 -04:00
Henrik Lissner
b03e78918b
bump: org-contacts ob-php
https://repo.or.cz/org-contacts.git@f0a430442b2a -> doomelpa/org-contacts@f0a430442b
https://repo.or.cz/ob-php.git@6ebf7799e9de -> doomelpa/org-contacts@6ebf7799e9

Moved these packages to a more stable host.
2024-09-09 20:15:43 -04:00
Henrik Lissner
9d172f8c25
feat(default): bind '<leader> o /' to dirvish
Use the prefix arg to prompt for a directory first.
2024-09-09 18:53:57 -04:00
Henrik Lissner
47c8c905b8
feat(dired): open dirvish sidebar w/ '<leader> o {p,P}'
A new alternative to neotree and treemacs.
2024-09-09 18:52:45 -04:00
Henrik Lissner
07eae64509
refactor(vc): move git-commit to magit module
`git-commit` is no longer distributed with `magit` and no longer
declares its dependencies, causing "file missing: with-editor" and
similar errors for folks who don't have magit installed. Also, VC's
commit workflows don't utilize the mode, so there's no reason to keep it
in this module.

Ref: magit/magit@c170fcf399
Ref: #8003
2024-09-09 18:08:28 -04:00
Henrik Lissner
bbb2cc1cb3
fix(indent-guides): disable indent-bars in tree-sitter-mode
A temporary measure, until the tree-sitter module has adopted treesit,
which indent-bars has support for.
2024-09-09 17:24:45 -04:00
Henrik Lissner
005831bfcc
refactor(lsp): let lsp-mode load lsp client packages
Most of these lsp packages are already in `lsp-client-packages`, which
lsp-mode will eagerly load the first time `lsp-mode` is activated, so we
don't need to do it ourselves, except in cases where the package isn't
in `lsp-client-packages` (like lsp-julia).
2024-09-09 17:24:45 -04:00
Henrik Lissner
374c28cedd
refactor(cc): only bind ccls keys if ccls is present
Fix: #5597
2024-09-09 17:24:45 -04:00