From 46259edd2d39e2513b77eea1b9ce83a2c5b826c7 Mon Sep 17 00:00:00 2001 From: Tom Willemse Date: Tue, 14 Jun 2022 22:15:26 -0700 Subject: Update ZSH prompt Include a shortened version of the current directory. --- zsh/.zsh/functions/spwd | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 zsh/.zsh/functions/spwd (limited to 'zsh/.zsh') diff --git a/zsh/.zsh/functions/spwd b/zsh/.zsh/functions/spwd new file mode 100644 index 0000000..15aef1b --- /dev/null +++ b/zsh/.zsh/functions/spwd @@ -0,0 +1,25 @@ +# From https://stackoverflow.com/a/45336078 +paths=(${(s:/:)PWD}) + +cur_path='/' +cur_short_path='/' +for directory in ${paths[@]} +do + cur_dir='' + for (( i=0; i<${#directory}; i++ )); do + cur_dir+="${directory:$i:1}" + matching=("$cur_path"/"$cur_dir"*/) + if [[ ${#matching[@]} -eq 1 ]]; then + break + fi + done + cur_short_path+="$cur_dir/" + cur_path+="$directory/" + + if [[ $cur_path == $HOME/ ]]; + then cur_short_path='~/' + fi +done + +printf %b "${cur_short_path: : -1}" +echo -- cgit v1.2.3-54-g00ecf