Как перейти на локацию с помощью мыши на iTerm / терминале?
43
Я работаю на терминале большую часть времени.
Существует ли приложение / плагин поверх iTerm или любое другое приложение, подобное терминалу, с помощью которого я могу управлять расположением курсора моего терминала с помощью мыши?
Я хотел бы перейти к курсору. Вариант использования: если у меня длинная строка, разделенная пробелом, я бы хотел перейти в определенное место. использование клавиатуры требует много нажатий клавиш.
Сайрам
Если вы уже используете терминал, вы, вероятно, оцените клавиатуру. Изучите сочетания клавиш, чтобы перейти к передней / задней части строки, и перемещаться по слову, и это сэкономит вам много нажатий клавиш и, вероятно, будет быстрее, чем мышь.
По крайней мере, в Terminal.app вы можете удерживать нажатой optionклавишу, чтобы перейти в текущую строку (это фактически означает просто строку, поэтому, если ваше текущее приглашение настолько длинное, что оно переносится на вторую строку ввода, вам нужно будет optionнажать -click в начало «второй» строки, а затем перейдите с помощью клавиш со стрелками к «первой» строке, где вы можете optionснова щелкнуть).
Вариант клик, интересный. Никогда не знал этого раньше. Не забудьте нажать на строку, черт возьми. Я даже не понимаю, что происходит, когда я нажимаю выше / ниже текущей строки. Я предполагаю, что это несколько раз давит вверх, но я почти уверен, что история команд не совсем совпадает.
Джейсон Салаз
Ну, это только чтение количества столбцов, где бы вы ни щелкнули, и переход к этой позиции в текущей (!) Строке; так что если вы находитесь в конце завернутого приглашения (скажем, строка 2: столбец 45), и вы щелкаете опцию на чем-то в первой строке (скажем, строка 1: столбец 4), вы окажетесь в столбце 4 (отлично), но остаться в очереди 2 (неправильно!).
Асмус
2
Опция Option-Click работает так, что она выдает эквивалент ввода клавиш со стрелками. Это хорошо работает в редакторах, таких как emacs, но если вы находитесь в командной строке bash, она интерпретирует вверх / вниз как «предыдущая / следующая команда в истории». Таким образом, если вы щелкнете Option-Click в любом месте, кроме той же строки, которая содержит приглашение, bash просматривает историю команд, а не перемещает курсор.
Крис Пейдж
Работает в iTerm2.
Ахмет Алп Балкан
9
Прошло много времени с тех пор, как возник этот вопрос, и я уже упомянул нижеприведенную информацию об этой платформе в Option-click в iTerm и в системе отслеживания проблем iTerm2, но, возможно, это поможет одному или другому:
Привет, просто хотел сообщить, что я реализовал эту функцию в iTerm2. Его пока нет в официальном репозитории iTerm2, но если вы хотите попробовать его, вы можете найти его на github .
Так как это проверено только мной, считаю его нестабильным. Я проверил его с помощью bash, vi и emacs и постарался сделать так, чтобы он напоминал поведение Terminal.app.
Сломались ли сообщения мыши в последнем выпуске? Это больше не работает для меня, я не вижу курсор «о» и не могу понять, как вернуть его обратно.
Майкл
Я забираю это обратно. Отчеты мыши не работают только в некоторых случаях - например, если вы используете ssh на другой машине, то подключаетесь к сеансу tmux, на котором уже запущен emacs. Это раньше работало. Теперь вам иногда приходится выходить из emacs и перезапускать его до того, как сработает создание отчетов для мыши ...
Майкл
Это только кажется, чтобы перейти в позицию в любом месте текущей строки. Можно ли щелкнуть опцию в любом месте активной команды?
Скелет Лук
6
Клавиатура часто ваш лучший друг. В конфигурации по умолчанию ваша оболочка контролирует большую часть того, как вы перемещаетесь по командной строке.
Option+ bвозвращает слово назад (курсор окажется на первой букве предыдущего слова).
Option+ fидет вперед по слову (курсор будет находиться на не буквенном символе ПОСЛЕ следующего слова).
Shift+ Fn+ Left Arrow (←)поместит курсор в самом начале строки. ( Ctrl+ aтакже сделает это.)
Shift+ Fn+ Right Arrow (→)поместит курсор в самый конец строки. ( Ctrl+ eтакже сделает это.)
И я начинаю нажимать Option+ b, курсор останавливается на области a in, o на выходе, d на развертывании и т. Д.
Если я иду в начало строки, и начать удар Option+ f, курсор остановится в пространстве после Rsync, в пространстве после AVZ, в пространстве после прогресса, в / после сайтов и т.д.
Мне нравится ваше осознанное решение проблемы XY. Не отвечая на первоначальный вопрос, это очень достойная альтернатива. Однако специально ли вы иногда произносите CMD + b и option + b?
Корнелиус Ремер
1
Нет, это была ошибка с моей стороны. Команда никогда не должна была использоваться здесь, потому что она управляет поведением окна терминала, а не поведением оболочки / движения.
Джейсон Салаз
5
В iTerm2 вы удерживаете нажатой клавишу alt (влево или вправо) и щелкаете, чтобы переместить курсор в любую позицию на любой строке.
Если вас особенно интересует движение в Vim, то вы можете добавить set mouse=aв свой ~/.vimrcфайл.
Это работает в iTerm для движения. Он также позволяет помечать разделы, как если бы вы входили в визуальный режим, так что вы можете дергать или удалять его или закомментировать код в зависимости от ваших плагинов.
Очень удобно также быстро перемещаться по большому документу с помощью ползунка двумя пальцами или колесика мыши.
Единственным недостатком является то, что он затрудняет выделение текста, который вы хотите скопировать для использования в других приложениях - хотя все, что вам нужно сделать, это нажать optionпри выборе.
Также: обратите внимание, что если вы добавляете что-то вроде vimpager (также в macports), вы также можете прокручивать справочные страницы после добавления
export PAGER=/opt/local/bin/vimpager #or wherever vimpager is installed
alias less=$PAGER
Ответы:
По крайней мере, в Terminal.app вы можете удерживать нажатой optionклавишу, чтобы перейти в текущую строку (это фактически означает просто строку, поэтому, если ваше текущее приглашение настолько длинное, что оно переносится на вторую строку ввода, вам нужно будет optionнажать -click в начало «второй» строки, а затем перейдите с помощью клавиш со стрелками к «первой» строке, где вы можете optionснова щелкнуть).
источник
Прошло много времени с тех пор, как возник этот вопрос, и я уже упомянул нижеприведенную информацию об этой платформе в Option-click в iTerm и в системе отслеживания проблем iTerm2, но, возможно, это поможет одному или другому:
Привет, просто хотел сообщить, что я реализовал эту функцию в iTerm2. Его пока нет в официальном репозитории iTerm2, но если вы хотите попробовать его, вы можете найти его на github .
Так как это проверено только мной, считаю его нестабильным. Я проверил его с помощью bash, vi и emacs и постарался сделать так, чтобы он напоминал поведение Terminal.app.
На github также есть предварительно скомпилированный бинарный файл iTerm_v1.0.0.20120312.git-b919985b.zip (для i386 / x86_64 / ppc).
Конечно, любые отзывы приветствуются.
источник
Клавиатура часто ваш лучший друг. В конфигурации по умолчанию ваша оболочка контролирует большую часть того, как вы перемещаетесь по командной строке.
Option+ bвозвращает слово назад (курсор окажется на первой букве предыдущего слова).
Option+ fидет вперед по слову (курсор будет находиться на не буквенном символе ПОСЛЕ следующего слова).
Shift+ Fn+ Left Arrow (←)поместит курсор в самом начале строки. ( Ctrl+ aтакже сделает это.)
Shift+ Fn+ Right Arrow (→)поместит курсор в самый конец строки. ( Ctrl+ eтакже сделает это.)
Так что, если у меня длинная команда, например:
$ rsync -avz --progress ~/Sites/Development/My/Project web@server:/deployment/output/area
И я начинаю нажимать Option+ b, курсор останавливается на области a in, o на выходе, d на развертывании и т. Д.
Если я иду в начало строки, и начать удар Option+ f, курсор остановится в пространстве после Rsync, в пространстве после AVZ, в пространстве после прогресса, в / после сайтов и т.д.
источник
В iTerm2 вы удерживаете нажатой клавишу alt (влево или вправо) и щелкаете, чтобы переместить курсор в любую позицию на любой строке.
источник
Если вас особенно интересует движение в Vim, то вы можете добавить
set mouse=a
в свой~/.vimrc
файл.Это работает в iTerm для движения. Он также позволяет помечать разделы, как если бы вы входили в визуальный режим, так что вы можете дергать или удалять его или закомментировать код в зависимости от ваших плагинов.
Очень удобно также быстро перемещаться по большому документу с помощью ползунка двумя пальцами или колесика мыши.
Единственным недостатком является то, что он затрудняет выделение текста, который вы хотите скопировать для использования в других приложениях - хотя все, что вам нужно сделать, это нажать optionпри выборе.
Также: обратите внимание, что если вы добавляете что-то вроде vimpager (также в macports), вы также можете прокручивать справочные страницы после добавления
на ваш
.profile
или.bashrc
.источник