diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2008-09-19 12:58:46 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2008-09-19 12:58:46 +0000 |
commit | 23f2b4503c9d7697e382fed550d3bf846b81dd5c (patch) | |
tree | 8953de32c2d4126882d9d4c66bcbe7b8615e3419 /Functions/VCS_Info/VCS_INFO_realpath | |
parent | d9f1432e074872aa3a89515bc65ede5ad6551a47 (diff) | |
download | zsh-23f2b4503c9d7697e382fed550d3bf846b81dd5c.tar.gz zsh-23f2b4503c9d7697e382fed550d3bf846b81dd5c.tar.xz zsh-23f2b4503c9d7697e382fed550d3bf846b81dd5c.zip |
users/13252 and elsewhere: Frank Terbeck plus tweaks:
add VCS_Info function system
Diffstat (limited to 'Functions/VCS_Info/VCS_INFO_realpath')
-rw-r--r-- | Functions/VCS_Info/VCS_INFO_realpath | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Functions/VCS_Info/VCS_INFO_realpath b/Functions/VCS_Info/VCS_INFO_realpath new file mode 100644 index 000000000..481d5e98f --- /dev/null +++ b/Functions/VCS_Info/VCS_INFO_realpath @@ -0,0 +1,16 @@ +## vim:ft=zsh +## Written by Frank Terbeck <ft@bewatermyfriend.org> +## Distributed under the same BSD-ish license as zsh itself. + +# a portable 'readlink -f' +# forcing a subshell, to ensure chpwd() is not removed +# from the calling shell (if VCS_INFO_realpath() is called +# manually). + +setopt localoptions NO_shwordsplit + +( + (( ${+functions[chpwd]} )) && unfunction chpwd + setopt chaselinks + cd $1 2>/dev/null && pwd +) |