mirror of
https://github.com/jimeh/dotfiles.git
synced 2026-02-19 13:46:41 +00:00
Switch from oh-my-zsh to zplug
This commit is contained in:
3
.gitmodules
vendored
3
.gitmodules
vendored
@@ -25,3 +25,6 @@
|
|||||||
[submodule "shell/enhancd"]
|
[submodule "shell/enhancd"]
|
||||||
path = shell/enhancd
|
path = shell/enhancd
|
||||||
url = https://github.com/b4b4r07/enhancd
|
url = https://github.com/b4b4r07/enhancd
|
||||||
|
[submodule "shell/zsh/zplug"]
|
||||||
|
path = shell/zsh/zplug
|
||||||
|
url = https://github.com/b4b4r07/zplug
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ path_prepend "/usr/local/bin"
|
|||||||
if [ -n "$BASH_VERSION" ]; then
|
if [ -n "$BASH_VERSION" ]; then
|
||||||
source "$DOTSHELL/bashrc.sh"
|
source "$DOTSHELL/bashrc.sh"
|
||||||
elif [ -n "$ZSH_VERSION" ]; then
|
elif [ -n "$ZSH_VERSION" ]; then
|
||||||
source "$DOTSHELL/zshrc.sh"
|
source "$DOTSHELL/zshrc.zsh"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Package management
|
# Package management
|
||||||
|
|||||||
@@ -1,19 +0,0 @@
|
|||||||
# History search with peco
|
|
||||||
#
|
|
||||||
# Search shell history with peco: https://github.com/peco/peco
|
|
||||||
# Adapted from: https://github.com/mooz/percol#zsh-history-search
|
|
||||||
if which peco &> /dev/null; then
|
|
||||||
function peco_select_history() {
|
|
||||||
local tac
|
|
||||||
(which gtac &> /dev/null && tac="gtac") || \
|
|
||||||
(which tac &> /dev/null && tac="tac") || \
|
|
||||||
tac="tail -r"
|
|
||||||
BUFFER=$(fc -l -n 1 | eval $tac | \
|
|
||||||
peco --layout=bottom-up --query "$LBUFFER")
|
|
||||||
CURSOR=$#BUFFER # move cursor
|
|
||||||
zle -R -c # refresh
|
|
||||||
}
|
|
||||||
|
|
||||||
zle -N peco_select_history
|
|
||||||
bindkey '^R' peco_select_history
|
|
||||||
fi
|
|
||||||
@@ -1,50 +0,0 @@
|
|||||||
# A script to make using 256 colors in zsh less painful.
|
|
||||||
# P.C. Shyamshankar <sykora@lucentbeing.com>
|
|
||||||
# https://github.com/sykora/etc/blob/master/zsh/functions/spectrum/
|
|
||||||
|
|
||||||
typeset -Ag FX FG BG
|
|
||||||
|
|
||||||
FX=(
|
|
||||||
reset "[00m"
|
|
||||||
bold "[01m" no-bold "[22m"
|
|
||||||
italic "[03m" no-italic "[23m"
|
|
||||||
underline "[04m" no-underline "[24m"
|
|
||||||
blink "[05m" no-blink "[25m"
|
|
||||||
reverse "[07m" no-reverse "[27m"
|
|
||||||
)
|
|
||||||
|
|
||||||
for color in {000..255}; do
|
|
||||||
FG[$color]="[38;5;${color}m"
|
|
||||||
BG[$color]="[48;5;${color}m"
|
|
||||||
done
|
|
||||||
|
|
||||||
|
|
||||||
#
|
|
||||||
# Powerline-Arrow theme
|
|
||||||
#
|
|
||||||
|
|
||||||
PROMPT='%n@%m %{$FG[000]%}%{$BG[235]%}⮀%{$reset_color%}%{$BG[235]%} %~ $(check_git_prompt_info)%{$reset_color%} $ '
|
|
||||||
|
|
||||||
local return_code="%(?..%{$fg[cyan]%}%? ↵%{$reset_color%})"
|
|
||||||
RPROMPT="${return_code}"
|
|
||||||
|
|
||||||
ZSH_THEME_GIT_PROMPT_PREFIX="%{$FG[236]%}%{$BG[237]%}⮀ %{$FG[014]%}"
|
|
||||||
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}%{$FG[238]%}⮀%{$reset_color%}"
|
|
||||||
ZSH_THEME_GIT_PROMPT_DIRTY="%{$FG[001]%}*%{$reset_color%}"
|
|
||||||
ZSH_THEME_GIT_PROMPT_CLEAN=" "
|
|
||||||
|
|
||||||
|
|
||||||
# Git sometimes goes into a detached head state. git_prompt_info doesn't
|
|
||||||
# return anything in this case. So wrap it in another function and check
|
|
||||||
# for an empty string. -- Brorrowed from Soliah.zsh-theme :)
|
|
||||||
function check_git_prompt_info() {
|
|
||||||
if git rev-parse --git-dir > /dev/null 2>&1; then
|
|
||||||
if [[ -z $(git_prompt_info) ]]; then
|
|
||||||
echo "%{$fg[cyan]%}(detached%{$fg[magenta]%}*%{$fg[cyan]%})%{$reset_color%}"
|
|
||||||
else
|
|
||||||
echo "$(git_prompt_info)"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
echo "%{$reset_color%}%{$FG[236]%}⮀"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
0
shell/zsh/plugins/.gitkeep
Normal file
0
shell/zsh/plugins/.gitkeep
Normal file
@@ -3,7 +3,7 @@ PROMPT='%n@%m %~$(check_git_prompt_info)$ %{$reset_color%}'
|
|||||||
local return_code="%(?..%{$fg[cyan]%}%? ↵%{$reset_color%})"
|
local return_code="%(?..%{$fg[cyan]%}%? ↵%{$reset_color%})"
|
||||||
RPROMPT="${return_code}"
|
RPROMPT="${return_code}"
|
||||||
|
|
||||||
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[cyan]%}("
|
ZSH_THEME_GIT_PROMPT_PREFIX=" %{$fg[cyan]%}("
|
||||||
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
|
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
|
||||||
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}*%{$fg[cyan]%})%{$reset_color%}"
|
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}*%{$fg[cyan]%})%{$reset_color%}"
|
||||||
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[cyan]%})%{$fg[blue]%}"
|
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[cyan]%})%{$fg[blue]%}"
|
||||||
@@ -15,9 +15,9 @@ ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[cyan]%})%{$fg[blue]%}"
|
|||||||
function check_git_prompt_info() {
|
function check_git_prompt_info() {
|
||||||
if git rev-parse --git-dir > /dev/null 2>&1; then
|
if git rev-parse --git-dir > /dev/null 2>&1; then
|
||||||
if [[ -z $(git_prompt_info) ]]; then
|
if [[ -z $(git_prompt_info) ]]; then
|
||||||
echo " %{$fg[cyan]%}(detached%{$fg[magenta]%}*%{$fg[cyan]%})%{$reset_color%}"
|
echo "%{$fg[cyan]%}(detached%{$fg[magenta]%}*%{$fg[cyan]%})%{$reset_color%}"
|
||||||
else
|
else
|
||||||
echo " $(git_prompt_info)"
|
echo "$(git_prompt_info)"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
1
shell/zsh/zplug
Submodule
1
shell/zsh/zplug
Submodule
Submodule shell/zsh/zplug added at 78cfe440ec
3
shell/zsh/zplug-cache/.gitignore
vendored
Normal file
3
shell/zsh/zplug-cache/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
.cache
|
||||||
|
repos/*
|
||||||
|
zcompdump
|
||||||
0
shell/zsh/zplug-cache/.gitkeep
Normal file
0
shell/zsh/zplug-cache/.gitkeep
Normal file
@@ -1,82 +0,0 @@
|
|||||||
#
|
|
||||||
# Z-Shell Init
|
|
||||||
#
|
|
||||||
|
|
||||||
# Export path variables
|
|
||||||
DOTZSH="$DOTSHELL/zsh"
|
|
||||||
|
|
||||||
# Path to your oh-my-zsh configuration.
|
|
||||||
ZSH="$DOTZSH/oh-my-zsh"
|
|
||||||
|
|
||||||
# Customize oh-my-zsh's custom path.
|
|
||||||
ZSH_CUSTOM="$DOTZSH/custom"
|
|
||||||
|
|
||||||
# Set name of the theme to load.
|
|
||||||
# Look in ~/.oh-my-zsh/themes/
|
|
||||||
# Optionally, if you set this to "random", it'll load a random theme each
|
|
||||||
# time that oh-my-zsh is loaded.
|
|
||||||
ZSH_THEME="plain"
|
|
||||||
|
|
||||||
# Set to this to use case-sensitive completion
|
|
||||||
# CASE_SENSITIVE="true"
|
|
||||||
|
|
||||||
# Comment this out to disable weekly auto-update checks
|
|
||||||
DISABLE_AUTO_UPDATE="true"
|
|
||||||
|
|
||||||
# Uncomment following line if you want to disable colors in ls
|
|
||||||
# DISABLE_LS_COLORS="true"
|
|
||||||
|
|
||||||
# Uncomment following line if you want to disable autosetting terminal title.
|
|
||||||
DISABLE_AUTO_TITLE="true"
|
|
||||||
|
|
||||||
# Uncomment following line if you want red dots to be displayed while waiting for completion
|
|
||||||
# COMPLETION_WAITING_DOTS="true"
|
|
||||||
|
|
||||||
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
|
|
||||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
|
||||||
plugins=( \
|
|
||||||
brew \
|
|
||||||
bundler \
|
|
||||||
cake \
|
|
||||||
cap \
|
|
||||||
gem \
|
|
||||||
heroku \
|
|
||||||
node \
|
|
||||||
nyan \
|
|
||||||
osx \
|
|
||||||
peco-history \
|
|
||||||
powder \
|
|
||||||
python \
|
|
||||||
ruby \
|
|
||||||
thor \
|
|
||||||
vagrant \
|
|
||||||
zsh-autosuggestions \
|
|
||||||
zsh-syntax-highlighting \
|
|
||||||
)
|
|
||||||
|
|
||||||
source "$ZSH/oh-my-zsh.sh"
|
|
||||||
|
|
||||||
# Customize to your needs...
|
|
||||||
|
|
||||||
# Enable bash-style completion
|
|
||||||
autoload -U bashcompinit
|
|
||||||
bashcompinit
|
|
||||||
|
|
||||||
# Disable shared history
|
|
||||||
unsetopt share_history
|
|
||||||
|
|
||||||
# Disable attempted correction of commands (is wrong 98% of the time).
|
|
||||||
unsetopt correctall
|
|
||||||
|
|
||||||
# Disable certain bundled ruby binaries, I install the gems globally.
|
|
||||||
unalias shotgun
|
|
||||||
|
|
||||||
# Cause I hit emacs shorts too much
|
|
||||||
bindkey -s "\C-x\C-f" "cd "
|
|
||||||
|
|
||||||
# Configure zsh-syntax-highlighting
|
|
||||||
ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets)
|
|
||||||
|
|
||||||
# use ctrl+t to toggle autosuggestions(hopefully this wont be needed as
|
|
||||||
# zsh-autosuggestions is designed to be unobtrusive)
|
|
||||||
bindkey '^T' autosuggest-toggle
|
|
||||||
65
shell/zshrc.zsh
Normal file
65
shell/zshrc.zsh
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
#
|
||||||
|
# Z-Shell Init
|
||||||
|
#
|
||||||
|
|
||||||
|
# Basic stuff.
|
||||||
|
DISABLE_AUTO_TITLE="true"
|
||||||
|
|
||||||
|
# Export path variables.
|
||||||
|
DOTZSH="$DOTSHELL/zsh"
|
||||||
|
ZPLUG_HOME="$DOTZSH/zplug-cache"
|
||||||
|
|
||||||
|
# Don't wrap these commands in a Bundler wrapper.
|
||||||
|
UNBUNDLED_COMMANDS=(shotgun)
|
||||||
|
|
||||||
|
# Enable bash-style completion.
|
||||||
|
autoload -U bashcompinit
|
||||||
|
bashcompinit
|
||||||
|
|
||||||
|
# Disable shared history.
|
||||||
|
unsetopt share_history
|
||||||
|
|
||||||
|
# Disable attempted correction of commands (is wrong 98% of the time).
|
||||||
|
unsetopt correctall
|
||||||
|
|
||||||
|
# Cause I hit emacs shorts too much.
|
||||||
|
bindkey -s "\C-x\C-f" "cd "
|
||||||
|
|
||||||
|
# use ctrl+t to toggle autosuggestions(hopefully this wont be needed as
|
||||||
|
# zsh-autosuggestions is designed to be unobtrusive).
|
||||||
|
bindkey '^T' autosuggest-toggle
|
||||||
|
|
||||||
|
#
|
||||||
|
# zplug
|
||||||
|
#
|
||||||
|
|
||||||
|
source "$DOTZSH/zplug/zplug"
|
||||||
|
alias zp="zplug"
|
||||||
|
|
||||||
|
zplug "plugins/brew", from:oh-my-zsh
|
||||||
|
zplug "plugins/bundler", from:oh-my-zsh
|
||||||
|
zplug "plugins/git", from:oh-my-zsh
|
||||||
|
zplug "plugins/powder", from:oh-my-zsh
|
||||||
|
|
||||||
|
zplug "$DOTZSH/themes/plain", from:local
|
||||||
|
|
||||||
|
zplug "jimeh/zsh-peco-history"
|
||||||
|
zplug "zsh-users/zsh-completions"
|
||||||
|
zplug "zsh-users/zsh-autosuggestions"
|
||||||
|
zplug "zsh-users/zsh-syntax-highlighting", nice:19
|
||||||
|
|
||||||
|
# Install plugins if there are plugins that have not been installed
|
||||||
|
if ! zplug check --verbose; then
|
||||||
|
printf "Install? [y/N]: "
|
||||||
|
if read -q; then
|
||||||
|
echo
|
||||||
|
zplug install
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
zplug load
|
||||||
|
|
||||||
|
# Configure zsh-syntax-highlighting
|
||||||
|
if zplug check zsh-users/zsh-syntax-highlighting; then
|
||||||
|
export ZSH_HIGHLIGHT_HIGHLIGHTERS=(main brackets)
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user