mirror of
https://github.com/RWejlgaard/org.git
synced 2026-05-06 04:34:45 +00:00
readme update
This commit is contained in:
parent
9361e084e5
commit
097703beda
3 changed files with 90 additions and 7 deletions
Binary file not shown.
|
Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 94 KiB |
87
README.md
87
README.md
|
|
@ -1,16 +1,99 @@
|
||||||
# Org
|
# Org
|
||||||
|
|
||||||
Org is a simple orgmode application inspired from the simplicity of `nano`.
|
A simple terminal-based Org-mode task manager inspired by the simplicity of `nano`. Manage your TODO items, track time, and stay organized without leaving the command line.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
```bash
|
||||||
|
go install github.com/rwejlgaard/org/cmd/org@latest
|
||||||
|
```
|
||||||
|
|
||||||
|
Or build from source:
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/rwejlgaard/org
|
||||||
|
cd org
|
||||||
|
go build -o bin/org ./cmd/org
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
```bash
|
||||||
|
org [filename] # Open specific org file
|
||||||
|
org -f tasks.org # Open using -f flag
|
||||||
|
org # Opens ./todo.org by default
|
||||||
|
```
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
### Task Management
|
||||||
|
- **TODO States**: Cycle through TODO, PROG (in progress), BLOCK (blocked), and DONE states
|
||||||
|
- **Hierarchical Tasks**: Create sub-tasks and organize items with multiple levels
|
||||||
|
- **Priority Levels**: Set priorities (A, B, C) with color-coded indicators
|
||||||
|
- **Folding**: Collapse and expand tasks and notes with Tab key
|
||||||
|
- **Quick Capture**: Press 'c' to quickly capture new TODO items
|
||||||
|
- **Reorder Mode**: Reorganize tasks with shift+up/down arrows
|
||||||
|
|
||||||
|
### Scheduling & Deadlines
|
||||||
|
- **Deadlines**: Set and track task deadlines with visual indicators
|
||||||
|
- **Scheduled Dates**: Schedule tasks for specific dates
|
||||||
|
- **Agenda View**: View upcoming tasks for the next 7 days
|
||||||
|
- **Overdue Highlighting**: Automatically highlights overdue items in red
|
||||||
|
|
||||||
|
### Time Tracking
|
||||||
|
- **Clock In/Out**: Track time spent on tasks with 'i' (clock in) and 'o' (clock out)
|
||||||
|
- **Duration Display**: See current and total time tracked per task
|
||||||
|
- **Effort Estimates**: Set estimated effort (e.g., 8h, 2d, 1w)
|
||||||
|
- **Automatic Logging**: All clock entries are logged in LOGBOOK drawer
|
||||||
|
|
||||||
|
### Notes & Documentation
|
||||||
|
- **Rich Notes**: Add detailed notes to any task with Enter key
|
||||||
|
- **Syntax Highlighting**: Code blocks are automatically highlighted (supports both ```lang and #+BEGIN_SRC formats)
|
||||||
|
- **Markdown Support**: Use markdown-style code blocks in your notes
|
||||||
|
- **Drawer Management**: LOGBOOK and PROPERTIES drawers are automatically filtered in list view
|
||||||
|
|
||||||
|
### Keybindings
|
||||||
|
|
||||||
|
| Key | Action |
|
||||||
|
|-----|--------|
|
||||||
|
| `↑/k`, `↓/j` | Navigate up/down |
|
||||||
|
| `←/h`, `→/l` | Cycle state backward/forward |
|
||||||
|
| `t` or `space` | Cycle TODO state |
|
||||||
|
| `tab` | Fold/unfold item |
|
||||||
|
| `enter` | Edit notes |
|
||||||
|
| `c` | Capture new TODO |
|
||||||
|
| `s` | Add sub-task |
|
||||||
|
| `D` | Delete item (with confirmation) |
|
||||||
|
| `a` | Toggle agenda view |
|
||||||
|
| `i` | Clock in |
|
||||||
|
| `o` | Clock out |
|
||||||
|
| `d` | Set deadline |
|
||||||
|
| `p` | Set priority |
|
||||||
|
| `e` | Set effort |
|
||||||
|
| `r` | Toggle reorder mode |
|
||||||
|
| `shift+↑/↓` | Move item up/down (in reorder mode) |
|
||||||
|
| `ctrl+s` | Save |
|
||||||
|
| `?` | Toggle help |
|
||||||
|
| `q` or `ctrl+c` | Quit |
|
||||||
|
|
||||||
|
### Auto-save
|
||||||
|
Changes are automatically saved when you quit the application.
|
||||||
|
|
||||||
## Screenshots
|
## Screenshots
|
||||||
|
|
||||||
### List view
|
### List view
|
||||||

|

|
||||||
|
|
||||||
## Editing notes
|
### Editing notes
|
||||||

|

|
||||||
|
|
||||||
### Prompts
|
### Prompts
|
||||||

|

|
||||||

|

|
||||||
|
|
||||||
|
## File Format
|
||||||
|
|
||||||
|
The application uses standard Org-mode file format (.org), making it compatible with Emacs Org-mode and other Org-mode tools.
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
MIT
|
||||||
|
|
@ -622,15 +622,15 @@ func (m uiModel) renderItem(item *model.Item, isCursor bool) string {
|
||||||
stateStr := ""
|
stateStr := ""
|
||||||
switch item.State {
|
switch item.State {
|
||||||
case model.StateTODO:
|
case model.StateTODO:
|
||||||
stateStr = todoStyle.Render("[TODO] ")
|
stateStr = todoStyle.Render("[TODO]")
|
||||||
case model.StatePROG:
|
case model.StatePROG:
|
||||||
stateStr = progStyle.Render("[PROG] ")
|
stateStr = progStyle.Render("[PROG]")
|
||||||
case model.StateBLOCK:
|
case model.StateBLOCK:
|
||||||
stateStr = blockStyle.Render("[BLOCK]")
|
stateStr = blockStyle.Render("[BLOCK]")
|
||||||
case model.StateDONE:
|
case model.StateDONE:
|
||||||
stateStr = doneStyle.Render("[DONE] ")
|
stateStr = doneStyle.Render("[DONE]")
|
||||||
default:
|
default:
|
||||||
stateStr = " " // Empty space for alignment
|
stateStr = "" // Empty space for alignment
|
||||||
}
|
}
|
||||||
b.WriteString(stateStr)
|
b.WriteString(stateStr)
|
||||||
b.WriteString(" ")
|
b.WriteString(" ")
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue