четверг, 21 апреля 2022 г.

Ускорение экспорта документов в формат PDF

Luboš Luňák отчитался в своем блоге о проделанной работе по ускорению экспорта файлов из LibreOffice в формат PDF. По его словам ускорение некоторых внутренних операция во время экспорта после его патчей достигает до 62 раз! Это весьма круто. Проверял он на каком-то огромном 400 страничном документе. Ну и кстати, это говорит о том, что исходный код LibreOffice весьма неоптимален в некоторых местах, а также о том, что Luboš крутой перец =)

вторник, 19 апреля 2022 г.

Использование нового линковщика mold вместо стандартного при сборке LibreOffice

Один знаменитый в узких кругах программист взял и написал новый линковщик mold, который (по слухам) здорово ускоряет сборку нашего не маленького проекта LibreOffice.

Илмари пишет, что при использовании mold сборка LibreOffice у него стала занимать 30 минут вместо 50 минут со стадартным lld. Почти в ДВА раза! Учитывая, что у меня старое железо, и сборка вообще занимает два часа, применение mold явно имеет смысл.

Чтобы использовать mold при сборке LibreOffice (о том, как собирать свою сборку я писал ранее вот в этой статье), вам нужен установленный в вашей ОС mold и на шестом шаге "даём команду ./autogen.sh" нужно добавить к команде опцию --enable-ld=mold, либо добавить эту опцию в ваш файл autogen.input.

Вот результат тестов от самого автора mold :

Link speed comparison 

Добавлю после натурного эксперимента: 

mold в Ubuntu 20.04 собирается после прочтения инструкции по ссылке выше. Всё оказалось просто:

Команда sudo apt-get install -y build-essential git clang cmake libstdc++-10-dev libssl-dev libxxhash-dev zlib1g-dev pkg-config установит необходимые зависимости.

Далее команды:

git clone https://github.com/rui314/mold.git
cd mold
git checkout v1.2.0
make -j$(nproc) CXX=clang++
sudo make install

скачают репозиторий mold к вам локально, соберут бинарник версии 1.2.0 и поместят его в системный каталог.

Так как штатный компилятор GCC в Ubuntu 20.04 имеет версию 9.4, а поддержка mold появится только в GCC 12, то собирать LibreOffice, используя mold можно только юзая Clang (это тоже компилятор). Для этого в файл autogen.input в каталоге с исходниками LibreOffice надо добавить следующие строки:

CC=clang
CXX=clang++
--enable-ld=mold

Именно так, две первые строки без двух дефисов, а последняя с ними.

Далее даем команды

make clean

make

И процесс побежит.

понедельник, 11 апреля 2022 г.

Маленькое улучшение при вставке гиперссылки в ячейку талицы Calc

Andreas Heinisch реализовал маленькое улучшение при вставке гиперссылки в ячейку талицы Calc. 

Заключается оно в следующем: если ячейка уже содержит какой-то текст и вы хотите просто к этому тексту добавить гиперссылку (то есть этот текст останется неизменным, но по щелчку по нему откроется заданная гиперссылка), то просто выделите ячейку, щёлкнув по ней один раз мышкой, и используйте соответствующий диалог Гиперссылка (Ctrl+K жмите). В диалоге поле "Текст" сразу будет содержать ваш текст из ячейки, останется только адрес гиперссылки заполнить.

Ранее нужно было для этого дважды щёлкать по ячейке, чтобы перейти в режим редактирования, выделить нужный текст, а только потом открывать диалог Гиперссылка.

Удобство в мелочах!

четверг, 31 марта 2022 г.

Выпуск LibreOffice 7.3.2


The Document Foundation объявил о релизе второго корректирующего обновления LibreOffice 7.3.

Список исправлений относительно предыдущего релиза LibreOffice 7.3.1 ниже:

https://wiki.documentfoundation.org/Releases/7.3.2/RC1

https://wiki.documentfoundation.org/Releases/7.3.2/RC2

Всем, кто использует версию LibreOffice 7.3 крайне рекомендую обновиться.

вторник, 29 марта 2022 г.

Исправили ошибку, когда при сохранении презентации в формат PPTX из файла пропадало видео

Просто для истории: был вот такой баг репорт. И сегодня, наконец, Tünde Tóth из венгерской компании NISZ, исправил эту проблему в LibreOffice. Исправление пока доступно только в будущем LibreOffice 7.4, я не уверен, будет ли бэкпорт в LibreOffice 7.3.

среда, 23 марта 2022 г.

Кто же разрабатывает LibreOffice

Я периодически слышу вопросы, типа "Кто же разрабатывает LibreOffice? Студенты? Компании? А какие?". Ну так вот, ответ на вопрос представлен на диаграмме ниже, это данные за 2021 год:

Данные в процентах, так нагляднее. Общее количество коммитов в проект за 2021 год составляет 14400. 

Итак, компании Collabora и Red Hat вносят каждая по четверти от общего количества коммитов. Причём это патчи, которые добавляют серьезный новый функционал, улучшают производительность, совместимость с MS Office, и прочие достаточно сложные вещи.

Volunteers - это разработчики, которые не связаны с каким-то компаниями. В этой категории и студенты из программы GSoC и индусы, которым нужно в резюме хоть что-то показать, и реально хорошие кодеры, которые что-то там исправили пару раз.

TDF - это коммиты от сотрудников самого фонда The Document Foundation. В основном там патчи с юнит тестами от Xisco Fauli (он QA инженер) и патчи в справку и документацию от Olivier Hallot (он лидер команды документации).

Others - это все остальные компании, вклад которых варьируется от 0,1% до 4 %. Список таких компаний приведён в правой части диаграммы. Не смотря на вроде бы незначительный вклад в процентном отношении, большинство этих коммитов важные и нужные.

понедельник, 21 марта 2022 г.

В LibreOffice Calc добавляют поддержку функции XLOOKUP

Это прямо праздник какой-то. Winfried Donkers написал патч, который, после доработки, добавит в LibreOffice Calc поддержку функции XLOOKUP (в русском Excel это называется ПРОСМОТРХ, надеюсь в LO Calc это переведут более вменяемо). Эта функция может заменить собой несколько аналогичных функций, таких, как LOOKUP (ПРОСМОТР), ВПР (VLOOKUP), ГПР (HLOOKUP), связку MATCH (ПОИСКПОЗ) + INDEX (ИНДЕКС), поскольку имеет больше параметров и больше возможностей.

В MS Excel эта функция появилась в конце 2019 года и была доступна только в облачной версии Office 365, а в десктопную редакцию попала только с выходом MS Office 2021. Про эту функцию есть очень хороший ролик на ютубе.

суббота, 19 марта 2022 г.

GSoC 2022 и LibreOffice

GSoC (Google Summer of Code) - это такое мероприятие от компании Google, когда они платят студентам со всего мира за код, написанный для opensource проектов, во время летних каникул. Платят от 3000 до 6000 долларов США, в зависимости от страны проживания студента (дикриминация, как она есть!).

Проект LibreOffice уже который год участвует в этом, прошлые годы были достаточно успешные, обычно все студенты свои проекты завершают.

В этом году GSoC будет отличаться от предыдущих лет. В этом году:

1. К программе допускаются не только студенты, а вообще кто угодно. Правда, если ты не студент, то ты должен доказать, что ранее к opensource отношения не имел (как они это проверят интересно?).

2. Будет разделение на корокий и длинный кодинг. Сумма вознаграждения от этого не поменяется, я так понял, но за более длинный промежуток времени можно выполнить более сложную задачу или задача может быть выполнена кем-то медленным.

LibreOffice в этом году уже получил одобрение от Google, как организация, которая может привлекать студентов к программе, однако я не видел количество проектов, которое можно заявить, возможно это станет извествно позднее.

Ну и в связи с текущей ситуацией, я не уверен, что российские граждане смогут поучаствовать в мероприятии.

Однако, на всякий случай, вот ссылка - summerofcode.withgoogle.com можно там пошукать, если кому интересно, найти контакты организаторов и задать им вопрос, можно или не можно. Также останется вопрос с оплатой, если таки российским гражданам участвовать можно.

Попробуйте, мало ли, 3000 долларов - это тоже деньги.

Напоминаю, что LibreOffice написан на языке программирования С++. Чтобы заявиться, как участник программы GSoC для LibreOffice, вам надо посмотреть список задач по ссылке , выбрать задачу себе по душе, написать пару легких патчей (по ссылке список), связаться с соответствующим ментором и подать заявку на сам GSoC (по ссылке выше, там есть инструкции).

Удачи =)

вторник, 15 марта 2022 г.

В LibreOffice 7.4 включили поддержку тёмной темы в Windows окружении

Caolán McNamara запилил патч, который добавляет в LibreOffice поддержку тёмной системной темы. Выглядит это как-то вот так:

На мой взгляд, оттенки чёрного в окне LibreOffice не совпадают с системными (сравните цвет панели задач Windows и цвет внутри окна LibreOffice).
Но даже такой вариант лучше, чем никакого. Интересно будет посмотреть на боковую панель, с ней вечно проблемы были, так как она отдельная сущность в UI.

воскресенье, 13 марта 2022 г.

В LibreOffice 7.4 добавили вариант значков Colibre для тёмной темы

Rizal Muttaqin (он из Индонезии) добавил в LibreOffice 7.4 вариант значков Colibre для тёмной темы.


Вот так это примерно выглядит. Вот тут по ссылке больше скриншотов. 

Прошу учесть, что пока LibreOffice поддерживает системные тёмные темы криво, и то, что вы видите на скриншотах - это результат ручной настройки и системной темы и настроек внутри LibreOffice.

суббота, 12 марта 2022 г.

Дубликат блога на Я.Дзен

В связи с известными событиями я принял решение публиковать дубликаты постов из этого блога в блог на Яндекс Дзен. Адрес дублирующего блога вот такой https://zen.yandex.ru/id/605ee7b1fa025e0d7b9cdcde

Там как-то хитро устроено, что короткий и говорящий адрес блогу можно будет задать как-нибудь потом, когда аудитория будет поболее =) Поживём - увидим.

В LibreOffice Calc появится поддержка спарклайнов

Спарклайн - это такая маааленькая диаграмма, которая размещается в одной ячейке электронной таблицы. В MS Excel они появились бог знает когда. И вот теперь, один из разработчиков Collabora, Tomaž Vajngerl, пилит поддержку спарклайнов для LibreOffice Calc. Вот статейка в его бложике.

четверг, 10 марта 2022 г.

Выпуск LibreOffice 7.2.6

 

The Document Foundation объявил о релизе шестого корректирующего выпуска LibreOffice 7.2. Скачать LibreOffice 7.2.6 можно по ссылке libreoffice.org/download.

Список исправленных ошибок относительно релиза LibreOffice 7.2.5:

https://wiki.documentfoundation.org/Releases/7.2.6/RC1

https://wiki.documentfoundation.org/Releases/7.2.6/RC2

Всем, кто использует LibreOffice 7.2, рекомендую обновиться.
PS: Если найдёте ошибку в программе, то не стесняйтесь сообщить о ней разработчикам 
по этой ссылке.

 

Поддержка 16 тысяч столбцов в таблицах LibreOffice Calc 7.4 включена по умолчанию

Ну что, Любош таки включил поддержку 16 тысяч столбцов в таблицах LibreOffice Calc 7.4 по умолчанию. Обратите внимание, что включены широкие таблицы, а вот количество доступных строк в таблицах по умолчанию так и осталось чуть больше одного миллиона.

Попробовать это в деле можно, скачав ежедневную сборку разрабатываемой сейчас версии LibreOffice 7.4 по ссылке.

Проверить, доступны ли именно 16 тысяч столбцов можно по именам столбцов, раньше крайний правый 1024-й столбец был AMJ, сейчас 16384-й - это XFD.

Если вы будете пробовать эту функциональность и поймаете какую-либо ошибку в использовании Calc, которой ранее не было, то пишите в багзиллу проекта пожалуйста.

вторник, 1 марта 2022 г.

TDF приостановило членство РусБИТех-Астра в своем консультативном совете

Ну собственно всё сказано в заголовке. Ссылка на публикацию вот она

Мне нравится, как они это решили между собой, посоветовавшись с только некоторыми членами фонда! А почему не со всеми? Мне конечно абсолютно наплевать на это, политика грязное дело. И уж конечно я не полезу в дебри устава фонда, чтобы проверить, а имели ли они право так поступить. Ну и причина, что РусБИТех-Астра якобы связан с военными... это не мешало TDF предыдущие годы получать от РусБИТех деньги ежегодно, а сейчас вдруг стало важно. 

Вот, кстати, ответ самих астровцев на этот выкрутас.

среда, 16 февраля 2022 г.

Skia отключат по умолчанию в LibreOffice 7.3.1 для macOS

 i2.wp.com/xamdev.ru/wp-content/uploads/2017/03/...

Я тут не так давно радовался, что на Skia перевели и сборки LibreOffice под macOS. Ну так радость была не долгой. В LibreOffice 7.3 под macOS появились странные баги, связанные с печатью и не только, которые проявились именно из-за Skia, и пока не чинятся, потому что единственный разработчик, который всё это время со Skia и возился, у себя не может воспроизвести проблемы. Поэтому решено было Skia пока в сборках для macOS отключить. Это случится уже в грядущем LibreOffice 7.3.1. Саму функцию не убрали, кто хочет, может ручками включить Skia в диалоге Параметры.

понедельник, 14 февраля 2022 г.

Поддержку огромных таблиц в LibreOffice Calc доведут до ума

Если вдруг вы не знали, то LibreOffice Calc сейчас поддерживает только 1024 столбца и 1048576 строк на одном листе. При этом лист в MS Excel может иметь до 16384 столбцов и это сейчас приводит к несовместимостям, когда данные у пользователей Excel располагаются в 1025 столбце например и далее вправо, и LibreOffice Calc такие файлы открывает, но с ошибками и потерями данных.

В свое время, в рамках баг репорта tdf#50916 в LibreOffice Calc версии 7.0 была добавлена поддержка 16384 столбцов и 16 миллионов строк. Однако реализация изобиловала проблемами, крашами на ровном месте, и использоваться в обычной работе не могла. Функциональность оставили, но сделали скрытой. Включается это до сих пор через активацию экспериментальных возможностей.

К счастью, Luboš Luňák из Collabora, написал и уже влил в кодовую базу будущего LibreOffice 7.4 патчи, исправляющие большинство ошибок для столь нужной функциональности. Во всяком случае большинство крашей уже исправлено. Он ещё продолжит свою работу в этом направлении и есть неиллюзорный шанс получить вполне работающую поддержку бОльшего количества строк и столбцов в LibreOffice Calc к релизу версии 7.4. Кстати разработчики между собой называют эту фичу Jumbo sheets.

Дамбо мультфильм 1941 смотреть онлайн бесплатно в хорошем качестве

Конечно остается вопрос производительности. Я, например, не дождался, когда Calc отфильтрует мне 16 миллионов значений через Автофильтр в одном столбце. Думается, что таких тонких моментов будет еще не мало. Однако самая главная проблема - открытие без ошибок очень широких таблиц Excel, будет решена и это прекрасно.


пятница, 11 февраля 2022 г.

Поддержка SIMD инструкций AVX/AVX512 была удалена из LibreOffice 7.3

Инструкции современных центральных процессоров AVX/AVX512 позволяют выполнять некоторые операции значительно быстрее. В свое время Dante поддержку этих инструкций добавил для расчетов некоторых функций в LibreOffice Calc. Однако, к огромному моему сожалению, эта фича принесла за собой критичные проблемы в виде крашей офиса. Разработчики пытались бороться с этим, но тут нужен маг и волшебник, который очень круто разбирается в низкоуровневых системах вообще и в этих самых SIMD инструкциях в частности, да ещё и С++ знает, как Страуструп.

Как итог, поддержка AVX/AVX512 была из LibreOffice удалена =(