From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jambunathan K Subject: [PATCH] org.el: Add support for LaTeX to MathML conversion Date: Fri, 09 Sep 2011 01:27:57 +0530 Message-ID: <81obyuolh6.fsf@gmail.com> References: <814o0n3uzi.fsf@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([140.186.70.92]:44272) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R1kjo-0000DS-Ns for emacs-orgmode@gnu.org; Thu, 08 Sep 2011 15:58:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1R1kjm-0006hL-VV for emacs-orgmode@gnu.org; Thu, 08 Sep 2011 15:58:16 -0400 Received: from mail-pz0-f44.google.com ([209.85.210.44]:60177) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1R1kjm-0006hE-Dg for emacs-orgmode@gnu.org; Thu, 08 Sep 2011 15:58:14 -0400 Received: by pzk36 with SMTP id 36so1658852pzk.17 for ; Thu, 08 Sep 2011 12:58:13 -0700 (PDT) In-Reply-To: <814o0n3uzi.fsf@gmail.com> (Jambunathan K.'s message of "Thu, 08 Sep 2011 21:08:09 +0530") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org --=-=-= Content-Type: text/plain > IMPORTANT: I am following this mail with a patch to org.el which will > add support for LaTeX-to-MathML conversion using an external > converter. MathToWeb is available from http://www.mathtoweb.com/cgi-bin/mathtoweb_home.pl Your .emacs should look something like this. (custom-set-variables '(org-latex-to-mathml-convert-command "java -jar %j -unicode -force -df %o %I") '(org-latex-to-mathml-jar-file "~/tmp-odt/mathtoweb.jar")) I am attaching odt files used with both dvipng and mathml options. The latex-mathml.odt reports an error on one of the $$ $$ equations. Note to reviewers: Can someone enhance the patch so that `org-latex-src-embed-type can take all the various anchors that a latex equation could use - inline, display-unnumbered, display-numbered, what else? Note to the users: 1. You need to not only apply this patch but also pull from the repo for full support. 2. Currently there is NO support for numbered and displayed equations which go like this x = y (1) y = z (2) --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-org.el-Add-support-for-LaTeX-to-MathML-conversion.patch >From 762bffe1fc11d28502d6842c9b7d0049442ee2ef Mon Sep 17 00:00:00 2001 From: Jambunathan K Date: Fri, 9 Sep 2011 00:14:59 +0530 Subject: [PATCH] org.el: Add support for LaTeX to MathML conversion * lisp/org.el (org-latex-to-mathml-jar-file) (org-latex-to-mathml-convert-command): New user-customizable variables. (org-format-latex-mathml-available-p, org-create-math-formula) (org-format-latex-as-mathml): New functions. (org-format-latex): Add a new local variable block-type that notes the nature of the equation - inline or display. Associate it's value to `org-latex-src-embed-type' property of dvipng links. Add mathml as new processing type. --- lisp/org.el | 159 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 154 insertions(+), 5 deletions(-) diff --git a/lisp/org.el b/lisp/org.el index d63b854..b907338 100644 --- a/lisp/org.el +++ b/lisp/org.el @@ -16507,11 +16507,11 @@ Some of the options can be changed using the variable (plist-get (org-infile-export-plist) :latex-header-extra)) (cnt 0) txt hash link beg end re e checkdir executables-checked string - m n block linkfile movefile ov) + m n block-type block linkfile movefile ov) ;; Check the different regular expressions (while (setq e (pop re-list)) - (setq m (car e) re (nth 1 e) n (nth 2 e) - block (if (nth 3 e) "\n\n" "")) + (setq m (car e) re (nth 1 e) n (nth 2 e) block-type (nth 3 e) + block (if block-type "\n\n" "")) (when (member m matchers) (goto-char (point-min)) (while (re-search-forward re nil t) @@ -16540,7 +16540,7 @@ Some of the options can be changed using the variable '(org-protected t)))) (add-text-properties (match-beginning n) (match-end n) '(org-protected t)))) - ((or (eq processing-type 'dvipng) t) + ((eq processing-type 'dvipng) ;; Process to an image (setq txt (match-string n) beg (match-beginning n) end (match-end n) @@ -16596,7 +16596,156 @@ Some of the options can be changed using the variable (insert (org-add-props link (list 'org-latex-src (replace-regexp-in-string - "\"" "" txt))))))))))))) + "\"" "" txt) + 'org-latex-src-embed-type + (if block-type 'paragraph 'character)))))) + ((eq processing-type 'mathml) + ;; Process to MathML + (unless executables-checked + (unless (save-match-data (org-format-latex-mathml-available-p)) + (error "LaTeX to MathML converter not configured")) + (setq executables-checked t)) + (setq txt (match-string n) + beg (match-beginning n) end (match-end n) + cnt (1+ cnt)) + (if msg (message msg cnt)) + (goto-char beg) + (delete-region beg end) + (insert (org-format-latex-as-mathml + txt block-type prefix dir))) + (t + (error "Unknown conversion type %s for latex fragments" + processing-type))))))))) + +(defcustom org-latex-to-mathml-jar-file nil + "Value of\"%j\" in `org-latex-to-mathml-convert-command'. +Use this to specify additional executable file say a jar file. + +When using MathToWeb as the converter, specify the full-path to +your mathtoweb.jar file." + :group 'org-latex + :type '(choice + (const :tag "None" nil) + (file :tag "JAR file" :must-match t))) + +(defcustom org-latex-to-mathml-convert-command nil + "Command to convert LaTeX fragments to MathML. +Replace format-specifiers in the command as noted below and use +`shell-command' to convert LaTeX to MathML. +%j: Executable file in fully expanded form as specified by + `org-latex-to-mathml-jar-file'. +%I: Input LaTeX file in fully expanded form +%o: Output MathML file +This command is used by `org-create-math-formula'. + +When using MathToWeb as the converter, set this to +\"java -jar %j -unicode -force -df %o %I\"." + :group 'org-latex + :type '(choice + (const :tag "None" nil) + (string :tag "\nShell command"))) + +(defun org-format-latex-mathml-available-p () + "Return t if `org-latex-to-mathml-convert-command' is usable." + (save-match-data + (when (and (boundp 'org-latex-to-mathml-convert-command) + org-latex-to-mathml-convert-command) + (let ((executable (car (split-string + org-latex-to-mathml-convert-command)))) + (when (executable-find executable) + (if (string-match + "%j" org-latex-to-mathml-convert-command) + (file-readable-p org-latex-to-mathml-jar-file) + t)))))) + +(defun org-create-math-formula (latex-frag &optional mathml-file) + "Convert LATEX-FRAG to MathML and store it in MATHML-FILE. +Use `org-latex-to-mathml-convert-command'. If the conversion is +sucessful, return the portion between \" \" +elements otherwise return nil. When MATHML-FILE is specified, +write the results in to that file. When invoked as an +interactive command, prompt for LATEX-FRAG, with initial value +set to the current active region and echo the results for user +inspection." + (interactive (list (let ((frag (when (region-active-p) + (buffer-substring-no-properties + (region-beginning) (region-end))))) + (read-string "LaTeX Fragment: " frag nil frag)))) + (unless latex-frag (error "Invalid latex-frag")) + (let* ((tmp-in-file (file-relative-name + (make-temp-name (expand-file-name "ltxmathml-in")))) + (ignore (write-region latex-frag nil tmp-in-file)) + (tmp-out-file (file-relative-name + (make-temp-name (expand-file-name "ltxmathml-out")))) + (cmd (format-spec + org-latex-to-mathml-convert-command + `((?j . ,(shell-quote-argument + (expand-file-name org-latex-to-mathml-jar-file))) + (?I . ,(shell-quote-argument tmp-in-file)) + (?o . ,(shell-quote-argument tmp-out-file))))) + mathml shell-command-output) + (when (org-called-interactively-p 'any) + (unless (org-format-latex-mathml-available-p) + (error "LaTeX to MathML converter not configured"))) + (message "Running %s" cmd) + (setq shell-command-output (shell-command-to-string cmd)) + (setq mathml + (when (file-readable-p tmp-out-file) + (with-current-buffer (find-file-noselect tmp-out-file t) + (goto-char (point-min)) + (when (re-search-forward + (concat + (regexp-quote + "") + "\\(.\\|\n\\)*" + (regexp-quote "")) nil t) + (prog1 (match-string 0) (kill-buffer)))))) + (cond + (mathml + (setq mathml + (concat "\n" mathml)) + (when mathml-file + (write-region mathml nil mathml-file)) + (when (org-called-interactively-p 'any) + (message mathml))) + ((message "LaTeX to MathML conversion failed") + (message shell-command-output))) + (delete-file tmp-in-file) + (when (file-exists-p tmp-out-file) + (delete-file tmp-out-file)) + mathml)) + +(defun org-format-latex-as-mathml (latex-frag latex-frag-type + prefix &optional dir) + "Use `org-create-math-formula' but check local cache first." + (let* ((absprefix (expand-file-name prefix dir)) + (print-length nil) (print-level nil) + (formula-id (concat + "formula-" + (sha1 + (prin1-to-string + (list latex-frag + org-latex-to-mathml-convert-command))))) + (formula-cache (format "%s-%s.mathml" absprefix formula-id)) + (formula-cache-dir (file-name-directory formula-cache))) + + (unless (file-directory-p formula-cache-dir) + (make-directory formula-cache-dir t)) + + (unless (file-exists-p formula-cache) + (org-create-math-formula latex-frag formula-cache)) + + (if (file-exists-p formula-cache) + ;; Successful conversion. Return the link to MathML file. + (org-add-props + (format "[[file:%s]]" (file-relative-name formula-cache dir)) + (list 'org-latex-src (replace-regexp-in-string "\"" "" latex-frag) + 'org-latex-src-embed-type (if latex-frag-type + 'paragraph 'character))) + ;; Failed conversion. Return the LaTeX fragment verbatim + (add-text-properties + 0 (1- (length latex-frag)) '(org-protected t) latex-frag) + latex-frag))) ;; This function borrows from Ganesh Swami's latex2png.el (defun org-create-formula-image (string tofile options buffer) -- 1.7.2.3 --=-=-= Content-Type: text/x-org Content-Disposition: inline; filename=latex-mathml.org Content-Description: latex-mathml.org #+TITLE: latex-mathml.org #+AUTHOR: Jambunathan K #+EMAIL: kjambunathan@gmail.com #+DATE: 2011-09-09 Fri #+DESCRIPTION: #+KEYWORDS: #+LANGUAGE: en #+OPTIONS: H:3 num:t toc:t \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+XSLT: * LaTeX Fragments ** LaTeX Fragment1 # See org-format-latex-options There is a equation down below. \begin{equation} e = \frac{1}{2}mv^2 \end{equation} ** LaTeX Fragment2 #+CAPTION: Radicals #+LABEL: Equation:1 \begin{equation} x=\sqrt{b} \end{equation} If $a^2=b$ and \( b=2 \), then the solution must be either $$ a=+\sqrt{2} $$ or \[ a=-\sqrt{2} \]. --=-=-= Content-Type: application/vnd.oasis.opendocument.text Content-Disposition: attachment; filename=latex-mathml.odt Content-Transfer-Encoding: base64 Content-Description: latex-mathml.odt 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 AAAAAAwIKT8AAAAAAAAAAAAAAAANABgAAAAAAAAAEADAQU0IAABGb3JtdWxhLTAwMDEvVVQFAAPQ F2lOdXgLAAEE7gMAAAQBAgAAUEsBAh4DFAAAAAgADAgpP0UoWGW4AAAAKAEAABgAGAAAAAAAAQAA AMCBlAgAAEZvcm11bGEtMDAwMS9jb250ZW50LnhtbFVUBQAD0BdpTnV4CwABBO4DAAAEAQIAAFBL AQIeAwoAAAAAAAwIKT8AAAAAAAAAAAAAAAANABgAAAAAAAAAEADAQZ4JAABGb3JtdWxhLTAwMDIv VVQFAAPQF2lOdXgLAAEE7gMAAAQBAgAAUEsBAh4DFAAAAAgADAgpP1Xgq+CTAAAAzAAAABgAGAAA AAAAAQAAAMCB5QkAAEZvcm11bGEtMDAwMi9jb250ZW50LnhtbFVUBQAD0BdpTnV4CwABBO4DAAAE AQIAAFBLAQIeAwoAAAAAAAwIKT8AAAAAAAAAAAAAAAANABgAAAAAAAAAEADAQcoKAABGb3JtdWxh LTAwMDMvVVQFAAPQF2lOdXgLAAEE7gMAAAQBAgAAUEsBAh4DFAAAAAgADAgpP8TrsRyLAAAAvAAA ABgAGAAAAAAAAQAAAMCBEQsAAEZvcm11bGEtMDAwMy9jb250ZW50LnhtbFVUBQAD0BdpTnV4CwAB BO4DAAAEAQIAAFBLAQIeAwoAAAAAAA0IKT8AAAAAAAAAAAAAAAANABgAAAAAAAAAEADAQe4LAABG b3JtdWxhLTAwMDQvVVQFAAPRF2lOdXgLAAEE7gMAAAQBAgAAUEsBAh4DFAAAAAgADQgpP/xJczx9 AAAAmgAAABgAGAAAAAAAAQAAAMCBNQwAAEZvcm11bGEtMDAwNC9jb250ZW50LnhtbFVUBQAD0Rdp TnV4CwABBO4DAAAEAQIAAFBLAQIeAwoAAAAAAA0IKT8AAAAAAAAAAAAAAAANABgAAAAAAAAAEADA QQQNAABGb3JtdWxhLTAwMDUvVVQFAAPRF2lOdXgLAAEE7gMAAAQBAgAAUEsBAh4DFAAAAAgADQgp P2TEuZSiAAAAGwEAABgAGAAAAAAAAQAAAMCBSw0AAEZvcm11bGEtMDAwNS9jb250ZW50LnhtbFVU BQAD0RdpTnV4CwABBO4DAAAEAQIAAFBLAQIeAwoAAAAAAA0IKT8AAAAAAAAAAAAAAAANABgAAAAA AAAAEADAQT8OAABGb3JtdWxhLTAwMDYvVVQFAAPRF2lOdXgLAAEE7gMAAAQBAgAAUEsBAh4DFAAA AAgADQgpP9qB4/WKAAAAvQAAABgAGAAAAAAAAQAAAMCBhg4AAEZvcm11bGEtMDAwNi9jb250ZW50 LnhtbFVUBQAD0RdpTnV4CwABBO4DAAAEAQIAAFBLAQIeAwoAAAAAAA8IKT8AAAAAAAAAAAAAAAAJ ABgAAAAAAAAAEADAQWIPAABNRVRBLUlORi9VVAUAA9YXaU51eAsAAQTuAwAABAECAABQSwECHgMU AAAACAARCCk/RW1X5hABAAAoCAAAFQAYAAAAAAABAAAAwIGlDwAATUVUQS1JTkYvbWFuaWZlc3Qu eG1sVVQFAAPaF2lOdXgLAAEE7gMAAAQBAgAAUEsBAh4DFAAAAAgAFAgpP/NjPkxeAQAAJwMAAAgA GAAAAAAAAQAAAMCBBBEAAG1ldGEueG1sVVQFAAPfF2lOdXgLAAEE7gMAAAQBAgAAUEsBAh4DFAAA AAgAFQgpP+2BGvG5EwAAPtYAAAoAGAAAAAAAAQAAAMCBpBIAAHN0eWxlcy54bWxVVAUAA+EXaU51 eAsAAQTuAwAABAECAABQSwUGAAAAABIAEgD1BQAAoSYAAAAA --=-=-= Content-Type: application/vnd.oasis.opendocument.text Content-Disposition: attachment; filename=latex-dvipng.odt Content-Transfer-Encoding: base64 Content-Description: latex-dvipng.odt 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 +wW3758DP3KSTr7cO+lU5Pc8xTReDc3OcsFjF6Vtn6/738bA9rC3p7m10GXONRG727qc39buWD7Z +6T7pNLjprW7Y7UkqpZqTU9WnJB6Z93NmJmrJ745dz6n/mcIe+r6xNVWHE8kyzUjNJzlvXeFCsvd T9sm9bLqZUNLo91jm6PKVsdXa+yXUd+/aNV55S9+F3c7pdvejLu51sQkxONW+rxHrQ/+Ns/kjL4/ sXCXMtsbg+nLnsq4bH/xLXmJu3mQiOm5mx/3NisURLurqiun1ngeWXNMXkWr7HE5S92TJ955V/fm rhc9MW/72e0bao5svfNh295zbIoxypmReze/kPn7zG1u979ow3lvVJ8wuPNP/Lvb/cE7jz/vNvy5 p7f3U66e4nn/+QV/mQU87O9k/m183WYWunMOZ2Pr9qDzLua5yz+bnd7JEe7zg5MzPdKe/2XaIufi sz3z2wr/e0/eWu3+YvnBRa0O+xmYDvFsUbCurgKlVk9XP5d1TglNAFBLAwQUAAAACABHCCk/0MZW vVMCAABrAgAADwAcAEltYWdlcy8wMDAyLnBuZ1VUCQADPhhpTj4YaU51eAsAAQTuAwAABAECAADr DPBz5+WS4mJgYOD19HAJYmBgfA5ki3IwA0nvf9cOACnjAJ8Q1////zOQCD42+PAAKYGSIL9gBrk6 Oz8+vbj1/Xnz7+9/f571wYknQLuue7o4hmSwvo28OKlZgaeloaEp/N//bH6VhWsvR20Md1//0PWo ypHYSQxcF68pJGUHJ78sVkx4u/NPav52RYO84OS1xYoHHtYI7duys7DkRZ5c2N1nBWF2Zq/XGp1z qm9ruHZUJCzyfsaOls28vVk6+4yZ5p5m1vqwkWfNgrONQXNrX3/JkG5Zet+NwaBP9JOOnq+kxHLX B6bfb/vUXHNwiNI+X7vMp0lIaprE8fK8XadWZOyruRa9bZ8gY7Hj0VOb/TrvRDysMvbRtN3bnj1Z 4970pp6HOYtFnfdfZA27zcjou/v+qc1eZ5ZLzdXK4w1cnHXY4JqW3+ntQuciI0KYrSvOOm9RYtjy ZtelEK6vq7usn3EmGbRt3rCU6f4rptPvGw4Yz0tdwvP3CKdoKNcvJRPO6ntRto2vOO72V4Yp5Xeo yi7YsdHslZBShWKhuenTJoeZDznmH7U7I7Bhy7VVlbdbpjRZz7/06VGVNacnT/rFvxyGAQvn8x7o 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 --=-=-=--