Какие функции предлагают «знаки» в терминале El Capitan?


117

После обновления до OS X El Capitan я заметил изменение в Терминале: в выполенных строках слева открыта скобка, а справа - закрывающая, как показано на этом снимке экрана:

Терминал

Подобные вопросы были заданы здесь:

Некоторые вопросы относятся к этим скобкам как к меткам , а в меню « Редактирование» терминала есть пара записей, относящихся к меткам , например:

  • Редактировать> Метки> Пометить как приглашение и отправить возврат
  • Изменить> Очистить до предыдущей отметки
  • Правка> Навигация> Перейти к предыдущей отметке

Редактировать меню

Есть ли краткое изложение того, для чего эти метки могут быть использованы? Я не видел ни одной ссылки на эту новую функцию в обзорах функций El Capitan.


9
Если бы мы только нашли лучший способ заплатить Сиракузе достаточно для тщательного изучения ОС в течение нескольких месяцев
подряд

Ответы:


155

Маркировка в Терминале

Новые отметки Терминала (доступные начиная с OS X 10.11 - El Capitan) аналогичны закладкам , которые также доступны в Терминале, позволяя вам отмечать положения окон и затем давать вам возможность вернуться на более позднюю точку.

Метки (или закладки) относятся не к истории ваших команд, а к буферу прокрутки, используемому в окне / вкладке терминала.

Маркировка линии

По умолчанию, каждый раз, когда вы нажимаете Enterв окне терминала, строка помечается , которая отображается с использованием открывающей скобки в начале строки и закрывающей в самом конце. Это поведение по умолчанию можно отключить с помощью пункта меню «Правка»> «Отметки»> «Автоматически пометить строки подсказок» . Когда это отключено, вы все равно можете вручную выполнить и пометить команду, используя Cmd+Enter(или с помощью меню Edit> Marks> Mark as Prompt и Send Return ).

Если у вас включена автоматическая маркировка и вы хотите выполнить команду, не помечая ее как приглашение , вы можете сделать это, используя Cmd+Shift+Enter(или с помощью пункта меню Edit> Marks> Send Return Without Marking ).

Отключение меток

Автоматическую маркировку линий можно отключить с помощью пункта меню «Правка»> «Метки»> « Автоматически пометить строки подсказок» .

Из командной строки, то же самое может быть достигнуто с помощью

defaults write com.apple.Terminal AutoMarkPromptLines -bool NO

Сокрытие знаков

Если вы хотите использовать функциональность меток , но не хотите видеть скобки в начале и конце строки, вы можете скрыть их, используя пункт меню View> Hide Marks . Это сохранит указанные ниже функции без изменений, но больше не будет отображать скобки.

Прыжки между Марками

Как только линия была отмечена, вы можете быстро перейти к предыдущей отметке, используя Cmd+Upили к следующей, используя Cmd+Down. Аналогичные параметры предоставляются для закладок и для выбора следующей / предыдущей отметки:

Редактировать меню

Маркировка линии вручную

В дополнение к автоматической маркировке вы также можете добавить метки вручную, выбрав строку в выводе терминала с помощью мыши, а затем выбрав пункт меню « Правка»> «Метки»> «Пометить как подсказку» (или Cmd+U).

Сценарии использования

Функциональность Marks полезна, если некоторые из ваших выполненных команд производят много выходных данных, и вы хотите быстро перейти к позиции, в которой вы ввели команду. Нажатие Cmd+Upприведет вас туда. Повторное нажатие приведет вас еще выше, а нажатие Cmd+Downснова вернет вас вниз. Местоположение цели удобно подсвечивается, когда вы прыгаете / прокручиваете.

Использование меток

Выбор контента

Те же функции отметок можно использовать для выбора выхода терминала. Нажатие Cmd+Shift+Upбудет выбирать содержимое до предыдущей отметки, а Cmd+Shift+Downвыбор вниз до следующей отметки. Это полезно при желании скопировать вывод журнала или другой контент из Терминала.

Эта функция также доступна в меню « Правка»> «Навигация» при нажатии Shiftклавиши:

Меню навигации

Резюме

Пользуясь этим уже пару дней, я нахожу это невероятно полезным. Прокрутка вверх по сотням строк вывода, чтобы найти начало вывода команды, внезапно стала намного проще.

Интересно, почему эта новая функция не упоминается более заметно - я не видел ее ни в одном из прохождений El Capitan. В справке Терминала в настоящее время также нет подробностей об этой функции.


1
Отличный ответ. Просто добавим немного, Закладки тоже могут быть названы, так что думайте о Закладках как о Главах в книге, а о Марках - как Абзацах. Вы можете создать новую закладку при запуске новой задачи в том же терминале, что поможет вам вспомнить, где именно вы начали и что сделали.
user14492 25.10.15

Это действительно очень полезно. Спасибо за это отличное объяснение! Мне было интересно, почему я наблюдал то же самое несколько месяцев назад, но игнорировал это, пока не понял, что это не имеет никакого отношения к моей модифицированной PS1. Большой!
бретоника

4

Выглядит как форма «быстрой / легкой закладки». Я предполагаю, что отключение «Автоматически отмечать строки подсказок» делает его функцию более очевидной. После этого Cmd-Enter явно сохраняет метку, а Cmd-Up / Down перемещается между ними.

Поскольку вы можете конвертировать метки в закладки и наоборот, я бы увидел их в виде облегченных закладок или закладок второго уровня.


1
Это не совсем точно. Когда я использую Cmd + Up , он не просматривает мою историю, а прокручивает все окно терминала до ранее отмеченной команды.
nwinkler

У меня не установлен El Capitan (пока), и мой ответ немного не по теме. Если это функция поиска по истории, как упоминает @fonso, похоже, что Apple реинжинирировала старую функцию <kbd> CTRL </ kbd> - <kbd> R </ kbd> в bash, где вы можете выполнить обратный интерактивный поиск по истории , И Apple, кажется, визуализировал это.
Garex

2
Нет, это не так. Как я уже сказал в своем комментарии, он не имеет никакого совпадения с поиском истории CTRL + R. Похоже, функция меток работает как своего рода автоматическая закладка, позволяющая быстро прокручивать буфер буфера окна терминала.
nwinkler

Извините, у вас все в порядке, это точка прокрутки, а не история! Я отредактирую ответ.
Фонсо
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.