Hi Eric, The booktabs-notes function, below, is based on the booktabs function in the library of Babel. It takes a second table and adds it to the bottom of the main table. I use it to add multicolumn footnotes to the bottom of the table. There is also a switch that adds a linespace between the main table and the notes table. I think the function might be a useful addition to the library of Babel.
I tried to design it to be a functional replacement for the booktabs function, but don't trust my emacs-lisp (or other) programming skills. All the best, Tom #+srcname: booktabs-notes #+begin_src emacs-lisp :var table='((:head) hline (:body)) :var notes='() :var align='() :var env="tabular" :var width='() :var lspace='() :noweb yes :results latex (flet ((to-tab (tab) (orgtbl-to-generic (mapcar (lambda (lis) (if (listp lis) (mapcar (lambda (el) (if (stringp el) el (format "%S" el))) lis) lis)) tab) (list :lend " \\\\" :sep " & " :hline "\\hline")))) (org-fill-template " \\begin{%env}%width%align \\toprule %table \\bottomrule%spacer %notes \\end{%env}\n" (list (cons "env" (or env "table")) (cons "width" (if width (format "{%s}" width) "")) (cons "align" (if align (format "{%s}" align) "")) (cons "spacer" (if lspace "\\addlinespace" "")) (cons "table" ;; only use \midrule if it looks like there are column headers (if (equal 'hline (second table)) (concat (to-tab (list (first table))) "\n\\midrule\n" (to-tab (cddr table))) (to-tab table))) (cons "notes" (if notes (to-tab notes) "")) ))) #+end_src -- Thomas S. Dye http://www.tsdye.com