library-of-babel: adding function for LaTeX Table export
* contrib/babel/library-of-babel.org (Write): support for LaTeX table export
This commit is contained in:
parent
f4b78ad3c8
commit
5461d3e605
|
@ -96,9 +96,55 @@ plot(data)
|
||||||
|
|
||||||
** Gnuplot
|
** Gnuplot
|
||||||
|
|
||||||
* Table/Matrix manipulation
|
* Tables
|
||||||
|
** LaTeX Table export
|
||||||
|
This block can be used to wrap a table in the latex =longtable=
|
||||||
|
environment, it takes the following arguments -- all but the first
|
||||||
|
three are optional.
|
||||||
|
| arg | description |
|
||||||
|
|-----------+-------------------------------------------------------------|
|
||||||
|
| table | a reference to the table |
|
||||||
|
| env | table environment, e.g. longtable, tablex, etc... |
|
||||||
|
| align | optional alignment string |
|
||||||
|
| width | optional width specification string |
|
||||||
|
| hline | the string to use as hline separator, defaults to "\\hline" |
|
||||||
|
| head | optional "head" string |
|
||||||
|
| firsthead | optional "firsthead" string |
|
||||||
|
| foot | optional "foot" string |
|
||||||
|
| lastfoot | optional "lastfoot" string |
|
||||||
|
|
||||||
Elegant lisp code for transposing a matrix.
|
#+srcname: table
|
||||||
|
#+begin_src emacs-lisp :var table='((:table)) :var env="table" :var align='() :var width='() :var hline="\\hline" :var firsthead='() :var head='() :var foot='() :var lastfoot='() :noweb yes :results latex
|
||||||
|
(org-fill-template
|
||||||
|
"
|
||||||
|
\\begin{%env}%width%align
|
||||||
|
%firsthead
|
||||||
|
%head
|
||||||
|
%foot
|
||||||
|
%lastfoot
|
||||||
|
|
||||||
|
%table
|
||||||
|
\\end{%env}\n"
|
||||||
|
(list
|
||||||
|
(cons "env" env)
|
||||||
|
(cons "width" (if width (format "{%s}" width) ""))
|
||||||
|
(cons "align" (if align (format "{%s}" align) ""))
|
||||||
|
(cons "firsthead" (if firsthead (concat firsthead "\n\\endfirsthead\n") ""))
|
||||||
|
(cons "head" (if head (concat head "\n\\endhead\n") ""))
|
||||||
|
(cons "foot" (if foot (concat foot "\n\\endfoot\n") ""))
|
||||||
|
(cons "lastfoot" (if lastfoot (concat lastfoot "\n\\endlastfoot\n") ""))
|
||||||
|
(cons "table" (orgtbl-to-generic
|
||||||
|
(mapcar (lambda (lis)
|
||||||
|
(if (listp lis)
|
||||||
|
(mapcar (lambda (el)
|
||||||
|
(if (stringp el)
|
||||||
|
el
|
||||||
|
(format "%S" el))) lis)
|
||||||
|
lis)) table)
|
||||||
|
(list :lend " \\\\" :sep " & " :hline hline)))))
|
||||||
|
#+end_src
|
||||||
|
|
||||||
|
** Elegant lisp for transposing a matrix.
|
||||||
|
|
||||||
#+tblname: transpose-example
|
#+tblname: transpose-example
|
||||||
| 1 | 2 | 3 |
|
| 1 | 2 | 3 |
|
||||||
|
|
Loading…
Reference in New Issue