воскресенье, 12 февраля 2017 г.

Использование разделов в текстовом документе LibreOffice Writer

Что такое раздел в LibreOffice Writer? Это именованный текстовый блок,который позволяет защитить текст или часть текста от изменения, скрывать и показывать части текста, вставлять текст в несколько колонок внутри текста в одну колонку, использовать текст или объекты из других документов LibreOffice.
Два основных диалога, которые нужны для работы с разделами - это диалог Вставить раздел из меню Вставка - Раздел:
и диалог Редактирование разделов из меню Формат - Разделы:
Диалоги визуально немного похожи, однако первый служит для настройки вставляемого раздела, а второй для работы с уже существующими разделами.
Визуально в тексте документа раздел обрамлен серой непечатаемой рамкой:
При вставке раздела перед ни вставляется символ перевода строки, то есть раздел вставляется, как новый абзац. Не получится вставить раздел по середине слова или строки. 
Примечание: Учтите при этом, что если раздел скрыть, а знак перевода строки, который был создан при вставке раздела удалить, то раздел также будет удален.
Текст или объект внутри раздела можно форматировать точно так же, как основной текст или иные объекты документа, используя стили или ручное форматирование.
У меня была мысль применить эти разделы при работе с документами типа "договор", однако высянилась особенность, даже если раздел вставить в нумерованный список и задать тексту внутри него корректную нумерацию, то при скрытии раздела, нумерация не пересчитывается, а весь смысл работы с разделами в таком случае теряется.

четверг, 2 февраля 2017 г.

Внутренние изменения в LibreOffice 5.3

Michael Meeks опубликовал в своем блоге интересный пост по поводу изменений в LibreOffice 5.3, не видных простому пользователю, но важных для развития проекта. Это так называемые изменения "под капотом" LibreOffice. Итак:
Переведена очередная порция комментариев в коде с немецкого на английский. Немецкие комментарии в коде проекта есть со времен его основания, поскольку писать его начинали именно немцы. Однако огромное количество людей знает английский и только некоторые кодеры умеют в немецкий, поэтому перевод комментариев в коде на английский - это крайне важная задача. С выпуском LibreOffice 5.3 осталось всего-то 3700 комментариев на немецком языке из более, чем 50000.
Полгода назад, в LibreOffice 5.2, был добавлен автоматический сбор отчетов о крэшах программы с отправкой их на сервер разработчиков проекта. Это позволило выявить и оперативно исправить несколько критичных ошибок в версии 5.3. Еще одним следствием работы этого механизма стало обнаружение проблемы с ограничением Windows на 10000 GDI-объектов на один процесс, что приводит к самым неожиданным ошибкам LibreOffice в самых разных местах. К выходу версии 5.3.1 обещают эту проблему исправить (или обойти как-то).
Было написано около 300 новых юнит-тестов.
Был написан фреймворк для тестирования интерфейса пользователя, к нему есть документация, призванная помочь добавлять новые тесты.
Произведены множественные изменения в LibreOfficeKit API и в коде, отвечающем за работу он-лайн части LibreOffice.
Добавлен код для отслеживания проблем с использованием OpenGL и OpenCL в реальном времени.
Добавлен механизм для автоматического снятия скриншотов со всех диалогов LibreOffice, также его можно использовать в ручном режиме. Механизм этот помимо создания скриншотов также позволяет обновлять файл Справки в автоматическом режиме, вставляя туда вновь созданные скриншоты. Сделано это для облегчения труда команды документации, поскольку LibreOffice достаточно часто обновляется, а документация и Справка как всегда отстают по версиям от проекта.
Старый API для многопоточной работы osl::Condition был заменен на новый std::condition_variable, который позволяет писать более безопасный код. Также это позволило решить проблему с распаковкой некоторых файлов XLSX.
Проведена большая работа по улучшению поддержки gtk+3/Wayland в LibreOffice.
Идёт работа по улучшению внутреннего механизма работы со столбцами в Calc. Раньше на каждый лист выделялся сразу фиксированный набор столбцов (структура значительного размера), в которой сразу были заготовки на все возможные столбцы. Это, например, не позволяет увеличить число столбцов. Теперь используется динамическая структура, в которой по мере надобности добавляются данные для новых нужных столбцов. Это первый необходимый шаг для большего числа столбцов, который также даёт оптимизацию в использовании памяти.
Обновлено большое количество встраиваемых в LibreOffice библиотек.
Исправлено более 80 ошибок, связанных с форматами DOC, DOCX и прочими.
Проведена чистка кода LibreOffice для Android.

среда, 1 февраля 2017 г.

Выпуск LibreOffice 5.3

Организация The Document Foundation представила новый значительный выпуск офисного пакета LibreOffice 5.3. Сборки подготовлены для различных дистрибутивов GNU/Linux, Windows и macOS.
Релиз содержит множество новшеств, но пока окончательно не стабилизирован, поэтому позиционируется как ознакомительный и пригодный для использования продвинутыми пользователями, а также энтузиастами. О готовности к промышленному использованию будет объявлено дополнительно при выходе одного из корректирующих релизов (5.3.4 или 5.3.5).
Примечания к выпуску можно почитать вот здесь: https://wiki.documentfoundation.org/ReleaseNotes/5.3/ru
Скачать дистрибутив для всех платформ можно вот тут: http://www.libreoffice.org/download/download/

пятница, 27 января 2017 г.

Выпуск LibreOffice 5.2.5

Разработчики объявили о выпуске LibreOffice 5.2.5. В данном выпуске были исправлены внезапно проявившиеся в версии 5.2.4 ошибки с принтерами и шрифтами, из-за которых был всплеск отчетов о критических ошибках, о которых я как-то писал.
Скачать версию 5.2.5 можно как всегда отсюда: http://www.libreoffice.org/download/libreoffice-fresh/
Перечень исправленных ошибок:

вторник, 24 января 2017 г.

Разработчики LibreOffice опять чудят

В LibreOffice 5.3 реализовали стили таблиц Writer и сделали в Боковой панели отдельный раздел для быстрого и удобного управления ими. Однако, при попытке изменить стиль, используя контекстное меню в Боковой панели, LibreOffice падает намертво, унося в преисподнюю все открытые документы. В багзилле есть соответствующий баг на эту тему, однако разработчики видимо хотели или заглушку вставить, или еще что-то сделать, поскольку функция создания и редактирования стиля таблиц Writer пока просто не реализована. Что же я увидел сегодня в багзилле на эту тему? А там появилось предложение вообще этот раздел Боковой панели убрать с глаз долой. То есть, вместо небольшого напильника в виде подсказки, что эта функция пока не работает, они берут скальпель и режут полностью функционал. 
Я уже писал на тему того, что одни разработчики пилят фичу, а другие через минимальное количество времени её режут по живому. Сила опенсорца во всей красе =( И это реально раздражает. Все же единоначалие в некоторых вопросах разработки свободных проектов необходимо.

понедельник, 23 января 2017 г.

Создание презентации во Writer

Под структурой презентации понимается совокупность текста во всей презентации (во всех её слайдах), каждая запись которого имеет свой стиль, выглядит это например вот так:
Обратите внимание, каждый слайд начинается с записи со стилем "Заголовок слайда". То есть, можно создавать презентацию, создавая её структуру (накидав основные тезисы). Для этого есть специальный режим в самом Impress, а есть возможность использовать для этого Writer. И, если в Impress нужно просто выбрать пункт меню "Вид - Структура" и начать творить, то во Writer все немного сложнее (я в конце поясню, почему именно так сделано во Writer, в этом есть своя логика).
Итак, во Writer нужно начать с предварительного обдумывания Вашей презентации, что за чем Вы будете говорить. Затем запишите Ваши тезисы в список, отделяя каждую запись нажатием на клавишу Enter. После завершения списка необходимо (обязательно!!!) каждой записи задать стиль типа "Заголовок". Причем нужно учитывать, что с заголовков самого высокого уровня будут начинаться будущие слайды в презентации. Необязательно, чтобы будущие заголовки слайдов начинались с записей со стилем "Заголовок 1", это может быть и "Заголовок 2" или "Заголовок 3". Важно, чтобы записи, которые планируется разместить внутри слайда, были форматированы стилем "Заголовок N-1" (где N - самый верхний уровень в документе). Приведу пример (в стилях типа Заголовок):

Заголовок 2

Заголовок 3

Заголовок 3

Заголовок 3

Заголовок 2

Заголовок 3

Заголовок 3

Заголовок 2

Заголовок 3

Заголовок 3

Заголовок 4

Заголовок 4

Итак, с каждой записи, форматированной стилем "Заголовок 2" будет начинаться новый слайд в будущей презентации, поскольку это самый высокий уровень заголовка в структуре.
Что нужно сделать для передачи этой структуры в презентацию? Нужно выделить все записи структуры и выбрать пункт меню во Writer "Файл - Отправить - Структуру в презентацию". После этого будет создана пустая презентация в режиме Структура, которая будет содержать Ваши тезисы. Переключив в меню "Вид" внешний вид презентации на "Обычный", Вы увидите Ваши слайды с тезисами, каждый из которых занимает то место в слайде, которое Вы ему задали уровнем структуры в документе Writer.
А теперь ремарка, насчет того, зачем это вообще есть в LibreOffice. Во Writer есть пункт меню "Файл - Отправить - Реферат в презентацию", который позволяет взять из документа структуру заголовков и некоторое количество абзацев, следующих по тексту за ними, и создать реферат объемного документа в виде презентации. Это полезно для доклада о Вашей научной работе, например, или когда есть просто большой документ, а слайды - это действительно просто тезисы для аудитории, позволяющие лектору ориентироваться в своей лекции. Однако для работоспособности этой функции при оформлении Вашего научного труда необходимо использовать стили!

пятница, 20 января 2017 г.

Где скачать старые версии LibreOffice

Достаточно часто возникает такой вопрос: Где скачать старые версии LibreOffice? Нужно это бывает для самых разных вещей, начиная от тестирования, и до того, что последние версии по какой-то причине не устраивают.
Ответ такой: вот здесь https://downloadarchive.documentfoundation.org/libreoffice/old/
Начиная с первого релиза 3.3, и, заканчивая свежайшим 5.3.0.2.

понедельник, 16 января 2017 г.

Создание своего риббона Notebookbar в LibreOffice

Разработчики из дизайн-тим в своем блоге опубликовали пост о том, как сегодня можно сделать свой ribbon в LibreOffice или настроить существующий. Переводить я его не буду, просто потому, что простым пользователям незачем знать тонкости разработки ГУИ в новом риббоне, а интересующиеся и сами всё там поймут и разберутся. Я хотел пару мыслей написать по этому поводу.
Так вот, мало того, что они в релиз LibreOffice 5.3 запихнули недоделанный и ужасный Notebookbar, так они еще предлагают пользователям самим собраться с силами и учить XML вместе с софтом для создания интерфейсов Glade. Хороший подход к разработке и прекрасное отношение к пользователям. Собственно у меня возмущение вызывает не сам факт того, как там создается ГУИ в Notebookbar и инструкция к этому от разработчиков, а то, как они формулируют свои мысли. Вместо того, чтобы сказать "эй, пипл, помогите нам насоздавать риббонов в нашем софте. Это делает вот так и вот так. А мы ваши идеи рассмотрим и агрегируем в самый лучший ГУИ, какой вы видели!", они говорят "мы выкатили нерабочее УГ, а если Вам надо, то вот вам инструменты разработчика и делайте себе сами такой ГУИ, какой Вам надо". Ну ОК, что ж тут поделать. Если будет у меня желание разбираться в этом, то я попробую сделать Риббон а-ля МСО просто для смеха.

суббота, 14 января 2017 г.

Различные взгляды на появление и развитие нового интерфейса Muffin в LibreOffice

На днях я имел нескучную беседу с пользователями LibreOffice и товарищами из команды разработчиков самого LibreOffice на канале его в Телеграме. Началось всё с того, что кто-то вбросил ссылку на статью на стороннем ресурсе о новом интерфейсе LibreOffice под названием MUFFIN. Причем статья крайне негативная. И товарищи на канале очень удивились и огорчились, что новый, недоделанный и кривой (в силу недоделанности) интерфейс пользователя обозреватели не приняли на ура. Когда я им попытался объяснить, что если они прямо сейчас рекламируют новый GUI, (но при этом прячут его в экспериментальные возможности, однако рассказывая, как его активировать), чтобы люди посмотрели недоделку, то не надо удивляться, что люди верят своим глазам, а не маркетологам Либры (которым бы лучше помолчать в тряпочку, вместо того, чтобы рассказывать про глубокую новую философию в видении интерфейса пользователя), то они обиделись на меня всем миром. А самое страшное, что задело апологетов MUFFIN'a - это то, что новый MUFFIN сравнивают с Robbon'ом из MS Office 2007 и более поздних. Но позвольте, а с чем же его сравнивать, если внешне он копия Ribbon, концепция взята явно оттуда же, да и сама команда дизайна из разработчиков LibreOffice в своем документе обсуждает возможности именно Ribbon?!
Товарищ Итало Виньоли начинает свою речь о целях  Muffin'a словами "...мы не заботимся о пользователях MS Office, мы заботимся о пользователях LibreOffice...", а заканчивает через предложение "...новый интерфейс MUFFIN позволит мягко перевести пользователей MS Office на LibreOffice...". Так о ком же заботится г-н Итало? Кого он обманывает? Себя? Я понял бы, если бы он честно сказал, что для облегчения миграции с MSO на LO делают тупую копию Ribbon. Логика есть в этом, пусть и спорная. Но начинать юлить и рассказывать сказки, что всем дали информацию (это речь о вышеуказанной заметке в блоге разработчиков) о "философии" нового интерфейса, а люди такие сякие (и особенно журналюги пархатые) читать это не стали, а просто посмотрели на унылие в его нынешнем виде и высказали справедливое фи на весь Интернет, - это конечно здорово.
Господин Виньоли также упрямо настаивает на том, что сам термин Ribbon употреблять нельзя, поскольку это неофициальное название GUI от MS Office, а нужно говорить Fluent UI. Основная мысль в том, чтобы уйти от прямого сравнения с Ribbon и опять кого-то обмануть, рассказывая, что с Ribbon новый GUI в LibreOffice не слизали. Кто вообще помнит о том, КАК там официльно назывался ленточный интерфейс MS Office? Да никто, по большому счету. А вот, что такое Ribbon знают гораздо больше человек.
К чему я все это выше так эмоционально изложил? К тому, что на появление Muffin даже внутри команды, имеющей отношение к разработке/тестированию/переводам LibreOffice, есть диаметрально противоположные мнения на принципиальную нужность этого новшества, не говоря уж о такой мелочи, как источник вдохновения "дизайнеров" LibreOffice.
Моя персональная точка зрения такова - этот самый MUFFIN есть копия ленточного интерфейса от MS Office по парадигме, по задумке, по внешнему виду и по тому простому факту, что оно отжирает вертикального пространства даже больше, чем сам Ribbon. В связи с указанным он просто не нужен, на него расходуются ресурсы разработчика (одного кстати, один несчастный чешский парень это пилит), пусть он и доброволец, которые можно было бы направить в иное русло. Добавление этого MUFFIN'a 146% повлечет за собой многочисленные ошибки (да уже повлекло), на исправление которых потребуются дополнительные усилия грамотных программистов, которых и так мало. А вот профита никакого эта штука не принесёт.
Кстати, надо бы попытаться натолкнуть их на мысль провести опрос среди самих разработчиков LibreOffice на предмет их отношения в новшествам в интерфейсе.

Перевод на русский язык названий функций LibreOffice Calc

Я может открою кому-то глаза на реальный мир, но переводом всего интерфейса пользователя LibreOffice на русский язык занимается ровно ОДИН человек.
На сегодня, в выпуске первого релиз кандидата LibreOffice 5.3, что-то (как всегда, я так понял) случилось с локализацией, огромное количество элементов в интерфейсе не переведено. Причем это какая-то системная ошибка (на мой взгляд конечно) во взаимодействии локализаторов и программистов, которую программисты просто не видят, а локализаторы по какой-то причине не озвучивают, потому что считают, что лучше ничего сделать нельзя. При этом новых терминов в GUI добавляется не так много, однако уже переведенные термины из релиза в релиз теряют привязку к своим переводам на иные языки. 
Так вот, этот самый один человек устал от своего труда и написал на форум странный пост, после которого, однако, ему вызвались помочь с допереводом элементов. А сам он, внезапно, решил начать перевод давно выпрашиваемой для LibreOffice Calc пользователями MS Excel штуки: локализации имен функций электронных таблиц!
Чтобы вы понимали: внутри программы имена функций все равно хранятся на английском языке (и в Эксель точно так же), локализация влияет только на отображение формулы и усложняет процесс ввода формулы (потому что функция будет на русском, а ссылки на ячейки все равно на английском, приходится туда сюда дергать раскладку).
Начать решили с самых популярных и часто используемых функций. Что у них там получится и в какой выпуск они будут это запускать - пока непонятно. Учитывая, что это по сути локализация, которую принимают в любой промежуточный релиз, наверное это может случиться тихо и незаметно в любой момент времени.
Update: собственно во втором релиз кандидате 5.3.0.2 на 80% наверное уже переведно: