74 lines
1.9 KiB
Markdown
74 lines
1.9 KiB
Markdown
# td
|
|
|
|
## Install (this was generated by Ink starter, dunno if that works)
|
|
```bash
|
|
$ npm install --global td
|
|
```
|
|
|
|
# Dependencies
|
|
fzf https://github.com/junegunn/fzf
|
|
for searching & selectors
|
|
tmux
|
|
for displaying an editor in a side pane
|
|
IMPORTANT: this must be run inside tmux
|
|
Ive got a comfy tmux config I can share later if U'd want it :)
|
|
|
|
# ENV vars
|
|
TD_EDITOR
|
|
Editor for ask editing, CLI only (recommend neovim (again Ive got a comfy config I can share later if U'd want it :)))
|
|
TD_TASK_DIR
|
|
Directory for storing tasks.json and logs. Assumed to be a git repo
|
|
|
|
set them before running `td`
|
|
|
|
```bash
|
|
$ tmux
|
|
$ export TD_EDITOR=nvim
|
|
$ export TD_TASK_DIR=/home/omnissiah/git/tasks/
|
|
$ npm run buid
|
|
$ node dist/cli.js
|
|
```
|
|
or in Your .bashrc
|
|
|
|
# Manual
|
|
P.S. A more complete summary of keybinds can be displayed on `?` keybind
|
|
|
|
1. **Task Management**:
|
|
- Create, edit, delete tasks.
|
|
- View lists in a ranger-like UI https://github.com/ranger/ranger
|
|
- Tasks can have subtasks.
|
|
|
|
2. **Navigation**:
|
|
- Vim-like keybindings for navigation:
|
|
- `hjkl` to navigate in and between subtask lists.
|
|
- `HJKL` to move a task in and between subtask lists.
|
|
- `g` to go to the top of the list.
|
|
- `G` to go to the bottom of the list.
|
|
- `d` to go down 5 tasks
|
|
- `u` to go up 5 tasks
|
|
- `D` to delete a task (with a confirmation dialog)
|
|
- `x` to cut a task
|
|
- `p` to paste a cut task
|
|
|
|
|
|
3. **Task Operations**:
|
|
- `a` to add a new task.
|
|
- `A` to add a new subtask.
|
|
- `a` to add a new task.
|
|
- `e` to edit the selected task using external editor.
|
|
- `d` to delete the selected task. (with confirmation using fzf)
|
|
- `space` to toggle the completion status of a task.
|
|
|
|
4. **External Editor**:
|
|
- Uses neovim for text editing.
|
|
|
|
5. **Persistence**:
|
|
- Save and load tasks from a file
|
|
6. **Search**:
|
|
- `/` to search for tasks (fzf).
|
|
|
|
7. **Help**:
|
|
- `?` to show help for keybindings.
|
|
|
|
|