[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: сочетания клавишь Alt+__ Shift+__ в чистой консоли wheezy



> в чистой консоли (wheezy) я хочу использовать org-mode в emacs. часто
> используются сочетания клавиш типа Альт+____ и Шифт+_____. В ЖТК-окне емакса
> все работает, но не в консоли. например, Альт+стрелка влево меняет
> виртуальную консоль (а в оргмоде должна менять уровень поддерева), шифт -
> тоже не распознается :(.
> 
> кто-нибудь разбирался с подобным?
> 
> я не смог понять как и где настраиваются управляющие клавиши консоли, но
> думаю, что именно изменением этих клавишь можно решить вопрос. буду очень
> признателен за помощь!

Да, не распознаются.  И не будут.  В документации на org-mode есть раздел про
замену тех последовательностей при работе в терминале, где они не работают,
потому что не могут.

Нет, в принципе, наверное, можно копнуть - линуксовая консоль умеет довольно
много странного.  То есть нет, в принципе нельзя _распознать Alt-стрелку в
приложении_ (нету такого понятия в терминале как класса), но скорее всего,
можно упросить линуксовую консоль по нажатию на стрелку при нажатом альте
генерировать что-нибудь особо странное - например, ту самую последовательность
для терминала.  Но во-первых, в ограниченном размере (скорее всего, либо
Alt-стрелку, либо Shift-стрелку, но не то и другое), а во-вторых, я так давно
это делал в последний раз...

Скорее всего, нужно покопаться в недрах пакета console-cyrillic и тех пакетов,
что он использует.

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

-- 
Historically, languages designed for other people to use have been
bad: Cobol, PL/I, Pascal, Ada, C++. The good languages have been those
that were designed for their own creators: C, Perl, Smalltalk, Lisp.
 -- Paul Graham


Reply to: