sync/shells/zshrc

298 lines
10 KiB
Bash

echo -ne '[ ]\r'
export HISTFILE=$HOME/.zsh_history
for config (~/.zsh/*.zsh) source $config
ZSH_THEME="af-magic"
source "$HOME/.antigen/antigen.zsh"
setopt APPEND_HISTORY
HIST_STAMPS="dd.mm.yyyy"
HISTSIZE=12000
SAVEHIST=10000000
setopt INTERACTIVECOMMENTS
setopt HIST_EXPIRE_DUPS_FIRST
setopt EXTENDED_HISTORY
setopt APPEND_HISTORY SHARE_HISTORY HISTIGNOREALLDUPS
if [ -f /etc/zsh_command_not_found ] ; then
source /etc/zsh_command_not_found
fi
export DISABLE_AUTO_TITLE=true
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:$(readlink -e ~/bin)"
export EDITOR='vim'
function asroot(){
# Use temporary file for added security
TEMPFILE=$(tempfile)
xauth extract $TEMPFILE $DISPLAY
sudo zsh -c "xauth merge $TEMPFILE;(srm $TEMPFILE||rm $TEMPFILE)&'$@';"
}
alias mouse1="xmodmap <(echo pointer = 1 2 3)"
alias mouse2="xmodmap <(echo pointer = 3 2 1)"
alias where="readlink -e"
alias ocp="ocp -vs0 -dcurses"
alias dumpx="xauth extract /tmp/xauthstuff $DISPLAY"
alias impx="xauth merge /tmp/xauthstuff;rm /tmp/xauthstuff"
alias sudo='sudo '
alias con='git x php app/console'
alias srm='srm -dv'
alias disphost='export DISPLAY=:0.0'
alias ll='ls -AglhF'
alias la='ls -A'
alias l='ls -CF'
alias logout='sudo pkill -u $USER'
function fixsh(){
sed -i -e $1"d" ~/.ssh/known_hosts
}
alias tmux='tmux -2'
alias less='less -R'
alias tree='tree -C'
alias skim="(head -5; tail -5) <"
alias cp='rsync --partial -ha --info=progress2 "$@"'
function mv() { /bin/mv -v "$@" }
function m() { mv "$@" }
compdef _cp c m mv cp copy
alias dt='date "+%F %T"'
alias awake='disphost; while true; do xdotool mousemove 0 0; sleep 60; done'
alias adk='/home/stonewareslord/Applications/adk/bin/studio.sh & disown'
alias resource='. ~/.zshrc'
alias etup='sudo etc-update'
alias search='apt-cache search'
if [ "$(uname)" != "Darwin" ]; then
# Not Mac
alias ls='ls --color=always -F'
alias steam='sudo kill -9 `pidof steam`;sudo unshare -n -- sh -c "ifconfig lo up;sudo -u stonewareslord steam" > /dev/null 2>&1 & disown'
alias matlab='matlab -glnx86'
alias bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"'
fi
if test -f /etc/gentoo-release; then
# Gentoo
ins(){
echo "args: $*"
sudo zsh -c "emerge --autounmask-write -av $*"
}
function update(){
# If this is a server computer
if [ "$(hostname|cut -b1)" = "S" ] ; then
echo "You're a server. Exiting"
return
fi
cd /usr/portage >/dev/null
sudo zsh -c "git up&&echo Done pulling&&eix-update&&echo Done with eix"
cd ->/dev/null
}
alias upgrade='sudo emerge --update --newuse --with-bdeps=y --deep --verbose -t -a --keep-going=y @world'
elif test -f /etc/lsb-release; then
# Ubuntu
alias install='sudo apt-get --show-progress install'
alias remove='sudo apt-get --show-progress remove'
alias update='sudo apt-get update'
alias upgrade='sudo apt-get --show-progress upgrade'
alias autoremove='sudo apt-get --show-progress autoremove'
alias updateall='sudo sh -c "apt-get update;apt-get upgrade -y;apt-get dist-upgrade -y;apt-get autoremove -y"'
fi
alias ..='k ..'
alias ...='k ../..'
alias ....='k ../../..'
alias .....='k ../../../..'
alias ......='k ../../../../..'
alias .......='k ../../../../../..'
alias ........='k ../../../../../../..'
alias .........='k ../../../../../../../..'
alias ..........='k ../../../../../../../../..'
alias ...........='k ../../../../../../../../../..'
alias ............='k ../../../../../../../../../../..'
alias .............='k ../../../../../../../../../../../..'
alias ..............='k ../../../../../../../../../../../../..'
alias ...............='k ../../../../../../../../../../../../../..'
alias ytdl="youtube-dl $@ -x --audio-format mp3 --audio-quality 0 -c -o '%(title)s.%(ext)s'"
alias tux="wemux"
alias rmgit="git remote rm origin;git remote rm https;git remote rm oOrigin;git remote rm oHttps"
alias rname="while true;do echo -n \"Rename: \";read A;echo -n \"To: \";read B;i3-msg 'rename workspace $A to $B';done"
alias g="git $@"
alias stdns="sudo sh -c 'echo nameserver 8.8.8.8 > /etc/resolv.conf'"
alias fvim="vim -u NONE +\"so ~/.vim/plugged/flappyvird-vim/plugin/flappyvird.vim\" +\"so ~/.vim/plugged/flappyvird-vim/autoload/flappyvird.vim\" +\":FlappyVird\" +\":q\""
alias fk='k `fzf --no-mouse -m -1 -x`'
alias fkill='ps -ef | sed 1d | fzf --no-mouse -m -1 -x | awk "{print $2}" | xargs kill -${1:-9}'
alias susp="sudo true&&(slock&echo mem | sudo tee /sys/power/state >/dev/null)"
alias aoeu='setxkbmap -layout us -option "'
alias asdf='setxkbmap -layout dvorak -option ""'
alias -s html="firefox"
alias -s log="less -MN"
alias -s odt="libreoffice"
alias -s doc="libreoffice"
alias -s docx="libreoffice"
alias -g c='rsync --partial -ha --info=progress2 "$@"'
alias -g F='`fzf --no-mouse -m -1 -x`'
alias -g nify=" > /dev/null 2>&1 &"
alias -g nifyd=" > /dev/null 2>&1 & disown"
alias -g L="2>&1|less"
#alias -g L="2>&1|vimpager"
alias -g G='|& ag'
export FZF_COMPLETION_OPTS='--no-mouse -m -1 -x'
function ctar(){
tar -cf - $@|pv -WcN tar -s $(echo $(du -sb $@|awk '{print $1}'|tr '\n' '+')0|bc)|gzip|pv -WcN dest
#tar -cf - $@|pv -WcN tar -s $(echo $(du -sb $@|awk '{print $1}'|tr '\n' '+')0|bc)|gzip|pv -WcN dest
}
function offline(){
echo unshare -n -- sh -c "sudo -u stonewareslord zsh -c '$@'"
sudo unshare -n -- sh -c "sudo -u stonewareslord zsh -c '$@'"
}
function smon(){
timeout 1s pdsh -R ssh -w 10.0.1.196,10.0.1.207 "$@"
}
function dnstest(){
echo "resolv.conf:"
cat /etc/resolv.conf
echo "Testing DNS:"
dig google.com
echo "Testing ping:"
ping -c 2 8.8.8.8
echo "Testing IP curl:"
curl -k http://98.26.78.121/b/
echo
echo "Testing DNS"
curl ifconfig.me
}
function cinitify(){
mkdir $2
cd $2
git init
git remote add origin git@austenwares.com:$1/$2.git
git remote add https https://austenwares.com/gitlab/$1/$2.git
#Offline mode
git remote add oOrigin git@10.0.1.200:$1/$2.git
git remote add oHttps https://10.0.1.200/gitlab/$1/$2.git
git remote -v
git config http.sslVerify false
if [[ $3 == "-v" ]] ; then
# Vagrant repository
vagrant init $4
echo ".vagrant" > .gitignore
git add .
git commit -m "Initial commit"
vagrant up
elif [[ ! $3 == "-r" ]] ; then
echo -n "Pull from: "
read from
git pull $from
git checkout master
fi
}
function initify(){
git init
git remote add origin git@austenwares.com:$1/$2.git
git remote add https https://austenwares.com/gitlab/$1/$2.git
#Offline mode
git remote add oOrigin git@10.0.1.200:$1/$2.git
git remote add oHttps https://10.0.1.200/gitlab/$1/$2.git
git remote -v
git config http.sslVerify false
if [[ ! $3 == "-r" ]] ; then
echo -n "Pull from: "
read from
git pull $from
git checkout master
fi
}
function tsh(){
ssh $* -X
if which ponysay >/dev/null; then
ponysay "Connection closed!"
else
echo "\n\n\n\n\n\n\n\n\n\nSESSION CLOSED\n\n\n\n\n\n\n\n\n\n"
fi
}
function mcl(){
mkdir -p $1
cd $1
}
function rc(){
case $1 in
z) vim ~/.zshrc;;
v) vim ~/.vimrc;;
i) vim ~/.i3/config;;
use) sudo vim /etc/portage/package.use/package.use;;
make) sudo vim /etc/portage/make.conf;;
unmask) sudo vim /etc/portage/package.unmask;;
mask) sudo vim /etc/portage/package.mask/package.mask;;
accept_keywords) sudo vim /etc/portage/package.accept_keywords/package.accept_keywords;;
*) echo "Opts:\nz v i\nuse make unmask mask accept_keywords"
esac
}
function ncsu-git-init(){
branch=$(git remote -v | ag '^origin\s+' | sed -e 's/^origin\s*//' | cut -d\ -f1 | sed -e 's/^.\+\///' -e 's/\.git$//' | head -n1 | sha512sum | cut -d\ -f1)
echo Branch will be: $branch
remote="gcrypt::git@gitlab.com:stonewareslord/e6e03ea006d55de0970a28bcb7fcf65f4c66f98f50830bd69b50c5dc502bdf1a4e4172187cfb5fcef8c32bd7fb316bdc67d7d86713ebfe232f97eb303ac316ae.git#$branch"
echo -n "Add $remote? "
read a
git remote add ncsu $remote
git config remote.ncsu.gcrypt-participants "CCDFE3F1"
echo -n "Push? "
read a
git push ncsu --all
git push ncsu --tags
}
function ncsu-git-clone(){
branch=$(echo $1 | sha512sum | cut -d\ -f1)
echo Branch will be: $branch
echo -n "Continue?"
read a
git clone "gcrypt::git@gitlab.com:stonewareslord/e6e03ea006d55de0970a28bcb7fcf65f4c66f98f50830bd69b50c5dc502bdf1a4e4172187cfb5fcef8c32bd7fb316bdc67d7d86713ebfe232f97eb303ac316ae.git#$branch" $1
}
function k(){
#More than 1 arguement
if [[ $# > 1 ]] ; then
vim $@
elif [ -d "$@" ] ; then
#cd then ls
cd "$@" && ls
elif [[ "$@" == "-" ]] ; then
#Because if this isn't here, k - won't work
cd - && ls
elif [ -f "$@" ] ; then
#Extract if it's extractable
case $1 in
*.tar.xz) pv $1|tar -xJf - ;;
*.tar.bz2) pv $1|tar -xjf - ;;
*.tar.gz) pv $1|tar -xzf - ;;
*.tar) pv $1|tar -xf - ;;
*.tbz2) pv $1|tar -xjf - ;;
*.tgz) pv $1|tar -xzf - ;;
*.lzma) pv $1|tar --lzma -xf - ;;
*.xz) pv $1|tar -xJf - ;;
*.bz2) bunzip2 $1 ;;
*.rar) rar x $1 ;;
*.gz) gunzip $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*.lrz) lrzuntar $1 ;;
*) vim $1
esac
else
#Edit with vim
echo -n "vim? "
read a
vim "$@"
fi
}
#source ~/.zsh/*.zsh
[ -f ~/.fzf.zsh ] && source ~/.fzf.zsh
# To resize,
# :%S/\[([# ]{9})\]/[\1 ]
echo -ne '[# ]\r'
antigen bundle Schnouki/git-annex-zsh-completion
echo -ne '[## ]\r'
antigen bundle stonewareslord/omg
echo -ne '[### ]\r'
antigen theme stonewareslord/oh-my-git-themes af-magic
echo -ne '[#### ]\r'
antigen bundle stonewareslord/lpr
echo -ne '[##### ]\r'
antigen bundle zsh-users/zsh-completions src
echo -ne '[###### ]\r'
antigen bundle sharat87/autoenv
echo -ne '[####### ]\r'
antigen bundle zsh-users/zsh-syntax-highlighting
echo -ne '[######## ]\r'
antigen apply
echo -ne '[#########]\r'
echo