LibreOffice XML Help in your local browser
Bringing 2017 to LibreOffice Help
- Track: Open Document Editors devroom
- Room: K.4.401
- Day: Saturday
- Start: 12:30
- End: 12:50
Currently the LibreOffice help system is based on a technology developed circa 2005, and uses the internal Writer - Web module to display its contents. This presentation introduces our efforts to bring the LibreOffice Help system into a modern 2017 technology, preserving our legacy contents and l10n processes.
Introduction
Currently the LibreOffice help system, here forth called HC2 is based on a technology developed circa 20051, and uses the internal Writer - Web module to display its contents. HC2 uses a combination of XML and XLST technology to display contents in Writer/Web and is historically bounded to HTML version 3.2 . As a consequence, the HC2 misses multimedia resources such as videos, animations as well as a modernized concept of CSS and Javascript for better user experience.
Further, the HC2 XML schema (XHP) requires special tools (HelpAuthoring) for editing its contents and a simple inspection on the schema indicates most of its elements are now part of W3C standard HTML5, turning XHP almost obsolete. Current help authoring tools are buggy and requires steep learning curve for the unskilled volunteers.
History of LibreOffice XML Help
LibreOffice Help System was designed and implemented in 2005 by SUN Microsystems ant the times where the "Browswer war" raged and no standard published by W3c was adopted in full by the major browser players. The WWW hijack by major corporations was played in the browser battlefield, twisting specs and invalidating page rendering to build fences around browsers and servers and creating silos of web display technologies;
SUN Microsystem adopted an internal only solution, with a A specific XML (XHP) to hold contents and navigation and an internal browser (Writer Web), that beared a resticted HTML 3.2 specification, together with a C++ wrapper to create index and proper calls
2017 issues for Help System
The current (2005) help system is in a state that is is complex edit/update contents, hard to test and visualize results. There is no rich text available except an authoring extension to LibreOffice that uses Writer as rich text editor but has several issues in exportng and importing xhp files. To use this extension features is as hard as learning XHP itself and as hard as to attempt to edit content with a simple text editor as vim or emacs.
Furthemore the rich text authoring is bounded to the current XHP schema, doubling the effort when it comed to evolove XHP, because the tools must follow the new schema.
The current HTML 3.2 implemetation with LibreOffice Writer / Web rendereing engine, is also bounded to simple images and text, and no video nor another multimedia resource is avalable for the user.
General requirements
The new help system for LibreOffice must support important requirements
It must preserve legacy contents, composed into thousands of XHP files covering all 6 LibreOffice modules and an internal user guide.
It must also preserve the dozens of translations done on these legacy XHP files and the translation process must be ideally preserved or incur in the least perturbation possible.
It must use open, royalty free standars of web technologies, supoort all major browsers of 2017, OS independent.
It must be of easy access, low entry barrier for newbies, volunteers an have support of ease of use editing tools.
It must be perfectly handled by git version control
It must work Off-line and on-line
Strategy
The strategy of the project is in 2 pieces
1) Progressively phase out XHP and phase-in HTML5
HTML5 is a serious candidate to deserve our efforts to bring back our hep content into a general purpose rendering technology, suport moder CSS, javascript, other companion technologies
2) Develop a micro javascript server capable of
- Display the correct help page required by the LibreOffce applicaiton
- Use most of the resources such as navigation history, bookmarking, caching incluced in any major browser
- Handle indexing and searching text among pages
- support XHP and HTML simultaneously
Demo
We will demo where we are at the moment
Concusions
Part of the cost of a technology adoption is its capability to be quickly absorbed by its target audiences. Documentation and help systems plays a key role for the adoption of LibreOffice not only in the home but also in the corporations. Having a dynamic and rich help content that can make users feel the better experience in seeking help is a key step LibreOffice project is taking to inclrease its popularity. The project described here is our current status and will be real very soon.
Speakers
Olivier Hallot |