]> git.donarmstrong.com Git - lilypond.git/blobdiff - python/auxiliar/postprocess_html.py
Merge branch 'lilypond/translation' of ssh://jomand@git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / python / auxiliar / postprocess_html.py
index 308e4370ac84500b6d13dddc760e5c1f22e51931..4e41b09803b2200d8b22492f168b96c10990dacb 100644 (file)
@@ -44,6 +44,12 @@ footer = '''
 </p>
 </div>
 '''
+
+web_footer = '''
+<div class="footer">
+</div>
+'''
+
 footer_name_version = _doc ('This page is for %(package_name)s-%(package_version)s (%(branch_str)s).')
 # ugh, must not have "_doc" in strings because it is naively replaced with "_" in hacked gettext process
 footer_report_links = _doc ('Your <a href="%(suggest_Docs_url)s">suggestions for the documentation</a> are welcome, please report errors to our <a href="%(mail_address_url)s">bug list</a>.')
@@ -93,8 +99,10 @@ def build_pages_dict (filelist):
 def source_links_replace (m, source_val):
     return 'href="' + os.path.join (source_val, m.group (1)) + '"'
 
-splitted_docs_re = re.compile ('(Documentation/out-www/(notation|\
-music-glossary|application|learning|snippets))/')
+# More hardcoding, yay!
+splitted_docs_re = re.compile ('(Documentation/out-www/(automated-engraving|essay|notation|music-glossary|application|general|learning|snippets))/')
+lily_snippets_re = re.compile ('(href|src)="([0-9a-f]{2}/lily-.*?)"')
+pictures_re = re.compile ('src="(pictures/.*?)"')
 
 docindex_link_re = re.compile (r'href="index.html"')
 
@@ -105,7 +113,8 @@ docindex_link_re = re.compile (r'href="index.html"')
 # this also fixes missing PNGs only present in translated docs
 def hack_urls (s, prefix):
     if splitted_docs_re.match (prefix):
-        s = re.sub ('(href|src)="(../lily-.*?|.*?[.]png)"', '\\1="../\\2"', s)
+        s = lily_snippets_re.sub ('\\1="../\\2"', s)
+        s = pictures_re.sub ('src="../\\1"', s)
 
     # we also need to replace in the lsr, which is already processed above!
     if 'input/' in prefix or 'Documentation/topdocs' in prefix or \
@@ -151,10 +160,8 @@ def add_header (s, prefix):
             if not n:
                 s = header + s
 
-        s = header_tag + '\n' + s
-
         if doctype_re.search (s) == None:
-            s = doctype + s
+            s = doctype + header_tag + '\n' + s
 
         if css_re.search (s) == None:
             depth = (prefix.count ('/') - 1) * '../'
@@ -339,7 +346,10 @@ def process_html_files (package_name = '',
 
             ### add footer
             if footer_tag_re.search (s) == None:
-                s = add_footer (s, footer_tag + footer)
+                if 'general' in file_name:
+                    s = add_footer (s, footer_tag + web_footer)
+                else:
+                    s = add_footer (s, footer_tag + footer)
 
                 available, missing = find_translations (prefix, lang_ext)
                 page_flavors = process_links (s, prefix, lang_ext, file_name, missing, target)