unfog.vim
unfog.vim copied to clipboard
⏱ Vim plugin for Unfog CLI task & time manager.
⏱ Unfog.vim
Vim plugin for Unfog CLI task & time manager.

Table of contents
- Installation
- Usage
- Add
- Info
- Edit
- Toggle
- Done
- Context
- Worktime
- Mappings
- Contributing
- Changelog
- Credits
Installation
First you need to install the unfog CLI:
curl -sSL https://raw.githubusercontent.com/soywod/unfog/master/install.sh | sh
Then you can install this plugin with your favorite plugin manager. For eg:
with vim-plug, add to your .vimrc:
Plug "soywod/unfog.vim"
Then:
:PlugInstall
Usage
It is recommanded to first read the Unfog CLI documentation to understand the concept.
To list tasks:
:Unfog
Then you can manage tasks using Vim mapping. The table will automatically
readjust on buffer save (:w). Also have a look at the mappings
section for special actions.
Add

Info
Default mapping: K (Shift-k).

Edit

Toggle
Default mapping: <CR> (Enter).

Done

Context
Default mapping: gc (Go to Context).

Worktime
Default mapping: gw (Go to Worktime).

Mappings
Here the default mappings:
| Function | Mapping |
|---|---|
| List done tasks | gd |
| List deleted tasks | gD |
| Toggle task | <CR> |
| Show task infos | K |
| Set context | gc |
| Show worktime | gw |
| Jump to the next cell | <C-n> |
| Jump to the prev cell | <C-p> |
| Delete in cell | dic |
| Change in cell | cic |
| Visual in cell | vic |
You can customize them:
nmap gd <plug>(unfog-list-done)
nmap gD <plug>(unfog-list-deleted)
nmap <cr> <plug>(unfog-toggle)
nmap K <plug>(unfog-info)
nmap gc <plug>(unfog-context)
nmap gw <plug>(unfog-worktime)
nmap <c-n> <plug>(unfog-next-cell)
nmap <c-p> <plug>(unfog-prev-cell)
nmap dic <plug>(unfog-delete-in-cell)
nmap cic <plug>(unfog-change-in-cell)
nmap vic <plug>(unfog-visual-in-cell)
Contributing
Git commit messages follow the Angular Convention, but contain only a subject.
Use imperative, present tense: “change” not “changed” nor “changes”
Don't capitalize first letter
No dot (.) at the end
Code should be as clean as possible, variables and functions use the camel case
convention. A line should never contain more than 80 characters.
Tests should be added for each new functionality. Be sure to run tests before proposing a pull request.
Credits
- Taskwarrior, a task manager
- Timewarrior, a time tracker
- vim-taskwarrior, a Taskwarrior wrapper for vim
- vimwiki, for the idea of managing tasks inside a buffer
- Kronos, the Unfog predecessor