Files
dotfiles/zsh/zshrc

178 lines
3.9 KiB
Bash

# Path to your oh-my-zsh configuration.
ZSH=$HOME/.oh-my-zsh
# Set name of the theme to load.
# Look in ~/.oh-my-zsh/themes/
# Optionally, if you set this to "random", it'll load a random theme each
# time that oh-my-zsh is loaded.
ZSH_THEME="bira" #robbyrussell"
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
# Set to this to use case-sensitive completion
CASE_SENSITIVE="true"
# Comment this out to disable bi-weekly auto-update checks
DISABLE_AUTO_UPDATE="true"
# Uncomment to change how often before auto-updates occur? (in days)
# export UPDATE_ZSH_DAYS=13
# Uncomment following line if you want to disable colors in ls
# DISABLE_LS_COLORS="true"
# Uncomment following line if you want to disable autosetting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment following line if you want to disable command autocorrection
DISABLE_CORRECTION="true"
# Uncomment following line if you want red dots to be displayed while waiting for completion
# COMPLETION_WAITING_DOTS="true"
# Uncomment following line if you want to disable marking untracked files under
# VCS as dirty. This makes repository status check for large repositories much,
# much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# 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)
plugins=(git)
source $ZSH/oh-my-zsh.sh
# Customize to your needs...
man() {
env LESS_TERMCAP_mb=$'\E[01;31m' \
LESS_TERMCAP_md=$'\E[01;38;5;74m' \
LESS_TERMCAP_me=$'\E[0m' \
LESS_TERMCAP_se=$'\E[0m' \
LESS_TERMCAP_so=$'\E[38;5;246m' \
LESS_TERMCAP_ue=$'\E[0m' \
LESS_TERMCAP_us=$'\E[04;38;5;146m' \
man "$@"
}
### SHELL OPTIONS
setopt AUTO_CD
setopt APPEND_HISTORY
setopt HIST_IGNORE_DUPS
setopt NOHIST_IGNORE_ALL_DUPS
setopt HIST_IGNORE_SPACE
setopt CORRECT
setopt RM_STAR_SILENT
setopt BG_NICE
setopt CHECK_JOBS
setopt HUP
setopt LONG_LIST_JOBS
[[ $TERM == "urxvt" ]] && export TERM="rxvt-unicode"
### ALIASES
#
alias su="su -"
alias ll='ls -AlF'
alias la='ls -A'
alias ls='ls --group-directories-first --classify --color=auto'
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
alias rm='rm -v'
alias cp='cp -v'
alias mv='mv -v'
alias ln='ln -v'
alias du='du -h'
alias df='df -h'
alias root='sudo -sE'
alias b='cd $OLDPWD'
alias cs="cryptsetup"
alias le_haxxor_1='clear && dmesg | pv -qL $[15 + (RANDOM % 10)]'
alias le_haxxor_2='clear && hexdump -C /dev/urandom | grep "1e 4c"'
alias YOLO="pacman -Syu --force"
alias such="git"
alias very="git"
alias much="git"
alias wow="git status"
### FUNCTIONS
function mount() {
if [[ $# == 0 ]] ; then
/usr/bin/env mount | column -t
else
/usr/bin/env mount $*
fi
}
ff() {
find . -type f -iname "*"$*"*" ;
}
ffcs() {
find . -type f -name "*"$*"*" ;
}
extract() # Handy Extract Program.
{
if [ -f $1 ] ; then
case $1 in
*.tar.bz2 ) tar xvjf $1 ;;
*.tar.gz ) tar xvzf $1 ;;
*.bz2 ) bunzip2 $1 ;;
*.rar ) unrar x $1 ;;
*.gz ) gunzip $1 ;;
*.tar ) tar xvf $1 ;;
*.tbz2 ) tar xvjf $1 ;;
*.tgz ) tar xvzf $1 ;;
*.zip ) unzip $1 ;;
*.Z ) uncompress $1 ;;
*.7z ) 7z x $1 ;;
*) echo "$1 cannot be extracted via extract()" ;;
esac
else
echo "$1 is not a valid file"
fi
}
ruler() {
for s in '....^....|' '1234567890'; do
w=${#s}
str=$(for (( i=1; $i<=$(( ($COLUMNS + $w) / $w )) ; i=$i+1 )); do echo -n $s; done )
str=$(echo $str | cut -c -$COLUMNS)
echo $str
done
}
ckwww() {
ping -c 3 www.google.com
}
topcmds() {
history | awk '{print $2}' | awk 'BEGIN {FS="|"}{print $1}' | sort | uniq -c | sort -nr | head
}
fnottype() {
find . -maxdepth 1 ! -type $1
}
# simple calculator
c () {
echo "$*" | bc -l
}