Where they will be further generalized, later.
This also prevents an issue where org was loaded while the profile init
files are generated, which caused a warning about org-loaddefs which
introduces a noticable delay.
featurep! will be renamed modulep! in the future, so it's been
deprecated. They have identical interfaces, and can be replaced without
issue.
featurep! was never quite the right name for this macro. It implied that
it had some connection to featurep, which it doesn't (only that it was
similar in purpose; still, Doom modules are not features). To undo such
implications and be consistent with its namespace (and since we're
heading into a storm of breaking changes with the v3 release anyway),
now was the best opportunity to begin the transition.
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
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.
When leaving org-tree-slide-mode, the window fringes are reset
fringe-mode has multiple possible types, including cons cell,
which cannot be passed directly to set-window-fringes
BREAKING CHANGE: With 26.x support dropped, I've dropped:
- doom-plist-delete: use map-delete instead
- plist-delete!: use cl-callf + map-delete instead
- doplist: use (cl-loop for X on PLIST by #'cddr ...) instead
These were removed as part of an ongoing effort to eliminate
redundancies with built-in packages and reduce Doom's overall footprint.
org-roam-get-keyword performs some file IO to read file keywords from
all nodes. This can be slow with long node lists. With
org-roam/org-roam#1963, file title is baked into the schema, so we don't
need to do this work anymore.
Ref: org-roam/org-roam#1963
Fix: #6382
There are multiple problems with the previous version of
`+org--insert-item', e.g. the labels of ordered lists were not updated
and it also made a difference if the point is before or after the
bullet.
This commit fixes this behavior, but uses a horrible hack. For the edge
case of an empty item, it inserts a no-break space momentarily, so that
`org-insert-item' does the right thing.
Added new keybinds for easy removal of RESULTS blocks in org-mode.
SPC m k - delete RESULTS block under cursor
SPC m K - delete all RESULTS blocks under cursor
SPC u SPC m K - delete all RESULTS blocks in buffer
BREAKING CHANGE: The +org-roam-open-buffer-on-find-file variable was
renamed to +org-roam-auto-backlinks-buffer *and* is now disabled by
default. When this is non-nil, it will open the *org-roam* backlinks
side window when roam files are visible, and close it when they aren't.
This change also makes this behavior a little more robust, but is
understandably not everybody's (read: most people's) cup of tea, so it
is now opt-in.
- No longer hard-code fontification of tags and types in roam
completion.
- Prefix types with @ and tags with # -- makes them easier to search for
in completion -- and swap types and hierarchy columns. I.e.
before: TYPE TITLE [TAG [TAG...]]
after: TITLE @TYPE [#TAG [#TAG...]]
- Exclude unwanted (i.e. meta) tags from public display, like ATTACH,
ARCHIVE, or anything in org-num-skip-tags.
In org-mode, if one writes a math expression in a section (i.e. heading)
while using cdlatex, pressing tab indents the section instead of
performing a cdlatex-tab.
This fix takes care of this issue to have the wanted behavior: if in
math environment and hit tab while in section, execute cdlatex-tab.
Close: #5926
Co-authored-by: roiholtzman <roiholtzman@users.noreply.github.com>
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.
Before this change, the +org/refile-to-current-file command would
display a flat list of tail headings in the current file, without
context, which can result in duplicates and can make it difficult to
tell where you're refiling a heading to.
This changes each heading to be a full path.
- #+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)
+ Rather than waiting for the first "interactive" major mode to be
visited to activate yas-minor-mode, we wait until the first time the
user invokes a snippet command to activate yas-global-mode.
+ yas-reload-all is one of the bottlenecks when loading a file for the
first time. Deferring it further should help with this.
+ yas-global-mode reaches more major modes than our former list of
hooks (fixes#5140).
Closes#5140
Tab should only be changed for evil users in insert mode, since they
have fold cycling functionality available in normal mode and vanilla
users do not.
When opening an org file and the point is placed in a folded region (by
saveplace), it reveals the current subtree. Instead, it will reveal the
current subtree *and* its ancestors (and their siblings), which is more
intuitive.
This is to accommodate users who default to emacs mode, rather than
insert mode. The two are also very alike, so many of these checks should
apply to both (almost) equally.