Mac OS X doesn't support uname -o. Use uname instead.

I break compatibility with Mac OS X again, that I don't have access
to. Result: Stuff break, and I have to fix it, so it will perhaps
work. At least, I hope it will work.
This commit is contained in:
Konrad Borowski 2013-08-16 20:47:04 +02:00
parent ca8e4c08a7
commit 3e115b7a85
3 changed files with 10 additions and 6 deletions

View file

@ -1,8 +1,9 @@
if test (uname -o) = Cygwin
switch (uname)
case 'CYGWIN_*'
function __fish_pwd --description "Show current path"
pwd | sed -e 's-^/cygdrive/\(.\)/\?-\u\1:/-'
end
else
case '*'
function __fish_pwd --description "Show current path"
pwd
end

View file

@ -1,5 +1,7 @@
# Query for USERDOMAIN to shorten waiting times when OS isn't Windows.
if set -q USERDOMAIN; and test (uname -o) = Cygwin
set -q USERDOMAIN
and switch (uname)
case 'CYGWIN_*'
# Cygwin's hostname is broken when computer name contains Unicode
# characters. This hack "fixes" hostname in Cygwin.
function hostname --description "Show or set the system's host name"

View file

@ -1,12 +1,13 @@
if test (uname) = Darwin
switch (uname)
case Darwin
function prompt_pwd --description "Print the current working directory, shortend to fit the prompt"
echo $PWD | sed -e "s|^$HOME|~|" -e 's|^/private||' -e 's-\([^/.]\)[^/]*/-\1/-g'
end
else if test (uname -o) = Cygwin
case 'CYGWIN_*'
function prompt_pwd --description "Print the current working directory, shortend to fit the prompt"
echo $PWD | sed -e "s|^$HOME|~|" -e 's|^/cygdrive/\(.\)|\1/:|' -e 's-\([^/.]\)[^/]*/-\1/-g' -e 's-^\([^/]\)/:/\?-\u\1:/-'
end
else
case '*'
function prompt_pwd --description "Print the current working directory, shortend to fit the prompt"
echo $PWD | sed -e "s|^$HOME|~|" -e 's-\([^/.]\)[^/]*/-\1/-g'
end