Minimal Neovim plugin that lets you start short timers from anywhere inside the editor, pick predefined durations from a centered floating window, and check how much time remains without leaving your buffer.
- Floating picker that appears in the middle of the screen with configurable durations (
5,10,30,45,60minutes by default). - Kalan süre popup (
TimerRemaining) with mm:ss readout. - Optional notifications when the timer starts or finishes.
- Fully written in Lua, no external dependencies beyond a recent Neovim (0.8+) with
vim.uiand floating-window support.
{
"temelgunaydin/timer.nvim",
config = function()
require("timer").setup({
options = { 5, 10, 30, 45, 60 }, -- customize durations
open_keymap = "<leader>tt", -- open picker
remaining_keymap = "<leader>tr", -- show remaining time popup
})
end,
}use({
"temelgunaydin/timer.nvim",
config = function()
require("timer").setup()
end,
}):TimerPickor theopen_keymap(default<leader>tt) opens the centered picker. Press1,2,3, … or use<CR>to start a timer.:TimerRemainingorremaining_keymap(default<leader>tr) shows the remaining time popup; close it withq,<Esc>, or<CR>.- Notifications announce when a timer starts and finishes.
| Option | Type | Default | Description |
|---|---|---|---|
options |
table | {5,10,30,45,60} |
List of minute values shown in the picker. |
open_keymap |
string | "<leader>tt" |
Normal-mode mapping to open the picker. |
remaining_keymap |
string | "<leader>tr" |
Mapping to show the remaining time popup. |
keymap |
string? | nil |
Backwards-compatible alias for open_keymap. |
Set any value to false/nil to skip creating that keymap.
:TimerPick– open the duration picker.:TimerRemaining– show remaining time for the active timer.
Bug reports and PRs are welcome.
MIT © Temel Gunaydin

