четверг, 11 июля 2019 г.

Автоматическая нумерация строк в таблице Writer

Подсмотрено при переводе фраз для нового диалога "Совет дня".
Итак, очень часто бывает, что первый столбец в таблице содержит номера строк по порядку. Каждый раз мы прописываем ручками номера строк, а затем, когда вставляем или удаляем строки, то нумерацию приходится корректировать. И так раз за разом.
Оказывается есть чудесный и простейший способ заиметь автоматическую нумерацию строк в таблицах Writer, которая не слетает и сама обновляется при операциях со строками. Итак:
Создаем таблицу, выделяем нужный столбец (или несколько ячеек в столбце) и жмём значок Нумерованный список на панели инструментов. Также можно активировать стиль списка с нужной нумерацией, эффект будет идентичный. 
При этом, если вы вставляете строки выше/ниже нумерованной строки (то есть курсор установлен в строке, которая имеет автоматический номер), то нумерация автоматически распространяется на добавляемую строку.
А если у вас не весь столбец пронумерован, то добавляя строки к ненумерованной строке, вы не получите в новых строках автоматическую нумерацию.
Отключается нумерация так же, как включается. Нажмите еще раз на значок Нумерованный список в панели инструментов.

воскресенье, 7 июля 2019 г.

Выпуск LibreOffice 6.3 RC 1

Для скачивания доступны сборки первого релиз кандидата LibreOffice 6.3. Скачать LibreOffice 6.3 RC 1 можно для всех платформ, в вариантах 32 и 64 бит. Первый релиз кандидат предназначен исключительно для целей тестирования. Однако, никто не мешает вам установить эту версию (Внимание! Установится взамен существующей!) и просто оценить изменения и различные новшества. 
Ссылки для скачивания:
Исходный код
Обратите внимание! С выпуска 6.3 The Document Foundation не предоставляет готовые Linux сборки LibreOffice для 32 битных систем! Это не означает, что вы сами не сможете собрать LibreOffice для 32 битной ОС из исходного кода. TDF просто вынужден экономить свои к сожалению не бесконечные ресурсы.
Почитать об изменениях в LibreOffice 6.3 относительно предыдущей версии можно здесь.

среда, 3 июля 2019 г.

Отчет QA в LibreOffice за июнь 2019

Xisco Fauli, QA инженер из The Document Foundation опубликовал ежемесячный отчет о работе QA в июне 2019 года. По ссылке доступно много самой разной информации.
Немного о самом главном в июне:
Подано отчетов об ошибках - 544
Обработано отчетов - 545
Закрыто (по разным причинам) - 622
В отчёте Xisco сделал прекрасную диаграмму, иллюстрирующую эти самые причины:
Немного поясню:
FIXED - это ошибки, которые были явно исправлены разработчиками, и в отчете есть прямая ссылка на патч.
WONTFIX - это ошибки, которые либо вовсе не ошибки, либо предложения, которые были отвергнуты разработчиками по обоснованным причинам.
DUPLICATE - это ошибки, по которым уже есть информация в багзилле.
WORKSFORME - обычно это старая ошибка, которая в текущей версии LibreOffice не воспроизводится. Значит, кто-то что-то где-то исправил, ошибка не воспроизводится сейчас, а кто и что исправил мы не знаем и ставим такой статус.
INVALID - некорректный отчет об ошибке или вообще спам (к сожалению такое тоже есть).
NOTABUG - это когда кто-то, не разобравшись в функционале LibreOffice, пишет отчет об ошибке, а оказалось, что такое поведение программы - это так и задумано.
INSUFFICIENTDATA - ошибка закрывается с таким статусом (недостаточно данных), если она находилась в статусе NEEDINFO (требуется информация) более, чем 6 месяцев. То есть, у баг репортера запросили уточняющую информацию по ошибке и он такую информацию не предоставил.
Хорошая работа в июне! =)

понедельник, 17 июня 2019 г.

Изменение шрифтов в диалоге инсталлятора LibreOffice в Windows

Сегодня диалог инсталлятора LibreOffice в Windows использует шрифт Tahoma с кеглем 8. В багзилле есть запрос на приведение шрифтов к стандартному шрифту в Windows для GUI, коим является Segoe UI с кеглем не менее, чем 9. Попробуем это сделать (спасибо Майку за теорию!)
Инсталлятор LibreOffice использует стандартный для Windows механизм msi. Любой файл msi можно редактировать ручками, используя специальную утилиту от MicroSoft - Orca. Скачать ее можно по этой ссылке.
После установки Orca нужно щёлкнуть правой кнопкой по файлу инсталлятора LibreOffice с расширением .msi и выбрать пункт "Edit with Orca". Откроется вот такое окно:
С первого взгляда ничего не понятно и вообще страшно глядеть, одни цифры и символы.
Примечание: вот кстати ссылка на документацию по msi: https://docs.microsoft.com/en-us/windows/desktop/Msi/windows-installer-portal.
Будем разбираться. Итак, в левой части окна мы видим список таблиц, используя данные из которых, msi и формирует внешний вид диалоговых окон инсталлятора. А в правой части окна мы как раз видим данные той таблицы, которая выделена в настоящий момент в левой части окна.
Для изменения только лишь шрифтов нам необходима таблица TextStyle. Найдем её в левой части окна и выберем её:
Это относительно простая таблица. По столбцам содержится следующая информация:
TextStyle - это внутреннее название шрифта, которое используется в других таблицах внутри нашего msi.
FaceName - это название шрифта, которое отображается в операционной системе. Обязательно корректное написание.
Size - это кегль шрифта, который будет отображаться в диалоге.
Color - здесь можно задать цвет шрифта, если ничего не указано, то шрифт скорее всего выставлен в "Авто". Я с цветом экспериментов не ставил, мне было ни к чему.
StyleBits - это отдельный признак форматирования символов шрифта. Цифра 1 - жирное написание, 2 - курсив.
Обратите внимание, как много самых разных шрифтов прописано в таблице. При этом, как оказалось, большинство указанных шрифтов просто нигде в нашем диалоге не используется. Проверяется это очень просто: жмём Ctrl+F, открывается окно поиска, забиваем туда внутреннее имя шрифта и жмём кнопку "Найти". Поиск осуществляется по всем таблицам файла msi с текущей строки сверху вниз. Когда поиск дойдет до последней строки в последней таблице, просто на соответствующий вопрос (Продолжить поиск с начала?):
нужно ответить "Да".
И вы увидите, что больше ни в одной таблице шрифт, например MSSGreySerif8, не используется. Аналогично нужно было проверить все остальные шрифты, что и было сделано.
Далее мы осознали, что всего для нашего диалога нам требуется три вида шрифта: основной, основной с жирным написанием и заголовок. Соответственно основной шрифт - Segoe UI кегль 9, заголовок - Segoe UI кегль 11. Вот какой вид приняла таблица TextStyle после наших правок:
Описаны всего три шрифта, все три это Segoe UI. Обратите внимание на StyleBits равном 1 (жирное начертание) для двух из них. Также были изменены внутренние названия шрифтов.
Теперь, в связи с тем, что мы изменили внутренние названия шрифтов, необходимо для ВСЕХ управляющих элементов диалогов (Controls) и для текста в диалогах (Text) прописать новые внутренние названия.
Делается это:
- во-первых в таблице Property, где необходимо в строке DefaultUIFont задать в столбце Value внутреннее имя нашего основного шрифта - DialogDefault. Это мы задали шрифт по-умолчанию для всего диалога.
- во-вторых в таблице Control, где необходимо в каждой строке, которая имеет в столбце Text первыми символами, например {&Tahoma8} заменить их на например {&DialogHeading}. Этим мы задаём форматирование конкретно этого текста не шрифтом по-умолчанию, а другим, но также заданным в таблице TextStyle.
- в-третьих в таблице RadioButton, где нужно построчно заменить старые внутренние имена шрифтов на новые по логике, указанной выше.
В принципе, на этом замена собственно шрифтов в диалоге закончена. 
Но тут возникает непредвиденная проблема - все геометрические размеры диалоговых окон, геометрические размеры областей с текстом внутри окон диалога, все расположения контролов внутри окна диалога, жёстко заданы в тех же таблицах. А так как мы изменили и шрифт (который сам по себе чуть больше старого) и кегль шрифта сделали больше, то теперь некоторые слова в диалогах не показываются, они обрезаются по жестко заданным старым границам!
Примечание: кстати, цифры, которыми обозначены размеры диалогов, областей текста, отступы контролов, - это вовсе не пикселы, как я сначала подумал. Это некий стандартный юнит, который равен 1/12 размера шрифта MS Sans Serif с кеглем 10! Я сначала вообще был в шоке от такой забавной привязки. А потом всё же стал разбираться. По сути, это сделано так по очень простой причине: пользователь может масштабировать весь UI в системе на, например, 125%. А так как размер любого шрифта в системе (включая тот самый MS Sans Serif) зависит от DPI, то и диалог наш точно также масштабируется пропорционально.
Возникла дополнительная задача - изменить всю геометрию диалогов так, чтобы все надписи полностью отображались бы.
Всего диалоговых окон в инсталляторе msi LibreOffice 31 штука, включая информационные окна и сообщения об ошибках при установке. ВСЕ из них необходимо предварительно просмотреть, используя возможности Orca. Выберите пункт меню Tools->Dialog Preview, откроется вот такое окно:
Выберите любой диалог из списка (не нужно раскрывать плюсик) и нажмите кнопку Preview. Вам будет показано как выглядит данный диалог при текущих значениях в таблицах.
Соответственно, проверив все диалоги на корректность отображения всей информации на них, приступаем к правке геометрии.
Не забываем, что чтобы корректно отобразить весь текст в диалоге, мы должны увеличить область с текстом и следом размер самого диалога!
Я начал с изменения размеров диалогов. Чтобы не путаться с одновременным изменением и ширины и высоты, я изменю только ширину диалогов. Все основные диалоги инсталлятора имеют одинаковый размер 374 х 266 юнитов. Для простоты подсчета новых размеров я просто добавил 100 юнитов к ширине каждого такого диалога.
Размеры диалогов указаны в таблице Dialog в столбцах Width (ширина) и Height (высота). Соответственно для каждого диалога мы меняем 374 на 474.
Далее нам нужно изменить местоположение и размеры контролов (кнопок, выпадающих списков, радио-кнопок, полей для ввода/отображения данных) и размеры областей с текстом. Все эти цифры находятся в таблице Control. Нам нужны столбцы:
Dialog - внутреннее имя диалогового окна
Control - внутреннее название контрола 
Type - тип контрола (кнопка, выпадающий список, радио-кнопка, поле для ввода/отображения данных, область с текстом)
Х - расстояние от левого края диалога до контрола в юнитах.
Y - расстояние от верхнего края диалога до контрола в юнитах.
Width - ширина контрола в юнитах
Height - высота контрола в юнитах
Text - собственно надпись на контроле. На это поле мы будем глядеть, чтобы понимать, а какой блок мы двигаем на диалоге, иногда это не очень очевидно.
Логика при изменении контролов была такая:
- если мы трогаем кнопки - меняем значение в столбце Х (двигаем кнопку!), просто добавляем 100. Но не для всех кнопок, например Help как была в левой части диалога, так и осталась!
- если мы трогаем область с текстом, выпадающий список или поле для ввода/отображения текста - меняем значение в столбце Width (увеличиваем ширину!), также просто добавляем 100.
После завершения манипуляций для одного диалога - смотрим превью получившегося. Если всё ОК - переходим к следующему.
А теперь самая вишенка. В исходном коде LibreOffice есть абсолютно те же самые таблицы с данными, на основании которых собирается диалог инсталлятора msi. Orca позволяет сделать экспорт получившихся таблиц на диск, в том же самом формате, как и в исходниках LibreOffice. Вспоминаем, какие таблицы мы затронули своими действиями и экспортируем только их.
Это были Control, Dialog, Property, RadioButton, TextStyle. Используйте пункт меню Tables->Export Tables для экспорта таблиц на диск.
Далее можно спокойно формировать патч для LibreOffice, как вам удобно.
ps: кстати, вот, что получилось в итоге (показано одно из диалоговых окон). Слева новый вариант, справа - старый):
pps: после ревью патча выявилось несколько проблем:
- я полностью заменил таблицы Dialog и Control и теперь проблемно отследить в каких строках, что менялось. Попросили исправить. Это чисто оформительская проблема.
- в файлах .idt в исходниках LibreOffice были прописаны идентификаторы текстовых строк, вместо самого текста, как мне показывал Orca. Это сделано для возможности локализации интерфейса. Поэтому тем более нельзя просто весь файл заменить на новый: помимо проблем оформления и читабельности патча это ломает локализацию.
- баннер в верхней части диалога нужно перерисовать, увеличив его длину. На скриншоте выше явно видно, что баннер растянут.
ppps: замечания ревью были исправлены и патч был влит в исходники LibreOffice 27 июня 2019 года. Теперь выявилась другая проблема: диалог доступен на куче языков, а я проверял внешний вид только на английском. Это в принципе нормально, я на это и рассчитывал изначально, что патч будет принят, а затем "возможно" будут какие-то замечания к внешнему виду текста в различных языках. Например, в русском обрезаются палочки и хвостики букв "у", "р", "ф" и тому подобное в некоторых строках. Завтра будет доступен свежий ежедневный билд и каждый сможет поглядеть, как стал выглядеть диалог инсталлера на английском. Исправление проблем с обрезанием текста будем делать после выхода 1 альфа версии 6.4, чтобы люди из разных стран могли протестировать на родных языках инсталлер.

понедельник, 3 июня 2019 г.

Символ валюты ₽ вместо руб. в LibreOffice Calc 6.3

Те, кто используют форматирование числа в виде валюты в LibreOffice Calc знают, что для валюты "Рубль РФ" вместо нужного знака наподобие $ (для доллара) или £ (для фунта стерлингов) используется просто сокращение "руб.".
В LibreOffice Calc 6.3 вместо этого сокращения для всех локалей _RU теперь будет отображаться символ юникода ₽ (U+20BD).
То есть было:
1500 руб.
Станет:
1500 ₽

Расширение Проводника Windows из поставки LibreOffice

В составе дистрибутива LibreOffice для OC Windows имеется такая штука, как "Расширение Проводника Windows". По умолчанию оно выбрано для установки:
Это расширение отвечает за:
- показ миниатюры документа в Проводнике, когда выбрано отображение в виде большого значка
- (внезапно!) поиск внутри документов ODT, ODS средствами Проводника Windows
Я обычно это расширение не устанавливаю, меня миниатюры документов в Проводнике не очень интересуют. А вот поиск внутри документов ODT и ODS меня очень интересует, поэтому теперь я это расширение отключать не буду =)

воскресенье, 2 июня 2019 г.

Выпуск LibreOffice 6.3 beta 1

Для скачивания доступны сборки первой бета версии LibreOffice 6.3. Скачать LibreOffice 6.3. beta 1 можно для всех платформ, в вариантах 32 и 64 бит. Первая бета версия предназначена исключительно для целей тестирования. Однако, никто не мешает вам установить эту версию параллельно существующей и просто оценить изменения и различные новшества. 
Ссылки для скачивания:
Исходный код
Обратите внимание! С выпуска 6.3 The Document Foundation не предоставляет Linux сборки LibreOffice для 32 битных систем! Это не означает, что вы сами не сможете собрать LibreOffice для 32 битной ОС из исходного кода. TDF просто вынужден экономить свои к сожалению не бесконечные ресурсы.

среда, 22 мая 2019 г.

Удаление поддержки тем Firefox из LibreOffice 6.3

В связи с тем, что Mozilla изменили свое API для доступа к темам Firefox, было принято решение удалить поддержку тем Firefox в LibreOffice 6.3. В дальнейшем будут реализованы собственные темы LibreOffice, возможно даже с некой настройкой или возможностью создания тем прямо в LibreOffice (там сложного-то ничего нет).

пятница, 17 мая 2019 г.

Выпуск LibreOffice 6.3 alpha 1

Для скачивания доступны сборки альфа версии LibreOffice 6.3. Скачать LibreOffice 6.3.alpha 1 можно для всех платформ, в вариантах 32 и 64 бит. Альфа версия предназначена исключительно для целей тестирования. Однако, никто не мешает вам установить эту версию параллельно существующей и просто оценить изменения и различные новшества. 
Ссылки для скачивания:
Исходный код
Обратите внимание! С выпуска 6.3 The Document Foundation не предоставляет Linux сборки LibreOffice для 32 битных систем! Это не означает, что вы сами не сможете собрать LibreOffice для 32 битной ОС из исходного кода. TDF просто вынужден экономить свои к сожалению не бесконечные ресурсы.

вторник, 7 мая 2019 г.

Отчет QA в LibreOffice за апрель 2019

Xisco Fauli, QA инженер из The Document Foundation опубликовал ежемесячный отчет о работе QA в апреле 2019 года. По ссылке доступно много самой разной информации.
Немного о самом главном в апреле:
Подано отчетов об ошибках - 580
Обработано отчетов - 585
Это значит, что всем поступившим отчетам было уделено время QA команды и отчеты были проверены, рассортированы и, при необходимости, найдены причины регрессий.
Закрыто (по разным причинам) - 520
В отчёте Xisco сделал прекрасную диаграмму, иллюстрирующую эти самые причины:
Немного поясню:
FIXED - это ошибки, которые были явно исправлены разработчиками, и в отчете есть прямая ссылка на патч.
WONTFIX - это ошибки, которые либо вовсе не ошибки, либо предложения, которые были отвергнуты разработчиками по обоснованным причинам
DUPLICATE - это ошибки, по которым уже есть информация в багзилле.
WORKSFORME - обычно это старая ошибка, которая в текущей версии LibreOffice не воспроизводится. Значит, кто-то что-то где-то исправил, ошибка не воспроизводится сейчас, а кто и что исправил мы не знаем и ставим такой статус.
INVALID - некорректный отчет об ошибке или вообще спам (к сожалению такое тоже есть)
NOTABUG - это когда кто-то не разобравшись в функционале LibreOffice, пишет отчет об ошибке, а оказалось, что такое поведение программы - это так и задумано.
Таким образом мои стенания по поводу того, что подается ошибок в три раза больше, чем исправляется оказались в корне не верны. Да, в апреле соотношение 580 против 520, но это далеко не трагедия для такого огромного проекта, как LibreOffice.
Трагедия для него то, что до сих пор есть десятки причин для того, чтобы LibreOffice упал с критической ошибкой =( В отчете исправлению крэшей посвящен отдельный раздел. Хорошо, что крэши исправляют, плохо, что они вообще возникают в таком количестве.

GSoC 2019 и LibreOffice. Объявлено о проектах

Итак, определились студенты и проекты, над которыми они будут трудиться в рамках GSoC 2019, для LibreOffice. Студентов для LibreOffice в этом году утвердили всего шесть человек.
Вот наши герои:
Shubham Goyal - проект направлен ​​на интеграцию библиотеки для создания QR-кода с LibreOffice и добавления опций для использования QR-кода в приложениях LibreOffice. QR-код будет генерироваться для текста, URL-адреса или даже для специальных символов (UTF), изображение QR-кода будет в формате SVG.
Kaishu Sahu - проект направлен на улучшение онлайн-реализации LibreOffice на Android путем добавления новых функций в средство просмотра документов, исправления наиболее неприятных ошибок и общего улучшения пользовательского интерфейса.
Rasmus Jonsson - будет делать непонятно что, какой-то программно-аппаратный комплекс для презентаций на основе LibreOffice. По описанию мне лично ничего не понятно. Вот более подробно о его цели.
Ahmed Elshreif - проект нацелен на улучшение автоматической системы тестирования UI в LibreOffice.
Sumit Chauhan - целью проекта является улучшение UI/UX в Notebookbar. Задача в основном разделена на две части: создание базовой поддержки расширений и реализацию функции настройки для всех вариантов Notebookbar. Помимо этого студент намерен исправить некоторые проблемы/баги.
Gagandeep Singh - реализация стилей диаграмм. Планируется сначала реализовать стили на логическом уровне в модуле chart2, а затем разрешить импорт и экспорт стиля диаграммы в локально сохраненный файл и из него. Кроме того, список для выбора стиля диаграммы должен быть добавлен на Боковую панель.

понедельник, 6 мая 2019 г.

Настройка цветов для записи изменений в документе

В LibreOffice Writer есть режим отслеживания изменений в документе, который позволяет отследить правки, внесенные в документ разными авторами, принимать или отклонять изменения и так далее. Активируется он из меню Правка->Отслеживать изменения->Записывать или из соответствующей панели инструментов.
В результате работы этого механизма мы увидим такое:
Обратите внимание на цвет изменений. По умолчанию он одинаковый для добавленных и удалённых фрагментов! Да ещё и сам цвет крайне неудачный по умолчанию. В MS Word цвет таких изменений по умолчанию красный, что, на мой взгляд, гораздо больше бросается в глаза.
Оказывается, в LibreOffice этот цвет зависит от автора изменений. Если документ редактируют несколько разных человек, то их правки будут выделены разными цветами. Может это и удобно в таком случае (но не отменяет ужасного выбора цвета по умолчанию).
Однако, если вы работаете с документом в одиночку, то может быть удобным задать другой цвет для изменений, а ещё лучше два разных цвета: отдельный для удаленных фрагментов и отдельный для добавляемых. И так сделать можно.
Открываем диалог Сервис->Параметры и слева раскрываем список LibreOffice Writer->Изменения:
Здесь можно настроить цвета и атрибуты для изменённых фрагментов. В качестве примера можно задать синий цвет для добавляемых фрагментов, а красный - для удаляемых.
В тексте получится вот такой (гораздо более приятный глазу и удобный) вид:

понедельник, 22 апреля 2019 г.

Автоматическая нумерация страниц в LibreOffice Draw

Иногда бывает, что документ с рисунками в LibreOffice Draw содержит несколько листов. И нужно эти листы пронумеровать в автоматическом режиме, примерно так же, как в текстовом документе.
Делается это так:
1. Выбираем режим Мастера, меню Вид->Мастер. В этом режиме все добавленные на лист объекты будут отображаться на всех листах документа и редактировать их можно только в режиме Мастера.
2. Добавляем номер страницы, меню Вставка->Поле->Номер страницы, размещаем появившийся текстовый блок с надписью <номер> в нужное место на листе
3. Переключаемся обратно в нормальный режим, меню Вид->Обычный.
Теперь можно добавлять, удалять, перемещать листы в документе, нумерация всегда будет последовательной. Всё, пользуйтесь.
Внимание! Блок с номером страницы должен быть обязательно внутри границ листа! На полях номер по какой-то причине в Обычном режиме не отображается.

воскресенье, 21 апреля 2019 г.

Выпуск LibreOffice 6.2.3

The Document Foundation объявил о выпуске LibreOffice 6.2.3. Это третий корректирующий выпуск в ветке 6.2.
Информацию об исправленных ошибках можно найти по ссылкам:
Скачать можно по ссылке:
Скачать образ Docker для установки LibreOffice Online можно по ссылке:
Всем, кто уже использует LibreOffice 6.2 крайне советую обновиться.
Внимание пользователей ОС Windows!
В выпуске LibreOffice 6.2.3 есть небольшая регрессия, которая делает процесс установки версии 6.2.3 невозможным. Для решения проблемы вы должны остановить службу Windows Update (Центр обновления Windows) до начала установки LibreOffice. Откройте меню Пуск, далее Найти, вбиваете в строку Службы. Откроется вот такое окно
 Щёлкаете правой кнопкой мыши по выделенной строке и выбираете пункт контекстного меню Остановить службу.

пятница, 5 апреля 2019 г.

Разработка LibreOffice. Изменение имён стилей маркированных списков в боковой панели Writer

В своё время Yousuf Philips изменил в LibreOffice Writer стили нумерованных списков и заодно изменил на более понятные имена для стилей нумерованных списков, которые показываются в боковой панели Writer. Имена нумерованных стилей стали вида "Numbering 123", "Numbering abc", "Numbering IVX". То есть теперь явно видно, какой тип нумерации будет использован при выборе стиля. 
Однако стили маркированных списков остались без изменений и со стандартными именами типа "List 1", "List 2", и так далее по пятый. В русской локализации был перевод "Маркированный список 1", "Маркированный список 2", который все равно не позволял видеть сразу, какой именно маркер будет использован при выборе стиля.
Стукнуло мне в голову, что и стили маркированных списков должны бы иметь название с отображением символа, который используется в качестве маркера в создаваемом списке.
Я завёл запрос на улучшение в багзиллу проекта и сделал соответствующее изменение в исходный код проекта.
Вот что получилось в итоге (слева - до изменения, справа - после):
Во-первых само имя стало указывать, что это маркированный список, во-вторых имя теперь содержит соответствующий маркер.
Изменение войдет в будущий выпуск LibreOffice 6.3.

Update: к сожалению в реализации этой фичи выявились проблемы. LibreOffice берет символ Unicode (который справа от слова Bullet) вовсе не обязательно из шрифта OpenSymbol, а по какой-то другой логике и, в результате, может оказаться так, что в используемом для GUI шрифте данный символ отсутствует и получается элемент маркированного списка без показа самомго маркера.
Мнения по поводу того, оставлять ли такую текущую реализацию, доработать механизм или откатить изменения пока не принято. Из того, что я услышал от разработчиков, я понял, что сам не осилю доработать механизм. Посмотрим.

четверг, 21 марта 2019 г.

Компания BaseAlt присоединилась к разработке LibreOffice

Меня очень радует, что компании из России начинают участвовать в разработке LibreOffice. Первой ласточкой стала компания BaseAlt, разработчик Linux дистрибутивов Альт (Рабочая станция, Сервер, Образование). Участие этой компании в проекте LibreOffice выражается в том, что программист из BaseAlt пишет код в проект и QA инженер занимается тестированием LibreOffice. В данный момент их усилия направлены на исправление ошибок в новом LibreOffice бэкенде vcl:kde5, поскольку в дистрибутивах Альт один из основных DE - это именно KDE.
Хотелось бы надеяться, что и другие компании - разработчики отечественных Linux дистрибутивов или какого-либо офисного программного обеспечения также захотят принять прямое участие в разработке LibreOffice.

Выпуск LibreOffice 6.2.2

The Document Foundation объявил о выпуске LibreOffice 6.2.2. Это второй корректирующий выпуск в ветке 6.2.
Информацию об исправленных ошибках можно найти по ссылкам:
Скачать можно по ссылке:
Скачать образ Docker для установки LibreOffice Online можно по ссылке:
Всем, кто уже использует LibreOffice 6.2 крайне советую обновиться.

среда, 20 марта 2019 г.

Диаграммы в LibreOffice Writer

В текстовый документ Writer можно вставить диаграмму, абсолютно такую же, как можно создать в электронных таблицах Calc. Доступны те же самые типы диаграмм.
Вставить диаграмму можно, используя меню Вставка > Диаграмма или соответствующий значок на панели инструментов.
А теперь тонкость! В зависимости от того, где находится текстовый курсор в этот момент, диаграмма в текстовый документ вставляется различными способами!
Способ №1 - курсор находится просто в тексте. При вставке диаграммы, сразу вставляется просто диаграмма по умолчанию, и вы при этом будете находиться в режиме редактирования диаграммы. Диаграмма вот такого вида:
Заметьте, что это диаграмма, построенная на каких-то произвольных данных, предопределенных внутри LibreOffice. А следовательно, далее необходимо будет внутри не очень-то удобного интерфейса настройки диаграммы вводить свои данные.
Способ №2 - у вас уже есть в документе таблица с данными, на основании которых нужно построить диаграмму. Вы можете её использовать для построения диаграммы прямо в Writer, не копируя данные в Calc, а затем диаграмму обратно в Writer. Просто установите курсор в любую ячейку таблицы с данными и вставьте диаграмму любым из описанных выше способов.
Откроется Мастер диаграмм, аналогичный такому в Calc, в котором на шаге два уже будет прописан Диапазон данных:
Примечание: обратите внимание, имя таблицы в данном случае стандартное Table 1. Однако, если в документе таблиц много и диаграмм по ним строится тоже много, то лучше в свойствах таблицы давать им осмысленные имена. Тогда в поле Диапазон данных будет указываться имя таблицы, заданное вами.
Во втором способе создания диаграмм есть ещё одна прелесть: если вы измените числа в таблице, то диаграмма сама перестроится, как только курсор будет установлен в любое место вне таблицы.
Внимание! В версии LibreOffice 5.3 этот механизм автообновления диаграммы сломали и сейчас чтобы обновить диаграмму, нужно по ней щёлкнуть дважды мышкой, чтобы перейти в режим редактирования, а затем щелкнуть по документу вне диаграммы, что бы из этого режима выйти. Диаграмма обновится.
И ещё тонкость, диаграмма по второму способу создаётся над выбранной таблицей. Однако её можно вырезать и вставить, куда надо. Связь диаграммы с таблицей сохранится:
К слову, MS Word так не умеет (я про способ №2), там диаграмма вставляется исключительно через хитрое использование механизмов Excel.

четверг, 14 марта 2019 г.

Отчёт QA в LibreOffice за февраль 2019 года

Xisco Fauli, QA инженер из The Document Foundation опубликовал ежемесячный QA отчёт по LibreOffice. По ссылке много интересного инфо. Как я уже ранее писал, ежемесячно отчётов об ошибках подается в три раза больше, чем ошибок исправляется.
А ещё я полистал QA отчёты, начиная с августа 2018 года по последний, и сделал вот такую диаграмку простую:
Все просто, синее - количество добавленных отчётов об ошибках, оранжевое - количество ошибок исправленных. Как говорится, печальная статистика налицо.
Единственно, стоит заметить, что эта картинка не совсем честная. Здесь никак не выделены дубликаты существующих ошибок, не выделены запросы на улучшение, а к исправленным ошибкам не прибавлены отчёты со статусом WORKSFORME - это такая ситуация, что ошибка сейчас не воспроизводится, но кто конкретно это исправил не известно.
Xisco обещал со следующего месяца добавить соответствующую информацию и картинка будет более корректная.

среда, 6 марта 2019 г.

Выпуск LibreOffice 6.2.1

The Documents Foundation объявил о первом корректирующем выпуске LibreOffice 6.2.1. 
В данном выпуске были исправлены некоторые ошибки. 
Скачать можно по ссылке https://www.libreoffice.org/download/
Данный выпуск не предназначен для использования на предприятиях!

суббота, 2 марта 2019 г.

Шаблоны для презентаций Impress

При создании нового файла презентации в Impress вам сразу предлагают на выбор несколько встроенных в LibreOffice шаблонов. Однако их достаточно мало. Сегодня я увидел ссылку на огромную коллекцию шаблонов презентаций для Impress. Вот она https://dohliam.github.io/libreoffice-impress-templates/
Просто выбираете понравившийся шаблон и щёлкаете по нему. Вам предложат скачать архив, качайте, распаковывайте и там будет несколько файлов в формате .OTP - это как раз шаблоны презентаций.

четверг, 28 февраля 2019 г.

GSoC 2019 и LibreOffice. Начало

Google в очередной раз объявил о проведении ежегодного мероприятия Google Summer of Code. Кратко - Google заплатит немного денег (3000 долларов США для студентов из России) за то, что студент напишет немного кода в открытые проекты за 3 летних месяца.
LibreOffice участвует в программе и в этом году.
Вот список идей для реализации на этот год https://wiki.documentfoundation.org/Development/GSoC/Ideas
Для того, чтобы заработать немного денег и помочь открытому проекту (и себе в будущем), студент должен:
Знать С++, Python, JS, Java. Задач на С++ подавляющее большинство. Уровень в программировании должен быть не нулевой! Вы уже должны уметь кодить!
Сделать пару изи хаков в проекте https://wiki.documentfoundation.org/Development/EasyHacks
Выбрать себе задачу по вкусу и связаться с потенциальным ментором из проекта
Подать заявку в Google, если его все устраивает и ментор его принял
Кодить все лето на благо себя и проекта
Замержить код в кодовую базу проекта (но тут возможны варианты по согласованию с ментором)
Сделать отчет для гугла.
Удачи!

среда, 20 февраля 2019 г.

Повторение заголовка таблицы Writer на каждом листе, если заголовок находится не в первой строке таблицы

Задача - получить вот такую таблицу с повторяющимся заголовком на каждой странице. При этом повторяющийся заголовок находится не в первой строке таблицы:
Стандартными средствами из диалога "Свойства таблицы" этого не сделать, потому что доступна только опция "Повторять заголовок Первые N строки":
Нельзя выбрать вариант "Повторять вторую (третью, пятую, etc.) строку".
Как же получить результат, который показан на первой иллюстрации?
Сделать ДВЕ таблицы, с одинаковым количеством столбцов и их шириной. В первую таблицу вынести не повторяющийся заголовок (можно создать первую таблицу и затем просто скопировать ее через пустой абзац ниже для полной идентичности):

Затем в свойствах нижней таблицы установить указанную выше опцию "Повторять заголовок Первые 1 строки" (в данном случае нам нужно повторять одну строку).
Затем просто удаляем пустой абзац между первой и второй таблицей и они выглядят, как одно целое.
Спасибо Александру Полховскому за такой вот лайвхак.

четверг, 14 февраля 2019 г.

Разработка LibreOffice. Установка Glade в ОС Windows

Давно я хотел заполучить Glade в Windows. Бывает нужно по быстрому глянуть на диалог с минимальной правкой, а нужно ребутиться в Линукс. Не очень удобно.
Отдельной сборки Glade 3.22.1 от самих гномо-разработчиков для ОС Windows нету. Но есть способ таки получить его.
Внимание! MSYS2 и команды в терминале использовались для 64 битной ОС Windows!
  • Устанавливаем MSYS2
  • Запускаем оболочку MSYS2 (выглядит, как терминал, коим по сути и является)
  • Даём команду pacman -S mingw-w64-x86_64-gtk3
  • Даём команду pacman -S mingw-w64-x86_64-glade
  • И ищем исполняемый файл Glade по адресу (если сам MSYS2 установлен в каталог по умолчанию) - C:\msys64\mingw64\bin\Glade.exe
  • Делаем на исполняемый файл ярлык, чтобы каждый раз не лазить по каталогам и вуаля.

Места это всё будет занимать где-то 850 мегабайт, учитывайте.

вторник, 12 февраля 2019 г.

Нужно ли обучать пользователей работе в офисных пакетах?

Философский вопрос, правда? Я не хочу затрагивать тему, какому именно офисному пакету  из существующих сегодня надо (или не надо) учить, это больная тема, но вот сама идея необходимости обучения такой простой штуке, как офис. "Чего там сложного-то?" и "Чему там учить? Тексты набирать?". Знакомо?
Абсолютное и подавляющее большинство работодателей в России вам скажут, что нет, офисным приложениям учить не надо! Ибо там всё просто и вообще в школах этому учат. А вот в требованиях к кандидату на работу обязательное знание офисного пакета установить надо! А то ишь, неучи, приходят тут, а сами даже не могут выборку сделать из криво кем-то сделанной таблицы!
То, что сегодня офисные пакеты - это огромные комбайны, работе в которых таки надо нормально учиться, это в голову работодателям не приходит. Ну вернее приходит, но "Вы сами там осваивайте, как хотите, нам нужны профессионалы".
При этом в современном школьном курсе таки присутствует обучение офису. Однако этот процесс (опять же не оглядываясь на конкретный продукт, которому учат) выстроен так, что школьник запоминает (если запоминает вообще) порядок нажатия на кнопки, а вовсе не логику и смысл работы в тех же электронных таблиц.
Мое мнение, что обучать офису надо и начинать надо именно со школы, просто программу надо изменить.
А вот работодателям надо бы понять, что взрослого человека, работника, ТОЖЕ нужно обучать работе в офисном пакете, если работодателю внезапно потребовались какие-то вещи от работника, которые тот (пока) не знает. Или, например, специалист хороший, нужный, но в работе с офисом у него беда. И заказать работнику расширенный курс по электронным таблицам - это не ох и ах, "дополнительные расходы, пусть он сам учит, если хочет у нас работать", а нормальная практика.
Ну и конечно же, вероятно, что бульдозеристу или сварщику 6 разряда (кстати, хороший бульдозерист или сварщик нынче редкость) знание офисного пакета может и ни к чему, однако этот бульдозерист может захотеть дома вести семейный бюджет, например, а сварщик захочет вести учет своей выработки и количество потраченных электродов, чтобы потом ругаться с нечистым на руку мастером.
А вы что думаете по этому поводу? Если будете писать комментарий, не поленитесь указать вашу область деятельности и "уровень компетенций" (рядовой сотрудник, нач.отдела, руководитель организации).

Простые правила создания хороших электронных таблиц

Глядя на документы - электронные таблицы, которые мне присылают по работе, и работая с несколькими таблицами, которые были созданы в нашей организации лет пять назад и с тех пор не менялись ни разу, я понял для себя, что люди, создавая таблицы, просто не думают о том, а что же будет с ними дальше.
В качестве примера: большое количество объединенных ячеек, сложно составленные заголовки опять же с использованием объединения ячеек, таблицы, которые начинаются не с адреса А1, а с G45 (O_o), отформатированные насквозь строки и столбцы (когда нужно всего 10х10 ячеек), таблицы с данными не отделены от финальных сводных отчетов, задана группировка диапазонов, в которых находятся вообще не нужные данные, вместо удаления таких данных. Можно бесконечно продолжать.
Мало того, что людей не учат тому, как чисто технически работать с электронными таблицами: народ не знает, как быстро переходить в последнюю ячейку с данными, что можно единственным двойным щелчком мыши протянуть формулу на весь диапазон из 100000 строк, что такое условное форматирование и сводные таблицы, что можно использовать диаграммы, что есть понятие формата числа в ячейке. Опять же тут тоже можно продолжать долго.
Людей не учат и эргономике и логике работы с большими таблицами, с данными, которые впоследствии необходимо будет как-либо анализировать или обрабатывать. Причем анализ и обработку не обязательно будет делать сам создатель или заполнитель таблицы.

Итак, хорошая электронная таблица/лист с исходными данными:
  • Начинается с ячейки А1, а не с А340 или G43
  • Имеет отдельный столбец для каждого типа данных (например, номер договора и дата договора должны быть в разных столбцах, дата начала работы и дата окончания работы - тоже в разных столбцах)
  • Имеет в заголовке каждого столбца краткое и "говорящее" название
  • Имеет шапку/заголовок таблицы в ОДНОЙ строке БЕЗ объединенных ячеек

А в целом файл с электронными таблицами имеет:
  • Отдельные листы с исходными Данными и отдельные для Расчетов или/и Отчетов
  • Формулы в ячейках, не содержащие внутри себя явно заданные значения (например, формула =А1+12 содержит константу 12)
  • Комментарии для сложных формул, что именно и как именно считает формула, на отдельном листе
  • Минимальную цветовую раскраску ячеек, а общая цветовая гамма должна позволять комфортно работать с данными. Это вопрос здоровья самого пользователя, заменять глаза людям на новые человечество ещё не научилось
  • Условное форматирование только для тех ячеек, где действительно необходимо
  • И не имеет сквозного форматирования целых строк или столбцов

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

пятница, 8 февраля 2019 г.

Выпуск LibreOffice 6.2

The Document Foundation объявил о выпуске LibreOffice 6.2. 
В новом выпуске:

Writer

Улучшена производительность в режиме отображения правок в документе 
Прямая вставка таблиц из Calc в существующую таблицу Writer
Переработан механизм изменения/подгонки размеров строк/столбцов в таблицах Writer
Всплывающее меню на листе для вставки колонтитулов теперь можно отключить
При сохранении в формат .txt теперь можно задать кодировку и тип конца строки (например, UTF-8 с CR)
LibreLogo получил некоторые внутренние улучшения

Calc

Механизм "Проверка данных" теперь поддерживает пользовательские формулы
Доступен многомерный регрессионный анализ (диалог Данные->Статистика->Регрессия)
Добавлена новая функция REGEX
Изменено поведение функций LARGE и SMALL

Impress/Draw

Исправлены некоторые проблемы с анимациями
Действия над таблицами Минимизировать и Оптимизировать теперь аналогичны таковым для таблиц Writer
В Draw в меню "Формат" добавлено подменю "Таблицы"
Исправлены некоторые ошибки в управлении слоями в Draw

Base

Создание баз данных в формате Firebird выведено из экспериментального режима и предлагается теперь по умолчанию
Помощник по миграции баз данных из старого формата в Firebird теперь создает резервную копию до начала миграции данных
MySQL C ++ Connector заменён на MariaDB C Connector под лицензией LGPL.

Диаграммы

Удалена неработающая и неиспользуемая функция сохранения в формат ODC

Basic

В библиотеку basic Access2Base добавлена полная поддержка Firebird RDBMS

Общие/Ядро

Улучшения в строке для подписи, наименовании фреймов и отправке документов электронной почтой в формате OOXML
В поставку добавлен шрифт Source Serif Pro
Обновлены шрифты семейства Liberation

Справка

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

Фильтры

Улучшена поддержка векторного формата EMF+ (используется в форматах документов МС Офиса)
Улучшена поддержка диаграмм из формата OOXML
Множественные улучшения в поддержке форматов PPT/PPTX
Улучшена поддержка современного шифрования документов в формате OOXML (docx, xlsx, etc)

Интерфейс пользователя

Выведены из экспериментального режима новые варианты интерфейса на основе вкладок и лент (доступны из меню Вид->Пользовательский интерфейс->...)
Стандартные панели инструментов стали выглядеть одинаково во всех модулях
Доступны для использования значки в формате SVG (темы Breeze, Colibre, Elementary)
Были значительно доработаны темы значков Karasa Jaga, Elementary, Colibre
Исправили механизм персонализация для применения тем оформления Firefox в LibreOffice. Однако за день до релиза LibreOffice Mozilla Corp. изменили или сломали API для доступа к темам и теперь это опять не работает, как должно бы.
Контекстные меню во всех модулях были обновлены для более полного соответствия

LibreOffice Online

Онлайн версия получила многочисленные улучшения и оптимизации, включая поддержку HiDPI экранов

Локализация

Обновлены словари для проверки орфографии для бретонского, английского, французского, галицийского, индонезийского, норвежского, словенского, испанского, турецкого языков.

Устаревшие возможности/функционал

Бэкэенды vcl KDE4 и vcl GTK2 объявлены устаревшими и будут удалены в следующих версиях

Платформы

Версия LibreOffice 6.2 требует macOS версии 10.9
Бинарные 32-битные сборки LibreOffice для платформы Linux в последующих выпусках предоставляться не будут. Это не значит, что нельзя будет скомпилровать LibreOffice из исходного кода для 32-битной системы. Просто TDF не будет делать этого сам.
Добавлены два новых бэкэнда vcl qt5 и vcl kde5 

Android Viewer

Версия для Android получила несколько новых возможностей и исправлений ошибок

Более подробно обо всех изменениях можно прочесть на странице 

вторник, 29 января 2019 г.

Разработка LibreOffice. Локализация интерфейса пользователя и справки

В настоящее время процесс локализации интерфейса пользователя LibreOffice на русский язык выглядит следующим образом:
Заходим на сайт https://translations.documentfoundation.org/
Нажимаем большую зелёную кнопку "Войти" и видим:
Если аккаунт уже есть, то вводим логин/пароль и входим, если нет, то жмём ссылку "Зарегистрироваться, как новый пользователь", появится следующее окно:
в котором нужно придумать себе логин (Имя пользователя), ввести адрес вашей работающей электронной почты, задать пароль, повторить пароль, установить галочку/флажок у опции (метка которой почему-то не локализована) "I agree to the privecy policy" и нажать кнопку "Зарегистрировать".
Далее вам покажут следующее окно (адрес почты конечно будет вашим):
Идем в почту, переходим по ссылке из полученного письма, чтобы подтвердить адрес почты и регистрацию.
Далее просто в первом окне вводим ваш логин и пароль и попадаем на собственно сайт:
Я зашел под своей учеткой, и у меня сразу выбран целевой язык "Russian". У вас язык может быть задан, как "Все языки". В этом случае щёлкните по этим словам и во всплывающем окне введите в единственное поле Russian и выберите его.
Обратите внимание на разноцветные строки с вполне говорящими названиями типа LibreOffice 6.2 - UI или LibreOffice 6.2 - Help. Это соответственно переводы интерфейса пользователя и справки. Числа справа по столбцам подписаны и это количество:
красное - критические (ошибки)
коричневое - предложения по переводам, которые ждут подтверждения от людей с правами подтверждать переводы
синее - не завершённые переводы (термины и предложения).
Справка сегодня находится просто в невменяемом состоянии. Кто захочет помочь с переводами - вери велкам, что называется.
На сегодня нас интересует перевод UI в версиях 6.2 и в master (это будущий 6.3 на сегодня).
В строке LibreOffice 6.2 - UI щёлкаем по числу на синем фоне "Не завершено" и попадаем непосредственно в интерфейс перевода:
По середине у вас будет большое поле для ввода перевода, над которым располагается непосредственно термин или фраза, которая перевода требует. Старайтесь переводить максимально понятно и максимально КОРОТКО.
В левой части при этом есть подсказка, какой именно термин и, где именно в исходном коде, переводится (а мы переводим по сути метки, которые заданы именно в исходном коде LibreOffice). Человеку, ориентирующемуся в исходниках LibreOffice - это реально может помочь понять контекст для более корректного перевода.
Справа от поля для ввода перевода находятся две связанные кнопки "Зафиксировать"<->"Предложить". У вас будет доступна для работы только "Предложить", которую и нужно нажимать после ввода перевода. После этого фрагмент перейдет в коричневый статус "Предложения переводов", нажав на которые люди с правами смогут подтвердить или исправить ваш перевод. Так что не бойтесь ничего испортить, вам просто не дадут ;-)
После нажатия кнопки "Предложить" система автоматически предложит вам следующий требующий перевода термин/фразу.
Также в правом верхнем углу показывается число оставшихся фрагментов для перевода и стрелки возле них "Вверх" и "Вниз". Нажимая на стрелки, можно пропускать фрагменты, если не знаете, как перевести.
Вернуться к списку проектов можно, нажав на синюю ссылку "Вернуться к просмотру".
Обратите внимание, что пока названия emoji мы не локализуем! В левой части, если видите такое слово, то термин просто пропускайте.
Это собственно всё! Каждый может зайти и предложить свой перевод! Спасибо заранее всем, кто захочет сделать LibreOffice лучше.

ps: в принципе, даже если система будет показывать, что все возможные фрагменты переведены, LibreOffice всё равно может оказаться без каких-то переведённых терминов. Но, это уже, либо отсутствие ID у термина, либо сбой слияния перевода при подготовке билда. Это явно не проблемы самого перевода, но сообщить о таком всё равно надо.

суббота, 12 января 2019 г.

LibreOffice принимает теперь донаты и в криптовалюте

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

пятница, 4 января 2019 г.

Отчёт LibreOffice QA за декабрь 2018 года

TDF QA инженер Xisco Fauli опубликовал ежемесячный отчет о работе QA в проекте LibreOffice за декабрь 2018 года. По ссылке много разной информации и цифр.
Я обращу ваше внимание на две весьма показательные цифры из всего отчёта:
Подано отчетов об ошибках в декабре - 560.
Исправлено ошибок в декабре - 150.
Я не буду искать и вникать в то, насколько критичные ошибки были поданы в декабре и насколько критичные ошибки были исправлены в декабре. Вдумайтесь только в их количественное соотношение! Более чем в 3,5 раза ошибок новых заведено, чем было исправлено. И такое соотношение оно не только в декабре было. Оно ежемесячно сохраняется.
Это говорит об очень простой вещи. Проекту не хватает кодеров. Причем кодеров любого уровня и с самыми разными талантами.
Так что, если вы используете LibreOffice дома (абсолютно бесплатно) или на работе (опять же бесплатно, по своей воле или вам его навязал работодатель, который его с 99% вероятностью не купил), то вы легко сможете отблагодарить проект:
Персонально вы - можете найти программиста среди своих друзей или на просторах интернета, который за бутылку пива, хороший кофе, просто спасибо или некое вознаграждение исправит пару ошибок в LibreOffice.
Ваш работодатель - может сделать абсолютно то же самое. А может завести постоянную хорошую практику - платить какие-то деньги штатному/наемному программисту за исправление ошибок в LibreOffice, которые мешают именно его работникам.
О том, как зайти в проект и начать исправлять ошибки написано вот тут https://wiki.documentfoundation.org/Development и здесь https://wiki.documentfoundation.org/Development/GetInvolved

среда, 2 января 2019 г.

Макросы на Python в LibreOffice

Не все знают, что в LibreOffice можно использовать Python для написания макросов вместо Basic. Преимуществом будет в разы бОльшая производительность макроса. Недостатком - невозможность нормального написания и отладки макроса в IDE, встроенной в LibreOffice.
Самое первое, что нужно сделать, если вы захотите использовать Python для написания своих макросов (помимо знания самого Python'a) - это установить расширение APSO для возможности нормально управлять макросами, написанными на Python.
Второе - осилить вот эти статьи (на английском, к сожалению) и все ссылки с них на другие статьи: https://wiki.documentfoundation.org/Macros/Design_Guide, https://wiki.openoffice.org/wiki/Python.
Ах да, учитывайте, что LibreOffice таскает в своей поставке свой Python, уж не знаю какой версии. Однако, есть возможность использовать и внешний Python. Другое дело, что в этом случае будет возможность напороться на то, что ваш макрос на другом компьютере работать не будет из-за несовместимостей в версиях Python (я про 2.7 vs. 3.x).
По-хорошему, следовало бы развивать эту замечательную возможность в LibreOffice, начиная от приведения во вменяемый вид диалогов управления и организации макросов и внедрением в базовую поставку какой-нить простенькой IDE для Python, и заканчивая написанием полного хорошего руководства по написанию макросов на Python. Однако, к сожалению и как всегда, этим просто некому заниматься =(.
Update: иностранные товарищи подсказали мне, что внезапно они пишут справку по макросам на Python. Вот ссылка https://help.libreoffice.org/6.3/en-US/text/sbasic/python/main0000.html.