Commit Graph

17518 Commits

Author SHA1 Message Date
283e279dce bump: :lang org
alf/ob-restclient.el@586f1fa07f -> alf/ob-restclient.el@3ac834b02b
awth13/org-appear@8dd1e56415 -> awth13/org-appear@60ba267c5d
emacs-straight/org-mode@e9da29b6fa -> emacs-straight/org-mode@5a49cc5f4f
emacsmirror/org-contrib@c1e0980fd7 -> emacsmirror/org-contrib@39e2abc562
emacsorphanage/ox-pandoc@0a35d0fbfa -> emacsorphanage/ox-pandoc@f8eac5e569
kaushalmodi/ox-hugo@85d11219a5 -> kaushalmodi/ox-hugo@97ff24fe0b
oer/org-re-reveal@93ba4e91f1 -> oer/org-re-reveal@f184e66e39
org-roam/org-roam@171a8db32f -> org-roam/org-roam@e435581215
2022-08-03 03:09:27 +02:00
b777300e2c tweak(org): move org caches to {doom-cache-dir}/org/
Instead of separate {doom-cache-dir/org-*/ directories.
2022-08-03 03:09:26 +02:00
lq
8fc2d67eb9 tweak(latex): ask Skim.app to reload pdf 2022-08-02 20:42:39 +02:00
16af1dee6e fix(rust): enable rainbow-delimiters-mode in rustic-mode 2022-08-02 20:39:18 +02:00
5974543732 feat(vc): add next conflict in project to +vc/smerge-hydra
new hydra head:
"n" (progn (smerge-vc-next-conflict)
(recenter-top-bottom (/ (window-height) 8)))

Allow us to jump to the next merge conflict in current project without
leaving the hydra and/or opening magit.
2022-08-02 20:38:04 +02:00
90c510caca refactor(evil): remove evil-want-C-w-scroll
This appears to have been added accidentally in the following commit:
8b9d4a94bb

The codebase contains no references to it.
2022-08-02 20:36:59 +02:00
3a5e34d67b fix: premature doom init in doom sub-profiles
Ensures that Doom doesn't prematurely initialize itself if a non-Doom
config tries to load Doom.
2022-08-02 20:22:31 +02:00
2d53fe6123 refactor: resolve doom-core-dir relative to source file
Instead of relative to doom-emacs-dir, which may or may not be where
this core lives (made more of a possibility once core has a repo to
itself).
2022-08-02 20:19:03 +02:00
58992a1885 dev: use maintainers team in global codeowners rule 2022-08-02 20:17:35 +02:00
2bb052ac17 tweak(lib): fix doomemacs URLs in help commands 2022-08-02 20:15:29 +02:00
d3f2b4d9ca docs(cli): fix issue tracker URL in 'doom help' 2022-08-01 22:36:33 +02:00
4ee7f0113e fix(cli): show straight logs after straight error
Instead of displaying an unhelpful backtrace about failed git commands,
show the tail of the *straight-process* buffer.
2022-07-31 23:44:10 +02:00
61d7200e64 revert: compat
emacs-straight/compat@2a9cf8b7bd -> emacs-straight/compat@cc1924fd8b

Fix: #6583
Amend: dd34802523
2022-07-31 17:44:08 +02:00
dd34802523 revert: compat
emacs-straight/compat@2a9cf8b7bd -> emacs-straight/compat@cc1924fd8b

compat is a dependency of magit and doom-modeline (among other
packages), but a recent bug on compat@2a9cf8b caused #6583, so I am
pinning it to a stable commit. It's not common that Doom pins 2nd/3rd
order dependencies, but I will consider doing that more going forward.

Pinning them across multiple modules isn't elegant, but a better
solution is in the works as part of #4273.

Fix: #6583
Ref: #4273
2022-07-31 16:56:14 +02:00
614a54b036 fix(literate): Doom core load paths
The file structure of the project was changed in b9933e6. This updates
the :config literate module to reflect that.

Amend: b9933e6637
2022-07-31 13:52:20 +02:00
55736ac2a6 fix(lib): prevent autoload failure at startup
In some edge cases, an early call to doom-log will cause an autoload
error because of one or more of the following is true:

- The autoloads file hasn't been generated or loaded,
- The autoloads file is out of date (especially relevant after
  b9933e6),
- doom-cli hasn't loaded lib/files eagerly yet.

To avoid this, and due to how prolific doom-log's uses are, and how
trivial the dependency is, I simply remove the dependency.

Amend: b9933e6637
2022-07-31 13:31:21 +02:00
615848e3a7 fix(cli): more future resistant 'doom upgrade'
In the future, should doom-core-dir or {doom-core-dir}/packages.el
change, 'doom upgrade' won't leave the repo in a broken state.
Unfortunately, this cannot retroactively prevent the issue; users will
experience this as soon as they update to b9933e6 or beyond, so users
will have to upgrade manually to overcome it:

  cd ~/.emacs.d
  git reset --hard 35a89bdfa6
  git pull origin master
  doom sync -u

Fix: #6598
Amend: b9933e6637
2022-07-31 00:58:36 +02:00
29dc2fed29 refactor(cli): use sh! instead of doom-call-process 2022-07-31 00:27:05 +02:00
b9933e6637 refactor!: restructure Doom core
BREAKING CHANGE: This restructures the project in preparation for Doom
to be split into two repos. Users that have reconfigured Doom's CLI
stand a good chance of seeing breakage, especially if they've referred
to any core-* feature, e.g.

  (after! core-cli-ci ...)

To fix it, simply s/core-/doom-/, i.e.

  (after! doom-cli-ci ...)

What this commit specifically changes is:
- Renames all core features from core-* to doom-*
- Moves core/core-* -> lisp/doom-*
- Moves core/autoloads/* -> lisp/lib/*
- Moves core/templates -> templates/

Ref: #4273
2022-07-30 22:41:13 +02:00
a9866e37e4 feat(lib): add doom-theme-face-attribute function
For reading face attributes for inactive themes.
2022-07-30 22:41:13 +02:00
9ea6ea68b0 tweak(lib): show chemacs version in doom-info 2022-07-30 22:41:13 +02:00
510032bcb0 refactor(lib): s/doom--debug-/doom-debug-/
To uphold conventions introduced in 6c0b7e1.

Ref: 6c0b7e1530
2022-07-30 22:41:12 +02:00
964b7dcbee fix(cli): indentation & docstring highlights for defstub! 2022-07-30 22:41:12 +02:00
f8fb8b189d refactor(cli): remove unused synopsis examples
These can be included in their own EXAMPLES: section, and doesn't need
to be treated especially.
2022-07-30 22:41:12 +02:00
a79b2ec69e fix(cli): ensure order of subcommands in 'doom help'
They should be in insertion order. They were formerly in
reverse-insertion order.
2022-07-30 22:41:12 +02:00
a2d2206797 feat(cli): allow defcli! in ci.el
A project may provide a ci.el to config bin/doom's CI commands. With
this, users can also define their own 'doom ci' subcommands from there.
2022-07-30 22:40:27 +02:00
04a09128d4 nit(cli): stub 'doom test'
To prep for v3.1.
2022-07-30 22:23:12 +02:00
6ffee6ece7 fix(cli): ensure type specs are case insensitive 2022-07-29 12:34:58 +02:00
491f49cfe5 refactor(cli): better error for missing profiles.el
Only appears if a profile was requested and no profile file was found.
2022-07-29 12:32:35 +02:00
068966a4cd bump: :core
Fuco1/smartparens@ec15aaa748 -> Fuco1/smartparens@8b6a3c3b31
bbatsov/projectile@4d6da873ae -> bbatsov/projectile@dc6e7ff658
domtronn/all-the-icons.el@ca1ef30004 -> domtronn/all-the-icons.el@b18db6be0a
jscheid/dtrt-indent@57f4072fa8 -> jscheid/dtrt-indent@d4fd1b4977
jwiegley/use-package@a7422fb8ab -> jwiegley/use-package@0ad5d9d5d8
radian-software/straight.el@0e204d418d -> radian-software/straight.el@fed2153480
2022-07-29 12:31:44 +02:00
493a049dff tweak: disable tty optimization in debug mode
If an error occurs before tty-run-terminal-initialization
does (producing a backtrace window), it can leave Emacs in a garbled,
unreadable state.
2022-07-29 12:24:25 +02:00
7a9f8b18ab refactor: resolve doom-{core,modules}-dir properly
Future proofing for changes in doom-emacs-dir.
2022-07-29 12:23:42 +02:00
7d93feb98c nit: minor reformatting, comment revision, & sharpquoting 2022-07-29 12:22:33 +02:00
35a89bdfa6 fix(lib): missing bin/doom error on doom/reload
doom/reload quotes `doom-bin`, but if doom-bin uses a tilde instead of
an absolute path, the quoting means it won't be expanded to $HOME,
causing "no such file or directory" errors when trying to execute it.

Fix: #6603
2022-07-28 22:29:32 +02:00
a22cd75839 fix(cli): log benchmarks & postscripts to stderr
And only write benchmark to stdout if the command succeeded (exit code =
0) and isn't restarting (exit code = 254).
2022-07-28 22:29:32 +02:00
fe2ea9f443 fix(cli): redundant lines in stderr logs 2022-07-28 22:29:32 +02:00
20d5440023 fix(cli): don't persist options/args in context
They're overwritten anyway. And leftover state can cause confusion in
sub-sessions.
2022-07-28 22:29:18 +02:00
7eeec53c30 fix(cli): improve end-of-file error in profiles file
Otherwise, the error message complains that the error originates from
core-cli.el.
2022-07-28 18:15:15 +02:00
12b52909e3 fix(cli): env setter for profile loader
Amend: 48e3603dfe
2022-07-28 18:15:15 +02:00
743b740e79 fix(cli): verbose output in debug mode 2022-07-28 18:15:15 +02:00
314463bd49 fix(cli): ignored --{profile,doomdir,emacsdir,debug}
Fixes an edge case where --profile, --doomdir, --emacsdir, and --debug
were ignored if used in a nested bin/doom call. Now possible thanks to
49d3f1e.

Ref: 49d3f1e96c
2022-07-28 18:15:06 +02:00
49d3f1e96c feat(cli): accept omit list on (exit! :restart)
A list of arguments to omit can now be passed to (exit! :restart). For
example, `(exit! :restart "-c" :omit "--foo=" "--bar" "--baz=2")` will
restart the current script with a new switch (-c) and three switches
removed (--foo + one argument, --bar, --baz + two arguments).
2022-07-28 18:05:42 +02:00
22eace62d0 fix: doom-local-dir for profiles
- Ensure it ends in slash,
- Ensure it includes the @-tag (e.g. default@latest),
- Remove vestigial code path that is unreachable.
2022-07-28 12:40:32 +02:00
44f169740e tweak: more debug output at startup
Particularly to do with profiles, in case the user starts Emacs with
--debug or --debug-init.
2022-07-28 12:01:02 +02:00
48e3603dfe fix: envvars in profiles.el not being set 2022-07-28 12:01:02 +02:00
df8caf2867 nit(cli): revise header commentary
To properly reflect that it's unsafe to load core-cli in interactive
sessions, but safe to load core-cli-lib.
2022-07-28 12:01:02 +02:00
5af38fb08e feat: make bin/doom profile aware
- Fixes Doom's former inability to (trivially) juggle multiple profiles
  based on the same EMACSDIR (see #6593).
- Adds '--profile NAME' switch to bin/doom (also recognized
  $DOOMPROFILE).
- Adds new doom-profile* variables. These will eventually replace
  doom-{local,etc,cache}-dir and doom-{autoloads,env}-file.

This is intentionally messy to ensure backwards compatibility for a
little while longer. This will be fixed over the next couple weeks.

Ref: #6593
2022-07-28 12:01:02 +02:00
1ecb5c7b9b fix: fall back to $EMACSDIR/profiles/*
Formerly, profiles.el and $EMACSDIR/profiles/* were mutually exclusive.
I.e. if the file existed, it'd never check the directory. Now, it will
check the directory if the requested profile isn't in profiles.el, or
the file didn't exist.

Amend: 5b6b204bcb
2022-07-27 13:54:12 +02:00
4c4a880f6b docs: fix blockquote in profiles/README.org 2022-07-27 13:36:15 +02:00
8f96850543 nit: add dummy safe-mode profile
To reserve the name, and to signal to posterity how future (static)
profiles will look. Someday, this profile will play "failsafe" if Doom
fails to load the requested one.
2022-07-27 13:33:43 +02:00