mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-23 09:03:37 +08:00
e86a31f6d4
Removes a weird dependency on the test command.
30 lines
560 B
Fish
30 lines
560 B
Fish
function isatty -d "Tests if a file descriptor is a tty"
|
|
set -l options h/help
|
|
argparse -n isatty $options -- $argv
|
|
or return
|
|
|
|
if set -q _flag_help
|
|
__fish_print_help isatty
|
|
return 0
|
|
end
|
|
|
|
if set -q argv[2]
|
|
printf (_ "%s: Too many arguments") isatty >&2
|
|
return 1
|
|
end
|
|
|
|
set -l fd
|
|
switch "$argv"
|
|
case stdin ''
|
|
set fd 0
|
|
case stdout
|
|
set fd 1
|
|
case stderr
|
|
set fd 2
|
|
case '*'
|
|
set fd $argv[1]
|
|
end
|
|
|
|
test -t "$fd"
|
|
end
|