Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/strang1ato/tibivi
Terminal based, vim-like time managment tool
https://github.com/strang1ato/tibivi
command-line go golang terminal timeblocking timemanagement vi vim
Last synced: about 1 month ago
JSON representation
Terminal based, vim-like time managment tool
- Host: GitHub
- URL: https://github.com/strang1ato/tibivi
- Owner: strang1ato
- License: mit
- Created: 2020-04-19T17:54:31.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2023-08-01T15:00:45.000Z (over 1 year ago)
- Last Synced: 2024-11-02T18:02:44.201Z (about 1 month ago)
- Topics: command-line, go, golang, terminal, timeblocking, timemanagement, vi, vim
- Language: Go
- Homepage:
- Size: 4.89 MB
- Stars: 37
- Watchers: 2
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-browserless - Tibivi - Terminal based, vim-like time managment tool (Calendar and scheduling)
README
## Advantages of tibivi over other time blocking tools
- ### Easy-to-use
If you know basic vi/vim features you already know how to use tibivi
- ### Speed
Tibivi works almost instantly because of being terminal based and being written in fast [Go programming language](https://golang.org/)
- ### All data is stored human-readable text files instead of database
All data is stored in text files in `$HOME/.tibivi/` directory, which means that you can modify your schedule in any text editor
Example content of datafile:
```
14:00-17:00 Contribute to FOSS 💻
17:00-18:00 Play chess ♟️
18:00-19:00 Play some computer game 🎮
```- ### Use emoji instead of images
In tibivi you use emoji instead of images in order to arrange any time block
## Installation
### From source
Make sure you have Go installed and `$GOPATH/bin` added to `$PATH`, then execute:
```bash
go install github.com/strang1ato/tibivi@latest
```### Binary
Download latest binary from [releases](https://github.com/strang1ato/tibivi/releases)
then make file executable by for example:
```bash
chmod +x
```and move tibivi binary to directory in `$PATH`
## Keybindings
### Day Schedule
| Keybinding | Action |
| ----------------------------|----------------------------------------|
| h l | Navigate in selection of day schedules |
| j k | Scroll in day schedule |
| f Esc | Go to week schedule |### Week Schedule
| Keybinding | Action |
| --------------------------|----------------------------------------|
| h l | Navigate in selection of day schedules |
| j k | Scroll in day schedule |
| f | Focus on selected day |### Bar
| Keybinding | Action |
| -------------------|--------------|
| : | Focus on bar |
| Enter | Run command |
| Esc | Exit bar |### Menu
| Keybinding | Action |
| --------------------------|-----------------------------------|
| m | Open add/modify/remove block menu |
| j k | Navigate in menu |
| Enter | Run selected menu option |
| Esc | Exit menu |### Add/modify block form
| Keybinding | Action |
| ----------------------------------------------------|--------------------------------------------------------------|
| Esc | Switch to normal mode or exit form if in normal mode already |
| i | Switch to insert mode |
| h j k l | Navigate in form |
| Enter | Submit form or go to next field |### Block selection
| Keybinding | Action |
| --------------------------|------------------------------|
| j k | Navigate in block selection |
| Enter | Run specified in menu action |
| Esc | Exit block selection |## Commands
| Command | Action |
| --------|---------------------------------------|
| :w | Write changes to datafiles |
| :q | Exit tibivi |
| :q! | Exit tibivi and ignore changes |
| :wq | Write and exit tibivi |
| :day | Returns in bar currently selected day |