Mahou
Mahou copied to clipboard
Сниппеты работают не правильно
У меня 2 языка, Румынская(3 раскалдки Традиционная/Стандарт/Программистская) и Русская. У румынской 3 раскладки(и конечно же символы разные вводятся на одной и той-же клавише).
Так вот Сниппеты с "@"
([email protected]) Вставляются как "Yourvemail.here"
Снипетты с "()-"
Mahou (魔法) - Magical layout switcher Вставляются как "Mahou )魔法= + Magical layout switcher."
Галочка "Переключать на предполагаемую раскладку" не лечит это а делает работу странее. https://youtu.be/6al3MasD8fU
Во первых не включена ли функция "Смена раскладки в конверт выделения" (и тем более +), если да, попробуй без неё. (и включи желательно вместо них "Считать раскладку для всего слова в КВ", т.к. результат "Переключать на предполагаемую раскладку" может зависеть от неё)
Ну в общем всё из-за того что сниппеты "вводятся твоей раскладкой"(вероятно из-за функции описанной выше), этого можно избежать в latest-commit версии если использовать функцию __paste()
в сниппетах, т.е.:
->eml
====>__paste([email protected])<====
И будет использоваться "вставка" текста.
Нужно будет наверное все сниппеты изменить таким образом.
P.S. Для обновления до latest-commit:
- Во вкладке "Обновления" поставить канал обновлений на LatestCommit(Beta), и обновиться как обычно(проверить, скачать обновление)
- На странице: https://github.com/BladeMight/Mahou/releases/tag/latest-commit есть постоянно авто-обновляемые сборки. (если не знаешь какую брать - Release_x86_x64.zip)
"Смена раскладки в конверт выделения"
Включена мне она нужна конечно же. Но я проверил без неё и всёравно результат такой-же.
__paste([email protected])
Кстати да так работает отлично. Странно что работает через "ввод" изначально а не через "вставку" поскольку больше проблем чем пользы от этого.
Странно что работает через "ввод" изначально а не через "вставку" поскольку больше проблем чем пользы от этого.
Мне самому удивительно, я даже не делал такого функционала. По-умолчанию - вводится "текст" а не клавиши, не знаю точно в чём проблема но предположил что в "распознавании раскладки слов", т.к. эта функция не может знать из какой раскладки символы правильные, т.к. многие из них есть в обоих(а то и нескольких) раскладках.
UPD:
Посмотрел в коде, таки есть то о чём я писал, зависит от того какие раскладки выбраны во вкладке "Раскладки" для #1
и #2
. Может сейчас что-то придумаю...
А, нашел это функция "Исправление кодов клавиш" - это именно она делает чтобы текст не "вставлялся", а вводился текущей раскладкой. (Кстати это же и в подсказке над галочкой можно прочитать что будут использоваться "коды клавиш", а не "юникод символы".)
Кстати это же и в подсказке над галочкой можно прочитать что будут использоваться "коды клавиш", а не "юникод символы
Да тоже прочитал сейчас сам это, и она была включена. Сама по себе функция "Исправление кодов клавиш" очень нужна иначе для клавиатур QWERTZ и разного рода раскладок будет не правильно конвертировать текст из одного языка в другого. Мб. поставить игнор для Сниппетов как вариант.
нужна иначе для клавиатур QWERTZ
Ну для QWERTZ есть другое исправление - "Исправление для QWERTZ клавиатур" во вкладке "Раскладки".
Мб. поставить игнор для Сниппетов как вариант
Или использовать __paste
во всех сниппетах.
"Исправление для QWERTZ клавиатур" во вкладке "Раскладки".
Да тогда с ней будет неправильно конвертировать абракадабру из русских буков в правильное румынское. Пример русские "жэхъ" это румынские "şţăîâ", со включённой опции "Исправление для QWERTZ" он исправляет в "öäüîâ" вместо "şţăîâ" Я уверен это актуально и для других языков где есть такого рода буков. https://youtu.be/Wq9NycfEAj8
Или использовать __paste во всех сниппетах.
Ну или так, всё же лучше чем городить костыли в коде.
Пример русские "жэхъ" это румынские "şţăîâ", со включённой опции "Исправление для QWERTZ" он исправляет в "öäüîâ" вместо "şţăîâ"
Ну вообще я делал эту функцию для немецкой раскладки, #107. Похоже для всех раскладок - это не работает...
Установил 3 раскладки румынской, и 1 русская.
Ну не знаю у меня с обычной клавиатурой QWERTY, кроме как только "Считать раскладку для всего слова в КВ", без остальных(исправление кодов клавиш, смены раскладки в конверт выделения) работает нормально, с твоими раскладками. Если выключить "Считать раскладку для всего слова в КВ", и включить "исправление кодов клавиш", тогда вообще странно конвертирует: жэхъ
=> şţфш
=> жэфш
... Если включить "смены раскладки в конверт выделения", стало еще хуже:
жэхъ
=> ;'[]
=> Б=Ёё
=> <=~` => б)17
=> ... => б317
Если включить +, то уже лучше:
жехъ
=> şţai
=> жефш
Во всех этих режимах результат изменился, и не смог вернуться в исходную...
А вот без "Исправления кодов клавиш" и "Смена раскладки в Конверт выделения", т.е. только "Считать раскладку для всего слова в КВ", работает нормально:
жэхъ
=> şţăî
=> жэхъ
А тут результат не поменялся, т.е. даже вернулся обратно.