Есть ли способ использовать «родной» Crystal, чтобы определить, работает ли он в сеансе интерактивной оболочки? - PullRequest
0 голосов
/ 28 мая 2018

Если исполняемый файл Crystal запущен, каков будет рекомендуемый способ определить, работает ли он в интерактивной среде?

Например:

`tty`.strip != "not a tty"

Но, используя собственный Crystal.

1 Ответ

0 голосов
/ 28 мая 2018

Это IO # tty? метод.

Скомпилируйте файл (foo.cr) с содержанием:

puts STDIN.tty?

Запустите его из оболочки:

./foo              # => true
echo "foo" | ./foo # => false
...