summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2023-01-25fix(theme-and-appearance): fix `diff` completion in macOSCarlo Sala
Closes #11416 Closes #11454
2023-01-20feat(functions/take): make `.tgz` behave as `.tar.gz` (#11446)Joan Marcè i Igual
2023-01-15fix(clipboard): move wsl detection to higher priority (#11440)Carlo Sala
Closes #8827
2023-01-12Revert "fix(lib): send carriage return after `title` to fix #11314 (#11315)"Marc Cornellà
This reverts commit 3dd83a22a160249a71631a51490fd3b89d1b3975. See https://github.com/ohmyzsh/ohmyzsh/issues/11314#issuecomment-1379492472
2023-01-11fix(lib): send carriage return after `title` to fix #11314 (#11315)Lawton Nichols
Window and tab titles are changed by emitting an unprintable escape sequence to the terminal. These escape sequences do not play nicely with the TAB character on multiple terminal emulators--they create un-deletable characters on the first line after command execution. Sending "\r" after changing the window and tab titles allows all characters on the first line to be deleted. Fixes #11314
2022-11-08feat(git): display tag in git-prompt when possible (#11318)Banst
Co-authored-by: Marc Cornellà <hello@mcornella.com>
2022-10-18fix(cli): avoid using `column` (#11271)Carlo
2022-10-12fix(cli): change unrecognized `\s` in BSD awk (#11146)Marc Cornellà
In BSD awk, \s is not a valid sequence interchangeable with "space or tab characters" as it is in GNU awk. This fix uses [ \t] instead, which is all the possibilities that we need to contemplate when reading the .zshrc file. Fixes #11146
2022-10-03chore(lib): update deprecated grep aliases (#11161)Nadhem
2022-08-02fix(cli): make `omz` honour symlinks when changing `.zshrc` (#11082)Ben Walton
2022-07-12chore(lib): only create `afind` alias if `ack` is installed (#11017)hellzbellz
2022-07-12fix(lib): prefer `xsel` over `xclip` in clipboard.zshMarc Cornellà
See #10925
2022-07-12feat(lib): wait for input to copy to the clipboard (#10953)Marc Cornellà
2022-07-12fix(lib): don't attach to tty in `wl-copy` and `xclip` (#10953)Marc Cornellà
Fixes #10925
2022-05-15fix(lib): encode all arguments besides the first in `omz_urlencode`Marc Cornellà
Fixes https://github.com/ohmyzsh/ohmyzsh/commit/140c977a3d82410f48c198596de193d2d6b7b9b5#commitcomment-73688165
2022-05-12Revert "fix(lib): don't return clean with `hide-dirty=1` in ↵Marc Cornellà
`parse_git_dirty`" (#10927)
2022-05-12fix(lib): don't return clean with `hide-dirty=1` in `parse_git_dirty` (#10897)Will LE
2022-04-14refactor(cli): fix `commit.gpgsign` test in `omz pr test`Marc Cornellà
2022-04-14fix(cli): fix `commit.gpgsign` test in `omz pr test`Marc Cornellà
Since `set -e` is enabled, when `commit.gpgsign` is not set the `git config` command would show an error. Given that it is technically not ignored, the subshell would exit. With this change, the `commit.gpgsign` setting is properly tested by doing the fallback test if the command fails, so no exit status code ends up quiting the subshell.
2022-03-31fix(cli): turn of `commit.gpgsign` compatibly with git v1.7.1 (#10679)Carlo Sala
Co-authored-by: Marc Cornellà <hello@mcornella.com>
2022-02-25feat(lib): support auto title in foot terminal (#10735)Markus (Vock) Arians
Co-authored-by: Markus Arians <markus.arians@andrena.de>
2022-02-21fix(vcs_info): don't patch VCS_INFO_formats if not foundMarc Cornellà
2022-02-21fix(vcs_info): quote % in relevant fields on all current Zsh releasesMarc Cornellà
2022-02-13fix: apply workaround patch for vcs_info (CVE-2021-45444)Marc Cornellà
This lib function applies a patch to the VCS_INFO_formats function in zsh versions from v5.0.3 until v5.8, which don't quote % chars in some arguments received. Normally that just means that some % characters in these strings (branch names, directories, etc.) will be incorrectly parsed as formatting sequences. With CVE-2021-45444, however, this means that one of these strings from a malicious source (e.g. a malicious git repository) can trigger command injection and run arbitrary code in the user's machine when visiting such git repository. Zsh 5.8.1 fixes this vulnerability [1], but older vcs_info setups still need a workaround such as this one to patch the vulnerability. [1] https://github.com/zsh-users/zsh/commit/c3ea1e5d52eff8b7b172fa8c1ccc3462b43b2790
2022-02-10fix(cli): disable GPG signing in `omz pr test` to avoid key prompt (#10677)Carlo Sala
2022-02-02fix(cli): allow `omz` commands to be used in a script (#10645)Marc Cornellà
The commands `omz plugin {enable,disable}` and `omz theme set` automatically reload the zsh session on success. With this change, the CLI checks whether the commands are run in an interactive session before reloading the zsh session. This change also conditionally sets the completion function for `omz` so that it's not done in a non-interactive session.
2022-01-24fix(cli): make sure to run `zsh` command if an alias exists (#9737)Marc Cornellà
Fixes #9737
2022-01-22fix: do not call chpwd hooks in subshellsMarc Cornellà
2022-01-17refactor(cli): use self-referencing in subcommand functionsMarc Cornellà
2022-01-13fix: get branch name first in `omz version` and changelogMarc Cornellà
2022-01-09fix(cli): follow symlinks in plugin or theme completionsMarc Cornellà
2022-01-03fix(lib): quote % in `nvm_prompt_info`Marc Cornellà
2022-01-03fix(lib): quote % in `git_remote_status`Marc Cornellà
2021-12-21fix(cli): respect `ZDOTDIR` in plugin/theme change commands (#10520)Marc Cornellà
Fixes #10520
2021-12-16fix(cli): fix plugin and theme suggestions in completion for older zsh versionsMarc Cornellà
2021-12-13fix: quote % characters in ruby prompt info functionsMarc Cornellà
2021-12-13fix(lib): %-quote git prompt functionsMarc Cornellà
2021-11-30feat(cli): add `omz version` commandMarc Cornellà
2021-11-25fix(lib): don't error if `INSIDE_EMACS` is not defined (#10443)Paul Scott
2021-11-11fix(lib): fix potential command injection in `title` and `spectrum` functionsMarc Cornellà
The `title` function unsafely prints its input without sanitization, which if used with custom user code that calls it, it could trigger command injection. The `spectrum_ls` and `spectrum_bls` could similarly be exploited if a variable is changed in the user's shell environment with a carefully crafted value. This is highly unlikely to occur (and if possible, other methods would be used instead), but with this change the exploit of these two functions is now impossible.
2021-11-11fix(lib): fix `omz_urldecode` unsafe eval bugMarc Cornellà
The `omz_urldecode` function uses an eval to decode the input which can be exploited to inject commands. This is used only in the svn plugin and it requires a complex process to exploit, so it is highly unlikely to have been used by an attacker.
2021-11-10fix(cli): avoid `git -C` for compatibility with git < v1.8.5 (#10404)Marc Cornellà
2021-11-09fix(cli): fix check for completion files in `omz plugin load`Marc Cornellà
2021-11-09style: use `-n` flag in `head` and `tail` commands (#10391)Kevin Burke
Co-authored-by: Marc Cornellà <hello@mcornella.com>
2021-11-02fix(lib): fix `1` alias to `cd` to directory 1 in stack (#10370)Richard Mitchell
2021-10-25fix(cli): exit `omz update` with correct error code (#10342)Sina Tak Tehrani
2021-10-10fix(lib): fix `diff --color` argument check for BSD systems (#10269)michael-yuji
2021-10-09fix(lib): fix status exit code check in `git_prompt_status` (#10275)Pooya Vahidi
2021-10-05fix(cli): fix zsh array syntax for szh 5.0.2Marc Cornellà
2021-10-04feat(cli)!: add `omz reload` command and deprecate `zsh_reload` plugin (#9078)Monson Shao
BREAKING CHANGE: the `zsh_reload` plugin is deprecated. Instead of using its `src` function, use `omz reload` or `exec zsh` to reload zsh after making changes to your `.zshrc` file. Closes #9078