Есть ли способ сделать ссылку кликабельной в терминале OSX?


140

Я планирую разработать средство форматирования Mxmlc to Textmate, которое форматирует ошибки mxmlc в виде интерактивных ссылок, поэтому вы можете быстро открыть их в Textmate, поскольку Textmate имеет схему URL, например: txmt: // open /? Url = file: // ~ / .bash_profile & линия = 11 & колонка = 2.

Мне интересно, есть ли возможность отображать ссылки в вашем терминале OSX, которые также можно нажимать, например, путем изменения переменной PS1 или около того.

пс. Я не хочу использовать HTML, который работает в среде Textmate.

Ответы:


311

До OSX Lion:

cmd+ shift+ double-clickна URL в Terminal.app, и он откроется в программе по умолчанию.

OSX Lion:

cmd+ double-click(иначе вы войдете в полноэкранный режим).


2
Жаль, что нет никакого способа сделать это, скажем, чтобы открыть ссылки на файловую систему в Finder
Питер Эрлих

1
Примечание: это был ⌘ + двойной щелчок на 10.4, измененный на ⌘ + ⇧ + двойной щелчок в 10.5, затем снова в (я думаю) 10.6. Источник: Я сообщил об ошибке в 10.5, когда было выпущено, что двойной щелчок ⌘ + больше не работал, получил ответ "Это теперь cmd-shift".
Драрок

1
Вы можете просто сделать cmd+click
Стив

@oops Есть ли официальная документация Apple по этому поводу? Как ты это понял?
Тринадцатое

Есть ли способ заставить bash распечатать его подсвеченным? Я знаю, что некоторые IDE с оболочками делают это, поэтому я полагаю, что это должно быть возможно
karl

27

Вы можете щелкнуть правой кнопкой мыши URL-адрес в терминале, и первая опция в контекстно-зависимом меню - «Открыть URL-адрес». Не идеально, но, может быть, достаточно хорошо?


1
Нет, поскольку это должно служить моему циклу разработки, это не будет достаточно быстрым. Лучшим решением было бы отображать только текст, со ссылкой за ним, которая не отображается, однако, насколько мне известно о bash / sh, я думаю, что это невозможно, надеюсь, вы докажете, что я не прав ;-).
japetheape

1
Сначала я всегда выбирал URL (перетаскивая курсор от начала до конца URL), а затем щелкал правой кнопкой мыши. Сегодня, читая эти ответы, я узнал, что нет необходимости выбирать URL; просто щелкнув правой кнопкой мыши на это работает. Это было намного быстрее, но ответ @ oops еще быстрее.
Джимоти

1
Потрясающие. Я последний человек в мире, который изучил этот трюк с поличным?
AnthumChris

-5

Направьте ваш вывод lynx:

your_command | lynx -use_mouse -stdin

Я попробовал это: echo "<a href=\' test.com \'> Test </a>" | lynx -use_mouse - stdin Это открывает lynx, это не то, что я хочу, я хочу вывод непосредственно в моем терминале.
japetheape

Баш не сделает этого Я не знаю, почему PS1 должен иметь какое-либо отношение к этому. Я не верю, что у Bash вообще есть поддержка мыши. Если Terminal.app делает это только с помощью щелчка правой кнопкой мыши, то единственным вариантом для вас может быть, если вы можете написать AppleScript, который обеспечит эту функциональность более напрямую. Или волшебство.
Приостановлено до дальнейшего уведомления.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.