Commit graph

5085 commits

Author SHA1 Message Date
Henrik Lissner
2c02cea461 feat: add EMACS29+ constant 2022-01-12 01:55:34 +01:00
Lele Gaifax
60cfb383ea fix: actually forward the `select' param to doom/bump-package-at-point
Also, rectify the docstring for `doom/bump-packages-in-buffer', that was
an exact replica of the actual workhorse, `doom/bump-package-at-point'.
2022-01-10 02:21:49 +01:00
Lele Gaifax
e5213f20e5 nit: fix several documentation typos 2022-01-10 02:21:49 +01:00
Henrik Lissner
c16f38ab1d fix(lib): sort bumpified modules list 2022-01-08 18:55:02 +01:00
Henrik Lissner
dde20aa8fd feat(lib): add doom-font-exists-p
For easier font detection in your config.

Ref: #5948
2022-01-03 18:34:01 +01:00
Henrik Lissner
2132d60062 dev(ci): permit short bump/revert commit messages 2021-12-13 18:48:59 +01:00
Henrik Lissner
5535457229 bump: :core
Fuco1/smartparens@2834c66c4f -> Fuco1/smartparens@f59a40d54f
bbatsov/projectile@7f64570d3e -> bbatsov/projectile@2bb7ec28b1
domtronn/all-the-icons.el@c0d288a41f -> domtronn/all-the-icons.el@483dba65e8
gilbertw1/better-jumper@7f328a886b -> gilbertw1/better-jumper@3148a17b59
noctuid/general.el@26f1d4c4e2 -> noctuid/general.el@9651024e7f
raxod502/straight.el@f81d9b755f -> raxod502/straight.el@92d4153362

Fix: #5785
Close: #5881
Co-authored-by: Quang Luong <quangIO@users.noreply.github.com>
2021-12-12 22:43:40 +01:00
Henrik Lissner
eefa0ec0aa fix: global whitespace-mode never activating
Fix: #5856
Fix: #5854
2021-12-02 04:13:15 +01:00
Henrik Lissner
725c5c53a6 tweak: wrap lines in helpful buffers 2021-11-25 01:22:58 +01:00
Henrik Lissner
9dad26961a fix: envvar file loader processing TZ incorrectly
setenv treats the TZ (and only TZ) envvar especially, so we have to too,
since I'm intentionally avoiding iteratively setenv'ing envvars to avoid
the unnecessary extra work it does.

Fix: #5760
2021-11-24 21:18:39 +01:00
Clément Guidi
3e5f9a1ba1 fix: remap xref-go-* to better-jumper
Emacs 29.x introduces xref-go-{back,forward}. xref-pop-marker-stack is
now obsolete.

Fix: #5813
Signed-off-by: Clément Guidi <clementguidi@gmail.com>
2021-11-23 02:31:00 +01:00
Henrik Lissner
9634500a3b fix(cli): update recipe repos (MELPA/ELPA/etc) earlier
If done before we collect our recipe lists, we (hopefully) dodge some
stale-recipe race conditions.
2021-11-22 16:49:43 +01:00
Henrik Lissner
fe2af3c344 fix(cli): don't regraft repo if no repo given
Otherwise you'll regraft $EMACSDIR, which could result in lost data for
contributors.
2021-11-22 16:49:17 +01:00
Henrik Lissner
cc3be7cb44 refactor: simplify native-comp detection
Reduce cases where native-comp procedures were executed in
non-native-comp contexts (somehow).

Also:
- Adds a NATIVECOMP constant for statically detecting the feature.
- Remove native-comp-* -> comp-* aliases (Emacs HEAD has long since
  moved on from these).
- Add 'no-native-compile: t' to autoloads file.
2021-11-22 16:01:02 +01:00
Gerry Agbobada
8d360474ac
docs: add doctor for dev versions of Emacs
The message simply test for the "not-a-version-yet" patch number and
displays an explanation to prepare users for raised error frequency and
having a backup version of Emacs if they do not want to deal with
issues.
2021-11-20 18:32:59 +01:00
Henrik Lissner
3a669d8daa fix(lib): add-hook! fails when passed a quoted list
Fix: #5779
2021-11-20 00:55:24 +01:00
Daanturo
d67060eda4 fix: use advise-add instead of fset to override yes-or-no-p
So that reverting it becomes easier.
2021-11-18 19:09:09 +01:00
Henrik Lissner
06f1e24eda fix: renamed doom-inhibit-local-var-hooks
This rename was premature; it snuck into 68d8364.

Amend: 68d8364aea
Close: #5755
2021-11-17 23:19:10 +01:00
Daanturo
b4cc1c84d8
fix: wrong-number-of-args error on dtrt-indent-mode
doom--fix-broken-smie-modes-a forces dtrt-indent-mode to expect exactly
one argument so an error will be raised when the latter is turned on
without args programmatically in lisp.
2021-11-07 01:53:17 +01:00
Henrik Lissner
bac7ccb970 dev(ci): minor refactor & reformatting 2021-11-04 01:43:50 +01:00
Henrik Lissner
710eab10c7 dev(ci): suppress summary length warnings for bump/revert commits 2021-11-04 01:43:10 +01:00
Henrik Lissner
d6262dd287 dev(ci): check all module dirs for valid scopes
Will become relevant once Doom's modules have been moved to their own
repo.
2021-11-04 01:42:43 +01:00
Itai Y. Efrat
aa2f806b5b dev(ci): fix false negative in commit linter
The one value allowed per trailer check shouldn't apply to names since
they often have spaces.
2021-10-30 19:09:50 +03:00
Itai Y. Efrat
ea18315d08 dev(ci): allow periods in names in commit linter
For initials.
2021-10-30 17:51:28 +03:00
Henrik Lissner
2eaa508121 dev(ci): fix false positive invalid trailers 2021-10-28 14:32:36 +02:00
Henrik Lissner
481646ca18 nit: update doom--write-to-sane-paths-a docstring
To properly reflect what it actually does, not what a long-since-changed
implementation did.
2021-10-28 14:32:36 +02:00
Henrik Lissner
b0438f1589 fix: wrong-type-arg error on startup
Regression caused by change to doom-enlist in b35b32273.

Amend: b35b32273a
2021-10-20 22:06:25 +02:00
Henrik Lissner
e4aecd1a5a dev(ci): refactor & update commit linter
This generalizes and cleans up the linter API so that it can be used in
other Doom projects (or CLI commands, like our WIP changelog generator).

Besides that, our git's commit conventions saw two changes:
- A new 'Amend' keyword, for indicating a commit corrects an earlier,
  recent one. This should be used to omit (or merge) commits in the eyes
  of the changelog generator.
- Trailers must now follow the 'KEY: VALUE' format, which is supported
  OOTB by 'git interpret-trailers' and makes scraping them much eacher.
  Before, omitting the colon was mandatory, this is no longer the case.

Other highlights:
- For linter rules: replaced :footer and :refs keys with :trailers (a
  string->string alist). Invalid trailers will be left in BODY's tail.
- Added a linter for colon delimiters in commit trailers (along with
  other formatting checks, like capitalization and one-per-line checks).
2021-10-20 21:37:09 +02:00
Henrik Lissner
b35b32273a fix(lib): doom-enlist not wrapping cons cells
While lists are technically cons cells, cons cells don't have all the
properties of lists, so doom-enlist shouldn't treat it as one.

Before:

  (doom-enlist '(a . b))   #=> (a . b)

After:

  (doom-enlist '(a . b))   #=> ((a . b))
2021-10-20 20:18:39 +02:00
Henrik Lissner
8f040b79be fix(lib): fn! error when arglist is a cons cell
Throws a wrong-type-argument error when fn! is given a cons cell in its
arguments, e.g.

  (fn! ((x . y)) ...)
2021-10-19 22:29:08 +02:00
Henrik Lissner
6bd7ec7579 dev(ci): generalize commit parser
These will be useful for our various CI facilities later. E.g. our
conventional changelog generator and package bumper CI/CD.
2021-10-18 12:09:42 +02:00
Henrik Lissner
4d20fc65cd bump: :core
bbatsov/projectile@17c152b062 -> bbatsov/projectile@7f64570d3e
hlissner/ws-butler@2bb49d3ee7 -> hlissner/ws-butler@572a10c11b
noctuid/general.el@a0b17d207b -> noctuid/general.el@26f1d4c4e2
raxod502/straight.el@45eb6112b2 -> raxod502/straight.el@f81d9b755f

Fix #5619
2021-10-18 01:15:54 +02:00
Henrik Lissner
1a86b0fc0f fix(cli): deploy git hooks to correct directory
'doom install' now consults git to find the hooks directory, which will
work for users who have Doom as a submodule (#5632).

Fix #5632
2021-10-18 01:15:54 +02:00
Henrik Lissner
ff854157a6 fix(lib): package URL in documentation
Fixes [[doom-package:*]] links in (future) docs and always displays a
homepage URL in 'SPC h p' (or 'C-h p') package docs.
2021-10-18 01:15:54 +02:00
Henrik Lissner
0112319c04 fix(lib): add &allow-other-keys in fn! sub-arglists
Before this fix:

  (fn! (x &key y z))
  ;; implies
  (fn! (&key x &allow-other-keys)).

But

  (fn! (x (&key y) &key z))
  ;; would not imply
  (fn! (x (&key y &allow-other-keys) &key z &allow-other-keys)).
2021-10-18 01:15:54 +02:00
Henrik Lissner
db09cb001f perf: inhibit redisplay when loading modules
Some packages my force a redraw for no good reason.
2021-10-18 01:15:54 +02:00
Henrik Lissner
b36d798f74 fix: restore auth-sources default
This was accidentally removed in 68d8364.

Ref 68d8364aea
Fix #5628
2021-10-18 01:15:09 +02:00
Henrik Lissner
a33865569e fix: premature deprecation of *-local-vars-hook
68d8364ae added a deprecation notice to any use of a
MODE-local-vars-hook, instructing users to use after-MODE-hook instead,
however this hasn't been decided yet and shouldn't have made it into
68d8364ae.

Ref 68d8364aea
Fix #5612
2021-10-11 20:25:18 +02:00
Henrik Lissner
ade96ed515 docs(lib): clarify type of add-hook!'s first arg 2021-10-11 20:25:18 +02:00
Henrik Lissner
b47440010f docs: add EMACSDIR == DOOMDIR doctor check 2021-10-11 20:25:15 +02:00
Henrik Lissner
4eeb3c7a19 fix: wrong-number-of-args error on font init
set-frame-font's fourth argument was introduced in 28 and shouldn't be
used yet.

Fix 2614df72bd
2021-10-10 21:40:53 +02:00
Henrik Lissner
114841bfd2 refactor: defer UI init a little longer at startup
Fixes a regression introduced in 0bb4d4dfc, which changed how
doom-switch-buffer-hook works, but makes it fire too early during
startup, eagerly loading packages that wait for the first interactively
opened buffer. This moves doom-init-ui-h to
window-buffer-change-functions, which fires once at the end of startup,
when any buffer is displayed for the first time in the session.

Ref 0bb4d4dfcb
2021-10-10 18:58:32 +02:00
Henrik Lissner
0bb4d4dfcb refactor: switch buffer/frame/window hooks
Emacs 27 introduced a bunch of `window-*-change-functions` hooks,
including `window-selection-change-functions` and
`window-buffer-change-functions`, which handles 98% of the use case for
Doom's `doom-switch-{buffer,window,frame}-hook` hooks, so I've rewritten
them to use them under the hood, which amounts to simpler code and fewer
hacks.
2021-10-10 18:36:46 +02:00
Henrik Lissner
2614df72bd refactor: font, theme, & UI init
Use the new server-after-make-frame-hook, introduced in Emacs 27.1, to
clean up how we initialize fonts, themes, and the UI in general.

This may indirectly fix font issues in daemon sessions.
2021-10-10 18:36:46 +02:00
Henrik Lissner
3bcee249d3 fix: side-effects unset backup-directory-alist 2021-10-10 18:36:46 +02:00
Henrik Lissner
f5c1332a31 refactor: minor refactors & nit picks across core 2021-10-10 18:36:46 +02:00
Henrik Lissner
432ca05c4f tweak(cli): improve backtrace formatting 2021-10-10 18:36:46 +02:00
Henrik Lissner
3854c2fd70 dev(ci): deploy git hooks on 'doom install' 2021-10-10 18:36:46 +02:00
Henrik Lissner
3831096cfb fix(lib): doom-package-depend{ing-on,encies}
Doom doesn't use these two functions, but since they can be useful for
debugging *and* straight provides impleemntations for them already,
they're trivial to fix.
2021-10-10 18:36:46 +02:00
Henrik Lissner
281ee1d27b feat(lib): add doom/remove-recent-file
To interactively remove a file from your recentf list. (Perhaps similar
could be added to embark for consult-recent-files?)
2021-10-10 18:36:46 +02:00