Commit graph

119 commits

Author SHA1 Message Date
Henrik Lissner
653161fe2e
lang/org: refactor org config load order
- No longer use org-load-hook; it was unnecessary and there were corner
  cases where org would get loaded before hooks were added to it.
- Update comments
- Remove config that was redundant with org's defaults (wrt org-file-apps)
- Perform persp-mode check before using persp-mode API in
  +org|exclude-agenda-buffers-from-workspace advice.
- Update outdated smartparens config and move it out of
  org-mode-hook (only needs to be run once, not everytime org-mode is
  enabled)
- Autoload mode hooks
2019-04-10 18:47:21 -04:00
Henrik Lissner
31ca94f5b0
lang/org: remove unnecessary alias 2019-04-04 19:00:56 -04:00
Henrik Lissner
6084b774b8
lang/org: refactor and add keybinds for org tables
This update focuses on improving the key UX of org tables.

- Adds new table localleader keys under `SPC m s'
- Adds new localleader keybinds
  - New `s` prefix for table commands
  - New `f`/`F` keybinds for footnotes
  - New `'` keybind for `org-edit-special`
  - New `r` keybind for `org-refile`
- Bind localleader keys for both evil and non-evil users
- Refactors org table API
- For evil users:
  - Adds `zi` to toggle inline images
  - Finalize insert-mode keybind scheme for evil users (ala excel/gdocs)
    - C-{h,j,k,l} = move cursor between cells
    - C-M-{h,j,k,l} = insert cells in direction
    - C-M-S-{h,j,k,l} = swap cells in direction
2019-04-04 18:52:25 -04:00
Henrik Lissner
3a47c27dd6
lang/org: fix C-S-{h,l} in tables
Supposed to create new column on the left and right, respectively.
Instead, always created columns on the right.
2019-04-04 17:15:58 -04:00
Henrik Lissner
838edcea59
Add org export-to-clipboard commands & ox-clip
These work from markdown-mode as well as org-mode. Also adds
+org/export-to-clipboard-as-rich-text for pasting org/markdown rendered
as RTF.
2019-03-30 02:18:33 -04:00
Danny Navarro
d589f87253 Add maximize window key bindings
This includes maximization for entire buffer, vertically and
horizontally.
2019-03-24 14:47:55 +00:00
Henrik Lissner
79ac04f0b1
Fix default personal org-capture targets
Supposed to resolve to {org-directory}/todo.org, but instead resolved to
{default-directory}/todo.org.
2019-03-13 18:22:57 -04:00
Henrik Lissner
fa26dc1269
Refactor lang/org 2019-03-08 02:37:33 -05:00
Henrik Lissner
8a57d9b5fd
lang/org: RET on TOC will now refresh the TOC 2019-03-02 02:04:11 -05:00
Henrik Lissner
024f383a08
lang/org: add full link at point display to eldoc 2019-02-24 13:47:53 -05:00
Henrik Lissner
b4b85569b4
lang/org: expand snippet on TAB in visual mode 2019-02-19 19:05:49 -05:00
Henrik Lissner
069c196330
Appease byte-compiler senpai
Please notice me
2019-01-08 20:54:03 -05:00
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
53fe7a1f04 Refactor Project API to reflect changes upstream
projectile-project-root no longer returns `default-directory` if not in
a project (it returns nil). As such, doom-project-* functions (and their
uses) have been refactored.

+ doom-project-p & doom-project-root are aliases for
  projectile-project-p & projectile-project-root.
+ doom-project-{p,root,name,expand} now has a DIR argument (for
  consistency, since projectile-project-name and
  projectile-project-expand do not).
+ The nocache parameter is no longer necessary, as projectile's caching
  behavior is now more sane.
+ Removed some projectile advice/hacks that are no longer necessary.
+ Updated unit tests
2018-09-28 21:13:27 -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
ed1775b42d
lang/org: refactor +babel/ipython library
+ Conform ipython advice and helpers to naming conventions.
+ Refactor out dash.el usage
2018-09-21 22:38:21 -04:00
Henrik Lissner
77255a63e0
lang/org: refactor & expand org-capture-templates
+ Adds three new default org-capture templates, for todo, notes and
  changelogs. It will use the first {todo,notes,changelog}.org file
  found up the file heirarchy from the current file, or will use
  {project-root}/X.org.
+ Variables in org-capture-templates are now resolved relative to
  org-directory, if they aren't absolute.
+ Display target file in org capture window header-line.

Mentioned in #886.
2018-09-19 23:30:00 -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
7c82cb6002
org-capture: remove window-system frame parameter
Hopefully, `make-frame` can figure out which window-system to use.
2018-08-16 12:32:13 +02: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
60f6418db2
lang/org: Rename +org-capture-window-params
These are frame parameters; it is incorrect to call them window
parameters.
2018-08-08 23:37:29 +02:00
Henrik Lissner
e30ca73dc4
Autoload +org-capture-window-params 2018-08-08 20:44:03 +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
6693db48af
Mark +org-dir obsolete (use org-directory instead)
I prefer not to invent new variables when they aren't strictly
necessary. org-directory is one such variable (although the other path
variables are still necessary).
2018-06-15 01:05:22 +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
ebfc5648ef
lang/org: major refactor of +ipython feature 2018-05-30 18:14:48 +02:00
Henrik Lissner
31d34ae5f0
Merge pull request #620 from fuxialexander/ob-ipython
lang/org: +ipython
2018-05-30 11:57:14 +02:00
Henrik Lissner
49f16f681c
lang/org: realign/recalculate tables on exit evil replace mode 2018-05-30 01:45:35 +02:00
fuxialexander
f98f7ab552 Add: org: +ipython
Add: packages
2018-05-29 18:31:15 +08: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
7dd5c12b44
lang/org: disable make-frame hooks in +org-capture/open-frame 2018-04-23 17:50:24 -04: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