organ-mode
https://github.com/mahmoodsh36/organ-mode is an alternative to
there are more keys bound in
organ-agenda also has a transient popup that displays the usable keys in the mode.
the agenda mode doesnt yet provide as many features as org-agenda, and doesnt yet provide a menu similar to org-agenda's for manipulating states.
default keybindings:
related variables:
org-mode for the lem text editor. it tries to maintain compatibility with org's syntax to some degree that will be defined at some point, but that should be enough that for most use-cases it should behave like org-mode would.
organ-mode is built on cltpt.roadmap
note that this is distinct from the roadmap forcltpt.
- [ ] proper packaging for lem
- [-] roam (idea from org-roam)
- [X] node navigation
- [ ] backlinks buffer
- [-] agenda (idea from org-agenda)
- [-] agenda buffer
- [X] todo navigation
- [ ] next/previous week
- [X] display specific date range
- [ ] todo state handling/modification for headers
- [ ] informative grid overview
- [-] agenda buffer
- [ ] element folding
- [ ] headers
- [ ] blocks
- [ ] drawers
- [ ] babel (idea from org-babel)
- [ ] code execution
- [ ] code "fontification"
- [X] buffer navigation by element (headers, blocks, etc)
- [-] element-specific/quick actions
- [-] list-specific actions (insert new list item on enter)
- [X] reformatting
- [ ] new item
- [X] reordering (dragging elements above/below etc)
- [X] dragging elements
- [ ] mark/unmark list entry
- [-] table-specific actions
- [ ] new row/column
- [ ] delete row/column
- [X] reformatting
- [X] next/previous cell (using tab/shift-tab)
- [X] reordering (dragging elements above/below etc)
- [ ] org-header
- [ ] reordering (dragging elements above/below etc)
- [ ] demote/promote header subtrees
- [-] list-specific actions (insert new list item on enter)
- [ ] inline image display
- [ ] "live" latex previews
documentation
organ-mode makes use of the transient from https://github.com/lem-project/lem/pull/2100 by default. when you open an org file the transient will appear with a least of the keybindings. besides that, there is a global keymap that is maintained for features that are usable outside an organ-mode buffer. this keymap is bound toC-c r by default.
global keys
| key | description | function |
C-c r | base global keymap | *organ-keymap* |
C-c r r | open organ-roam node navigation list | roam-find |
C-c r a | open organ-agenda | agenda-mode-open |
C-c r c p | publish all files to a webapp | |
C-c r n | capture keys | *organ-capture-keymap* |
*organ-keymap* that would just show up when you hit C-c r but arent listed here to avoid making a long table.
organ-mode
| key | description | function |
C-c C-n | go to next heading | organ-next-header |
C-c C-p | go to previous heading | organ-prev-header |
C-c n | go to next element | organ-next-element |
C-c p | go to previous element | organ-next-element |
C-c C-x C-n | go to next link | organ-next-link |
C-c C-x C-p | go to previous link | organ-prev-link |
C-c C-v C-n | go to next src-block | organ-next-src-block |
C-c C-v C-p | go to previous src-block | organ-prev-src-block |
| modify timestmap at point | organ-insert-timestamp | |
M-k | swap entry with one above it (applies to lists, tables) | |
M-j | swap entry with one below it (applies to lists, tables) | |
M-l | swap entry with one to the right | |
M-h | swap entry with one to the left | |
Tab | next entry in table (might be used for other stuff in the future) | |
Shfit-Tab | prev entry in table | |
C-c C-t | change the TODO state of the task under cursor | agenda-mode-change-task-state |
C-c C-d | add DEADLINE timestamp | organ-deadline |
C-c C-s | add SCHEDULED timestamp | organ-schedule |
organ-roam
- node roamer (find headers/files/etc) can be started using
C-c r.
| variable | description |
*organ-files* | a set of rules for finding files. see docstring of cltpt/roam:find-files |
organ-agenda
once the variable*organ-files* has been customized, organ-agenda can be opened using C-c a.
organ-agenda also has a transient popup that displays the usable keys in the mode.
the agenda mode doesnt yet provide as many features as org-agenda, and doesnt yet provide a menu similar to org-agenda's for manipulating states.
default keybindings:
| key | description | function |
C-c C-t | change the TODO state of the task under cursor | agenda-mode-change-task-state |
C-c C-d | add DEADLINE timestamp | organ-deadline |
C-c C-s | add SCHEDULED timestamp | organ-schedule |
M-n | go to next item in the tree | outline-next-true-sibling |
M-p | previous item in the tree | outline-previous-true-sibling |
C-M-n | next item in the tree that is of the same level | outline-next-sibling |
C-M-p | previous item in the tree that is of the same level | outline-previous-sibling |
M-u | go to parent | outline-go-to-parent |
return | go to source of todo entry. | outline-action-at-point |
tab | exapnd/collapse node. | outline-expand-collapse |
q | quit | outline-quit |
| variable | description |
cltpt/agenda:*agenda-time-format* | time format displayed in agenda trees. |
cltpt/agenda:*agenda-seqs* | definitions that are used to determine agenda state changing behavior |