From eec3f74fc61288cefc88a1e7dc6cb3dd5f88e22c Mon Sep 17 00:00:00 2001 From: Jonathan Hodgson Date: Tue, 11 Jul 2017 17:20:15 +0100 Subject: [PATCH] Work on zsh config --- custom-oh-my-zsh/completion.zsh | 22 ++++++++++++++++++++++ custom-oh-my-zsh/functions.zsh | 4 ++-- custom-oh-my-zsh/promptconfig.zsh | 24 +++++++++++++++++------- 3 files changed, 41 insertions(+), 9 deletions(-) create mode 100644 custom-oh-my-zsh/completion.zsh diff --git a/custom-oh-my-zsh/completion.zsh b/custom-oh-my-zsh/completion.zsh new file mode 100644 index 00000000..4182964c --- /dev/null +++ b/custom-oh-my-zsh/completion.zsh @@ -0,0 +1,22 @@ +compdef sshrc=ssh + +autoload bashcompinit +bashcompinit +_wp_complete() { + local OLD_IFS="$IFS" + local cur=${COMP_WORDS[COMP_CWORD]} + IFS=$'\n'; # want to preserve spaces at the end + local opts="$(wp cli completions --line="$COMP_LINE" --point="$COMP_POINT")" + if [[ "$opts" =~ \\s* ]] + then + COMPREPLY=( $(compgen -f -- $cur) ) + elif [[ $opts = "" ]] + then + COMPREPLY=( $(compgen -f -- $cur) ) + else + COMPREPLY=( ${opts[*]} ) + fi + IFS="$OLD_IFS" + return 0 +} +complete -o nospace -F _wp_complete wp diff --git a/custom-oh-my-zsh/functions.zsh b/custom-oh-my-zsh/functions.zsh index 4b7cedb1..1947ac20 100644 --- a/custom-oh-my-zsh/functions.zsh +++ b/custom-oh-my-zsh/functions.zsh @@ -19,7 +19,7 @@ function old() { function cdlc() { cd "$@" - /home/jonathan/.gem/ruby/2.4.0/bin/colorls | tail -n +2 + /home/jonathan/.gem/ruby/2.4.0/bin/colorls -sd | tail -n +2 } alias cd="cdlc" @@ -100,5 +100,5 @@ searchcss() { grep -r -i -n --color="always" --include=\*.{css,less,scss,sass} --exclude=\*.min.css "$1" . } searchphp() { - grep -r -i -n --color="always" --include="*.php" "$1" . + grep -r -i -n --color="always" --include=\*.{php,phtml} "$1" . } diff --git a/custom-oh-my-zsh/promptconfig.zsh b/custom-oh-my-zsh/promptconfig.zsh index 595e9665..c81d335c 100644 --- a/custom-oh-my-zsh/promptconfig.zsh +++ b/custom-oh-my-zsh/promptconfig.zsh @@ -3,28 +3,35 @@ # Custom dir command function my_dir(){ homeIcon=" " - wpPluginsIcon="  " - wpThemesIcon="" + wpPluginsIcon=".p." + wpThemesIcon=".t." siteIcon=" " dropboxIcon=" " + seperator="" # Gets the path. local current_path="$(print -P "%~")" # Replace either ~ or ~/ with  - current_path=$(echo $current_path | sed -r -e "s/\~?/$homeIcon/") + current_path=$(echo $current_path | sed -r -e "s/\~/$homeIcon/") # Replace wp-content/themes with theme icon if in theme - current_path=$(echo $current_path | sed -r -e "s/wp\-content\/themes/$wpThemesIcon/") + # current_path=$(echo $current_path | sed -r -e "s/wp\-content\/themes/$wpThemesIcon/") # Replace wp-content/plugins with plugin icon if in plugin - current_path=$(echo $current_path | sed -r -e "s/wp\-content\/plugins/$wpPluginsIcon/") + # current_path=$(echo $current_path | sed -r -e "s/wp\-content\/plugins/$wpPluginsIcon/") - #If in a site folder, replace home/Sites//public_html with siteIcon + # If in a site folder, replace home/Sites//public_html with siteIcon current_path=$(echo $current_path | sed -r -e "s/$homeIcon\/Sites\/([a-z_\-]*)\/public_html/$siteIcon\1/") - #Replace Dropbox with icon + # Replace Dropbox with icon current_path=$(echo $current_path | sed -r -e "s/$homeIcon\/Dropbox/$dropboxIcon/") + # Change wp-content in sub folders + current_path=$(echo $current_path | sed -r -e "s/wp\-content\//wpc\//") + + # Set the seperator + current_path=$(echo $current_path | sed -r -e "s/\//$seperator/g") + echo $current_path } @@ -32,6 +39,9 @@ POWERLEVEL9K_CUSTOM_DIR="my_dir" POWERLEVEL9K_CUSTOM_DIR_BACKGROUND="blue" POWERLEVEL9K_CUSTOM_DIR_FOREGROUND="white" +# POWERLEVEL9K_LEFT_SEGMENT_SEPARATOR="\ue0c0" +# POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR="\ue0c2" + # Left Prompt POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(custom_dir rbenv vcs)