1
0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2025-12-11 15:23:41 +08:00

Compare commits

...

5 Commits

Author SHA1 Message Date
Miguel Hargreaves Pimenta
5d00a63c58
Merge 2bfaf3ccf2 into 92aed2e936 2025-12-10 14:09:14 +04:00
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
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
2 changed files with 150 additions and 11 deletions

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

@ -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'