четверг, 31 октября 2019 г.

Выпуск LibreOffice 6.3.3

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

среда, 30 октября 2019 г.

LibreOffice и GSoC 2019. Результаты.

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

понедельник, 28 октября 2019 г.

Вставка таблицы из Calc в Writer

Как пользователи вставляют ячейки, скопированные из MS Excel в MS Word? Просто жмут кнопку "Вставить" и вставляется родная для Word таблица.
Как делают то же самое пользователи LibreOffice для Calc и Writer? Копируют ячейки в Calc и в Writer выбирают "Вставить как..." и затем в отдельном! диалоге выбирают "Форматированный как RTF". Не очень очевидно. При этом, если просто нажать кнопку "Вставить", то в Writer вставится не нативная таблица, а OLE объект с таблицей Calc внутри.
В LibreOffice 6.4 наконец-то изменили поведение при вставке данных для этого случая. Теперь можно просто нажать "Вставить" и по умолчанию будет вставлена нативная таблица Writer. По сути разработчики просто задали для этого случая вставку "Форматированный как RTF" вариантом по умолчанию.
Однако всё равно осталась проблема. При таком варианте вставки в Writer ячейки Calc теряют свое форматирование. Это какая-то ошибка, ну вернее даже не какая-то, а вполне определенная.
И чтобы обойти этот казус и сохранить форматирование ячеек, нужно по прежнему выбирать "Вставить как..." и в диалоге выбрать вариант "HTML". Тогда вставится нативная таблица Writer, которая сохранит все исходное форматирование.
Я предлагал разработчикам сделать этот вариант с HTML вариантом по умолчанию, потому что на мой взгляд он рабочий прямо сейчас, а ошибку с RTF ещё надо кому-то исправить, ответа не получил.

воскресенье, 20 октября 2019 г.

Экспорт всего листа Calc в один большой лист PDF

Muhammet Kara, разработчик LibreOffice из компании Collabora, добавил опцию для экспорта всего, что есть на листе Calc, в один большой лист в формате PDF.
Несколько картинок, в качестве иллюстрации:
Лист в Calc с кучей всего.
Вывод в обычный PDF документ, разбитый на листы в формате А4.
Результат вывода всего листа Calc на один лист PDF.
Я так понял, размер листа PDF вообще не ограничен в данном случае. LibreOffice в принципе имеет там какие-то умозрительные ограничения листа, типа 3 х 3 метра, по-моему.
Конечно такой PDF не предназначен для печати, однако даже А0 никто вам не запретит напечатать на плоттере, так что такая функциональность внезапно и может быть востребована.

четверг, 17 октября 2019 г.

Выпуск LibreOffice 6.2.8

The Document Foundation объявил о выпуске LibreOffice 6.2.8. Это последний релиз в ветке 6.2. Скачать его можно по ссылке https://www.libreoffice.org/download/
Изменения относительно предыдущего выпуска 6.2.7:
Всем, кто использует LibreOffice 6.2, я бы советовал обновиться.

вторник, 15 октября 2019 г.

Тонкости bibisect в среде Windows. Git for Windows vs. Git from Cygwin

Если вы вдруг захотели выполнить поиск коммита, который внес регрессию в LibreOffice, используя bibisect в среде Windows, то вам необходимо помимо этой статьи знать ещё одну тонкость.
Git для Windows существует в нескольких вариантах. Есть официальный клиент Git for Windows. Есть Git, который можно установить, используя Cygwin.
Так вот, при bibisect'e в Windows нельзя пользоваться РАЗНЫМИ Git. То есть и для скачивания bisect репозитория и для самой процедуры необходимо использовать только какой-то ОДИН вариант git в рамках ОДНОГО bisect репозитория!
То есть вы можете скачать и использовать bisect-win32-6.3, используя Git из Cygwin, а bisect-win64-6.4 - используя Git for Windows. И при этом вы не сможете использовать Git for Windows для работы в bisect-win32-6.3.
Имейте это ввиду, у вас не получится ставить эксперименты по производительности Git на одном bisect репозитории, как это хотел сделать я, когда и наткнулся на эту проблему.
ps: собственно от чего я начал исследовать эту тему? У меня при bisect'e безумно тормозит Git из Cygwin, причем так, что вешает всю ОС. А по слухам Git for Windows работает намного шустрее!

воскресенье, 13 октября 2019 г.

Cоставные документы Writer

Составной документ Writer - это такой отдельный вид документа, который содержит в себе вложенные обычные текстовые документы ODT.
Для чего он нужен? Этот механизм позволяет работать с огромными документами, разделяя их на части и затем составляя из них единый документ, форматирование которого можно настроить единообразно в одном месте и за один раз. Вот тут есть немного справки по составным документам. Сама идея составного документа Writer схожа с аналогичной системой в LaTeX, в котором также есть возможность создать мастер-документ со ссылками на титульную страницу, оглавление и отдельные файлы с текстом.
При работе в составном документе есть несколько особенностей:
- Навигатор в составном документе работает в специальном режиме "составной документ", при этом его можно переключить и на обычный вид;
- необходимо очень хорошо понимать, как работают стили во Writer вообще, а также, как они наследуются в простом документе и в составном;
- перекрёстные ссылки между разными встроенными документами не работают.
Итак, у вас есть большой документ, который был разделён на отдельные файлы с разделами/главами (но это не обязательно, делить можно как угодно), из которых теперь надо создать единый документ.
Запускаем LibreOffice и выбираем пункт меню Файл->Создать->Составной документ. Откроется пустой документ и окно Навигатора в режиме "составной документ". От Навигатора в обычном режиме этот отличается наличием всего одной строки со значками (слева направо): переключатель Составной документ, Изменить, Обновить, Вставить, Сохранять содержимое в составном документе, Вверх и Вниз. В таком режиме Навигатор отображает только список добавленных документов и позволяет производить с ними некоторые действия. На изображении ниже слева - обычный Навигатор в текстовом документе, а справа - Навигатор в составном документе:
Для того, чтобы добавить в наш составной документ готовые файлы ODT нажмите значок Вставить в Навигаторе и далее в выпадающем меню нажмите Файл. Откроется стандартное окно выбора файлов, в котором необходимо найти и выделить ваши файлы ODT, а затем нажать на кнопку Открыть.
Внимание! В версиях LibreOffice, начиная с 6.3.0 и до 6.3.2, есть ошибка, которая приводит к падению офиса, если выбрать в этом окне выбора файлов два или более файлов сразу и нажать кнопку Открыть! И для версии 6.3.3 её уже исправили. Посему просто обновите ваш LibreOffice 6.3, до более поздней версии.
В зависимости от объема и форматирования ваших ODT файлов процесс добавления их в составной документ займет некоторое время. После завершения процесса в Навигаторе будет показан список ваших добавленных файлов с именами такими же, как их имена файлов. Плюс в составном документе по умолчанию существует отдельная страница с названием Текст.
В этот самый Текст (который просто пустая страница с пустым абзацем, как обычный документ Writer) вы можете добавить что угодно. Также можно добавлять такие страницы в любое место составного документа.
Порядок добавленных документов в списке можно изменять кнопками Вверх и Вниз в верхней части Навигатора. При изменении позиции документа в списке точно так же меняется позиция его содержимого относительно остальных встроенных документов по тексту.
Каждый встроенный отдельный документ ODT в составном документе помещается в своём разделе, причём разделы эти вставлены, как связь с документом ODT. О разделах я писал вот тут. Каждый раздел защищён от изменения.
Изменять отдельные документы ODT внутри составного документа нельзя. Однако можно дважды щёлкнуть по нужному документу в Навигаторе и он откроется в отдельном редакторе Writer, там вы сможете изменить его, как нужно, сохранить и закрыть документ. Затем в составном документе нажмите в Навигаторе значок Обновить, чтобы обновить вид измененного документа ODT внутри составного.
В составной документ можно вставить разные индексы - Оглавление, Указатель и так далее. Напомню, что такие индексы Writer формирует на основе абзацев со стилями типа Заголовок, в которых указан уровень структуры, отличный от "Основной текст". Делается это через значок Вставить в Навигаторе и выбор в выпадающем списке пункта Указатель. Откроется стандартный диалог Оглавление, указатель или библиография, в котором можно настроить соответствующие параметры.
И напоследок небольшой лайв хак. Можно сначала создать в обычном документе ODT стили, структуру документа со всеми главами и подглавами, то есть мы будем иметь готовый шаблон, который можно в дальнейшем использовать для написания непосредственно текста, не задумаваясь об оформлении. А затем можно создать из обычного, настроенного ODT файла составной документ с файлами ODT, разделёнными по заголовкам нужного вам уровня! Делается это из меню Файл->Отправить->Создать составной документ. Задаете имя составного документа, выбираете Заголовок, по которым исходный файл будет разбит на отдельные документы, и сохраняете файл.
В каталоге назначения появятся сам составной документ с расширением ODM и несколько файлов ODT, количество которых зависит от количества заголовков выбранного уровня.

пятница, 4 октября 2019 г.

Руководство по началу работы в LibreOffice 6.0

Наконец-то мы добили перевод GS Started Guide 6.0 на русский язык. Спасибо Лере Гончаруку и Алексу Денкину (особенно ему) за труд. Результат наших трудов выложен в вики проекта по адресу https://wiki.documentfoundation.org/Documentation/Publications/ru в соответствующем разделе.

четверг, 3 октября 2019 г.

Эксперименты по замене cairo на skia в LibreOffice

Ещё на конференции LibOCon 2019, которая прошла в сентябре в Альмерии, разработчики обсуждали необходимость что-то делать с графическим стеком в LibreOffice. На конкретно этом обсуждении я даже присутствовал лично, но понял чуть менее, чем ничего. Я понял, что текущее состояние не очень хорошее и очень уж сложными путями отрисовываются на экране разные модули, особенно Writer. В общем и целом, судили они, рядили и решили для начала попробовать заменить библиотеку графических примитивов cairo, которая используется сейчас, на аналогичную библиотеку skia.
К сожалению, быстрым поиском на просторах сети я не нашёл, в чём же преимущество skia над cairo.
Зато сегодня я увидел, что Любош Лунак опубликовал коротенький пост как раз на эту тему. То есть эксперименты идут. И конечно, далеко не факт, что вообще что-то попадет в мастер будущего релиза 6.4.
Если кто-то из читателей моего блога сможет прокомментировать профиты от перехода на skia, было бы круто весьма.