Fewer links means less confusion.
- Merge doom-issue and doom-commit links into doom-ref (for auto-linking
Issue/PR/commit references).
- Merge doom-module-source and doom-docs-source links into doom-source.
- Rename doom-report-issue to doom-report.
- Use '!' as the icon for module issues link.
- Remove doom-repo (replaced with "doom:*" in :lang org module).
- Add doomdir and emacsdir links to :lang org module.
These two modes exist to provide a nicer reading experience while
viewing Doom's org documentation from within Emacs; they hide
meta-lines, comments, markup, and more.
They also enable our docs to use IDs for links and keep our ID db
separate from any user ID dbs.
From now on Doom will enforce two conventions for its org files for
consistency's sake:
- Lower-case meta-lines in org files, like #+begin_src, #+name, or
#+end_quote (only exception are the top-level ones, like #+TITLE and
#+STARTUP).
- Use 'emacs-lisp' as the lang specifier for elisp blocks rather than
'elisp'. Emacs doesn't natively recognize the latter.
This will be reflected in our rewritten docs/*.org and module
README.org's.
Headings beyond 6 are excessive in almost any org document, and only
muddy (and slow down) imenu search results, so I'm reducing it to the
number of available HTML headings.
Here's the problem:
1. Org's link system unconditionally calls *all* link :store handlers
when you call `org-store-link`, and all :export handlers when you
export an Org file.
2. The org-pdftools package works by defining a custom pdf: link with
custom :store and :export handlers.
3. Those handlers do not perform error handling before using pdftool's
API.
4. pdf-tools fails loudly and ungracefully with a
"pdf-info-epdfinfo-program is not executable" error when its API is
used and epdfinfo isn't installed.
TL;DR org-pdftools effectively breaks storing/exporting in org-mode
until pdf-tools-install is executed to install epdfinfo. This is awful
UX, so let's suppress the error.
- #+STARTUP: inlinegifs = play inline gif previews when point is on
them.
- #+STARTUP: playgifs = play all gifs in the visible buffer (super,
super slow; use at your own risk).
- Add +org-startup-with-animated-gifs for changing the global
default (nil). Can be set to 'at-point (inlinegifs) or t (playgifs)
#+STARTUP: showNlevels
This tells org to expand N levels at startup, but it only partially
unfolds headings, so show2levels gets you:
* A [...]
** X [...]
** Y [...]
** Z [...]
Instead of (what I think is expected):
* A
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do
eiusmod tempor incididunt ut labore et dolore magna aliqua.
** X [...]
** Y [...]
** Z [...]
Perhaps this should be upstreamed?
ob-comint (included with org) added native :async support. It only works
for python currently, but unlike ob-async supports :session for :async
python blocks. In fact, it *requires* :session, so we still fall back to
ob-async in its absence, failing that, it ultimately falls back to
synchronous execution.
- Rename module from `:completion selectrum` to `:completion vertico`
- Rename all files involved
- Do *not* yet rename all the functions, as that messes up git's rename
detection.
- add `completion-at-point` as analogue to `cousnel-company`
- fix emacs-bindings `counsel-company` binding to respect helm and selectrum
- add org jump commands `consult-org-heading` and `consult-org-agenda` bindings
- add `consult-history` as `counsel-minibuffer-history` analogue
- add support for `doom/help-search`
- update TODO.org
Not sure if this was a recent change (28.0.50+), but a new conditional
keybind in outline-mode-cycle-map was overriding TAB in insert mode in
org-mode (in GUI Emacs).
Emacs 27.x has been the stable version of Emacs for nearly a year, and
introduces a litany of bugfixes, performance, and quality-of-life
improvements that significantly reduce Doom's maintenance burden (like
XDG support, early-init.el, image manipulation without imagemagick, a
native JSON library, harfbuzz support, pdumper, and others).
With so many big changes on Doom's horizon, I like having one less (big)
thing to worry about.
Also reverts bb677cf7a (#5232) as it is no longer needed.
With current hacks involving `org-agenda-files`, one cannot use org agenda
commands like clock in or change the entry's state to done, etc.
Specifically, the mangled behavior observed at #4901. This commit fixes those
problems around `org-agenda` buffer specific commands.
For more details, please refer to https://github.com/hlissner/doom-emacs/issues/4759#issuecomment-822100632.
Due to case shenanigans, ob-C.el's feature name is ob-C, not ob-c,
preventing folks from using 'c' (lowercase) as a language name for org
babel blocks.
This fixes a class of issues where doom-first-file-hook would fire even
for files not opened interactively (e.g. via org-agenda reading agenda
files or helpful scraping definitions from source files).
In instances like these, hooks like find-file-hook or pre-command-hook
are set to nil to speed up this process and reduce noise, but many
packages add to these hooks when they are loaded; these are lost when
their lexical values fall out of scope, leading to odd errors (like the
one in #4759).
Fixes#4759 (again)
First brought up in hlissner/doom-emacs@9f08db8
When a capture target didn't have an *.org file extension OR its buffer
was displayed before it was renamed to CAPTURE-* (e.g. while a capture
template prompts for input) the popup handler fails to capture the new
window, displaying it in other-window, rather than a popup.
An optimization that minimizes how much work is done when grabbing org
agenda files in the background prevented side-effects in
doom-first-file-hook. This had the indirect effect of preventing
save-place-mode from adding its hook to find-file-hook IF org-agenda was
the first thing you ran at startup.
* Add org-agenda-priority keybindings to org config
Summary: This diff adds evil-esque keybindings for the org-agenda-priority
functions. These functions allow the org subtree priority to be set from
the agenda view.
* Correct org priority keybinds
These keys were meant to be on <localleader> p, but were mistakenly
bound on <localleader> s p.
Also mirrors these keybinds to org-agenda-mode-map.
* Use non-agenda org-priority commands
Also make casing in which-key labels more consistent.
Co-authored-by: Henrik Lissner <accounts@v0.io>
Refactors advice to disable ob-async when exporting org documents or
when the :session parameter is present (ob-async does not support it).
Execution is degraded to synchronous execution and a warning logged.
I understand that what you tried to accomplish via CSright was; however, it doesn't make any difference from Cright, and so for other navigation keys -- h,j,k,l.
I fixed this discrepancy.
+ Adds LOOP and IDEA to primary todo keywords.
+ Adds OKAY, YES, and NO sequence.
+ Specially fontifies NO and KILL with special "cancelled" face to
indicate an aborted/rejected task.
+ Specially fontifies PROJ to set it apart.