Commit graph

120 commits

Author SHA1 Message Date
Henrik Lissner
81cccbcc51
lang/org: only update parent statistics cookies
This would formerly update _all_ statistics cookies in the org document,
which can be terribly slow in large documents. This restricts that to
just the parent headlines of the subtree the cursor is in.
2018-10-30 16:20:25 -04:00
Henrik Lissner
e0f7ba19cd
lang/org: use correct todo on RET
Improves on baa6f640. This fixes RET cycling between different keyword
sets.
2018-10-19 15:44:25 -04:00
Henrik Lissner
99b7b7f740
lang/org: add inline base64/http(s) image support
Adds inline image preview support for http/https links, as well as
base64 encode image support with the img protocol. e.g.

Examples:
[[http://domain.com/some/image.png]]
[[https://raw.githubusercontent.com/hlissner/doom-emacs/screenshots/company.png]]
[[img:iVBORw0KGgoAAAANSUhEUgAAACUAAAAuCAAAAACKMo8cAA...]]
2018-10-17 16:31:23 -04:00
Henrik Lissner
baa6f64025
lang/org: use correct todo keyword on M-RET
Previously, new TODO headers created with M-RET or M-S-RET (bound to
+org/insert-item) would use the first TODO keyword in org-todo-keywords
in the new header. This wouldn't necessarily match the previous header.
e.g.

* [ ] Item 1
* TODO |

This fix ensures new headers will preserve the correct header, even if
the previous one is in a DONE state.

* [ ] Item 1
* [ ] |
2018-10-17 01:24:26 -04:00
Henrik Lissner
15991b5639 Refactor quiet! to be less destructive
It's possible for the debugger to be invoked from inside code wrapped in
a (quiet! ...) call. The debugger pauses Emacs in a broken state where
the functions locally rebound by quiet! (e.g. message, load-file,
write-region, etc) are never returned to their original definitions.

This attempts to reduce that probabilityby changing how quiet! silences
code. Rather than silencing them completely, they will be logged
to *Messages* but not displayed in the echo area.

Also, quiet! is now used less, where it isn't strictly needed (or where
inhibit-message is sufficient).
2018-09-28 21:13:27 -04:00
Henrik Lissner
7d3ffdff06
Remove third line in section headers
This is truly important stuff. We've saved many lives with this update.
2018-09-09 09:58:19 -04:00
Henrik Lissner
5663778e36
Make TAB respect org-cycle-separator-lines #800
outline-toggle-children and org-cycle-hide-drawers didn't respect
org-cycle-separator-lines.
2018-08-13 21:47:55 +02:00
Henrik Lissner
c935f3e4da
lang/org: fix backtab not outdenting items/headers 2018-07-30 04:06:00 +02:00
Henrik Lissner
ebd3b0223e
Fix followed org links not recentering correctly
Links like `file:test.cpp::45` would open file.cpp, but end up somewhere
else than line 45. Same with links like `file:test.cpp::int main()`.
2018-07-24 20:01:42 +02:00
Henrik Lissner
e7b252f442
TAB should respect org-cycle-open-archived-trees
And shouldn't cycle visibility of archived trees by default.
2018-07-12 20:39:39 +02:00
Henrik Lissner
4941e327f4
General refactor for readability
+ Removes redundant/unhelpful comments
+ Renames functions, hooks and variables to be self-documenting
+ Use add-to-list to ensure idempotency (and is more performant)
2018-07-09 15:33:31 +02:00
Henrik Lissner
c9ffa063e7
Fix +org/insert-item in nested plain lists
Would prepend new list items in the middle of plain lists, rather than
before them.
2018-07-04 14:19:22 +02:00
Henrik Lissner
38414a636f
Fix evil-org's o/O in nested plain lists
Thanks by @fuxialexander
2018-07-04 13:16:11 +02:00
Henrik Lissner
84c17b0413
Add docstring to +org-pretty-mode 2018-06-04 21:17:49 +02:00
Henrik Lissner
23bd9d3efa
Add FILE support to +org-get-property & optimize
Can now be used to grab properties from remote org files. Also only
reads the first 2048 bytes of the document by default, for performance
reasons.
2018-06-04 21:17:49 +02:00
Henrik Lissner
f7a6089956
Restore vim zr, zR, zm, & zM folding in org-mode
For evil users.
2018-06-04 21:17:49 +02:00
Henrik Lissner
f9be8887fb
lang/org: minor refactor/reformatting
Also reduce internal use of map! (toward eventual switch to general)
2018-06-03 12:22:39 +02:00
Henrik Lissner
5948a52a38
Fix jumpy cursor in org tables when using evil-replace 2018-05-30 18:15:58 +02:00
Henrik Lissner
49f16f681c
lang/org: realign/recalculate tables on exit evil replace mode 2018-05-30 01:45:35 +02:00
Henrik Lissner
c46bd978fc
lang/org: fix tab not folding src blocks 2018-05-17 23:05:35 +02:00
Henrik Lissner
9e141cd01b
lang/org: fix newline-and-indent behavior in src blocks 2018-05-08 15:36:42 +02:00
Henrik Lissner
f3d54af5dc
lang/org: fix +org/insert-item moving cursor into invisible region 2018-05-08 15:24:43 +02:00
Henrik Lissner
460461ef54
tools/magit: clean up after magit more intelligently #506
Ensures magit buffers are cleaned up after magit-status is closed. Will
defer cleanup on process buffers, until the processes have finished.

Also fixes issue where quitting magit will leave leftover windows.
2018-04-08 20:44:40 -04:00
Henrik Lissner
b7577f1e26
lang/org: fix org-shifttab only toggling current fold 2018-04-05 17:28:46 -04:00
Henrik Lissner
bc91c55acc
lang/org: augment org-cycle, rather than replace it
This removes +org/toggle-fold in favor of a more compatible alternative:
a org-tab-first-hook function that forces org-cycle only to toggle the
current subtree, and not cycle through all visibility states.
2018-04-04 06:56:59 -04:00
Henrik Lissner
b47ccab4a5
lang/org: fix TAB not toggle folds on some headlines 2018-03-26 06:41:10 -04:00
Henrik Lissner
5eba949550
lang/org: delete-char backward in org|delete-backward-char #472 2018-03-23 15:19:44 -04:00
Henrik Lissner
1b9c5befb4
lang/org: refactor +org|realign-table-maybe 2018-03-22 14:41:48 -04:00
Henrik Lissner
48f5811e0d
lang/org: fix void-variable error upon backspace in tables #472 2018-03-22 14:41:27 -04:00
Henrik Lissner
e929f831f6
lang/org: fix default TAB behavior for non-evil org users 2018-03-20 16:46:41 -04:00
Henrik Lissner
8d11682e99
lang/org: make doom/delete-backward-char respect tables #457
With or without evil.
2018-03-12 17:09:36 -04:00
Henrik Lissner
8976d1ad5a
lang/org: fix org/insert-item in continued indented lines 2018-03-12 13:32:01 -04:00
Henrik Lissner
d563d133ff
lang/org: fix evil coupling #457
And use fix backspace not keeping tables aligned.
2018-03-12 13:32:00 -04:00
Henrik Lissner
fa6459bb00
lang/org: improve footnote support for +org/dwim-at-point 2018-03-06 18:39:34 -05:00
Henrik Lissner
a01320deeb
lang/org: redo evil integration; add evil-org package
lang/org has now adopted much of evil-org, which introduces better evil
integration for org-mode. More testing is required.
2018-02-18 00:32:12 -05:00
Henrik Lissner
aafa45e271
lang/org: fix insert-item tests; refactor +org/insert-item 2018-02-17 22:41:58 -05:00
Henrik Lissner
4321f20b3e
Appease byte-compiler-sama 2018-02-14 20:54:53 -05:00
Henrik Lissner
e79942de2e
lang/org: improve tab indent in src blocks
I realize org-src-tab-acts-natively exists, but it doesn't work for me.
This little fix (plus the next commit's editorconfig fix) should make
tab act much more reliably in src blocks.
2018-02-13 19:41:09 -05:00
Henrik Lissner
5b92c3d99f
lang/org: add evil insert check to +org|indent-maybe 2018-02-13 18:33:36 -05:00
Henrik Lissner
7b70aa9b7d
lang/org: reorganize autoload/org.el. Pedantry intensifies.
Library is now separated into alphabetically sorted sections. So nice
and neat!
2018-02-13 18:19:36 -05:00
Henrik Lissner
d84af58f77
lang/org: refactor tab/backtab/ret keybinds to be less intrusive
Turns out the native TAB/Backtab/RET functionality in org already does
what I've replaced them with (somewhat).

Also, I discovered that the canonical way to modify TAB behavior was
through org-tab-first-hook. So, instead of replacing native
functionality, I've rewritten these keybinds to leverage them.
2018-02-13 18:12:40 -05:00
Henrik Lissner
9b76627ee0
lang/org: do org-try-structure-completion on TAB #417 2018-02-12 23:19:51 -05:00
Henrik Lissner
a43b88b18a
lang/org: refresh inline images when pressing RET on headlines 2018-02-10 02:15:23 -05:00
Henrik Lissner
d714be0a16
lang/org: +org/insert-item: unhide if point lands in invisible region 2018-02-02 23:57:26 -05:00
Henrik Lissner
5cb75da7e0
lang/org: fix +org/insert-item single-line buffer edge-case 2018-02-02 02:34:46 -05:00
Henrik Lissner
97d0ff0966
lang/org: fix cursor placement after M-RET in tables 2018-02-02 02:25:49 -05:00
Henrik Lissner
53b7297c6d
lang/org: fix M-RET not adjusting number bullets #390 2018-02-02 02:25:49 -05:00
Henrik Lissner
ccaaca2d88
lang/org: replace obsolete org-match-string-no-properties 2017-12-17 00:03:45 -05:00
Henrik Lissner
b111303d20
Move modules/org/* back to lang/org 2017-12-08 23:14:13 -05:00
Henrik Lissner
d2d4166b42
Move lang/org => org/*
Since lang/org has grown (and is expected to grow much, much more), it
has been given its own module category.

Concerns #129, #138
2017-07-05 12:26:08 +02:00