Подтвердить что ты не робот

Программист Установка VIM для финской/шведской или другой раскладок клавиатуры

Недавно я изучил некоторые хакеры VIM, и я узнал много полезных команд и получил довольно эффективную редакцию текста с VIM. Я использую финский qwerty раскладку клавиатуры (см. Изображение ниже), что довольно ужасно для программирования. Все ваши обычные символы кодирования ()[]{}/\ происходят, нажимая клавиши shift или alt gr и number, но я уже довольно привык к этому. Я не хочу менять раскладку клавиатуры, так как у меня довольно много писем и чатов IRC на моем родном языке, и для этого мне нужны символы ä и ö (å для меня бесполезен, только Шведы используют это).

Моя проблема в том, что некоторые команды VIM имеют довольно сложную комбинацию клавиш по умолчанию, например, "go-to-tag-under-cursor" - ^], которая переводится на Ctrl - AltGr - 9 на финскую клавиатуру, Для этого мне нужно нажать клавишу left control левой рукой, alt gr пальцем правой руки и протянуть правый указательный палец к клавише number 9. Это похоже на использование emacs и/или игра на классической гитаре. Не совсем эргономичный.

Вот что выглядит раскладка клавиатуры:

sweden keyboard

ПРИМЕЧАНИЕ: клавиши, отмеченные синим, записываются нажатием AltGr (справа) и соответствующей клавишей. Красные - это двухзначные персонажи или мертвые ключи, которые не выдают персонажа сами. F.ex. для ввода символа ü сначала нажмите клавишу ¨^~, а затем u. То же самое касается клавиш акцента. Эти мертвые ключи в VIM недоступны.

Таким образом, в основном у меня есть 3 дополнительных алфавитных ключа (ä ö å), но они не могут отображаться более одного раза, ключи-модификаторы не работают с ними (в VIM). Я могу сопоставить что-то с ä, но не Ä или <C-ä>.

Теперь я ищу идеи для моей установки VIM у других финских/шведских или других пользователей раскладки клавиатуры, отличных от США. Поделитесь своими ключевыми сопоставлениями, советами .vimrc и всем остальным, что может быть полезно.

4b9b3361

Ответ 1

Я просто держу клавиатуру с макетом США при кодировании и переключаюсь только на локальный макет (итальянский) при написании текста, для которого требуются буквы с акцентом или другие символы, специфичные для языка. В конце концов, это просто клавиша для переключения, и ничто не сравнится с американским макетом для программирования. Я немного потрудился, но обнаружил, что указание множества сопоставлений для работы над этим гораздо труднее, чем полный переключатель компоновки по необходимости.

Ответ 2

Мое решение состоит в использовании пользовательского сочетания рассылок US и FIN/SWE. Работает довольно хорошо (или, по крайней мере, лучше, чем ужасный макет планки). Image of my layout

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

Ответ 3

Вы можете использовать настройку langmap и keymap в VIM. Я использую его для colemak. Вы можете указать свой собственный макет.

h keymap
h langmap

Ответ 4

Как практическая остановка, не могли бы вы просто переключаться между макетами?

Например, в Ubuntu вы можете настроить горячие клавиши, чтобы легко переключаться между макетами, перейдя на Preferences → Keyboard → Layouts → Options → Key(s) to change layout. Я использую обе клавиши Shift, чтобы быстро перемещаться между макетами, и даже вариант, чтобы каждое окно имело свой собственный параметр компоновки, который хорошо работает, если вы программируете в Vim в макете английского языка при написании документации/электронной почты и т.д. в других окнах в другом макете. Даже если мне нужно переключать макеты (для комментариев кода и т.д.), Требуется очень мало усилий, чтобы нажать обе кнопки Shift и продолжить.

Должны быть аналогичные способы настройки этого в других средах рабочего стола/операционных системах.

Ответ 5

Я просто сопоставил эти ctrl-комбо с другими привязками клавиш.

Например, ctrl-] отображается на m-<down>.