Compare commits

...

38 Commits

Author SHA1 Message Date
Tanzim Hossain Romel
92aed2e936 feat(extract): add unar as fallback for RAR extraction (#13472)
Add unar as a fallback when unrar is not available for extracting
RAR files. This addresses the issue where unrar has been removed
from Homebrew due to licensing issues.

The extraction now:
- Prefers unrar if available (backward compatible)
- Falls back to unar if unrar is not found
- Shows helpful error message if neither tool is installed
2025-12-09 20:14:31 +01:00
Mohaiminus Sakib
72acd2ca90 feat(uv): add more useful aliases (#13462)
Co-authored-by: Mohaiminus Sakib <roddur093@gmail.com>
Co-authored-by: Marc Cornellà <marc@mcornella.com>
2025-12-08 16:57:50 +01:00
dependabot[bot]
ddec79ad43 chore(deps): bump actions/checkout from 6.0.0 to 6.0.1 (#13468)
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.0 to 6.0.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](1af3b93b68...8e8c483db8)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-07 18:39:14 +01:00
dependabot[bot]
0ebeae78d0 chore(deps): bump actions/create-github-app-token from 2.2.0 to 2.2.1 (#13470)
Bumps [actions/create-github-app-token](https://github.com/actions/create-github-app-token) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](7e473efe3c...29824e69f5)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: 2.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-07 18:38:44 +01:00
dependabot[bot]
3b66f643e4 chore(deps): bump step-security/harden-runner from 2.13.2 to 2.13.3 (#13471)
Bumps [step-security/harden-runner](https://github.com/step-security/harden-runner) from 2.13.2 to 2.13.3.
- [Release notes](https://github.com/step-security/harden-runner/releases)
- [Commits](95d9a5deda...df199fb7be)

---
updated-dependencies:
- dependency-name: step-security/harden-runner
  dependency-version: 2.13.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-07 18:38:26 +01:00
dependabot[bot]
953f526dea chore(deps): bump github/codeql-action from 4.31.5 to 4.31.7 (#13469)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.31.5 to 4.31.7.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](fdbfb4d275...cf1bb45a27)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.31.7
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-07 18:38:05 +01:00
dependabot[bot]
1b4497fc8f chore(deps): bump urllib3 in /.github/workflows/dependencies (#13464)
Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.5.0 to 2.6.0.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.0)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-version: 2.6.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-12-06 09:06:29 +01:00
Cyril Plisko
a98a9f7122 feat(jj): add jj aliases for common workflows (#13179)
- jj bookmark
    Aliases for bookmark subcommands
- jj git push
    Aliases for popular push flags
- jj new "trunk()"
- jj rebase -d "trunk()"
- jj status
2025-12-05 12:00:56 +01:00
benzlokzik
5f7f419759 feat(uv): add alias for pinning Python version (#12914) 2025-12-05 08:51:45 +01:00
Marc Cornellà
e9fc134236 ci(dependencies): update job permissions, change commits to chore (#13457) 2025-12-01 11:22:14 +01:00
Marc Cornellà
977c4f93a6 refactor(rbfu)!: remove deprecated rbfu plugin
BREAKING CHANGE: `rbfu`, the tool to manage Ruby versions, has long
been deprecated (2013-02-05). The plugin has been removed. If you
were still using it, consider using alternative Ruby version
managers: https://www.jetbrains.com/help/ruby/ruby-version-managers.html
2025-12-01 11:21:13 +01:00
Marc Cornellà
ee30bc535a refactor(fig)!: remove archived fig plugin
BREAKING CHANGE: the fig plugin has been removed. `fig` was sunset
on September 1, 2024. Having this plugin no longer makes sense.
See https://fig.io/ for more information.
2025-12-01 11:21:13 +01:00
Carlo Sala
ca5c467db1 fix(dependencies): only open PR if there are relevant changes (#13454)
Fixes cases like #13453
2025-12-01 09:59:09 +01:00
dependabot[bot]
a449c0247d chore(deps): bump actions/setup-python from 6.0.0 to 6.1.0 (#13455)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6.0.0 to 6.1.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](e797f83bcb...83679a892e)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-30 16:29:07 +01:00
dependabot[bot]
343c5a83cb chore(deps): bump github/codeql-action from 4.31.4 to 4.31.5 (#13456)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.31.4 to 4.31.5.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](e12f017898...fdbfb4d275)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.31.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-30 16:28:47 +01:00
dependabot[bot]
beadd56dd7 chore(deps): bump actions/create-github-app-token from 2.1.4 to 2.2.0 (#13440)
Bumps [actions/create-github-app-token](https://github.com/actions/create-github-app-token) from 2.1.4 to 2.2.0.
- [Release notes](https://github.com/actions/create-github-app-token/releases)
- [Commits](6701853927...7e473efe3c)

---
updated-dependencies:
- dependency-name: actions/create-github-app-token
  dependency-version: 2.2.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-23 22:37:35 +01:00
dependabot[bot]
0116e7a5af chore(deps): bump github/codeql-action from 4.31.3 to 4.31.4 (#13439)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.31.3 to 4.31.4.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](014f16e7ab...e12f017898)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.31.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-23 22:36:07 +01:00
dependabot[bot]
441299ca77 chore(deps): bump actions/checkout from 5.0.0 to 6.0.0 (#13438)
Bumps [actions/checkout](https://github.com/actions/checkout) from 5.0.0 to 6.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](08c6903cd8...1af3b93b68)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-23 22:35:53 +01:00
Marc Cornellà
fc2d0f8848 chore: add OpenSSF Best Practices badge (#13443) 2025-11-23 20:50:17 +01:00
Firas Bouzguenda
b04e01d418 feat(kubectl): add aliases for kubectl rollout restart (#12883)
Co-authored-by: Marc Cornellà <marc@mcornella.com>
2025-11-22 18:31:03 +01:00
StavShukrunRise
15bcada010 feat(pulumi): add plugin for Pulumi CLI (#13041)
Co-authored-by: Marc Cornellà <marc@mcornella.com>
2025-11-22 18:11:40 +01:00
Copilot
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
dependabot[bot]
8a4d6fc0a2 chore(deps): bump github/codeql-action from 4.31.2 to 4.31.3 (#13430)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.31.2 to 4.31.3.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](0499de31b9...014f16e7ab)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.31.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-16 09:09:09 -03:00
dependabot[bot]
73d79fe137 chore(deps): bump certifi in /.github/workflows/dependencies (#13431)
Bumps [certifi](https://github.com/certifi/python-certifi) from 2025.10.5 to 2025.11.12.
- [Commits](https://github.com/certifi/python-certifi/compare/2025.10.05...2025.11.12)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2025.11.12
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-16 09:08:43 -03:00
Copilot
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
Carlo Sala
9d93dfaa60 fix(keychain): use pattern matching to detect version (#13423) 2025-11-15 11:39:09 -03:00
Artyom Fedosov
5a282b9b30 chore(git): remove quotes around $# (#13403) 2025-11-14 14:21:32 +01:00
Fournet Enzo
dca16e8f9a docs(docker-compose): clarify tool choice (#13399) 2025-11-12 07:42:35 -03:00
Oskar Hermansson
a0576348d0 docs(dotnet): remove Core suffix (#13418) 2025-11-11 20:10:26 -03:00
dependabot[bot]
18d0a63df8 chore(deps): bump step-security/harden-runner from 2.13.1 to 2.13.2 (#13414)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-09 20:03:00 +01:00
ohmyzsh[bot]
e70086a76a feat(gradle): update to a9d7c822 (#13413)
Co-authored-by: ohmyzsh[bot] <54982679+ohmyzsh[bot]@users.noreply.github.com>
2025-11-09 07:48:59 +01:00
ohmyzsh[bot]
90a22b61e6 feat(gradle): update to 25c3d368 (#13407)
Co-authored-by: ohmyzsh[bot] <54982679+ohmyzsh[bot]@users.noreply.github.com>
2025-11-03 08:30:05 +01:00
dependabot[bot]
423e9aef52 chore(deps): bump github/codeql-action from 4.31.0 to 4.31.2 (#13408)
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 4.31.0 to 4.31.2.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](4e94bd11f7...0499de31b9)

---
updated-dependencies:
- dependency-name: github/codeql-action
  dependency-version: 4.31.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-03 08:29:39 +01:00
Yaroslav Sapak
43e880ba45 feat(vscode): add support for Cursor (#13382) 2025-10-30 19:22:01 -07:00
Marc Cornellà
1dc87da9e6 chore: tidy funding (#13401) 2025-10-29 11:46:31 -07:00
Mohaiminus Sakib
136298e110 feat(nestjs) Adding NestJS plugin (#13104)
* Adding NestJS command aliases
* Removed installation instructions from the README file of NestJS plugin
2025-10-27 11:37:07 -07:00
dependabot[bot]
829b8fdea4 chore(deps): bump actions/upload-artifact from 4.6.2 to 5.0.0 (#13395)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-26 06:17:45 -07:00
dependabot[bot]
279e91e132 chore(deps): bump github/codeql-action from 4.30.9 to 4.31.0 (#13394)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-26 06:16:55 -07:00
35 changed files with 353 additions and 184 deletions

6
.github/FUNDING.yml vendored
View File

@@ -1,2 +1,6 @@
github: [ohmyzsh, robbyrussell, mcornella, larson-carter, carlosala]
github:
- ohmyzsh
- robbyrussell
- mcornella
- carlosala
open_collective: ohmyzsh

View File

@@ -12,7 +12,7 @@ dependencies:
plugins/gradle:
repo: gradle/gradle-completion
branch: master
version: 1525cf3f2242062199ffcf0c5c1055625db6b9d2
version: a9d7c822e42cc6a5b028b59e46cffcc8e7bc1134
precopy: |
set -e
find . ! -name _gradle ! -name LICENSE -delete

View File

@@ -4,32 +4,31 @@ on:
schedule:
- cron: "0 6 * * 0"
permissions:
contents: write
jobs:
check:
name: Check for updates
runs-on: ubuntu-latest
if: github.repository == 'ohmyzsh/ohmyzsh'
permissions:
contents: write # this is needed to push commits and branches
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
uses: step-security/harden-runner@df199fb7be9f65074067a9eb93f12bb4c5547cf2 # v2.13.3
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
fetch-depth: 0
- name: Authenticate as @ohmyzsh
id: generate-token
uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4
uses: actions/create-github-app-token@29824e69f54612133e76f7eaac726eef6c875baf # v2.2.1
with:
app-id: ${{ secrets.OHMYZSH_APP_ID }}
private-key: ${{ secrets.OHMYZSH_APP_PRIVATE_KEY }}
- name: Setup Python
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version: "3.12"
cache: "pip"

View File

@@ -1,7 +1,7 @@
certifi==2025.10.5
certifi==2025.11.12
charset-normalizer==3.4.4
idna==3.11
PyYAML==6.0.3
requests==2.32.5
semver==3.0.4
urllib3==2.5.0
urllib3==2.6.0

View File

@@ -219,14 +219,15 @@ class Dependency:
# Create new branch
branch = Git.checkout_or_create_branch(branch_name)
# Update dependency files
self.__apply_upstream_changes()
if not Git.repo_is_clean():
# Update dependencies.yml file
self.__update_yaml(
f"tag:{new_version}" if is_tag else status["version"]
)
# Update dependency files
self.__apply_upstream_changes()
# Add all changes and commit
has_new_commit = Git.add_and_commit(self.name, new_version)
@@ -237,11 +238,11 @@ class Dependency:
# Create GitHub PR
GitHub.create_pr(
branch,
f"feat({self.name}): update to version {new_version}",
f"chore({self.name}): update to version {new_version}",
f"""## Description
Update for **{self.desc}**: update to version [{new_version}]({status['head_url']}).
Check out the [list of changes]({status['compare_url']}).
Update for **{self.desc}**: update to version [{new_version}]({status["head_url"]}).
Check out the [list of changes]({status["compare_url"]}).
""",
)
@@ -275,8 +276,8 @@ Check out the [list of changes]({status['compare_url']}).
There is a new version of `{self.name}` {self.kind} available.
New version: [{new_version}]({status['head_url']})
Check out the [list of changes]({status['compare_url']}).
New version: [{new_version}]({status["head_url"]})
Check out the [list of changes]({status["compare_url"]}).
"""
print("Creating GitHub issue", file=sys.stderr)
@@ -377,21 +378,28 @@ class Git:
)
return branch_name
@staticmethod
def repo_is_clean() -> bool:
"""
Returns `True` if the repo is clean.
Returns `False` if the repo is dirty.
"""
try:
CommandRunner.run_or_fail(
["git", "diff", "--exit-code"], stage="CheckRepoClean"
)
return True
except CommandRunner.Exception:
return False
@staticmethod
def add_and_commit(scope: str, version: str) -> bool:
"""
Returns `True` if there were changes and were indeed commited.
Returns `False` if the repo was clean and no changes were commited.
"""
# check if repo is clean (clean => no error, no commit)
try:
CommandRunner.run_or_fail(
["git", "diff", "--exit-code"], stage="CheckRepoClean"
)
if Git.repo_is_clean():
return False
except CommandRunner.Exception:
# if it's other kind of error just throw!
pass
user_name = os.environ.get("GIT_APP_NAME")
user_email = os.environ.get("GIT_APP_EMAIL")
@@ -415,7 +423,7 @@ class Git:
f"user.email={user_email}",
"commit",
"-m",
f"feat({scope}): update to {version}",
f"chore({scope}): update to {version}",
],
stage="CreateCommit",
env=clean_env,

View File

@@ -26,12 +26,12 @@ jobs:
- macos-latest
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
uses: step-security/harden-runner@df199fb7be9f65074067a9eb93f12bb4c5547cf2 # v2.13.3
with:
egress-policy: audit
- name: Set up git repository
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- name: Install zsh
if: runner.os == 'Linux'
run: sudo apt-get update; sudo apt-get install zsh
@@ -47,12 +47,12 @@ jobs:
- test
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
uses: step-security/harden-runner@df199fb7be9f65074067a9eb93f12bb4c5547cf2 # v2.13.3
with:
egress-policy: audit
- name: Checkout
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- name: Install Vercel CLI
run: npm install -g vercel
- name: Setup project and deploy

View File

@@ -24,12 +24,12 @@ jobs:
if: github.repository == 'ohmyzsh/ohmyzsh'
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
uses: step-security/harden-runner@df199fb7be9f65074067a9eb93f12bb4c5547cf2 # v2.13.3
with:
egress-policy: audit
- name: Set up git repository
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- name: Install zsh
run: sudo apt-get update; sudo apt-get install zsh
- name: Check syntax

View File

@@ -17,12 +17,12 @@ jobs:
if: github.repository == 'ohmyzsh/ohmyzsh'
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
uses: step-security/harden-runner@df199fb7be9f65074067a9eb93f12bb4c5547cf2 # v2.13.3
with:
egress-policy: audit
- name: Authenticate as @ohmyzsh
id: generate-token
uses: actions/create-github-app-token@67018539274d69449ef7c02e8e71183d1719ab42 # v2.1.4
uses: actions/create-github-app-token@29824e69f54612133e76f7eaac726eef6c875baf # v2.2.1
with:
app-id: ${{ secrets.OHMYZSH_APP_ID }}
private-key: ${{ secrets.OHMYZSH_APP_PRIVATE_KEY }}

View File

@@ -36,12 +36,12 @@ jobs:
steps:
- name: Harden the runner (Audit all outbound calls)
uses: step-security/harden-runner@f4a75cfd619ee5ce8d5b864b0d183aff3c69b55a # v2.13.1
uses: step-security/harden-runner@df199fb7be9f65074067a9eb93f12bb4c5547cf2 # v2.13.3
with:
egress-policy: audit
- name: "Checkout code"
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
with:
persist-credentials: false
@@ -53,13 +53,13 @@ jobs:
publish_results: true
- name: "Upload artifact"
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0
with:
name: SARIF file
path: results.sarif
retention-days: 5
- name: "Upload to code-scanning"
uses: github/codeql-action/upload-sarif@16140ae1a102900babc80a33c44059580f687047 # v4.30.9
uses: github/codeql-action/upload-sarif@cf1bb45a277cb3c205638b2cd5c984db1c46a412 # v4.31.7
with:
sarif_file: results.sarif

View File

@@ -18,6 +18,7 @@ To learn more, visit [ohmyz.sh](https://ohmyz.sh), follow [@ohmyzsh](https://x.c
Twitter), and join us on [Discord](https://discord.gg/ohmyzsh).
[![CI](https://github.com/ohmyzsh/ohmyzsh/workflows/CI/badge.svg)](https://github.com/ohmyzsh/ohmyzsh/actions?query=workflow%3ACI)
[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/10713/badge)](https://www.bestpractices.dev/projects/10713)
[![X (formerly Twitter) Follow](https://img.shields.io/twitter/follow/ohmyzsh?label=%40ohmyzsh&logo=x&style=flat)](https://twitter.com/intent/follow?screen_name=ohmyzsh)
[![Mastodon Follow](https://img.shields.io/mastodon/follow/111169632522566717?label=%40ohmyzsh&domain=https%3A%2F%2Fmstdn.social&logo=mastodon&style=flat)](https://mstdn.social/@ohmyzsh)
[![Discord server](https://img.shields.io/discord/642496866407284746)](https://discord.gg/ohmyzsh)
@@ -547,7 +548,7 @@ We're on social media:
## Merchandise
We have
[stickers, shirts, and coffee mugs available](https://shop.planetargon.com/collections/oh-my-zsh?utm_source=github)
[stickers, shirts, and coffee mugs available](https://commitgoods.com/collections/oh-my-zsh?utm_source=github)
for you to show off your love of Oh My Zsh. Again, you will become the talk of the town!
## License

View File

@@ -28,6 +28,7 @@ function _omz {
'plugin:Manage plugins'
'pr:Manage Oh My Zsh Pull Requests'
'reload:Reload the current zsh session'
'shop:Open the Oh My Zsh shop'
'theme:Manage themes'
'update:Update Oh My Zsh'
'version:Show the version'
@@ -173,6 +174,7 @@ Available commands:
plugin <command> Manage plugins
pr <command> Manage Oh My Zsh Pull Requests
reload Reload the current zsh session
shop Open the Oh My Zsh shop
theme <command> Manage themes
update Update Oh My Zsh
version Show the version
@@ -721,6 +723,15 @@ function _omz::pr::test {
)
}
function _omz::shop {
local shop_url="https://commitgoods.com/collections/oh-my-zsh"
_omz::log info "Opening Oh My Zsh shop in your browser..."
_omz::log info "$shop_url"
open_command "$shop_url"
}
function _omz::reload {
# Delete current completion cache
command rm -f $_comp_dumpfile $ZSH_COMPDUMP

View File

@@ -2,6 +2,8 @@
This plugin provides completion for [docker-compose](https://docs.docker.com/compose/) as well as some
aliases for frequent docker-compose commands.
This plugin chooses automatically between the legacy `docker-compose` command and the modern
`docker compose` subcommand, preferring `docker-compose` when both are available.
To use it, add docker-compose to the plugins array of your zshrc file:

View File

@@ -1,6 +1,6 @@
# .NET Core CLI plugin
# .NET CLI plugin
This plugin provides completion and useful aliases for [.NET Core CLI](https://dotnet.microsoft.com/).
This plugin provides completion and useful aliases for [.NET CLI](https://dotnet.microsoft.com/).
To use it, add `dotnet` to the plugins array in your zshrc file.

View File

@@ -77,7 +77,15 @@ EOF
(*.lzma) unlzma "$full_path" ;;
(*.z) uncompress "$full_path" ;;
(*.zip|*.war|*.jar|*.ear|*.sublime-package|*.ipa|*.ipsw|*.xpi|*.apk|*.aar|*.whl|*.vsix|*.crx|*.pk3|*.pk4) unzip "$full_path" ;;
(*.rar) unrar x -ad "$full_path" ;;
(*.rar)
if (( $+commands[unrar] )); then
unrar x -ad "$full_path"
elif (( $+commands[unar] )); then
unar -o . "$full_path"
else
echo "extract: cannot extract RAR files: install unrar or unar" >&2
success=1
fi ;;
(*.rpm)
rpm2cpio "$full_path" | cpio --quiet -id ;;
(*.7z | *.7z.[0-9]* | *.pk7) 7za x "$full_path" ;;

View File

@@ -1,9 +0,0 @@
# Fig plugin
This plugin sets up completion for [Fig](https://fig.io/).
To use it, add `fig` to the plugins array in your zshrc file:
```zsh
plugins=(... fig)
```

View File

@@ -1,13 +0,0 @@
if ! (( $+commands[fig] )); then
return
fi
# If the completion file doesn't exist yet, we need to autoload it and
# bind it to `fig`. Otherwise, compinit will have already done that
if [[ ! -f "$ZSH_CACHE_DIR/completions/_fig" ]]; then
autoload -Uz _fig
typeset -g -A _comps
_comps[fig]=_fig
fi
fig completion zsh >| "$ZSH_CACHE_DIR/completions/_fig" &|

View File

@@ -102,7 +102,7 @@ function work_in_progress() {
alias grt='cd "$(git rev-parse --show-toplevel || echo .)"'
function ggpnp() {
if [[ "$#" == 0 ]]; then
if [[ $# == 0 ]]; then
ggl && ggp
else
ggl "${*}" && ggp "${*}"
@@ -281,7 +281,7 @@ alias gprav='git pull --rebase --autostash -v'
function ggu() {
local b
[[ "$#" != 1 ]] && b="$(git_current_branch)"
[[ $# != 1 ]] && b="$(git_current_branch)"
git pull --rebase origin "${b:-$1}"
}
compdef _git ggu=git-pull
@@ -293,11 +293,11 @@ alias gprumi='git pull --rebase=interactive upstream $(git_main_branch)'
alias ggpull='git pull origin "$(git_current_branch)"'
function ggl() {
if [[ "$#" != 0 ]] && [[ "$#" != 1 ]]; then
if [[ $# != 0 ]] && [[ $# != 1 ]]; then
git pull origin "${*}"
else
local b
[[ "$#" == 0 ]] && b="$(git_current_branch)"
[[ $# == 0 ]] && b="$(git_current_branch)"
git pull origin "${b:-$1}"
fi
}
@@ -310,7 +310,7 @@ alias gpd='git push --dry-run'
function ggf() {
local b
[[ "$#" != 1 ]] && b="$(git_current_branch)"
[[ $# != 1 ]] && b="$(git_current_branch)"
git push --force origin "${b:-$1}"
}
compdef _git ggf=git-push
@@ -322,7 +322,7 @@ is-at-least 2.30 "$git_version" \
function ggfl() {
local b
[[ "$#" != 1 ]] && b="$(git_current_branch)"
[[ $# != 1 ]] && b="$(git_current_branch)"
git push --force-with-lease origin "${b:-$1}"
}
compdef _git ggfl=git-push
@@ -337,11 +337,11 @@ alias gpod='git push origin --delete'
alias ggpush='git push origin "$(git_current_branch)"'
function ggp() {
if [[ "$#" != 0 ]] && [[ "$#" != 1 ]]; then
if [[ $# != 0 ]] && [[ $# != 1 ]]; then
git push origin "${*}"
else
local b
[[ "$#" == 0 ]] && b="$(git_current_branch)"
[[ $# == 0 ]] && b="$(git_current_branch)"
git push origin "${b:-$1}"
fi
}

View File

@@ -339,8 +339,10 @@ __gradle_subcommand() {
(--warn,-w,--info,-i,--debug,-d){-q,--quiet}'[Log errors only.]' \
{-U,--refresh-dependencies}'[Refresh the state of dependencies.]' \
'--refresh-keys[Refresh the public keys used for dependency verification.]' \
'--rerun[Causes the task to be re-run even if up-to-date.]' \
'--rerun-tasks[Ignore previously cached task results.]' \
(--no-scan)'--scan[Generate a Build Scan (powered by Develocity).]' \
{-V,--show-version}'[Print version info and continue.]' \
(--full-stacktrace,-S){-s,--stacktrace}'[Print out the stacktrace for all exceptions.]' \
'--task-graph[(Experimental) Print task graph instead of executing tasks.]' \
\*'--update-locks[Perform a partial update of the dependency lock, letting passed in module notations change version. (incubating)]' \
@@ -465,14 +467,16 @@ _gradle() {
(--warn,-w,--info,-i,--debug,-d){-q,--quiet}'[Log errors only.]' \
{-U,--refresh-dependencies}'[Refresh the state of dependencies.]' \
'--refresh-keys[Refresh the public keys used for dependency verification.]' \
'--rerun[Causes the task to be re-run even if up-to-date.]' \
'--rerun-tasks[Ignore previously cached task results.]' \
(--no-scan)'--scan[Generate a Build Scan (powered by Develocity).]' \
{-V,--show-version}'[Print version info and continue.]' \
(--full-stacktrace,-S){-s,--stacktrace}'[Print out the stacktrace for all exceptions.]' \
'--status[Shows status of running and recently stopped Gradle daemon(s).]' \
'--stop[Stops the Gradle daemon if it is running.]' \
'--task-graph[(Experimental) Print task graph instead of executing tasks.]' \
\*'--update-locks[Perform a partial update of the dependency lock, letting passed in module notations change version. (incubating)]' \
{-v,--version}'[Shows the version info.]' \
{-v,--version}'[Print version info and exit.]' \
(--quiet,-q,--info,-i,--debug,-d){-w,--warn}'[Set log level to warn.]' \
'--warning-mode[Specifies which mode of warnings to generate. Values are 'all', 'fail', 'summary'(default) or 'none']:warning mode:(all summary none):->argument-expected' \
(--no-watch-fs)'--watch-fs[Enables watching the file system for changes, allowing data about the file system to be re-used for the next build.]' \

View File

@@ -12,6 +12,16 @@ plugins=(... jj)
| Alias | Command |
| ------ | ----------------------------- |
| jjb | `jj bookmark` |
| jjbc | `jj bookmark create` |
| jjbd | `jj bookmark delete` |
| jjbf | `jj bookmark forget` |
| jjbl | `jj bookmark list` |
| jjbm | `jj bookmark move` |
| jjbr | `jj bookmark rename` |
| jjbs | `jj bookmark set` |
| jjbt | `jj bookmark track` |
| jjbu | `jj bookmark untrack` |
| jjc | `jj commit` |
| jjcmsg | `jj commit --message` |
| jjd | `jj diff` |
@@ -22,14 +32,20 @@ plugins=(... jj)
| jjgf | `jj git fetch` |
| jjgfa | `jj git fetch --all-remotes` |
| jjgp | `jj git push` |
| jjgpa | `jj git push --all` |
| jjgpd | `jj git push --deleted` |
| jjgpt | `jj git push --tracked` |
| jjl | `jj log` |
| jjla | `jj log -r "all()"` |
| jjn | `jj new` |
| jjnt | `jj new "trunk()"` |
| jjrb | `jj rebase` |
| jjrbm | `jj rebase -d "trunk()"` |
| jjrs | `jj restore` |
| jjrt | `cd "$(jj root \|\| echo .)"` |
| jjsp | `jj split` |
| jjsq | `jj squash` |
| jjst | `jj status` |
## Prompt usage
@@ -88,3 +104,4 @@ that.
## Contributors
- [nasso](https://github.com/nasso) - Plugin Author
- [imp](https://github.com/imp) - Occasional Alias Contributor

View File

@@ -34,6 +34,16 @@ function jj_prompt_template() {
}
# Aliases (sorted alphabetically)
alias jjb='jj bookmark'
alias jjbc='jj bookmark create'
alias jjbd='jj bookmark delete'
alias jjbf='jj bookmark forget'
alias jjbl='jj bookmark list'
alias jjbm='jj bookmark move'
alias jjbr='jj bookmark rename'
alias jjbs='jj bookmark set'
alias jjbt='jj bookmark track'
alias jjbu='jj bookmark untrack'
alias jjc='jj commit'
alias jjcmsg='jj commit --message'
alias jjd='jj diff'
@@ -44,11 +54,17 @@ alias jjgcl='jj git clone'
alias jjgf='jj git fetch'
alias jjgfa='jj git fetch --all-remotes'
alias jjgp='jj git push'
alias jjgpa='jj git push --all'
alias jjgpd='jj git push --deleted'
alias jjgpt='jj git push --tracked'
alias jjl='jj log'
alias jjla='jj log -r "all()"'
alias jjn='jj new'
alias jjnt='jj new "trunk()"'
alias jjrb='jj rebase'
alias jjrbm='jj rebase -d "trunk()"'
alias jjrs='jj restore'
alias jjrt='cd "$(jj root || echo .)"'
alias jjsp='jj split'
alias jjsq='jj squash'
alias jjst='jj status'

View File

@@ -20,10 +20,11 @@ function {
zstyle -a :omz:plugins:keychain options options
# Check keychain version to decide whether to use --agents
local version_string=$(keychain --version 2>&1 | head -n 2 | tail -n 1 | cut -d ' ' -f 4)
local version_string=$(keychain --version 2>&1)
# start keychain, only use --agents for versions below 2.9.0
autoload -Uz is-at-least
if is-at-least 2.9 "$version_string"; then
if [[ "$version_string" =~ 'keychain ([0-9]+\.[0-9]+)' ]] && \
is-at-least 2.9 "$match[1]"; then
keychain ${^options:-} ${^identities} --host $SHORT_HOST
else
keychain ${^options:-} --agents ${agents:-gpg} ${^identities} --host $SHORT_HOST

View File

@@ -74,6 +74,7 @@ plugins=(... kubectl)
| kdeld | `kubectl delete deployment` | Delete the deployment |
| ksd | `kubectl scale deployment` | Scale a deployment |
| krsd | `kubectl rollout status deployment` | Check the rollout status of a deployment |
| krrd | `kubectl rollout restart deployment` | Rollout restart a deployment |
| kres | `kubectl set env $@ REFRESHED_AT=...` | Recreate all pods in deployment with zero-downtime |
| | | **Rollout management** |
| kgrs | `kubectl get replicaset` | List all ReplicaSets `rs` created by the deployment |
@@ -112,6 +113,7 @@ plugins=(... kubectl)
| kdelss | `kubectl delete statefulset` | Delete the statefulset |
| ksss | `kubectl scale statefulset` | Scale a statefulset |
| krsss | `kubectl rollout status statefulset` | Check the rollout status of a deployment |
| krrss | `kubectl rollout restart statefulset` | Rollout restart a statefulset |
| | | **Service Accounts management** |
| kdsa | `kubectl describe sa` | Describe a service account in details |
| kdelsa | `kubectl delete sa` | Delete the service account |

View File

@@ -98,6 +98,7 @@ alias kdd='kubectl describe deployment'
alias kdeld='kubectl delete deployment'
alias ksd='kubectl scale deployment'
alias krsd='kubectl rollout status deployment'
alias krrd='kubectl rollout restart deployment'
function kres(){
kubectl set env $@ REFRESHED_AT=$(date +%Y%m%d%H%M%S)
@@ -120,6 +121,7 @@ alias kdss='kubectl describe statefulset'
alias kdelss='kubectl delete statefulset'
alias ksss='kubectl scale statefulset'
alias krsss='kubectl rollout status statefulset'
alias krrss='kubectl rollout restart statefulset'
# Port forwarding
alias kpf="kubectl port-forward"

52
plugins/nestjs/README.md Normal file
View File

@@ -0,0 +1,52 @@
# NestJS Plugin for Oh My Zsh
This plugin provides aliases for common [NestJS CLI](https://docs.nestjs.com/cli/overview) commands.
## Requirements
- [NestJS CLI](https://docs.nestjs.com/cli/overview#installation) installed globally:
`npm install -g @nestjs/cli`
## Aliases
| Alias | Command | Description |
| :------ | :--------------------------- | :------------------------------------------ |
| `nnew` | `nest new` | Create a new NestJS project |
| `nb` | `nest build` | Build the NestJS application |
| `ns` | `nest start` | Start the application |
| `nsw` | `nest start --watch` | Start the application in watch mode |
| `nsd` | `nest start --dev` | Start the application in dev mode |
| `nsdbg` | `nest start --debug --watch` | Start the application in debug & watch mode |
| `ng` | `nest generate` | Generate a NestJS element |
| `ngm` | `nest generate module` | Generate a module |
| `ngc` | `nest generate controller` | Generate a controller |
| `ngs` | `nest generate service` | Generate a service |
| `ngg` | `nest generate guard` | Generate a guard |
| `ngp` | `nest generate pipe` | Generate a pipe |
| `ngf` | `nest generate filter` | Generate a filter |
| `ngr` | `nest generate resolver` | Generate a GraphQL resolver |
| `ngcl` | `nest generate class` | Generate a class |
| `ngi` | `nest generate interface` | Generate an interface |
| `ngit` | `nest generate interceptor` | Generate an interceptor |
| `ngmi` | `nest generate middleware` | Generate a middleware |
| `ngd` | `nest generate decorator` | Generate a custom decorator |
| `ngres` | `nest generate resource` | Generate a CRUD resource |
| `nglib` | `nest generate library` | Generate a new library |
| `ngsub` | `nest generate sub-app` | Generate a new sub-application (monorepo) |
| `na` | `nest add` | Add a library to the project |
| `ni` | `nest info` | Display NestJS project information |
| `nu` | `nest update` | Update NestJS dependencies |
## Usage
1. Add `nestjs` to the `plugins` array in your `~/.zshrc` file:
```zsh
plugins=(... nestjs)
```
2. Restart your terminal or source your `~/.zshrc` file:
```zsh
source ~/.zshrc
```

View File

@@ -0,0 +1,41 @@
# Oh My Zsh plugin for NestJS CLI
# Check if nest command exists
if ! command -v nest &>/dev/null; then
return
fi
# Project creation
alias nnew='nest new'
# Basic development
alias nb='nest build'
alias ns='nest start'
alias nsw='nest start --watch'
alias nsd='nest start --dev' # Alias for start --watch
alias nsdbg='nest start --debug --watch'
# Code generation (short aliases)
alias ng='nest generate'
alias ngm='nest generate module'
alias ngc='nest generate controller'
alias ngs='nest generate service'
alias ngg='nest generate guard'
alias ngp='nest generate pipe'
alias ngf='nest generate filter'
alias ngr='nest generate resolver'
alias ngcl='nest generate class'
alias ngi='nest generate interface'
alias ngit='nest generate interceptor'
alias ngmi='nest generate middleware'
alias ngd='nest generate decorator'
alias ngres='nest generate resource'
alias nglib='nest generate library'
alias ngsub='nest generate sub-app'
# Other commands
alias na='nest add'
alias ni='nest info'
alias nu='nest update'
# You can add more aliases or functions here as needed.

41
plugins/pulumi/README.md Normal file
View File

@@ -0,0 +1,41 @@
# Pulumi
This is an **Oh My Zsh plugin** for the [**Pulumi CLI**](https://www.pulumi.com/docs/iac/cli/),
an Infrastructure as Code (IaC) tool for building, deploying and managing cloud infrastucture.
This plugin provides:
- 🚀 Short, intuitive aliases for common Pulumi commands
- 🎯 Auto-completion support for Pulumi
To use it, add `pulumi` to the plugins array in your `.zshrc` file:
```zsh
plugins=(... pulumi)
```
## ⚡ Aliases
| Alias | Command | Description |
| -------- | ---------------------- | ----------------------------- |
| `pul` | `pulumi` | Shortcut for Pulumi CLI |
| `pulcs` | `pulumi config set` | Set Pulumi configuration |
| `puld` | `pulumi destroy` | Destroy all resources |
| `pullog` | `pulumi logs -f` | Tail Pulumi logs in real-time |
| `pulp` | `pulumi preview` | Show planned changes |
| `pulr` | `pulumi refresh` | Refresh state from cloud |
| `puls` | `pulumi stack` | Show stack details |
| `pulsh` | `pulumi stack history` | Show stack history |
| `pulsi` | `pulumi stack init` | Initialize a new stack |
| `pulsl` | `pulumi stack ls` | List available stacks |
| `pulso` | `pulumi stack output` | Show stack outputs |
| `pulss` | `pulumi stack select` | Switch stack |
| `pulu` | `pulumi up` | Deploy infrastructure |
## 🎯 Autocompletion
If `pulumi gen-completion zsh` is available, this plugin **automatically loads Pulumi auto-completion**.
## 🛠️ Contribution
Feel free to open an issue or PR for improvements! 🚀

View File

@@ -0,0 +1,28 @@
if (( ! $+commands[pulumi] )); then
return
fi
# If the completion file doesn't exist yet, we need to autoload it and
# bind it to `pulumi`. Otherwise, compinit will have already done that.
if [[ ! -f "$ZSH_CACHE_DIR/completions/_pulumi" ]]; then
typeset -g -A _comps
autoload -Uz _pulumi
_comps[pulumi]=_pulumi
fi
pulumi gen-completion zsh >| "$ZSH_CACHE_DIR/completions/_pulumi" &|
# Aliases
alias pul='pulumi'
alias pulcs='pulumi config set'
alias puld='pulumi destroy'
alias pullog='pulumi logs -f'
alias pulp='pulumi preview'
alias pulr='pulumi refresh'
alias puls='pulumi stack'
alias pulsh='pulumi stack history'
alias pulsi='pulumi stack init'
alias pulsl='pulumi stack ls'
alias pulso='pulumi stack output'
alias pulss='pulumi stack select'
alias pulu='pulumi up'

View File

@@ -1,18 +0,0 @@
# rbfu plugin
This plugin starts [rbfu](https://github.com/hmans/rbfu), a minimal Ruby version
manager, and adds some useful functions.
To use it, add `rbfu` to the plugins array in your zshrc file:
```zsh
plugins=(... rbfu)
```
**Note: `rbfu` is deprecated and should no longer be used.**
## Functions
- `rbfu-rubies`: lists all installed rubies available to rbfu.
- `rvm_prompt_info`: shows the Ruby version being used with rbfu.

View File

@@ -1,49 +0,0 @@
# Enables rbfu with --auto option, if available.
#
# Also provides a command to list all installed/available
# rubies. To ensure compatibility with themes, creates the
# rvm_prompt_info function to return the $RBFU_RUBY_VERSION
# version.
command -v rbfu &>/dev/null || return
eval "$(rbfu --init --auto)"
# Internal: Print ruby version details, if it's currently active, etc.
function _rbfu_rubies_print() {
# 1: path to ruby file
# 2: active ruby
local rb rb_out
rb="${$1:t}"
rb_out="$rb"
# If the ruby is a symlink, add @ to the name.
if [[ -h "$1" ]]; then
rb_out="${rb_out}${fg[green]}@${reset_color}"
fi
# If the ruby is active, add * to the name and show it in red.
if [[ "$rb" = "$2" ]]; then
rb_out="${fg[red]}${rb_out} ${fg[red]}*${reset_color}"
fi
echo $rb_out
}
# Public: Provide a list with all available rubies, this basically depends
# on ~/.rfbu/rubies. Highlights the currently active ruby version and aliases.
function rbfu-rubies() {
local rbfu_dir active_rb
rbfu_dir="${RBFU_RUBIES:-${HOME}/.rbfu/rubies}"
active_rb="${RBFU_RUBY_VERSION:-system}"
_rbfu_rubies_print "${rbfu_dir}/system" "$active_rb"
for rb in ${rbfu_dir}/*(N); do
_rbfu_rubies_print "$rb" "$active_rb"
done
}
# Public: Create rvm_prompt_info command for themes compatibility, unless
# it has already been defined.
(( ${+functions[rvm_prompt_info]} )) || \
function rvm_prompt_info() { echo "${${RBFU_RUBY_VERSION:=system}:gs/%/%%}" }

View File

@@ -1,6 +1,7 @@
# uv plugin
This plugin automatically installs [uv](https://github.com/astral-sh/uv)'s completions for you, and keeps them up to date. It also adds convenient aliases for common usage.
This plugin automatically installs [uv](https://github.com/astral-sh/uv)'s completions for you,
and keeps them up to date. It also adds convenient aliases for common usage.
To use it, add `uv` to the plugins array in your zshrc file:
@@ -11,18 +12,25 @@ plugins=(... uv)
## Aliases
| Alias | Command | Description |
|:----- |------------------------------------------------------------------------ |:-------------------------------------------------------------------- |
| :---- | ---------------------------------------------------------------------------------------- | :-------------------------------------------------------------------- |
| uva | `uv add` | Add packages to the project |
| uvexp | `uv export --format requirements-txt --no-hashes --output-file requirements.txt --quiet` | Export the lock file to `requirements.txt` |
| uvi | `uv init` | Initialize a new project in current workspace and environment. |
| uvinw | `uv init --no-workspace` | Initialize a new project in a new workspace and environment |
| uvl | `uv lock` | Lock the dependencies |
| uvlr | `uv lock --refresh` | Rebuild the lock file without upgrading dependencies |
| uvlu | `uv lock --upgrade` | Lock the dependencies to the newest compatible versions |
| uvp | `uv pip` | Manage pip packages |
| uvpi | `uv python install` | Install a specific version of python |
| uvpl | `uv python list` | Lists all python version installed |
| uvpp | `uv python pin` | Pin the current project to use a specific Python version |
| uvpu | `uv python uninstall` | Remove a specific version of python |
| uvpy | `uv python` | Manage Python installs |
| uvr | `uv run` | Run commands within the project's environment |
| uvrm | `uv remove` | Remove packages from the project |
| uvs | `uv sync` | Sync the environment with the lock file |
| uvsr | `uv sync --refresh` | "Force" sync the environment with the lock file (ignore cache) |
| uvsu | `uv sync --upgrade` | Sync the environment, allowing upgrades and ignoring the lock file |
| uvtr | `uv tree` | Displays the full dependency tree for the current project environment |
| uvup | `uv self update` | Update the UV tool to the latest version |
| uvv | `uv venv` | Manage virtual environments |

View File

@@ -7,16 +7,23 @@ alias uv="noglob uv"
alias uva='uv add'
alias uvexp='uv export --format requirements-txt --no-hashes --output-file requirements.txt --quiet'
alias uvi='uv init'
alias uvinw='uv init --no-workspace'
alias uvl='uv lock'
alias uvlr='uv lock --refresh'
alias uvlu='uv lock --upgrade'
alias uvp='uv pip'
alias uvpi='uv python install'
alias uvpl='uv python list'
alias uvpu='uv python uninstall'
alias uvpy='uv python'
alias uvpp='uv python pin'
alias uvr='uv run'
alias uvrm='uv remove'
alias uvs='uv sync'
alias uvsr='uv sync --refresh'
alias uvsu='uv sync --upgrade'
alias uvtr='uv tree'
alias uvup='uv self update'
alias uvv='uv venv'

View File

@@ -1,7 +1,6 @@
# VS Code
This plugin provides useful aliases to simplify the interaction between the command line and VS Code or
VSCodium editor.
This plugin provides useful aliases to simplify the interaction between the command line and VS Code, VSCodium, or Cursor editor.
To start using it, add the `vscode` plugin to your `plugins` array in `~/.zshrc`:
@@ -18,6 +17,7 @@ You can install either:
- VS Code (code)
- VS Code Insiders (code-insiders)
- VSCodium (codium)
- Cursor (cursor)
### MacOS
@@ -33,6 +33,10 @@ open the Command Palette via (F1 or ⇧⌘P) and type shell command to find the
> Shell Command: Install 'codium' command in PATH
For Cursor, open the Command Palette via (F1 or ⌘⇧P) and type shell command to find the Shell Command:
> Shell Command: Install 'cursor' command in PATH
## Using multiple flavours
If for any reason, you ever require to use multiple flavours of VS Code i.e. VS Code (stable) and VS Code
@@ -43,7 +47,7 @@ executable.
```zsh
ZSH_THEME=...
# Choose between one [code, code-insiders or codium]
# Choose between one [code, code-insiders, codium, or cursor]
# The following line will make the plugin to open VS Code Insiders
# Invalid entries will be ignored, no aliases will be added
VSCODE=code-insiders

View File

@@ -1,4 +1,4 @@
# VS Code (stable / insiders) / VSCodium zsh plugin
# VS Code (stable / insiders) / VSCodium / Cursor zsh plugin
# Authors:
# https://github.com/MarsiBarsi (original author)
# https://github.com/babakks
@@ -19,6 +19,8 @@ if [[ -z "$VSCODE" ]]; then
VSCODE=code-insiders
elif which codium &>/dev/null; then
VSCODE=codium
elif which cursor &>/dev/null; then
VSCODE=cursor
else
return
fi

View File

@@ -505,7 +505,7 @@ print_success() {
printf '\n'
printf '%s\n' "• Follow us on X: $(fmt_link @ohmyzsh https://x.com/ohmyzsh)"
printf '%s\n' "• Join our Discord community: $(fmt_link "Discord server" https://discord.gg/ohmyzsh)"
printf '%s\n' "• Get stickers, t-shirts, coffee mugs and more: $(fmt_link "Planet Argon Shop" https://shop.planetargon.com/collections/oh-my-zsh)"
printf '%s\n' "• Get stickers, t-shirts, coffee mugs and more: $(fmt_link "CommitGoods Shop" https://commitgoods.com/collections/oh-my-zsh)"
printf '%s\n' $FMT_RESET
}

View File

@@ -273,7 +273,7 @@ if LANG= git pull --quiet --rebase $remote $branch; then
printf "${BLUE}%s${RESET}\n\n" "$message"
printf "${BLUE}${BOLD}%s %s${RESET}\n" "To keep up with the latest news and updates, follow us on X:" "$(fmt_link @ohmyzsh https://x.com/ohmyzsh)"
printf "${BLUE}${BOLD}%s %s${RESET}\n" "Want to get involved in the community? Join our Discord:" "$(fmt_link "Discord server" https://discord.gg/ohmyzsh)"
printf "${BLUE}${BOLD}%s %s${RESET}\n" "Get your Oh My Zsh swag at:" "$(fmt_link "Planet Argon Shop" https://shop.planetargon.com/collections/oh-my-zsh)"
printf "${BLUE}${BOLD}%s %s${RESET}\n" "Get your Oh My Zsh swag at:" "$(fmt_link "CommitGoods Shop" https://commitgoods.com/collections/oh-my-zsh)"
elif [[ $verbose_mode == minimal ]]; then
printf "${BLUE}%s${RESET}\n" "$message"
fi