doot doot
This commit is contained in:
141
dot_sh_aliases
Normal file
141
dot_sh_aliases
Normal file
@@ -0,0 +1,141 @@
|
||||
alias ebuild='nocorrect ebuild'
|
||||
alias gist='nocorrect gist'
|
||||
alias heroku='nocorrect heroku'
|
||||
alias hpodder='nocorrect hpodder'
|
||||
alias man='nocorrect man'
|
||||
alias mkdir='nocorrect mkdir'
|
||||
alias mv='nocorrect mv'
|
||||
alias mysql='nocorrect mysql'
|
||||
alias sudo='nocorrect sudo'
|
||||
|
||||
setopt correct_all
|
||||
|
||||
setopt auto_pushd
|
||||
setopt pushd_ignore_dups
|
||||
setopt pushdminus
|
||||
setopt auto_cd
|
||||
setopt multios
|
||||
|
||||
alias -g ...='../..'
|
||||
alias -g ....='../../..'
|
||||
alias -g .....='../../../..'
|
||||
alias -g ......='../../../../..'
|
||||
|
||||
alias -- -='cd -'
|
||||
|
||||
alias l='ls -lah'
|
||||
alias ls="ls -F --color=always"
|
||||
alias ll="ls -lh"
|
||||
alias la="ls -lAh"
|
||||
alias lsr="ls -lSr"
|
||||
alias grep="grep --color=always ${GREP_OPTIONS}"
|
||||
alias mv="mv -i"
|
||||
|
||||
alias ncdu="ncdu --color=dark"
|
||||
|
||||
alias monitor="tmux new -A -s monitor"
|
||||
|
||||
alias ':q'='exit'
|
||||
|
||||
alias engage="play -n -c1 synth whitenoise band -n 100 20 band -n 50 20 gain +25 fade h 1 864000 1"
|
||||
alias engage-high="play -c2 -n synth whitenoise band -n 100 24 band -n 300 100 gain +20"
|
||||
|
||||
alias astyle-c="astyle -t4 -L -m2 -f -p -U -k3 -W3 --brackets=stroustrup -j -O -xC80 -z2"
|
||||
|
||||
if [[ -x "$(which pacaur)" ]]; then
|
||||
upgrade() {
|
||||
pacaur -Syu "$@"
|
||||
}
|
||||
elif [[ -x "$(which trizen)" ]]; then
|
||||
upgrade() {
|
||||
trizen -Syu "$@"
|
||||
}
|
||||
elif [[ -x "$(which pacman)" ]]; then
|
||||
upgrade() {
|
||||
sudo pacman -Syu "$@"
|
||||
}
|
||||
fi
|
||||
|
||||
# Keybinds
|
||||
|
||||
# emacs mode
|
||||
bindkey -e
|
||||
|
||||
bindkey '^r' history-incremental-search-backward
|
||||
|
||||
if [[ "${terminfo[kpp]}" != "" ]]; then
|
||||
bindkey "${terminfo[kpp]}" up-line-or-history # [PageUp]
|
||||
fi
|
||||
if [[ "${terminfo[knp]}" != "" ]]; then
|
||||
bindkey "${terminfo[knp]}" down-line-or-history # [PageDown]
|
||||
fi
|
||||
|
||||
# [Up-Arrow]
|
||||
if [[ "${terminfo[kcuu1]}" != "" ]]; then
|
||||
if typeset -f history-substring-search-up > /dev/null; then
|
||||
bindkey "${terminfo[kcuu1]}" history-substring-search-up
|
||||
elif typeset -f directory-history-search-backward > /dev/null; then
|
||||
zle -N directory-history-search-backward
|
||||
bindkey "${terminfo[kcuu1]}" directory-history-search-backward
|
||||
else
|
||||
autoload -U up-line-or-beginning-search
|
||||
zle -N up-line-or-beginning-search
|
||||
bindkey "${terminfo[kcuu1]}" up-line-or-beginning-search
|
||||
fi
|
||||
fi
|
||||
bindkey "^[[A" history-substring-search-up
|
||||
# [Down-Arrow]
|
||||
if [[ "${terminfo[kcud1]}" != "" ]]; then
|
||||
if typeset -f history-substring-search-down > /dev/null; then
|
||||
bindkey "${terminfo[kcud1]}" history-substring-search-down
|
||||
elif typeset -f directory-history-search-forward > /dev/null; then
|
||||
zle -N directory-history-search-forward
|
||||
bindkey "${terminfo[kcud1]}" directory-history-search-forward
|
||||
else
|
||||
autoload -U down-line-or-beginning-search
|
||||
zle -N down-line-or-beginning-search
|
||||
bindkey "${terminfo[kcud1]}" down-line-or-beginning-search
|
||||
fi
|
||||
fi
|
||||
bindkey "^[[B" history-substring-search-down
|
||||
|
||||
if [[ "${terminfo[khome]}" != "" ]]; then
|
||||
bindkey "${terminfo[khome]}" beginning-of-line
|
||||
fi
|
||||
if [[ "${terminfo[kend]}" != "" ]]; then
|
||||
bindkey "${terminfo[kend]}" end-of-line
|
||||
fi
|
||||
|
||||
bindkey '^[[1;5C' forward-word # [Ctrl-RightArrow]
|
||||
bindkey '^[[1;5D' backward-word # [Ctrl-LeftArrow]
|
||||
|
||||
if [[ "${terminfo[kcbt]}" != "" ]]; then
|
||||
bindkey "${terminfo[kcbt]}" reverse-menu-complete # [Shift-Tab]
|
||||
fi
|
||||
|
||||
bindkey '^?' backward-delete-char # [Backspace]
|
||||
if [[ "${terminfo[kdch1]}" != "" ]]; then
|
||||
bindkey "${terminfo[kdch1]}" delete-char # [Delete]
|
||||
else
|
||||
bindkey "^[[3~" delete-char
|
||||
bindkey "^[3;5~" delete-char
|
||||
bindkey "\e[3~" delete-char
|
||||
fi
|
||||
|
||||
autoload -U edit-command-line
|
||||
zle -N edit-command-line
|
||||
bindkey '\C-x\C-e' edit-command-line
|
||||
|
||||
# file rename magick
|
||||
bindkey "^[m" copy-prev-shell-word
|
||||
|
||||
# Fix weird sequence that rxvt produces
|
||||
bindkey -s '^[[Z' '\t'
|
||||
|
||||
# vim:ft=zsh
|
||||
alias rsync-mv='rsync -aiv --no-g --remove-source-files'
|
||||
alias spotify-light=~/scripts/spot-light.sh
|
||||
alias spotify-dark=~/scripts/spot-dark.sh
|
||||
alias yt-mp3='yt-dlp -x -f bestaudio'
|
||||
alias work='tmux attach-session -t work'
|
||||
alias tmux-monitor='tmux attach-session -t monitor'
|
||||
34
dot_sh_colorize
Normal file
34
dot_sh_colorize
Normal file
@@ -0,0 +1,34 @@
|
||||
autoload -U colors && colors
|
||||
|
||||
export LS_COLORS='rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:'
|
||||
|
||||
zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
|
||||
|
||||
# {{{ Manual pages
|
||||
# - colorize, since man-db fails to do so
|
||||
export LESS_TERMCAP_mb=$'\E[01;31m' # begin blinking
|
||||
export LESS_TERMCAP_md=$'\E[01;31m' # begin bold
|
||||
export LESS_TERMCAP_me=$'\E[0m' # end mode
|
||||
export LESS_TERMCAP_se=$'\E[0m' # end standout-mode
|
||||
export LESS_TERMCAP_so=$'\E[1;33;40m' # begin standout-mode - info box
|
||||
export LESS_TERMCAP_ue=$'\E[0m' # end underline
|
||||
export LESS_TERMCAP_us=$'\E[1;32m' # begin underline
|
||||
# }}}
|
||||
|
||||
# Less needs this switch to pass color sequences and so forth
|
||||
export LESS='-R'
|
||||
|
||||
# GREP has deprecated it and complains constantly if it's set, interfering with aliases
|
||||
unset GREP_OPTIONS
|
||||
|
||||
setopt prompt_subst
|
||||
|
||||
PROMPT=$'%{\e[0;34m%}%B[%b%{\e[0m%}%{\e[1;32m%}%n%{\e[1;30m%}@%{\e[0m%}%{\e[0;36m%}%m%{\e[0;34m%}%B]―[%(?|%{\e[1;32m%}$|%{\e[1;35m%}$)%{\e[0;34m%}%B]%}%b%{\e[0m%} '
|
||||
|
||||
RPROMPT=$'%{\e[0;34m%}%B[%b%{\e[1;37m%}%(5~|%-2~/…/%2~|%~)%{\e[0;34m%}%B]%b%{\e[0m%}─%{\e[0;34m%}<$(git_prompt_info)>%{\e[0m%}'
|
||||
|
||||
PS2=$' %{\e[0;34m%}%B>%{\e[0m%}%b%} '
|
||||
|
||||
RPS2=$'%{\e[0;34m%}%B%_%{\e[0m%}%b%} '
|
||||
|
||||
# vim:ft=zsh
|
||||
196
dot_sh_functions
Normal file
196
dot_sh_functions
Normal file
@@ -0,0 +1,196 @@
|
||||
autoload -U terminfo
|
||||
autoload -U add-zsh-hook
|
||||
|
||||
function swap_hogs() {
|
||||
grep --color=never -n VmSwap /proc/*/status | sort -n -k2 | awk '/proc\/([0-9]+)\/status/ { split($1, p, "/"); fn="/proc/"p[3]"/status"; getline s < fn; split(s, n, ":"); sub(/^[ \t\r\n]+/, "", n[2]); print n[2] " (" p[3] ") " $2 "kB" }'
|
||||
}
|
||||
|
||||
# ssh-agent {{{
|
||||
# typeset _ssh_env_cache
|
||||
# _ssh_env_cache="$HOME/.ssh/environment-${HOST/.*/}"
|
||||
# function _start_ssh_agent() {
|
||||
# ssh-agent -s -t 4h | sed 's/^echo/#echo/' >! "$_ssh_env_cache"
|
||||
#
|
||||
# for ident in $HOME/.ssh/*.pub; do
|
||||
# ssh-add ${ident/.pub/}
|
||||
# done
|
||||
# }
|
||||
#
|
||||
# if [[ -n "$SSH_AUTH_SOCK" ]]; then
|
||||
# [[ -L "$SSH_AUTH_SOCK" ]] || ln -snf "$SSH_AUTH_SOCK" /tmp/ssh-agent-$USER-screen
|
||||
# elif [[ -f "$_ssh_env_cache" ]]; then
|
||||
# . "$_ssh_env_cache" > /dev/null
|
||||
# pgrep ssh-agent | grep -q $SSH_AGENT_PID || {
|
||||
# _start_ssh_agent
|
||||
# }
|
||||
# else
|
||||
# _start_ssh_agent
|
||||
# fi
|
||||
#
|
||||
# unset _ssh_env_cache
|
||||
# }}}
|
||||
|
||||
# battery/UPS {{{
|
||||
if [[ -x "$(whence apcaccess)" ]]; then
|
||||
function battery_pct_remaining() {
|
||||
echo $(apcaccess | fgrep BCHARGE | cut -d: -f2 | cut -d\ -f2)
|
||||
}
|
||||
function battery_time_remaining() {
|
||||
echo $(apcaccess | fgrep TIMELEFT | cut -d: -f2)
|
||||
}
|
||||
function battery_pct_prompt() {
|
||||
b=$(battery_pct_remaining)
|
||||
if [[ $b -gt 60 ]]; then
|
||||
color=green
|
||||
elif [[ $b -gt 25 ]]; then
|
||||
color=yellow
|
||||
else
|
||||
color=red
|
||||
fi
|
||||
echo "%{$fg[$color]%}$(battery_pct_remaining)%%%{$reset_color%}"
|
||||
}
|
||||
else
|
||||
function battery_pct_remaining() {
|
||||
}
|
||||
function battery_time_remaining() {
|
||||
}
|
||||
function battery_pct_prompt() {
|
||||
}
|
||||
fi
|
||||
# }}}
|
||||
|
||||
# git prompt {{{
|
||||
function git_prompt_info() {
|
||||
local ref
|
||||
ref=$(command git symbolic-ref HEAD 2>/dev/null) || \
|
||||
ref=$(command git rev-parse --short HEAD 2>/dev/null) || return 0
|
||||
echo "git:(${ref#refs/heads/}$(parse_git_dirty))"
|
||||
}
|
||||
function parse_git_dirty() {
|
||||
local STATUS=''
|
||||
local -a FLAGS
|
||||
FLAGS=('--porcelain' '--untracked-files=no')
|
||||
STATUS=$(command git status ${FLAGS} 2>/dev/null | tail -n1)
|
||||
if [[ -n "$STATUS" ]]; then
|
||||
# dirty
|
||||
echo -e " %{\e[1;35m%}%{⧱%G%}%{\e[0;34m%}"
|
||||
else
|
||||
# clean
|
||||
echo ""
|
||||
fi
|
||||
}
|
||||
# }}}
|
||||
|
||||
function title {
|
||||
emulate -L zsh
|
||||
[[ "$EMACS" == *term* ]] && return
|
||||
: ${2=$1}
|
||||
case "$TERM" in
|
||||
cygwin|xterm*|putty*|rxvt*|ansi)
|
||||
print -Pn "\e]2;$2:q\a" # window
|
||||
print -Pn "\e]1;$1:q\a" # tab
|
||||
;;
|
||||
screen*)
|
||||
print -Pn "\ek$1:q\e\\"
|
||||
;;
|
||||
*)
|
||||
if [[ -n "$terminfo[fsl]" ]] && [[ -n "$terminfo[tsl]" ]]; then
|
||||
echoti tsl
|
||||
print -Pn "$1"
|
||||
echoti fsl
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function title_precmd {
|
||||
title "%15<…<%~%<<" "%n@%m: %~"
|
||||
}
|
||||
|
||||
add-zsh-hook precmd title_precmd
|
||||
|
||||
function title_preexec {
|
||||
setopt extended_glob
|
||||
local CMD=${1[(wr)^(*=*|sudo|ssh|mosh|rake|-*)]:gs/%/%%}
|
||||
local LINE="${2:gs/%/%%}"
|
||||
|
||||
title "$CMD" "%100>…>$LINE%<<"
|
||||
}
|
||||
|
||||
add-zsh-hook preexec title_preexec
|
||||
|
||||
|
||||
function md() {
|
||||
mkdir -p $1
|
||||
cd $1
|
||||
}
|
||||
|
||||
function cdl() {
|
||||
pushd "$1" && ls -CF --color=always "${@:2}"
|
||||
}
|
||||
|
||||
function dur() {
|
||||
ls -lSr -hd "${1:-.}"/*; du -chd2 -- "${1:-.}"/ | sort -h; df -h "$@"
|
||||
}
|
||||
|
||||
alias rcp="rsync -aiPvh"
|
||||
alias rup="rsync -aiPvhu"
|
||||
|
||||
function rmv() {
|
||||
local -a flags=(${(M)@:#-*})
|
||||
local -a parms=(${@:#-*})
|
||||
shift $parms
|
||||
local src="${parms[1]}"
|
||||
local dest="${parms[2]}"
|
||||
rsync -aiPvhu --remove-source-files --prune-empty-dirs "${(@)flags}" "$parms"
|
||||
if [[ -d "$src" ]] ; then
|
||||
find "$src" -type d -empty -delete
|
||||
fi
|
||||
}
|
||||
|
||||
function unpack() {
|
||||
filename="$1"
|
||||
echo "$filename"
|
||||
shift
|
||||
basefilename="$(basename "${filename}")"
|
||||
dirname="${basefilename%.*}"
|
||||
echo "$dirname"
|
||||
mkdir -p "$dirname"
|
||||
7z x -o"$dirname" "$filename"
|
||||
}
|
||||
function unpack-mv() {
|
||||
unpack "$1"
|
||||
mv "$@"
|
||||
}
|
||||
|
||||
cp-lower() {
|
||||
local -a from=()
|
||||
local to
|
||||
local CMD=""
|
||||
local verbose
|
||||
while [[ $# -gt 1 ]]; do
|
||||
case "$1" in
|
||||
-n)
|
||||
CMD=echo
|
||||
echo '.-n' "$@"
|
||||
;;
|
||||
-v)
|
||||
verbose=-v
|
||||
echo '.-v' "$@"
|
||||
;;
|
||||
*)
|
||||
if [[ -e "$1" ]]; then
|
||||
from+=("$to")
|
||||
to="$1"
|
||||
fi
|
||||
echo "$@"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
echo ${(@)from}
|
||||
echo $to
|
||||
}
|
||||
|
||||
# vim:ft=zsh
|
||||
27
dot_sh_paths
Normal file
27
dot_sh_paths
Normal file
@@ -0,0 +1,27 @@
|
||||
HISTFILE=~/.histfile
|
||||
|
||||
export PAGER="/usr/bin/less"
|
||||
export MANPAGER="/usr/bin/less"
|
||||
|
||||
export SQUEAK_IMAGE=$HOME/.squeak/squeak.image
|
||||
|
||||
export GOPATH=$HOME/.local/gocode
|
||||
|
||||
export INCLUDEOS_PREFIX=~/.local/includeos
|
||||
|
||||
export PATH="$PATH:$HOME/.local/bin:$HOME/.cabal/bin:$HOME/.local/gocode/bin"
|
||||
if [ -e ~/.local/includeos/bin ]; then
|
||||
export PATH="$PATH:${HOME}/.local/includeos/bin"
|
||||
fi
|
||||
if [ -e ~/.roswell/bin ]; then
|
||||
export PATH="$PATH:${HOME}/.roswell/bin"
|
||||
fi
|
||||
if [ -e ~/.local/share/x-tools ]; then
|
||||
for xtool in $HOME/.local/share/x-tools/*-*/bin
|
||||
do
|
||||
export PATH="$PATH:${xtool}"
|
||||
done
|
||||
fi
|
||||
#export PATH="/usr/lib/colorgcc/bin:${PATH}"
|
||||
|
||||
# vim ft=zsh
|
||||
Reference in New Issue
Block a user