hachem.wtf
aboutsummaryrefslogtreecommitdiff
path: root/todo.1
diff options
context:
space:
mode:
authorhachem <im@hachem.wtf>2026-10-03 08:44:46 +0200
committerhachem <im@hachem.wtf>2026-10-03 08:44:46 +0200
commit908e6d88f32c6eb1855d13156fad301c402a1798 (patch)
tree33c6e459c466052cf235a227720dddab86abd749 /todo.1
parent7fe8c5ed9d741a58118f145a5d5ed14e533b9d39 (diff)
feat: more qol after using it for a couple days
Diffstat (limited to 'todo.1')
-rw-r--r--todo.183
1 files changed, 74 insertions, 9 deletions
diff --git a/todo.1 b/todo.1
index c9eb00f..2047f23 100644
--- a/todo.1
+++ b/todo.1
@@ -45,6 +45,10 @@ automatically once all of its subtasks are done.
An optional task, shown with parentheses
.RB ( "( )" )
instead of a checkbox.
+.TP
+.BI > " text"
+A note on the task above it: extra description, shown indented and dimmed with
+no checkbox. Notes move with their task.
.PP
Within each section, items are grouped \(em required, then optional, then done
\(em with a blank line between the groups.
@@ -60,8 +64,12 @@ done.
.SS Movement
.TP
.BR h ", " j ", " k ", " l
-Move: \fBh\fR/\fBl\fR move the cursor within the item, \fBj\fR/\fBk\fR between
-items. Arrow keys work too.
+Move: \fBh\fR/\fBl\fR move the cursor within the item, \fBj\fR/\fBk\fR by display
+line, stepping through a wrapped item before moving to the next. Arrow keys work
+too.
+.TP
+.BR 0 ", " $
+Move the cursor to the start or end of the item.
.TP
.BR w ", " b
Move to the next or previous word.
@@ -90,26 +98,77 @@ Append to the item's text.
Enter replace mode, overtyping characters from the cursor.
.TP
.B x
-Toggle the item between done and not done.
+Delete the character under the cursor.
+.TP
+.BR cw ", " ce ", " cb ", " c0 ", " c$ ", " cc
+Change over a motion: a word
+.RB ( cw ", " ce ),
+back a word
+.RB ( cb ),
+to the start
+.RB ( c0 )
+or end
+.RB ( c$ )
+of the line, or the whole line
+.RB ( cc ).
+A count applies, as in
+.BR 2cw .
+.TP
+.BI ct c "\fR, \fP" cf c
+Change the text up to the next
+.IR c ,
+then enter insert mode.
+.B cf
+deletes the
+.I c
+as well.
+.TP
+.BI ci d "\fR, \fP" ca d
+Change the text inside
+.RB ( ci )
+or around
+.RB ( ca )
+the delimiter pair
+.IR d ,
+one of
+.BR () ,
+.BR [] ,
+.BR {} ,
+.BR <> ,
+or a matching
+.B \(dq
+or
+.BR ' .
+If the cursor is before the pair, the next one on the line is used.
.TP
.B space
Cycle the item through todo, doing and done.
.TP
.B dd
-Cut the item (also copies it for pasting).
+Cut the item (also copies it for pasting). A task takes its subtasks and notes
+with it.
.TP
.B D
Remove every done item.
.TP
.BR yy ", " p ", " P
-Yank the item, paste it below, or paste it above.
+Yank the item, paste it below, or paste it above. A task carries its subtasks
+and notes as one block.
.TP
.BR J ", " K
-Move the item down or up. On a section heading this moves the whole section.
+Move the item down or up. A task moves with its subtasks and notes; a section
+heading moves the whole section.
.SS Other
.TP
.BR / ", " n ", " N
-Search for text, then jump to the next or previous match.
+Search for text and jump to the match, placing the cursor on the word;
+.B n
+and
+.B N
+repeat forward and backward. Matches are highlighted as you type and stay
+highlighted until the next search or until
+.B escape
+is pressed in normal mode.
.TP
.BR u ", " "ctrl-r"
Undo and redo.
@@ -141,6 +200,10 @@ Set every item back to todo, clearing all done and doing states.
.TP
.B :clear
Remove every item, emptying the list.
+.TP
+.B :reorder
+Re-sort the list, regrouping items (required, optional, done) within each
+section. Useful after reordering or hand-editing.
.SH OPTIONS
.TP
.BR \-h ", " \-\-help
@@ -157,8 +220,10 @@ a section
.RB ( "= name" ),
a subtask
.RB ( "- name" ),
-or an optional task
-.RB ( "* name" ).
+an optional task
+.RB ( "* name" ),
+or a note
+.RB ( "> text" ).
Override the location with
.BR $TODO_FILE .
.SH ENVIRONMENT