• Stars
    star
    138
  • Rank 264,508 (Top 6 %)
  • Language
    Shell
  • License
    MIT License
  • Created over 3 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

๐Ÿ… Incorporate the Pomodoro technique into your tmux workflow

Tmux Pomodoro Plus

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: Image

Pomodoro on a break: Image

Pomodoro counting down in real-time: Image

Pomodoro timer menu: Image

๐Ÿ“ฆ Installation

  1. 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'

  1. 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

๐Ÿ“ƒ License

MIT