emacs-orgmode
[Top][All Lists]
Advanced

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

[Orgmode] multicolumn figures in latex


From: Chris Gray
Subject: [Orgmode] multicolumn figures in latex
Date: Thu, 06 May 2010 13:20:33 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.90 (gnu/linux)

Hi,

I wanted to make a figure that spanned multiple lines in LaTeX.  The
way to do that is via the figure* environment.  Since org-mode didn't
seem to support that, I hacked it in.  The patch is attached.

Cheers,
Chris

commit 4cb1a153245189aa062db4545dad76bdf413a1e1
Author: Chris Gray <address@hidden>
Date:   Thu May 6 12:58:00 2010 +0200

    Add support for multicolumn figures in LaTeX.

        Modified lisp/ChangeLog
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 7f1a507..74ee48d 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,8 @@
+2010-05-06  Chris Gray  <address@hidden>
+
+       * org-latex.el (org-export-latex-format-image): Add support
+       for multicolumn figures in LaTeX.  
+
 2010-05-02  Dan Davison  <address@hidden>
 
        * org-src.el (org-edit-src-code): allow-write-back-p had
        Modified lisp/org-latex.el
diff --git a/lisp/org-latex.el b/lisp/org-latex.el
index 2051de1..22833b2 100644
--- a/lisp/org-latex.el
+++ b/lisp/org-latex.el
@@ -1881,14 +1881,17 @@ The conversion is made depending of STRING-BEFORE and 
STRING-AFTER."
 
 (defun org-export-latex-format-image (path caption label attr)
   "Format the image element, depending on user settings."
-  (let (ind floatp wrapp placement figenv)
+  (let (ind floatp wrapp multicolumnp placement figenv)
     (setq floatp (or caption label))
     (setq ind (org-get-text-property-any 0 'original-indentation path))
     (when (and attr (stringp attr))
       (if (string-match "[ \t]*\\<wrap\\>" attr)
          (setq wrapp t floatp nil attr (replace-match "" t t attr)))
       (if (string-match "[ \t]*\\<float\\>" attr)
-         (setq wrapp nil floatp t attr (replace-match "" t t attr))))
+         (setq wrapp nil floatp t attr (replace-match "" t t attr)))
+      (if (string-match "[ \t]*\\<multicolumn\\>" attr)
+         (setq multicolumnp t attr (replace-match "" t t attr))))
+    
 
     (setq placement
          (cond
@@ -1912,6 +1915,11 @@ The conversion is made depending of STRING-BEFORE and 
STRING-AFTER."
 \\includegraphics[%attr]{%path}
 \\caption{%labelcmd%caption}
 \\end{wrapfigure}")
+          (multicolumnp "\\begin{figure*}%placement
+\\centering
+\\includegraphics[%attr]{%path}
+\\caption{%labelcmd%caption}
+\\end{figure*}")
           (floatp "\\begin{figure}%placement
 \\centering
 \\includegraphics[%attr]{%path}






reply via email to

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