diff options
author | Timo Richter <timo@iera.de> | 2011-08-06 18:50:34 +0200 |
---|---|---|
committer | Jan Holesovsky <kendy@suse.cz> | 2011-08-26 13:43:54 +0200 |
commit | 4125fb5b27501a1481bf6746d4141d45896a3364 (patch) | |
tree | 7710580408696fc525b061d4a24e9c4ff6bbc188 /helpcontent2/wiki-to-help | |
parent | e56dbe6b95f14f9e4d3a416ea567b550fc9b79ed (diff) |
Added installation of a DLL to the HHC-Installer.
There is no need to do a reinstallation of hhc.
Added table of contents
New layout mwlib_mods are more flexible
Diffstat (limited to 'helpcontent2/wiki-to-help')
-rwxr-xr-x | helpcontent2/wiki-to-help/HHC/install_hhc.sh | 7 | ||||
-rwxr-xr-x | helpcontent2/wiki-to-help/convert.py | 10 | ||||
-rw-r--r-- | helpcontent2/wiki-to-help/htmlhelp.xsl | 24 | ||||
-rw-r--r-- | helpcontent2/wiki-to-help/mwlib_mods/__init__.py | 9 | ||||
-rw-r--r-- | helpcontent2/wiki-to-help/mwlib_mods/custom_nfo.py | 4 | ||||
-rw-r--r-- | helpcontent2/wiki-to-help/mwlib_mods/docbook_internLinks.py | 24 | ||||
-rw-r--r-- | helpcontent2/wiki-to-help/mwlib_mods/no_sections.py | 38 |
7 files changed, 105 insertions, 11 deletions
diff --git a/helpcontent2/wiki-to-help/HHC/install_hhc.sh b/helpcontent2/wiki-to-help/HHC/install_hhc.sh index ba93c78c26..8f13788827 100755 --- a/helpcontent2/wiki-to-help/HHC/install_hhc.sh +++ b/helpcontent2/wiki-to-help/HHC/install_hhc.sh @@ -32,6 +32,10 @@ cd "$HHDIR" # Install HTML Help Workshop wget -O htmlhelp.exe 'http://go.microsoft.com/fwlink/?LinkId=14188' + +# unneccessary +#wine htmlhelp.exe + cabextract -F hhc.exe htmlhelp.exe cabextract -F HHA.dll htmlhelp.exe @@ -40,12 +44,15 @@ cabextract -F hhupd.exe htmlhelp.exe cabextract -F itircl.dll hhupd.exe cabextract -F itss.dll hhupd.exe cabextract -F itcc.dll htmlhelp.exe +cabextract -F hhctrl.ocx hhupd.exe cp -a itircl.dll "$WINEPREFIX/drive_c/windows/system32/" cp -a itcc.dll "$WINEPREFIX/drive_c/windows/system32/" cp -a itss.dll "$WINEPREFIX/drive_c/windows/system32/" +cp -a hhctrl.ocx "$WINEPREFIX/drive_c/windows/system32/" wine regsvr32 'C:\WINDOWS\SYSTEM32\itcc.dll' wine regsvr32 'C:\WINDOWS\SYSTEM32\itircl.dll' wine regsvr32 'C:\WINDOWS\SYSTEM32\itss.dll' +wine regsvr32 'C:\WINDOWS\SYSTEM32\hhctrl.ocx' # Install MFC40.DLL wget -N http://activex.microsoft.com/controls/vc/mfc40.cab diff --git a/helpcontent2/wiki-to-help/convert.py b/helpcontent2/wiki-to-help/convert.py index cd0ffac143..1c92004e56 100755 --- a/helpcontent2/wiki-to-help/convert.py +++ b/helpcontent2/wiki-to-help/convert.py @@ -26,7 +26,8 @@ class Main(object): createChm = True # final keepTmp = True # final workingDir = "./test" # final - style=os.path.join(scriptpath,'xsl/htmlhelp/htmlhelp.xsl') # final + #style=os.path.join(scriptpath,'xsl/htmlhelp/htmlhelp.xsl') # final + style=os.path.join(scriptpath,'htmlhelp.xsl') # final tmp=None @@ -55,7 +56,8 @@ class Main(object): except OSError: pass - def createMetabook(self,xmldump,output): + @staticmethod + def createMetabook(xmldump,output): # TODO: move to class Metabook """ @xmldump String path @output String path @@ -68,7 +70,7 @@ class Main(object): with open(output,"w") as f: m.write(f) - def convert(self,source,dest,startpage=None): + def convert(self,source,dest,startpage=None,title="LibreOffice"): """ Create the converted files. @source XML-Dump-file @@ -87,7 +89,7 @@ class Main(object): #MW.render("--config=%s/wikiconf.txt"%(tmp), # "-w","docbook","-o",tmp+"/docbook.xml",*names) MW.render("--config=%s/wikiconf.txt"%(tmp), - "-w","docbook","-o",tmp+"/docbook.xml","-m",metabook) + "-w","docbook","-o",tmp+"/docbook.xml","-m",metabook,"--title",title) #and mwlib.apps.render #self.ex(self.mwpath+"mw-buildcdb","--input",source,"--output",tmp) and \ #self.ex( diff --git a/helpcontent2/wiki-to-help/htmlhelp.xsl b/helpcontent2/wiki-to-help/htmlhelp.xsl new file mode 100644 index 0000000000..ba7ce7357f --- /dev/null +++ b/helpcontent2/wiki-to-help/htmlhelp.xsl @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:doc="http://nwalsh.com/xsl/documentation/1.0" + xmlns:exsl="http://exslt.org/common" + xmlns:set="http://exslt.org/sets" + version="1.0" + exclude-result-prefixes="doc exsl set"> + +<!-- ******************************************************************** + $Id: htmlhelp.xsl 1676 2002-06-12 13:21:54Z kosek $ + ******************************************************************** + + This file is used by htmlhelp.xsl if you want to generate source + files for HTML Help. It is based on the XSL DocBook Stylesheet + distribution (especially on JavaHelp code) from Norman Walsh. + + ******************************************************************** --> + +<xsl:import href="xsl/html/chunk.xsl"/> +<xsl:param name="htmlhelp.use.hhk" select="0"></xsl:param> +<xsl:include href="xsl/htmlhelp/htmlhelp-common.xsl"/> +<xsl:param name="generate.index" select="1"/> + +</xsl:stylesheet> diff --git a/helpcontent2/wiki-to-help/mwlib_mods/__init__.py b/helpcontent2/wiki-to-help/mwlib_mods/__init__.py index 43368eee21..381f31211e 100644 --- a/helpcontent2/wiki-to-help/mwlib_mods/__init__.py +++ b/helpcontent2/wiki-to-help/mwlib_mods/__init__.py @@ -3,6 +3,15 @@ This package sets up modifications and bugfixes for mwlib. Usage: import mwlib_mods """ +# The order of the imports is relevant! + +import no_sections +no_sections.apply() + import docbook_internLinks +docbook_internLinks.apply() + import custom_nfo +custom_nfo.apply() + diff --git a/helpcontent2/wiki-to-help/mwlib_mods/custom_nfo.py b/helpcontent2/wiki-to-help/mwlib_mods/custom_nfo.py index 12a3497bed..e1df7845de 100644 --- a/helpcontent2/wiki-to-help/mwlib_mods/custom_nfo.py +++ b/helpcontent2/wiki-to-help/mwlib_mods/custom_nfo.py @@ -14,5 +14,7 @@ class WikiDB(mwlib.cdbwiki.WikiDB): print "Mod: WikiDB" self.nfo = self.get_data("nfo") or self.nfo self.siteinfo = self.get_data("siteinfo") or self.siteinfo -mwlib.cdbwiki.WikiDB=WikiDB + +def apply(): + mwlib.cdbwiki.WikiDB=WikiDB diff --git a/helpcontent2/wiki-to-help/mwlib_mods/docbook_internLinks.py b/helpcontent2/wiki-to-help/mwlib_mods/docbook_internLinks.py index ab54dd0c16..9c1bb08656 100644 --- a/helpcontent2/wiki-to-help/mwlib_mods/docbook_internLinks.py +++ b/helpcontent2/wiki-to-help/mwlib_mods/docbook_internLinks.py @@ -1,10 +1,13 @@ """ This enables the conversion of article links to internal links within the docbook output. +Usage: + import docbook_internLinks + docbook_internLinks.apply() Author: Timo Richter """ -# Set up nuwiki.adapt +## Set up nuwiki.adapt import mwlib.nuwiki class MyAdapt(mwlib.nuwiki.adapt): def getParsedArticle(self, title, revision=None): @@ -17,16 +20,18 @@ class MyAdapt(mwlib.nuwiki.adapt): """ Returns raw link targets """ return name -mwlib.nuwiki.adapt = MyAdapt +def setupAdapt(): + mwlib.nuwiki.adapt = MyAdapt -# Set up docbookwriter.grammar +## Set up docbookwriter.grammar import mwlib.docbookwriter import docbook45grammar -mwlib.docbookwriter.grammar = docbook45grammar.grammar +def setupGrammar(): + mwlib.docbookwriter.grammar = docbook45grammar.grammar -# Set up docbookwriter +## Set up docbookwriter import mwlib.docbookwriter import lxml.etree class MyDocBookWriter(mwlib.docbookwriter.DocBookWriter): @@ -63,5 +68,12 @@ class MyDocBookWriter(mwlib.docbookwriter.DocBookWriter): #dbwriteInterwikiLink = dbwriteLink# FIXME #dbwriteSpecialLink = dbwriteLink# FIXME -mwlib.docbookwriter.DocBookWriter = MyDocBookWriter +def setupDocBookWriter(): + mwlib.docbookwriter.DocBookWriter = MyDocBookWriter + +def apply(): + setupAdapt() + setupGrammar() + setupDocBookWriter() + diff --git a/helpcontent2/wiki-to-help/mwlib_mods/no_sections.py b/helpcontent2/wiki-to-help/mwlib_mods/no_sections.py new file mode 100644 index 0000000000..6869fed411 --- /dev/null +++ b/helpcontent2/wiki-to-help/mwlib_mods/no_sections.py @@ -0,0 +1,38 @@ +""" +Writes <article>...</article> instead of <article><section>...</section></article>. + +""" + +import mwlib.docbookwriter +#import lxml.etree +#Element = mwlib.docbookwriter.Element +class MyDocBookWriter(mwlib.docbookwriter.DocBookWriter): + def dbwriteArticle(self, a): + from mwlib.docbookwriter import * + """ + this generates the root element if not available + """ + #e = super(MyDocBookWriter,self).dbwriteArticle(a) + #e.remove(e.find("section")) + #return e + # add head + title + e = Element("article", lang=self.language) + if self.root is None: + self.root = e + h = SubElement(e,"articleinfo") + t = SubElement(h, "title") + if a.caption: + t.text = a.caption + + # DONT add a section and heading for this article + #s = SubElement(e, "section") + #si = SubElement(s, "sectioninfo") + #h = SubElement(si, "title") + #h.text = a.caption + #e.writeto = s + return e + +def apply(): + mwlib.docbookwriter.DocBookWriter = MyDocBookWriter + + |