- # Outline editor prototype - An outline-based markdown editor experiment - ### Infuences:: - Logseq - Tomboy - Bonsai - - ## ToDo - ASAP: editor: bksapce/del at start/end of a block should join it with prev/next - ASAP: editor: pressing enter in text edit mode should split text into two blocks - ASAP: editor: shifting nodes up/down - ASAP: editor: `-` at start of line is interpreted as block marker... - editor: caret - ~go to next/prev element's start/end when moving off last/first char~ - handle up/down on wrapped blocks _...can't seem to get caret line in a non-hacky way_ - ~editor: semi-live update styles~ - need to reach checkboxes via keyboard - persistent empty first/last node (a button to create a new node) - add completion percentage to blocks with todo's nested: - `[%]`, `%%`, or something similar... - read-only mode - should bulets be on the same level as nodes or offset?? - A) justified to bulet: * list item * list item block text - B) justified to text _(current)_: * list item * list item block text - ~do a better expand/collapse icons~ - ~loading from DOM -- fill textarea~ - ~focus management~ - ~mouse/touch controls~ - ~navigation~ - ~expand/collapse subtree~ - ~shift subtree up/down~ - ~create node~ - ~edit node~ - multiple node selection - copy/paste nodes/trees - undo - delete node - indent/deindent - edit node - markdown: tables - empty item height is a bit off... - handle links gracefully - ~serialize/deserialize~ - ~add optional text styling to nodes~ - - ## TEST - ### Formatting: - Styles - # Heading 1 - ## Heading 2 - ### Heading 3 - #### Heading 4 - ##### Heading 5 - ###### Heading 6 - Text - List:: - a - b - c - // C-style comment - ; ASM-style comment - XXX Highlight - Line - --- - Markers - Basic "as soon as posible" (ASAP) - Basic inline *bold*, _italic_ and ~striked~ - To do items - TODO undone item _(clicking the checkbox updates the item)_ - DONE done item - [_] a different way to draw a checkbox - Inline [X] checkboxes [_] - - ### Playground for testing - A collapsed:: true - a - b - c - B - d - e - C - This is a line of text - This is a set text lines - Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text Lots of text


Controls:
	up         - focus node above
	down       - focus node below
	left       - focus parent node
	right      - focus first child node
	tab        - indent node
	s-tab      - deindent node
	s-left     - collapse node
	s-right    - expand node
	enter      - normal mode: edit node
	           - edit mode: create node below
	esc        - exit edit mode