Commit graph

17628 commits

Author SHA1 Message Date
Henrik Lissner
9b8ed397e8
feat!(cli): load project .doomrc instead of ci.el
BREAKING CHANGE: Before, 'doom ci' would load
$GIT_WORKING_TREE/.github/ci.el, to give users/projects an opportunity
to provide project-local configuration for bin/doom (mainly for CI/CD).
Now, this ci.el file is no longer loaded and instead, *all* bin/doom
sessions will walk up the file tree and load the first .doomrc it finds.

This gives bin/doom users a more general place configure all of its
commands, and not just 'doom ci' commands.

Extras:
- Adds .doomrc to auto-mode-alist (so that it starts in
  emacs-lisp-mode).
2022-08-07 19:43:28 +02:00
Henrik Lissner
422baedad7
refactor(cli): load cli libs from doom.el
This simplifies the entry point for loading Doom (and/or its CLI
framework).
2022-08-07 19:43:28 +02:00
Henrik Lissner
50f0cebe92
feat(cli): generalize 'doom make codeowners'
- Adds -o/--file option,
- If -o/--file is passed a dash, print codeowners to stdout,
- Adds --dryrun option,
- Will accept literal string entries in doom-make-codeowners as
  standalone lines (useful for comments).
2022-08-07 19:43:28 +02:00
Henrik Lissner
d92a81bf2d
feat(lib): add lib/git
Where future git wrappers will live.
2022-08-07 19:43:28 +02:00
Henrik Lissner
b7b2563f7b
feat(cli): add implicit date, time, duration, & size types 2022-08-07 19:43:28 +02:00
Henrik Lissner
790c2a6d84
fix(eval): eros overlay going off-screen
Evaluating code (and :tools (eval +overlay) enabled) will do one of two
things with the return value:

If long, it will be displayed in a popup window on the bottom of the
frame. If short (<3-4 lines), it will be displayed in an overlay at the
end of the line.

If you happened to have scrolled horizontally (such that the BOL isn't
visible), the overlay would be displayed offscreen and unreadable. Any
attempt to scroll it into view will cause it to disappear (as per its
transient nature). This fix pads each newline in said overlay such that
the overlay is pushed into view.
2022-08-07 19:43:27 +02:00
Henrik Lissner
e5acbd7c40
docs(cli): make file/dir/stdout type errors consistent 2022-08-07 19:43:27 +02:00
Henrik Lissner
d53e08767d
feat(cli): add stdout implicit arg type
CLIs can now use this for implicit validation for options that take a
file path or - to signal "print to stdout", like so:

  (defcli! (doom command) ((outfile ("--out" (file stdout))))
    (if (equal outfile "-")
        (print! "output")
      (with-temp-file outfile
        (insert "output"))))

If OUTFILE is not an existing file path or a -, you'll see an this
helpful error:

  Error: -o/--file received invalid value "FOO"

  Validation errors:
  - Must be a dash to signal stdout.
  - File does not exist.

  See 'doom h[elp] make codeowners' or 'doom make codeowners {-?,--help}' for documentation.
2022-08-07 19:43:27 +02:00
Henrik Lissner
26bc4ea150
feat(cli): allow multiple implicit types for options
Now you can specify more than one allowed (implicit) for a CLI option:

  (defcli! (doom somecommand) ((foo ("--foo" (file int)))))

This will test FOO to ensure it is either an existing file path or an
integer. If neither is true, you'll see this helpful error:

  Error: -o/--file received invalid value "FOO"

  Validation errors:
  - Not an integer.
  - Not a valid path to an existing file.
2022-08-07 19:43:27 +02:00
Henrik Lissner
057e6c531c
refactor: replace doom-enlist with ensure-list
doom-enlist is now a deprecated alias for ensure-list, which is built
into Emacs 28.1+ and is its drop-in replacement. We've already
backported it for 27.x users in doom-lib (in 4bf4978).

Ref: 4bf49785fd
2022-08-07 19:43:13 +02:00
Henrik Lissner
1abcf913aa
revert: fix(docs): set mode in file-local vars
emacs-straight/org-mode@e22b4eb7aa introduced a breaking change that
made it impossible to rely on .dir-locals.el to change org-mode buffers
in $EMACSDIR to doom-docs-org-mode (without infinite recursion), so we
used file-local variables in 7e400ab.

emacs-straight/org-mode@215de6176b reverted that change, so we can use
.dir-locals.el again, and this is my preference, since it requires less
boilerplate across our hundreds of org files.

Ref: emacs-straight/org-mode@215de6176b
Ref: emacs-straight/org-mode@e22b4eb7aa
Revert: 7e400abdc0
2022-08-07 19:08:07 +02:00
Henrik Lissner
53fb367aa7
docs(lsp): fix typo in quote & use correct icon
Amend: c34168fb2a
Co-authored-by: lelit <lelit@users.noreply.github.com>
2022-08-07 19:07:57 +02:00
Henrik Lissner
0ed2b95dba
refactor(cli): include envvars in _doomrun debug logs 2022-08-06 18:43:14 +02:00
Henrik Lissner
725de1ca35
perf(docs): disable gc for doom-docs-org-mode 2022-08-05 21:44:09 +02:00
Henrik Lissner
a71e757c8d
fix(org): create org-persist-directory recursively
`org-persist-write:index' does not recursively create
`org-persist-directory', causing `make-directory` to throw a
file-missing if a parent directory is missing.

Fix: #6635
Ref: bzg/org-mode@edd7f2962f
2022-08-05 18:13:48 +02:00
Henrik Lissner
433c9e344d
feat(lib): backport file-name-concat from 28.1
May replace doom-path in the future.
2022-08-05 17:35:46 +02:00
Henrik Lissner
bcca96a69a
refactor(literate): remove unused envvar __DOOMRESTART
Also remove the "Restarting..." message; it's an implementation detail
that isn't important to the end user.
2022-08-05 00:49:17 +02:00
Henrik Lissner
06db69bf76
fix(emacs-lisp): suppress popup warnings from flycheck
Typically caused by partial syntax errors in Doom Emacs (e.g. while
you're writing code in $EMACSDIR or $DOOMDIR, and haven't typed the
closing parenthesis yet).
2022-08-05 00:49:17 +02:00
Henrik Lissner
2254b8c561
fix(cli): doom-cli-context persistence
20d5440 introduced a regression where options would be lost when a CLI
session is restarted. :config literate users, for example, would run
'doom sync -u' only for the -u option to be ignored, because it was
discarded after the literate module restarts the session.

Amend: 20d5440023
2022-08-05 00:49:17 +02:00
Henrik Lissner
ba668f7cb0
fix(file-templates): indentation for licenses
And remove superfluous tabstops in gpl3 license.
2022-08-05 00:49:17 +02:00
Henrik Lissner
293b3f9be5
dev: update CODEOWNERS
- Watch all files under directories, rather than just their roots.
- Add lang/{fortran,graphql,php} and tools/bidi.
2022-08-05 00:49:17 +02:00
Henrik Lissner
1e9d8ab35e
bump: :lang python
cython/cython@fdea2d6bed -> cython/cython@8afd932c28
emacs-lsp/lsp-pyright@3598bc7c47 -> emacs-lsp/lsp-pyright@c745228f39
necaris/conda.el@9c28d7a853 -> necaris/conda.el@a65ed00848
pwalsh/pipenv.el@8f50c68d41 -> pwalsh/pipenv.el@3af1597498
pythonic-emacs/anaconda-mode@cbea0fb318 -> pythonic-emacs/anaconda-mode@160e4e7185
wbolster/emacs-python-pytest@ea53891a21 -> wbolster/emacs-python-pytest@9bf8db38bf

- Updating conda.el fixes compatibility with Conda 4.13+.

Fix: #6626
Close: #6630
Co-authored-by: sleepyeye <sleepyeye@users.noreply.github.com>
2022-08-05 00:49:17 +02:00
Henrik Lissner
bacb84f6c6
docs(default): add @hlissner, @UndeadKernel 2022-08-05 00:49:17 +02:00
Henrik Lissner
b7cd35e43c
docs(haskell): add @iyefrat 2022-08-05 00:49:17 +02:00
Henrik Lissner
ea254509aa
docs(javascript): add @elken, @iyefrat 2022-08-05 00:49:16 +02:00
Henrik Lissner
3dc14870af
docs(php): add @elken 2022-08-05 00:49:16 +02:00
Alfonso Fernando Álvarez
887e9fd12c feat(go): add test-file function and keybinding 2022-08-04 17:42:21 +02:00
Henrik Lissner
55544200be
release(modules): 22.08.0-dev
Ref: 2b39e41368
2022-08-04 01:29:37 +02:00
Henrik Lissner
fc73a81d69
docs: add appendix.org 2022-08-04 01:29:36 +02:00
Henrik Lissner
0cee8b4bee
docs: rewrite faq.org 2022-08-04 01:29:36 +02:00
Henrik Lissner
ed04aef2a9
docs: add PR ref to #+since lines 2022-08-04 01:16:13 +02:00
Henrik Lissner
3eb6f663fe
docs(bidi): update READMEs to new format
Also preforms minor spelling, grammar, and formatting corrections.
2022-08-04 01:16:13 +02:00
Henrik Lissner
1b59b9a83a
docs(fortran,graphql): update READMEs to new format
Also preforms minor spelling, grammar, and formatting corrections.
2022-08-04 01:16:13 +02:00
Henrik Lissner
304774cf39
docs(biblio,tree-sitter): update READMEs to new format
Also preforms minor spelling, grammar, and formatting corrections.
2022-08-04 01:16:13 +02:00
Henrik Lissner
d6ffd2bfaa
fix(file-templates): update doom doc templates
To reflect the new mode: line added in 7e400ab, and add an ID property.
Also corrects heading level in __doom-readme file template.

Ref: 7e400abdc0
2022-08-04 01:15:23 +02:00
Daanturo
08dac1400f fix(default): +default/yank-buffer-path echos the file name as nil
Emacs 29 with PGTK's kill-new doesn't return its STRING argument (with
the default settings) anymore, so we explicitly pass the file path to
prevent the confusing message "Copied path to clipboard: nil".
2022-08-03 19:26:19 +02:00
Jonathan Reeve
00f3928052 fix(mu4e): add missing icons for mu 1.8.X 2022-08-03 18:23:47 +02:00
Henrik Lissner
c1512feea1
fix(docs): disable doom-docs--hide-stars-h
Hiding the stars with org-fold breaks org-cycle, so until I have time to
fix it, I'll disable this hook altogether.
2022-08-03 04:20:52 +02:00
Henrik Lissner
6d4b2b48c2
fix(doom-dashboard): revert unintended changes
Amend: b5a2aa48fe
2022-08-03 03:34:28 +02:00
Henrik Lissner
1f8bf7accb
merge: rewrite-docs
I've omitted docs/*.org from this merge, as there is still work left to
do there, but I am pushing the module docs early so folks can benefit
from the new docs sooner.
2022-08-03 03:27:50 +02:00
Henrik Lissner
52bda5f4e7
fix: move bookmark-default-file to doom-etc-dir
A regression introduced in 46844b55de moved bookmarks to
doom-cache-dir, which is not where user data belongs.

Fix: #6540
Amend: 46844b55de
2022-08-03 03:09:27 +02:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
7e400abdc0
fix(docs): set mode in file-local vars
Due to emacs-straight/org-mode@e22b4eb, a replacement major mode (for
org-mode) can no longer be specified from .dir-locals.el, as it spirals
into infinite recursion. Therefore, a mode: line is needed in all Doom
docs.

Ref: emacs-straight/org-mode@e22b4eb7aa
2022-08-03 02:46:33 +02:00
Henrik Lissner
893434a5db
tweak(docs): org-display-remote-inline-images = 'cache
In doom-docs-org-mode buffers.
2022-08-03 02:46:32 +02:00
Henrik Lissner
64496a6c66
refactor(docs): tidy up 2022-08-03 02:46:32 +02:00
Henrik Lissner
acf7a8a48d
feat(docs): add org-glossary support 2022-08-02 21:37:15 +02:00
Henrik Lissner
6e06bbb062
fix(docs): remove redundant doom-docs-dir
A vestigial snippet for local testing accidentally left behind.
2022-08-02 21:34:39 +02:00
Ellis Kenyő
4a71d217bd nit(php): license => licence 2022-08-02 21:23:40 +02:00
lq
8fc2d67eb9
tweak(latex): ask Skim.app to reload pdf 2022-08-02 20:42:39 +02:00