mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-04-24 04:29:25 +02:00
Merge remote-tracking branch 'upstream/master'
This commit is contained in:
commit
4e7bab6111
21 changed files with 343 additions and 173 deletions
|
|
@ -22,7 +22,7 @@ fi
|
||||||
# Set ZSH_CACHE_DIR to the path where cache files should be created
|
# Set ZSH_CACHE_DIR to the path where cache files should be created
|
||||||
# or else we will use the default cache/
|
# or else we will use the default cache/
|
||||||
if [[ -z "$ZSH_CACHE_DIR" ]]; then
|
if [[ -z "$ZSH_CACHE_DIR" ]]; then
|
||||||
ZSH_CACHE_DIR="$ZSH/cache/"
|
ZSH_CACHE_DIR="$ZSH/cache"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,64 +1,69 @@
|
||||||
## ARCHLINUX PLUGIN
|
# Archlinux plugin
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
---
|
#### YAOURT
|
||||||
|
|
||||||
### FEATURES
|
| Alias | Command | Description |
|
||||||
|
|---------|------------------------------------|---------------------------------------------------------------------|
|
||||||
| Alias | Function | Description |
|
|
||||||
|:------------:|-----------------------------------------|:--------------------------------------------------------------------------------------------------------------------|
|
|
||||||
| pacin | sudo pacman -S | Install specific package(s) from the repositories |
|
|
||||||
| pacins | sudo pacman -U | Install specific package not from the repositories but from a file |
|
|
||||||
| pacinsd | sudo pacman -S --asdeps | Install given package(s) as dependencies of another package |
|
|
||||||
| pacloc | pacman -Qi | Display information about a given package in the local database |
|
|
||||||
| paclocs | pacman -Qs | Search for package(s) in the local database |
|
|
||||||
| paclsorphans | sudo pacman -Qdt' | List all orphaned packages |
|
|
||||||
| pacmir | sudo pacman -Syy | Force refresh of all package lists after updating /etc/pacman.d/mirrorlist |
|
|
||||||
| pacre | sudo pacman -R | Remove the specified package(s), retaining its configuration(s) and required dependencies |
|
|
||||||
| pacrem | sudo pacman -Rns | Remove the specified package(s), its configuration(s) and unneeded dependencies |
|
|
||||||
| pacrep | pacman -Si | Display information about a given package in the repositories |
|
|
||||||
| pacreps | pacman -Ss | Search for package(s) in the repositories |
|
|
||||||
| pacrmorphans | sudo pacman -Rs $(pacman -Qtdq)' | Delete all orphaned packages |
|
|
||||||
| pacupd | sudo pacman -Sy && sudo abs && sudo aur | Update and refresh the local package, ABS and AUR databases against repositories |
|
|
||||||
| pacupd | sudo pacman -Sy && sudo abs | Update and refresh the local package and ABS databases against repositories |
|
|
||||||
| pacupd | sudo pacman -Sy && sudo aur | Update and refresh the local package and AUR databases against repositories |
|
|
||||||
| pacupd | sudo pacman -Sy | Update and refresh the local package database against repositories |
|
|
||||||
| pacupg | sudo pacman -Syu | Synchronize with repositories before upgrading packages that are out of date on the local system. |
|
|
||||||
| yaconf | yaourt -C | Fix all configuration files with vimdiff |
|
| yaconf | yaourt -C | Fix all configuration files with vimdiff |
|
||||||
| yain | yaourt -S | Install specific package(s) from the repositories |
|
| yain | yaourt -S | Install packages from the repositories |
|
||||||
| yains | yaourt -U | Install specific package not from the repositories but from a file |
|
| yains | yaourt -U | Install a package from a local file |
|
||||||
| yainsd | yaourt -S --asdeps | Install given package(s) as dependencies of another package |
|
| yainsd | yaourt -S --asdeps | Install packages as dependencies of another package |
|
||||||
| yaloc | yaourt -Qi | Display information about a given package in the local database |
|
| yaloc | yaourt -Qi | Display information about a package in the local database |
|
||||||
| yalocs | yaourt -Qs | Search for package(s) in the local database |
|
| yalocs | yaourt -Qs | Search for packages in the local database |
|
||||||
| yalst | yaourt -Qe | List installed packages, even those installed from AUR (they're tagged as "local") |
|
| yalst | yaourt -Qe | List installed packages including from AUR (tagged as "local") |
|
||||||
| yamir | yaourt -Syy | Force refresh of all package lists after updating /etc/pacman.d/mirrorlist |
|
| yamir | yaourt -Syy | Force refresh of all package lists after updating mirrorlist |
|
||||||
| yaorph | yaourt -Qtd | Remove orphans using yaourt |
|
| yaorph | yaourt -Qtd | Remove orphans using yaourt |
|
||||||
| yare | yaourt -R | Remove the specified package(s), retaining its configuration(s) and required dependencies |
|
| yare | yaourt -R | Remove packages, keeping its settings and dependencies |
|
||||||
| yarem | yaourt -Rns | Remove the specified package(s), its configuration(s) and unneeded dependencies |
|
| yarem | yaourt -Rns | Remove packages, including its settings and unneeded dependencies |
|
||||||
| yarep | yaourt -Si | Display information about a given package in the repositories |
|
| yarep | yaourt -Si | Display information about a package in the repositories |
|
||||||
| yareps | yaourt -Ss | Search for package(s) in the repositories |
|
| yareps | yaourt -Ss | Search for packages in the repositories |
|
||||||
| yasu | yaourt --sucre | Same as yaupg, but without confirmation |
|
| yaupd | yaourt -Sy && sudo abs && sudo aur | Update and refresh local package, ABS and AUR databases |
|
||||||
| yaupd | yaourt -Sy && sudo abs && sudo aur | Update and refresh the local package, ABS and AUR databases against repositories |
|
| yaupd | yaourt -Sy && sudo abs | Update and refresh the local package and ABS databases |
|
||||||
| yaupd | yaourt -Sy && sudo abs | Update and refresh the local package and ABS databases against repositories |
|
| yaupd | yaourt -Sy && sudo aur | Update and refresh the local package and AUR databases |
|
||||||
| yaupd | yaourt -Sy && sudo aur | Update and refresh the local package and AUR databases against repositories |
|
| yaupd | yaourt -Sy | Update and refresh the local package database |
|
||||||
| yaupd | yaourt -Sy | Update and refresh the local package database against repositories |
|
| yaupg | yaourt -Syua | Sync with repositories before upgrading all packages (from AUR too) |
|
||||||
| yaupg | yaourt -Syua | Synchronize with repositories before upgrading packages (AUR packages too) that are out of date on the local system |
|
| yasu | yaourt -Syua --no-confirm | Same as `yaupg`, but without confirmation |
|
||||||
|
| upgrade | yaourt -Syu | Sync with repositories before upgrading packages |
|
||||||
|
|
||||||
|
#### PACMAN
|
||||||
|
|
||||||
|
| Alias | Command | Description |
|
||||||
|
|--------------|-----------------------------------------|--------------------------------------------------------------|
|
||||||
|
| pacin | sudo pacman -S | Install packages from the repositories |
|
||||||
|
| pacins | sudo pacman -U | Install a package from a local file |
|
||||||
|
| pacinsd | sudo pacman -S --asdeps | Install packages as dependencies of another package |
|
||||||
|
| pacloc | pacman -Qi | Display information about a package in the local database |
|
||||||
|
| paclocs | pacman -Qs | Search for packages in the local database |
|
||||||
|
| paclsorphans | sudo pacman -Qdt | List all orphaned packages |
|
||||||
|
| pacmir | sudo pacman -Syy | Force refresh of all package lists after updating mirrorlist |
|
||||||
|
| pacre | sudo pacman -R | Remove packages, keeping its settings and dependencies |
|
||||||
|
| pacrem | sudo pacman -Rns | Remove packages, including its settings and dependencies |
|
||||||
|
| pacrep | pacman -Si | Display information about a package in the repositories |
|
||||||
|
| pacreps | pacman -Ss | Search for packages in the repositories |
|
||||||
|
| pacrmorphans | sudo pacman -Rs $(pacman -Qtdq) | Delete all orphaned packages |
|
||||||
|
| pacupd | sudo pacman -Sy && sudo abs && sudo aur | Update and refresh the local package, ABS and AUR databases |
|
||||||
|
| pacupd | sudo pacman -Sy && sudo abs | Update and refresh the local package and ABS databases |
|
||||||
|
| pacupd | sudo pacman -Sy && sudo aur | Update and refresh the local package and AUR databases |
|
||||||
|
| pacupd | sudo pacman -Sy | Update and refresh the local package database |
|
||||||
|
| pacupg | sudo pacman -Syu | Sync with repositories before upgrading packages |
|
||||||
|
| upgrade | sudo pacman -Syu | Sync with repositories before upgrading packages |
|
||||||
|
|
||||||
| Function | Description |
|
| Function | Description |
|
||||||
|----------------|:------------------------------------------------------------------------------------------------------------------|
|
|----------------|------------------------------------------------------|
|
||||||
| pacdisowned | List all disowned files in your system |
|
| pacdisowned | List all disowned files in your system |
|
||||||
| paclist | List all installed packages with a short description - [Source](https://bbs.archlinux.org/viewtopic.php?id=93683) |
|
| paclist | List all installed packages with a short description |
|
||||||
| pacmanallkeys | Get all keys for developers and trusted users |
|
| pacmanallkeys | Get all keys for developers and trusted users |
|
||||||
| pacmansignkeys | |
|
| pacmansignkeys | Locally trust all keys passed as parameters |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### CONTRIBUTORS
|
## Contributors
|
||||||
|
|
||||||
- Benjamin Boudreau - dreurmail@gmail.com
|
- Benjamin Boudreau - dreurmail@gmail.com
|
||||||
- Celso Miranda - contacto@celsomiranda.net
|
- Celso Miranda - contacto@celsomiranda.net
|
||||||
- KhasMek - Boushh@gmail.com
|
- KhasMek - Boushh@gmail.com
|
||||||
- Martin Putniorz - mputniorz@gmail.com
|
- Martin Putniorz - mputniorz@gmail.com
|
||||||
- MatthR3D - matthr3d@gmail.com
|
- MatthR3D - matthr3d@gmail.com
|
||||||
- ornicar - thibault.duplessis@gmail.com
|
- ornicar - thibault.duplessis@gmail.com
|
||||||
|
|
||||||
---
|
|
||||||
|
|
|
||||||
|
|
@ -1,75 +1,75 @@
|
||||||
# Archlinux zsh aliases and functions
|
if ! (( $+commands[yaourt] )); then
|
||||||
# Usage is also described at https://github.com/robbyrussell/oh-my-zsh/wiki/Plugins
|
|
||||||
|
|
||||||
# Look for yaourt, and add some useful functions if we have it.
|
|
||||||
if (( $+commands[yaourt] )); then
|
|
||||||
upgrade () {
|
|
||||||
yaourt -Syu
|
|
||||||
}
|
|
||||||
alias yaconf='yaourt -C' # Fix all configuration files with vimdiff
|
|
||||||
# Pacman - https://wiki.archlinux.org/index.php/Pacman_Tips
|
|
||||||
alias yaupg='yaourt -Syua' # Synchronize with repositories before upgrading packages (AUR packages too) that are out of date on the local system.
|
|
||||||
alias yasu='yaourt --sucre' # Same as yaupg, but without confirmation
|
|
||||||
alias yain='yaourt -S' # Install specific package(s) from the repositories
|
|
||||||
alias yains='yaourt -U' # Install specific package not from the repositories but from a file
|
|
||||||
alias yare='yaourt -R' # Remove the specified package(s), retaining its configuration(s) and required dependencies
|
|
||||||
alias yarem='yaourt -Rns' # Remove the specified package(s), its configuration(s) and unneeded dependencies
|
|
||||||
alias yarep='yaourt -Si' # Display information about a given package in the repositories
|
|
||||||
alias yareps='yaourt -Ss' # Search for package(s) in the repositories
|
|
||||||
alias yaloc='yaourt -Qi' # Display information about a given package in the local database
|
|
||||||
alias yalocs='yaourt -Qs' # Search for package(s) in the local database
|
|
||||||
alias yalst='yaourt -Qe' # List installed packages, even those installed from AUR (they're tagged as "local")
|
|
||||||
alias yaorph='yaourt -Qtd' # Remove orphans using yaourt
|
|
||||||
# Additional yaourt alias examples
|
|
||||||
if (( $+commands[abs] && $+commands[aur] )); then
|
|
||||||
alias yaupd='yaourt -Sy && sudo abs && sudo aur' # Update and refresh the local package, ABS and AUR databases against repositories
|
|
||||||
elif (( $+commands[abs] )); then
|
|
||||||
alias yaupd='yaourt -Sy && sudo abs' # Update and refresh the local package and ABS databases against repositories
|
|
||||||
elif (( $+commands[aur] )); then
|
|
||||||
alias yaupd='yaourt -Sy && sudo aur' # Update and refresh the local package and AUR databases against repositories
|
|
||||||
else
|
|
||||||
alias yaupd='yaourt -Sy' # Update and refresh the local package database against repositories
|
|
||||||
fi
|
|
||||||
alias yainsd='yaourt -S --asdeps' # Install given package(s) as dependencies of another package
|
|
||||||
alias yamir='yaourt -Syy' # Force refresh of all package lists after updating /etc/pacman.d/mirrorlist
|
|
||||||
else
|
|
||||||
upgrade() {
|
upgrade() {
|
||||||
sudo pacman -Syu
|
sudo pacman -Syu
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
upgrade () {
|
||||||
|
yaourt -Syu
|
||||||
|
}
|
||||||
|
|
||||||
|
alias yaconf='yaourt -C'
|
||||||
|
alias yaupg='yaourt -Syua'
|
||||||
|
alias yasu='yaourt --Syua --no-confirm'
|
||||||
|
alias yain='yaourt -S'
|
||||||
|
alias yains='yaourt -U'
|
||||||
|
alias yare='yaourt -R'
|
||||||
|
alias yarem='yaourt -Rns'
|
||||||
|
alias yarep='yaourt -Si'
|
||||||
|
alias yareps='yaourt -Ss'
|
||||||
|
alias yaloc='yaourt -Qi'
|
||||||
|
alias yalocs='yaourt -Qs'
|
||||||
|
alias yalst='yaourt -Qe'
|
||||||
|
alias yaorph='yaourt -Qtd'
|
||||||
|
alias yainsd='yaourt -S --asdeps'
|
||||||
|
alias yamir='yaourt -Syy'
|
||||||
|
|
||||||
|
|
||||||
|
if (( $+commands[abs] && $+commands[aur] )); then
|
||||||
|
alias yaupd='yaourt -Sy && sudo abs && sudo aur'
|
||||||
|
elif (( $+commands[abs] )); then
|
||||||
|
alias yaupd='yaourt -Sy && sudo abs'
|
||||||
|
elif (( $+commands[aur] )); then
|
||||||
|
alias yaupd='yaourt -Sy && sudo aur'
|
||||||
|
else
|
||||||
|
alias yaupd='yaourt -Sy'
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Pacman - https://wiki.archlinux.org/index.php/Pacman_Tips
|
# Pacman - https://wiki.archlinux.org/index.php/Pacman_Tips
|
||||||
alias pacupg='sudo pacman -Syu' # Synchronize with repositories before upgrading packages that are out of date on the local system.
|
alias pacupg='sudo pacman -Syu'
|
||||||
alias pacin='sudo pacman -S' # Install specific package(s) from the repositories
|
alias pacin='sudo pacman -S'
|
||||||
alias pacins='sudo pacman -U' # Install specific package not from the repositories but from a file
|
alias pacins='sudo pacman -U'
|
||||||
alias pacre='sudo pacman -R' # Remove the specified package(s), retaining its configuration(s) and required dependencies
|
alias pacre='sudo pacman -R'
|
||||||
alias pacrem='sudo pacman -Rns' # Remove the specified package(s), its configuration(s) and unneeded dependencies
|
alias pacrem='sudo pacman -Rns'
|
||||||
alias pacrep='pacman -Si' # Display information about a given package in the repositories
|
alias pacrep='pacman -Si'
|
||||||
alias pacreps='pacman -Ss' # Search for package(s) in the repositories
|
alias pacreps='pacman -Ss'
|
||||||
alias pacloc='pacman -Qi' # Display information about a given package in the local database
|
alias pacloc='pacman -Qi'
|
||||||
alias paclocs='pacman -Qs' # Search for package(s) in the local database
|
alias paclocs='pacman -Qs'
|
||||||
# Additional pacman alias examples
|
alias pacinsd='sudo pacman -S --asdeps'
|
||||||
if (( $+commands[abs] && $+commands[aur] )); then
|
alias pacmir='sudo pacman -Syy'
|
||||||
alias pacupd='sudo pacman -Sy && sudo abs && sudo aur' # Update and refresh the local package, ABS and AUR databases against repositories
|
|
||||||
elif (( $+commands[abs] )); then
|
|
||||||
alias pacupd='sudo pacman -Sy && sudo abs' # Update and refresh the local package and ABS databases against repositories
|
|
||||||
elif (( $+commands[aur] )); then
|
|
||||||
alias pacupd='sudo pacman -Sy && sudo aur' # Update and refresh the local package and AUR databases against repositories
|
|
||||||
else
|
|
||||||
alias pacupd='sudo pacman -Sy' # Update and refresh the local package database against repositories
|
|
||||||
fi
|
|
||||||
alias pacinsd='sudo pacman -S --asdeps' # Install given package(s) as dependencies of another package
|
|
||||||
alias pacmir='sudo pacman -Syy' # Force refresh of all package lists after updating /etc/pacman.d/mirrorlist
|
|
||||||
|
|
||||||
# https://bbs.archlinux.org/viewtopic.php?id=93683
|
|
||||||
paclist() {
|
|
||||||
LC_ALL=C pacman -Qei $(pacman -Qu|cut -d" " -f 1)|awk ' BEGIN {FS=":"}/^Name/{printf("\033[1;36m%s\033[1;37m", $2)}/^Description/{print $2}'
|
|
||||||
}
|
|
||||||
|
|
||||||
alias paclsorphans='sudo pacman -Qdt'
|
alias paclsorphans='sudo pacman -Qdt'
|
||||||
alias pacrmorphans='sudo pacman -Rs $(pacman -Qtdq)'
|
alias pacrmorphans='sudo pacman -Rs $(pacman -Qtdq)'
|
||||||
|
|
||||||
|
|
||||||
|
if (( $+commands[abs] && $+commands[aur] )); then
|
||||||
|
alias pacupd='sudo pacman -Sy && sudo abs && sudo aur'
|
||||||
|
elif (( $+commands[abs] )); then
|
||||||
|
alias pacupd='sudo pacman -Sy && sudo abs'
|
||||||
|
elif (( $+commands[aur] )); then
|
||||||
|
alias pacupd='sudo pacman -Sy && sudo aur'
|
||||||
|
else
|
||||||
|
alias pacupd='sudo pacman -Sy'
|
||||||
|
fi
|
||||||
|
|
||||||
|
paclist() {
|
||||||
|
# Source: https://bbs.archlinux.org/viewtopic.php?id=93683
|
||||||
|
LC_ALL=C pacman -Qei $(pacman -Qu | cut -d " " -f 1) | \
|
||||||
|
awk 'BEGIN {FS=":"} /^Name/{printf("\033[1;36m%s\033[1;37m", $2)} /^Description/{print $2}'
|
||||||
|
}
|
||||||
|
|
||||||
pacdisowned() {
|
pacdisowned() {
|
||||||
|
emulate -L zsh
|
||||||
|
|
||||||
tmp=${TMPDIR-/tmp}/pacman-disowned-$UID-$$
|
tmp=${TMPDIR-/tmp}/pacman-disowned-$UID-$$
|
||||||
db=$tmp/db
|
db=$tmp/db
|
||||||
fs=$tmp/fs
|
fs=$tmp/fs
|
||||||
|
|
@ -79,21 +79,21 @@ pacdisowned() {
|
||||||
|
|
||||||
pacman -Qlq | sort -u > "$db"
|
pacman -Qlq | sort -u > "$db"
|
||||||
|
|
||||||
find /bin /etc /lib /sbin /usr \
|
find /bin /etc /lib /sbin /usr ! -name lost+found \
|
||||||
! -name lost+found \
|
|
||||||
\( -type d -printf '%p/\n' -o -print \) | sort > "$fs"
|
\( -type d -printf '%p/\n' -o -print \) | sort > "$fs"
|
||||||
|
|
||||||
comm -23 "$fs" "$db"
|
comm -23 "$fs" "$db"
|
||||||
}
|
}
|
||||||
|
|
||||||
pacmanallkeys() {
|
pacmanallkeys() {
|
||||||
# Get all keys for developers and trusted users
|
emulate -L zsh
|
||||||
curl https://www.archlinux.org/{developers,trustedusers}/ |
|
curl -s https://www.archlinux.org/people/{developers,trustedusers}/ | \
|
||||||
awk -F\" '(/pgp.mit.edu/) {sub(/.*search=0x/,"");print $1}' |
|
awk -F\" '(/pgp.mit.edu/) { sub(/.*search=0x/,""); print $1}' | \
|
||||||
xargs sudo pacman-key --recv-keys
|
xargs sudo pacman-key --recv-keys
|
||||||
}
|
}
|
||||||
|
|
||||||
pacmansignkeys() {
|
pacmansignkeys() {
|
||||||
|
emulate -L zsh
|
||||||
for key in $*; do
|
for key in $*; do
|
||||||
sudo pacman-key --recv-keys $key
|
sudo pacman-key --recv-keys $key
|
||||||
sudo pacman-key --lsign-key $key
|
sudo pacman-key --lsign-key $key
|
||||||
|
|
|
||||||
11
plugins/cask/README.md
Normal file
11
plugins/cask/README.md
Normal file
|
|
@ -0,0 +1,11 @@
|
||||||
|
# cask plugin
|
||||||
|
|
||||||
|
Loads `cask` completion from non-standard locations, such as if installed
|
||||||
|
via Homebrew or others. To enable it, add `cask` to your plugins array:
|
||||||
|
|
||||||
|
```zsh
|
||||||
|
plugins=(... cask)
|
||||||
|
```
|
||||||
|
|
||||||
|
Make sure you have the `cask` directory in your `$PATH` before loading
|
||||||
|
Oh My Zsh, otherwise you'll get the "command not found" error.
|
||||||
|
|
@ -1,5 +1,26 @@
|
||||||
if which cask &> /dev/null; then
|
() {
|
||||||
source $(dirname $(which cask))/../etc/cask_completion.zsh
|
emulate -L zsh
|
||||||
else
|
|
||||||
print "zsh cask plugin: cask not found"
|
if ! (( $+commands[cask] )); then
|
||||||
|
print "zsh cask plugin: cask command not found" >&2
|
||||||
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
cask_base=${commands[cask]:h:h}
|
||||||
|
|
||||||
|
# Plain cask installation location (for Cask 0.7.2 and earlier)
|
||||||
|
comp_files=($cask_base/etc/cask_completion.zsh)
|
||||||
|
|
||||||
|
# Mac Homebrew installs the completion in a different location
|
||||||
|
if (( $+commands[brew] )); then
|
||||||
|
comp_files+=($(brew --prefix)/share/zsh/site-functions/cask_completion.zsh)
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Load first found file
|
||||||
|
for f in $comp_files; do
|
||||||
|
if [[ -f "$f" ]]; then
|
||||||
|
source "$f"
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -8,11 +8,21 @@
|
||||||
# pushd +N: start counting from left of `dirs' output
|
# pushd +N: start counting from left of `dirs' output
|
||||||
# pushd -N: start counting from right of `dirs' output
|
# pushd -N: start counting from right of `dirs' output
|
||||||
|
|
||||||
|
switch-to-dir () {
|
||||||
|
while ! builtin pushd -q $1 &>/dev/null; do
|
||||||
|
# We found a missing directory: pop it out of the dir stack
|
||||||
|
builtin popd -q $1
|
||||||
|
|
||||||
|
# Stop trying if there are no more directories in the dir stack
|
||||||
|
[[ ${#dirstack} -eq 0 ]] && break
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
insert-cycledleft () {
|
insert-cycledleft () {
|
||||||
emulate -L zsh
|
emulate -L zsh
|
||||||
setopt nopushdminus
|
setopt nopushdminus
|
||||||
|
|
||||||
builtin pushd -q +1 &>/dev/null || true
|
switch-to-dir +1
|
||||||
zle reset-prompt
|
zle reset-prompt
|
||||||
}
|
}
|
||||||
zle -N insert-cycledleft
|
zle -N insert-cycledleft
|
||||||
|
|
@ -21,7 +31,7 @@ insert-cycledright () {
|
||||||
emulate -L zsh
|
emulate -L zsh
|
||||||
setopt nopushdminus
|
setopt nopushdminus
|
||||||
|
|
||||||
builtin pushd -q -0 &>/dev/null || true
|
switch-to-dir -0
|
||||||
zle reset-prompt
|
zle reset-prompt
|
||||||
}
|
}
|
||||||
zle -N insert-cycledright
|
zle -N insert-cycledright
|
||||||
|
|
|
||||||
|
|
@ -1,36 +1,31 @@
|
||||||
# Git flow plugin installation
|
# Git-Flow plugin
|
||||||
|
|
||||||
```bash
|
This plugin adds completion and aliases for the `git-flow` command. More information
|
||||||
git clone https://github.com/robbyrussell/oh-my-zsh.git
|
at https://github.com/nvie/gitflow.
|
||||||
|
|
||||||
cp oh-my-zsh/plugins/git-flow/git-flow.plugin.zsh ~/.git-flow-completion.zsh
|
Enable git-flow plugin in your zshrc file:
|
||||||
|
|
||||||
vim ~/.zshrc
|
|
||||||
|
|
||||||
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
|
|
||||||
# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
|
|
||||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
|
||||||
# Add wisely, as too many plugins slow down shell startup.
|
|
||||||
|
|
||||||
plugins=(git git-flow)
|
|
||||||
|
|
||||||
source ~/.git-flow-completion.zsh
|
|
||||||
```
|
```
|
||||||
## Your new git-flow alias
|
plugins=(... git-flow)
|
||||||
|
|
||||||
```bash
|
|
||||||
alias gfl='git flow'
|
|
||||||
alias gfli='git flow init'
|
|
||||||
alias gcd='git checkout develop'
|
|
||||||
alias gch='git checkout hotfix'
|
|
||||||
alias gcr='git checkout release'
|
|
||||||
alias gflf='git flow feature'
|
|
||||||
alias gflh='git flow hotfix'
|
|
||||||
alias gflr='git flow release'
|
|
||||||
alias gflfs='git flow feature start'
|
|
||||||
alias gflhs='git flow hotfix start'
|
|
||||||
alias gflrs='git flow release start'
|
|
||||||
alias gflff='git flow feature finish'
|
|
||||||
alias gflhf='git flow hotfix finish'
|
|
||||||
alias gflrf='git flow release finish'
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Aliases
|
||||||
|
|
||||||
|
More information about `git-flow` commands:
|
||||||
|
https://github.com/nvie/gitflow/wiki/Command-Line-Arguments
|
||||||
|
|
||||||
|
| Alias | Command | Description |
|
||||||
|
|---------|---------------------------|----------------------------------------|
|
||||||
|
| `gfl` | `git flow` | Git-Flow command |
|
||||||
|
| `gfli` | `git flow init` | Initialize git-flow repository |
|
||||||
|
| `gcd` | `git checkout develop` | Check out develop branch |
|
||||||
|
| `gch` | `git checkout hotfix` | Check out hotfix branch |
|
||||||
|
| `gcr` | `git checkout release` | Check out release branch |
|
||||||
|
| `gflf` | `git flow feature` | List existing feature branches |
|
||||||
|
| `gflh` | `git flow hotfix` | List existing hotfix branches |
|
||||||
|
| `gflr` | `git flow release` | List existing release branches |
|
||||||
|
| `gflfs` | `git flow feature start` | Start a new feature: `gflfs <name>` |
|
||||||
|
| `gflhs` | `git flow hotfix start` | Start a new hotfix: `gflhs <version>` |
|
||||||
|
| `gflrs` | `git flow release start` | Start a new release: `gflrs <version>` |
|
||||||
|
| `gflff` | `git flow feature finish` | Finish feature: `gflff <name>` |
|
||||||
|
| `gflhf` | `git flow hotfix finish` | Finish hotfix: `gflhf <version>` |
|
||||||
|
| `gflrf` | `git flow release finish` | Finish release: `gflrf <version>` |
|
||||||
|
|
|
||||||
|
|
@ -70,6 +70,7 @@ alias gcl='git clone --recursive'
|
||||||
alias gclean='git clean -fd'
|
alias gclean='git clean -fd'
|
||||||
alias gpristine='git reset --hard && git clean -dfx'
|
alias gpristine='git reset --hard && git clean -dfx'
|
||||||
alias gcm='git checkout master'
|
alias gcm='git checkout master'
|
||||||
|
alias gcd='git checkout develop'
|
||||||
alias gcmsg='git commit -m'
|
alias gcmsg='git commit -m'
|
||||||
alias gco='git checkout'
|
alias gco='git checkout'
|
||||||
alias gcount='git shortlog -sn'
|
alias gcount='git shortlog -sn'
|
||||||
|
|
@ -151,7 +152,7 @@ compdef _git ggpush=git-checkout
|
||||||
alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)'
|
alias ggsup='git branch --set-upstream-to=origin/$(git_current_branch)'
|
||||||
alias gpsup='git push --set-upstream origin $(git_current_branch)'
|
alias gpsup='git push --set-upstream origin $(git_current_branch)'
|
||||||
|
|
||||||
alias gh='git help'
|
alias ghh='git help'
|
||||||
|
|
||||||
alias gignore='git update-index --assume-unchanged'
|
alias gignore='git update-index --assume-unchanged'
|
||||||
alias gignored='git ls-files -v | grep "^[[:lower:]]"'
|
alias gignored='git ls-files -v | grep "^[[:lower:]]"'
|
||||||
|
|
@ -217,6 +218,7 @@ alias gss='git status -s'
|
||||||
alias gst='git status'
|
alias gst='git status'
|
||||||
alias gsta='git stash save'
|
alias gsta='git stash save'
|
||||||
alias gstaa='git stash apply'
|
alias gstaa='git stash apply'
|
||||||
|
alias gstc='git stash clear'
|
||||||
alias gstd='git stash drop'
|
alias gstd='git stash drop'
|
||||||
alias gstl='git stash list'
|
alias gstl='git stash list'
|
||||||
alias gstp='git stash pop'
|
alias gstp='git stash pop'
|
||||||
|
|
|
||||||
|
|
@ -179,5 +179,15 @@ __go_tool_complete() {
|
||||||
|
|
||||||
compdef __go_tool_complete go
|
compdef __go_tool_complete go
|
||||||
|
|
||||||
# aliases
|
# aliases: go<~>
|
||||||
alias gfa='go fmt . ./...'
|
alias gob='go build'
|
||||||
|
alias goc='go clean'
|
||||||
|
alias god='go doc'
|
||||||
|
alias gof='go fmt'
|
||||||
|
alias gofa='go fmt . ./...'
|
||||||
|
alias gog='go get'
|
||||||
|
alias goi='go install'
|
||||||
|
alias gol='go list'
|
||||||
|
alias gor='go run'
|
||||||
|
alias got='go test'
|
||||||
|
alias gov='go vet'
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,12 @@
|
||||||
eval "$(npm completion 2>/dev/null)"
|
(( $+commands[npm] )) && {
|
||||||
|
__NPM_COMPLETION_FILE="${ZSH_CACHE_DIR}/npm_completion"
|
||||||
|
|
||||||
|
if [[ ! -f $__NPM_COMPLETION_FILE ]]; then
|
||||||
|
npm completion >! $__NPM_COMPLETION_FILE || rm -f $__NPM_COMPLETION_FILE
|
||||||
|
fi
|
||||||
|
|
||||||
|
source $__NPM_COMPLETION_FILE
|
||||||
|
}
|
||||||
|
|
||||||
# Install dependencies globally
|
# Install dependencies globally
|
||||||
alias npmg="npm i -g "
|
alias npmg="npm i -g "
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,8 @@ Original author: [Sorin Ionescu](https://github.com/sorin-ionescu)
|
||||||
| Command | Description |
|
| Command | Description |
|
||||||
| :-------------- | :----------------------------------------------- |
|
| :-------------- | :----------------------------------------------- |
|
||||||
| `tab` | Open the current directory in a new tab |
|
| `tab` | Open the current directory in a new tab |
|
||||||
|
| `split_tab` | Split the current terminal tab horizontally |
|
||||||
|
| `vsplit_tab` | Split the current terminal tab vertically |
|
||||||
| `ofd` | Open the current directory in a Finder window |
|
| `ofd` | Open the current directory in a Finder window |
|
||||||
| `pfd` | Return the path of the frontmost Finder window |
|
| `pfd` | Return the path of the frontmost Finder window |
|
||||||
| `pfs` | Return the current Finder selection |
|
| `pfs` | Return the current Finder selection |
|
||||||
|
|
@ -27,3 +29,4 @@ Original author: [Sorin Ionescu](https://github.com/sorin-ionescu)
|
||||||
| `man-preview` | Open a specified man page in Preview app |
|
| `man-preview` | Open a specified man page in Preview app |
|
||||||
| `showfiles` | Show hidden files |
|
| `showfiles` | Show hidden files |
|
||||||
| `hidefiles` | Hide the hidden files |
|
| `hidefiles` | Hide the hidden files |
|
||||||
|
| `itunes` | Control iTunes. User `itunes -h` for usage details |
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@ EOF
|
||||||
|
|
||||||
elif [[ "$the_app" == 'iTerm2' ]]; then
|
elif [[ "$the_app" == 'iTerm2' ]]; then
|
||||||
osascript <<EOF
|
osascript <<EOF
|
||||||
tell application "iTerm"
|
tell application "iTerm2"
|
||||||
tell current window
|
tell current window
|
||||||
create tab with default profile
|
create tab with default profile
|
||||||
tell current session to write text "${command}"
|
tell current session to write text "${command}"
|
||||||
|
|
@ -81,7 +81,7 @@ EOF
|
||||||
|
|
||||||
elif [[ "$the_app" == 'iTerm2' ]]; then
|
elif [[ "$the_app" == 'iTerm2' ]]; then
|
||||||
osascript <<EOF
|
osascript <<EOF
|
||||||
tell application "iTerm"
|
tell application "iTerm2"
|
||||||
tell current session of first window
|
tell current session of first window
|
||||||
set newSession to (split vertically with same profile)
|
set newSession to (split vertically with same profile)
|
||||||
tell newSession
|
tell newSession
|
||||||
|
|
@ -121,7 +121,7 @@ EOF
|
||||||
|
|
||||||
elif [[ "$the_app" == 'iTerm2' ]]; then
|
elif [[ "$the_app" == 'iTerm2' ]]; then
|
||||||
osascript <<EOF
|
osascript <<EOF
|
||||||
tell application "iTerm"
|
tell application "iTerm2"
|
||||||
tell current session of first window
|
tell current session of first window
|
||||||
set newSession to (split horizontally with same profile)
|
set newSession to (split horizontally with same profile)
|
||||||
tell newSession
|
tell newSession
|
||||||
|
|
|
||||||
9
plugins/perms/README.md
Normal file
9
plugins/perms/README.md
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
## Perms
|
||||||
|
|
||||||
|
Plugin to handle some unix filesystem permissions quickly
|
||||||
|
|
||||||
|
### Usage
|
||||||
|
|
||||||
|
* `set755` recursively sets all directories located within the current working directory and sub directories to octal 755.
|
||||||
|
* `set644` recursively sets all files located within the current working directory and sub directories to octal 644.
|
||||||
|
* `fixperms` is a wrapper around `set755` and `set644` applied to a specified directory or the current directory otherwise. It also prompts prior to execution unlike the other two aliases.
|
||||||
78
plugins/perms/perms.plugin.zsh
Normal file
78
plugins/perms/perms.plugin.zsh
Normal file
|
|
@ -0,0 +1,78 @@
|
||||||
|
# Some useful commands for setting permissions.
|
||||||
|
#
|
||||||
|
# Rory Hardy [GneatGeek]
|
||||||
|
# Andrew Janke [apjanke]
|
||||||
|
|
||||||
|
### Aliases
|
||||||
|
|
||||||
|
# Set all files' permissions to 644 recursively in a directory
|
||||||
|
alias set644='find . -type f -print0 | xargs -0 chmod 644'
|
||||||
|
|
||||||
|
# Set all directories' permissions to 755 recursively in a directory
|
||||||
|
alias set755='find . -type d -print0 | xargs -0 chmod 755'
|
||||||
|
|
||||||
|
### Functions
|
||||||
|
|
||||||
|
# fixperms - fix permissions on files and directories, with confirmation
|
||||||
|
# Returns 0 on success, nonzero if any errors occurred
|
||||||
|
fixperms () {
|
||||||
|
local opts confirm target exit_status chmod_opts use_slow_mode
|
||||||
|
zparseopts -E -D -a opts -help -slow v+=chmod_opts
|
||||||
|
if [[ $# > 1 || -n "${opts[(r)--help]}" ]]; then
|
||||||
|
cat <<EOF
|
||||||
|
Usage: fixperms [-v] [--help] [--slow] [target]
|
||||||
|
|
||||||
|
target is the file or directory to change permissions on. If omitted,
|
||||||
|
the current directory is taken to be the target.
|
||||||
|
|
||||||
|
-v enables verbose output (may be supplied multiple times)
|
||||||
|
|
||||||
|
--slow will use a slower but more robust mode, which is effective if
|
||||||
|
directories themselves have permissions that forbid you from
|
||||||
|
traversing them.
|
||||||
|
|
||||||
|
EOF
|
||||||
|
exit_status=$(( $# > 1 ))
|
||||||
|
return $exit_status
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $# == 0 ]]; then
|
||||||
|
target="."
|
||||||
|
else
|
||||||
|
target="$1"
|
||||||
|
fi
|
||||||
|
if [[ -n ${opts[(r)--slow]} ]]; then use_slow=true; else use_slow=false; fi
|
||||||
|
|
||||||
|
# Because this requires confirmation, bail in noninteractive shells
|
||||||
|
if [[ ! -o interactive ]]; then
|
||||||
|
echo "fixperms: cannot run in noninteractive shell"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Fixing perms on $target?"
|
||||||
|
printf '%s' "Proceed? (y|n) "
|
||||||
|
read confirm
|
||||||
|
if [[ "$confirm" != y ]]; then
|
||||||
|
# User aborted
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# This xargs form is faster than -exec chmod <N> {} \; but will encounter
|
||||||
|
# issues if the directories themselves have permissions such that you can't
|
||||||
|
# recurse in to them. If that happens, just rerun this a few times.
|
||||||
|
exit_status=0;
|
||||||
|
if [[ $use_slow == true ]]; then
|
||||||
|
# Process directories first so non-traversable ones are fixed as we go
|
||||||
|
find "$target" -type d -exec chmod $chmod_opts 755 {} \;
|
||||||
|
if [[ $? != 0 ]]; then exit_status=$?; fi
|
||||||
|
find "$target" -type f -exec chmod $chmod_opts 644 {} \;
|
||||||
|
if [[ $? != 0 ]]; then exit_status=$?; fi
|
||||||
|
else
|
||||||
|
find "$target" -type d -print0 | xargs -0 chmod $chmod_opts 755
|
||||||
|
if [[ $? != 0 ]]; then exit_status=$?; fi
|
||||||
|
find "$target" -type f -print0 | xargs -0 chmod $chmod_opts 644
|
||||||
|
if [[ $? != 0 ]]; then exit_status=$?; fi
|
||||||
|
fi
|
||||||
|
echo "Complete"
|
||||||
|
return $exit_status
|
||||||
|
}
|
||||||
|
|
@ -76,3 +76,6 @@ zsh-pip-test-clean-packages() {
|
||||||
echo "the djangopypi2 index is fine"
|
echo "the djangopypi2 index is fine"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
alias pip="noglob pip" # allows square brackets for pip command invocation
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,11 +14,6 @@ pj () {
|
||||||
project=$*
|
project=$*
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -z "$project" ]]; then
|
|
||||||
echo "You have to specify a project name."
|
|
||||||
return
|
|
||||||
fi
|
|
||||||
|
|
||||||
for basedir ($PROJECT_PATHS); do
|
for basedir ($PROJECT_PATHS); do
|
||||||
if [[ -d "$basedir/$project" ]]; then
|
if [[ -d "$basedir/$project" ]]; then
|
||||||
$cmd "$basedir/$project"
|
$cmd "$basedir/$project"
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@ function _plugin__start_agent()
|
||||||
zstyle -s :omz:plugins:ssh-agent lifetime lifetime
|
zstyle -s :omz:plugins:ssh-agent lifetime lifetime
|
||||||
|
|
||||||
# start ssh-agent and setup environment
|
# start ssh-agent and setup environment
|
||||||
/usr/bin/env ssh-agent ${lifetime:+-t} ${lifetime} | sed 's/^echo/#echo/' > ${_plugin__ssh_env}
|
/usr/bin/env ssh-agent ${lifetime:+-t} ${lifetime} | sed 's/^echo/#echo/' >! ${_plugin__ssh_env}
|
||||||
chmod 600 ${_plugin__ssh_env}
|
chmod 600 ${_plugin__ssh_env}
|
||||||
. ${_plugin__ssh_env} > /dev/null
|
. ${_plugin__ssh_env} > /dev/null
|
||||||
|
|
||||||
|
|
|
||||||
16
plugins/tig/README.md
Normal file
16
plugins/tig/README.md
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
# `tig` plugin
|
||||||
|
|
||||||
|
This plugin adds some aliases for people who work with `tig` in
|
||||||
|
a regular basis. To use it, add `tig` to your plugins array:
|
||||||
|
|
||||||
|
```zsh
|
||||||
|
plugins=(... tig)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
| Alias | Command | Description |
|
||||||
|
|-------|----------------|-------------------------------------------------|
|
||||||
|
| `tis` | `tig status` | Show git status |
|
||||||
|
| `til` | `tig log` | Show git log |
|
||||||
|
| `tib` | `tig blame -C` | `git-blame` a file detecting copies and renames |
|
||||||
3
plugins/tig/tig.plugin.zsh
Normal file
3
plugins/tig/tig.plugin.zsh
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
alias tis='tig status'
|
||||||
|
alias til='tig log'
|
||||||
|
alias tib='tig blame -C'
|
||||||
|
|
@ -1,10 +1,12 @@
|
||||||
|
# If you come from bash you might have to change your $PATH.
|
||||||
|
# export PATH=$HOME/bin:/usr/local/bin:$PATH
|
||||||
|
|
||||||
# Path to your oh-my-zsh installation.
|
# Path to your oh-my-zsh installation.
|
||||||
export ZSH=$HOME/.oh-my-zsh
|
export ZSH=$HOME/.oh-my-zsh
|
||||||
|
|
||||||
# Set name of the theme to load.
|
# Set name of the theme to load. Optionally, if you set this to "random"
|
||||||
# Look in ~/.oh-my-zsh/themes/
|
# it'll load a random theme each time that oh-my-zsh is loaded.
|
||||||
# Optionally, if you set this to "random", it'll load a random theme each
|
# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
|
||||||
# time that oh-my-zsh is loaded.
|
|
||||||
ZSH_THEME="robbyrussell"
|
ZSH_THEME="robbyrussell"
|
||||||
|
|
||||||
# Uncomment the following line to use case-sensitive completion.
|
# Uncomment the following line to use case-sensitive completion.
|
||||||
|
|
@ -51,13 +53,12 @@ ZSH_THEME="robbyrussell"
|
||||||
# Add wisely, as too many plugins slow down shell startup.
|
# Add wisely, as too many plugins slow down shell startup.
|
||||||
plugins=(git)
|
plugins=(git)
|
||||||
|
|
||||||
|
source $ZSH/oh-my-zsh.sh
|
||||||
|
|
||||||
# User configuration
|
# User configuration
|
||||||
|
|
||||||
# export PATH="/usr/bin:/bin:/usr/sbin:/sbin:$PATH"
|
|
||||||
# export MANPATH="/usr/local/man:$MANPATH"
|
# export MANPATH="/usr/local/man:$MANPATH"
|
||||||
|
|
||||||
source $ZSH/oh-my-zsh.sh
|
|
||||||
|
|
||||||
# You may need to manually set your language environment
|
# You may need to manually set your language environment
|
||||||
# export LANG=en_US.UTF-8
|
# export LANG=en_US.UTF-8
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@ ZSH_THEME_GIT_TIME_SINCE_COMMIT_NEUTRAL="%{$fg[cyan]%}"
|
||||||
function git_time_since_commit() {
|
function git_time_since_commit() {
|
||||||
if git rev-parse --git-dir > /dev/null 2>&1; then
|
if git rev-parse --git-dir > /dev/null 2>&1; then
|
||||||
# Only proceed if there is actually a commit.
|
# Only proceed if there is actually a commit.
|
||||||
if [[ $(git log 2>&1 > /dev/null | grep -c "^fatal: bad default revision") == 0 ]]; then
|
if git log -n 1 > /dev/null 2>&1; then
|
||||||
# Get the last commit.
|
# Get the last commit.
|
||||||
last_commit=`git log --pretty=format:'%at' -1 2> /dev/null`
|
last_commit=`git log --pretty=format:'%at' -1 2> /dev/null`
|
||||||
now=`date +%s`
|
now=`date +%s`
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue