73

Есть ли встроенная опция (т.е. без установки дополнительных программ / пакетов / плагинов), чтобы включить поддержку мыши в приложении «Терминал»?

На самом деле, я использую много vim с опцией set mouse=a (активация функций мыши).

Но похоже, что Terminal не поддерживает все функции xterm.

Похоже (после некоторого поиска в Google), что у Терминала когда-то была поддержка мыши, но мне интересно, куда он делся.

NB: я действительно хочу поддержку мыши в терминале, не только для vim, поэтому, пожалуйста, не предлагайте MacVim:]

7 ответов7

102

Я нашел ответ!

Друг рассказал мне трюк, это так легко, что мне стыдно.

Просто нажмите клавишу Alt и нажмите! (с поддержкой мыши, ранее активированной в vim)


ОБНОВЛЕНИЕ для OSX 10.11 El Capita

Пожалуйста, смотрите ответ Криса Пейджа .

21

Начиная с OS X 10.11 El Capitan, терминал поддерживает отчеты мыши.

Обратите внимание, что программы, поддерживающие отчетность мыши, должны включать ее с помощью escape-последовательностей, и что большинство программ, поддерживающих отчетность мыши, должны быть настроены для ее включения. Например, в Vim вы должны выполнить set mouse=a (обычно в вашем файле ~/.vimrc ).

Терминал поддерживает сообщения о трех кнопках мыши и колесе прокрутки. Чтобы смоделировать нажатие кнопки три с помощью устройства с двумя кнопками, вы можете использовать Command-Right-Click. (Команда «Щелчок правой кнопкой мыши» также выполняет « Правка»> «Вставить выделение», когда отключено создание отчетов с помощью мыши, поэтому нажатие средней кнопкой мыши вставит последний выделенный текст независимо от того, используете ли вы отчеты с помощью мыши или нет.)

Когда включена функция создания отчетов с помощью мыши, клавиша-модификатор Option is сопоставляется с мета-меткой для нажатия и прокрутки, и на нее не влияет параметр «Использовать параметр как мета-ключ», который применяется только к вводу с клавиатуры.

Чтобы временно обойти отчеты мыши и взаимодействовать с видом терминала, нажмите клавишу-модификатор Fn , нажимая или прокручивая. Существует также пункт меню « Просмотр»> «Разрешить отчеты мыши» (⌘R), который можно использовать для обхода отчетов мыши в течение более длительных периодов времени или если клавиша-модификатор недоступна.

Обратите внимание на то, что при включении Отчеты мыши заменяют существующее поведение Терминала - Option-Click (который отправляет ввод с помощью клавиши со стрелкой для перемещения курсора) и поведение «Прокрутка альтернативного экрана». Кроме того, новый пункт меню Allow Mouse Reporting и модификатор Fn также применяются к «Пролистать альтернативный экран», чтобы позволить вам временно обойти это поведение.

12

В качестве альтернативы использованию Alt-click для установки курсора в vi с OS X Terminal, я хотел бы предложить использовать iTerm 2:

Мне нужна была поддержка мыши в Terminal vi (Mac OS X 10.7 Lion), но прокрутки с помощью колеса прокрутки нет. Я закончил тем, что переключился с Терминала на iTerm 2, который поддерживает прокрутку колеса прокрутки vi, и вам не нужно удерживать Alt, чтобы установить курсор.

Если вы не используете некоторые из более продвинутых функций в приложении Lion's Terminal, вы можете быть очень довольны iTerm 2.

Редактировать: чтобы включить поддержку мыши в Vim при использовании iTerm 2, добавьте следующую строку в ваш .vimrc:

:set mouse=a
1

Похоже, что в OS X 10.4 (я не уверен насчет 10.5) вы можете включить поддержку мыши. Откройте Терминал, затем нажмите "Настройки окна". В раскрывающемся списке выберите "Эмуляция", а затем установите флажок «Щелкните, чтобы расположить курсор».

1

Обратите внимание, что Mac OS X имеет xterm в дополнение к Terminal.app. Я не могу сказать по вашему вопросу, если вы знали об этом. Но если у вас установлен пакет X11, вы можете запустить окно xterm, и поддержка мыши работает просто отлично.

0

MouseTerm, кажется, идеальный плагин SIMBL для тех, кто хочет достойную поддержку мыши в своих терминалах Mac OS X. По состоянию на май 2013 года в последней версии (1.0b1, выпущенной в июле 2011 года) говорится, что она добавляет следующие функции к стандартному приложению OS X Terminal:

  • Отчет по кнопке мыши.
  • Сообщение мыши о колесе прокрутки.
  • Имитация прокрутки колесика мыши для таких программ, как поменьше (т.е. для любой полноэкранной программы, в которой используется режим курсора клавиши приложения).
  • Интеграция профиля терминала (с диалогом настроек).

Я использую tmux и vim с ним, и он позволяет мне не только щелкать (без ключа опции!) но также прокручивайте и перетаскивайте их внутри с небольшой конфигурацией: например :set mouse=a для vim и tmux set-window-option mode-mouse on . Легко переключать отчеты мыши (с помощью одной комбинации клавиш ⇧⌘M или из меню Shell), так что нечего терять при установке.

(Предупреждение: щелчок / перетаскивание в режиме копирования tmux работает не так, как я ожидал.)

0

Вы можете настроить эмуляцию xterm в дополнительных настройках, по крайней мере, в Терминале 2.4 (OS X 10.9.3). Это позволило мне правильно поддерживать мышь.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .