aboutsummaryrefslogtreecommitdiff
path: root/.oh-my-zsh/plugins/shrink-path
diff options
context:
space:
mode:
Diffstat (limited to '.oh-my-zsh/plugins/shrink-path')
-rw-r--r--.oh-my-zsh/plugins/shrink-path/README.md68
-rw-r--r--.oh-my-zsh/plugins/shrink-path/shrink-path.plugin.zsh126
2 files changed, 0 insertions, 194 deletions
diff --git a/.oh-my-zsh/plugins/shrink-path/README.md b/.oh-my-zsh/plugins/shrink-path/README.md
deleted file mode 100644
index b990aea..0000000
--- a/.oh-my-zsh/plugins/shrink-path/README.md
+++ /dev/null
@@ -1,68 +0,0 @@
-# A plugin to shrink directory paths for brevity and pretty-printing
-
-
-## Examples
-
-For this directory tree:
-```
- /home/
- me/
- foo/
- bar/
- quux/
- biz/ # The prefix b is ambiguous between bar and biz.
-```
-here are the results of calling `shrink_path <option> /home/me/foo/bar/quux`:
-```
- Option Result
- <none> /h/m/f/ba/q
- -l|--last /h/m/f/ba/quux
- -s|--short /h/m/f/b/q
- -t|--tilde ~/f/ba/q
- -f|--fish ~/f/b/quux
-```
-
-
-## Usage
-
-For a fish-style working directory in your command prompt, add the following to
-your theme or zshrc:
-
-```
- setopt prompt_subst
- PS1='%n@%m $(shrink_path -f)>'
-```
-
-The following options are available:
-
-```
- -f, --fish fish simulation, equivalent to -l -s -t.
- -l, --last Print the last directory's full name.
- -s, --short Truncate directory names to the first character. Without
- -s, names are truncated without making them ambiguous.
- -t, --tilde Substitute ~ for the home directory.
- -T, --nameddirs Substitute named directories as well.
-```
-
-The long options can also be set via zstyle, like
-```
- zstyle :prompt:shrink_path fish yes
-```
-
-Note: Directory names containing two or more consecutive spaces are not yet
-supported.
-
-
-## License
-
-Copyright (C) 2008 by Daniel Friesel <derf@xxxxxxxxxxxxxxxxxx>
-
-License: WTFPL <http://www.wtfpl.net>
-
-Ref: https://www.zsh.org/mla/workers/2009/msg00415.html
- https://www.zsh.org/mla/workers/2009/msg00419.html
-
-
-## Misc
-
-Keywords: prompt directory truncate shrink collapse fish
diff --git a/.oh-my-zsh/plugins/shrink-path/shrink-path.plugin.zsh b/.oh-my-zsh/plugins/shrink-path/shrink-path.plugin.zsh
deleted file mode 100644
index 86102e6..0000000
--- a/.oh-my-zsh/plugins/shrink-path/shrink-path.plugin.zsh
+++ /dev/null
@@ -1,126 +0,0 @@
-# Shrink directory paths, e.g. /home/me/foo/bar/quux -> ~/f/b/quux.
-#
-# For a fish-style working directory in your command prompt, add the following
-# to your theme or zshrc:
-#
-# setopt prompt_subst
-# PS1='%n@%m $(shrink_path -f)>'
-#
-# The following options are available:
-#
-# -f, --fish fish simulation, equivalent to -l -s -t.
-# -l, --last Print the last directory's full name.
-# -s, --short Truncate directory names to the first character. Without
-# -s, names are truncated without making them ambiguous.
-# -t, --tilde Substitute ~ for the home directory.
-# -T, --nameddirs Substitute named directories as well.
-#
-# The long options can also be set via zstyle, like
-# zstyle :prompt:shrink_path fish yes
-#
-# Note: Directory names containing two or more consecutive spaces are not yet
-# supported.
-#
-# Keywords: prompt directory truncate shrink collapse fish
-#
-# Copyright (C) 2008 by Daniel Friesel <derf@xxxxxxxxxxxxxxxxxx>
-# License: WTFPL <http://www.wtfpl.net>
-#
-# Ref: https://www.zsh.org/mla/workers/2009/msg00415.html
-# https://www.zsh.org/mla/workers/2009/msg00419.html
-
-shrink_path () {
- setopt localoptions
- setopt rc_quotes null_glob
-
- typeset -i lastfull=0
- typeset -i short=0
- typeset -i tilde=0
- typeset -i named=0
-
- if zstyle -t ':prompt:shrink_path' fish; then
- lastfull=1
- short=1
- tilde=1
- fi
- if zstyle -t ':prompt:shrink_path' nameddirs; then
- tilde=1
- named=1
- fi
- zstyle -t ':prompt:shrink_path' last && lastfull=1
- zstyle -t ':prompt:shrink_path' short && short=1
- zstyle -t ':prompt:shrink_path' tilde && tilde=1
-
- while [[ $1 == -* ]]; do
- case $1 in
- -f|--fish)
- lastfull=1
- short=1
- tilde=1
- ;;
- -h|--help)
- print 'Usage: shrink_path [-f -l -s -t] [directory]'
- print ' -f, --fish fish-simulation, like -l -s -t'
- print ' -l, --last Print the last directory''s full name'
- print ' -s, --short Truncate directory names to the first character'
- print ' -t, --tilde Substitute ~ for the home directory'
- print ' -T, --nameddirs Substitute named directories as well'
- print 'The long options can also be set via zstyle, like'
- print ' zstyle :prompt:shrink_path fish yes'
- return 0
- ;;
- -l|--last) lastfull=1 ;;
- -s|--short) short=1 ;;
- -t|--tilde) tilde=1 ;;
- -T|--nameddirs)
- tilde=1
- named=1
- ;;
- esac
- shift
- done
-
- typeset -a tree expn
- typeset result part dir=${1-$PWD}
- typeset -i i
-
- [[ -d $dir ]] || return 0
-
- if (( named )) {
- for part in ${(k)nameddirs}; {
- [[ $dir == ${nameddirs[$part]}(/*|) ]] && dir=${dir/#${nameddirs[$part]}/\~$part}
- }
- }
- (( tilde )) && dir=${dir/#$HOME/\~}
- tree=(${(s:/:)dir})
- (
- if [[ $tree[1] == \~* ]] {
- cd -q ${~tree[1]}
- result=$tree[1]
- shift tree
- } else {
- cd -q /
- }
- for dir in $tree; {
- if (( lastfull && $#tree == 1 )) {
- result+="/$tree"
- break
- }
- expn=(a b)
- part=''
- i=0
- until [[ (( ${#expn} == 1 )) || $dir = $expn || $i -gt 99 ]] do
- (( i++ ))
- part+=$dir[$i]
- expn=($(echo ${part}*(-/)))
- (( short )) && break
- done
- result+="/$part"
- cd -q $dir
- shift tree
- }
- echo ${result:-/}
- )
-}
-
-## vim:ft=zsh