We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

A Rocket Engine for LibreOffice Templates

00:00

Formal Metadata

Title
A Rocket Engine for LibreOffice Templates
Subtitle
Come to see what's in store for the recently-moved WollMux forms and templating engine extension for LibreOffice
Title of Series
Number of Parts
542
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
This talk is about WollMux, a form & templating generation extension for LibreOffice, that was recently moved under the LibreOffice project umbrella. We'll give a brief overview, talk about recent changes, and what's in store for the future.
14
15
43
87
Thumbnail
26:29
146
Thumbnail
18:05
199
207
Thumbnail
22:17
264
278
Thumbnail
30:52
293
Thumbnail
15:53
341
Thumbnail
31:01
354
359
410
Template (C++)Field extensionForm (programming)Java appletWeb 2.0Template (C++)BitComputer animation
InternetworkingHuman migrationJava SwingGraphical user interfaceTemplate (C++)Complex (psychology)Electric generatorForm (programming)Function (mathematics)EmailComputer programmingStatement (computer science)Java appletProgrammschleifeOpen sourceControl flowElectric generatorEmailView (database)Data managementComputer programmingSelectivity (electronic)Projective planeTemplate (C++)Complex (psychology)Extension (kinesiology)Form (programming)Sampling (statistics)Special unitary groupProduct (business)MereologyPhysical lawElement (mathematics)Computer animation
Fitness functionAdaptive behaviorProjective planeOpen sourceComputer animation
Repository (publishing)Computer fileTranslation (relic)Extension (kinesiology)Java appletCodeBuildingProjective planeTranslation (relic)Repository (publishing)NamespaceSoftware testingUniform resource locatorCloningSource codeString (computer science)Java appletPhysical systemCuboidNumberHypermediaBitWeb 2.0Software developerWikiComputer fileMereologyComputer animation
WikiExtension (kinesiology)Java appletLanding pageTemplate (C++)Form (programming)Translation (relic)Template (C++)Form (programming)BitLanding pageCrash (computing)Software bugSoftwarePhysical systemTranslation (relic)Online helpProcess (computing)Block (periodic table)Computer programmingJava appletQR codeElectric generatorBranch (computer science)Computer animation
Computer animationProgram flowchart
Transcript: English(auto-generated)
Okay, let's go, it's me again. Somebody just throw some, I don't know, vegetables at me if the ten minutes are over. If you came for a web assembly here, I have to disappoint you, so we'll have to wait
another one or two talks when we will talk about that. I repurpose the slot here to talk a little bit about something equally cool, wonderful, spiffy with a rocket engine for LibreOffice templates. Well, small disappointment, it's about Walmux, but I think it's, I'm kind of serious there,
perhaps the name, we could think about a different one. So quick intro, what is that, if you haven't heard about it. It's a Java extension to LibreOffice, and it's there for templates and forms management
and also like extending mail merge. So those are two views on it, the left one is the sidebar extension, you see three sidebar panels been added there, this is just a selection of sample templates there, and
the right side is the kind of constructed, generated document out of that thing. So all of that has been developed by the city of Munich starting around 2005ish to
2006ish under the Limox project umbrella, why? Because they wanted to migrate to OpenOffice, they wanted some template management and there was nothing that was powerful enough. So they did what you do when it's not there and you do open source stuff, you started
doing something yourself and then open sourced it. So that's what Munich did and there was some, well, it was in production I think since 2008 and there was some major upgrade to LibreOffice from OpenOffice which had some, to change some UNO stuff there, and another major rework migrating from Java swing dialogues
and UI to native LibreOffice UI and mostly sidebar which really nicely integrates as you've seen before. And this year, or end of last year, since the Limox project is kind of sun setting,
the extension itself which is extremely powerful, lovely, great, also cool for QA because it triggers really literally every little corner of the writer UNO API there, moving house to TDF.
Again, what is it in the first place? It's predominantly for, let's say, very complex document generation workflows that you will find in larger companies, perhaps also in law firms or something, but predominantly in the public sector.
The idea behind there is kind of assemble your letter on the fly and employ the dry principle and only ever have one stylistic element or part of the template defined once and then you kind of include that like PHP or other template programming languages,
so you kind of piece that together. There's also like loops and control flow statements that you can use to kind of very dynamically generate forms. There's a forms generator so you can kind of have some user guidance like where to fill in what and pre-fill things and also dynamically kind of say, oh, when this
is on, then do that or not to do that or disable here. As I said, mail merge stuff and yeah, this text programming and quotes, content-based directors doing something very dynamic. Okay, so that thing is now has moved to TDF end of last year and we have been quite
busy first of all, like doing the move and also like doing some adaptations and adjustments and getting a kind of fit for let's say an international open source project like LibreOffice.
What happened? Git repos moved to under the LibreOffice project on GitHub, which was an easy like click. So the old URL still work, then you got a redirect that's pretty nice feature on GitHub so everybody can still, who had this clone can still work with it, but the official
location is now there. We added some translation workflow stuff. We made the Java, like everything that it was a user visible string and the Java sources is now in PO files. We put this on TDF web blade so the UI can be translated.
We moved to documentation from a markdown Git-based workflow into media wiki, which is also much nicer than to translate for the community for this markdown stuff, essentially needed some kind of developer set up to do that and media wiki has really nice, excellent
translation support. Meanwhile, fixed a number of bugs, made sure that it actually works, not just with all the LibreOffice versions, but with most recent ones. We did some build fixes on the, there was some bits of the internal build system kind
of leaking through that still. So we made it actually build out of the box. So you clone that, you build that with Maven and it actually works. Some tweaks with namespaces so we can then upload artifacts to the LibreOffice Maven repository. And it doesn't have the old names anymore that were kind of sometimes internal to city
of Munich. We set up Jenkins drops so we can actually like not only run tests on pull requests, we can also run releases there on the CI and tons of smaller things like started
to do a comment translation in the code. Which we named variable names, got the build houses and other auxiliary documentation translated to English. It's not done, in particular the code stuff, that's not done. Part of that was already English, but there's quite a bit left.
Which gets us to next steps and the possible future. So the handbook is not fully, kind of super clean, the original handbook was German so we translated it to English and then we wanted to reuse the old German translation
because why do that work again? And with the bicke markups, so that's kind of busy work there and we're kind of still, mostly gone, we're still busy with that. I guess help appreciate it, but no, not, okay, so we get it done in the very near future.
Some renamings for the Java packages, that kind of blocks each other with possibly renaming the project, we don't want to rename it twice. Have some new landing page done, some more bug fixing, there's still some sidebar, not
some nice things and some thing that was one crash somewhere and then we want to reasonably soonish have some release there so that people actually can use that. If anybody's interested, we can have some snapshot possibly published, then again it should be relatively easy to build and if it's not, let's fix it.
So actually maybe not publishing snapshots far and wide is a feature, not a bug, so we can fix the build system. Yeah, renaming. So we kind of brainstormed a little bit in the background.
Those are three suggestions that we will probably mull over and think about. So this LibreOffice template tool or template engine is probably what it actually is. So people would understand what it does when they see that somewhere.
This forms some templates, it's a bit more ambitious because it does much more than just templates, but hey, naming is hard. So yeah, and if you're curious, come and help. So there's some easy hack there for common translation, that's the easiest thing to get your feet wet.
There are certainly more like UI and document translation, that would be great. And of course, if you have cool feature ideas, go get it implemented. So there's one thing that is, there's an old branch about QR code support, so you can kind of generate QR code and insert it like in this process of programmed software
controlled template generation, that would be nice to get in for other things that people want in templates these days. Okay, and that's it. Thanks so much.