emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Orgmode] Valid XHTML


From: Sebastian Rose
Subject: [Orgmode] Valid XHTML
Date: Fri, 31 Oct 2008 20:54:28 +0100
User-agent: Mozilla-Thunderbird 2.0.0.16 (X11/20080724)

Hi,

I'm currently writing a fulltext search engine for Org's
XHTML export.

Export is not valid XHTML:



1.) CDATA:

  <style type="text/css">
    .... styles ....
  </style>

  should be:

  <style type="text/css">
   <![CDATA[
    .... styles ....
   ]]>
  </style>

  Fix appended:

  - patch-missing-cdata-style.patch (org-exp.el)



2.) Missing quotes:

  <link rel=stylesheet href="stylesheet.css" type="text/css" />

  should be:

  <link rel="stylesheet" href="stylesheet.css" type="text/css" />


  My fault. I copied and pasted.

  Fixes appended:
   - patch-stylesheet-missing-quotes.patch (org-publish.el, doc strings)
   - patch-stylesheet-missing-quotes-texi.patch (org.texi)




4.) missing entities in link texts (not the URL):

<a href="http://xy.com/foo.php?f=1&t=bar";>http://xy.com/foo.php?f=1&t=bar</a>

should be:

<a href="http://xy.com/foo.php?f=1&t=bar";>http://xy.com/foo.php?f=1&amp;t=bar</a>


   Not shure how to this in org-exp.el, org-export-as-html - is there a
   function I should use?





5.) index file is not well-formed XML:

sitemap.html:291: parser error : Opening and ending tag mismatch: body line 43 and div
  </div>
        ^
sitemap.html:297: parser error : Opening and ending tag mismatch: html line 3 and body
  </div></body>
               ^
  sitemap.html:298: parser error : Extra content at the end of the document
  </html>
  ^

  Seems there is one '</div>' too much.

  It's the </div> directly after the </ul> (never opened after title)

  Two possible fixes:

    <h1 id="title">Sitemap</h1>
    <div>    /* <- either insert this one */
      <ul>
       ...
      </ul>
    </div>   /* <- or delete this one */







Last but not least, a general question:

* Problem with xmllint:

  Not defined entities:

   - &hellip;
   - &mdash;
   - mayby more

   Not shure, how to fix this.

   http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd
   already includes these:

   http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent
   http://www.w3.org/TR/xhtml1/DTD/xhtml-symbol.ent
   http://www.w3.org/TR/xhtml1/DTD/xhtml-special.ent


   But:

xmllint --dtdvalid http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd index.html

   gives me lots of errors for not defined enities.



Regards,

   Sebastian
diff --git a/lisp/org-publish.el b/lisp/org-publish.el
index e0cf4bd..db09e17 100644
--- a/lisp/org-publish.el
+++ b/lisp/org-publish.el
@@ -75,4 +75,4 @@
 ;;                   :with-section-numbers nil
 ;;                  :table-of-contents nil
 ;;                   :recursive t
-;;                  :style "<link rel=stylesheet href=\"../other/mystyle.css\" 
type=\"text/css\">")))
+;;                  :style "<link rel=\"stylesheet\" 
href=\"../other/mystyle.css\" type=\"text/css\">")))

 ;;;; More complex example configuration:

@@ -103,7 +103,7 @@
 ;;                    :headline-levels 3
 ;;                     :with-section-numbers nil
 ;;                    :table-of-contents nil
-;;                    :style "<link rel=stylesheet 
href=\"../other/mystyle.css\" type=\"text/css\">"
+;;                    :style "<link rel=\"stylesheet\" 
href=\"../other/mystyle.css\" type=\"text/css\">"
 ;;                    :auto-preamble t
 ;;                    :auto-postamble nil)
 ;;         ("images" :base-directory "~/images/"
diff --git a/doc/org.texi b/doc/org.texi
index b675d92..b623b3e 100644
--- a/doc/org.texi
+++ b/doc/org.texi
@@ -8212,7 +8212,7 @@ directory on the local machine.
          :publishing-directory "~/public_html"
          :section-numbers nil
          :table-of-contents nil
-         :style "<link rel=stylesheet
+         :style "<link rel=\"stylesheet\"
                 href=\"../other/mystyle.css\"
                 type=\"text/css\">")))
 @end lisp
@@ -8249,7 +8249,7 @@ right place on the web server, and publishing images to 
it.
           :headline-levels 3
           :section-numbers nil
           :table-of-contents nil
-          :style "<link rel=stylesheet
+          :style "<link rel=\"stylesheet\"
                   href=\"../other/mystyle.css\" type=\"text/css\">"
           :auto-preamble t
           :auto-postamble nil)
diff --git a/lisp/org-exp.el b/lisp/org-exp.el
index e680be0..ac59bab 100644
--- a/lisp/org-exp.el
+++ b/lisp/org-exp.el
@@ -492,6 +492,7 @@ Org-mode file."

 (defconst org-export-html-style-default
 "<style type=\"text/css\">
+  <![CDATA[
   html { font-family: Times, serif; font-size: 12pt; }
   .title  { text-align: center; }
   .todo   { color: red; }
@@ -518,7 +519,7 @@ Org-mode file."
                                white-space:nowrap; }
   .org-info-js_search-highlight {background-color:#ffff00; color:#000000;
                                  font-weight:bold; }
-
+ ]]>
 </style>"
   "The default style specification for exported HTML files.
 Please use the variables `org-export-html-style' and
@@ -547,11 +548,13 @@ you should consider to include definitions for the 
following classes:
 For example, a valid value would be:

    <style type=\"text/css\">
+    <![CDATA[
        p { font-weight: normal; color: gray; }
        h1 { color: black; }
       .title { text-align: center; }
       .todo, .timestamp-kwd { color: red; }
       .done { color: green; }
+    ]]>
    </style>

 If you'd like to refer to en external style file, use something like

reply via email to

[Prev in Thread] Current Thread [Next in Thread]