Merge remote-tracking branch 'upstream/master'

This commit is contained in:
Olivier Mutschler 2016-08-27 18:54:16 +00:00
commit 4e7bab6111
21 changed files with 343 additions and 173 deletions

View file

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

View file

@ -1,64 +1,69 @@
## ARCHLINUX PLUGIN # Archlinux plugin
## Features
#### YAOURT
| Alias | Command | Description |
|---------|------------------------------------|---------------------------------------------------------------------|
| yaconf | yaourt -C | Fix all configuration files with vimdiff |
| yain | yaourt -S | Install packages from the repositories |
| yains | yaourt -U | Install a package from a local file |
| yainsd | yaourt -S --asdeps | Install packages as dependencies of another package |
| yaloc | yaourt -Qi | Display information about a package in the local database |
| yalocs | yaourt -Qs | Search for packages in the local database |
| yalst | yaourt -Qe | List installed packages including from AUR (tagged as "local") |
| yamir | yaourt -Syy | Force refresh of all package lists after updating mirrorlist |
| yaorph | yaourt -Qtd | Remove orphans using yaourt |
| yare | yaourt -R | Remove packages, keeping its settings and dependencies |
| yarem | yaourt -Rns | Remove packages, including its settings and unneeded dependencies |
| yarep | yaourt -Si | Display information about a package in the repositories |
| yareps | yaourt -Ss | Search for packages in the repositories |
| yaupd | yaourt -Sy && sudo abs && sudo aur | Update and refresh local package, ABS and AUR databases |
| yaupd | yaourt -Sy && sudo abs | Update and refresh the local package and ABS databases |
| yaupd | yaourt -Sy && sudo aur | Update and refresh the local package and AUR databases |
| yaupd | yaourt -Sy | Update and refresh the local package database |
| yaupg | yaourt -Syua | Sync with repositories before upgrading all packages (from AUR too) |
| 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 |
|----------------|------------------------------------------------------|
| pacdisowned | List all disowned files in your system |
| paclist | List all installed packages with a short description |
| pacmanallkeys | Get all keys for developers and trusted users |
| pacmansignkeys | Locally trust all keys passed as parameters |
--- ---
### FEATURES ## Contributors
| Alias | Function | Description | - Benjamin Boudreau - dreurmail@gmail.com
|:------------:|-----------------------------------------|:--------------------------------------------------------------------------------------------------------------------| - Celso Miranda - contacto@celsomiranda.net
| pacin | sudo pacman -S | Install specific package(s) from the repositories | - KhasMek - Boushh@gmail.com
| pacins | sudo pacman -U | Install specific package not from the repositories but from a file | - Martin Putniorz - mputniorz@gmail.com
| pacinsd | sudo pacman -S --asdeps | Install given package(s) as dependencies of another package | - MatthR3D - matthr3d@gmail.com
| pacloc | pacman -Qi | Display information about a given package in the local database | - ornicar - thibault.duplessis@gmail.com
| 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 |
| yain | yaourt -S | Install specific package(s) from the repositories |
| yains | yaourt -U | Install specific package not from the repositories but from a file |
| yainsd | yaourt -S --asdeps | Install given package(s) as dependencies of another package |
| yaloc | yaourt -Qi | Display information about a given package in the local database |
| yalocs | yaourt -Qs | Search for package(s) in the local database |
| yalst | yaourt -Qe | List installed packages, even those installed from AUR (they're tagged as "local") |
| yamir | yaourt -Syy | Force refresh of all package lists after updating /etc/pacman.d/mirrorlist |
| yaorph | yaourt -Qtd | Remove orphans using yaourt |
| yare | yaourt -R | Remove the specified package(s), retaining its configuration(s) and required dependencies |
| yarem | yaourt -Rns | Remove the specified package(s), its configuration(s) and unneeded dependencies |
| yarep | yaourt -Si | Display information about a given package in the repositories |
| yareps | yaourt -Ss | Search for package(s) in the repositories |
| yasu | yaourt --sucre | Same as yaupg, but without confirmation |
| 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 against repositories |
| 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 against repositories |
| yaupg | yaourt -Syua | Synchronize with repositories before upgrading packages (AUR packages too) that are out of date on the local system |
| Function | Description |
|----------------|:------------------------------------------------------------------------------------------------------------------|
| 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) |
| pacmanallkeys | Get all keys for developers and trusted users |
| pacmansignkeys | |
---
### CONTRIBUTORS
- Benjamin Boudreau - dreurmail@gmail.com
- Celso Miranda - contacto@celsomiranda.net
- KhasMek - Boushh@gmail.com
- Martin Putniorz - mputniorz@gmail.com
- MatthR3D - matthr3d@gmail.com
- ornicar - thibault.duplessis@gmail.com
---

View file

@ -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 upgrade() {
sudo pacman -Syu
# Look for yaourt, and add some useful functions if we have it. }
if (( $+commands[yaourt] )); then else
upgrade () { upgrade () {
yaourt -Syu yaourt -Syu
} }
alias yaconf='yaourt -C' # Fix all configuration files with vimdiff
# Pacman - https://wiki.archlinux.org/index.php/Pacman_Tips alias yaconf='yaourt -C'
alias yaupg='yaourt -Syua' # Synchronize with repositories before upgrading packages (AUR packages too) that are out of date on the local system. alias yaupg='yaourt -Syua'
alias yasu='yaourt --sucre' # Same as yaupg, but without confirmation alias yasu='yaourt --Syua --no-confirm'
alias yain='yaourt -S' # Install specific package(s) from the repositories alias yain='yaourt -S'
alias yains='yaourt -U' # Install specific package not from the repositories but from a file alias yains='yaourt -U'
alias yare='yaourt -R' # Remove the specified package(s), retaining its configuration(s) and required dependencies alias yare='yaourt -R'
alias yarem='yaourt -Rns' # Remove the specified package(s), its configuration(s) and unneeded dependencies alias yarem='yaourt -Rns'
alias yarep='yaourt -Si' # Display information about a given package in the repositories alias yarep='yaourt -Si'
alias yareps='yaourt -Ss' # Search for package(s) in the repositories alias yareps='yaourt -Ss'
alias yaloc='yaourt -Qi' # Display information about a given package in the local database alias yaloc='yaourt -Qi'
alias yalocs='yaourt -Qs' # Search for package(s) in the local database alias yalocs='yaourt -Qs'
alias yalst='yaourt -Qe' # List installed packages, even those installed from AUR (they're tagged as "local") alias yalst='yaourt -Qe'
alias yaorph='yaourt -Qtd' # Remove orphans using yaourt alias yaorph='yaourt -Qtd'
# Additional yaourt alias examples alias yainsd='yaourt -S --asdeps'
alias yamir='yaourt -Syy'
if (( $+commands[abs] && $+commands[aur] )); then 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 alias yaupd='yaourt -Sy && sudo abs && sudo aur'
elif (( $+commands[abs] )); then elif (( $+commands[abs] )); then
alias yaupd='yaourt -Sy && sudo abs' # Update and refresh the local package and ABS databases against repositories alias yaupd='yaourt -Sy && sudo abs'
elif (( $+commands[aur] )); then elif (( $+commands[aur] )); then
alias yaupd='yaourt -Sy && sudo aur' # Update and refresh the local package and AUR databases against repositories alias yaupd='yaourt -Sy && sudo aur'
else else
alias yaupd='yaourt -Sy' # Update and refresh the local package database against repositories alias yaupd='yaourt -Sy'
fi 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() {
sudo pacman -Syu
}
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
View 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.

View file

@ -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
fi print "zsh cask plugin: cask command not found" >&2
return
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
}

View file

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

View file

@ -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 plugins=(... git-flow)
# 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
```bash ## Aliases
alias gfl='git flow'
alias gfli='git flow init' More information about `git-flow` commands:
alias gcd='git checkout develop' https://github.com/nvie/gitflow/wiki/Command-Line-Arguments
alias gch='git checkout hotfix'
alias gcr='git checkout release' | Alias | Command | Description |
alias gflf='git flow feature' |---------|---------------------------|----------------------------------------|
alias gflh='git flow hotfix' | `gfl` | `git flow` | Git-Flow command |
alias gflr='git flow release' | `gfli` | `git flow init` | Initialize git-flow repository |
alias gflfs='git flow feature start' | `gcd` | `git checkout develop` | Check out develop branch |
alias gflhs='git flow hotfix start' | `gch` | `git checkout hotfix` | Check out hotfix branch |
alias gflrs='git flow release start' | `gcr` | `git checkout release` | Check out release branch |
alias gflff='git flow feature finish' | `gflf` | `git flow feature` | List existing feature branches |
alias gflhf='git flow hotfix finish' | `gflh` | `git flow hotfix` | List existing hotfix branches |
alias gflrf='git flow release finish' | `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>` |

View file

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

View file

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

View file

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

View file

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

View file

@ -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
View 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.

View 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
}

View file

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

View file

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

View file

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

View file

@ -0,0 +1,3 @@
alias tis='tig status'
alias til='tig log'
alias tib='tig blame -C'

View file

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

View file

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