LibreOffice

From ArchWiki

From LibreOffice website:

LibreOffice is a powerful, free and private office suite - the successor project to OpenOffice - used by millions of people around the world. It's compatible with Microsoft Office (365) and is backed by a non-profit organisation, The Document Foundation. LibreOffice includes Writer (word processing), Calc (spreadsheets), Impress (presentations), Draw (vector graphics and flowcharts), Base (databases), and Math (formula editing).[1]

Installation

Install one of the following packages:

  • libreoffice-still is the stable maintenance branch with relatively rare updates, for conservative users.
  • libreoffice-fresh is the feature branch, with new program enhancements for early adopters or power users.
Note:

Check the optional dependencies pacman displays. If you use HSQLDB Embedded in LibreOffice Base, you must install a Java Runtime Environment. You may need hsqldb2-javaAUR to use some modules in LibreOffice Base.

Theme

LibreOffice includes support for GTK and Qt theme integration. See also Uniform look for Qt and GTK applications.

LibreOffice will try to auto detect the most suitable VCL interface based on your desktop environment. To force the use of a certain VCL interface, e.g. "gtk4" set the environment variables SAL_USE_VCLPLUGIN=gtk4. For more user interface options see /etc/profile.d/libreoffice-fresh.sh or /etc/profile.d/libreoffice-still.sh, where the variables are listed and can be uncommented.

Extension management

The following additional extensions are available:

For more extensions, check the AUR, the built-in LibreOffice Extension manager, or libreplanet.

Fonts

The Document Foundation wiki mentions various fonts that are packaged by default with LibreOffice on Windows and macOS. On Arch, the following packages may be installed for the fonts:

Also see Fonts#Font packages.

Language aids

Spell checking

For spell checking, please make sure hunspell is properly installed; this should be the case for both still and fresh LibreOffice versions. Then install a language dictionary for hunspell like hunspell-en_us for American English or hunspell-de for German (check the AUR if your language is not in the official repositories). Then enable the Writing aids by selecting the check-box in Tools > Options > Language Settings > Writing Aids > Hunspell SpellChecker after restarting LibreOffice.

Finnish

Unlike other languages, Finnish spellchecking and grammar checking are based on Voikko. For LibreOffice voikko-libreofficeAUR should be installed.

Greek

Project Orthos provides more complete Greek spell checkers as Libreoffice extensions. Package libreoffice-extension-orthos-greek-dictionaryAUR provides a Greek-only spelling dictionary, while libreoffice-extension-orthos-greek-english-dictionaryAUR provides one that bundles Greek and US English.

Bidirectional support

Note: If your locale is set to a Bidi language, Libreoffice should enable CTL by default, but it might set it incorrectly to Hindi.

To enable Bidi support, select the check-box for Complex Text Layout (CTL) from: Tools > Options... > Languages and Locales > General > Default Languages for Documents, then choose the appropriate language. Language alignment can then be forced by RCtrl + RShift and LCtrl + LShift. There's a known issue that switches text direction when paragraph style changes.

Hyphenation rules

For hyphenation rules, you will need hyphen and a language hyphen rule set (hyphen-en for English, hyphen-de for German, etc).

Thesaurus

For the thesaurus option, you will need libmythes and a mythes language thesaurus (like mythes-en for English, mythes-de for German, etc).

Greek

For Greek, instead of mythes-elAUR you may want to try out libreoffice-extension-orthos-greek-thesaurusAUR, which includes more words.

Grammar checking with LanguageTool

For grammar checking, several tools are available. The most common is languagetool. Instructions on how to use it depend on which version of LibreOffice you have.

Since version 7.4, LibreOffice supports LanguageTool natively, no extensions are needed:

  1. Click on Tools > Options... > Language and Locales > LanguageTool Server.
  2. Enable LanguageTool by selecting the check-box.
  3. The URL to use depends on whether you have a remote account (free or premium), or are running a local server:
    • If you have a remote free account, use https://api.languagetool.org/v2. Leave the other two text fields blank.
    • If you have a remote premium account, use https://api.languagetoolplus.com/v2 as "Base URL", write your email address, and type in the API key.
    • If you have set up a local LanguageTool server, use http://localhost:8081/v2 as "Base URL". Leave User name and API Key empty.
  4. Click OK, and open a Writer document if one is not already open.
  5. Select the check-box Tools > Automatic Spell Checking.

See LanguageTool page for more information.

Offline help

libreoffice-still and libreoffice-fresh provide the offline help files for en-US. Help files for different locales is provided by the appropriate libreoffice language package, (i.e., libreoffice-fresh-en-za provides the help files for en-ZA locales).

Tips and tricks

Speed up startup

The factual accuracy of this article or section is disputed.

Reason: Spell-checking and grammar-checking does not affect the startup speed of LibreOffice and it significantly limits its features. (Discuss in Talk:LibreOffice)
  • Disable startup logo: If you prefer to disable the startup logo screen with loading progress, open /etc/libreoffice/sofficerc, find the Logo= line and set it to Logo=0. Alternatively, use the --nologo CLI option.
  • Disable Java Runtime: If you are not using features that rely on Java, consider disabling the Java runtime. Go to Tools > Options > LibreOffice > Advanced and uncheck Use a Java runtime environment.
  • Turn off AutoSpellcheck: in Tools > Options > Language Settings > Writing Aids uncheck Check spelling as you type and Check grammar as you type.

Installing macros

If you intend to use macros, you must have a Java Runtime Environment enabled.

The default path for macros in Arch Linux is different from most Linux distributions. Its location is: ~/.config/libreoffice/4/user/Scripts/.

Base as a database frontend

Base can be used as a frontend to a database like PostgreSQL. It cannot edit the tables but It gives a very nice overview of the columns and rows of a table with the possibility of hiding columns for better overview of the relevant data. It can also filter the data and enables deletion of multiple rows by selecting them and easy editing of single cells.

It can also help construct SQL queries with the help of a query GUI.

Automated document conversion based on LibreOffice or OpenOffice

Document conversion can be done by libreoffice directly if called with the --headless command line option. For example, to convert a .odt into .pdf file, you can issue:

$ libreoffice --headless --convert-to pdf ./*.odt

Another option is to use the command line tool unoconv, which is an automated conversion and styling tool that uses LibreOffice. Even though it requires more work [4], it is still very useful as it is. It either connects to a running LibreOffice, starts one for its own usage, or connects to a running instance that was started explicitly for its usage. A running X server is not required.

Notification sounds

Some user actions like closing LibreOffice with an unsaved document will bring up the "Save Document?" popup window together with a notification sound. Enabling/disabling notification sounds can be tried by changing the GTK configuration option gtk-enable-event-sounds, see GTK#Examples.

Troubleshooting

A general way to track down problems is the safe mode in LibreOffice:

$ libreoffice --safe-mode

Font substitution

In case the document uses a font that is not installed in the system, LibreOffice will use an alternative font to render the document. This is called "font substitution".

LibreOffice uses fontconfig to resolve fonts.

To find out which font is the substitute for a missing font, you can issue:

$ fc-match "My Font"

If the result is something like My Font.otf, it means the font is correctly installed. If the result is something different, it means that "My Font" is not installed and is being substituted by something else.

Note that LibreOffice will not issue any errors or messages when it substitutes a font with another. It just puts the name of the font on the toolbar in italics, which mean the font is missing and is being substituted.

Substitution proposed by fontconfig can be overridden with LibreOffice. To override a fontconfig substitution, proceed as follows.

From the drop-down menu, select Tools > Options > LibreOffice > Fonts. Check the box that says Apply Replacement Table. Type the name of your font, for example My Font, in the font box and choose your desired font for the Replace with option. When done, click the checkmark. Then choose the Always and Screen only options in the box below. Click OK.

Anti-aliasing

This article or section is a candidate for merging with Font configuration.

Notes: please use the second argument of the template to provide more detailed indications. (Discuss in Talk:LibreOffice)

Execute:

$ echo "Xft.lcdfilter: lcddefault" | xrdb -merge

To make the change persistent, add Xft.lcdfilter: lcddefault to your ~/.Xresources file, and make sure to run $ xrdb -merge ~/.Xresources (source). See X resources for more details.

If this does not work, you can also try adding Xft.lcdfilter: lcddefault to your ~/.Xdefaults. If you do not have this file, you will have to create it.

Hanging when using NFSv3 shares

If LibreOffice hangs when trying to open or save a document located on a NFSv3 share, try prepending the following lines with a # in /usr/lib/libreoffice/program/soffice:

# file locking now enabled by default
SAL_ENABLE_FILE_LOCKING=1
export SAL_ENABLE_FILE_LOCKING

To avoid overwriting on update you can copy /usr/lib/libreoffice/program/soffice in /usr/local/bin. Original post here.

LibreOffice does not detect certificates

See the official documentation.

Run .pps files in edit mode (without slideshow)

The only solution is to rename the .pps file to .ppt.

Add the following script to your home directory and use it to open every .pps file. Very useful to open .pps files received by email without the need to save them.

#!/bin/sh
f=$(mktemp --suffix .ppt)
cp "$1" "${f}" && libreoffice "${f}" && rm -f "${f}"

Media support

If embedded videos are just gray boxes, make sure to have installed the GStreamer plugins required.

Default paper size in Writer and Draw

If the default paper size in blank Writer and Draw documents is persistently incorrect for your locale, try installing the libpaper optional dependency and either updating /etc/papersize (for a system-wide change) or exporting the PAPERSIZE environment variable (for a user change) with your preferred paper size. See papersize(5)[dead link 2023-03-12].

Note: libpaper defaults to Letter paper size if nothing else has been set.

LibreOffice toolbars unreadable with dark Breeze/Plasma 5 theme

Change the icon style in Tools > Options > LibreOffice > View > Icon Style to "Breeze Dark" or another readable icon style. You may need to install the breeze-gtk package.

If that is not enough, ensure that LibreOffice starts using the gtk3 or gen interface (see #Theme).[5]

AutoText expected default behaviour not functional in system locales other than en_US

If expected default AutoText behaviour is not present (for example, typing fn in a document in Writer and then pressing the F3 key does not result in the automatic insertion of a numbered function) when the system locale is not en_US you need to add the default en_US AutoText templates to your AutoText path. To do this, go to Tools > AutoText..., then click on Path... and add the following path to the list: /usr/lib/libreoffice/share/autotext/en-US. AutoText should now work as expected by default.

LibreOffice freezes or crashes

Disable OpenCL and/or OpenGL by setting the environment variable SAL_DISABLE_OPENCL=1 and/or SAL_DISABLEGL=1. The LibreOffice safe mode also offers the option to disable both.

If LibreOffice is freezing or failing to start with the message "Application Error" but works fine when OpenCL is disabled, try installing an OpenCL runtime.

Wayland and HiDPI

To work around issues with scaling UI elements in Wayland on HiDPI screens, try to specify a VCL interface (e.g., gtk3 or qt6). See #Theme.

Multiple screens with different scaling are affected by a bug preventing proper scaling on all screens. As a workaround start LibreOffice in Xwayland-mode (e.g. WAYLAND_DISPLAY= libreoffice).

KDE Plasma under Wayland only shows the generic LibreOffice icon for each application

The KDE Plasma taskbar under Wayland only displays the generic LibreOffice icon instead of specific icons for Writer, Calc, Impress, etc. To address the issue, modify the .desktop files for each LibreOffice application to include the environment variable QT_QPA_PLATFORM=xcb. Log out and log back in for the fix to go into effect.

kio-fuse and webdav

To ensure LibreOffice always falls back on kio-fuse for remote files (instead of its internal webdav implementation and password store), remove ,webdav,webdavs from the X-KDE-Protocols key in all libreoffice*.desktop files.

KDE Plasma/GNOME + Wayland with or without fractional scaling results in terrible lag when scrolling

Users of KDE Plasma 6 and 5 and some users testing with GNOME have reported issues of terrible lag while scrolling through documents as reported in [6]. Running LibreOffice through X11 can solve the issue (There are reports that the issue is not resolved in GNOME when using the GTK3 backend). This can be done individually by the setting the environment variable QT_QPA_PLATFORM=xcb libreoffice while in KDE Plasma (QT) or GDK_BACKEND=x11 libreoffice while in GNOME (GTK). Each .desktop file can be edited to permanently apply the change until a fix is found. Users can also switch back to X11 to mediate the issue.

See also