1

При наборе текста в LibreOffice минус заменяется на длинное тире, в HTML обозначается как — , а мне нужно короткое, обозначаемое через – . Можно ли это настроить в параметрах программы? Ищу уже 3 дня.
Об автозамене двух минусов на короткое тире знаю, но этот вариант не подходит - работать приходится как под Linux, так и под Windows, и при быстром наборе текста действия отработаны до автоматизма, к автоматическому форматированию текста уже привык.

P.S. Ставить MS Word под Wine только из-за набора текста не хочется, а на работе требования к типографике жёсткие. Упаси Ктулху использовать "парные кавычки" - только «ёлочки» и т.д.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11
rizado пишет:

При наборе текста в LibreOffice минус заменяется на длинное тире, в HTML обозначается как — , а мне нужно короткое, обозначаемое через – . Можно ли это настроить в параметрах программы? Ищу уже 3 дня.
Об автозамене двух минусов на короткое тире знаю, но этот вариант не подходит - работать приходится как под Linux, так и под Windows, и при быстром наборе текста действия отработаны до автоматизма, к автоматическому форматированию текста уже привык.

P.S. Ставить MS Word под Wine только из-за набора текста не хочется, а на работе требования к типографике жёсткие. Упаси Ктулху использовать "парные кавычки" - только «ёлочки» и т.д.

Во-первых, не надо поминать светлое имя покойной типографики. Она тут никаким боком.

Во-вторых, поверьте, все Ваши проблемы называются "автозамена" и её правила.

В-третьих, стоит ли искать три дня то, что очень подробно описано в справках?

3

karl_muenhgausen пишет:

Во-первых, не надо поминать светлое имя покойной типографики. Она тут никаким боком.

Во-вторых, поверьте, все Ваши проблемы называются "автозамена" и её правила.

В-третьих, стоит ли искать три дня то, что очень подробно описано в справках?

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

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11
rizado пишет:
karl_muenhgausen пишет:

Во-первых, не надо поминать светлое имя покойной типографики. Она тут никаким боком.

Во-вторых, поверьте, все Ваши проблемы называются "автозамена" и её правила.

В-третьих, стоит ли искать три дня то, что очень подробно описано в справках?

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

Не всё правда в Википедии

Автозамена - это то самое ключевое слово, которое я Вам и предлагал

"Не нашёл" - ключевое.

5

rizado, не это ли вас интересует?

karl_muenhgausen пишет:

Во-вторых, поверьте, все Ваши проблемы называются "автозамена" и её правила.

http://storage6.static.itmages.ru/i/13/0109/s_1357677069_9790667_a8a3d1b31d.png

Да, у меня Ubuntu.
Нет, не глючит.

6

-=Serj=- пишет:

rizado, не это ли вас интересует?

karl_muenhgausen пишет:

Во-вторых, поверьте, все Ваши проблемы называются "автозамена" и её правила.

http://storage6.static.itmages.ru/i/13/0109/s_1357677069_9790667_a8a3d1b31d.png

Это я видел, но тире при автозамене ставится длинное, а мне нужно короткое.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

7 (09.01.2013 00:34:14 отредактировано karl_muenhgausen)

-=Serj=- пишет:

rizado, не это ли вас интересует?

karl_muenhgausen пишет:

Во-вторых, поверьте, все Ваши проблемы называются "автозамена" и её правила.

http://storage6.static.itmages.ru/i/13/0109/s_1357677069_9790667_a8a3d1b31d.png

Благодетель! Это я, дедушко, ленив... Там, вообще-то и варианты есть. Но эз дефаулт Вы предложили ТС именно нужное. Интересно, какое. Если бы ТС ещё выразился бы в терминах UNICODE...

8

rizado пишет:

Это я видел, но тире при автозамене ставится длинное, а мне нужно короткое.

Не, а если птичку снять?

Да, у меня Ubuntu.
Нет, не глючит.

9

-=Serj=- пишет:

Не, а если птичку снять?

Тогда ставится дефис.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

Дубль два:

karl_muenhgausen пишет:

Если бы ТС ещё выразился бы в терминах UNICODE...

11

karl_muenhgausen пишет:

Дубль два:

karl_muenhgausen пишет:

Если бы ТС ещё выразился бы в терминах UNICODE...

Из таблицы символов Debian:
Вот это вставляется:

U+2014 EM DASH

Основные свойства символа

В стандарте с версии 1.1
Категория Юникода: Знаки препинания, тире

Другие полезные представления

UTF-8: 0xE2 0x80 0x94
UTF-16: 0x2014

Восьмеричное представление UTF-8 в языке C: \342\200\224
Десятичное представление XML: —

Аннотации и перекрёстные ссылки

Примечания:
• may be used in pairs to offset parenthetical text

А это нужно:

U+2013 EN DASH

Основные свойства символа

В стандарте с версии 1.1
Категория Юникода: Знаки препинания, тире

Другие полезные представления

UTF-8: 0xE2 0x80 0x93
UTF-16: 0x2013

Восьмеричное представление UTF-8 в языке C: \342\200\223
Десятичное представление XML: –

Оно?

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

12 (09.01.2013 10:25:12 отредактировано bormant)

1) В русской типографике короткое тире используется не более, чем нигде (цифровые диапазоны, например, 13 – 17).
2) В английском тексте короткое тире используется и именно оно вставляется, если язык абзаца английский (равно как и кавычки - ёлочки и лапки).
3) Настройте автозамену единообразно в обоих системах (Сервис -> Параметры автозамены -> вкладка Заменить) "как под Linux, так и под Windows", например, пара дефисов -- короткое, тройка -- длинное тире, получите контролируемое единообразие.

13

bormant пишет:

1) В русской типографике короткое тире используется не более, чем нигде (цифровые диапазоны, например, 13 – 17).
2) В английском тексте короткое тире используется и именно оно вставляется, если язык абзаца английский (равно как и кавычки - ёлочки и лапки).
3) Настройте автозамену единообразно в обоих системах (Сервис -> Параметры автозамены -> вкладка Заменить) "как под Linux, так и под Windows", например, пара дефисов -- короткое, тройка -- длинное тире, получите контролируемое единообразие.

1. Это требование руководства, так что обсуждать это я не собираюсь.
2. Набираю только на русском языке.
3. Вопрос был поставлен именно в такой формулировке - максимально удобное автоматическое форматирование текста при наборе. Мне не нужно "обходных путей". Если эта ОС и ПО не дают такой возможности - буду использовать иные средства.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

14 (09.01.2013 13:17:08 отредактировано yars)

Word что, настолько умен, что умеет угадывать, когда вам нужно короткое тире, а когда -- длинное?
UPD: я к тому, что там все работает тоже через автозамену.

Истинный hotplug - это обычная электрическая розетка: воткнул - работает, и никаких драйверов.
Arch Linux/Xfce/Xiaomi Mi Notebook Pro 15.6 | Slackware64-current/Xfce/Lenovo G580

15

А он всегда ставит короткое, и меня это устраивает - рабочие требования именно такие.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

16 (09.01.2013 13:45:00 отредактировано bormant)

rizado пишет:

Если эта ОС и ПО не дают такой возможности - буду использовать иные средства.

При чём тут ОС -- не понял.
Что касается LO, ещё в его родителе были внесены изменения, учитывающие национальные особенности типографики, в которых для русского языка используется длинное тире, для английского -- короткое, для иных -- сообразно ситуации. Поведение опции "Заменять дефисы на тире", если я правильно путаю, прибито гвоздиком в коде и извне не настраивается.
Можете поменять в исходном коде и пересобрать. Или найти в уже собранном бинарнике и поменять код длинного тире на код короткого (грязный хак).
Либо, как уже говорили выше, использовать иные средства.

rizado пишет:
karl_muenhgausen пишет:

Дубль два:

karl_muenhgausen пишет:

Если бы ТС ещё выразился бы в терминах UNICODE...

Из таблицы символов Debian:
Вот это вставляется:

U+2014 EM DASH

Основные свойства символа

В стандарте с версии 1.1
Категория Юникода: Знаки препинания, тире

Другие полезные представления

UTF-8: 0xE2 0x80 0x94
UTF-16: 0x2014

Восьмеричное представление UTF-8 в языке C: \342\200\224
Десятичное представление XML: —

Аннотации и перекрёстные ссылки

Примечания:
• may be used in pairs to offset parenthetical text

А это нужно:

U+2013 EN DASH

Основные свойства символа

В стандарте с версии 1.1
Категория Юникода: Знаки препинания, тире

Другие полезные представления

UTF-8: 0xE2 0x80 0x93
UTF-16: 0x2013

Восьмеричное представление UTF-8 в языке C: \342\200\223
Десятичное представление XML: –

Оно?

Скопипастить не?

http://s16.radikal.ru/i190/1301/66/1b8e11b26f1f.png

http://s019.radikal.ru/i609/1301/cd/d864bd688bf4.png

18

karl_muenhgausen пишет:

Скопипастить не?

Прошу прощения, но Вы не поняли вопроса ab .
Требуется не использование средств автозамены (о которых я, поверьте, знаю и которые у меня настроены), а именно автоматическое форматирование текста при вводе.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

19 (09.01.2013 13:48:22 отредактировано bormant)

bormant пишет:

поменять в исходном коде и пересобрать

Менять примерно тут:
http://opengrok.libreoffice.org/xref/co … ToEnEmDash
Можно либо исключить LANGUAGE_RUSSIAN из критерия обязательного использования EmDash

bool bAlwaysUseEmDash = (cEmDash && (eLang == LANGUAGE_RUSSIAN || eLang == LANGUAGE_UKRAINIAN));

либо что-то ещё придумать с остатком кода.

20

bormant пишет:

Менять примерно тут:
http://opengrok.libreoffice.org/xref/co … ToEnEmDash
Можно либо исключить LANGUAGE_RUSSIAN из критерия обязательного использования EmDash

bool bAlwaysUseEmDash = (cEmDash && (eLang == LANGUAGE_RUSSIAN || eLang == LANGUAGE_UKRAINIAN));

либо что-то ещё придумать с остатком кода.

Вот за это спасибо. В общем, ответ понятен - обычными средствами сделать нельзя, только пересборка или иные средства.
С меня Вам плюс за единственное нормально объяснение ab .

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11
rizado пишет:
karl_muenhgausen пишет:

Скопипастить не?

Прошу прощения, но Вы не поняли вопроса ab .
Требуется не использование средств автозамены (о которых я, поверьте, знаю и которые у меня настроены), а именно автоматическое форматирование текста при вводе.

Вы искренне верите, что кроме автозамены (ну, пусть, пробел_дефис_пробел на em dash) существуют операционные системы и текстовые редакторы с искусственным интеллектом, который за Вас будет знать, какой именно символ Вы имели ввиду при наборе? Спешу разочаровать. Это не к комьютерам, это в Хогвартс.

22

karl_muenhgausen пишет:

Вы искренне верите, что кроме автозамены (ну, пусть, пробел_дефис_пробел на em dash) существуют операционные системы и текстовые редакторы с искусственным интеллектом, который за Вас будет знать, какой именно символ Вы имели ввиду при наборе? Спешу разочаровать. Это не к комьютерам, это в Хогвартс.

Не верю ab . Мне нужно именно короткое тире по всему тексту, и при этом не хочу пользоваться автозаменой "--". Word это делает идеально, вот и спросил, можно ли такое же сделать во Writer.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

23 (09.01.2013 14:25:07 отредактировано bormant)

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

?FnChgToEnEmDash@SvxAutoCorrect@@QAEEAAV push        028 ;'('
.1009A61A: B8C2AF0F10                     mov         eax,0100FAFC2 --1
.1009A61F: E807080400                     call       .0100DAE2B --2
.1009A624: 8BF1                           mov         esi,ecx
.1009A626: 8975E4                         mov         [ebp][-01C],esi
.1009A629: 33FF                           xor         edi,edi
.1009A62B: 897DEC                         mov         [ebp][-014],edi
.1009A62E: FF7518                         push        d,[ebp][018]
.1009A631: C645F300                       mov         b,[ebp][-00D],0
.1009A635: E8EBFFF7FF                     call        ?GetCharClass@SvxAutoCorrect@@QAEAAVCharClass@@G@Z --3
.1009A63A: 8945E0                         mov         [ebp][-020],eax
.1009A63D: 66397D18                       cmp         [ebp][018],di
.1009A641: 7515                           jnz        .01009A658 --4
.1009A643: 6A01                           push        1
.1009A645: E806ECFFFF                     call       .010099250 --5
.1009A64A: 8BC8                           mov         ecx,eax
.1009A64C: FF15BC931010                   call        LanguageTag::getLanguageType
.1009A652: 0FB7C0                         movzx       eax,ax
.1009A655: 894518                         mov         [ebp][018],eax
.1009A658: 66397E54                      4cmp         [esi][054],di
.1009A65C: 741A                           jz         .01009A678 --6
.1009A65E: B819040000                     mov         eax,000000419
.1009A663: 66394518                       cmp         [ebp][018],ax
.1009A667: 7409                           jz         .01009A672 --7
.1009A669: 83C009                         add         eax,9
.1009A66C: 66394518                       cmp         [ebp][018],ax
.1009A670: 7506                           jnz        .01009A678 --6
.1009A672: C645F201                      7mov         b,[ebp][-00E],1
.1009A676: EB04                           jmps       .01009A67C --8
.1009A678: C645F200                      6mov         b,[ebp][-00E],0
.1009A67C: 66397E56                      8cmp         [esi][056],di
.1009A680: 8B3DC8941010                   mov         edi,rtl_uString_newFromStr_WithLength --9
.1009A686: 8B5510                         mov         edx,[ebp][010]
.1009A689: 0F84DF040000                   jz         .01009AB6E --A

Собственно проверка на русский язык и присвоение bAlwaysUseEmDash значения TRUE :

.1009A65E: B819040000                     mov         eax,000000419
.1009A663: 66394518                       cmp         [ebp][018],ax
.1009A667: 7409                           jz         .01009A672 --7
...
.1009A672: C645F201                      7mov         b,[ebp][-00E],1

Достаточно инвертировать условие jz на jnz или jmps и вуаля...


PS. Уплата некоторого количества денег за труды по достижению интересующего результата рассматриваются в качестве "использования иных средств"?

24

bormant пишет:

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

Не собираюсь. Для винды есть Word, где всё работает. Да и Trial никто не отменял для 2010-й версии bx . А под Linux буду разбираться сам, интересно знать изнутри.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

25

А что мешает модифицировать под себя нужную раскладку клавиатуры и вводить нужные знаки, не пользуясь автозаменой и т. п.? Скажем, прописать:

    key    <AE11> {    [        minus,    underscore,        emdash,    endash]    }; 

И вводить тире с помощью ShiftLvl3+-, а ndash — с помощью Shift+ShiftLvl3+-.

«Заметки на полях клавиатуры» в помощь.

openSUSE Leap 15.1

26

gabix пишет:

А что мешает модифицировать под себя нужную раскладку клавиатуры и вводить нужные знаки, не пользуясь автозаменой и т. п.? Скажем, прописать:

    key    <AE11> {    [        minus,    underscore,        emdash,    endash]    };

И вводить тире с помощью ShiftLvl3+-, а ndash — с помощью Shift+ShiftLvl3+-.

до здравствую новые велосипеды, а почему бы не использовать комбинацию из 10 или 20 клавиш?

It is good day to die ...
MS Windows 10
Заметки о главном...

27

i2ks пишет:

до здравствую новые велосипеды, а почему бы не использовать комбинацию из 10 или 20 клавиш?

ag
Лучше, в дополнение к клаве, ещё три педали под стол!

Да, у меня Ubuntu.
Нет, не глючит.
gabix пишет:

А что мешает модифицировать под себя нужную раскладку клавиатуры и вводить нужные знаки, не пользуясь автозаменой и т. п.?

Нафига? Вроде Compose никто не отменял.

29

karl_muenhgausen пишет:

Вроде Compose никто не отменял.

Да на здоровье. Только с Compose это будет три последовательных нажатия по одной клавише (типа Compose - -), а с ShiftLvl3 — одновременное нажатие двух (трёх) клавиш. Мне это удобнее, тем более что под Compose могу выделить только что-то периферийное типа ScrollLock, для часто используемых символов неудобно.

openSUSE Leap 15.1

30 (09.01.2013 19:55:06 отредактировано Lupo Alberto)

gabix пишет:

Только с Compose это будет три последовательных нажатия по одной клавише (типа Compose - -), а с ShiftLvl3 — одновременное нажатие двух (трёх) клавиш.

Я привык, на «автомате» ввожу bx
Наверное, не до конца понял проблему: у меня в LibreOffice ввод двух подряд обычных дефисов даёт «короткое» тире; когда же мне надо ввести «длинное» тире, я использую Compose
http://s48.radikal.ru/i121/1301/77/5598723c6811t.jpg

Был, был и весь вышел...