Hvordan man konverterer en UserBase manual til Docbook

From KDE Wiki Sandbox
Revision as of 12:58, 6 April 2020 by Claus chr (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Forord

Den aktuelle proces er ikke finslebet, skriptkoden er grim og ikke intelligent nok osv. Den eneste undskyldning er, at det kræver noget arbejde .

Hvis du ønsker at forbedre processen, er vel bekendt med Python og kender principperne for at skrive docbook-dokumenter, så kan du forbedre proceduren. Kontakt Yurchor, hvis du kan hjælpe.

Forbered en side for konvertering

  • Tjek, at hver side har en overskrift svarende til sidens niveau i indholdsfortegnelsen.
Referencetabel
UserBase Docbook Kommentar
==Section== <chapter>
===Section=== <sect1>
====Section==== <sect2>
=====Section===== <sect3>
======Section====== <sect4> Undgå så vidt muligt at bruge dette sidste niveau
  • Sørg for, at formatteringen af programnavne er konsistent (undgå at bruge Amaroks, brug Amarok's — i danske oversættelser skal apostroffen dog normalt ikke være der).
  • Sørg for, at alle billeder er i PNG-format.
  • Fjern alle ikke-printbare tegn fra billednavne.

Eksport

  • Forbered sidelisten (fjern UserBase-adressedelen http://userbase.kde.org). Eksempel for Amarok:
Amarok/Manual/Introduction
Amarok/QuickStartGuide
Amarok/QuickStartGuide/GettingStarted
Amarok/QuickStartGuide/TheAmarokWindow
Amarok/QuickStartGuide/TheMusicCollection
Amarok/QuickStartGuide/Playlists
Amarok/QuickStartGuide/TheContextView
Amarok/QuickStartGuide/HowToDealWithProblems
Amarok/QuickStartGuide/Glossary
Amarok/Manual/AmarokWindow
Amarok/Manual/AmarokWindow/Toolbar
Amarok/Manual/AmarokWindow/MediaSources
Amarok/Manual/AmarokWindow/ContextPane
Amarok/Manual/AmarokWindow/PlaylistPane
Amarok/Manual/ConfiguringAmarok
Amarok/Manual/ConfiguringAmarok/ChangingLayout
Amarok/Manual/Organization
Amarok/Manual/Organization/Collection
Amarok/Manual/Organization/CollectionScanning
Amarok/Manual/Organization/Collection/SearchInCollection
Amarok/Manual/Organization/Collection/OrganizeCollection
Amarok/Manual/Organization/Collection/RemoteCollections
Amarok/Manual/Organization/Collection/RemoteCollections/Ampache
Amarok/Manual/Organization/Collection/RemoteCollections/DAAP
Amarok/Manual/Organization/Collection/RemoteCollections/Samba
Amarok/Manual/Organization/Collection/RemoteCollections/UPnP
Amarok/Manual/Organization/Collection/ExternalDatabase
Amarok/Manual/Organization/Collection/WorkingWithMediaDevices
Amarok/Manual/Organization/CoverManager
Amarok/Manual/Organization/TagEditor
Amarok/Manual/Organization/Transcoding
Amarok/Manual/Organization/ScriptManager
Amarok/Manual/Playlist
Amarok/Manual/Playlist/SavedPlaylists
Amarok/Manual/Playlist/PlaylistFiltering
Amarok/Manual/Playlist/QueueManager
Amarok/Manual/Playlist/DynamicPlaylists
Amarok/Manual/Playlist/AutomaticPlaylistGenerator
Amarok/Manual/Various
Amarok/Manual/Various/Moodbar
Amarok/Manual/Various/AmarokOnOtherPlatforms
Amarok/Manual/Various/AmarokOnOtherPlatforms/NonKDE Desktops
Amarok/Manual/Various/AmarokOnOtherPlatforms/Windows
Amarok/Manual/Various/AmarokOnOtherPlatforms/OSX
Amarok/Manual/Various/TroubleshootingAndCommonProblems
Amarok/Manual/Various/FAQ
Amarok/Manual/References
Amarok/Manual/References/MenuAndCommandReference
Amarok/Manual/References/MenuAndCommandReference/AmarokMenu
Amarok/Manual/References/MenuAndCommandReference/ViewMenu
Amarok/Manual/References/MenuAndCommandReference/Playlist
Amarok/Manual/References/MenuAndCommandReference/Tools
Amarok/Manual/References/MenuAndCommandReference/Settings
Amarok/Manual/References/MenuAndCommandReference/Help
Amarok/Manual/References/KeybindingReference
Amarok/Manual/References/KeybindingReference/GlobalShortcuts
Amarok/Manual/References/KeybindingReference/AmarokShortcuts
Amarok/Manual/References/Credits and License
Tip
Du kan få din manuals fulde sideliste med følgende skript:
<DPL>
  nottitlematch = %/__|%/zh-%|%pt-%|%(%)
  titlematch = Appname/Manual%
  namespace = 
  columns = 1
  format = ,\n* [[%PAGE%|%TITLE%]],,
</DPL>
Erstat Amarok med navnet på dit program, Skriv det ind på din brugerside og klik på Forhåndsvisning. Arrangér listen på samme måde som i manualens indholdsfortegnelse.


Note
Hvis du arbejder på Amarok-manualen, så vær opmærksom på, at den ikke følger konventionerne for navngivning af sider helt. Du kan bruge
titlematch = Amarok/Manual%|Amarok/QuickStartGuide%
(Bemærk: Ingen mellemrumstegn i titelmønsteret!)


  • Kopiér sidelisten ind i det store tekstfelt.
  • Klik på Eksporter.
Eksport af Amaroks manualsider
  • Gem filen. Den gemte fil vil blive kaldt Manual.xml i det følgende.

Konvertering

  • Installér pakken Subversion på dit system.
  • For at udtjekke den seneste udgave af konverteringsskriptet kører du:
    svn checkout --depth=files svn://anonsvn.kde.org/home/kde/branches/work/doc/
  • Kopiér Manual.xml til skriptmappen.
  • Kør
    python wiki2docbook.py Manual.xml
    hvis du ønsker at downloade alle skærmbilleder (det tager nogen tid at hente alle billeder fra UserBase; du skal have grep og wget installeret), eller
    python wiki2docbook.py -s Manual.xml
    hvis du ikke behøver at downloade billederne.
Advarsel
På et tidspunkt blev det nædvendigt at føje en linje med
144.76.227.197 userbase.kde.org
til /etc/hosts for at kunne tilgå UserBase fra script'et. Dette er ikke længere tilfældet. Hvis du allerede har føjet sådan en linje til din /ext/hosts, så bør du fjerne den igen.


Efterbehandling

  • Omdøb Manual.xml.docbook til index.docbook.
  • Tjek, at konverteringen er foretaget korrekt:
    checkXML index.docbook
  • Ret fejlene (det er bedst at gøre det på UserBase siderne).
  • Konvertér docbook til HTML:
    meinproc4 index.docbook
  • Tjek HTML-siderne (alle billeder skal kunne ses, links må ikke føre til 404-sider).
  • Erstat store billeder med miniaturer ved at bruge convert fra ImageMagic
  • Ret links i docbook'en, sådan at de fører til afsnit i docbook'en, ikke til UserBase-sider.
  • Ret programnavnet så det stemmer overens med KDE's "entity list".
  • Kopiér index.docbook og billeder til din /doc-mappe og commit dem til arkivet.
Dokumentation for K3b på UserBase i Opera og den konverterede side i Konqueror.

Opdatering af din DocBook fra UserBase

For at opdatere din konverterede docbook skal du følge denne procedure:

  • Geneksportér XML fra UserBAse. Se afsnittet Eksport.
  • Brug scriptet til at opdatere indholdet (headere med sammenfatning, nøgleord og sidefod vil blive bevaret):
    python wiki2docbook.py -r index.docbook Manual.xml
  • Check dockbook'en, omdøb filen til index.docbooc og commit dem med skærmbilleder til dit arkiv.

Konvertér DocBook til andre formater

Konvertering til PDF

Det er som regel ikke nødvendigt at konvertete DocBook manuelt. Du kan downloade de konverterede PDF'er fra KDE's dokumentationssite

Skulle du have brug for yderligere tilpasning, så gør således:

  • Sørg for at du har en LaTeX-distribution installeret (som regel TeXLive).
  • Lav følgende scriptfil (med navnet buildpdm.sh) i din DocBook-mappe:
#!/bin/bash

export SGML_CATALOG_FILES=/usr/share/sgml/docbook/sqml-dtd-4.5/catalog:/usr/share/kf5/kdoctools/customization/catalog.xml:/usr/share/sgml/docbook/xml-dtd-4.5/docbook
# add -d to command below to keep the /tmp folder, so you can examine the generated tex.
./dblatex-cvs-install/bin/dblatex -d -b pdftex --style \
	kdestyle\
	-o $(pwd | awk -F/ '{ print $NF }').pdf \
	-P latex.output.revhistory=0  -P newtbl.use=1 \
	-P imagedata.default.scale=pagebound \
	-P literal.width.ignore=1 \
	-I $KDEDIR/share/doc/HTML/en/ \
	-X \
        $1
  • Download KDE-stilene:
git clone git://anongit.kde.org/websites/docs-kde-org.git
  • Tilpas dblatex-cvs-install/bin/dblatex således
#!/bin/sh

TEXINPUTS=:/path/to/your/dblatex-cvs-install/share/dblatex/latex//:$TEXINPUTS
export TEXINPUTS

/path/to/your/dblatex-cvs-install/share/dblatex/scripts/dblatex  $*

(Ændr /path/to/your/ passende)

  • Kopiér KDE-stilene (/dblatex-cvs-install/share/dblatex/latex/contrib/) til en TeX-mappe, hvor den kan findes af LaTeX-installationen (jeg har kopieret dem til /usr/share/texmf-dist/tex/latex/kde).
  • Opdatér stierne med mktexlsr fra root.
  • Kør ./buildpdf.sh index.docbook. Dette skulle give dig en PDF fil klar til brug.
  • Kopiér alle filer fra /tmp/tpb-din_bruger-cifre til arbejdsmappen.
  • Tilpas og redigér tex-filen med Kile efter behov.
  • Kompilér PDF-filen med Alt + 6.

Konvertering til EPUB

  • Sørg for at Calibre er installeret på din maskine.
  • Konvertér først din DocBook til HTML. Brug meinproc4 index.docbook til dette.
  • Start Calibre og vælg Tilføj bøger.
  • Vælg index.html i din DocBook-mappe. Vent til bogen er indlæst.
  • Vælg Konvertér bøger.
  • Udfyld metadata-felterne.
Indstillingsdialog til Calibre-konvertering.
  • Klik OK og vent til arbejdet er gjort.
  • Kopiér bogen fra ~/Calibre Library på din ebogslæser.