Странная работа хоткеев в версии 7.3

Автор McAaron, 24 февраля 2022, 01:22

0 Пользователи и 1 гость просматривают эту тему.

McAaron

Использую ряд хоткеев для форматирования в пользовательские стили абзацев и символов. В частности, Ctrl-Alt-V для смены стиля символов выделенного текста и Ctrl-Alt-B для смены стиля абзаца. Для возрата в базовый стиль символов использую Ctrl-Alt-N. Все это работало со всеми 5.x, со всеми 6.x и 7.2. В 7.3 ситуация изменилась -- эти хокею работают, как установлено, только в английской раскладке. В кириллической вываливается пулл-даун "Формат" или "Стили", а на Ctrl-0 вместо смены стиля абзаца на "Основной текст" вообще ничего не происходит.
Что нужно сделать, чтобы хоткеи игнорировали раскладку?

mikekaganski

С уважением,
Михаил Каганский

McAaron

В 7.4.0.3 Ctrl-Alt-V и Ctrl-Alt-B заработали, однако на этом месте появилась новая проблема.
На Ctrl-Alt-N у назначено применение стиля символа "Базовый", но в 7.4.0.3 такого нет -- его роль исполняет стиль "Без стиля символа".
Вопрос -- можно ли в 7.4 вернуть стили? И не только символов, но и перечней? В смысле, что-то подкрутить в файлах установленного офиса?

mikekaganski

Цитата: McAaron от 15 ноября 2022, 19:02На Ctrl-Alt-N у назначено применение стиля символа "Базовый", но в 7.4.0.3 такого нет -- его роль исполняет стиль "Без стиля символа".

И что? Команда осталась прежней после переименования видимого пользователю имени. Или Вы не использовали нормальный механизм назначения хоткеев стилям?
С уважением,
Михаил Каганский

McAaron

Цитата: mikekaganski от 15 ноября 2022, 20:33И что? Команда осталась прежней после переименования видимого пользователю имени. Или Вы не использовали нормальный механизм назначения хоткеев стилям?
Стили назначались во времена 5.4.7.2, а скорее всего даже раньше. Все три -- 5.4.7.2, 6.4.7.2 и 7.4 живут на одном конфиге и используют одни и те же хоткисы. В 5 и 6 никакого стиля "без стиля не было" и форматирование символов сбрасывалось приведением к стилю "Базовый".
Назначались через тот же механизм, что и на вашем скриншоте (см. три скриншота для трех версий).
В 7.4 Стиль Базовый изначально отсутствует, а тот что на скриншите -- это я просто создал копию из "Без стиля" и костыль заработал.
Кстати, в 6.4.7.2 если стиль в кириллице, назначения для него не выводятся (скриншот), хотя и работают.

McAaron

Попутный вопрос -- можно ли как-то сделать так, чтобы строки в листбоксах в 6.4 и 7.4 были расположены также плотно, как в 5.4? Народ не хочет работать с блеклым интерфейсом и смартфонным интервалом. Первый вопрос я решил, подложив в 6.4 и 7.4 стиль Tango из 5.4, а вот с интервалом не выходит.
Как я полагаю, вы в команде тех, кто имеет дело с кодом офиса, можете подсказать, где зарыта собака.

mikekaganski

Цитата: McAaron от 16 ноября 2022, 12:52В 5 и 6 никакого стиля "без стиля не было" и форматирование символов сбрасывалось приведением к стилю "Базовый".

Ещё раз: это один и тот же "стиль", просто переименованный из "Базовый" в "Без стиля символа" (и имеющий внутреннее имя "Standard"). Внутри они используют одну и ту же команду; это записывается в registrymodifications.xcu как

<item oor:path="/org.openoffice.Office.Accelerators/PrimaryKeys/Modules/org.openoffice.Office.Accelerators:Module['com.sun.star.text.TextDocument']"><node oor:name="N_SHIFT_MOD1" oor:op="replace"><prop oor:name="Command" oor:op="fuse"><value xml:lang="en-US">.uno:StyleApply?Style:string=Standard&amp;FamilyName:string=CharacterStyles</value></prop></node></item>
Эта настройка работает одинаково что в версии 5.0, что в 7.4. И не нужны никакие костыли. А если у Вас оно не работает, то нужно смотреть, что не так в registrymodifications.xcu.

А насчёт интервала элементов списка - вероятно, это просто улучшенное соответствие интерфейсу GTK. Если в других программах (соответствующих GTK3+) списки имеют другой интервал, то надо писать баг с описанием конфигурации и скриншотами.
С уважением,
Михаил Каганский

McAaron

В моем ~/.config/libreoffice/4/user/registrymodifications.xcu/ я не нашел строки "Style:string=Standard"
$ cd ~/.config/libreoffice/4/user
$ cat registrymodifications.xcu | grep 'Style:string=Standard'
$
И не только в рабочем, но и в бекапах, начиная с 2018 года.
Зато нашел строку "Без стиля символа" в /opt/libreoffice7.4/program/resource/ru/LC_MESSAGES/sw.mo и ссылку на нее в /opt/libreoffice7.4/program/libswlo.so (по msgctxt "STR_NO_CHARFMT" и msgid "No Character Style").
В версии 6.4 она тоже присутствует, а вот в 5.4 ее нет.
Кроме того, в версии 6.4.7.2 нет стиля символа "Без стиля символа", но есть "Базовый" -- я специально запустил версию без конфига, чтобы еще раз убедиться, что нет там ни Standard, ни "Без стиля символа".
Хотелось бы узнать, как "правильно" привязать Ctrl-Alt-N к стилю "Без стиля символа", т.е. "Standard". Скриншот панели привязки и панель выбора стиля символа прилагается.