Commit graph

19480 commits

Author SHA1 Message Date
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
Henrik Lissner
5880348a6c
perf(cli): doomscript: reduce init time
In 4989661, I reduced the init time for bin/doom by eliminating the
extra `emacs` call in its shebang. This does the same for
bin/doomscript.

Ref: 498966179f
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
9bd9d55354
fix(lib): define doom-context-error 2024-09-11 19:46:15 -04:00
Henrik Lissner
3256fc7fca
fix: trigger defcustom setters in files opened from command-line 2024-09-11 19:46:15 -04:00
Henrik Lissner
de6a077669
fix: early-init.el: don't suppress legit file errors
The NOERROR argument on `load` no only suppress file-missing errors, but
file permission errors, so I avoided it. However, if any
`require` *inside* `doom.el` throws `file-missing`, this bootstrapper
will assume this means we're loading a non-Doom config.
2024-09-11 19:46:15 -04:00
Henrik Lissner
19d68887b1
refactor: remove redundant auto-mode-alist entries
I moved these into lisp/init.el in e02d3c7, but didn't remove the old
forms (though they weren't doing anything, anyway).

Amend: e02d3c79a9
2024-09-11 19:46:15 -04:00
Henrik Lissner
70bfb9f0e9
docs: letf!: add demo & rewrite docstring 2024-09-11 19:46:15 -04:00
Henrik Lissner
a974210605
refactor(lib): letf!: use define-advice & split defun/defun* 2024-09-11 19:46:15 -04:00
Henrik Lissner
4ca5819532
fix(lib): file!: lower current-load-list priority
Also changes it to consider base buffer's filename (for `eval`
contexts).
2024-09-11 19:46:15 -04:00
Henrik Lissner
f8f2b28580
feat: add doom-log-level
Gives doom-log that capability of indicating log levels for its
messages, so that I can later work of reducing excessive logging in
`doom-debug-mode`.
2024-09-11 19:46:15 -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
Henrik Lissner
6d7a39c482
tweak: load site-lisp verbosely in debug mode 2024-09-11 19:46:14 -04:00
Henrik Lissner
546e56f1fa
fix: suppress visual startup optimizations in debug mode
Also interferes with doom/sandbox's launch targets.
2024-09-11 19:46:14 -04:00
Henrik Lissner
a8515034de
refactor: rename childframe predicate function
- The name reflected the opposite of what it detected.
- It should be treated as an internal (not public) function.
2024-09-11 19:46:14 -04:00
Henrik Lissner
240493ae92
fix: face-* calls crashing new emacsclient frames
Those `face-*` calls sometimes returned nil, causing new frames spawned
from emacsclient to quietly crash sometimes. By instead relying on
`frame-inherited-parameters` we achieve the same but more stable result.

Amend: 9753bfb775
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
Henrik Lissner
5a4aa916bc
fix: adding newly created project to known-projects
Fix: #7413
2024-09-11 03:50:57 -04:00
Henrik Lissner
29c661aa3e
fix(cli): doom: improve shebang portability
Amend: 498966179f
2024-09-11 03:50:44 -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
a022e55c08
fix(lib): doom/sandbox: vanilla-doom+ target
Between this and 60083a2, doom/sandbox is now fully functional (this is
a stopgap fix until v3.0).

Ref: 60083a2626
Fix: #5845
Fix: #6505
Fix: #7486
2024-09-10 17:56:35 -04:00
Henrik Lissner
60083a2626
fix(lib): doom/sandbox
Fixes all the launch paths *except* for `vanilla-doom+` (Doom core +
modules - private config), which needs some work from v3 to properly
fix.
2024-09-10 17:26:54 -04:00
Henrik Lissner
86b7bef512
fix: type error if default returns nil :foreground/:background
Ref: #8059
2024-09-10 17:20:16 -04: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
e02d3c79a9
feat: backport safe-local-variable-directories from Emacs 30 2024-09-10 04:18:39 -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
08abc7d698
refactor(cli): doom.ps1: simplify
Also ensures envvars persist into the after-script, and are cleared at
the correct time (and only once).
2024-09-10 00:06:17 -04:00
Henrik Lissner
498966179f
perf(cli): doom: reduce init time
Even `emacs --batch -f kill-emacs` can take a non-trivial amount of time
to start up (0.661s on my system). This makes the two `emacs` calls in
bin/doom's shebang amount to >1s of startup time for Doom scripts (~1.5s
on my system). This change removes the second call (or at least defers
it until the after-script; at least, if $TMPDIR or $TEMP aren't set),
bringing down that time to a more bearable 0.9s.

This sacrifices the more descriptive "Can't find Emacs in your $PATH"
error message should the user set their own $EMACS, but the alternative
bash error is good enough:

  $ EMACS=foo doom version
  /home/$USER/.config/emacs/bin/doom: line 12: foo: command not found

I'm not doing more sophisticated checks on $EMACS, because it could be a
command (like `flatpak run org.gnu.emacs`), rather than an executable or
path, and the boilerplate to handle that, within what small space we get
in bin/doom's shebang, would be too much maintenance headache just for a
slightly better error message.
2024-09-10 00:06:03 -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
Henrik Lissner
cc8cf810f5
tweak(cc): prioritize clangd over ccls
lsp-clangd's default priority is -1.

Fix: #2689
2024-09-09 16:10:34 -04:00