sponsor Vim development Vim logo Vim Book Ad

vim-skuld : A pomodoro timer that runs inside Vim.

 script karma  Rating 3/3, Downloaded by 1507  Comments, bugs, improvements  Vim wiki

created by
Kay Zheng
script type

Skuld is a [pomodoro timer][1] that runs inside Vim. It can help you track
your tasks in an simple (or stupid) way.

![Skuld Screenshot](https://raw.github.com/l04m33/img/master/vim-skuld-screenshot.png)

Please send pull requests to https://github.com/l04m33/vim-skuld

[1]: http://en.wikipedia.org/wiki/Pomodoro_technique


Skuld depends on `+python` or `+python3`, as well as `+clientserver`.
Nothing else is needed.


[Vundle][2] is recommended.

[2]: https://github.com/gmarik/vundle


After a successful installation, these commands are available:

- `SkuldStartTimer <task_id>`   : Start the pomodoro timer
- `SkuldStopTimer`              : Stop the pomodoro timer
- `SkuldStartTask <task_id>`    : Switch current task. The timer will be started if it's stopped
- `SkuldSwitchTask <task_id>`   : Switch current task
- `SkuldGetState`               : Display current timer state
- `SkuldBufOpen`                : Open the buffer containing the task list (`[Skuld Tasks]`)
- `SkuldTaskUpdate`             : Update the internal task list according to `[Skuld Tasks]` buffer

`SkuldBufOpen` is mapped to `<leader>sb` by default. You can open a scratch
buffer called `[Skuld Tasks]` using this command, and then write down your
tasks in that buffer, **one task per line**. Whenever you leave insert mode,
or leave the `[Skuld Tasks]` buffer, your tasks will be set automatically.
Each task will be assigned an ID. The IDs start from **zero**.

Once the tasks are set, you can press `<cr>` on a task to start the timer.
You don't need to keep the `[Skuld Tasks]` buffer open while the timer is

When the pomodoro timer times out, there will be a Vim message signifying
the change of timer state. You can start working or have a break
accordingly. Skuld will append a pomodoro completion symbol, which defaults
to `*`, after the current task, when a working period ends.

If you invoked `SkuldStopTimer` during a working period, a squash symbol,
which defaults to `x`, will be appended instead.

You can edit `[Skuld Tasks]` buffer while the timer is running. Edited
tasks will be synchronized automatically once you leave insert mode or
leave the buffer.


    nnoremap <leader>sb :SkuldBufOpen<cr>
    nnoremap <leader>ss :SkuldGetState<cr>


These variables can be set in you `.vimrc` to override the defaults:

    " Pomodoro completion symbol
    let g:skuld_progress_symbol = '*'

    " Pomodoro squashed symbol
    let g:skuld_squash_symbol = 'x'

    " Pomodoro working period (in minutes)
    let g:skuld_work_period = 25

    " Pomodoro resting period (in minutes)
    let g:skuld_rest_period = 5

    " Pomodoro long resting period (in minutes)
    let g:skuld_long_rest_period = 15

    " Max working streak before long resting
    let g:skuld_max_work_streak = 4

    " Notification command
    let g:skuld_notify_cmd = 'notify-send'

    " Mapping for opening the task buffer
    let g:skuld_buffer_map = '<leader>sb'

    " Mapping for displaying the current state
    let g:skuld_state_map = '<leader>ss'

    " Default line width for the task buffer
    let g:skuld_line_width = 29


This Vim plugin is licensed under the terms of [the MIT license][3].

[3]: http://l04m33.mit-license.org/

install details

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
vim-skuld-0.2.3.tar.bz2 0.2.3 2013-12-30 7.0 Kay Zheng - The default key mappings can now be overridden by setting global variables.
- The default line width for the task buffer is now adjustable (see README.markdown).
vim-skuld-0.2.2.tar.bz2 0.2.2 2013-12-23 7.0 Kay Zheng - Use the 'gutter' area to show current task.
- Add convenient mapping for switching tasks.
vim-skuld-0.2.1.tar.bz2 0.2.1 2013-12-18 7.0 Kay Zheng - Fix task highlighting
- Add screenshot
vim-skuld-0.2.0.tar.bz2 0.2.0 2013-12-18 7.0 Kay Zheng - Use a closure to prevent name leaks.
- Add installation instruction in README.
vim-skuld-0.1.0.tar.bz2 0.1.0 2013-12-17 7.0 Kay Zheng Initial upload
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.