После этой записи Elixir Forum я создал сценарий оболочки для просмотра документации Elixir, запустив IEx.Helpers.h
:
elixir -e "require IEx.Helpers; IEx.Helpers.h($1)"
(где $1
- аргумент командной строки длясценарий).(Например, команда
elixir -e "require IEx.Helpers; IEx.Helpers.h(List)"
предоставляет документацию для модуля List
.)
Это супер приятно.Больше не нужно запускать iex
для просмотра документации.Форматирование по умолчанию для терминала работает красиво и красиво.Но если я перенаправлю вывод на пейджер (или в более общем случае, если вывод не является устройством TTY), форматирование изменится - обычный вывод ASCII без цветов ANSI.
Вопрос: как настроить или направить IEx.Helper.h
чтобы обеспечить идентичный вывод в случае без TTY?
(Похоже, есть функция IEx.configure
, которую можно использовать для изменения форматирования, но я ничего не видел о выводе без TTY. Другойможно было бы использовать какую-нибудь подходящую миниатюрную внешнюю программу для создания псевдо-TTY, перенаправив stdout
на нее перед запуском команды elixir
... но я бы предпочел решить проблему вывода со стороны Elixir.)