LINUX.ORG.RU

[Midnight Commander] [KDE4] Кто-нибудь смог настроить работу выделения по Shift+Стрелки?


0

1

Здравствуйте!


Несколько лет я потратил на то, чтобы разобраться, как в Konsole KDE3 в редакторе MC заставить работать выделение по Shift+Стрелки. Статья о том как это делать:

http://forum.ubuntu.ru/index.php?topic=67387.0

С переходом на Debian Squeeze пришлось распрощаться с KDE3 и начать пользовать KDE4. Новая Konsole устроено по-другому, и конечно, выделение по Shift+Стрелки в редакторе MC не работает.

Я попытался настроить Konsole через Настройка -> Настроить профиль -> Клавиатура -> Именить. И, так же как и в KDE3, я попробовал там изменить строки:

Up+Shift-AppScreen \EO2A
Down+Shift-AppScreen \EO2B
Вправо-влево пока не трогал

Сохранил конфигурацию, перезапускаю Konsole - и никакого толку. Shift+Стрелки не работат для выделения в редакторе.


Вопрос. У кого-нибудь получилось настроить Konsole так, чтобы в редакторе MC заработало выделение по Shift+Стрелки?


как я понимаю, в каждом дистрибутиве терминал имеет свои собственные настройки для клавы
а обьединить все это в одном мц - задача до сих пор непосильная

kto_tama ★★★★★
()

Не знаю, что у вас за mc такой особенный, но у меня ни в terminal, ни в «голой» консоли shift+стрелки ничего не делают.

Вы уверены, что в mc такое вообще есть?

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

тут периодически в новостях пояляются новые версии мц
те, кто его поддерживают, говорят, что типа должно работать
я тоже нигде , ни в одном дистрибутиве этого не видел
у меня есть подозрение, что терминал, в котором обычно запускается мц, перехватывает обработчик шифта, да так, что до него уже не достучаться

kto_tama ★★★★★
()
Ответ на: комментарий от kto_tama

Будь не Ъ, по ссылке-то сходи, где этот клоун возносит фар под вайном, а mc втаптывает в грязь. Вот я и спрашиваю: что, уже фар под вайном не работает? Или игрушка надоела, захотелось новой?

akk ★★★★★
()
Ответ на: комментарий от kto_tama

терминал, в котором обычно запускается мц, перехватывает обработчик шифта, да так, что до него уже не достучаться

Если этот «обработчик» «перехватывает» даже голая консоль, значит, все-таки, в mc такой «фичи» нет. Или же надо ставить «наисвежайшую наилучшайшую» версию.

Eddy_Em ☆☆☆☆☆
()

Господи! Я плакал! Все работает, просто абсолютно все!! Без всяких плясок с бубном! И какнадо!!!111 Всего не перечислишь, вот только то, что пишу навскидку:

- Работает выделение F3.
Привет Far с его тупыми Shift+Стрелками, и бесконечное построчное перелистывание



P.S. Пользую joe как системный, vim/kate для программирования :)
P.P.S. MC-edit не люблю за его гуявость :) и отсутствие командного режима :)

Jetty ★★★★★
()
Ответ на: комментарий от Jetty

Я бы и продолжал пользоваться FAR-редактором, если бы в KDE4 не разломали работу буфера обмена с WineConsole. Нахрен бы мне этот встроенный в MC редактор сдался. Но с переходом на Squeeze его четверокедами жить стало намного сложнее.


Кароче, тут ни одного специалиста нету, одни клоуны. Никто даже не знает, что в MC есть классическое выделение по Shift+Стрелки.

И по ссылкам никто не ходит, где русским языком написано, как настроить Konsole в KDE3 чтоб Shift+Стрелки заработали.

xintrea
() автор топика
Ответ на: комментарий от Eddy_Em

Если этот «обработчик» «перехватывает» даже голая консоль, значит, все-таки, в mc такой «фичи» нет. Или же надо ставить «наисвежайшую наилучшайшую» версию.

Этой «фиче» уже десять лет, а вы все про нее не знаете. В чистой консоли (в Text Mode) работает на ура.


Кстати, у меня получилось настроить выделение по Shift+Влево и Shift+Вправо. Для этого в меню Konsole «Настройка -> Настроить профиль -> Клавиатура -> Именить» добавил строки:

Left+Shift \EO2D
Right+Shift \EO2C

Но это только половина дела. Вторая половина дела, а именно выделение Shift и стрелками вверх-вниз не работает, хотя по образу и подобию прописал:

Up+Shift \EO2A
Down+Shift \EO2B

(А комбинации Up+Shift-AppScreen и Down+Shift-AppScreen вообще удалил).


Вот спрашивается, какого хрена Shift+Влево/Вправо работают, а Shift+Вверх/Вниз - нет?

Я излазил весь KDE4, чтоб проверить не забиндена ли коминация Shift+Вверх/Вниз кедами. Нигде такой комбинации не используется, во всяком случае, нигде в настройках клавиатуры и событий её нет. Значит, эта комбинация должна быть свободна, и она должна пропихиваться в терминал. Почему этого не происходит, понять не могу.

xintrea
() автор топика
Ответ на: комментарий от xintrea

У меня mc 4.7.0-pre2, в консоли Shift+Влево и Shift+Вправо ничего не делают, то же самое и в terminal. Так же не работают Shift+Вверх/Вниз.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от xintrea

Вывод же очевиден. Если вы не можете использовать доступный функционал ОС, то Вам необходимо сменить ОС :) Так же при смене ОС Вам не надо будет управлять ОС либо ее функционалом. Она это сделает за Вас.

P.S. При полнейшем отсутсвии знаний о предмете, решение проблемы заняло 1-2 минуты:

http://s55.radikal.ru/i150/1101/11/0c8a5389cb59.png

Jetty ★★★★★
()
Ответ на: комментарий от Jetty

> P.S. При полнейшем отсутсвии знаний о предмете, решение проблемы заняло 1-2 минуты:

http://s55.radikal.ru/i150/1101/11/0c8a5389cb59.png

И что? Я написал выше, что «комбинации Up+Shift-AppScreen и Down+Shift-AppScreen вообще удалил».


Вы хотите сказать, что у вас в MC работает выделение по Shift+Вверх/Вниз? Если работает, то выложите пожалуйста на paste.org.ru содержимое файла ~/.kde/share/apps/konsole/default.keytab.


Если первая строка этого файла

keyboard "Типовий (XFree 4)"

...значит именно там у вас сохраняется то, что вы наконфигурировали. Мы заменим этот файлик у себя, и сразу увидим, решилили ли вы проблему или нет.

xintrea
() автор топика
Ответ на: комментарий от Eddy_Em

>Вы уверены, что в mc такое вообще есть?

Ткнулся в первый открытый mc (CentOS 5.5 открытый по ssh в gnome-terminal под Ubuntu) - Shift+стрелки работают.

Глянул на mc/Gentoo и дальше также, -> ssh -> gnome-termianl/Ubuntu - тоже работают.

Ничего не настраивал, всё по дефолту.

KRoN73 ★★★★★
()
Ответ на: комментарий от akk

Я бы не помогал этому гражданину — он с упорством маньяка тянет дурные привычки из винды в линукс. Место того, чтобы включить режим выделения в начале нужного блока и просто поиском найти его конец, он предпочитает класть кирпичи на Shift-Down и идти пить чай, прежде чем его любимый Far долистает до нужной точки.

unanimous ★★★★★
()
Ответ на: комментарий от xintrea

>где русским языком написано, как настроить Konsole в KDE3 чтоб Shift+Стрелки заработали.

Ага, как обычно. Когда в KDE надо настраивать, в Gnome просто работает :)

KRoN73 ★★★★★
()
Ответ на: комментарий от KRoN73

> Ткнулся в первый открытый mc (CentOS 5.5 открытый по ssh в gnome-terminal под Ubuntu) - Shift+стрелки работают.

Глянул на mc/Gentoo и дальше также, -> ssh -> gnome-termianl/Ubuntu - тоже работают.

Ничего не настраивал, всё по дефолту.



Видимо значит либо KDE4 тупит, либо Konsole.

По неизвестными причинам, в терминал не пропихиваются символы Shift+Вверх/Вниз. Еще бы понять почему. Или хотя бы какой-нибудь программой посмотреть, лезут ли в консоль эти символы или нет.

xintrea
() автор топика
Ответ на: комментарий от Eddy_Em

>А какая версия mc?

Под CentOS - 4.7.5
Под Gentoo - 4.7.4-r1

KRoN73 ★★★★★
()
Ответ на: комментарий от xintrea

Ну, не знаю почему, но у меня не работает.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от xintrea

Ага, значит в Konsole клавиши Shift+Up/Down используются для прокручивания истории терминала. И нигде при этом не настраиваются.

Вывод - эти сочетания за каким-то хреном захардкорили где-то в глубинах Konsole. Форменный идиотизм.

xintrea
() автор топика
Ответ на: комментарий от xintrea

Возможность выделения SHIFT+стрелки добавил il_smind в одном из 4.7.0-pre* (не помню точно).

У меня тоже konsole/KDE4, я не осилил как настроить выделение с шифтом; тоже подозреваю, что захардкодено в эмуляторе терминала. Лезть в исходники konsole откровенно лень, тем более, что для меня более привычно выделение по F3. А выделение стрелками пытался настроить из интереса. Не получилось, плюнул - и по старинке... :)

В остальных эмуляторах и в голой консоли выделение стрелками работает.

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

>> Для этого в меню Konsole «Настройка -> Настроить профиль -> Клавиатура -> Именить» добавил строки:

ну вот нафига это надо ?
выделение должно работать по умолчанию, без шаловливых ручек
если оно где-то работает, где-то нет - значит, код мц кривой

kto_tama ★★★★★
()

я обычно insert'ом выделяю, shift+стрелки не нужны

ss_ash ★★★
()
Ответ на: комментарий от kto_tama

>ну вот нафига это надо ?

выделение должно работать по умолчанию, без шаловливых ручек

если оно где-то работает, где-то нет - значит, код мц кривой



Гкм.. Вы вообще в курсе проблемы с konsole?
mc вообще не получает даже намёка на нажатие клавиш. Говоря по-другому, konsole перехватывает shift+стрелки на себя, даже не пытаясь сообщить об нажатии всем запущенным внутри приложениям (будь то mc, cat, bash и т.д.).

Теперь вопрос: как именно кривой код мц должен выпрямиться, чтобы читать никогда не передаваемые ему сочетания клавиш? libastral не предлагать - я не знаю где домашняя страничка этого проекта с рабочей версией.

Slavaz ★★★★★
()
Ответ на: комментарий от Slavaz

Кстати, где-то читал, что в MC нынче можно перенастраивать все сочетания клавиш. Но нигде в интерфейсе такого режима не нашел. И в папке ~/.mc не нашел ни одного файла настроек сочетания клавиш.

Как вы это делаете? Мне нужно поменять Копи-Пасте комбинации с Ctrl+Ins/Ctrl+Del на более привычные Ctrl+C/Ctrl+V. Это возможно, или у вас как и в Konsole захардкорены комбинации?

xintrea
() автор топика
Ответ на: комментарий от Slavaz

Тьфу ты, а я пытаюсь файлы выделять :) В редакторе - да, работает shift+влево/вправо. Жаль, shift+вверх/вниз не работает.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Между 4.7.0-pre2 и 4.7.5 дистанция огромного размера. По времени — это больше года. За этот период многое изменилось.

akk ★★★★★
()

Вообще непонятно, зачем нужен редактор mc. Лучше vim по дефолту поставить - он же удобнее.

frpaul ★★
()
Ответ на: комментарий от Slavaz

> в /etc/mc/mc.keymap

Хм, у меня нету такого файла. Что нужно сделать чтоб он появился, какое содержимое у него должно быть?

MC 4.7.5.

xintrea
() автор топика
Ответ на: комментарий от Slavaz

> странно, что нет файла... а с какими ключами собирался mc? Может, sysconfdir был переопределён?

./configure --prefix=/opt/mc_4_7_5 --enable-vfs-smb

xintrea
() автор топика

Чего тебе не хватает в nano? Прстой, понятный, удобный редактор. Не перегружен фичами, но для редактирования конфигов то, то надо.

Dmitry_Sokolowsky ★★★★★
()
Ответ на: комментарий от iNode

> Очевидно что путь будет относительно твоего prefix-а (/opt/mc_4_7_5/etc/mc/mc.keymap).

А почему он автоматом в ~/.mc не скопировался?

xintrea
() автор топика
Ответ на: комментарий от Slavaz

Вопрос возник по формату файла mc.keymap.

Что имеется в виду, если в одной строке через символ ";" указывается несколько комбинаций? Пример:

EditBackSpace = backspace; ctrl-h

";" - это символ начала комментария или ";" используется для определения альтернативных комбинаций?

xintrea
() автор топика
Ответ на: комментарий от frpaul

> Смех означает «я попробовал и не осилил»?

Это означает, что я вижу уродство интерфейса VIM и понимаю, что таким интерфейсом пользоваться противопоказано. В редакторе FAR есть интерфейс. В VIM его нет как понятия.

Многие люди, которые пользуют VI/VIM/Emacs считают, что они круты, что осилили это издевательство над здравым смыслом. Я, как пользователь консольных редакторов еще на Радио-86РК, отредактировавший в них не один мегабайт кода, ответственно заявляю: на ресурсах, доступных VI/Emacs 30 лет назад, нельзя было сделать более ублюдочных программ, чем VI с Emacs-ом.

VI/Emacs - это апофеоз маразма проектировщиков интерфейса. Точнее, проектированием интерфейса в них никто не занимался вообще и никогда.

xintrea
() автор топика
Ответ на: комментарий от xintrea

>>В редакторе FAR есть интерфейс. В VIM его нет как понятия.

А, понятно, - религиозные взгляды. Ну, с этим не поспоришь.

frpaul ★★
()
Ответ на: комментарий от frpaul

>> В редакторе FAR есть интерфейс. В VIM его нет как понятия.

А, понятно, - религиозные взгляды. Ну, с этим не поспоришь.


Нет дорогой, тут наука а не религия. Я понимаю, что вы книжки про интерфейсы человек-машина ни разу в руках не держали. А исследования активно шли и идут с 60-х годов, и если бы вы показали интерфейс VI кому-нибудь, кто занимается данной проблематикой, у человека был бы культурный шок.

Кстати, вернёмся к нашим баранам.

Я расковырял код Konsole, и нашел, что там действительно захардкорена обработка клавиш Shift+Up, Shift+Down, Shift+PgUp, Shift+PgDn. Причем захардкорено прямо в классе рендера TerminalDisplay.

Я себе уже исправил, у меня выделение стало работать. Чуть пожже напишу что нужно сделать для исправления.

xintrea
() автор топика
Ответ на: комментарий от xintrea

Зачётно. А что теперь стало на скроллинг истории? Или просто получилось, что скроллинг отрубился?
Если отрубился, то надо будет думать, чем заменить хоткеи (может, даже сделать более прямо с чтением профиля), ибо не примут девелоперы такой патч. Скажут, что регрессия :(

Slavaz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.