Comments (15)
Добрый день, а почему
let g:XkbSwitchIMappings = ['ru, uk, us']
а не
let g:XkbSwitchIMappings = ['ru', 'uk', 'us']
Он, кажется, на это и ругается. Кстати, у меня тоже Neovim 0.6, и плагин работает.
from vim-xkbswitch.
Действительно ошибся, видимо проглядел когда читал readme. Поправил, те ошибки исчезли, но появились четыре других. Приложил скриншот.
Плагин у меня работает, лишь эти ошибки появляются. Первое время думал что переживу, но когда нужно было что-то быстро записать... в итоге решил всё же открыть issue
from vim-xkbswitch.
Посмотрите документацию (в README.md) про g:XkbSwitchIMappings
, там сказано, что из коробки поддерживается только раскладка для русского языка (ru), и показано на примере как добавить поддержку немецкого (de). Но у вас кроме русского, us и uk - маппинги для них переводить вообще не нужно, так как они изначально соответствуют оригинальной английской раскладке.
Соотвественно, объявите просто
let g:XkbSwitchIMappings = ['ru']
Это то, что реально нужно.
from vim-xkbswitch.
Блин, выходит очень сильно проглядел. Исправил и теперь ошибок нет. С украинской раскладкой (которую я и обозначал uk, потому что другого кода для этого языка нет, когда для британского английского есть GB(en_GB), поправьте если не прав), кажется, всё работает. Извините за потраченное время.
Ещё раз спасибо за ваш плагин, без него я бы уже ушёл на какой-нибудь другой редактор. Он незаменимый для заметок в vimwiki. Да и поддерживать плагин такое количество времени вряд-ли бы кто-то стал. Спасибо за помощь
from vim-xkbswitch.
И вам спасибо за добрые слова ))
Оказывается, uk это украинский (я сначала почему-то подумал, что это united kingdom, сорри). Да, вам нужно вручную написать сопоставление символов из us в uk - грубо говоря, перевести английские символы на клавишах в украинские, соответствующие данным клавишам. В принципе, это не обязательно - это всего лишь маппинги в режиме ввода, и если вы не пользуетесь ими активно, то они и не нужны. Но некоторые плагины, например, управляющие автоматическим добавлением парных скобок, могут определять свои insert mappings, и это может приводить к разным неожиданным эффектам: в этом случае, перевод g:XkbSwitchIMappings
на язык, отличный от us, может оказаться необходимым.
from vim-xkbswitch.
Да ничего, я и сам в повседневной жизни прежде всего подумал бы об uk как об United Kingdom. Я кое-как запомнил это, лишь благодаря запросам, которые я вводил когда искал какое сокращение у украинского. До сих пор uk ассоциируется с United Kingdom. Особо такими плагинами не пользуюсь (по крайней мере не припоминаю таких), но возьму на вооружение и обязательно попытаюсь их написать. Про многое из рассказанного вами не знал, спасибо что рассказали. Удачи и спасибо за помощь
from vim-xkbswitch.
Извиняюсь, что так донимаю, но у меня при взгляде на документацию про сопоставление символов возник вопрос:
let g:XkbSwitchIMappingsTr = { \ 'ru': \ {'<': 'qwertyuiop[]asdfghjkl;''zxcvbnm,.
/'.
\ 'QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?@#$^&|',@#^&_',
\ '>': 'йцукенгшщзхъфывапролджэячсмитьбюё.'.
\ 'ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,Ё"№;:?/'},
\ 'de':
\ {'<': 'yz-[];''/YZ{}:"<>?
\ '>': 'zyßü+öä-ZYÜÖÄ;:_°"§&/(?#'},
\ }
` во втором языке (в примере из документации это de) нужно также вводить qwerty как в первом? Специально проверял про правильную немецкую раскладку ли я думаю. Могу ли я сделать также как в примере с русским но для второго языка лишь изменив несколько отличных букв?
from vim-xkbswitch.
md накосячил с вырезкой из документации(
from vim-xkbswitch.
В de qwert не нужно переводить, так как эти символы расположены одинаково с английской раскладкой, а вот y заменяется на z - с этого и начинается трансляция, в общем правило такое - смотрим на клавиши, если символ в транслируемом языке совпадает с английской раскладкой, то записывать в маппинги его не нужно, в русском и украинском (в отличие от немецкого) почти все клавиши не совпадают, поэтому перевод там длинный. Кроме этого, нужно особенно осторожно переводить знаки пунктуации - в документации есть пример к каким чудесам такие переводы могут привести, но тут заранее не угадать, поскольку конкретное нездоровое поведение может зависеть от других плагинов с собственными insert mappings, поэтому если что-то начнёт работать странно при вводе, то возможно придётся удалить некоторые переводы символов пунктуации.
from vim-xkbswitch.
Так как раскладки почти идентичные, я скопировал русскую раскладку и заменил отличные знаки. В одном моменте (после "ю") знак ' закрывал элемент, поэтому я продублировал этот знак
\ 'ru':
\ {'<': 'qwertyuiop[]asdfghjkl;''zxcvbnm,.`/'.
\ 'QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?~@#$^&|',
\ '>': 'йцукенгшщзхъфывапролджэячсмитьбюё.'.
\ 'ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,Ё"№;:?/'},
\ 'uk':
\ {'<': 'qwertyuiop[]asdfghjkl;''zxcvbnm,.`/'.
\ 'QWERTYUIOP{}ASDFGHJKL:"ZXCVBNM<>?~@#$^&|',
\ '>': 'йцукенгшщзхїфівапролджэячсмитьбю''.'.
\ 'ЙЦУКЕНГШЩЗХЇФІВАПРОЛДЖЭЯЧСМИТЬБЮ,ʼ"№;:?/'},
\ }
(не уверен, что не накосячил с md тут)
Пока никаких ошибок и "сюрпризов" не заметил
from vim-xkbswitch.
Выглядит хорошо, только Ээ в украинском нет же (они в другую сторону должны смотреть). Если хотите, присылайте пулл-реквест - это можно вставить в файлы xkbswitch.vim и xkbswitch.tr (при этом кодировка при редактировании должна быть Utf8, на современных линуксах это всегда так, да и в других ос тоже, наверное). И у вас пользовательские настройки станут проще.
from vim-xkbswitch.
Да, точно, вы правы, их нет, прозевал (сонливость даёт о себе знать), сейчас исправил. Смешно об этом говорить, но я не очень разбираюсь в git (что говорить, когда я лишь недавно начал использовать github) и его работе, даже несмотря на то, что я уже длительное время использую дистрибутив на линуксе (выделил это, потому что RMS держит в заложниках), поэтому про пулл реквест не уверен, что правильно вас понял. Отредактировал названные вами файлы:
from vim-xkbswitch.
Прислал два отдельных пулл реквеста. Первый редактирует xkbswitch.tr, второй же, соответственно, xkbswitch.vim. Как-то так
from vim-xkbswitch.
Круто! Смерджил. Правда почему-то в вашем реквесте в g:XkbSwitchIMappingsTr
пропала двойная одинарная кавычка для uk после бю - я поправил, еще в xkbswitch.tr поменял местами de и uk, так как uk похож на ru - пусть они будут рядом. Спасибо!
from vim-xkbswitch.
Странно. Может как-то случайно нажал "x" и удалил. Сам думал изменить расположение украинской раскладки, но на скорую руку оставил как было. В любом случае, спасибо вам, и удачи!
from vim-xkbswitch.
Related Issues (20)
- Disable dot (repeat last command) in non-english layouts in normal mode HOT 3
- Cannot switch layout while searching + cannot use shortcuts with modifier keys in insert mode HOT 6
- [question] how to change input method in insert mode? HOT 6
- xkb-switch triggered by neoclide Coc documentation float window HOT 2
- vim-xkbswitch does not remember the layout HOT 1
- Windows 10, gvim/nvim-qt, stopped working - how to debug/diagnose? HOT 3
- Unexpected output to textarea HOT 2
- Switch layout when in normal mode HOT 5
- Sway support HOT 1
- Question. How can I get current layout? HOT 2
- How to use vim-xkbswitch with i3wm? HOT 2
- Bspwm Support HOT 1
- Не находит бинарник xkb-switch HOT 1
- Can't restore Normal mode keyboard layout when leaving search '/' mode HOT 6
- mapping duplicate for script local mapping HOT 10
- Keymap assistance in Normal mode not working HOT 8
- Не удается заставить работать на Ubuntu 22.10 HOT 5
- Does not work with lazy.nvim HOT 8
- Doesn't switch language when exiting Insert mode HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vim-xkbswitch.