diff options
Diffstat (limited to '.config')
| -rw-r--r-- | .config/zsh/.zshrc | 118 |
1 files changed, 49 insertions, 69 deletions
diff --git a/.config/zsh/.zshrc b/.config/zsh/.zshrc index ef77fcf..5027366 100644 --- a/.config/zsh/.zshrc +++ b/.config/zsh/.zshrc @@ -1,11 +1,10 @@ -# zshrc +# ~/.zshrc export GPG_TTY=$(tty) # If not running interactively, don't do anything [[ $- != *i* ]] && return -# Add [username@hostname] prefix to prompt when its ssh if [ "$TERM" = "linux" ]; then PROMPT='%(?..(%?%) )' [ -n "$SSH_CLIENT" ] && PROMPT+="[%n@%M] " @@ -25,19 +24,15 @@ CASE_SENSITIVE="true" # Uncomment the following line to disable bi-weekly auto-update checks. DISABLE_AUTO_UPDATE="true" -# Uncomment the following line to automatically update without prompting. -DISABLE_UPDATE_PROMPT="false" - -# Uncomment the following line to change how often to auto-update (in days). -export UPDATE_ZSH_DAYS=31 - # Uncomment the following line if pasting URLs and other text is messed up. DISABLE_MAGIC_FUNCTIONS=true # Uncomment the following line to disable auto-setting terminal title. DISABLE_AUTO_TITLE="true" -#plugins=(git) +HIST_STAMPS="yyyy-mm-dd" + +plugins=() source $ZSH/oh-my-zsh.sh @@ -65,16 +60,14 @@ setopt hist_reduce_blanks setopt no_share_history setopt no_histverify +#zstyle :compinstall filename '$HOME/.zshrc' autoload -Uz compinit compinit -d ~/.cache/zcompdump-$ZSH_VERSION + autoload -Uz promptinit promptinit -zstyle ':completion:*' menu select -zmodload zsh/complist - -bindkey -v export KEYTIMEOUT=1 set -o vi @@ -100,30 +93,28 @@ autoload -Uz edit-command-line zle -N edit-command-line bindkey -M vicmd ' ' edit-command-line -bindkey -v '^?' backward-delete-char - bindkey "^e" end-of-line bindkey "^a" beginning-of-line +bindkey "^t" transpose-chars +bindkey "^r" history-incremental-search-backward + bindkey -M vicmd "^e" end-of-line bindkey -M vicmd "^a" beginning-of-line -bindkey "" beginning-of-line -bindkey "" end-of-line bindkey "${terminfo[khome]}" beginning-of-line bindkey "${terminfo[kend]}" end-of-line bindkey "^[[3~" delete-char bindkey "^[3;5~" delete-char -bindkey "^[[P" delete-char bindkey "^[[1;5C" forward-word bindkey "^[[1;5D" backward-word -autoload -U up-line-or-beginning-search -autoload -U down-line-or-beginning-search -zle -N up-line-or-beginning-search -zle -N down-line-or-beginning-search +autoload -U up-line-or-beginning-search +autoload -U down-line-or-beginning-search +zle -N up-line-or-beginning-search +zle -N down-line-or-beginning-search bindkey "^[A" up-line-or-beginning-search -bindkey "^[B" down-line-or-beginning-search bindkey "^[OA" up-line-or-beginning-search +bindkey "^[B" down-line-or-beginning-search bindkey "^[OB" down-line-or-beginning-search ## Handy functions @@ -152,67 +143,56 @@ stopwatch() { done } -fs () { - if [[ $1 == "" ]]; then - printf ']710;%s' "xft:DejaVuSansMono Nerd Font Mono:pixelsize=14" - else - printf ']710;%s' "xft:DejaVuSansMono Nerd Font Mono:pixelsize=${1}" - fi -} - -calcgrade () { - if [ -z $1 ]; then - echo "Please submit an argument" - fi - D=$(find . -maxdepth 3 -name $1\* -type d) - if [ -z $D ]; then - echo $1 "not found" - else - ls $D/guidelines.mrk - echo $( \ - grep -oE "([0-9]+(\.[0-9]+)?)/[0-9]+" $D/guidelines.mrk \ - | sed -Ee 's/^([0-9]+(\.[0-9]+)?)\/.*/\1/g' \ - | tr '\n' '+' \ - | sed -Ee 's/^(.*)\+$/\1/g' -e 's/\+/ + /g') \ - | bc - fi -} - -function screengrab() { - local OUT=screengrab.gif - local SIZE=$1 - local POS=$2 - ffmpeg -f x11grab -r 20 -s ${SIZE} -i :0.0+${POS} -r 20 out.gif -} - -fr () { - which futhark > /dev/null - if [ ! -z $? ]; then - activate futhark - fi - futhark repl +checkout() { + local current_path + current_path=`pwd` + echo $current_path + cd $(mktemp -d) + git clone "$1" + cd * + export OLDPWD=$current_path } ## Aliases alias :q='exit' -alias gdb='gdb -q' +alias cgpu='sshpass -e ssh -l qgt268 ku-gpu' +alias fsharpc='fsharpc --nologo --standalone' +alias fsharpi='fsharpi --nologo' +alias gdb='gdb -q -x ${XDG_CONFIG_HOME:-$HOME/.config}/gdbinit' alias glog2="git log --graph --abbrev-commit --decorate --format=format:'%Cgreen%h%C(reset) [%G?] %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%Cred%d%C(reset)' --all" alias glog='git log --pretty="%Cgreen%H%Creset [%G?] %cn: %s %Cred%d%Creset"' +alias irssi="irssi --home=${XDG_DATA_HOME:-$HOME/.config/irssi}" +alias less='less -R' alias ls='ls --color=auto' alias mutt='neomutt' alias pbcopy='xclip -selection clipboard -i' alias pbpaste='xclip -selection clipboard -o' -alias push='git push && mpgv ~/downloads/mario_power_up.mp3' +alias push='git push && mpg123 ~/Downloads/Mario-coin-sound.mp3' alias s='vim $(fzf)' -alias scan='sudo iwlist wlp3s0 scan > /dev/null' +alias scan='nmcli d wifi rescan' +alias sudo='doas' alias v='echo -ne "\e[1 q" && vim --servername vim' -alias ptop="ps -o pid,user,size,pcpu,command --sort size cx" +alias wifi-scan='nmcli d wifi rescan' +alias vbox='virtualbox' + +# Make sure that nobody makes some silly mistake +alias nano='vim' +alias emacs='vim' ## Do before dropping into shell +source ~/.secrets/sshpass + BANNERFILE=~/.config/texts/todo.md +printwithcolors() { + local title='s/^(#+.*)/\\e[1;38;5;71m\1\\e[0m/g' + local onion='s/(﨩)/\\e[38;5;147m\1\\e[0m/g' + local progress='s/\[([0-9]+)\/([0-9]+)\]/\\e[38;5;229m[\1\/\2]\\e[0m/g' + local comment='s/ *\((.*)\)/ \\e[3;38;5;237m\1\\e[0m/g' + local git='s/([Gg]it[a-zA-Z]*)/\\e[38;5;222m\1\\e[0m/g' + echo -e "$(sed -Ee "$onion;$title;$progress;$comment;$git" $1)" +} + if [[ $(tput cols) -gt 140 ]]; then - pr -mtW 140 $BANNERFILE ~/.config/texts/setsail -else - cat $BANNERFILE + [ "$TERM" =~ .*256.* ] && printwithcolors $BANNERFILE || pr -mtW 140 $BANNERFILE ~/.config/texts/setsail fi |
