Tmux Pomodoro Plus
Incorporate the Pomodoro technique into your tmux setup. Forked from Tmux Pomodoro
Please subscribe to this issue to be notified of any breaking changes to the plugin
โจ Features
- Toggle a Pomodoro and see the countdown and the break in the status bar
- Skip, pause and resume a Pomodoro/break at any point
- Customise the Pomodoro duration, break times and intervals
- Restart your Pomodoros to automatically or be prompted
- Desktop alerts for Pomodoros and breaks (MacOS and Linux only)
- Custom keybindings
๐ท Screenshots
Pomodoro counting down in real-time:
๐ฆ Installation
- Using TPM, add the following line to your
~/.tmux.conf
file:
set -g @plugin 'olimorris/tmux-pomodoro-plus'
Note: The above line should be before
run '~/.tmux/plugins/tpm/tpm'
- Then press
tmux-prefix
+ I (capital i, as in Install) to fetch the plugin as per the TPM installation instructions
๐ Usage
Default keybindings
<tmux-prefix> p
to toggle between starting/pausing a Pomodoro/break<tmux-prefix> P
to cancel a Pomodoro/break<tmux-prefix> _
to skip a Pomodoro/break<tmux-prefix> C-p
to open the Pomodoro timer menu<tmux-prefix> M-p
to set a custom Pomodoro timer
The Pomodoro timer menu and custom Pomodoro input are always <ctrl>/<alt> + [your start Pomodoro key]
.
Status bar
To incorporate into your status bar:
set -g status-right "#{pomodoro_status}"
๐ง Configuration
Note: On Linux, notifications depend on
notify-send/libnotify-bin
The default configuration:
set -g @pomodoro_toggle 'p' # Start/pause a Pomodoro/break
set -g @pomodoro_cancel 'P' # Cancel the current session
set -g @pomodoro_skip '_' # Skip a Pomodoro/break
set -g @pomodoro_mins 25 # The duration of the Pomodoro
set -g @pomodoro_break_mins 5 # The duration of the break after the Pomodoro completes
set -g @pomodoro_intervals 4 # The number of intervals before a longer break is started
set -g @pomodoro_long_break_mins 25 # The duration of the long break
set -g @pomodoro_repeat 'off' # Automatically repeat the Pomodoros?
set -g @pomodoro_on " ๐
" # The formatted output when the Pomodoro is running
set -g @pomodoro_complete " โ๏ธ" # The formatted output when the break is running
set -g @pomodoro_pause " โธ๏ธ" # The formatted output when the Pomodoro/break is paused
set -g @pomodoro_prompt_break " โฒ๏ธ break?" # The formatted output when waiting to start a break
set -g @pomodoro_prompt_pomodoro " โฑ๏ธ start?" # The formatted output when waiting to start a Pomodoro
set -g @pomodoro_menu_position "R" # The location of the menu relative to the screen
set -g @pomodoro_sound 'off' # Sound for desktop notifications (Run `ls /System/Library/Sounds` for a list of sounds to use on Mac)
set -g @pomodoro_notifications 'off' # Enable desktop notifications from your terminal
set -g @pomodoro_granularity 'off' # Enables MM:SS (ex: 00:10) format instead of the default (ex: 1m)
Using the menu
It's possible to configure the timings from built-in menus within the app:
Customising the status line
The output from the plugin can be customised to fit in with your statusline:
set -g @pomodoro_on "#[fg=$text_red]๐
"
set -g @pomodoro_complete "#[fg=$text_green]๐
"
set -g @pomodoro_pause "#[fg=$color_yellow]๐
"
set -g @pomodoro_prompt_break "#[fg=$color_green]๐ค ? "
set -g @pomodoro_prompt_pomodoro "#[fg=$color_gray]๐ค ? "
The current and total number of intervals can also be displayed:
set -g @pomodoro_show_intervals "#[fg=$color_gray][%s/%s]"
Note: If you provide just 1
%s
then the current interval count will be displayed only
A real-time countdown can be also be displayed:
set -g @pomodoro_granularity 'on'
set -g status-interval 1 # Refresh the status line every second
๐ Credits
- Wladyslaw Fedorov - For the squashed tomato image