dotfiles/.zshrc

127 lines
3.3 KiB
Bash
Raw Normal View History

2020-04-21 13:54:09 -04:00
source ~/.zsh_local
source ~/.shell_aliases
2020-02-09 12:29:17 -05:00
HISTFILE=~/.histfile
HISTSIZE=10000
SAVEHIST=10000
setopt appendhistory autocd notify
setopt menu_complete
unsetopt beep
bindkey -v
2020-04-21 13:54:09 -04:00
2020-06-12 18:44:25 -04:00
autoload -Uz up-line-or-beginning-search
autoload -Uz down-line-or-beginning-search
zle -N up-line-or-beginning-search
zle -N down-line-or-beginning-search
bindkey '\eOA' up-line-or-beginning-search
bindkey '\e[A' up-line-or-beginning-search
bindkey '\eOB' down-line-or-beginning-search
bindkey '\e[B' down-line-or-beginning-search
2020-04-21 13:54:09 -04:00
export EDITOR="vim"
2020-02-09 12:29:17 -05:00
zstyle ':completion:*' completer _expand _complete _ignored _correct _approximate
zstyle ':completion:*' matcher-list '+' '+m:{[:lower:]}={[:upper:]}' '+m:{[:lower:][:upper:]}={[:upper:][:lower:]}' '+r:|[._-]=** r:|=** l:|=*'
2020-04-21 13:54:09 -04:00
zstyle :compinstall filename '~/.zshrc'
2020-02-09 12:29:17 -05:00
autoload -Uz compinit
compinit
2020-02-09 12:29:17 -05:00
autoload -Uz vcs_info
precmd() { vcs_info }
2020-02-09 12:29:17 -05:00
zstyle ':vcs_info:git:*' formats ' [%b]'
2020-02-09 12:29:17 -05:00
2020-04-23 11:57:16 -04:00
_COMP_COLOR=${COMP_COLOR:-"{white}"}
2020-04-23 11:59:43 -04:00
_USER_COLOR=${USER_COLOR:-"{blue}"}
2020-04-23 11:57:16 -04:00
setopt PROMPT_SUBST
2020-04-23 11:59:43 -04:00
PROMPT="[%(!.%B%F{red}.%B%F$_USER_COLOR)%n%b%F{white}@%B%F$_COMP_COLOR%m%b%f] %b%F{green}%~%B%F{yellow}${vcs_info_msg_0_} %B%f$%b%f "
2020-02-09 12:29:17 -05:00
# enable color support of ls and also add handy aliases
if [ -x /usr/bin/dircolors ]; then
test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
alias ls='ls --color=auto'
2020-02-09 12:29:17 -05:00
alias grep='grep --color=auto'
alias fgrep='fgrep --color=auto'
alias egrep='egrep --color=auto'
fi
2020-02-09 12:29:17 -05:00
export PATH=./:$PATH
fignore=(o)
function SetTtyColors() {
echo -en "\e]P0191e1f" #black 1
echo -en "\e]P1dc4848" #darkgrey 2
echo -en "\e]P200aa00" #darkred 3
echo -en "\e]P3d99f4e" #red 4
echo -en "\e]P44444aa" #darkgreen 5
echo -en "\e]P5c436b9" #green 6
echo -en "\e]P600aaaa" #brown 7
echo -en "\e]P7d7d7d7" #yellow 8
echo -en "\e]P87b7b7b" #darkblue 9
echo -en "\e]P9ff6f6f" #blue 10
echo -en "\e]PA55ff55" #darkmagenta11
echo -en "\e]PBffed8b" #magenta 12
echo -en "\e]PC5555ff" #darkcyan 13
echo -en "\e]PDff6eff" #cyan 14
echo -en "\e]PE55ffff" #lightgray 15
echo -en "\e]PFaaaaaa" #white 16
clear
}
2020-02-09 12:29:17 -05:00
if [ "$TERM" = "linux" ]; then
SetTtyColors
fi
2020-02-09 12:29:17 -05:00
function _open2(){
var=$(fc -ln -1);
if [[ $var != *"grep"* ]]; then;
return;
fi;
var=$(sed "s/grepr/grepr -l/" <<< $var);
vim -p `zsh -c "$var" | grep $1`
}
2020-02-09 12:29:17 -05:00
# After running grepr, `open` plus a match will
# search history for the most recent grepr,
# and open the first file matching the text
# in Vim, at the first matching line number
function _open(){
command=$(fc -ln -1);
count=1;
while [[ $command != *"grepr"* ]]; do
((count++))
command=$(fc -ln -$count | head -n 1);
done;
# echo '$@'
line=$(zsh -c "$command" | grep $1 | sed "s/^[^:]*://g" | sed "s/:.*//" | head -n 1);
echo $line;
file=$(zsh -c "$command" | grep $1 | sed "s/:.*//" | head -n 1);
echo $file;
vim +$line -p `echo $file`;
2020-02-09 12:29:17 -05:00
}
2020-02-09 12:29:17 -05:00
function pushdot {
cd ~/.dotfiles &&
2020-02-09 12:54:34 -05:00
if [ $# -eq 0 ]; then
2020-04-21 13:54:09 -04:00
git commit -a && git push -u origin master
2020-02-09 12:54:34 -05:00
else
2020-04-21 13:54:09 -04:00
git commit -a -m "$1" && git push -u origin master
2020-02-09 12:54:34 -05:00
fi
cd -
}
2020-04-23 11:46:53 -04:00
function getdot {
cd ~/.dotfiles &&
git pull
cd -
}
2020-04-26 20:17:35 -04:00
2020-04-26 20:19:11 -04:00
export fsu="vaillanc@linprog.cs.fsu.edu"