[Top][All Lists]

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

Re: [Orgmode] Valid xhtml and org-html.el

From: Carsten Dominik
Subject: Re: [Orgmode] Valid xhtml and org-html.el
Date: Mon, 4 May 2009 16:22:05 +0200

Hi Sebastian,

On May 4, 2009, at 11:18 AM, Sebastian Rose wrote:


appended is a patch for org-html.el.

This is what it does:

1. <col></col> is no valid XHTML. Coltags must be empty. I.e., <col .... />


 2. <colgroup>...</colgroup> tags where missing


 3. A minor fix for the end of the CSS comments. Safari doesn't like
    and is right in this case. `//' does not start a comment in CSS.
    Therefore, I changed it to
    which is valid and Safari shuts up.

You changed this only once, it it needed in two places, right?
I changed it in both.

 4. Change `&' in link descriptions to `&amp;' again.
    Not sure if I did it in the right place though, but I guess
    `org-export-html-format-desc' is only called to format link

I have not yet applied this, can you give me an example
where this is needed?

Apropos validation:

I worked a little on org-search.php this weekend. It now works without
 networking by default and is much faster.

 Also, you may now use it without a database, just to validate the
 XHTML output. No installation required anymore. In that case, the
 script just scanns the first 10 files (customizable) found and
 displays the parser-errors.

 If you use the script with database, wrong links to images are
 detected now. That's nice, when moving files around in your

 Get it here:

I need to find time to check this out definitely.


- Carsten

diff --git a/lisp/org-html.el b/lisp/org-html.el
index 5608b50..8e3ed4e 100644
--- a/lisp/org-html.el
+++ b/lisp/org-html.el
@@ -123,7 +123,7 @@ not be modified."
                               white-space:nowrap; }
.org-info-js_search-highlight {background-color:#ffff00; color:#000000;
                                 font-weight:bold; }
-  /*]]>*///-->
+  /*]]>*/-->
  "The default style specification for exported HTML files.
Please use the variables `org-export-html-style' and
@@ -1353,10 +1353,10 @@ lang=\"%s\" xml:lang=\"%s\">

(defun org-export-html-format-desc (s)
  "Make sure the S is valid as a description in a link."
-  (if (and s (not (get-text-property 1 'org-protected s)))
-      (save-match-data
-       (org-html-do-expand s))
-    s))
+  (save-match-data
+    (if (and s (not (get-text-property 1 'org-protected s)))
+       (org-html-do-expand s)
+      (org-html-protect s))))

(defun org-export-html-format-image (src par-open)
  "Create image tag with source and attributes."
@@ -1492,23 +1492,18 @@ lang=\"%s\" xml:lang=\"%s\">
    (setq html (nreverse html))
    (unless splice
;; Put in col tags with the alignment (unfortunately often ignored...)
-      (push (mapconcat
-            (lambda (x)
-              (setq gr (pop org-table-colgroup-info))
-              (format "%s<col align=\"%s\"></col>%s"
-                      (if (memq gr '(:start :startend))
-                          (prog1
-                              (if colgropen "</colgroup>\n<colgroup>" 
-                            (setq colgropen t))
-                        "")
+      (push (concat
+            "<colgroup>"
+            (mapconcat
+             (lambda (x)
+               (setq gr (pop org-table-colgroup-info))
+               (format "<col align=\"%s\" />"
                       (if (> (/ (float x) nlines) org-table-number-fraction)
-                          "right" "left")
-                      (if (memq gr '(:end :startend))
-                          (progn (setq colgropen nil) "</colgroup>")
-                        "")))
-            fnum "")
+                          "right" "left")))
+             fnum "")
+            "</colgroup>")
- (if colgropen (setq html (cons (car html) (cons "</ colgroup>" (cdr html)))))
      ;; Since the output of HTML table formatter can also be used in
;; DocBook document, we want to always include the caption to make
      ;; DocBook XML file valid.


Emacs-orgmode mailing list
Remember: use `Reply All' to send replies to the list.

reply via email to

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