Commit Graph
795 Commits
Author SHA1 Message Date
Robby RussellandClaude Opus 5.5 4c184381d0 fix(key-bindings): make numeric keypad work in application mode
We switch the terminal into application keypad mode (smkx) so terminfo
key bindings are valid, but that also makes the numeric keypad send
escape sequences (\eOp..\eOy, \eOM, ...) that were never bound. Keypad
Enter rang the bell instead of running the command.

Map each keypad sequence back to the plain key with `bindkey -s`, so it
behaves exactly like the main keyboard key in emacs, viins and vicmd.

Fixes #13928

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 17:03:38 -07:00
Felix BühlerandGitHub f809d46c10 fix(lib): protect omz_urlencode from global aliases (#14128) 2026-09-28 09:44:06 +02:00
Robby RussellandGitHub 7ce781ea37 perf(appearance): cache the diff and ls capability probes (#14067) 2026-09-18 11:13:45 +02:00
fudianandGitHub def0f255c5 fix(cli): re-resolve zsh at exec time to avoid a stale command hash (#14104)
Signed-off-by: 付典 <fudianchn@gmail.com>
2026-09-18 11:06:03 +02:00
fudianandGitHub 0ee67f0428 fix(cli): fallback to zsh when ZSH_ARGZERO is not abs path (#13922)
Signed-off-by: 付典 <fudianchn@gmail.com>
2026-09-16 10:47:20 +02:00
Robby RussellandGitHub fcf965912c perf(git): fork git less often for the prompt (#14069) 2026-09-14 21:43:51 +02:00
Latif SulistyoandGitHub 1b72d609b4 feat(lib): support for tmux pane title (#11150) 2026-09-14 05:57:08 -07:00
Robby RussellandGitHub be8da5c771 feat(updater): add cooldown option to delay applying updates (#13814)
* feat(updater): add cooldown option to delay applying updates (#13813)

Introduces a new `zstyle ':omz:update' cooldown <days>` setting that limits
the updater to only apply commits that are at least N days old. Defaults to 0
(current behavior — always pull latest).

When cooldown is set, the updater fetches the remote branch and finds the most
recent commit whose committer timestamp is at least N days old, then applies it
via `git merge --ff-only`. If the local copy is already at or past the cooldown
ref, nothing changes.

- tools/upgrade.sh: reads cooldown zstyle, replaces git pull with fetch +
  merge --ff-only when cooldown > 0
- README.md: documents the new setting under "Getting Updates"
- templates/zshrc.zsh-template: adds commented-out cooldown example alongside
  frequency, with rephrased comments to clarify how the two work together

* fix(updater): address cooldown review feedback

Pass cooldown into upgrade.sh as -c, extract the update helpers, and only
prompt when a cooldown-eligible commit would actually move HEAD.

* fix(updater): follow first-parent history for cooldown
2026-09-11 09:24:44 -07:00
e8b1cca662 fix(termsupport): set title correctly on terminals with parameterized tsl (#14052)
Co-authored-by: Fran Rogers <fran@violuma.net>
2026-09-09 17:12:33 +02:00
Robby RussellandGitHub 8e5f198226 perf(spectrum): build the FG and BG tables without a 256-iteration loop (#14073) 2026-09-09 17:03:49 +02:00
8d10cc9488 feat(go): Create go_prompt_info to add Go version to theme prompts (#8924)
* Create go_prompt_info to add go version to prompts

* golang: move go_prompt_info to plugin, guard and quote output

Addresses review feedback: the prompt helper only belongs to Go
developers, so it moves out of lib/ (sourced for every shell) into
plugins/golang/golang.plugin.zsh. Adds a $+commands[go] guard so
users without Go installed don't spawn a process or see a stderr
error on every prompt render, quotes the version output the same
way the rvm/nvm helpers do so a % can't be read as a prompt escape,
and adds the dummy go_prompt_info stub to
lib/prompt_info_functions.zsh for themes that call it when the
plugin isn't loaded.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0193G8TyNqmNnv6v9HsVafGa

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-07 07:49:06 -07:00
Maksym TymoshykandGitHub b5d75fc565 fix(cli): keep completion flag when loading multiple plugins (#14032) 2026-08-30 19:11:30 +02:00
Maksym TymoshykandGitHub 44ce832bbd fix(diagnostics): correct reserved_words array name (#14031) 2026-08-30 19:10:57 +02:00
Morningstar202604andGitHub 146461f7c6 fix(git): force C locale only while matching status regexes (#14006) 2026-08-25 10:26:23 +02:00
zhoufengenandGitHub 898b579cf5 fix(git): avoid illegal byte sequence (#13878) 2026-08-05 13:23:04 +02:00
vladislav dosterandGitHub 81becab1e7 docs: typos (#13846)
Signed-off-by: vladdoster <vladislav.doster@icloud.com>
2026-07-01 10:42:26 +02:00
御风andGitHub 9a67e3b3f5 fix(git): support nounset option (#13816) 2026-06-15 12:08:05 +02:00
278ee100fc fix(git): replace deprecated syntax for percent substitution in prompt (#13705) (#13706)
Co-authored-by: Carlo Sala <carlosalag@protonmail.com>
2026-04-27 14:50:08 +02:00
88659ed193 fix(appearance): ensure arg separation in test-ls-args (#13556)
Co-authored-by: Marc Cornellà <marc@mcornella.com>
2026-02-11 12:31:06 +01:00
bretelloandGitHub 129aeee6bc feat(clipboard): send value to tmux client when copying (#13451) 2025-12-22 13:20:24 +01:00
tDwtpandGitHub f84341c574 fix(git): git_status_prompt should respect spaces in prefixes (#13478) 2025-12-11 15:05:23 +01:00
CopilotGitHubrobbyrussellcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
b52dd1a425 feat: Update OpenSwag domain references to CommitGoods (#13434)
* Initial plan

* Update all OpenSwag domain references to CommitGoods

Co-authored-by: robbyrussell <257+robbyrussell@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: robbyrussell <257+robbyrussell@users.noreply.github.com>
2025-11-19 17:44:11 -08:00
CopilotGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>robbyrussellmcornella
8c5a60644a feat: announce OpenSwag and omz shop command (#13428)
* Update shop URLs from Planet Argon to OpenSwag and add omz shop command

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: robbyrussell <257+robbyrussell@users.noreply.github.com>
Co-authored-by: mcornella <1441704+mcornella@users.noreply.github.com>
2025-11-15 21:00:26 +01:00
Alexey TrofimenkoandGitHub 99017b8eac fix(key-bindings): ensure <Esc-l> works if line is not empty (#13391) 2025-10-23 11:29:46 -07:00
Marc CornellàandGitHub c87eb79140 feat(cli): only allow omz pr test on PRs with testers needed label (#13238) 2025-09-19 15:58:21 +02:00
Carlo Sala 92a03105ac docs(key-bindings): clarify comment
Closes #13265
2025-08-16 21:26:22 +02:00
jishudashenandGitHub e3e468d138 chore: fix typos (#13219) 2025-07-21 18:39:25 +02:00
Kevin De KeyserandGitHub 2ac69955e8 fix(termsupport): ensure non-error return code (#13217) 2025-07-21 11:11:35 +02:00
James LangleyandGitHub 788eaa5930 fix(functions): escape especial chars in WSL (#13158) 2025-06-08 10:25:23 +02:00
G'lek TarsszaandGitHub 095ac3ca8f feat(cli): add --enabled flag to omz plugin list (#13128) 2025-05-24 12:44:24 +02:00
Ilia BurtsevandGitHub 13c702964c fix(async): ensure git_prompt_status can be registered (#13134) 2025-05-24 12:39:17 +02:00
40c2a72e03 fix(history): handle HIST_STAMPS with whitespace in timestamp format (#13099)
Co-authored-by: Kirill Fedorov <kfedorov@ibsys.ru>
2025-05-22 11:23:50 +02:00
881c8b78d3 feat(termsupport): add WezTerm support (#13121)
Co-authored-by: Carlo Sala <carlosalag@protonmail.com>
2025-05-18 19:14:44 +02:00
Carlo SalaandGitHub f81259fb34 fix(cli): support noexec environments (#13042)
Closes #13032
2025-03-29 12:55:20 +01:00
Carlo Sala 5eaebdf0fe fix(termsupport): ensure ohmyzsh can run with set -eu
Closes #12870
2025-03-20 20:02:34 +01:00
85c4941492 fix(cli)!: remove harmful --unattended flag for omz update (#12935)
Co-authored-by: Carlo Sala <carlosalag@protonmail.com>
2025-01-23 21:06:00 +01:00
Carlo Sala 276e540eed fix(cli): ensure ksharrays is unset
Closes #12900
2025-01-10 14:11:33 +01:00
Bin ChangandGitHub ccbe504f22 chore: fix some typos (#12818) 2024-11-21 09:01:48 +01:00
Carlo Sala 2a109d30af feat(git): add escape hatch to enable async prompt 2024-10-08 20:41:58 +02:00
6a10a4d6a3 feat(grep): exclude Python virtualenv from grep (#12685)
The convention to use `.venv` or `venv` directories for Python virtualenvs is widespread. 
This directory is huge and gives very little value when grepping in a source code directory.

Co-authored-by: Marc Cornellà <marc@mcornella.com>
2024-10-08 20:29:30 +02:00
Marc Cornellà 767c927a6d fix(cli): add plugins with indentation in omz plugin enable 2024-10-08 19:32:04 +02:00
mnvandGitHub 00b9b62385 refactor(bzr): simplify and improve code (#12716) 2024-10-02 15:30:32 +02:00
Marc Cornellà f4423ebd09 feat(cli): style plugin README in omz plugin info 2024-10-01 10:01:07 +02:00
Carlo Sala 367e9381df chore(git): fix typo 2024-09-23 17:32:44 +02:00
Carlo Sala 99e2c31484 feat(git): add git_previous_branch function
Closes #12538
2024-09-18 21:05:45 +02:00
Erik TeichmannandGitHub 9bcafe1c27 feat(functions): add takezip (#12670) 2024-09-18 20:26:38 +02:00
Saravana JandGitHub 33ac2ee30f fix(git): update prefix map for modified files (#12674) 2024-09-15 08:17:43 +02:00
robertoacevesandGitHub efe21261d0 fix(grep): remove duplicate options (#12639) 2024-08-27 08:13:47 +02:00
Marc Cornellà f70e6916a1 fix(lib): turn off rematchpcre option in omz_urlencode (#12388)
Fixes #12388
2024-07-27 14:29:08 +02:00
70cfff448d feat(conda-env): add plugin for conda prompt display (#10619)
Co-authored-by: Jeonguk Choi <91456421+devj121@users.noreply.github.com>
2024-07-15 18:56:44 +02:00