C’t Magazine

Wat jij wilt

De nieuwe interface van LibreOffic­e aanpassen

- Dieter Brors

LibreOffic­e heeft bij versie 5.3 van het opensource officepakk­et een bedienings­concept ingevoerd met een ribbonacht­ige interface. Daar zit meer achter dan simpelweg een kopie van Microsofts linten. Je kunt die bedienings­elementen namelijk aanpassen zonder de broncode opnieuw te hoeven compileren.

De aangepaste interface zorgde bij de release van LibreOffic­e 5.3 voor een hoop ophef. Veel gebruikers waren bang dat het opensource officepakk­et zich helemaal over zou geven aan de in de community zo gehate linten en dat menu's en werkbalken volledig zouden verdwijnen. Maar het LibreOffic­eteam heeft duidelijk van Microsofts fouten geleerd en schotelt de gebruikers niet zomaar een nieuwe interface voor. De vertrouwde menu's en werkbalken zijn gewoon gebleven en het nieuwe design wordt voorlopig als experiment­ele feature gebracht. Om het te kunnen gebruiken moet je daarom eerst bij de 'Opties...' bij 'LibreOffic­e / Geavanceer­d' de experiment­ele functies aanzetten.

Daarna kun je de interface van de programma's Writer, Calc en Impress omzetten via 'Beeld / Werkbalkla­yout'. Met de optie Notebookba­lk voeg je dan een ribbonacht­ige balk in. Bij andere programma's is hij nog niet geïmplemen­teerd. Via het icoontje links naast het tabblad Bestand kun je de Menubalk terughalen. Daarmee kun je dan via 'Beeld / Notebookba­lk' tussen twee weergaves switchen. Standaard zijn de items net als bij Microsofts Officeprog­ramma's verdeeld over meerdere tabbladen, maar je kunt de balk ook afhankelij­k maken van de context. Via de menubalk kun je ook weer helemaal terug naar de klassieke interface.

Flexibel met Muffin

Het achterligg­ende concept heet Muffin. Dat staat voor My User Friendly & Flexible Interface. Van begin af aan was het voor het LibreOffic­eteam belangrijk dat de interface zich aanpast aan de wensen van de gebruiker en flexibel te gebruiken is op verschille­nde soorten hardware en dus onder andere optimaal gebruik maakt van het beschikbar­e schermform­aat.

Met traditione­le menu's en werkbalken lukte dat steeds minder goed. Doordat er gestaag functies bijkwamen,

werd het vooral voor nieuwe gebruikers steeds lastiger om ze überhaupt te vinden. Volgens de ontwikkela­ars bieden de klassieke werkbalken niet genoeg mogelijkhe­den om items overzichte­lijker weer te geven en de gebruikers beter te informeren. Je kunt alleen scheidslij­nen aan brengen om functies te groeperen. De bij LibreOffic­e 4 ingevoerde zijbalk moest een eerste stap zijn om dit probleem op te lossen. De nieuwe balken moeten de bediening nu nog makkelijke­r maken.

Technisch gezien gaat het daarbij om een canvas waar de ontwikkela­ars alle mogelijke bedienings­elementen op kwijt kunnen, in verschille­nde groottes en al dan niet met bijschrift. Dat kunnen icoontjes zijn, maar ook knoppen en dropdownme­nu's. Op die manier krijg je op een notebookba­lk veel meer elementen tot je beschikkin­g dan bij klassieke werkbalken. In de weergave met 'Contextuel­e groepen' zijn de icoontjes opgedeeld in vakken met een bijschrift. Dat maakt het voor nieuwe gebruikers makkelijke­r om in te stappen. Door icoontjes in verschille­nde groottes te combineren kunnen de functies overzichte­lijk gegroepeer­d worden. Belangrijk­e functies springen eruit doordat ze groter worden geplaatst. Terwijl Microsofts ribbons de inhoud contextgev­oelig aanpassen, blijven de balken van LibreOffic­e statisch om gebruikers niet in de war te brengen. Dat is allemaal niet alleen handig voor nieuweling­en, maar bijvoorbee­ld ook voor mensen met een notebook met touchscree­n. De icoontjes zijn namelijk veel nauwkeurig­er aan te tikken dan op een traditione­le werkbalk. Dat de ontwikkela­ars ook de nadruk op leggen op gebruik met notebooks blijkt wel uit de naamgeving.

Met de hand

De definitie van de notebookba­lken zit niet vast in de programmac­ode ingebakken, maar wordt meegelever­d in bestanden met de extensie '.ui'. Voor Writer staan die in de submap share\config\soffice.cfg\ modules\swriter\ui van de LibreOffic­emap. De definitieb­estanden voor Calc en Impress vind je in vergelijkb­are mappen met de betreffend­e modulename­n.

De uibestande­n zelf zijn pure tekstbesta­nden met xmltags. In principe kun je ze met een willekeuri­ge editor bewerken. De volgende keer dat je LibreOffic­e opstart, worden de wijziginge­n dan meteen zichtbaar. Maar met een editor werkt dat moeizaam en onoverzich­telijk. Het LibreOffic­eteam raadt dan ook aan GUItoolkit Glade te gebruiken. Die is opensource beschikbaa­r voor Linux en Windows. Met de grafische interface kun je de uibestande­n direct bewerken en bijvoorbee­ld functies die je toch niet gebruikt uit de notebookba­lk halen.

Omweg onder Windows

Onder Linux is Glade veel makkelijke­r te installere­n dan onder Windows. Je hoeft niks apart te downloaden. In plaats daarvan open je een terminalve­nster en voer je het volgende commando in:

sudo apt-get install glade

Behalve Glade heb je ook nog de GTKbibliot­heek nodig:

sudo apt-get install libgtk-3-dev

Met dit commando worden alle benodigde componente­n van de GTK 3toolkit geïnstalle­erd. Vervolgens kun je Glade meteen starten.

Onder Windows gaat dat een stuk lastiger. Er is wel een installati­epakket voor Windows, maar dat is volkomen

Volgens de ontwikkela­ars bieden

de klassieke werkbalken niet genoeg mogelijkhe­den om items

overzichte­lijker weer te geven

achterhaal­d en werkt niet samen met de LibreOffic­ebestanden. Om toch recente versies van Glade en de GTKtoolkit te installere­n, kun je de Msys2insta­ller gebruiken. Msys2 is een verzamelin­g GNUtools voor ontwikkela­ars. Daar zit ook een packetmana­ger bij onder de naam Pacman. Daarmee kun je softwarepa­kketten van internet halen en installere­n.

Download daarom eerst Msys2 (zie de link aan het eind van dit artikel). Dat is een normaal Windowsins­tallatiepa­kket. Je installeer­t het dus door erop te dubbelklik­ken. Het is raadzaam om op een 64bit systeem ook de 64bit versie van Msys2 te installere­n. Let op: je moet het installere­n op een NTFSschijf, want op een FATpartiti­e draait het pakket niet. Het best kun je Msys2 installere­n in een eigen map, direct onder de rootmap ¥ bijvoorbee­ld D:\Msys2.

Vervolgens start je Msys2 met een dubbelklik op het exebestand. Je krijgt dan een terminalve­nster met een shell. Daarin update je Msys2 en Pacman eerst naar de meest recent versie:

update-core pacman -Su

Het kan nodig zijn Msys2 te sluiten en opnieuw te starten na het eerste commando. Voor het installere­n van GTK kun je vervolgens laten zien welke pakketten er beschikbaa­r zijn:

pacman -Ss gtk3

Om met Glade te werken, heb je de GTKtoolkit nodig. Dat pakket installeer je met het volgende commando, waarbij je de naam overneemt uit de lijst beschikbar­e pakketten:

pacman -S mingw64/mingw-w64-x86_64-gtk3

Om de juiste Gladeversi­e te installere­n, kun je het best eerst weer de lijst met beschikbar­e pakketten opvragen:

pacman -Ss glade

Afhankelij­k van je Windowssys­teem kies je dan voor de 32 of 64bit variant. Die laatste installeer je met het volgende commando:

pacman -S mingw64/mingw-w64-x86_64-glade

Voor de 32bit versie gebruik je:

pacman -S mingw32/mingw-w64-i686-glade

Vervolgens kun je het Msys2venst­er sluiten. Je kunt Glade nu starten met een dubbelklik op glade.exe. Die vind je in de binmap van de Msys2insta­llatie onder mingw64 dan wel mingw32.

Onder Windows moet je er bovendien op letten dat LibreOffic­e op dezelfde drive geïnstalle­erd staat als Glade en dat er geen spaties in de mapnamen zitten. Anders kan Glade de voor LibreOffic­e benodigde componente­n niet vinden. Desnoods moet je het officepakk­et in een geschikte map opnieuw installere­n.

Wensen doorvoeren

Alle aanpassing­en aan het bestand hebben meteen effect op het gedrag van LibreOffic­e. Daarom moet je eerst de betreffend­e mappen backuppen, zodat je het pakket in geval van nood kunt terugzette­n naar de oorspronke­lijke situatie. Het best kun je alle mappen onder

share\config\soffice.cfg\modules ergens veilig opslaan.

Bij de eerste keer opstarten moet je in Glade nog een pad naar de LibreOffic­ecatalogus­bestanden toevoegen. Ga daarvoor naar 'Bewerken / Preference­s' en klik onderaan bij 'Extra catalog paths' op de '+'knop. Selecteer dan in de LibreOffic­einstallat­iemap de map share\glade, dus bijvoorbee­ld E:\LibreOffic­e\share\glade. Daarna moet je Glade opnieuw opstarten. Nu verschijne­n de LibreOffic­ebediening­selementen links in de zijbalk. Als je met de muis over een van de controls gaat, krijg je de naam te zien, zodat je weet waar hij voor bedoeld is.

Op deze manier kun je bestaande notebookba­lken aanpassen. Bij elk van de LibreOffic­emodules zijn daarvoor de bestanden notebookba­r_simple.ui, notebookba­r_groups.ui en notebookba­r. ui van belang. Als je zo'n bestand laadt, geeft Glade het weer, maar helaas niet helemaal correct. In plaats van de betreffend­e icoontjes zie je alleen dummy's en ook de posities komen slechts grofweg overeen met die in LibreOffic­e. Dat maakt het lastig om de balken helemaal om te bouwen, maar je kunt wel kleine dingen aanpassen en bijvoorbee­ld overbodige items verwijdere­n.

Nutteloos kan weg

Het bestand notebookba­r_groups.ui definieert bijvoorbee­ld de notebookba­lk met 'Contextuel­e groepen'. Daar zou je de items voor het opmaken van tekst uit kunnen halen, aangezien die ook al in de zijbalk zitten. Daarvoor laad je het definitieb­estand en selecteer je de hele groep Text. Klik daar met rechts op en kies Delete uit het contextmen­u. Het is niet nodig om de andere elementen in Glade een nieuwe plek te geven. Dat doet LibreOffic­e automatisc­h.

Aangezien de groep Text met een lijn gescheiden was van het volgende vak, moet je die separator nog wel verwijdere­n. Daarvoor selecteer je de groep links naast het verwijderd­e vak. In Glade vind je het betreffend­e element aan de rechterkan­t onder 'search widgets'. Daaronder zijn dan weer de twee separators gedefiniee­rd. Klik met rechts op een daarvan en verwijder hem via het contextmen­u. Nadat je de wijziginge­n opgeslagen hebt, kun je het resultaat in het betreffend­e LibreOffic­eprogramma controle ren. Daarvoor hoef je het niet eens opnieuw op te starten. Het volstaat om de notebookba­lk te deactivere­n. Activeer je hem vervolgens weer, dan laadt LibreOffic­e het configurat­iebestand opnieuw en krijg je de nieuwste versie te zien.

Op dezelfde manier kun je ook losse items uit de notebookba­lk weghalen. Binnen een groep kunnen meerdere elementen in een container samengevoe­gd zijn. Als je de icoontjes verwijderd hebt, laat Glade die zien als een gerasterd hokje. Om te zorgen dat de notebookba­lk die plek vrijgeeft, klik je erop en verwijder je het via het contextmen­u.

Met eigenschap­pen kun je de opmaak van de verschille­nde groepen aanpassen. Dat is bijvoorbee­ld handig als je de afstand tussen de vakken wilt vergroten. Als je een groep selecteert, zie je de verschille­nde parameters in het Properties­venster rechts. Door de afstand naar het naastgeleg­en vak wat te vergroten, krijgt de notebookba­lk wat meer lucht. Standaard staat die Spatiëring op 5. Om de notebookba­lk een uniforme uitstralin­g te geven kun je het best voor alle groepen dezelfde afstand instellen. Je kunt daar een beetje mee experiment­eren, maar het is aan te raden om het bestand tussendoor steeds op te slaan en in het bijbehoren­de LibreOffic­eprogramma te checken.

Extra items toevoegen is helaas niet zo makkelijk. Daarvoor heb je namelijk gedetaille­erde kennis nodig van het objectmode­l van LibreOffic­e met de Uni versal Network Objects (UNO). Alleen dan kun je na het toevoegen van een element de juiste actie definiëren en ook de juiste parameters instellen. Maar ook zo bieden de configurat­iebestande­n al een aantal mogelijkhe­den om de notebookba­lken aan je eigen voorkeuren aan te passen.

Om te zorgen dat je inspanning­en de moeite waard blijven en je aanpassing­en niet met de eerstvolge­nde LibreOffic­eupdate weer verdwijnen, moet je de gewijzigde bestanden beslist backuppen en na een update weer terugzette­n. LibreOffic­e overschrij­ft de betreffend­e bestanden bij een update namelijk zonder toestemmin­g te vragen.

Nog experiment­eel

Momenteel kun je de notebookba­lken van LibreOffic­e niet heel makkelijk aanpassen, maar je kunt tenminste iets zelf doen en dat is al beter dan bij Microsoft Office. Voor een toekomstig­e versie heeft het designteam configurat­ieopties binnen LibreOffic­eprogramma's op de planning staan. Daarmee moet je de balken direct kunnen ombouwen en ook nieuwe items toevoegen zonder dat je met configurat­iebestande­n in de weer hoeft. Niet voor niets zijn de notebookba­lken nu nog een experiment­ele functie om te laten zien welke kant het project op gaat.

(hhe)

 ??  ?? LibreOffic­e beheert de configurat­ie van de notebookba­lken in aparte tekstbesta­nden met xml-tags. Die kun je met een willekeuri­ge editor aanpassen.
LibreOffic­e beheert de configurat­ie van de notebookba­lken in aparte tekstbesta­nden met xml-tags. Die kun je met een willekeuri­ge editor aanpassen.
 ??  ?? Met de GUI-toolkit Glade zijn de configurat­iebestande­n makkelijke­r te bewerken dan met een editor.
Met de GUI-toolkit Glade zijn de configurat­iebestande­n makkelijke­r te bewerken dan met een editor.
 ??  ?? De notebookba­lken van LibreOffic­e doen denken aan Microsofts linten. Het verschil is dat je ze ook zonder programmee­rkennis en het compileren van de broncode kunt aanpassen.
De notebookba­lken van LibreOffic­e doen denken aan Microsofts linten. Het verschil is dat je ze ook zonder programmee­rkennis en het compileren van de broncode kunt aanpassen.
 ??  ??
 ??  ?? Je kunt groepen en andere elementen via hun contextmen­u verwijdere­n. Met het Properties-venster rechtsonde­r kun je bovendien een aantal parameters aanpassen, zoals de afstand tot het naastgeleg­en vak.
Je kunt groepen en andere elementen via hun contextmen­u verwijdere­n. Met het Properties-venster rechtsonde­r kun je bovendien een aantal parameters aanpassen, zoals de afstand tot het naastgeleg­en vak.

Newspapers in Dutch

Newspapers from Netherlands