2020-04-21 13:54:09 -04:00
|
|
|
source ~/.zsh_local
|
|
|
|
source ~/.shell_aliases
|
2020-02-09 12:29:17 -05:00
|
|
|
|
2020-04-21 12:39:18 -04: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
|
|
|
|
|
|
|
autoload -U up-line-or-beginning-search
|
|
|
|
autoload -U down-line-or-beginning-search
|
|
|
|
bindkey '^[[A' history-beginning-search-backward
|
|
|
|
bindkey '^[[B' history-beginning-search-forward
|
|
|
|
|
|
|
|
export EDITOR="vim"
|
2020-02-09 12:29:17 -05:00
|
|
|
|
2020-04-21 12:39:18 -04: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
|
|
|
|
2020-04-21 12:39:18 -04:00
|
|
|
autoload -Uz compinit
|
|
|
|
compinit
|
2020-02-09 12:29:17 -05:00
|
|
|
|
2020-04-21 12:39:18 -04:00
|
|
|
autoload -Uz vcs_info
|
|
|
|
precmd() { vcs_info }
|
2020-02-09 12:29:17 -05:00
|
|
|
|
2020-04-21 12:39:18 -04: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-21 12:39:18 -04:00
|
|
|
setopt PROMPT_SUBST
|
2020-04-23 11:57:16 -04:00
|
|
|
PROMPT="[%(!.%B%F{red}.%B%F{blue})%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
|
|
|
|
2020-04-21 12:39:18 -04: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
|
|
|
|
2020-04-21 12:39:18 -04: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
|
|
|
|
2020-04-21 12:39:18 -04: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
|
|
|
|
2020-04-21 12:39:18 -04:00
|
|
|
if [ "$TERM" = "linux" ]; then
|
|
|
|
SetTtyColors
|
|
|
|
fi
|
2020-02-09 12:29:17 -05:00
|
|
|
|
2020-04-21 12:39:18 -04: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
|
|
|
|
2020-04-21 12:39:18 -04: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-04-21 12:39:18 -04:00
|
|
|
}
|
2020-02-09 12:29:17 -05:00
|
|
|
|
2020-02-09 12:36:34 -05:00
|
|
|
function pushdot {
|
2020-02-09 12:42:29 -05:00
|
|
|
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
|
2020-02-09 12:36:34 -05:00
|
|
|
cd -
|
|
|
|
}
|
2020-04-23 11:46:53 -04:00
|
|
|
|
|
|
|
function getdot {
|
|
|
|
cd ~/.dotfiles &&
|
|
|
|
git pull
|
|
|
|
cd -
|
|
|
|
}
|