Наслідки налаштування tmux 'time-time 0'?


16

Я вважаю, що під час запуску (нео) vim всередині tmuxключ утримується. Це фіксується, поклавши

set -sg escape-time 0

в моєму .tmux.conf. Імовірно, це відключає можливість використання ESC як "мета" клавіші. Припускаючи, що я завжди працюю з клавіатурами, які мають клавішу Alt, щоб діяти як "мета", мені цікаво, які потенційно небажані наслідки може спричинити це налаштування.

Відповіді:


16

Встановлення escape-timeнуля заважає функціональним клавішам розпізнавати tmux. На його сторінці керівництва написано

escape-time time
Встановіть час у мілісекундах, протягом якого tmux чекає після введення вхідного сигналу, щоб визначити, чи він є частиною функції або послідовностей мета-ключів. За замовчуванням - 500 мілісекунд.

Термін "функціональна клавіша" застосовується до всього, що має цей формат (включаючи сторінку, що використовується при прокрутці по tmux та клавішами курсору). 500 мілісекунд може бути зайвим, якщо ви ніколи не працюєте віддалено. 20 мілісекунд працює для локальних з'єднань. Аналог ESCDELAYу ncurses за замовчуванням до 1000 мілісекунд; лише дуже невелика частина користувачів вважає за необхідне це змінити.


хм ... клавіші зі стрілками та перегляд сторінки, здається, добре спрацьовують у tmux, навіть якщо час втечі встановлено на 0
Michael Goerz

1
Документація посилається на ключові прив’язки, якими обробляє tmux (не програми, запущені всередині tmux).
Томас Дікі

@AntoineCotten Чи можете ви розширити це? Я думав, що Metaнічого не надсилає, поки він не з’єднається з нефункціональним ключем, і в цей момент він надішле "вихід" і ключ "в один і той же час" (менша затримка, ніж будь-який розумний період опитування, якщо припустити, що він опитує замість використання переривань або Щось.) Я стежив за кишечником і ніколи не встановлював час очікування втечі нижче 10, здебільшого тому, що я очікував, що це спричинить проблеми, якщо за замовчуванням був такий високий рівень.
Джон П

Поведінка Meta залежить від терміналу. tmuxне має контролю над цим, але знає про спеціальні клавіші xterm (у таблиці). Мета для звичайного ключа в xterm щось робить (шукайте eightBitInputв посібнику). Для інших терміналів це може щось робити, але, як правило, недокументовано.
Томас Дікі

@JohnP @ThomasDickey Я раніше коментував, що налаштування escape-timeдо 0 заважали командам Meta в емуляторі терміналу. Я хотів би внести виправлення, це було справедливо лише тому, що термінал macOS використовує Escяк мета- ключ. При використанні іншого ключа, наприклад Alt, немає проблем . Вибачте за оманливий (видалений) коментар.
Антуан Коттен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.