Варіант + клік в iTerm


16

У Terminal, Option + click дозволяє мені розміщувати курсор у будь-якій точці поточного рядка - чудово підходить для редагування дійсно довгих команд.

Як я можу це зробити в iTerm2?

Оновлення: Згідно з цією сторінкою , функція існувала з 0.7.0 (2003). Я також помітив, що якщо я утримую Command + Option, курсор перетворюється на звичний хрест, як у терміналі ... але натискання все ще не змінює мій курсор.


Я переглянув вихідний код, і так, ця функція була приблизно в 0.7.0 iTerm (не iTerm2). Але це коментується (у файлі PTYSession.m) у магістралі (і, мабуть, і більш ранні версії). І функція iTerm2 все ще є, але порожня, і тому нічого не робить.
боретом

Відповіді:


6

Мені було цікаво "Наскільки важко це можна (с)" здійснити, і сьогодні я дав йому піти.

Схоже, що Terminal.app імітує послідовності ESC 'переміщення курсору вліво / вправо'. Якщо ви спробуєте помістити курсор у підказку оболонки, ви почуєте відомий "звуковий сигнал". І ви почуєте це стільки разів, скільки буде недійсних рухів.

Рішення в iTerm2 працює так само, викликаючи відповідні послідовності ESC. Хоча це звучить лише один раз, якщо ви спробуєте розмістити курсор у недійсній області;)

Terminal.app, здається, не в змозі обробляти багато рядкові підказки, лише переміщення по останньому рядку, здається, працює. Багаторядкові підказки в цій реалізації повинні оброблятися правильно.

Результати можна знайти на Github . Це роздвоєння оригіналу з відкладеним запитом на тягу. Відділення, над яким я працюю, називається "опція-клік-жорсткий код".

І звичайно, це дуже неперевірено. Це означає, що я протестував лише мене на MacBook Pro наприкінці 2007 року під керуванням Mac OS X 10.7.3.

Якщо ви хочете спробувати його, скомпілювавши його самостійно або завантажте попередньо складений бінарний файл для i386 / x86_64 / ppc iTerm_v1.0.0.git-085ec22c.zip ).


вау, чудові речі! заздалегідь складений двійковий файл, здається, добре працює на моєму кінці, але буде стежити за цим. завдяки мільйонів!
Джефф

404 не знайдено ...
aeroxy

1
Привіт @aeroxy, ця зміна давно була об'єднана у iTerm ( github.com/gnachman/iTerm2/pull/77 ). Деякий час тому я вийняв свою вилку, оскільки це була єдина.
боретом

@boretom, то, здається, мій iterm2 3.1.5.beta.1 все ще має подібну проблему. Здається, що коли я роблю "Опції", клацніть просто переходить до останньої команди (стрілка вгору). apple.stackexchange.com/questions/305554/…
aeroxy

@aeroxy, якщо він відмінно працює з 3.1.5.beta2 на моєму macOS 10.12.6 з "Opt-Click переміщує курсор", встановлений у розділі Налаштування> Вказівник. Вся справа в позиціонуванні курсору на поточному рядку. Це ви намагаєтесь досягти?
боретом

2

iTerm 2 не є новою версією iTerm - хоча на основі одного і того ж вихідного коду існують основні зміни під кришкою. Однією з речей, яку було видалено або порушено (важко говорити про наміри розробника), було позиціонування курсору.

Ти не єдиний, хто помітив цей упущення; він подається як помилка з квітня 2011 року і продовжує привертати увагу. Найкращий варіант для отримання цієї функції (крім відключення її на GitHub або переходу на іншу програму) - надіслати коментар на веб-сайті Google Code вище. Будемо сподіватися, що при достатньому інтересі ця функція поверне її до продукту.




1

Остання версія iterm2 (я використовую Build 2.9.20150812-nightly) має цю функцію, але для того, щоб вона працювала з декількома рядками, ви повинні включити інтеграцію оболонок, як описано на https://gitlab.com/gnachman/ iterm2 / питання / 3638 .

Для встановлення останнього iTerm я використовую варити та виконувати наступні дії:

brew tap caskroom/versions && brew cask install iterm2-nightly


1

Моя відповідь перевірена в 2019 році з iTerm2.

Перейдіть у "Налаштування"> "Профілі", виберіть потрібний профіль (може бути типовим, вам потрібно буде повторити це для кожного), виберіть вкладку "Клавіші" та змініть поведінку клавіш "Лівий та правий" (альт) до Esc +

введіть тут опис зображення

Це насправді в їх поширених питаннях:

Питання: Як зробити так, щоб опція / клавіша alt діяла, як Meta, або надсилати аварійні коди? A: Перейдіть у меню Налаштування> На вкладці Профілі. Виберіть профіль ліворуч та відкрийте вкладку Клавіатура. Внизу розташований набір кнопок, який дозволяє вибрати поведінку клавіші Option. Для більшості користувачів Esc + стане найкращим вибором.

БОНУС

Якщо ви запитуєте про Option (Alt) + клік, я припускаю, що ви також хочете, щоб ваш Option (Alt) + Backspace працював.

У цьому ж інтерфейсі (панель клавіш) натисніть кнопку "Завантажити попередньо встановлену програму" та виберіть "Природне редагування тексту". Повторіть це для кожного з ваших пресетів.

Тепер у вас буде працювати Option + click та Option + backspace.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.