org-exportlatex.org 2.4 KB

Org Export as LaTeX

Copyright Statement

  Copyright FlintFam Systems Management, 2013.
  
  This program is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.
  
  This program is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.
  
  You should have received a copy of the GNU General Public License
  along with this program.  If not, see <http://www.gnu.org/licenses/>.
use-name-as-caption

Setup Vars

  DIR=`pwd`
  FILES=""
  
  for i in $@; do
      FILES="$FILES \"$i\""
  done
  
  ORGBASEDIR=''
  ORGLDIR="${ORGBASEDIR}/lisp/"
  ORGCONTRIB="${ORGBASEDIR}/contrib/"
use-name-as-caption

Process

  emacs -Q --batch \
      --eval "(progn
       (add-to-list 'load-path (expand-file-name \"$ORGLDIR\"))
       (add-to-list 'load-path (expand-file-name \"$ORGCONTRIB\" t))
       (require 'org)(require 'org-exp)(require 'ob)(require 'ob-tangle)
       (load-file \"org-usename-caption.el\")
       (mapc (lambda (file)
              (find-file (expand-file-name file \"$DIR\"))
              (org-export-as-latex-batch)
              (kill-buffer)) '($FILES)))" 2>&1 |grep tangled
use-name-as-caption

A little elisp

  (defun org-export-use-name-as-caption 
    (text &optional back-end info)
    "Use the block name as the caption."
    (replace-regexp-in-string 
     "label{\\([^}]*\\)}\\(use-name-as-caption\\)"
     "label{\\1}\\1"
     text))
  
  (add-to-list 'org-export-filter-src-block-functions
               'org-export-use-name-as-caption)
use-name-as-caption

Code


use-name-as-caption