Mahou: Не понятно как работает "Игнорирование символов"

Created on 27 Dec 2020  ·  13Comments  ·  Source: BladeMight/Mahou

Вопрос

Не понимаю как работает горячее сочетание клавиш, которая включает и выключает "Игнорирование символов". В общем, я хотел чтобы символы []!;:'"{} и прочие синтаксические символы были окончанием слова, как функция "Считать пробел частью последнего слова. Скорее всего я что-то не понял, либо такой возможности нет и она очень нужна для удобства написания кода.

Система

  • Windows version: [Windows version 10]
  • Windows architecture: [x64]
  • Mahou version: [latest stable]
New Feature

All 13 comments

Поищи в issues.

Почитай найденную тему, и это очень старая функция которая сейчас не будет работать, сейчас используется более стабильная "считать раскладку всего слова в КВ", а эта функция была для "Смена раскладки в КВ"(или "+") без "считать раскладку всего слова в КВ".

Считать пробел частью последнего слова

Как раз эта функция делает чтобы 1 пробел "не был" окончанием слова, это тоже можешь поискать в issues.

В общем, я хотел чтобы символы []!;:'"{} и прочие синтаксические символы были окончанием слова

Какой результат ты хочешь этим добиться?

Да, довольно сумбурно расписал. В общем, я хочу чтобы эти символы []!;:'"{} (и прочие) не конвертировались при нажатии кнопки конвертации. Более того, когда введен один из этих символов, считать, что начато написание нового слова.

Допустим при написании кода я пишу функцию, которая принимает строку с русскими символами (раскладка на англ.):
foo("
продолжаю писать строку, подразумевая что хочу написать "Привет":
foo("Ghbdtn
теперь я нажимаю клавишу конвертации и у меня переводится вся эта написанная штука в
ащщ(ЭПривет
а мне хотелось бы, чтобы конвертировалось только слово Ghbdtn до символа "

Вопрос был в этом, можно ли как-то это сделать текущими настройками программы Mahou?

@nikitasA1NT Интересная идея, сейчас попробую придумать как реализовать.

Вопрос был в этом, можно ли как-то это сделать текущими настройками программы Mahou?

Сейчас нет, но скоро...

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

@nikitasA1NT Сделал в 21b26f7, проверяй в latest-commit.(как только соберётся на AppVeyor) Опция есть теперь в [Hidden] в "Mahou.ini":

...
[Hidden]
...
SymbolClear=

SymbolClear = какие символы если ты их вводишь будут очищать "последнее слово/линию/сниппет", например для твоих символов будет:

SymbolClear=[]!;:'"{}

"Сохраняешь Mahou.ini" и нажимаешь в Mahou "применить".(можно прямо при запущенном Mahou)

Кстати символы ":!; есть в обоих раскладках и они в обоих работают т.к. они одинаковые.

Для обновления до latest-commit:

  1. Во вкладке "Обновления" поставить канал обновлений на LatestCommit(Beta), и обновиться как обычно(проверить, скачать обновление)
  2. На странице: https://github.com/BladeMight/Mahou/releases/tag/latest-commit есть постоянно авто-обновляемые сборки. (если не знаешь какую брать - Release_x86_x64.zip)

Отлично, теперь удобно, если нужно писать русские символы в коде. Спасибо!

Можно ли обратно будет переключиться на Stable обновления с сохранением данной фичи?

Stable обновления

По сути самый стабильный релиз сейчас именно LatestCommit...

с сохранением данной фичи?

Нет.

@nikitasA1NT Кстати вот только что в e127c8c еще исправил Игнорирование символов для конвертации последнего слова/линии, демонстрация как работает:
symbolignore

т.е. Mahou просто их игнорирует.

@nikitasA1NT Так же сделал чтобы работала и для "конвертации выделения" в 61ff55b, еще исправил что в конвертации выделения(имеется в виду именно способ: Считать раскладку всего слова в КВ) Mahou раннее удалял символы которые не смог распознать в какой то раскладке, например: [привет] конвертировалось в ghbdtn т.е. символы [] удалялись т.к. их в русской раскладке нет, т.е. они не распознавались функцией Считать раскладку всего слова в КВ, а теперь просто переписываются: [привет] => [ghbdtn]

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

Думаю, нужно сделать удобный интерфейс для фичи SymbolClear

Как и для всех остальных функций [Hidden]........................... Позже попробую придумать что-то.

Как и для всех остальных функций [Hidden]

@nikitasA1NT Сделал в c8b74af новую вкладку для всех [Hidden] функций, теперь еще нужно сделать документацию на wiki...

Was this page helpful?
0 / 5 - 0 ratings