<bormant>
Что они хотели этим "Grammar By" сказать-то?
<tagezi>
bormant: ну, как я понимаю, успользуют 2 словаря, первый с запрещёнными значениями, второй с разрешёнными
<tagezi>
Grammar By - это разрешённые значения,
<kompi>
mikekaganski: https://i.imgur.com/66nt4l0.png часть комментариев отображается нормально, а часть вот так, большая пустая область
<kompi>
файл xlsx
<kompi>
сделанный в МСО
<kompi>
открыт в ЛО 6.0
<bormant>
ха, UI-шники молодцы-молодцы. Вот нафига мне в Writer в меню Стили нелокализованные стили нумерации (ABC/abc вместо АБВ/абв)?
<bormant>
какому ограниченному дибилу это хоть в голову приходит?
<tagezi>
посмотри коммиты.. но думаю это был Юсуф
<kompi>
это 100% был Юсуф, это выделено в отельную фичу
<kompi>
я сомневаюсь, что раньше были такие стили нумерации и что они были локализованы
<kompi>
это просто надо поправить
<bormant>
ага, они еще и стили списков переназвали/добавили ради этого. С.В.Лаврова на них нет
<kompi>
нет
<kompi>
измначально была переделка стилей списков нумерованных
<kompi>
а потом уж это прилетело в меню
<bormant>
kompi, не верю. ;)
<tagezi>
bormant: как файл называется?
<bormant>
это заговор
<bormant>
tagezi, какой файл?
<kompi>
заговор Юсуфа
<tagezi>
с менюшками
<kompi>
tagezi: ты решил отказаться от таблички? =)
<tagezi>
их там 8 кажеться, для каждого части райтераотдельный
<bormant>
WriterCommands.xcu
<bormant>
tagezi, проблеме не в менюшке, проблема в том, что в русской версии стили "Нумерованный ABC" и "Нумерованный abc" вместо АБВ/абв, сам способ нумерации
<tagezi>
bormant: так проблема в чем, в том что ты не можешь перевести часть названия или в том что ты переводишь, а там совсем другое?
<bormant>
tagezi, проблема в том, что в многоязычный продукт наводняют фишками English-only. Нафейхоа мне нумерация abc вместо абв (латинскими вместо русских)?
<tagezi>
тоесть там проблема в самой нумерации?
<tagezi>
нужно багу писать тогда
<bormant>
tagezi, да, естественно, стили списков не адаптируются
<tagezi>
kompi: я месяц больше не смогу ничего править, и скорее всего меня не будет в сети с понеделбника
<bormant>
вариантов нумерации локализованных тьма, а списки English only
<tagezi>
а раньше адаптировались?
<bormant>
а раньше это были Нумерованный список 1..5 с вариациями числовой нумерации
<tagezi>
ну... тогда нужно писать запрос на улучшение
<tagezi>
который дизайнеры с удовольствием проигнорируют, так как им насрать на любое мнение, кроме их собственного
<bormant>
Кстати, нет варианта русской нумерации заглавными А..АА..ААА
<bormant>
а строчными -- есть
<tagezi>
ой, у нас столько ляпов
<tagezi>
вон компи носится с багом, который ещё со времён ООо идёт: когда объединены ячейки в столбце таблици райтера, всё форматирование для всего столбца блокируется
<bormant>
хотя, может и правильно, что нет, он самый бестолковый из всех
<bormant>
хрен с ним, шаблон подстрою, будет как нужно
<kompi>
tagezi: я не ношусь
<kompi>
tagezi: ты же хотел себе баг красивый, я тебе дал список
<tagezi>
угу, за него вообще никто не хочет браться, как выяснилось, даже Айка поржал
bormant has quit [Read error: Connection reset by peer]
<mikekaganski>
"какому НЕограниченному дибилу это хоть в голову приходит?"
<kompi>
tagezi: поржал?
<kompi>
mikekaganski: ты посмотрел на мою картинку с камментами в Кальке?
<mikekaganski>
да, но не понял ничего. Картинка - плёхо, ODF - халасо
<tagezi>
mikekaganski: а вчем будет разница? только в том что не буду передавать переменныую в функцию а создовать в ней временную?
<mikekaganski>
ну, понимаешь, чисто исходя из логики происходящего - нафига внутри функции какое-то предыдущее состояние? оно нафиг не нужно там
<tagezi>
ну, да
<mikekaganski>
тогда функция становится совсем прозрачной: она принимает строку флагов, и маску нужных, и выдаёт число. А так там дополнительно передача числа в интерфейсе, и название должно быть "AddFlagsFromString"
<tagezi>
mikekaganski: так? :)
<mikekaganski>
OUString& rFlags - и потом ты делаешь rFlags = rFlags.toAsciiUpperCase();
<mikekaganski>
nFlagsMask стоило бы применить к каждому флагу, так получается гибче
<mikekaganski>
OUString aFlags
<mikekaganski>
чтобы менять только локальную копию
<tagezi>
так это из исходного места, она менялась и раньше
<tagezi>
нужно будет возвращать изменёную
<mikekaganski>
я помню,
<mikekaganski>
но ты же делаешь функцию. Она должна быть как можно более самодостаточной
<mikekaganski>
завтра её кто-то захочет использовать, и ему нужно будет приспосабливаться
<tagezi>
тогда нужно выносить это код
<mikekaganski>
зачем?
<mikekaganski>
просто передавай не по ссылке, а по значению
<tagezi>
а как применить изменения к ней?
<tagezi>
aFlags = aFlags.toAsciiUpperCase();
<tagezi>
было в исходном тексте, и кажется она используется дальше
<mikekaganski>
а эта строка где-то ниже используется?
<mikekaganski>
в первом случае - точно нет, она объявлена внутри блока
<mikekaganski>
и в остальных тоже
<mikekaganski>
кстати, там есть и обратное преобразование
bormant_ has quit [Ping timeout: 260 seconds]
<tagezi>
да, не используется
<tagezi>
значит можно передать без ссылки
<tagezi>
mikekaganski: если выставлять все флаги, это это получиться куча кода
<mikekaganski>
Ну, там названия действительно длинные
<tagezi>
опять повторяющегося... смысл было выносить функцию?
<tagezi>
InsertDeleteFlags::Что-тоТам
<mikekaganski>
смысл в том, что ты _код_ делаешь в одном месте. Ты там же, рядом с функцией, можешь объявить две константы, одну со всеми флагами, другую без одного, и даже указать одну из констант (со всеми, так логичнее) по умолчанию
<mikekaganski>
Ну так у тебя и получится, в одном случае InsertDeleteFlags::ALL, а в другом - InsertDeleteFlags::ALL & ~InsertDeleteFlags::OBJECTS
<mikekaganski>
или во втором InsertDeleteFlags::CONTENTS | InsertDeleteFlags::ATTRIB
<tagezi>
да
<tagezi>
об этом я не подумал
<mikekaganski>
только к ALL маску не применяй, а то получится изменение логики
<tagezi>
так, не понял
<tagezi>
где я могу её применить?
<mikekaganski>
потому что тав сейчас когда "A", применяется ALL, то есть во всех трёх случаях устанавливается и OBJECTS
<mikekaganski>
S,V,D,F,N,T,O
<tagezi>
аа, понял тебя
<tagezi>
mikekaganski: так, погоди.. я ведь могу при вызове функции указать либо InsertDeleteFlags::ALL если с объектом, либо InsertDeleteFlags::AUTOFILL если без объекта нужно
<tagezi>
разве нет?
<tagezi>
и не создавать ни каких констант и дополнительных переменных
kompi has quit [Quit: Page closed]
<mikekaganski>
я всё же лучше использовал бы InsertDeleteFlags::CONTENTS | InsertDeleteFlags::ATTRIB
<mikekaganski>
а не AUTOFILL
<mikekaganski>
потому что AUTOFILL всё же без двух флагов - там ещё NOTE исключён
<mikekaganski>
И ещё - можно упростить: зачем bCont? просто в случае 'A' делать return ALL, без bCont и без break
<tagezi>
mikekaganski: а в кейсе можно не использовать брейк?
<mikekaganski>
да, если (1) ты другим способом выходишь оттуда, или (2) если ты хочешь провалиться на следующую строку (у нас есть плагин, который не позволяет второе, если нет специального макроса fallthrough)
<tagezi>
тоесть в коде ЛО можно вообще брейк не указывать? :)
<mikekaganski>
наоборот
<tagezi>
mikekaganski: а как тогда назвать константу? WithoutObjectFlagsMask
<tagezi>
и её тоже в беземянном пространстве перед функцией указать?
<tagezi>
так, а по умолчанию это так? InsertDeleteFlags FlagsFromString(OUString rFlags, InsertDeleteFlags nFlagsMask = WithoutObjectFlagsMask)
<tagezi>
и тогда этот параметр можно не передавать, если он равен значению по умолчанию, так?
<mikekaganski>
А нужна тебе константа в твоём случае? и так там не длинно получается. Я понял бы, если тебе нужно было 7 имён перечислить
<tagezi>
я понимаю почему твои патчи понравились, ты смотришь достаточно абширно, и продумываешь как это можт быть использовано в будущем
<tagezi>
mikekaganski: вроде всё, наверное можно публиковать
<mikekaganski>
погодь
<tagezi>
хм.. ещё что-то?
<mikekaganski>
что с патчем?
<tagezi>
всмысле?
<mikekaganski>
я его не вижу
<mikekaganski>
вдруг
<tagezi>
имя удалилось
<tagezi>
странно
<tagezi>
mikekaganski: а почему нельзя работать со ссылкой?
UNIm95 has joined #libreoffice-ru
<tagezi>
mikekaganski: ещё по поводу коментария //all, там вроде и так понятно что всё возвращается
<tagezi>
там такими большими буквами ALL
<tagezi>
или лучше оставить коментарий и перенос на строку?
<mikekaganski>
tagezi: да можно убрать :)
<mikekaganski>
насчёт ссылки - там есть у нас плагин, который следит, чтоб большие объекты передавались по ссылке (для производительности). Это не всегда хорошо,
<mikekaganski>
в нашем случае, например, можно было бы использовать переданный по значению параметр как локальную переменную. Конечно, может быть, плагин умнее, чем я о нём думаю, и не ругается, если аргумент меняется...
<tagezi>
охренеть.. а ещё 25 уровней вложения они не могли придумать?
<mikekaganski>
это сравнительно немного ;-))
<tagezi>
да путает щесть
<tagezi>
надеюсь это реально нужно
<mikekaganski>
tagezi: ну смотри: есть задача собрать все комментарии документа. Вполне рациональное решение: взять корзину, и вызвать поочерёдно метод сбора комментариев каждого листа
<tagezi>
эм
<tagezi>
ну не знаю
<tagezi>
это только при условии, что тебе нужно когданибудь реалищовать метод сбора коментариев только на одном листе
<tagezi>
тогда да СобратьВсеКоментарии(СобратьКоментраииСЛиста(Список листов()))
kompi-nout has joined #libreoffice-ru
<tagezi>
а тут ещё реализованы СобратьКоментарии с Абзаца, СобратьКоментариСоСтроки, СобратьКоментарииСоСлова, СОбратьКоментарииСоЗнака
<tagezi>
по ощущениям :)
<tagezi>
и это всё только для того чтобы иницыализировать переменную
<tagezi>
как-то так выглядит
<mikekaganski>
ну, собрать комментарии со столбца и получить комментарий ячейки - да. И всё это - вполне нужные задачи.
<mikekaganski>
я думаю, что эти методы не только тут используются
<tagezi>
наверное
<tagezi>
не знаю.. если честно, я привык, что практически всю можель приложения когу удержать в голове, ну или хотябы частично
<tagezi>
а в ЛО не получается, куча уровней абстракции, и вообще не понятно иногда, что как связано
<tagezi>
иногда беру баг вроде просто и понятный, начинаю рыть, а там полная Ж, куда копать вообще не понятно
<mikekaganski>
... и это может сказать любой, даже Каолан :)
<tagezi>
может со временем станет проще...
<tagezi>
ну, я думаю он реально половину ЛО наизусть знает, и знает где нужно начинать рыть
<mikekaganski>
ага, тут мимопроходящие юзеры мечтают засунуть в ЛО туеву хучу свистоперделок
<mikekaganski>
I know it's an impossible dream, but I would love Dia, Inkscape, Calligra, Calibre, Sigil, Bluefish+BlueGriffon+SeaMonkey Composer+Aloha+Alloy+Quill (but using more native code), Thunderbird, Scribus... to be part of one big project
<tagezi>
это окуда?
* tagezi
падсталом
<mikekaganski>
#libreoffice .. это он меня убеждал, что draw - это редактор PDF, но плохой, и надо выделить отдельный и хаааароший :))
<tagezi>
нужно сделать Linux LibreOffice
<mikekaganski>
:))
<tagezi>
и не париться :)
<tagezi>
тогда ещё удет и кернел в этом списке :)
<tagezi>
и куча ДЕ
<kompi-nout>
systemDLO
<mikekaganski>
а ещё перец рассказывает, что это плохо, что у либры разные инсталлеры для разных очей, надо сделать один кросс-платформенный и не париться - оно само магически все баги исправит
<mikekaganski>
хм... осей, конечно :)
<tagezi>
снапкакеготам
<tagezi>
от каноникал, и пусть радуется
<tagezi>
или от редхеда, тоже вроде собираем же
<tagezi>
каноникал специально точила хрень для запуска убунтовских пакетов на винде
<mikekaganski>
я стал себе представлять этого кросс-платформенного урода, который на макось будет ставить в /etc/Program Files (x86)
<tagezi>
mikekaganski: ну, уже позно представлять, они уже есть
<mikekaganski>
я слышал; и где эти чудеса?
<tagezi>
просто ни один разумный человек, не будет это юзать
<mikekaganski>
именно
<tagezi>
хотя в убунту это уже намертво вшито
<mikekaganski>
мы вон какой фреймворк не используем, везде получается, что мы - самые огромные пользователи, и для нас там приходится решать кучу специфичных задач
<mikekaganski>
если "кросс-платформенный инсталлер" вшит в убунту, то пусть его продолжают называть кросс-платформенным
<tagezi>
это потому что пользователи не видели код в папке бридж :)
<mikekaganski>
:)
<tagezi>
для пользователя кросплатворменный это виндовс + юникслайк
<tagezi>
и юникслайк = это 10 дистров популярных, работающих на писи
<tagezi>
а 100500 штук к этому они не слышали
<tagezi>
гдето на днях видел, наверное на канале разрабов.. просят тесты для андроида написать
<mikekaganski>
ага... каждый раз заходит некто и говорит: я собираю онлайн под Alpine/Musl; что-то не выходит цветочек...
<tagezi>
наверное, уже надоело баги руками вылавливать
<mikekaganski>
и так постоянно
<tagezi>
это им повезло, что альпайн с кланга слез :)
<mikekaganski>
чтобы получить нормальную помощь от других проектов
<kompi-nout>
mikekaganski: ты в курсе, что Draw в Линукс начинает бешено тормозить уже после пары фигур нарисованных? очень видно, когда начинаешь их таскать по листу
<mikekaganski>
нет
<kompi-nout>
да
<tagezi>
mikekaganski: он с темы съехал :)
<kompi-nout>
теперь ты знаешь
<mikekaganski>
"нет, я не в курсе"
<mikekaganski>
а... :)
<kompi-nout>
SVG и LO Draw это где-то рядом
<mikekaganski>
нет
<mikekaganski>
(да?)
<kompi-nout>
да
<kompi-nout>
лол
<tagezi>
kompi-nout: дело не в библиотеках вообще
<mikekaganski>
это в самом деле нигде даже не близко
<tagezi>
вообще ни разу.. библиотеки дают примитивы, из которых при помощи чьей-то матери и кувалды, можно перевернуть "это" в нужный вид
<kompi-nout>
я могу сделать экспорт рисунк а в SVG из Draw
<kompi-nout>
прямая связь
<mikekaganski>
торможение draw не связано с кодом фильтра
<kompi-nout>
я этого и не говорил
<tagezi>
:)
<kompi-nout>
торможение Draw связано с рендером
<tagezi>
ну, я же говорю он с темы съехал :)
<kompi-nout>
с лайоутом
<mikekaganski>
погоди, ты имеешь ввиду вставку фигур из SVG?
<kompi-nout>
с кривым
<kompi-nout>
mikekaganski: следи за руками
<tagezi>
:))
<kompi-nout>
тема про SVG - это тема №1
<kompi-nout>
тема про тормоза Дро - это тема №2
<kompi-nout>
ОпенЦЛ в чате
<mikekaganski>
вот-вот, нужно следить, а то где-то меня дурят, только не пойму где
<tagezi>
первую уже закрыли :)
<kompi-nout>
ну почти
<tagezi>
почти дурят :)
<kompi-nout>
закрыли и дурят
<mikekaganski>
"ОпенЦЛ в чате" - это вообще о чём?
<mikekaganski>
ещё и здесь ???
<mikekaganski>
и тоже из ЛО?
<tagezi>
это номер три
<tagezi>
сказалиже, смотри за руками :)
<mikekaganski>
ну всё, теперь до мечты того перца недалеко
<kompi-nout>
ОпенЦЛ - это про параллельное обсуждение двух тем, параллелизм
<kompi-nout>
чо вы не понимаете моих ассоциативных цепочек?
<mikekaganski>
а. :)
<tagezi>
библиотеки для фильтров нет :)
<mikekaganski>
ну, я бы добавил ещё кути сюда для надёжности
<mikekaganski>
kompi-nout: SVG нам нужно пилить, и сейчас этим quickee снова начал заниматься (сегодня в dev промелькнуло)
<mikekaganski>
потому что новые все иконки у нас svg, и возникает вопрос производительности, надёжности, безглючности...
<mikekaganski>
это естественно влияет и на фильтр, потому что хихоньки хахоньками, а нормальные разработчики стараются не делать 100500 вариантов одного кода, и мы убираем дубли ( tagezi в первых рядах)
<tagezi>
угу.. и боюсь поворачиваться
<tagezi>
с детства боюсь больших пустых пространств :))
<mikekaganski>
:) нечего, можешь не оборачиваться, всё равно накроет :)
kompi-nout has quit [Quit: Page closed]
<mikekaganski>
нифига себе, тебе сегодня шустрые билдботы попались
<mikekaganski>
уже и макось, и винда на выдохе
<tagezi>
mikekaganski: да, ты прав, сегодня очень быстро
<tagezi>
там будет маленькое сокращение по размеру, но зато будет более логично это выглядеть
<mikekaganski>
да, и это маленькое сокращение всё равно важно. Если потом исправлять, то в одном месте. Вечно копипасты постепенно плывут - в одном месте заменили, в другом забыли