LibreOfficeが使用するGUIツールキットを手動で指定する方法

Last modified: 2021-09-10

GUIツールキットの指定に用いる環境変数名がOpenOffice.orgとは異なっている

以前のOpenOffice.orgでは、各デスクトップ環境向けの統合機能のパッケージをインストールした状態でOOO_FORCE_DESKTOPという環境変数を

  • none(組み込みのGUIツールキット・古いWindowsのような外観)
  • gnome(GTK+)
  • kde(Qt)

の中から指定することでユーザインターフェースで使用されるGUIツールキットが選択できていた(無指定の場合は環境に応じて自動選択される)のだが、LibreOfficeのバージョン3.5系時点では、デスクトップ環境向けの統合機能のパッケージがインストールされていても、この環境変数では手動指定が機能しない。

調べてみると、SAL_USE_VCLPLUGINという環境変数が代わりに用いられることが分かった。

(アプリケーション一覧から開始)
$ SAL_USE_VCLPLUGIN=[名前] libreoffice &

(個別のアプリケーションを直接起動)
$ SAL_USE_VCLPLUGIN=[名前] [localc,lowriterなど] &

環境変数に指定する値とGUIツールキットの対応

環境変数SAL_USE_VCLPLUGINに指定する値は下の通りとなる。ここでは記事公開時点よりも新しいディストリで使用可能になったものも含めて掲載している。

GUIツールキット
gen 組み込みのGUIツールキット・古いWindowsのような外観
gtk GTK+ 2
gtk3 GTK+ 3
kde4 Qt4
qt5 Qt5
kf5 Qt5 (KDE Frameworks 5)

これはsoffice.binなどのあるディレクトリ(Ubuntu 12.04では/usr/lib/libreoffice/program/)にあるlibvclplug_[名前]lo.soという共有オブジェクトファイルに対応しており、これ以外にも “svp” といったものがあるが、これはウィンドウが画面に表示されない形(headlessプラグイン)となる。

指定する値が正しくても、GUIツールキットに対応させるプラグインやGUIツールキットがシステムにインストールされていないものは正しく動作しない。

手元のx86_64版Ubuntu 12.04では何故かlibreoffice-gtk3パッケージをインストールしてgtk3を指定してもGTK+ 3は使用されなかった(他の値を指定すると正常にGUIツールキットは変わっている)。

下の画像はgen指定のもの。 libreoffice-vclplug_genlo-writer

バージョン7.1系時点では、バージョン情報ダイアログを開くと “ユーザーインターフェース” という項目の “VCL:” のところにプラグイン名の文字列が表示され、どのGUIツールキットのプラグインが実際に使われているかが確認できる。

  • 使用したバージョン
    • LibreOffice 3.5.3.2, 7.1.5.2