1
0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2026-01-10 21:58:06 +08:00

Compare commits

...

5 Commits

Author SHA1 Message Date
Miguel Hargreaves Pimenta
eaf03a81d5
Merge 2bfaf3ccf2 into 72acd2ca90 2025-12-08 08:34:30 -08: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
Miguel Hargreaves Pimenta
2bfaf3ccf2
feat(rails): add echo statements to rails db functions 2025-10-25 16:39:35 +01:00
Miguel Hargreaves Pimenta
78baf561c9
fix(rails): improve rails db functions back compatibility 2025-10-25 16:38:33 +01:00
Miguel Hargreaves Pimenta
730fc33c87
feat(rails): add multi-database aliases 2025-10-16 16:31:55 +01:00
3 changed files with 172 additions and 28 deletions

View File

@ -47,18 +47,8 @@ alias rc='rails console'
alias rcs='rails console --sandbox'
alias rd='rails destroy'
alias rdb='rails dbconsole'
alias rdc='rails db:create'
alias rdd='rails db:drop'
alias rdm='rails db:migrate'
alias rdmd='rails db:migrate:down'
alias rdmr='rails db:migrate:redo'
alias rdms='rails db:migrate:status'
alias rdmtc='rails db:migrate db:test:clone'
alias rdmu='rails db:migrate:up'
alias rdr='rails db:rollback'
alias rdrs='rails db:reset'
alias rds='rails db:seed'
alias rdsl='rails db:schema:load'
alias rdtc='rails db:test:clone'
alias rdtp='rails db:test:prepare'
alias rgen='rails generate'
@ -105,6 +95,147 @@ alias rkn='rake notes'
alias rksts='rake stats'
alias rkt='rake test'
# Multi-database functions
# Usage: rdc [database] - rails db:create[:database]
function rdc() {
if [ $# -eq 0 ]; then
echo "Running: rails db:create" >&2
rails db:create
else
echo "Running: rails db:create:$1" >&2
rails db:create:"$1"
fi
}
# Usage: rdd [database] - rails db:drop[:database]
function rdd() {
if [ $# -eq 0 ]; then
echo "Running: rails db:drop" >&2
rails db:drop
else
echo "Running: rails db:drop:$1" >&2
rails db:drop:"$1"
fi
}
# Usage: rdm [database] [VERSION=x VERBOSE=false SCOPE=blog] - rails db:migrate[:database]
function rdm() {
if [ $# -eq 0 ]; then
echo "Running: rails db:migrate" >&2
rails db:migrate
elif [[ "$1" == *"="* ]]; then
echo "Running: rails db:migrate $*" >&2
rails db:migrate "$@"
else
local database="$1"
shift
echo "Running: rails db:migrate:$database $*" >&2
rails db:migrate:"$database" "$@"
fi
}
# Usage: rdmd [database] [VERSION=x] - rails db:migrate:down[:database]
function rdmd() {
if [ $# -eq 0 ]; then
echo "Running: rails db:migrate:down" >&2
rails db:migrate:down
elif [[ "$1" == *"="* ]]; then
echo "Running: rails db:migrate:down $*" >&2
rails db:migrate:down "$@"
else
local database="$1"
shift
echo "Running: rails db:migrate:down:$database $*" >&2
rails db:migrate:down:"$database" "$@"
fi
}
# Usage: rdmr [database] [STEP=x VERSION=x] - rails db:migrate:redo[:database]
function rdmr() {
if [ $# -eq 0 ]; then
echo "Running: rails db:migrate:redo" >&2
rails db:migrate:redo
elif [[ "$1" == *"="* ]]; then
echo "Running: rails db:migrate:redo $*" >&2
rails db:migrate:redo "$@"
else
local database="$1"
shift
echo "Running: rails db:migrate:redo:$database $*" >&2
rails db:migrate:redo:"$database" "$@"
fi
}
# Usage: rdms [database] - rails db:migrate:status[:database]
function rdms() {
if [ $# -eq 0 ]; then
echo "Running: rails db:migrate:status" >&2
rails db:migrate:status
else
echo "Running: rails db:migrate:status:$1" >&2
rails db:migrate:status:"$1"
fi
}
# Usage: rdmu [database] [VERSION=x] - rails db:migrate:up[:database]
function rdmu() {
if [ $# -eq 0 ]; then
echo "Running: rails db:migrate:up" >&2
rails db:migrate:up
elif [[ "$1" == *"="* ]]; then
echo "Running: rails db:migrate:up $*" >&2
rails db:migrate:up "$@"
else
local database="$1"
shift
echo "Running: rails db:migrate:up:$database $*" >&2
rails db:migrate:up:"$database" "$@"
fi
}
# Usage: rdr [database] [STEP=n] - rails db:rollback[:database]
function rdr() {
if [ $# -eq 0 ]; then
echo "Running: rails db:rollback" >&2
rails db:rollback
elif [[ "$1" == *"="* ]]; then
echo "Running: rails db:rollback $*" >&2
rails db:rollback "$@"
else
local database="$1"
shift
echo "Running: rails db:rollback:$database $*" >&2
rails db:rollback:"$database" "$@"
fi
}
# Usage: rdrs [database] - rails db:reset[:database]
function rdrs() {
if [ $# -eq 0 ]; then
echo "Running: rails db:reset" >&2
rails db:reset
else
echo "Running: rails db:reset:$1" >&2
rails db:reset:"$1"
fi
}
# Usage: rdsl [database] [SCHEMA_FORMAT=ruby|sql] - rails db:schema:load[:database]
function rdsl() {
if [ $# -eq 0 ]; then
echo "Running: rails db:schema:load" >&2
rails db:schema:load
elif [[ "$1" == *"="* ]]; then
echo "Running: rails db:schema:load $*" >&2
rails db:schema:load "$@"
else
local database="$1"
shift
echo "Running: rails db:schema:load:$database $*" >&2
rails db:schema:load:"$database" "$@"
fi
}
# legacy stuff
alias sc='ruby script/console'
alias sd='ruby script/destroy'

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:
@ -10,20 +11,26 @@ 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` |
| 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 |
| uvpy | `uv python` | Manage Python installs |
| uvpp | `uv python pin` | Pin the current project to use a specific Python version |
| 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 |
| uvup | `uv self update` | Update the UV tool to the latest version |
| uvv | `uv venv` | Manage virtual environments |
| 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,10 +7,15 @@ 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'
@ -18,6 +23,7 @@ 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'