Welcome to The Document Foundation Planet

This is a feed aggregator that collects what LibreOffice and Document Foundation contributors are writing in their respective blogs.

To have your blog added to this aggregator, please mail the website@global.libreoffice.org mailinglist or file a ticket in Redmine.

24 May, 2017


Im deutschsprachigen LibreOffice-Projekt ist es bewährte Tradition, mindestens ein Projektwochenende im Jahr abzuhalten. Ort und Termin stehen nun fest: Wir treffen uns vom 23. bis 25. Juni in Berlin und eines der Hauptthemen wird LibreOffice online sein.

Ein LibreOffice-ProjektwochenendeEin LibreOffice-Projektwochenende

Dieses Jahr treffen wir uns von Freitagnachmittag, 23. Juni bis Sonntagmittag, 25. Juni in Berlin. Vielen Dank an Endocode für die Unterstützung!

Alle Details und die Anmeldemöglichkeit findest du auf der offiziellen Wiki-Seite.

Wenn du Lust hast, in eines der großen Open-Source-Projekte hineinzuschnuppern, die „Macher“ hinter dem Programm kennen zu lernen und selbst bei uns mitzumachen, dann ist das die ideale Gelegenheit dazu! Ich freu mich auf dich!

23 May, 2017


Berlin, May 23, 2017 – For the last five months, The Document Foundation has made use of OSS-Fuzz, Google’s effort to make open source software more secure and stable, to further improve the quality and reliability of LibreOffice’s source code. Developers have used the continuous and automated fuzzing process, which often catches issues just hours after they appear in the upstream code repository, to solve bugs – and potential security issues – before the next binary release.…

The post LibreOffice leverages Google’s OSS-Fuzz to improve quality of office suite appeared first on The Document Foundation Blog.


Während der diesjährigen FOSDEM hat mein Kollege Mike Saunders viele Mitwirkende an LibreOffice zu ihren Beiträgen im Projekt interviewt. Ich freue mich sehr, dass ich mit ihm über meine Arbeit als Geschäftsführer der Stiftung The Document Foundation und meine Erlebnisse mit der Community sprechen durfte.

Das Video steht nun auch in deutscher Sprache online.

Ich hatte während der FOSDEM leider mit einer starken Erkältung zu kämpfen, hoffe aber, dass ich trotzdem verständlich bin. 😉

21 May, 2017


Margins specify the amount of space to leave between the edges of the page and the document text. You can define it for the left/inner, right/outer, top and bottom side individually. Page margins are defined by default at 0.79″ respectively 2cm on each side in LibreOffice Writer (located under Format > Page). These default values are under close scrutiny now.

Figure 1: Page settings in LibreOffice Writer

In order to prove that the default settings are what users apply in most cases we prepared a short survey and ask you to answer the few questions at


The survey will take only a few minutes and help us to make LibreOffice even better.

Of course we are interested in your ideas. So please feel free to comment.

The post Please participate in a survey about page margins appeared first on LibreOffice Design Team.

18 May, 2017


Just a quick heads up. I just created and saved an Excel file using Excel 2016, which cannot be opened again with it. Glad our swiss army knife LibreOffice can 😉

It’s funny to see Excel can open the ODS I created using LibreOffice (as source I used the XLSX file) better than it’s “native” format….

Here is a short “proof” video: https://youtu.be/bM7UOkqQTqw

Tagged: Excel 2016, file open, fileopen, LibreOffice, problems

17 May, 2017


We’re 17 days into the Month of LibreOffice, May 2017 – and we’ve just gone over the 200 stickers mark. Yes, that’s 200 community members who’ve helped out with code, QA, translations, documentation, user support and marketing – and each one will receive a cool sticker for their laptops and other kit. Thanks everyone for your help!…

The post Month of LibreOffice, May 2017: Printed stickers are here! appeared first on The Document Foundation Blog.


This post summarizes the plumbing work around ODF/OOXML digital signatures that I did on LibreOffice master after the 5.3 branch-off up to now. The big thing is the integration of the libxmlsec 1.2.24 release. Among other things, this contains 2 larger changes that I contributed upstream triggered by the needs of LibreOffice:

  • The ECDSA-SHA256 feature is something I already mentioned, but I did not bother to backport the SHA1 and the SHA256 part, so those now arrived to LibreOffice as well.

  • xmlsec’s XMLSEC_KEYINFO_FLAGS_X509DATA_DONT_VERIFY_CERTS flag (while verifying signatures) was there, but its behavior was not clear (neither for nss nor for mscrypto). I’ve changed it to be in sync what you have in other commands to avoid certificate validation (like wget -k or curl -k), which means as a next step there will be one less xmlsec patch in LibreOffice that prevents us from using xmlsec from the system on Linux. (Adding tests also detected that in the nss case not using that flag also didn’t do verification by accident, this is now fixed as well.)

After the release I also noticed that creating signatures on Windows was broken, this is now fixed on xmlsec master and also backported to LibreOffice.

All this is available in LibreOffice master, towards 5.4.

15 May, 2017


During this year’s FOSDEM, my colleague Mike Saunders has interviewed many LibreOffice contributors on their work and activities inside the project.

I’m proud of having been interviewed as well and I try to give some insight into my work as Executive Director of The Document Foundation.

Find the full video here.

I was heavily fighting with a flu during recording, but I hope I’m still understandable. 😉


Florian is one of the founders of The Document Foundation (TDF), the charitable entity behind LibreOffice. He’s also TDF’s Executive Director, overseeing a small team that works on release building, documentation, QA, design and marketing for LibreOffice. In this interview, he explains how TDF is structured, how it’s funded, and how the money is used.

(Update: we also interviewed Florian in German, and have now uploaded the video.)…

The post Video interview: Florian Effenberger, Executive Director at TDF appeared first on The Document Foundation Blog.

13 May, 2017


I worked a bit further on the WordPress theme for a local organisation and got some nice pictures for the header of the site. I cropped them a bit with Gimp and combined them together with the logo in a new banner. We have some great places in Duisburg, like the ‚Landschaftspark Duisburg-Nord‘ (an former ironwork with a great light show) (https://de.wikipedia.org/wiki/Landschaftspark_Duisburg-Nord), Tiger and Turtle (a Magic Moutan / a walkable sculpture on top of a hill) (https://de.wikipedia.org/wiki/Tiger_and_Turtle_%E2%80%93_Magic_Mountain) and the ‚Innenhafen‘ (a former part of the inner harbor) (https://de.wikipedia.org/wiki/Innenhafen_Duisburg).

It’s always easy and fun to work with free software tools on nice pictures 😉

12 May, 2017


I currently looking into the theme development of WordPress. I already started with the work on a first version of a theme proposal for a local organisation in Duisburg. I’ll continue this work for the next weeks and it will consume a lot of my spare time.


To help spread the word about LibreOffice and get feedback from users (and contributors), The Document Foundation operates various social media accounts. Some of these have been running since the start of the project – while others are relatively new. We’ve been collecting statistics about our social media accounts for a while, so let’s share them with the world.…

The post LibreOffice on social media: stats for June 2016 – April 2017 appeared first on The Document Foundation Blog.

11 May, 2017

  • Mail, more admin, testing, chat with Thorsten.
  • Annoyed to see that Ahok goes to jail in Indonesia for two years for blasphemy, despite no prosecution case or real offence; pleased to see that Stephen Fry walks free, although he is beyond utterly wrong about God who as Psalm 89 tells us has Righteousness and justice as the foundation of his throne. Not a fan of blasphemy laws, discussing all things is important.
  • Poked at improving online unit tests.


Berlin, May 11, 2017 – The Document Foundation (TDF) announces LibreOffice 5.3.3, focused on bleeding edge features, and as such targeted at technology enthusiasts, early adopters, and power users. LibreOffice 5.3.3 integrates over 70 patches, with an update of the Sifr monochrome icon set and several fixes for interoperability with Microsoft Office documents.

For all other users and enterprise deployments, TDF suggests LibreOffice 5.2.7, with the backing of professional support by certified professionals (updated list available at: http://www.libreoffice.org/get-help/professional-support/).…

The post The Document Foundation announces LibreOffice 5.3.3 appeared first on The Document Foundation Blog.


At Collabora Productivity we recently encountered the need to investigate calls in a third-party application to COM services offered by one or more other applications. In particular, calls through the IDispatch mechanism.

In practice, it is use of the services that Microsoft Office offers to third-party applications that we want to trace and dump symbolically.

We looked around for existing tools but did not find anything immediately suitable, especially not anything available under an Open Source license. So we decided to hack a bit on one of the closest matches we found, which is Deviare-InProc. It is on GitHub, https://github.com/nektra/Deviare-InProc.

Deviare-InProc already includes code for much of the hardest things needed, like injecting a DLL into a target process, and hooking function calls. What we needed to do was to hook COM object creation calls and have the hook functions notice when objects that implement IDispatch are created, and then hook their Invoke implementations.

The DLL injection functionality is actually "just" part of the sample code included with Deviare-InProc. The COM tracing functionality that we wrote is based on the sample DLL to be injected.

One problem we encountered was that in some cases, we would need to trace IDispatch::Invoke calls that are made in a process that has already been started (through some unclear mechanism out of our control). The InjectDLL functionality in Deviare-InProc does have the functionality to inject the DLL into an existing process. But in that case, the process might already have performed its creation of IDispatch implementing COM objects, so it is too late to get anything useful from hooking CoGetClassObject().

We solved that with a hack that works nicely in many cases, by having the injected DLL itself create an object known to implement IDispatch, and hoping its Invoke implementation is the same as that used by the interesting things we want to trace.

Here is a snippet of a sample VBScript file:

     Set objExcel = CreateObject("Excel.application")
     set objExcelBook = objExcel.Workbooks.Open(FullName)

     objExcelBook.SaveAs replace(FileName, actualFileName, prefix & actualFileName) & "csv", 23


And here is the corresponding output from tracing cscript executing that file. (In an actual use case, no VBScript source would obviously be available to inspect directly.)

Process #10104 successfully launched with dll injected!
Microsoft (R) Windows Script Host Version 5.812
Copyright (C) Microsoft Corporation. All rights reserved.

# CoGetClassObject({00024500-0000-0000-C000-000000000046}) (Excel.Application.15)
#   riid={00000001-0000-0000-C000-000000000046}
#   CoCreateInstance({0000032A-0000-0000-C000-000000000046}) (unknown)
#     riid={00000149-0000-0000-C000-000000000046}
#     result:95c668
#   CoCreateInstance({00000339-0000-0000-C000-000000000046}) (unknown)
#     riid={00000003-0000-0000-C000-000000000046}
#     result:98aad8
#   result:95dd8c
# Hooked Invoke 0 of 95de1c (old: 487001d) (orig: 76bafec0)
95de1c:Workbooks() -> IDispatch:98ed74
98ed74:Open({"c:\temp\b1.xls"}) : ({"c:\temp\b1.xls"}) -> IDispatch:98ea14
95de1c:Application() -> IDispatch:95de1c
95de1c:Application() -> IDispatch:95de1c
95de1c:Application() -> IDispatch:95de1c

Our work on top of Deviare-InProc is available at https://github.com/CollaboraOnline/Deviare-InProc.

Binaries are available

10 May, 2017

  • Took E. to Addenbrooks in the morning; back, mail, built ESC stats, call, plugged through the task backlog. Read Firefox & Chrome's seccomp-bpf usage - which are not particularly obvious.


Thorsten has been involved with LibreOffice (and OpenOffice.org before that) for many years. He’s a developer and in The Document Foundation’s Board of Directors (BoD). We talked to him about how the project was born, and what the BoD does.

The post Video interview: Thorsten Behrens, LibreOffice developer appeared first on The Document Foundation Blog.

09 May, 2017

  • Admin, commercial call; Board calls; call later, revised Biology with H.


Berlin, May 9, 2017 – The Document Foundation (TDF) announces LibreOffice 5.2.7, the seventh minor release of the LibreOffice 5.2 family, targeted to enterprises and individual users in production environments.

TDF suggests deploying LibreOffice in large organizations, public administrations and enterprises with the backing of professional support by certified people (a list is available at http://www.libreoffice.org/get-help/professional-support/).…

The post Announcement of LibreOffice 5.2.7 appeared first on The Document Foundation Blog.

08 May, 2017


Table styles have been introduced in LibreOffice Writer 5.3 as the successor to the AutoFormat feature. The table designs from this old feature were used as the initial set of table styles, so we asked on the design mailing list to submit proposals for new table designs and finally ran a survey to include the entire community in the process.


The survey comprised of all designs with a standardized table of data presented in a randomized order. Participants were asked to report their preference/liking or disliking to each design on a Likert scale. The analysis was done with a stacked bar plot, where positive replies of like or strong like are displayed right of the center and negative replies are displayed to the left of the center.

User responses (see this image for an overview of the designs; raw data and R scripts are available here).

Figure 1: User responses (see this image for an overview of the designs; raw data and R scripts are available here).

In total, we received 534 responses. The results in figure 1 clearly demonstrate the preference for clean and simple table designs, ideally with only horizontal lines. It also shows that the legacy designs, marked with an asterisk, are outdated.

In the survey, it was also possible for participants to comment on the designs. Many comments criticised the outdated designs, bad contrast, and inappropriate alignment. Suggestions regarding colors ranged from avoiding colors at all, over using pastel tones, to vivid and “tropical” colors. It was recommended to provide a flat design with no lines but good spacing between cells and alternating row colors. Another topic was the justification where headers are often requested to be aligned with the content, i.e. right aligned for numbers, but also centered titles was prefered.


We take this result as a clear agreement to remove most of the legacy styles, which was was one of the main questions of the survey. As we intentionally do not design by committee, but involve the community as a true Open Source development, we need your agreement from time to time to remove parts that are not zeitgeisty anymore. Diversity of opinions and independence of a particular person is crucial to us.

The updated styles will consist of simple and plain layouts in black and white, but also of some colored variants. Here are more recent variations based on the survey results:

New proposal for colored tables.

Figure 2: New proposal for colored tables.

As discussed in the blog post Style your Table, the function is limited to the properties first/last column/row, alternative row/column, and the base style with paragraph style for each of these elements. Of course we are still open to include your proposals for new table styles, so feel free to submit your suggestions here, attach it to the ticket tdf#101349 on Bugzilla, or add a link to it in the comments.

In addition to the table styles that will be bundled by LibreOffice by default, it’s in the user’s hands to make their tables beautiful. Here are some useful references:

  • Remove to

  • Up early, M.'s SATs start today - music practise, Bible study etc. Mail chew, consultancy call, sync. with Tamas. Lunch, more calls & admin.


On May 1st we started a new Month of LibreOffice campaign, to give credit to contributions all across the project. So, after the first week, how is it looking? Well, here’s how many stickers have been awarded so far…

That’s a great start – 121 members of the LibreOffice community who’ll get a shiny sticker at the end of the month.…

The post Month of LibreOffice, May 2017: First week’s results appeared first on The Document Foundation Blog.

07 May, 2017

  • Up earlyish, practice & played at NCC; Julie over for fine roast chicken lunch; tidied up; played some games. Snoozed, finished cupboard side kick-board. Out to play running games nearby the statue of the Queen, racing, so walked through the graveyard rather than the heath; such a lot of hopeless tombstones. Tea, read stories to babes.

06 May, 2017

  • A large degree of lazy slugging, up late, fine breakfast & lunch. Tried to buy cheapish >700mm extension ball-bearing cupboard runners for H's attic; without much luck. Up late revising Physics with H.


On April 29th, the City of Munich in southern Germany held an event called MucGov17. Subtitled “Digital city – ideas, projects and apps”, it provided an opportunity for people involved with Munich’s IT infrastructure to get together, exchange ideas, and come up with new projects. The Document Foundation (TDF) attended and took part in various sessions.…

The post TDF at MucGov17 BarCamp in Munich appeared first on The Document Foundation Blog.


Google Summer of Code (GSoC) is a global program focused on bringing more student developers into open source software development during their holiday break. The Document Foundation and LibreOffice participate every year, and we are happy to announce three accepted projects aimed to improve usability.

Usability of Special Characters

Special Characters are an important feature in LibreOffice. However, some enhancements are required to make the Special Characters dialog competitive. In particular, it’s very tedious today to find the right character, which should be solved by a dedicated search field. The UI will follow proposals that have been made some time ago. Welcome, Akshay Deep!

Current state and planned result.

Figure 1: Current state and planned result.

Improvements to Notebookbar

The Notebookbar was introduced last year as an alternative to the classic toolbar. Since than, many improvements have been made, but some functionality is still missing. In this project, it is planned to complete the window resize implementation to handle cropped content, to fix theming issues, to add missing UI controls, to support mouse gestures, and other missing features. Welcome, Gökhan Gurbetoğlu!

Different variants of the Notebookbar.

Figure 2: Different variants of the Notebookbar.

Revamp the Customization dialog

The Customization dialog allows users to customize toolbars and menus, and currently lacks a number of features. For instance, it is not possible to search for a particular function. It also has an interface that focuses more on technical facts rather than ease of use. With a redesign following this proposal, users will have a better user experience as they customize the program to their needs. Welcome, Muhammet Kara!

Planned improvement to the customization dialog.

Figure 3: Planned improvement to the customization dialog.

Last words

Of course, the mockups as shown here are not definite. We start now with the work and in case of inconsistencies or an unclear state, the design may change accordingly.

Finally many thanks also to the honorable mentors Katarina Behrens, Thorsten Behrens, Jan Holesovsky, Szymon Kłos, Samuel Mehrbrodt, Yousuf Philips, and Heiko Tietze.

The post Welcome, GSoC’17 students! appeared first on LibreOffice Design Team.

05 May, 2017

  • Slept poorly; out for a run with J. mail chew; and a series of customer mails, calls, and so on. Lunch. Managed some fun hacks between fixes. Re-worked online inter-thread socket transfer to clean it up a bit.


In my opinion code reviewing has lower motivation than writing code but important necessary for good/correct upsteram. At this stage, person who write the code, can learn new things and see different perspectives but we can not talk about such a situation for the code reviewer. She/He has to understand what you are trying to do from the very beginning. And most probably code reviewer will not learn a new thing from that.

Gerrit is perfect code reviewing tool used by LibreOffice. But more perfect thing are code reviewers who spare their time for code reviewing and write your mistake. Every effort is valuable for keeping alive a free software but I also want to thank to code reviewers.

04 May, 2017

  • Mail chew; sync. with Paolo; Lunch; chat with Lenny.
  • Thrilled to have Collabora Online 2.1 released: months of work by Kendy's team since 2.0. Naturally everything is already included into what will become LibreOffice 5.4, which enters feature freeze in a couple of weeks - for a first release in June. You can checkout the latest CODE docker container and get it setup. There is a huge amount of work under-the-hood in Collabora Online 2.1; here are some examples.
    • Re-worked threading model - our 2.0 version worked well, but suffered from significant complexity — re-using the Poco socket code was easy to start with, but that used a blocking model. Thus to get both non-blocking read & write, with sensible queue management required two threads per user socket. This combined with another two threads per document, to give four threads in the Web Services Daemon - along with a multitide of locks, conditions, and corner-cases. Collabora Online 2.1 replaces all of this. We've migrated to a mostly non-blocking approach for almost all our SSL code. This yields an extraordinarily simpler model - one thread per document, with almost no locking, no lock contention, and significantly simplifies both the code and reasoning around the interleavings as we change it - thanks primarily to Ashod Nakashian & Kendy for their work here.
    • Improved socket code - the new non-blocking socket code is rather simpler, more readable, maintainable and of course built-in; easy to find who is responsible for it.
    • Improved Bandwidth - in 2.0 we hashed tiles to avoid re-compressing identical tiles (since PNG compression is surprisingly costly), for 2.1 (thanks to Tor Lillqvist) - we propagate these hashes to the client - to allow us to avoid re-sending un-changed tiles. This reduces our bandwidth use by ~50%+ in normal writer editing.
    • State dumping - the non-blocking code uses state machinery to a greater degree than before; to help debug what state your server is in you can pkill -USR1 loolwsd to see any queued/un-processed data, queued messages, state of document loading etc. in the logs.
    • Calc row-limit - increasing this is thanks to Marco Cecchetti who has been nobly wrestling with the many and various ways Calc's non-affine, non-linear co-ordinate system intersects with browsers for months.
    • Commenting & Change tracking - lots of hard work here to improve the core code to expose changes & comments via various UNO commands from Pranav Kant, along with helping out Henry Castro with his work on the JS side, animations, prettiness and so on
    • l10n & packaging - with many fixes from Andras Timar improving lots of aspects, and with grateful thanks to the LibreOffice translation community for their hard work.
    • Code quality improvements - running the same plugins as in the LibreOffice core.git by Noel Grandin and Miklos Vajna.
    • SVG icons instead of PNG for better experience on HiDPI displays by Tomaž Vajngerl.
    • Lots more - git log collabora-online-2-0-branch-point..origin/distro/collabora/collabora-online-2-1 shows we had ~1300 commits, with 11 from non-Collaborans - hopefully that will grow over the GSOC period. There


In the LibreOffice Writer user can prepare some pieces of documents which can be reused later. That feature is called AutoText and is accessible using menubar (Tools - AutoText). In the AutoText dialog it is possible to manage existing entries and also import new ones from files.
So far only *.dot and *.doc file formats were supported for importing AutoText. Here was my first task at Collabora: to add .dotx and .dotm format support.

One template document can contain multiple AutoText entires. Each entry has own name and can consist of formatted text, text with graphics, tables or fields. To import new templates user need to open AutoText dialog (Tools - AutoText), select according category and from the "AutoText" menubutton choose "Import". File explorer will appear. In the file format listbox new entries were introduced: "Microsoft Word 2007-2013 XML" and "Microsoft Word 2007-2013 XML Template" for *.docx and *.dotx or *.dotm.

AutoText has own long name and shortcut. It is possible to insert AutoText after typing shortcut name into document and pressing F3.

Following GIF shows *.dotx import with complex content (table, shape, formatted text and fields):

Older blog entries ->