A Neovim plugin written (mostly) in Lua that implements the Pomodoro technique.
TODO: Add new nvim-notify features + screenshots
When a timer goes off, a menu is displayed to prompt you to take a break (or start the next pomodoro) with the option to stop the Pomodoro session.
When these prompts are displayed, you can also press b
to take a break
(if applicable), p
to start the next pomodoro (if applicable), or q
to stop
the Pomodoro session.
- Neovim >= 0.5.0
- A patched font
- MunifTanjim/nui.nvim
Install the plugin with your preferred package manager.
use {
'drwhattheheck/pomodoro.nvim',
requires = 'MunifTanjim/nui.nvim'
}
You can configure the length of the pomodoro, the length of a short break, the length of a long break, and the number of pomodoros that must be completed in order to take a longer break. The values shown below are the defaults.
TODO: Add notify color configuration details TODO: Add notify warning options
use {
'drwhatheheck/pomodoro.nvim',
requires = 'MunifTanjim/nui.nvim',
config = function()
require('pomodoro').setup({
time_work = 25,
time_break_short = 5,
time_break_long = 20,
timers_to_long_break = 4
})
end
}
let g:pomodoro_time_work = 25
let g:pomodoro_time_break_short = 5
let g:pomodoro_time_break_long = 20
let g:pomodoro_timers_to_long_break = 4
TODO: Add optional keymappings
Three Ex commands are provided.
Command | Description |
---|---|
:PomodoroStart | Starts the timer. |
:PomodoroStatus | Displays the status of the timer in the message area. |
:PomodoroStop | Stops the Pomodoro session. |
For hoob3rt/lualine.nvim, you can do something like:
require('lualine').setup({
sections = {
lualine_c = { 'filename', require('pomodoro').statusline() }
}
})
TODO: Investigate integrating tasks
- mnick/vim-pomodoro and adelarsq/vim-pomodoro are Vimscript plugins similar to this one with a few more bells and whistles.
- rbong/pimodoro is a Vimscript plugin similar to this one that encourages you to track your tasks in another file.
- ukui00a/denops-pomodoro.vim is written in Typescript and provides desktop notifictions.
- mkropat/vim-tt allows you to implement your own task tracking method.