[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] What's the license for worg.css?
From: |
Nick Dokos |
Subject: |
Re: [O] What's the license for worg.css? |
Date: |
Mon, 15 Aug 2011 02:22:57 -0400 |
Aankhen <address@hidden> wrote:
> Hi folks,
>
> On Mon, Aug 15, 2011 at 05:05, suvayu ali <address@hidden> wrote:
> > On Sun, Aug 14, 2011 at 6:16 PM, Bastien <address@hidden> wrote:
> >> I made sure the licensing terms at the bottom of the pages tell that
> >> explicitely (I'm now regenerating this footer sections.)
> >>
> >
> > The formatting seems a bit off. Some of the text overlaps and the
> > actual licensing information is illegible on my system (FF 5 on Fedora
> > 14). I have attached a small screen shot.
>
> Just wanted to confirm that I see this too. The culprit is line 909
> of worg.css, which sets the ‘line-height’ to 30%. Removing that line
> fixes the overlap without any apparent problems.
>
I made and pushed this change - thanks for the diagnosis and cure!
Unfortunately, I cannot check it because there is another (unrelated)
problem: before I push to Worg, I test by publishing locally and
forcing the publishing of every file (not just the changed ones). I got
the following error in the process:
,----
| Publishing file /home/nick/src/emacs/org/Worg/org-contrib/babel/intro.org
using `org-publish-org-to-html'
| OVERVIEW
| Exporting...
| Wrong type argument: consp, nil
`----
I pulled latest org as well, and tried again, but it did not go away.
Publishing the file by hand results in the attached backtrace.
I just checked the progress file on Worg just now: it failed in the same
place.
Nick
Debugger entered--Lisp error: (wrong-type-argument consp nil)
setcdr(nil "nil=x")
(setf (cddr (nth variable-index vars)) (concat (symbol-name (car (nth
variable-index vars))) "=" (cdr pair)))
(prog1 (setf (cddr (nth variable-index vars)) (concat (symbol-name (car (nth
variable-index vars))) "=" (cdr pair))) (incf variable-index))
(if name (setq vars (append (if (member name (mapcar (function car) vars))
(delq nil (mapcar (lambda (p) (unless ... p)) vars)) vars) (list (cons name
pair)))) (prog1 (setf (cddr (nth variable-index vars)) (concat (symbol-name
(car (nth variable-index vars))) "=" (cdr pair))) (incf variable-index)))
(let ((name (if (listp (cdr pair)) (cadr pair) (and (string-match "^\\([^= \f
\n
]+\\)[ ]*=" (cdr pair)) (intern (match-string 1 (cdr pair))))))) (if
name (setq vars (append (if (member name (mapcar (function car) vars)) (delq
nil (mapcar (lambda ... ...) vars)) vars) (list (cons name pair)))) (prog1
(setf (cddr (nth variable-index vars)) (concat (symbol-name (car (nth
variable-index vars))) "=" (cdr pair))) (incf variable-index))))
(cond ((eql (car pair) (quote :var)) (let ((name (if (listp (cdr pair)) (cadr
pair) (and (string-match "^\\([^= \f \n
]+\\)[ ]*=" ...) (intern ...))))) (if name (setq vars (append (if
(member name ...) (delq nil ...) vars) (list (cons name pair)))) (prog1 (setf
(cddr (nth variable-index vars)) (concat (symbol-name ...) "=" (cdr pair)))
(incf variable-index))))) ((eql (car pair) (quote :results)) (setq results
(e-merge results-exclusive-groups results (split-string (let ((r ...)) (if
(stringp r) r (eval r))))))) ((eql (car pair) (quote :file)) (when (cdr pair)
(setq results (e-merge results-exclusive-groups results (quote ("file"))))
(unless (or (member "both" exports) (member "none" exports) (member "code"
exports)) (setq exports (e-merge exports-exclusive-groups exports (quote
("results"))))) (setq params (cons pair (assq-delete-all (car pair) params)))))
((eql (car pair) (quote :exports)) (setq exports (e-merge
exports-exclusive-groups exports (split-string (cdr pair))))) ((eql (car pair)
(quote :tangle)) (setq tangle (or (list (cdr pair)) tangle))) ((eql (car pair)
(quote :noweb)) (setq noweb (e-merge (quote (("yes" "no" "tangle"))) noweb
(split-string (or (cdr pair) ""))))) ((eql (car pair) (quote :cache)) (setq
cache (e-merge (quote (("yes" "no"))) cache (split-string (or (cdr pair)
""))))) ((eql (car pair) (quote :padline)) (setq padline (e-merge (quote
(("yes" "no"))) padline (split-string (or (cdr pair) ""))))) ((eql (car pair)
(quote :shebang)) (setq shebang (or (list (cdr pair)) shebang))) ((eql (car
pair) (quote :comments)) (setq comments (e-merge (quote (("yes" "no")))
comments (split-string (or (cdr pair) ""))))) (t (setq params (cons pair
(assq-delete-all (car pair) params)))))
(case (car pair) (:var (let ((name (if (listp (cdr pair)) (cadr pair) (and
(string-match "^\\([^= \f \n
]+\\)[ ]*=" ...) (intern ...))))) (if name (setq vars (append (if
(member name ...) (delq nil ...) vars) (list (cons name pair)))) (prog1 (setf
(cddr (nth variable-index vars)) (concat (symbol-name ...) "=" (cdr pair)))
(incf variable-index))))) (:results (setq results (e-merge
results-exclusive-groups results (split-string (let ((r ...)) (if (stringp r) r
(eval r))))))) (:file (when (cdr pair) (setq results (e-merge
results-exclusive-groups results (quote ("file")))) (unless (or (member "both"
exports) (member "none" exports) (member "code" exports)) (setq exports
(e-merge exports-exclusive-groups exports (quote ("results"))))) (setq params
(cons pair (assq-delete-all (car pair) params))))) (:exports (setq exports
(e-merge exports-exclusive-groups exports (split-string (cdr pair))))) (:tangle
(setq tangle (or (list (cdr pair)) tangle))) (:noweb (setq noweb (e-merge
(quote (("yes" "no" "tangle"))) noweb (split-string (or (cdr pair) "")))))
(:cache (setq cache (e-merge (quote (("yes" "no"))) cache (split-string (or
(cdr pair) ""))))) (:padline (setq padline (e-merge (quote (("yes" "no")))
padline (split-string (or (cdr pair) ""))))) (:shebang (setq shebang (or (list
(cdr pair)) shebang))) (:comments (setq comments (e-merge (quote (("yes"
"no"))) comments (split-string (or (cdr pair) ""))))) (t (setq params (cons
pair (assq-delete-all (car pair) params)))))
(lambda (pair) (case (car pair) (:var (let ((name (if (listp ...) (cadr pair)
(and ... ...)))) (if name (setq vars (append (if ... ... vars) (list ...)))
(prog1 (setf (cddr ...) (concat ... "=" ...)) (incf variable-index)))))
(:results (setq results (e-merge results-exclusive-groups results (split-string
(let (...) (if ... r ...)))))) (:file (when (cdr pair) (setq results (e-merge
results-exclusive-groups results (quote ("file")))) (unless (or (member "both"
exports) (member "none" exports) (member "code" exports)) (setq exports
(e-merge exports-exclusive-groups exports (quote ...)))) (setq params (cons
pair (assq-delete-all (car pair) params))))) (:exports (setq exports (e-merge
exports-exclusive-groups exports (split-string (cdr pair))))) (:tangle (setq
tangle (or (list (cdr pair)) tangle))) (:noweb (setq noweb (e-merge (quote
(("yes" "no" "tangle"))) noweb (split-string (or (cdr pair) ""))))) (:cache
(setq cache (e-merge (quote (("yes" "no"))) cache (split-string (or (cdr pair)
""))))) (:padline (setq padline (e-merge (quote (("yes" "no"))) padline
(split-string (or (cdr pair) ""))))) (:shebang (setq shebang (or (list (cdr
pair)) shebang))) (:comments (setq comments (e-merge (quote (("yes" "no")))
comments (split-string (or (cdr pair) ""))))) (t (setq params (cons pair
(assq-delete-all (car pair) params))))))((:var . "x"))
mapc((lambda (pair) (case (car pair) (:var (let ((name (if (listp ...) (cadr
pair) (and ... ...)))) (if name (setq vars (append (if ... ... vars) (list
...))) (prog1 (setf (cddr ...) (concat ... "=" ...)) (incf variable-index)))))
(:results (setq results (e-merge results-exclusive-groups results (split-string
(let (...) (if ... r ...)))))) (:file (when (cdr pair) (setq results (e-merge
results-exclusive-groups results (quote ("file")))) (unless (or (member "both"
exports) (member "none" exports) (member "code" exports)) (setq exports
(e-merge exports-exclusive-groups exports (quote ...)))) (setq params (cons
pair (assq-delete-all (car pair) params))))) (:exports (setq exports (e-merge
exports-exclusive-groups exports (split-string (cdr pair))))) (:tangle (setq
tangle (or (list (cdr pair)) tangle))) (:noweb (setq noweb (e-merge (quote
(("yes" "no" "tangle"))) noweb (split-string (or (cdr pair) ""))))) (:cache
(setq cache (e-merge (quote (("yes" "no"))) cache (split-string (or (cdr pair)
""))))) (:padline (setq padline (e-merge (quote (("yes" "no"))) padline
(split-string (or (cdr pair) ""))))) (:shebang (setq shebang (or (list (cdr
pair)) shebang))) (:comments (setq comments (e-merge (quote (("yes" "no")))
comments (split-string (or (cdr pair) ""))))) (t (setq params (cons pair
(assq-delete-all (car pair) params)))))) ((:var . "x")))
(lambda (plist) (mapc (lambda (pair) (case (car pair) (:var (let ((name ...))
(if name (setq vars ...) (prog1 ... ...)))) (:results (setq results (e-merge
results-exclusive-groups results (split-string ...)))) (:file (when (cdr pair)
(setq results (e-merge results-exclusive-groups results ...)) (unless (or ...
... ...) (setq exports ...)) (setq params (cons pair ...)))) (:exports (setq
exports (e-merge exports-exclusive-groups exports (split-string ...))))
(:tangle (setq tangle (or (list ...) tangle))) (:noweb (setq noweb (e-merge
(quote ...) noweb (split-string ...)))) (:cache (setq cache (e-merge (quote
...) cache (split-string ...)))) (:padline (setq padline (e-merge (quote ...)
padline (split-string ...)))) (:shebang (setq shebang (or (list ...) shebang)))
(:comments (setq comments (e-merge (quote ...) comments (split-string ...))))
(t (setq params (cons pair (assq-delete-all ... params)))))) plist))(((:var .
"x")))
mapc((lambda (plist) (mapc (lambda (pair) (case (car pair) (:var (let ((name
...)) (if name (setq vars ...) (prog1 ... ...)))) (:results (setq results
(e-merge results-exclusive-groups results (split-string ...)))) (:file (when
(cdr pair) (setq results (e-merge results-exclusive-groups results ...))
(unless (or ... ... ...) (setq exports ...)) (setq params (cons pair ...))))
(:exports (setq exports (e-merge exports-exclusive-groups exports (split-string
...)))) (:tangle (setq tangle (or (list ...) tangle))) (:noweb (setq noweb
(e-merge (quote ...) noweb (split-string ...)))) (:cache (setq cache (e-merge
(quote ...) cache (split-string ...)))) (:padline (setq padline (e-merge (quote
...) padline (split-string ...)))) (:shebang (setq shebang (or (list ...)
shebang))) (:comments (setq comments (e-merge (quote ...) comments
(split-string ...)))) (t (setq params (cons pair (assq-delete-all ...
params)))))) plist)) (((:var . "x")) ((:comments . "") (:shebang . "") (:cache
. "no") (:padline . "") (:noweb . "no") (:tangle . "no") (:exports . "code")
(:results . "replace") (:padnewline . "yes") (:hlines . "no") (:session .
"none"))))
(progn (fset (quote e-merge) (function* (lambda (exclusive-groups &rest
result-params) (block e-merge (let (output) (mapc (lambda ... ...)
result-params) output))))) (mapc (lambda (plist) (mapc (lambda (pair) (case
(car pair) (:var (let ... ...)) (:results (setq results ...)) (:file (when ...
... ... ...)) (:exports (setq exports ...)) (:tangle (setq tangle ...)) (:noweb
(setq noweb ...)) (:cache (setq cache ...)) (:padline (setq padline ...))
(:shebang (setq shebang ...)) (:comments (setq comments ...)) (t (setq params
...)))) plist)) plists))
(unwind-protect (progn (fset (quote e-merge) (function* (lambda
(exclusive-groups &rest result-params) (block e-merge (let (output) (mapc ...
result-params) output))))) (mapc (lambda (plist) (mapc (lambda (pair) (case
(car pair) (:var ...) (:results ...) (:file ...) (:exports ...) (:tangle ...)
(:noweb ...) (:cache ...) (:padline ...) (:shebang ...) (:comments ...) (t
...))) plist)) plists)) (if --cl-letf-bound-- (fset (quote e-merge)
--cl-letf-save--) (fmakunbound (quote e-merge))))
(let* ((--cl-letf-bound-- (fboundp (quote e-merge))) (--cl-letf-save-- (and
--cl-letf-bound-- (symbol-function (quote e-merge))))) (unwind-protect (progn
(fset (quote e-merge) (function* (lambda (exclusive-groups &rest result-params)
(block e-merge (let ... ... output))))) (mapc (lambda (plist) (mapc (lambda
(pair) (case ... ... ... ... ... ... ... ... ... ... ... ...)) plist)) plists))
(if --cl-letf-bound-- (fset (quote e-merge) --cl-letf-save--) (fmakunbound
(quote e-merge)))))
(letf (((symbol-function (quote e-merge)) (function* (lambda
(exclusive-groups &rest result-params) (block e-merge (let (output) (mapc ...
result-params) output)))))) (mapc (lambda (plist) (mapc (lambda (pair) (case
(car pair) (:var (let ... ...)) (:results (setq results ...)) (:file (when ...
... ... ...)) (:exports (setq exports ...)) (:tangle (setq tangle ...)) (:noweb
(setq noweb ...)) (:cache (setq cache ...)) (:padline (setq padline ...))
(:shebang (setq shebang ...)) (:comments (setq comments ...)) (t (setq params
...)))) plist)) plists))
(letf* (((symbol-function (quote e-merge)) (function* (lambda
(exclusive-groups &rest result-params) (block e-merge (let (output) (mapc ...
result-params) output)))))) (mapc (lambda (plist) (mapc (lambda (pair) (case
(car pair) (:var (let ... ...)) (:results (setq results ...)) (:file (when ...
... ... ...)) (:exports (setq exports ...)) (:tangle (setq tangle ...)) (:noweb
(setq noweb ...)) (:cache (setq cache ...)) (:padline (setq padline ...))
(:shebang (setq shebang ...)) (:comments (setq comments ...)) (t (setq params
...)))) plist)) plists))
(flet ((e-merge (exclusive-groups &rest result-params) (let (output) (mapc
(lambda (new-params) (mapc (lambda ... ... ...) new-params)) result-params)
output))) (mapc (lambda (plist) (mapc (lambda (pair) (case (car pair) (:var
(let ... ...)) (:results (setq results ...)) (:file (when ... ... ... ...))
(:exports (setq exports ...)) (:tangle (setq tangle ...)) (:noweb (setq noweb
...)) (:cache (setq cache ...)) (:padline (setq padline ...)) (:shebang (setq
shebang ...)) (:comments (setq comments ...)) (t (setq params ...)))) plist))
plists))
(let ((results-exclusive-groups (quote (("file" "list" "vector" "table"
"scalar" "verbatim" "raw" "org" "html" "latex" "code" "pp" "wrap") ("replace"
"silent" "append" "prepend") ("output" "value")))) (exports-exclusive-groups
(quote (("code" "results" "both" "none")))) (variable-index 0) params results
exports tangle noweb cache vars shebang comments padline) (flet ((e-merge
(exclusive-groups &rest result-params) (let (output) (mapc (lambda (new-params)
(mapc ... new-params)) result-params) output))) (mapc (lambda (plist) (mapc
(lambda (pair) (case (car pair) (:var ...) (:results ...) (:file ...) (:exports
...) (:tangle ...) (:noweb ...) (:cache ...) (:padline ...) (:shebang ...)
(:comments ...) (t ...))) plist)) plists)) (setq vars (reverse vars)) (while
vars (setq params (cons (cons :var (cddr (pop vars))) params))) (mapc (lambda
(hd) (let ((key (intern (concat ":" ...))) (val (eval hd))) (setf params (cons
(cons key (mapconcat ... val " ")) params)))) (quote (results exports tangle
noweb padline cache shebang comments))) params)
org-babel-merge-params(((:var . "x")) ((:comments . "") (:shebang . "")
(:cache . "no") (:padline . "") (:noweb . "no") (:tangle . "no") (:exports .
"code") (:results . "replace") (:padnewline . "yes") (:hlines . "no") (:session
. "none")))
(setcar (nthcdr 2 info) (org-babel-merge-params (mapcar (lambda (ref) (cons
:var ref)) (org-babel-ref-split-args (match-string 6))) (nth 2 info)))
(setf (nth 2 info) (org-babel-merge-params (mapcar (lambda (ref) (cons :var
ref)) (org-babel-ref-split-args (match-string 6))) (nth 2 info)))
(progn (setf (nth 2 info) (org-babel-merge-params (mapcar (lambda (ref) (cons
:var ref)) (org-babel-ref-split-args (match-string 6))) (nth 2 info))))
(if (match-string 6) (progn (setf (nth 2 info) (org-babel-merge-params
(mapcar (lambda (ref) (cons :var ref)) (org-babel-ref-split-args (match-string
6))) (nth 2 info)))))
(when (match-string 6) (setf (nth 2 info) (org-babel-merge-params (mapcar
(lambda (ref) (cons :var ref)) (org-babel-ref-split-args (match-string 6)))
(nth 2 info))))
(progn (setq name (org-babel-clean-text-properties (match-string 4))) (when
(match-string 6) (setf (nth 2 info) (org-babel-merge-params (mapcar (lambda
(ref) (cons :var ref)) (org-babel-ref-split-args (match-string 6))) (nth 2
info)))))
(if (looking-at org-babel-src-name-w-name-regexp) (progn (setq name
(org-babel-clean-text-properties (match-string 4))) (when (match-string 6)
(setf (nth 2 info) (org-babel-merge-params (mapcar (lambda (ref) (cons :var
ref)) (org-babel-ref-split-args (match-string 6))) (nth 2 info))))))
(when (looking-at org-babel-src-name-w-name-regexp) (setq name
(org-babel-clean-text-properties (match-string 4))) (when (match-string 6)
(setf (nth 2 info) (org-babel-merge-params (mapcar (lambda (ref) (cons :var
ref)) (org-babel-ref-split-args (match-string 6))) (nth 2 info)))))
(save-excursion (goto-char head) (setq info
(org-babel-parse-src-block-match)) (setq indent (car (last info))) (setq info
(butlast info)) (while (and (forward-line -1) (looking-at
org-babel-multi-line-header-regexp)) (setf (nth 2 info) (org-babel-merge-params
(nth 2 info) (org-babel-parse-header-arguments (match-string 1))))) (when
(looking-at org-babel-src-name-w-name-regexp) (setq name
(org-babel-clean-text-properties (match-string 4))) (when (match-string 6)
(setf (nth 2 info) (org-babel-merge-params (mapcar (lambda (ref) (cons :var
ref)) (org-babel-ref-split-args (match-string 6))) (nth 2 info))))))
(if (setq head (org-babel-where-is-src-block-head)) (save-excursion
(goto-char head) (setq info (org-babel-parse-src-block-match)) (setq indent
(car (last info))) (setq info (butlast info)) (while (and (forward-line -1)
(looking-at org-babel-multi-line-header-regexp)) (setf (nth 2 info)
(org-babel-merge-params (nth 2 info) (org-babel-parse-header-arguments
(match-string 1))))) (when (looking-at org-babel-src-name-w-name-regexp) (setq
name (org-babel-clean-text-properties (match-string 4))) (when (match-string 6)
(setf (nth 2 info) (org-babel-merge-params (mapcar (lambda ... ...)
(org-babel-ref-split-args ...)) (nth 2 info)))))) (when (save-excursion
(re-search-backward "[ \f \n
]" nil t) (looking-at org-babel-inline-src-block-regexp)) (setq info
(org-babel-parse-inline-src-block-match))))
(let ((case-fold-search t) head info name indent) (if (setq head
(org-babel-where-is-src-block-head)) (save-excursion (goto-char head) (setq
info (org-babel-parse-src-block-match)) (setq indent (car (last info))) (setq
info (butlast info)) (while (and (forward-line -1) (looking-at
org-babel-multi-line-header-regexp)) (setf (nth 2 info) (org-babel-merge-params
(nth 2 info) (org-babel-parse-header-arguments (match-string 1))))) (when
(looking-at org-babel-src-name-w-name-regexp) (setq name
(org-babel-clean-text-properties (match-string 4))) (when (match-string 6)
(setf (nth 2 info) (org-babel-merge-params (mapcar ... ...) (nth 2 info))))))
(when (save-excursion (re-search-backward "[ \f \n
]" nil t) (looking-at org-babel-inline-src-block-regexp)) (setq info
(org-babel-parse-inline-src-block-match)))) (when (and info (not light)) (setf
(nth 2 info) (org-babel-process-params (nth 2 info)))) (when info (append info
(list name indent))))
org-babel-get-src-block-info(light)
(let* ((info (org-babel-get-src-block-info (quote light))) (lang (nth 0
info)) (raw-params (nth 2 info)) hash) (when info (when (member (cdr (assoc
:exports (nth 2 info))) (quote ("both" "results")))
(org-babel-exp-in-export-file lang (setf (nth 2 info) (org-babel-process-params
(org-babel-merge-params org-babel-default-header-args
(org-babel-params-from-buffer) (org-babel-params-from-properties lang) (if ...
... nil) raw-params)))) (setf hash (org-babel-sha1-hash info))) (setf (nth 1
info) (if (and (cdr (assoc :noweb (nth 2 info))) (string= "yes" (cdr (assoc
:noweb ...)))) (org-babel-expand-noweb-references info (get-file-buffer
org-current-export-file)) (nth 1 info))) (org-babel-exp-do-export info (quote
block) hash)))
(save-excursion (goto-char (match-beginning 0)) (let* ((info
(org-babel-get-src-block-info (quote light))) (lang (nth 0 info)) (raw-params
(nth 2 info)) hash) (when info (when (member (cdr (assoc :exports (nth 2
info))) (quote ("both" "results"))) (org-babel-exp-in-export-file lang (setf
(nth 2 info) (org-babel-process-params (org-babel-merge-params
org-babel-default-header-args ... ... ... raw-params)))) (setf hash
(org-babel-sha1-hash info))) (setf (nth 1 info) (if (and (cdr (assoc :noweb
...)) (string= "yes" (cdr ...))) (org-babel-expand-noweb-references info
(get-file-buffer org-current-export-file)) (nth 1 info)))
(org-babel-exp-do-export info (quote block) hash))))
org-babel-exp-src-block(#("return x*x" 0 10 (fontified nil)) #("python" 0 6
(fontified nil)))
apply(org-babel-exp-src-block #("return x*x" 0 10 (fontified nil)) #("python"
0 6 (fontified nil)))
(if (memq type org-export-blocks-witheld) "" (apply func body headers))
(progn (if (memq type org-export-blocks-witheld) "" (apply func body
headers)))
(unwind-protect (progn (if (memq type org-export-blocks-witheld) "" (apply
func body headers))) (set-match-data save-match-data-internal (quote
evaporate)))
(let ((save-match-data-internal (match-data))) (unwind-protect (progn (if
(memq type org-export-blocks-witheld) "" (apply func body headers)))
(set-match-data save-match-data-internal (quote evaporate))))
(save-match-data (if (memq type org-export-blocks-witheld) "" (apply func
body headers)))
(let ((replacement (save-match-data (if (memq type org-export-blocks-witheld)
"" (apply func body headers))))) (when replacement (delete-region match-start
match-end) (goto-char match-start) (insert replacement) (unless preserve-indent
(indent-code-rigidly match-start (point) indentation))))
(progn (let ((replacement (save-match-data (if (memq type
org-export-blocks-witheld) "" (apply func body headers))))) (when replacement
(delete-region match-start match-end) (goto-char match-start) (insert
replacement) (unless preserve-indent (indent-code-rigidly match-start (point)
indentation)))))
(if (setq func (cadr (assoc type org-export-blocks))) (progn (let
((replacement (save-match-data (if (memq type org-export-blocks-witheld) ""
(apply func body headers))))) (when replacement (delete-region match-start
match-end) (goto-char match-start) (insert replacement) (unless preserve-indent
(indent-code-rigidly match-start (point) indentation))))))
(when (setq func (cadr (assoc type org-export-blocks))) (let ((replacement
(save-match-data (if (memq type org-export-blocks-witheld) "" (apply func body
headers))))) (when replacement (delete-region match-start match-end) (goto-char
match-start) (insert replacement) (unless preserve-indent (indent-code-rigidly
match-start (point) indentation)))))
(let* ((match-start (match-beginning 0)) (body-start (match-end 0))
(indentation (length (match-string 1))) (inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote (downcase (match-string
2))))) (type (intern (downcase (match-string 2)))) (headers (save-match-data
(org-split-string (match-string 3) "[ ]+"))) (balanced 1) (preserve-indent
(or org-src-preserve-indentation (member "-i" headers))) match-end) (while (and
(not (zerop balanced)) (re-search-forward inner-re nil t)) (if (string=
(downcase (match-string 1)) "end") (decf balanced) (incf balanced))) (when (not
(zerop balanced)) (error "unbalanced begin/end_%s blocks with %S" type
(buffer-substring match-start (point)))) (setq match-end (match-end 0)) (unless
preserve-indent (setq body (save-match-data (org-remove-indentation
(buffer-substring body-start (match-beginning 0)))))) (unless (memq type types)
(setq types (cons type types))) (save-match-data (interblock start
match-start)) (when (setq func (cadr (assoc type org-export-blocks))) (let
((replacement (save-match-data (if (memq type org-export-blocks-witheld) ""
(apply func body headers))))) (when replacement (delete-region match-start
match-end) (goto-char match-start) (insert replacement) (unless preserve-indent
(indent-code-rigidly match-start (point) indentation))))))
(while (re-search-forward beg-re nil t) (let* ((match-start (match-beginning
0)) (body-start (match-end 0)) (indentation (length (match-string 1)))
(inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote (downcase (match-string
2))))) (type (intern (downcase (match-string 2)))) (headers (save-match-data
(org-split-string (match-string 3) "[ ]+"))) (balanced 1) (preserve-indent
(or org-src-preserve-indentation (member "-i" headers))) match-end) (while (and
(not (zerop balanced)) (re-search-forward inner-re nil t)) (if (string=
(downcase (match-string 1)) "end") (decf balanced) (incf balanced))) (when (not
(zerop balanced)) (error "unbalanced begin/end_%s blocks with %S" type
(buffer-substring match-start (point)))) (setq match-end (match-end 0)) (unless
preserve-indent (setq body (save-match-data (org-remove-indentation
(buffer-substring body-start (match-beginning 0)))))) (unless (memq type types)
(setq types (cons type types))) (save-match-data (interblock start
match-start)) (when (setq func (cadr (assoc type org-export-blocks))) (let
((replacement (save-match-data (if ... "" ...)))) (when replacement
(delete-region match-start match-end) (goto-char match-start) (insert
replacement) (unless preserve-indent (indent-code-rigidly match-start (point)
indentation)))))) (setq start (point)))
(let ((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start
(match-beginning 0)) (body-start (match-end 0)) (indentation (length
(match-string 1))) (inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote (downcase ...)))) (type
(intern (downcase (match-string 2)))) (headers (save-match-data
(org-split-string (match-string 3) "[ ]+"))) (balanced 1)
(preserve-indent (or org-src-preserve-indentation (member "-i" headers)))
match-end) (while (and (not (zerop balanced)) (re-search-forward inner-re nil
t)) (if (string= (downcase (match-string 1)) "end") (decf balanced) (incf
balanced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s blocks
with %S" type (buffer-substring match-start (point)))) (setq match-end
(match-end 0)) (unless preserve-indent (setq body (save-match-data
(org-remove-indentation (buffer-substring body-start ...))))) (unless (memq
type types) (setq types (cons type types))) (save-match-data (interblock start
match-start)) (when (setq func (cadr (assoc type org-export-blocks))) (let
((replacement (save-match-data ...))) (when replacement (delete-region
match-start match-end) (goto-char match-start) (insert replacement) (unless
preserve-indent (indent-code-rigidly match-start ... indentation)))))) (setq
start (point))))
(progn (fset (quote interblock) (function* (lambda (start end) (block
interblock (mapcar (lambda (pair) (funcall ... start end))
org-export-interblocks))))) (goto-char (point-min)) (setq start (point)) (let
((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start
(match-beginning 0)) (body-start (match-end 0)) (indentation (length
(match-string 1))) (inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote ...))) (type (intern
(downcase ...))) (headers (save-match-data (org-split-string ... "[ ]+")))
(balanced 1) (preserve-indent (or org-src-preserve-indentation (member "-i"
headers))) match-end) (while (and (not (zerop balanced)) (re-search-forward
inner-re nil t)) (if (string= (downcase ...) "end") (decf balanced) (incf
balanced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s blocks
with %S" type (buffer-substring match-start (point)))) (setq match-end
(match-end 0)) (unless preserve-indent (setq body (save-match-data
(org-remove-indentation ...)))) (unless (memq type types) (setq types (cons
type types))) (save-match-data (interblock start match-start)) (when (setq func
(cadr (assoc type org-export-blocks))) (let ((replacement ...)) (when
replacement (delete-region match-start match-end) (goto-char match-start)
(insert replacement) (unless preserve-indent ...))))) (setq start (point))))
(interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook)))
(unwind-protect (progn (fset (quote interblock) (function* (lambda (start
end) (block interblock (mapcar (lambda ... ...) org-export-interblocks)))))
(goto-char (point-min)) (setq start (point)) (let ((beg-re "^\\([
]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start
(match-beginning 0)) (body-start (match-end 0)) (indentation (length ...))
(inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" ...)) (type (intern ...)) (headers
(save-match-data ...)) (balanced 1) (preserve-indent (or
org-src-preserve-indentation ...)) match-end) (while (and (not ...)
(re-search-forward inner-re nil t)) (if (string= ... "end") (decf balanced)
(incf balanced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s
blocks with %S" type (buffer-substring match-start ...))) (setq match-end
(match-end 0)) (unless preserve-indent (setq body (save-match-data ...)))
(unless (memq type types) (setq types (cons type types))) (save-match-data
(interblock start match-start)) (when (setq func (cadr ...)) (let (...) (when
replacement ... ... ... ...)))) (setq start (point)))) (interblock start
(point-max)) (run-hooks (quote org-export-blocks-postblock-hook))) (if
--cl-letf-bound-- (fset (quote interblock) --cl-letf-save--) (fmakunbound
(quote interblock))))
(let* ((--cl-letf-bound-- (fboundp (quote interblock))) (--cl-letf-save--
(and --cl-letf-bound-- (symbol-function (quote interblock))))) (unwind-protect
(progn (fset (quote interblock) (function* (lambda (start end) (block
interblock (mapcar ... org-export-interblocks))))) (goto-char (point-min))
(setq start (point)) (let ((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[
]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start ...)
(body-start ...) (indentation ...) (inner-re ...) (type ...) (headers ...)
(balanced 1) (preserve-indent ...) match-end) (while (and ... ...) (if ... ...
...)) (when (not ...) (error "unbalanced begin/end_%s blocks with %S" type
...)) (setq match-end (match-end 0)) (unless preserve-indent (setq body ...))
(unless (memq type types) (setq types ...)) (save-match-data (interblock start
match-start)) (when (setq func ...) (let ... ...))) (setq start (point))))
(interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook))) (if --cl-letf-bound-- (fset (quote
interblock) --cl-letf-save--) (fmakunbound (quote interblock)))))
(letf (((symbol-function (quote interblock)) (function* (lambda (start end)
(block interblock (mapcar (lambda ... ...) org-export-interblocks))))))
(goto-char (point-min)) (setq start (point)) (let ((beg-re "^\\([
]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start
(match-beginning 0)) (body-start (match-end 0)) (indentation (length
(match-string 1))) (inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote ...))) (type (intern
(downcase ...))) (headers (save-match-data (org-split-string ... "[ ]+")))
(balanced 1) (preserve-indent (or org-src-preserve-indentation (member "-i"
headers))) match-end) (while (and (not (zerop balanced)) (re-search-forward
inner-re nil t)) (if (string= (downcase ...) "end") (decf balanced) (incf
balanced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s blocks
with %S" type (buffer-substring match-start (point)))) (setq match-end
(match-end 0)) (unless preserve-indent (setq body (save-match-data
(org-remove-indentation ...)))) (unless (memq type types) (setq types (cons
type types))) (save-match-data (interblock start match-start)) (when (setq func
(cadr (assoc type org-export-blocks))) (let ((replacement ...)) (when
replacement (delete-region match-start match-end) (goto-char match-start)
(insert replacement) (unless preserve-indent ...))))) (setq start (point))))
(interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook)))
(letf* (((symbol-function (quote interblock)) (function* (lambda (start end)
(block interblock (mapcar (lambda ... ...) org-export-interblocks))))))
(goto-char (point-min)) (setq start (point)) (let ((beg-re "^\\([
]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start
(match-beginning 0)) (body-start (match-end 0)) (indentation (length
(match-string 1))) (inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote ...))) (type (intern
(downcase ...))) (headers (save-match-data (org-split-string ... "[ ]+")))
(balanced 1) (preserve-indent (or org-src-preserve-indentation (member "-i"
headers))) match-end) (while (and (not (zerop balanced)) (re-search-forward
inner-re nil t)) (if (string= (downcase ...) "end") (decf balanced) (incf
balanced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s blocks
with %S" type (buffer-substring match-start (point)))) (setq match-end
(match-end 0)) (unless preserve-indent (setq body (save-match-data
(org-remove-indentation ...)))) (unless (memq type types) (setq types (cons
type types))) (save-match-data (interblock start match-start)) (when (setq func
(cadr (assoc type org-export-blocks))) (let ((replacement ...)) (when
replacement (delete-region match-start match-end) (goto-char match-start)
(insert replacement) (unless preserve-indent ...))))) (setq start (point))))
(interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook)))
(flet ((interblock (start end) (mapcar (lambda (pair) (funcall (second pair)
start end)) org-export-interblocks))) (goto-char (point-min)) (setq start
(point)) (let ((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start
(match-beginning 0)) (body-start (match-end 0)) (indentation (length
(match-string 1))) (inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote ...))) (type (intern
(downcase ...))) (headers (save-match-data (org-split-string ... "[ ]+")))
(balanced 1) (preserve-indent (or org-src-preserve-indentation (member "-i"
headers))) match-end) (while (and (not (zerop balanced)) (re-search-forward
inner-re nil t)) (if (string= (downcase ...) "end") (decf balanced) (incf
balanced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s blocks
with %S" type (buffer-substring match-start (point)))) (setq match-end
(match-end 0)) (unless preserve-indent (setq body (save-match-data
(org-remove-indentation ...)))) (unless (memq type types) (setq types (cons
type types))) (save-match-data (interblock start match-start)) (when (setq func
(cadr (assoc type org-export-blocks))) (let ((replacement ...)) (when
replacement (delete-region match-start match-end) (goto-char match-start)
(insert replacement) (unless preserve-indent ...))))) (setq start (point))))
(interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook)))
(let ((case-fold-search t) (types (quote nil)) matched indentation type func
start end body headers preserve-indent progress-marker) (flet ((interblock
(start end) (mapcar (lambda (pair) (funcall (second pair) start end))
org-export-interblocks))) (goto-char (point-min)) (setq start (point)) (let
((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start
(match-beginning 0)) (body-start (match-end 0)) (indentation (length ...))
(inner-re (format "[
\n]*[ ]*#\\+\\(begin\\|end\\)_%s" ...)) (type (intern ...)) (headers
(save-match-data ...)) (balanced 1) (preserve-indent (or
org-src-preserve-indentation ...)) match-end) (while (and (not ...)
(re-search-forward inner-re nil t)) (if (string= ... "end") (decf balanced)
(incf balanced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s
blocks with %S" type (buffer-substring match-start ...))) (setq match-end
(match-end 0)) (unless preserve-indent (setq body (save-match-data ...)))
(unless (memq type types) (setq types (cons type types))) (save-match-data
(interblock start match-start)) (when (setq func (cadr ...)) (let (...) (when
replacement ... ... ... ...)))) (setq start (point)))) (interblock start
(point-max)) (run-hooks (quote org-export-blocks-postblock-hook))))
(progn (let ((case-fold-search t) (types (quote nil)) matched indentation
type func start end body headers preserve-indent progress-marker) (flet
((interblock (start end) (mapcar (lambda (pair) (funcall ... start end))
org-export-interblocks))) (goto-char (point-min)) (setq start (point)) (let
((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start ...)
(body-start ...) (indentation ...) (inner-re ...) (type ...) (headers ...)
(balanced 1) (preserve-indent ...) match-end) (while (and ... ...) (if ... ...
...)) (when (not ...) (error "unbalanced begin/end_%s blocks with %S" type
...)) (setq match-end (match-end 0)) (unless preserve-indent (setq body ...))
(unless (memq type types) (setq types ...)) (save-match-data (interblock start
match-start)) (when (setq func ...) (let ... ...))) (setq start (point))))
(interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook)))))
(unwind-protect (progn (let ((case-fold-search t) (types (quote nil)) matched
indentation type func start end body headers preserve-indent progress-marker)
(flet ((interblock (start end) (mapcar (lambda ... ...)
org-export-interblocks))) (goto-char (point-min)) (setq start (point)) (let
((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* (... ... ... ... ... ...
... ... match-end) (while ... ...) (when ... ...) (setq match-end ...) (unless
preserve-indent ...) (unless ... ...) (save-match-data ...) (when ... ...))
(setq start (point)))) (interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook))))) (set-window-configuration wconfig))
(let ((wconfig (current-window-configuration))) (unwind-protect (progn (let
((case-fold-search t) (types (quote nil)) matched indentation type func start
end body headers preserve-indent progress-marker) (flet ((interblock (start
end) (mapcar ... org-export-interblocks))) (goto-char (point-min)) (setq start
(point)) (let ((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ... ... ... ... ... ...
... ...) (setq start ...))) (interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook))))) (set-window-configuration wconfig)))
(save-window-excursion (let ((case-fold-search t) (types (quote nil)) matched
indentation type func start end body headers preserve-indent progress-marker)
(flet ((interblock (start end) (mapcar (lambda (pair) (funcall ... start end))
org-export-interblocks))) (goto-char (point-min)) (setq start (point)) (let
((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[
\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start ...)
(body-start ...) (indentation ...) (inner-re ...) (type ...) (headers ...)
(balanced 1) (preserve-indent ...) match-end) (while (and ... ...) (if ... ...
...)) (when (not ...) (error "unbalanced begin/end_%s blocks with %S" type
...)) (setq match-end (match-end 0)) (unless preserve-indent (setq body ...))
(unless (memq type types) (setq types ...)) (save-match-data (interblock start
match-start)) (when (setq func ...) (let ... ...))) (setq start (point))))
(interblock start (point-max)) (run-hooks (quote
org-export-blocks-postblock-hook)))))
org-export-blocks-preprocess()
(progn (erase-buffer) (insert string) (setq case-fold-search t) (let
((inhibit-read-only t)) (remove-text-properties (point-min) (point-max) (quote
(read-only t)))) (org-export-kill-licensed-text) (let ((org-inhibit-startup t))
(org-mode)) (setq case-fold-search t) (org-clone-local-variables source-buffer
"^\\(org-\\|orgtbl-\\)") (org-install-letbind) (run-hooks (quote
org-export-preprocess-hook)) (untabify (point-min) (point-max))
(org-export-handle-include-files-recurse) (run-hooks (quote
org-export-preprocess-after-include-files-hook))
(org-export-remove-archived-trees archived-trees)
(org-export-remove-comment-blocks-and-subtrees) (org-export-handle-export-tags
(plist-get parameters :select-tags) (plist-get parameters :exclude-tags))
(run-hooks (quote org-export-preprocess-after-tree-selection-hook))
(org-export-remove-tasks (plist-get parameters :tasks)) (when (plist-get
parameters :footnotes) (org-footnote-normalize nil parameters))
(org-export-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks
(quote org-export-preprocess-after-macros-hook)) (org-export-blocks-preprocess)
(org-export-mark-list-properties)
(org-export-replace-src-segments-and-examples)
(org-export-protect-colon-examples) (org-export-convert-protected-spaces) (setq
target-alist (org-export-define-heading-targets target-alist)) (run-hooks
(quote org-export-preprocess-after-headline-targets-hook))
(org-export-remember-html-container-classes)
(org-export-remove-or-extract-drawers drawers (plist-get parameters :drawers))
(when (plist-get parameters :skip-before-1st-heading) (goto-char (point-min))
(when (re-search-forward "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region
(point-min) (match-beginning 0)) (goto-char (point-min)) (insert "\n"))) (when
(plist-get parameters :add-text) (goto-char (point-min)) (insert (plist-get
parameters :add-text) "\n")) (org-export-remove-headline-metadata parameters)
(setq target-alist (org-export-handle-invisible-targets target-alist))
(run-hooks (quote org-export-preprocess-before-selecting-backend-code-hook))
(org-export-select-backend-specific-text) (org-export-protect-quoted-subtrees)
(org-export-remove-clock-lines) (org-export-protect-verbatim)
(org-export-mark-blockquote-verse-center) (run-hooks (quote
org-export-preprocess-after-blockquote-hook)) (unless (plist-get parameters
:timestamps) (org-export-remove-timestamps)) (setq target-alist
(org-export-attach-captions-and-attributes target-alist))
(org-export-mark-radio-links) (run-hooks (quote
org-export-preprocess-after-radio-targets-hook))
(org-export-concatenate-multiline-links) (run-hooks (quote
org-export-preprocess-before-normalizing-links-hook))
(org-export-normalize-links) ...)
(unwind-protect (progn (erase-buffer) (insert string) (setq case-fold-search
t) (let ((inhibit-read-only t)) (remove-text-properties (point-min) (point-max)
(quote (read-only t)))) (org-export-kill-licensed-text) (let
((org-inhibit-startup t)) (org-mode)) (setq case-fold-search t)
(org-clone-local-variables source-buffer "^\\(org-\\|orgtbl-\\)")
(org-install-letbind) (run-hooks (quote org-export-preprocess-hook)) (untabify
(point-min) (point-max)) (org-export-handle-include-files-recurse) (run-hooks
(quote org-export-preprocess-after-include-files-hook))
(org-export-remove-archived-trees archived-trees)
(org-export-remove-comment-blocks-and-subtrees) (org-export-handle-export-tags
(plist-get parameters :select-tags) (plist-get parameters :exclude-tags))
(run-hooks (quote org-export-preprocess-after-tree-selection-hook))
(org-export-remove-tasks (plist-get parameters :tasks)) (when (plist-get
parameters :footnotes) (org-footnote-normalize nil parameters))
(org-export-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks
(quote org-export-preprocess-after-macros-hook)) (org-export-blocks-preprocess)
(org-export-mark-list-properties)
(org-export-replace-src-segments-and-examples)
(org-export-protect-colon-examples) (org-export-convert-protected-spaces) (setq
target-alist (org-export-define-heading-targets target-alist)) (run-hooks
(quote org-export-preprocess-after-headline-targets-hook))
(org-export-remember-html-container-classes)
(org-export-remove-or-extract-drawers drawers (plist-get parameters :drawers))
(when (plist-get parameters :skip-before-1st-heading) (goto-char (point-min))
(when (re-search-forward "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region
(point-min) (match-beginning 0)) (goto-char (point-min)) (insert "\n"))) (when
(plist-get parameters :add-text) (goto-char (point-min)) (insert (plist-get
parameters :add-text) "\n")) (org-export-remove-headline-metadata parameters)
(setq target-alist (org-export-handle-invisible-targets target-alist))
(run-hooks (quote org-export-preprocess-before-selecting-backend-code-hook))
(org-export-select-backend-specific-text) (org-export-protect-quoted-subtrees)
(org-export-remove-clock-lines) (org-export-protect-verbatim)
(org-export-mark-blockquote-verse-center) (run-hooks (quote
org-export-preprocess-after-blockquote-hook)) (unless (plist-get parameters
:timestamps) (org-export-remove-timestamps)) (setq target-alist
(org-export-attach-captions-and-attributes target-alist))
(org-export-mark-radio-links) (run-hooks (quote
org-export-preprocess-after-radio-targets-hook))
(org-export-concatenate-multiline-links) (run-hooks (quote
org-export-preprocess-before-normalizing-links-hook))
(org-export-normalize-links) ...) (and (buffer-name temp-buffer) (kill-buffer
temp-buffer)))
(save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn
(erase-buffer) (insert string) (setq case-fold-search t) (let
((inhibit-read-only t)) (remove-text-properties (point-min) (point-max) (quote
(read-only t)))) (org-export-kill-licensed-text) (let ((org-inhibit-startup t))
(org-mode)) (setq case-fold-search t) (org-clone-local-variables source-buffer
"^\\(org-\\|orgtbl-\\)") (org-install-letbind) (run-hooks (quote
org-export-preprocess-hook)) (untabify (point-min) (point-max))
(org-export-handle-include-files-recurse) (run-hooks (quote
org-export-preprocess-after-include-files-hook))
(org-export-remove-archived-trees archived-trees)
(org-export-remove-comment-blocks-and-subtrees) (org-export-handle-export-tags
(plist-get parameters :select-tags) (plist-get parameters :exclude-tags))
(run-hooks (quote org-export-preprocess-after-tree-selection-hook))
(org-export-remove-tasks (plist-get parameters :tasks)) (when (plist-get
parameters :footnotes) (org-footnote-normalize nil parameters))
(org-export-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks
(quote org-export-preprocess-after-macros-hook)) (org-export-blocks-preprocess)
(org-export-mark-list-properties)
(org-export-replace-src-segments-and-examples)
(org-export-protect-colon-examples) (org-export-convert-protected-spaces) (setq
target-alist (org-export-define-heading-targets target-alist)) (run-hooks
(quote org-export-preprocess-after-headline-targets-hook))
(org-export-remember-html-container-classes)
(org-export-remove-or-extract-drawers drawers (plist-get parameters :drawers))
(when (plist-get parameters :skip-before-1st-heading) (goto-char (point-min))
(when (re-search-forward "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region
(point-min) (match-beginning 0)) (goto-char (point-min)) (insert "\n"))) (when
(plist-get parameters :add-text) (goto-char (point-min)) (insert (plist-get
parameters :add-text) "\n")) (org-export-remove-headline-metadata parameters)
(setq target-alist (org-export-handle-invisible-targets target-alist))
(run-hooks (quote org-export-preprocess-before-selecting-backend-code-hook))
(org-export-select-backend-specific-text) (org-export-protect-quoted-subtrees)
(org-export-remove-clock-lines) (org-export-protect-verbatim)
(org-export-mark-blockquote-verse-center) (run-hooks (quote
org-export-preprocess-after-blockquote-hook)) (unless (plist-get parameters
:timestamps) (org-export-remove-timestamps)) (setq target-alist
(org-export-attach-captions-and-attributes target-alist))
(org-export-mark-radio-links) (run-hooks (quote
org-export-preprocess-after-radio-targets-hook))
(org-export-concatenate-multiline-links) (run-hooks (quote
org-export-preprocess-before-normalizing-links-hook))
(org-export-normalize-links) ...) (and (buffer-name temp-buffer) (kill-buffer
temp-buffer))))
(with-current-buffer temp-buffer (unwind-protect (progn (erase-buffer)
(insert string) (setq case-fold-search t) (let ((inhibit-read-only t))
(remove-text-properties (point-min) (point-max) (quote (read-only t))))
(org-export-kill-licensed-text) (let ((org-inhibit-startup t)) (org-mode))
(setq case-fold-search t) (org-clone-local-variables source-buffer
"^\\(org-\\|orgtbl-\\)") (org-install-letbind) (run-hooks (quote
org-export-preprocess-hook)) (untabify (point-min) (point-max))
(org-export-handle-include-files-recurse) (run-hooks (quote
org-export-preprocess-after-include-files-hook))
(org-export-remove-archived-trees archived-trees)
(org-export-remove-comment-blocks-and-subtrees) (org-export-handle-export-tags
(plist-get parameters :select-tags) (plist-get parameters :exclude-tags))
(run-hooks (quote org-export-preprocess-after-tree-selection-hook))
(org-export-remove-tasks (plist-get parameters :tasks)) (when (plist-get
parameters :footnotes) (org-footnote-normalize nil parameters))
(org-export-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks
(quote org-export-preprocess-after-macros-hook)) (org-export-blocks-preprocess)
(org-export-mark-list-properties)
(org-export-replace-src-segments-and-examples)
(org-export-protect-colon-examples) (org-export-convert-protected-spaces) (setq
target-alist (org-export-define-heading-targets target-alist)) (run-hooks
(quote org-export-preprocess-after-headline-targets-hook))
(org-export-remember-html-container-classes)
(org-export-remove-or-extract-drawers drawers (plist-get parameters :drawers))
(when (plist-get parameters :skip-before-1st-heading) (goto-char (point-min))
(when (re-search-forward "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region
(point-min) (match-beginning 0)) (goto-char (point-min)) (insert "\n"))) (when
(plist-get parameters :add-text) (goto-char (point-min)) (insert (plist-get
parameters :add-text) "\n")) (org-export-remove-headline-metadata parameters)
(setq target-alist (org-export-handle-invisible-targets target-alist))
(run-hooks (quote org-export-preprocess-before-selecting-backend-code-hook))
(org-export-select-backend-specific-text) (org-export-protect-quoted-subtrees)
(org-export-remove-clock-lines) (org-export-protect-verbatim)
(org-export-mark-blockquote-verse-center) (run-hooks (quote
org-export-preprocess-after-blockquote-hook)) (unless (plist-get parameters
:timestamps) (org-export-remove-timestamps)) (setq target-alist
(org-export-attach-captions-and-attributes target-alist))
(org-export-mark-radio-links) (run-hooks (quote
org-export-preprocess-after-radio-targets-hook))
(org-export-concatenate-multiline-links) (run-hooks (quote
org-export-preprocess-before-normalizing-links-hook))
(org-export-normalize-links) ...) (and (buffer-name temp-buffer) (kill-buffer
temp-buffer))))
(let ((temp-buffer (generate-new-buffer " *temp*"))) (with-current-buffer
temp-buffer (unwind-protect (progn (erase-buffer) (insert string) (setq
case-fold-search t) (let ((inhibit-read-only t)) (remove-text-properties
(point-min) (point-max) (quote (read-only t)))) (org-export-kill-licensed-text)
(let ((org-inhibit-startup t)) (org-mode)) (setq case-fold-search t)
(org-clone-local-variables source-buffer "^\\(org-\\|orgtbl-\\)")
(org-install-letbind) (run-hooks (quote org-export-preprocess-hook)) (untabify
(point-min) (point-max)) (org-export-handle-include-files-recurse) (run-hooks
(quote org-export-preprocess-after-include-files-hook))
(org-export-remove-archived-trees archived-trees)
(org-export-remove-comment-blocks-and-subtrees) (org-export-handle-export-tags
(plist-get parameters :select-tags) (plist-get parameters :exclude-tags))
(run-hooks (quote org-export-preprocess-after-tree-selection-hook))
(org-export-remove-tasks (plist-get parameters :tasks)) (when (plist-get
parameters :footnotes) (org-footnote-normalize nil parameters))
(org-export-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks
(quote org-export-preprocess-after-macros-hook)) (org-export-blocks-preprocess)
(org-export-mark-list-properties)
(org-export-replace-src-segments-and-examples)
(org-export-protect-colon-examples) (org-export-convert-protected-spaces) (setq
target-alist (org-export-define-heading-targets target-alist)) (run-hooks
(quote org-export-preprocess-after-headline-targets-hook))
(org-export-remember-html-container-classes)
(org-export-remove-or-extract-drawers drawers (plist-get parameters :drawers))
(when (plist-get parameters :skip-before-1st-heading) (goto-char (point-min))
(when (re-search-forward "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region
(point-min) (match-beginning 0)) (goto-char (point-min)) (insert "\n"))) (when
(plist-get parameters :add-text) (goto-char (point-min)) (insert (plist-get
parameters :add-text) "\n")) (org-export-remove-headline-metadata parameters)
(setq target-alist (org-export-handle-invisible-targets target-alist))
(run-hooks (quote org-export-preprocess-before-selecting-backend-code-hook))
(org-export-select-backend-specific-text) (org-export-protect-quoted-subtrees)
(org-export-remove-clock-lines) (org-export-protect-verbatim)
(org-export-mark-blockquote-verse-center) (run-hooks (quote
org-export-preprocess-after-blockquote-hook)) (unless (plist-get parameters
:timestamps) (org-export-remove-timestamps)) (setq target-alist
(org-export-attach-captions-and-attributes target-alist))
(org-export-mark-radio-links) (run-hooks (quote
org-export-preprocess-after-radio-targets-hook))
(org-export-concatenate-multiline-links) (run-hooks (quote
org-export-preprocess-before-normalizing-links-hook))
(org-export-normalize-links) ...) (and (buffer-name temp-buffer) (kill-buffer
temp-buffer)))))
(with-temp-buffer (erase-buffer) (insert string) (setq case-fold-search t)
(let ((inhibit-read-only t)) (remove-text-properties (point-min) (point-max)
(quote (read-only t)))) (org-export-kill-licensed-text) (let
((org-inhibit-startup t)) (org-mode)) (setq case-fold-search t)
(org-clone-local-variables source-buffer "^\\(org-\\|orgtbl-\\)")
(org-install-letbind) (run-hooks (quote org-export-preprocess-hook)) (untabify
(point-min) (point-max)) (org-export-handle-include-files-recurse) (run-hooks
(quote org-export-preprocess-after-include-files-hook))
(org-export-remove-archived-trees archived-trees)
(org-export-remove-comment-blocks-and-subtrees) (org-export-handle-export-tags
(plist-get parameters :select-tags) (plist-get parameters :exclude-tags))
(run-hooks (quote org-export-preprocess-after-tree-selection-hook))
(org-export-remove-tasks (plist-get parameters :tasks)) (when (plist-get
parameters :footnotes) (org-footnote-normalize nil parameters))
(org-export-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks
(quote org-export-preprocess-after-macros-hook)) (org-export-blocks-preprocess)
(org-export-mark-list-properties)
(org-export-replace-src-segments-and-examples)
(org-export-protect-colon-examples) (org-export-convert-protected-spaces) (setq
target-alist (org-export-define-heading-targets target-alist)) (run-hooks
(quote org-export-preprocess-after-headline-targets-hook))
(org-export-remember-html-container-classes)
(org-export-remove-or-extract-drawers drawers (plist-get parameters :drawers))
(when (plist-get parameters :skip-before-1st-heading) (goto-char (point-min))
(when (re-search-forward "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region
(point-min) (match-beginning 0)) (goto-char (point-min)) (insert "\n"))) (when
(plist-get parameters :add-text) (goto-char (point-min)) (insert (plist-get
parameters :add-text) "\n")) (org-export-remove-headline-metadata parameters)
(setq target-alist (org-export-handle-invisible-targets target-alist))
(run-hooks (quote org-export-preprocess-before-selecting-backend-code-hook))
(org-export-select-backend-specific-text) (org-export-protect-quoted-subtrees)
(org-export-remove-clock-lines) (org-export-protect-verbatim)
(org-export-mark-blockquote-verse-center) (run-hooks (quote
org-export-preprocess-after-blockquote-hook)) (unless (plist-get parameters
:timestamps) (org-export-remove-timestamps)) (setq target-alist
(org-export-attach-captions-and-attributes target-alist))
(org-export-mark-radio-links) (run-hooks (quote
org-export-preprocess-after-radio-targets-hook))
(org-export-concatenate-multiline-links) (run-hooks (quote
org-export-preprocess-before-normalizing-links-hook))
(org-export-normalize-links) ...)
(let* ((org-export-current-backend (or (plist-get parameters :for-backend)
org-export-current-backend)) (archived-trees (plist-get parameters
:archived-trees)) (inhibit-read-only t) (drawers org-drawers) (source-buffer
(current-buffer)) target-alist rtn) (setq org-export-target-aliases nil
org-export-preferred-target-alist nil org-export-id-target-alist nil
org-export-code-refs nil) (with-temp-buffer (erase-buffer) (insert string)
(setq case-fold-search t) (let ((inhibit-read-only t)) (remove-text-properties
(point-min) (point-max) (quote (read-only t)))) (org-export-kill-licensed-text)
(let ((org-inhibit-startup t)) (org-mode)) (setq case-fold-search t)
(org-clone-local-variables source-buffer "^\\(org-\\|orgtbl-\\)")
(org-install-letbind) (run-hooks (quote org-export-preprocess-hook)) (untabify
(point-min) (point-max)) (org-export-handle-include-files-recurse) (run-hooks
(quote org-export-preprocess-after-include-files-hook))
(org-export-remove-archived-trees archived-trees)
(org-export-remove-comment-blocks-and-subtrees) (org-export-handle-export-tags
(plist-get parameters :select-tags) (plist-get parameters :exclude-tags))
(run-hooks (quote org-export-preprocess-after-tree-selection-hook))
(org-export-remove-tasks (plist-get parameters :tasks)) (when (plist-get
parameters :footnotes) (org-footnote-normalize nil parameters))
(org-export-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks
(quote org-export-preprocess-after-macros-hook)) (org-export-blocks-preprocess)
(org-export-mark-list-properties)
(org-export-replace-src-segments-and-examples)
(org-export-protect-colon-examples) (org-export-convert-protected-spaces) (setq
target-alist (org-export-define-heading-targets target-alist)) (run-hooks
(quote org-export-preprocess-after-headline-targets-hook))
(org-export-remember-html-container-classes)
(org-export-remove-or-extract-drawers drawers (plist-get parameters :drawers))
(when (plist-get parameters :skip-before-1st-heading) (goto-char (point-min))
(when (re-search-forward "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region
(point-min) (match-beginning 0)) (goto-char (point-min)) (insert "\n"))) (when
(plist-get parameters :add-text) (goto-char (point-min)) (insert (plist-get
parameters :add-text) "\n")) (org-export-remove-headline-metadata parameters)
(setq target-alist (org-export-handle-invisible-targets target-alist))
(run-hooks (quote org-export-preprocess-before-selecting-backend-code-hook))
(org-export-select-backend-specific-text) (org-export-protect-quoted-subtrees)
(org-export-remove-clock-lines) (org-export-protect-verbatim)
(org-export-mark-blockquote-verse-center) (run-hooks (quote
org-export-preprocess-after-blockquote-hook)) (unless (plist-get parameters
:timestamps) (org-export-remove-timestamps)) (setq target-alist
(org-export-attach-captions-and-attributes target-alist))
(org-export-mark-radio-links) (run-hooks (quote
org-export-preprocess-after-radio-targets-hook))
(org-export-concatenate-multiline-links) (run-hooks (quote
org-export-preprocess-before-normalizing-links-hook))
(org-export-normalize-links) ...) rtn)
org-export-preprocess-string(#("#+OPTIONS: H:3 num:nil toc:2 \\n:nil @:t
::t |:t ^:{} -:t f:t *:t TeX:t LaTeX:nil skip:nil d:(HIDE)
tags:not-in-toc\n#+STARTUP: align fold nodlcheck hidestars oddeven
lognotestate hideblocks\n#+SEQ_TODO: TODO(t) INPROGRESS(i) WAITING(w@) |
DONE(d) CANCELED(c@)\n#+TAGS: Write(w) Update(u) Fix(f) Check(c)
noexport(n)\n#+TITLE: Babel: Introduction\n#+AUTHOR: Eric Schulte, Dan
Davison, Tom Dye\n#+EMAIL: schulte.eric at gmail dot com, davison at stats
dot ox dot ac dot uk, tsd at tsdye dot com\n#+LANGUAGE: en\n#+STYLE:
<style type=\"text/css\">#outline-container-introduction{ clear:both;
}</style>\n#+STYLE: <style type=\"text/css\">#table-of-contents{
max-width:100%; }</style>\n#+LINK_UP: index.php\n#+LINK_HOME:
http://orgmode.org/worg\n\n#+begin_html\n <div id=\"subtitle\" style=\"float:
center; text-align: center;\">\n <p>executable code blocks in org-mode</p>\n
</div>\n <div id=\"logo\" style=\"float: left; text-align: center; max-width:
340px; font-size: 8pt; margin-left: 1em;\">\n <p>\n <img
src=\"../../images/babel/tower-of-babel.png\" alt=\"Tower of Babel\"/>\n
<div id=\"attr\" style=\"margin: -0.5em;\">\n The Tower of Babel by\n
<a href=\"http://commons.wikimedia.org/wiki/Pieter_Brueghel_the_Elder\"
title=\"\">\n <b>Pieter Brueghel the Elder</b>\n </a>\n
</div>\n <p>\n And the Lord said, Behold, the people is one, and
they have all\n one language; and this they begin to do; and now nothing
will be\n restrained from them, which they have imagined to do.
Genesis\n 11:1-9\n </p>\n </p>\n </div>\n#+end_html\n \n*
Improving this document :noexport:\n** DONE
Document slice indexing of tables\n** DONE Document synonymous alternatives\n
{call,lob}, {source, function, srcname}, {results, resname}\n** DONE Describe
useful functions\n - `org-babel-execute-buffer'\n -
`org-babel-execute-subtree'\n\n** DONE Language support\n Hopefully we will be
breaking out a separate section for\neach language, and expanding the portion
which documents the actual\nusage of header-arguments and noweb references as
those sections are\nwoefully out of date.\n** DONE Document noweb
references\n*** DONE Why is :noweb needed for execution but not for
tangling?\n** TODO Developments\n- org-babel can now cache the results of
source block execution to avoid\n rerunning the same calculation. The cache
uses a sha1 hash key of the\n source code body and the header arguments to
determine if\n recalculation is required. These hash keys are kept mostly
hidden in\n the #+resname line of the results of the block. This behavior is\n
turned off by default. It is controlled through the :cache\n and :nocache
header arguments. To enable caching on a single block\n add the :cache header
argument, to enable global caching change the\n value of your
`org-babel-default-header-args' variable as follows\n\n (setq
org-babel-default-header-args\n (cons '(:cache)\n
(assq-delete-all :nocache org-babel-default-header-args)))\n\n- It is now
possible to fold results by tabbing on the beginning of the\n #+resname line.
This can be done automatically to all results on\n opening of a file by adding
the following to your org-mode hook\n\n (add-hook 'org-mode-hook
'org-babel-result-hide-all)\n\n- allow header argument values to be lisp forms,
for example the\n following is now valid\n\n :file (format
\"%s/images/pca-scatter.png\" dir)\n\n** DONE Useful variables\n - # -*-
org-src-preserve-indentation: t -*-\n** TODO Language specific header
arguments\n - org-babel: capture graphical output from R\n\n If a [:file
filename.ext] header arg is provided, then all graphical\n output from the
source block is captured on disk, and output of the\n source block is a link
to the resulting file, as with the\n graphics-only languages such as gnuplot,
ditaa, dot, asymptote. An\n attempt is made to find a graphics device
corresponding to the file\n extension (currently .png, .jpg, .jpeg, .tiff,
.bmp, .pdf, .ps,\n .postscript are recognised); if that fails, png format
output is\n created.\n\n Additionally, values for several arguments to the
R graphics\n device can be passed using header args:\n\n :width :height :bg
:units :pointsize\n :antialias :quality :compression :res :type\n :family
:title :fonts :version :paper :encoding\n :pagecentre :colormodel
:useDingbats :horizontal\n\n Arguments to the R graphics device that are not
supported as header\n args can be passed as a string in R argument syntax,
using the header\n arg :R-dev-args\n\n An example block is (although both
bg and fg can be passed directly as\n header args)\n\n \\#+begin_src R
:file z.pdf :width 8 :height 8 :R-dev-args bg=\"olivedrab\", fg=\"hotpink\"\n
plot(matrix(rnorm(100), ncol=2), type=\"l\")\n \\#+end_src\n\n - Yes, I
think we do want a version of this for python and ruby et al. In\nyour example,
the filename is created in python. I suggest doing it\nslightly differently,
something like this.\n\n#+srcname: fileoutput\n#+begin_src python :file
outfile.txt\n def savetofile(result, filename):\n with open(filename, 'w')
as f:\n f.write(str(result))\n savetofile(78, 'outfile.txt')\n
55\n#+end_src\n\n#+resname: fileoutput\n[[file:outfile.txt]]\n\nThis
functionality is now available for ruby & python in branch\nded-babel of
git://orgmode.org/org-mode/babel.git.\n\nSo here, if you specify :file
<filepath> ruby/python blindly outputs a\nlink to <filepath>, regardless of the
contents of the\ncode. Responsibility for creating useful contents of
<filepath> lies\nwith the code. Notice that with this you have to specify the
output file\ntwice: once as an org-babel directive, and once in the python
code. This\nis in contrast to the graphics languages (dot, ditaa, asymptote),
where\nthe results *automatically* get sent to the file specified by :file.
The\nsame is also true now for graphical output from R.\n\nThe difference with
python, ruby et al is that they might create file\noutput in a variety of ways
which we can't anticipate, so we can't\nautomatically send output to the file.
In contrast, the graphics\nlanguage *always* create file output and always do
it in the same\nway. [And in R it is possible to divert all graphical output to
file] A\npossible extension of the above might be to use a \"magic variable\"
so\nthat a python variable is created e.g. __org_babel_output_file__
that\nalways holds a string corresponding to the file specified by :file.
Eric\nmay have further ideas / views here. \n\n\n** DONE What function is bound
to C-c '?\n - this document notes two different functions\n* Introduction\n
:PROPERTIES:\n :CUSTOM_ID: introduction\n :END:\n\n Babel is about letting
[[file:languages.org][many different languages]] work together.\n Programming
languages live in blocks inside natural language\n
[[http://orgmode.org/][Org-mode]] documents. A piece of data may pass from a
table to a\n Python code block, then maybe move on to an =R= code block, and\n
finally end up embedded as a value in the middle of a paragraph or\n possibly
pass through a =gnuplot= code block and end up as a plot\n embedded in the
document.\n\n Through extending [[http://orgmode.org/][Org-mode]] with several
features for editing\n exporting and executing source code Babel turns
Org-mode into a tool\n for both /Literate Programming/ and /Reproducible
Research/.\n\n Babel augments
[[http://orgmode.org/manual/Literal-examples.html][Org-mode support for code
blocks]] by providing:\n\n - interactive and on-export execution of code
blocks;\n - code blocks as functions that can be parameterised, refer to\n
other code blocks, and be called remotely; and\n - export to files for
literate programming.\n\n* Overview\n Babel provides new features on a few
different fronts, and\n different people may want to start in different
places.\n\n - Using 'src' blocks in Org mode ::\n If you are not familiar
with creating 'src' blocks in an Org-mode\n buffer, and moving between that
buffer and the language major-mode\n edit buffer, then you should have a
look at the relevant section\n in the
[[http://orgmode.org/manual/Literal-examples.html][Org manual]] and
[[#source-code-blocks][below]], try it out, and come back.\n - Executing code
::\n The core of Babel is its ability to execute code in Org-mode\n 'src'
blocks, taking input from other blocks and tables, with\n output to further
blocks and tables. This is described starting\n
[[#source-code-execution][here]].\n - Literate Programming ::\n If you are
a programmer writing code that you would normally\n execute in some other
way (e.g. from the command line, or sourcing\n it into an interactive
session), then a simple introduction to\n Babel is to place your code in
blocks in an Org-mode file, and to\n use Babel's
[[#literate-programming][Literate Programming]] support to extract pure code\n
from your Org files.\n \n All of these use cases, as well as exhaustive
documentation of the\n features of Babel are covered in the
[[http://orgmode.org/manual/Working-With-Source-Code.html#Working-With-Source-Code][Working
with Source Code]]\n section of the Org manual.\n\n* Initial Configuration\n
:PROPERTIES:\n :CUSTOM_ID: getting-started\n :results: silent\n :END:\n\n
If you have a working Emacs installation, then getting started with\n Babel is
a simple process.\n\n 1) It is strongly recommended that you update to the
latest version\n of Org-mode by
[[file:../../org-faq.org::keeping-current-with-Org-mode-development][keeping
current with Org-mode development]]. As of\n Org-mode 7.0, Babel is
included as part of Org-mode.\n\n 2) Optionally activate the subset of
languages that you will want\n to execute with Babel. See
[[file:languages.org::#configure][Configure active languages]]\n
instructions. Emacs Lisp is activated by default so this step\n can be
skipped for now and all =emacs-lisp= examples will still\n work as
expected.\n\n 3) Evaluate your modified .emacs.\n\n* Code Blocks\n
:PROPERTIES:\n :CUSTOM_ID: source-code-blocks\n :END:\n\n** Code Blocks
in Org\n :PROPERTIES:\n :CUSTOM_ID: source-code-blocks-org\n :END:\n\n
Babel is all about [[http://orgmode.org/manual/Literal-examples.html][code
blocks]] in Org-mode. If you are\n unfamiliar with the notion of a code
block in Org-mode, where they\n are called 'src' blocks, please have a look
at the [[http://orgmode.org/manual/Literal-examples.html][Org-mode manual]]\n
before proceeding.\n\n Code blocks in
[[#reference-and-documentation][supported languages]] can occur anywhere in
an\n Org-mode file. Code blocks can be entered directly into\n the
Org-mode file, but it is often easier to enter code with the\n function
=org-edit-src-code=, which is called with the keyboard\n shortcut, C-c '.
This places the code block in a new\n buffer with the appropriate mode
activated.\n\n#+begin_src org\n ,#+begin_src language org-switches\n ,body\n
,#+end_src\n#+end_src\n\n For example, a code block of
[[http://www.ruby-lang.org/][ruby]] code looks like this in\n an Org-mode
file:\n\n#+begin_src org\n ,#+begin_src ruby\n ,require 'date'\n ,\"This
file was last evaluated on #{Date.today}\"\n ,#+end_src\n#+end_src\n\n** Code
Blocks in Babel\n :PROPERTIES:\n :CUSTOM_ID: source-code-blocks-babel\n
:END:\n\nBabel adds some new elements to code blocks. The basic\nstructure
becomes:\n\n#+begin_src org\n ,#+begin_src language org-switches
header-arguments\n ,body\n ,#+end_src\n#+end_src\n\n\n- language :: The
language of the code in the source-code block. Valid\n values must be
members of =org-babel-interpreters=.\n- header-arguments :: Header arguments
control many facets of the\n evaluation and output of source-code blocks.
See the [[file:reference.org::#header-arguments][Header\n Arguments]]
section for a complete review of available header\n arguments.\n- body ::
The source code to be evaluated. An important key-binding\n is =​C-c
'​=. This calls =org-edit-src-code=, a function that brings\n up an edit
buffer containing the code using the Emacs major mode\n appropriate to the
language. You can edit your code block\n as you regularly would in
Emacs.\n\n* Source Code Execution\n :PROPERTIES:\n :CUSTOM_ID:
source-code-execution\n :END:\n\nBabel executes code blocks for
*interpreted* languages such\nas shell, python, R, etc. by passing code to the
interpreter, which\nmust be installed on your system. You control what is done
with the\nresults of execution. \n\nHere are examples of code blocks in three
different languages,\nfollowed by their output. If you are viewing the Org-mode
version of\nthis document in Emacs, place point anywhere inside a block and
press\nC-c C-c to run the code[fn:1] (and feel free to alter it!).\n***
Ruby\nIn the Org-mode file:\n: #+begin_src ruby\n: \"This file was last
evaluated on #{Date.today}\"\n: #+end_src\n\nHTML export of code:\n#+begin_src
ruby\n\"This file was last evaluated on #{Date.today}\"\n#+end_src\n\nHTML
export of the resulting string:\n#+resname:\n: This file was last evaluated on
2009-08-09\n\n*** Shell\nIn the Org-mode file:\n: #+begin_src sh\n: echo
\"This file takes up `du -h org-babel.org |sed 's/\\([0-9k]*\\)[
]*org-babel.org/\\1/'`\"\n: #+end_src\n\nHTML export of code:\n#+begin_src sh\n
echo \"This file takes up `du -h org-babel.org |sed 's/\\([0-9k]*\\)[
]*org-babel.org/\\1/'`\"\n#+end_src\n\nHTML export of the resulting
string:\n#+resname:\n: This file takes up 36K\n\n***
[[http://www.r-project.org/][R]] \n What are the most common words in this
file?\nIn the Org-mode file:\n: #+begin_src R :colnames yes\n: words <-
tolower(scan(\"intro.org\", what=\"\", na.strings=c(\"|\",\":\")))\n:
t(sort(table(words[nchar(words) > 3]), decreasing=TRUE)[1:10])\n:
#+end_src\n\nHTML export of code:\n#+begin_src R :colnames yes\n words <-
tolower(scan(\"intro.org\", what=\"\", na.strings=c(\"|\",\":\")))\n
t(rev(sort(table(words[nchar(words) > 3])))[1:10])\n#+end_src\n#+results:\n|
code | source | org-mode | #+end_src | #+begin_src | this | block | that |
org-babel | with
|\n|------+--------+----------+-----------+-------------+------+-------+------+-----------+------|\n|
64 | 62 | 44 | 42 | 41 | 36 | 34 | 28 |
28 | 27 |\n\n*** [[http://ditaa.sourceforge.net/][ditaa]]\n\nIn the
Org-mode file:\n: #+begin_src ditaa :file blue.png :cmdline -r\n:
+---------+\n: | cBLU |\n: | |\n: | +----+\n: | |cPNK|\n: |
| |\n: +----+----+\n: #+end_src\n\nHTML export of code:\n#+begin_src ditaa
:file blue.png :cmdline -r\n+---------+\n| cBLU |\n| |\n|
+----+\n| |cPNK|\n| | |\n+----+----+\n#+end_src\n\nHTML export of the
resulting image:\n#+resname:\n[[file:../../images/babel/blue.png]]\n\n**
Capturing the Results of Code Evaluation\n :PROPERTIES:\n :CUSTOM_ID:
results\n :END:\n Babel provides two fundamentally different modes for
capturing\n the results of code evaluation: functional mode and scripting\n
mode. The choice of mode is specified by the =:results= header\n
argument.\n*** =:results value= (functional mode)\n :PROPERTIES:\n
:CUSTOM_ID: results-value\n :END:\n The 'result' of code evaluation is
the *value* of the last\n statement in the code block. In functional mode,
the\n code block is a function with a return value. The return\n value
of one code block can be used as input for another\n code block, even one
in a different language. In this\n way, Babel becomes a
[[meta-programming-language]]. If the block\n returns tabular data (a
vector, array or table of some sort) then\n this will be held as an
Org-mode table in the buffer. This\n setting is the default.\n \n
For example, consider the following block of python code and its\n
output.\n\n#+begin_src python :results value\nimport time\nprint(\"Hello,
today's date is %s\" % time.ctime())\nprint('Two plus two is')\nreturn 2 +
2\n#+end_src\n\n#+resname:\n: 4\n\nNotice that, in functional mode, the output
consists of the value of\nthe last statement and nothing else.\n\n*** =:results
output= (scripting mode)\n :PROPERTIES:\n :CUSTOM_ID: results-output\n
:END:\n\n In scripting mode, Babel captures the text output of the\n
code block and places it in the Org-mode buffer. It is\n called scripting
mode because the code block contains a series of\n commands, and the output
of each command is returned. Unlike\n functional mode, the code block
itself has no return value\n apart from the output of the commands it
contains.[fn:2]\n\n Consider the result of evaluating this code block
with\n scripting mode.\n\n#+srcname: name\n#+begin_src python :results
output\nimport time\nprint(\"Hello, today's date is %s\" %
time.ctime())\nprint('Two plus two is')\n2 + 2\n#+end_src\n\n#+resname: name\n:
Hello, today's date is Wed Nov 11 18:50:36 2009\n: Two plus two is\n\nHere,
scripting mode returned the text that python sent to =stdout=. Because\nthe
code block doesn't include a =print()= statement for the last\nvalue, =(2 +
2)=, 4 does not appear in the results.\n\n** Session-based Evaluation\n For
some languages, such as python, R, ruby and shell, it is\n possible to run an
interactive session as an \"inferior process\"\n within Emacs. This means
that an environment is created containing\n data objects that persist between
different source code\n blocks. Babel supports evaluation of code within such
sessions\n with the =:session= header argument. If the header argument is\n
given a value then that will be used as the name of the session.\n Thus, it
is possible to run separate simultaneous sessions in the\n same language.\n\n
Session-based evaluation is particularly useful for prototyping and\n
debugging. The function =org-babel-pop-to-session= can be used to\n switch
to the session buffer.\n\n Once a code block is finished, it is often best to
execute it\n outside of a session, so the state of the environment in which
it\n executes will be certain.\n\n With R, the session will be under the
control of [[http://ess.r-project.org/][Emacs Speaks\n Statistics]] as usual,
and the full power of ESS is thus still\n available, both in the R session,
and when switching to the R code\n edit buffer with =​C-c '​=.\n\n**
Arguments to Code Blocks\n :PROPERTIES:\n :CUSTOM_ID:
arguments-to-source-code-blocks\n :END:\n Babel supports parameterisation
of code blocks, i.e.,\n arguments can be passed to code blocks, which gives
them\n the status of *functions*. Arguments can be passed to code blocks in\n
both functional and scripting modes.\n\n*** Simple example of using a code
block as a function\n\n First let's look at a very simple example. The
following source\n code block defines a function, using python, that
squares its argument.\n\n#+srcname: square(x)\n#+begin_src python\nreturn
x*x\n#+end_src\n\nIn the Org-mode file, the function looks like this:\n:
#+source: square(x)\n: #+begin_src python\n: return x*x\n: #+end_src\n\n\nNow
we use the source block:\n\n: #+call: square(x=6)\n(/for information on the/
=call= /syntax see/ [[library-of-babel]])\n\n#+call: square(x=6)\n\n#+results:
square(x=6)\n: 36\n\n*** A more complex example using an Org-mode table as
input\n\n In this example we define a function called =fibonacci-seq=,
using\n Emacs Lisp. The function =fibonacci-seq= computes a Fibonacci\n
sequence. The function takes a single argument, in this case, a\n
reference to an Org-mode table.\n\n Here is the Org-mode table that is
passed to =fibonacci-seq=:\n\n#+tblname: fibonacci-inputs\n| 1 | 2 | 3 | 4 | 5
| 6 | 7 | 8 | 9 | 10 |\n| 2 | 4 | 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20
|\n\nThe table looks like this in the Org-mode buffer:\n: #+tblname:
fibonacci-inputs\n: | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |\n: | 2 | 4
| 6 | 8 | 10 | 12 | 14 | 16 | 18 | 20 |\n\nThe
[[http://www.gnu.org/software/emacs/manual/elisp.html][Emacs Lisp]] source
code:\n#+srcname: fibonacci-seq(fib-inputs=fibonacci-inputs)\n#+begin_src
emacs-lisp\n (defun fibonacci (n)\n (if (or (= n 0) (= n 1))\n n\n
(+ (fibonacci (- n 1)) (fibonacci (- n 2)))))\n \n (mapcar (lambda (row)\n
(mapcar #'fibonacci row)) fib-inputs)\n#+end_src\n\nIn the Org-mode
buffer the function looks like this:\n: #+srcname:
fibonacci-seq(fib-inputs=fibonacci-inputs)\n: #+begin_src emacs-lisp\n:
(defun fibonacci (n)\n: (if (or (= n 0) (= n 1))\n: n\n: (+
(fibonacci (- n 1)) (fibonacci (- n 2)))))\n: \n: (mapcar (lambda (row)\n:
(mapcar #'fibonacci row)) fib-inputs)\n: #+end_src\n\nThe return
value of =fibonacci-seq= is a table:\n#+resname:\n| 1 | 1 | 2 | 3 | 5 | 8 |
13 | 21 | 34 | 55 |\n| 1 | 3 | 8 | 21 | 55 | 144 | 377 | 987 | 2584 |
6765 |\n\n** In-line Code Blocks\n Code can be evaluated in-line using the
following syntax:\n\n: Without header args: src_lang{code} or with header args:
src_lang[args]{code},\n: for example src_python[:session]{10*x}, where x is a
variable existing in the \n: python session.\n\n** Code Block Body Expansion\n
Babel \"expands\" code blocks prior to evaluation, i.e., the\n evaluated
code comprises the code block contents augmented with\n code that assigns
referenced data to variables. It is possible to\n preview expanded
contents, and also to expand code during\n tangling. Expansion takes into
account header arguments and\n variables.\n\n- preview :: =C-c M-b p= is
bound to =org-babel-expand-src-block=. It\n can be used inside a code
block to preview the expanded\n contents. This facility is useful for
debugging.\n\n- tangling :: The expanded body can be tangled. Tangling this
way includes\n variable values that may be \n - the results
of other code blocks, \n - variables stored in headline
properties, or \n - tables. \n\n One possible use for
tangling expanded code block is for emacs\n initialization. Values such as
user names and passwords can be\n stored in headline properties or in
tables. The =:no-expand=\n header argument can be used to inhibit
expansion of a code block\n during tangling.\n\nHere is an example of a
code block and its resulting expanded body.\n\nThe data are kept in a
table:\n#+tblname: user-data\n| username | john-doe |\n| password | abc123
|\n\nThe code block refers to the data table:\n#+srcname:
setup-my-account\n#+begin_src emacs-lisp :rownames yes :var data=user-data\n
(setq my-special-username (first (first data)))\n (setq my-special-password
(first (second data)))\n#+end_src\n \nWith point inside the code block, =C-c
M-b p= expands the contents:\n#+begin_src emacs-lisp\n (let ((data (quote
((\"john-doe\") (\"abc123\")))))\n (setq my-special-username (first (first
data)))\n (setq my-special-password (first (second data)))\n
)\n#+end_src\n\n\n** A Meta-programming Language for Org-mode\n :PROPERTIES:\n
:CUSTOM_ID: meta-programming-language\n :END:\n\nBecause the return value of
a function written in one language can be\npassed to a function written in
another language, or to an Org-mode\ntable, which is itself programmable, Babel
can be used as a\nmeta-functional programming language. With Babel, functions
from\nmany languages can work together. You can mix and match
languages,\nusing each language for the tasks to which it is best
suited.\n\nFor example, let's take some system diagnostics in the shell and
graph them with R.\n\n1. Create a code block, using shell code, to list\n
directories in our home directory, together with their\n sizes. Babel
automatically converts the output into an Org-mode\n table.\n \n:
#+srcname: directories\n: #+begin_src sh :results replace\n: cd ~ && du -sc *
|grep -v total\n: #+end_src\n \n#+resname: directories\n| 72 |
\"Desktop\" |\n| 12156104 | \"Documents\" |\n| 3482440 | \"Downloads\" |\n|
2901720 | \"Library\" |\n| 57344 | \"Movies\" |\n| 16548024 | \"Music\"
|\n| 120 | \"News\" |\n| 7649472 | \"Pictures\" |\n| 0 |
\"Public\" |\n| 152224 | \"Sites\" |\n| 8 | \"System\" |\n|
56 | \"bin\" |\n| 3821872 | \"mail\" |\n| 10605392 | \"src\"
|\n| 1264 | \"tools\" |\n\n2. A function, written with a single
line of R code, plots the data\n in the Org-mode table as a\n pie-chart.
Note how this code block uses the =srcname=\n of the previous code block to
obtain the data.\n\nIn the Org-mode file: \n: #+srcname:
directory-pie-chart(dirs = directories)\n: #+begin_src R :session R-pie-example
:file ../../images/babel/dirs.png\n: pie(dirs[,1], labels = dirs[,2])\n:
#+end_src\n\nHTML export of code:\n#+srcname: directory-pie-chart(dirs =
directories)\n#+begin_src R :session R-pie-example :file
../../images/babel/dirs.png\n pie(dirs[,1], labels = dirs[,2])\n#+end_src\n
[[file:../../images/babel/dirs.png]]\n\n* Using Code Blocks in Org Tables\n
:PROPERTIES:\n :CUSTOM_ID: spreadsheet\n :END:\n\nIn addition to passing data
from tables as [[arguments-to-source-code-blocks][arguments]] to code\nblocks,
and [[#results-value][storing]] results as tables, Babel can be used in
a\nthird way with Org-mode tables. First note that Org-mode's
[[http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet][existing\nspreadsheet
functionality]] allows values in cells to be computed\nautomatically from the
values of other cells, using a =#+TBLFM=\nformula line. In this way, table
computations can be carried out
using\n[[http://orgmode.org/manual/Formula-syntax-for-Calc.html#Formula-syntax-for-Calc][calc]]
and
[[http://orgmode.org/manual/Formula-syntax-for-Lisp.html#Formula-syntax-for-Lisp][emacs
lisp]].\n\nWhat Babel adds is the ability to use code blocks (in
whatever\nlanguage) in the =#+TBLFM= line to perform the necessary
computation.\n\n*** Example 1: Data Summaries Using R\nAs a simple example,
we'll fill in a cell in an Org-mode table with the\naverage value of a few
numbers. First, let's make some data. The\nfollowing source block creates an
Org-mode table filled with five random\nnumbers between 0 and 1.\n\n:
#+srcname: tbl-example-data()\n: #+begin_src R \n: runif(n=5, min=0, max=1)\n:
#+end_src\n\n#+resname: tbl-example-data\n| 0.836685163900256 |\n|
0.696652316721156 |\n| 0.382423302158713 |\n| 0.987541858805344 |\n|
0.994794291909784 |\n\nNow we define a source block to calculate the
mean.\n\nIn the Org-mode file:\n: #+srcname: R-mean(x)\n: #+begin_src R \n:
mean(x)\n: #+end_src\n\nHTML export of code:\n#+srcname: R-mean(x)\n#+begin_src
R \nmean(x)\n#+end_src\n\nFinally, we create the table which is going to make
use of the R\ncode. This is done using the =sbe= ('source block evaluate')
macro in\nthe table formula line.\n\nIn the Org-mode file:\n: #+tblname:
summaries\n: | mean |\n: |-------------------|\n: |
0.779619386699051 |\n: #+TBLFM: @2$1='(sbe \"R-mean\" (x
\"tbl-example-data()\"))\n\nHTML export of code:\n#+tblname: summaries\n| mean
|\n|------|\n| 0.78 |\n#+TBLFM: @2$1='(sbe R-mean (x
tbl-example-data));%.2f\n\nTo recalculate the table formula, use C-u C-c C-c in
the\ntable. Notice that as things stand the calculated value doesn't\nchange,
because the data (held in the table above named\n=tbl-example-data=) are
static. However, if you delete that data table,\nthen the reference will be
interpreted as a reference to the source\nblock responsible for generating the
data; each time the table formula\nis recalculated the source block will be
evaluated again, and\ntherefore the calculated average value will
change.\n\n*** Example 2: Babel Test Suite\nWhile developing Babel, we used a
suite of tests implemented\nas a large Org-mode table. To run the entire test
suite we simply\nevaluate the table with C-u C-c C-c: all of the tests are
run,\nthe results are compared with expectations, and the table is
updated\nwith results and pass/fail statistics.\n\nHere's a sample of our test
suite.\n\nIn the Org-mode file:\n\n: #+TBLNAME: org-babel-tests\n: |
functionality | block | arg | expected | results | pass |\n:
|------------------+--------------+-----+-------------+-------------+------|\n:
| basic evaluation | | | | | pass |\n:
|------------------+--------------+-----+-------------+-------------+------|\n:
| emacs lisp | basic-elisp | 2 | 4 | 4 | pass |\n:
| shell | basic-shell | | 6 | 6 | pass |\n:
| ruby | basic-ruby | | org-babel | org-babel | pass |\n:
| python | basic-python | | hello world | hello world | pass |\n:
| R | basic-R | | 13 | 13 | pass |\n:
#+TBLFM: $5='(if (= (length $3) 1) (sbe $2 (n $3)) (sbe $2)) :: $6='(if
(string= $4 $5) \"pass\" (format \"expected %S but was %S\" $4 $5))\n\nHTML
export of code:\n\n#+TBLNAME: org-babel-tests\n| functionality | block
| arg | expected | results | pass
|\n|------------------+--------------+-----+-------------+-------------+------|\n|
basic evaluation | | | | | pass
|\n|------------------+--------------+-----+-------------+-------------+------|\n|
emacs lisp | basic-elisp | 2 | 4 | 4 | pass |\n|
shell | basic-shell | | 6 | 6 | pass |\n|
ruby | basic-ruby | | org-babel | org-babel | pass |\n|
python | basic-python | | hello world | hello world | pass |\n| R
| basic-R | | 13 | 13 | pass
|\n#+TBLFM: $5='(if (= (length $3) 1) (sbe $2 (n $3)) (sbe $2)) :: $6='(if
(string= $4 $5) \"pass\" (format \"expected %S but was %S\" $4 $5))\n\n****
code blocks for tests\n\nIn the Org-mode file:\n\n: #+srcname:
basic-elisp(n)\n: #+begin_src emacs-lisp\n: (* 2 n)\n: #+end_src\n\nHTML export
of code:\n\n#+srcname: basic-elisp(n)\n#+begin_src emacs-lisp\n (* 2
n)\n#+end_src\n\nIn the Org-mode file:\n: #+srcname: basic-shell\n: #+begin_src
sh :results silent\n: expr 1 + 5\n: #+end_src\n\nHTML export of
code:\n#+srcname: basic-shell\n#+begin_src sh :results silent\n expr 1 +
5\n#+end_src\n\nIn the Org-mode file:\n: #+srcname: date-simple\n: #+begin_src
sh :results silent\n: date\n: #+end_src\n\nHTML export of code:\n#+srcname:
date-simple\n#+begin_src sh :results silent\n date\n#+end_src\n\nIn the
Org-mode file:\n: #+srcname: basic-ruby\n: #+begin_src ruby :results silent\n:
\"org-babel\"\n: #+end_src\n\nHTML export of code:\n#+srcname:
basic-ruby\n#+begin_src ruby :results silent\n \"org-babel\"\n#+end_src\n\nIn
the Org-mode file\n: #+srcname: basic-python\n: #+begin_src python :results
silent\n: 'hello world'\n: #+end_src\n\nHTML export of code:\n#+srcname:
basic-python\n#+begin_src python :results silent\n 'hello
world'\n#+end_src\n\nIn the Org-mode file:\n: #+srcname: basic-R\n: #+begin_src
R :results silent\n: b <- 9\n: b + 4\n: #+end_src\n\nHTML export of
code:\n#+srcname: basic-R\n#+begin_src R :results silent\n b <- 9\n b +
4\n#+end_src\n\n* The Library of Babel\n :PROPERTIES:\n :CUSTOM_ID:
library-of-babel\n :END:\n\n (see also
[[http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel][Org
manual:Library-of-Babel]])\n\n As we saw above with the
[[*Simple%20example%20of%20using%20a%20source%20block%20as%20a%20function][=square=]]
example, once a source block\n function has been defined it can be called
using the =lob= notation:\n\n : #+lob: square(x=6)\n\n But what about code
blocks that you want to make available to\n every Org-mode buffer?\n\n In
addition to the current buffer, Babel searches for\n pre-defined code block
functions in the Library of\n Babel. This is a user-extensible collection of
ready-made source\n code blocks for handling common tasks. One use for the
Library of\n Babel (not yet done!) will be to provide a choice of data
graphing\n procedures for data held in Org-mode tables, using languages such
as\n R, gnuplot, asymptote, etc. If you implement something that might be\n
of use to other Org-mode users, please consider adding it to the\n Library of
Babel; similarly, feel free to request help solving a\n problem using external
code via Babel -- there's always a chance\n that other Babel users will be
able to contribute some helpful\n code.\n\n Babel comes pre-populated with
the code blocks located in\n the [[file:library-of-babel.org][Library of
Babel]] file -- raw file at\n#+html: <a
href=\"http://orgmode.org/w/org-mode.git/blob/HEAD:/contrib/babel/library-of-babel.org\">library-of-babel.org</a>\n
--. It is possible to add code blocks to the library from any\n Org-mode
file using the =org-babel-lob-ingest= (bound to =C-c C-v\n l=).\n\n
#+srcname: add-file-to-lob\n #+begin_src emacs-lisp \n (org-babel-lob-ingest
\"path/to/file.org\")\n #+end_src\n\n Note that it is possible to pass table
values or the output of a\n source-code block to Library of Babel functions.
It is also possible\n to reference Library of Babel functions in arguments to
code blocks.\n\n* Literate Programming\n :PROPERTIES:\n :CUSTOM_ID:
literate-programming\n :END:\n\n#+begin_quote\nLet us change our traditional
attitude to the construction of\nprograms: Instead of imagining that our main
task is to instruct a\n/computer/ what to do, let us concentrate rather on
explaining to\n/human beings/ what we want a computer to do.\n\nThe
practitioner of literate programming can be regarded as an\nessayist, whose
main concern is with exposition and excellence of\nstyle. Such an author, with
thesaurus in hand, chooses the names of\nvariables carefully and explains what
each variable means. He or she\nstrives for a program that is comprehensible
because its concepts have\nbeen introduced in an order that is best for human
understanding,\nusing a mixture of formal and informal methods that reinforce
each\nother.\n\n -- Donald Knuth\n#+end_quote\n\nBabel supports
[[http://en.wikipedia.org/wiki/Literate_programming][Literate Programming]]
(LP) by allowing the act of\nprogramming to take place inside of Org-mode
documents. The Org-mode\nfile can then be exported (*woven* in LP speak) to
HTML or LaTeX for\nconsumption by a human, and the embedded source code can be
extracted\n(*tangled* in LP speak) into structured source code files
for\nconsumption by a computer.\n\nTo support these operations Babel relies on
Org-mode's
[[http://orgmode.org/manual/Exporting.html#Exporting][existing\nexporting
functionality]] for *weaving* of documentation, and on the\n=org-babel-tangle=
function which makes use of [[http://www.cs.tufts.edu/~nr/noweb/][Noweb]]
[[noweb-reference-syntax][reference syntax]]\nfor *tangling* of code
files.\n\nThe [[literate-programming-example][following example]] demonstrates
the process of *tangling* in\nBabel.\n\n*** Simple Literate Programming Example
(Noweb syntax)\n :PROPERTIES:\n :CUSTOM_ID:
literate-programming-example\n :END:\n\nTangling functionality is controlled
by the =tangle= family of [[tangle-header-arguments][Tangle\nheader
arguments]]. These arguments can be used to turn tangling on or\noff (the
default), either for the code block or the Org-mode\nheading level.\n\nThe
following code blocks demonstrate how to tangle them into a\nsingle source code
file using =org-babel-tangle=.\n\nThe following two code blocks have no
=tangle= header arguments\nand so will not, by themselves, create source code
files. They are\nincluded in the source code file by the third code block,
which\ndoes have a =tangle= header argument.\n\nIn the Org-mode file:\n:
#+srcname: hello-world-prefix\n: #+begin_src sh :exports none\n: echo
\"/-----------------------------------------------------------\\\\\"\n:
#+end_src\n\nHTML export of code:\n#+srcname: hello-world-prefix\n#+begin_src
sh :exports none\n echo
\"/-----------------------------------------------------------\\\\\"\n#+end_src\n\nIn
the Org-mode file\n: #+srcname: hello-world-postfix\n: #+begin_src sh :exports
none\n: echo
\"\\-----------------------------------------------------------/\"\n:
#+end_src\n\nHTML export of code:\n#+srcname: hello-world-postfix\n#+begin_src
sh :exports none\n echo
\"\\-----------------------------------------------------------/\"\n#+end_src\n\n\nThe
third code block does have a =tangle= header argument\nindicating the name of
the file to which the tangled source code will\nbe written. It also has
[[http://www.cs.tufts.edu/~nr/noweb/][Noweb]] style references to the two
previous\ncode blocks. These references will be expanded during tangling\nto
include them in the output file as well.\n\nIn the Org-mode file:\n: #+srcname:
hello-world\n: #+begin_src sh :tangle hello :exports none :noweb yes\n:
<<hello-world-prefix>>\n: echo \"| hello world
|\"\n: <<hello-world-postfix>>\n: #+end_src\n\nHTML export of
code:\n#+srcname: hello-world\n#+begin_src sh :tangle hello.sh :exports none
:noweb yes\n <<hello-world-prefix>>\n echo \"| hello
world |\"\n
<<hello-world-postfix>>\n#+end_src\n\n\nCalling =org-babel-tangle= will result
in the following shell source\ncode being written to the =hello.sh=
file:\n\n#+srcname: hello-world-output\n#+begin_src sh \n#!/usr/bin/env sh\n\n#
[[file:~/org/temp/index.org::*Noweb%20test][hello-world]]\n\necho
\"/-----------------------------------------------------------\\\\\"\necho \"|
hello world |\"\necho
\"\\-----------------------------------------------------------/\"\n#
hello-world ends here\n#+end_src\n\nIn addition, the following syntax can be
used to insert the *results*\nof evaluating a code block, in this case one
named =example-block=.\n\n: # <<example-block()>>\n\nAny optional arguments can
be passed to =example-block()= by placing the\narguments inside the parentheses
following the convention defined when\ncalling source block functions (see the
[[library-of-babel][Library of babel]]). For example,\n\n: #
<<example-block(a=9)>>\n\nsets the value of argument \\\"a\\\" equal to
\\\"9\\\". Note that\nthese arguments are not evaluated in the current
source-code\nblock but are passed literally to =example-block()=.\n\n*** Emacs
Initialization with Babel\n :PROPERTIES:\n :CUSTOM_ID:
emacs-initialization\n :END:\n\n#+attr_html:
style=\"float:left;\"\n[[file:../../images/babel/dot-emacs.png]]\n\nBabel has
special support for embedding your Emacs initialization\ninto Org-mode files.
The =org-babel-load-file= function can be used\nto load the Emacs Lisp code
blocks embedded in a literate\nOrg-mode file in the same way that you might
load a regular Emacs Lisp\nfile, such as .emacs.\n\nThis allows you to make use
of the nice features of Org-mode, such as folding, tags,\nnotes, HTML export,
etc., to organize and maintain your Emacs initialization.\n\nTo try this out,
either see the simple [[literate-emacs-init][Literate Emacs
Initialization]]\nexample, or check out the Babel Literate Programming version
of\nPhil Hagelberg's excellent
[[http://github.com/technomancy/emacs-starter-kit/tree/master][emacs-starter-kit]]
available
at\n[[http://github.com/eschulte/emacs-starter-kit/tree/master][Org-babel-emacs-starter-kit]].\n\n*****
Literate Emacs Initialization\n :PROPERTIES:\n :CUSTOM_ID:
literate-emacs-init\n :END:\n\nFor a simple example of usage, follow these
5 steps:\n\n1) create a directory named =.emacs.d= in the base of your home\n
directory;\n #+begin_src sh \n mkdir ~/.emacs.d\n #+end_src\n2) checkout
the latest version of Org-mode into the src subdirectory\n of this new
directory;\n #+begin_src sh\n cd ~/.emacs.d\n mkdir src\n cd src\n
git clone git://orgmode.org/org-mode.git\n #+end_src\n3) place the following
code block in a file called =init.el= in your Emacs\n initialization
directory (=~/.emacs.d=).\n #+srcname: emacs-init\n #+begin_src emacs-lisp
\n ;;; init.el --- Where all the magic begins\n ;;\n ;; This file
loads Org-mode and then loads the rest of our Emacs initialization from Emacs
lisp\n ;; embedded in literate Org-mode files.\n \n ;; Load up Org
Mode and (now included) Org Babel for elisp embedded in Org Mode files\n
(setq dotfiles-dir (file-name-directory (or (buffer-file-name)
load-file-name)))\n \n (let* ((org-dir (expand-file-name\n
\"lisp\" (expand-file-name\n \"org\"
(expand-file-name\n \"src\"
dotfiles-dir))))\n (org-contrib-dir (expand-file-name\n
\"lisp\" (expand-file-name\n
\"contrib\" (expand-file-name\n
\"..\" org-dir))))\n (load-path (append (list org-dir
org-contrib-dir)\n (or load-path nil))))\n
;; load up Org-mode and Org-babel\n (require 'org-install)\n
(require 'ob-tangle))\n \n ;; load up all literate org-mode files in
this directory\n (mapc #'org-babel-load-file (directory-files dotfiles-dir
t \"\\\\.org$\"))\n \n ;;; init.el ends here\n #+end_src\n4)
implement all of your Emacs customizations inside of Emacs Lisp\n code blocks
embedded in Org-mode files in this directory;\n and\n5) re-start Emacs to
load the customizations.\n\n* Reproducible Research\n :PROPERTIES:\n
:CUSTOM_ID: reproducable-research\n :END:\n#+begin_quote \nAn article about
computational science in a scientific publication is\nnot the scholarship
itself, it is merely advertising of the\nscholarship. The actual scholarship is
the complete software\ndevelopment environment and the complete set of
instructions which\ngenerated the figures.\n\n-- D.
Donoho\n#+end_quote\n\n[[http://reproducibleresearch.net/index.php/Main_Page][Reproducible
Research]] (RR) is the practice of distributing, along with\na research
publication, all data, software source code, and tools\nrequired to reproduce
the results discussed in the publication. As\nsuch the RR package not only
describes the research and its results,\nbut becomes a complete laboratory in
which the research can be\nreproduced and extended.\n\nOrg-mode already has
exceptional support for
[[http://orgmode.org/manual/Exporting.html#Exporting][exporting to HTML
and\nLaTeX]]. Babel makes Org-mode a tool for RR by *activating* the\ndata and
code blocks embedded in Org-mode documents; the\nentire document becomes
executable. This makes it possible, and natural, to\ndistribute research in a
format that encourages readers to recreate\nresults and perform their own
analyses.\n\nOne notable existing RR tool is
[[http://en.wikipedia.org/wiki/Sweave][Sweave]], which provides a mechanism
for\nembedding [[http://www.r-project.org/][R]] code into LaTeX documents.
Sweave is a mature\nand very useful tool, but we believe that Babel has
several\nadvantages:\n - it supports multiple languages (we're not aware of
other RR tools that do this);\n - the
[[http://orgmode.org/manual/Exporting.html#Exporting][export process]] is
flexible and powerful, including HTML as a\n target in addition to LaTeX;
and\n - the document can make use of Org-mode features that support
[[http://orgmode.org/manual/Agenda-Views.html#Agenda-Views][project\n
planning]] and [[http://orgmode.org/manual/TODO-Items.html#TODO-Items][task
management]].\n\n* Footnotes\n[fn:1] Calling =C-c C-o= on a code block will
open the\nblock's results in a separate buffer.\n\n[fn:2] This mode will be
familiar to Sweave users.\n\n" 0 117 (fontified t face org-meta-line
font-lock-fontified t) 117 118 (fontified t font-lock-fontified t face
org-meta-line) 118 194 (fontified t face org-meta-line font-lock-fontified t)
194 195 (fontified t font-lock-fontified t face org-meta-line) 195 265
(fontified t face org-meta-line font-lock-fontified t) 265 266 (fontified t
font-lock-fontified t face org-meta-line) 266 326 (fontified t face
org-meta-line font-lock-fontified t) 326 327 (fontified t font-lock-fontified t
face org-meta-line) 327 335 (fontified t face org-document-info-keyword
font-lock-fontified t) 335 341 (fontified t face font-lock-comment-face) 341
360 (fontified t face org-document-title font-lock-fontified t) 360 361
(fontified t) 361 370 (fontified t face org-document-info-keyword
font-lock-fontified t) 370 375 (fontified t face font-lock-comment-face) 375
409 (fontified t face org-document-info font-lock-fontified t) 409 410
(fontified t) 410 418 (fontified t face org-document-info-keyword
font-lock-fontified t) 418 424 (fontified t face font-lock-comment-face) 424
514 (fontified t face org-document-info font-lock-fontified t) 514 515
(fontified t) 515 531 (fontified t face org-meta-line font-lock-fontified t)
531 532 (fontified t font-lock-fontified t face org-meta-line) 532 623
(fontified t face org-meta-line font-lock-fontified t) 623 624 (fontified t
font-lock-fontified t face org-meta-line) 624 706 (fontified t face
org-meta-line font-lock-fontified t) 706 707 (fontified t font-lock-fontified t
face org-meta-line) 707 728 (fontified t face org-meta-line font-lock-fontified
t) 728 729 (fontified t font-lock-fontified t face org-meta-line) 729 742
(fontified t face org-meta-line font-lock-fontified t) 742 764 (fontified t
org-no-flyspell t mouse-face highlight face org-meta-line keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) font-lock-fontified t) 764 765 (fontified t org-no-flyspell
t mouse-face highlight face org-meta-line keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) font-lock-fontified t) 765 766 (fontified t
font-lock-fontified t face org-meta-line) 766 767 (fontified t) 767 779
(fontified t font-lock-fontified t face org-block-begin-line
font-lock-multiline t) 779 780 (fontified t font-lock-fontified t
font-lock-multiline t face org-block-begin-line) 780 1019 (fontified t
font-lock-fontified t font-lock-multiline t face org-block) 1019 1191
(fontified nil font-lock-fontified t font-lock-multiline t face org-block) 1191
1249 (fontified nil font-lock-fontified t org-no-flyspell t mouse-face
highlight face org-block keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) font-lock-multiline t)
1249 1250 (fontified nil font-lock-fontified t org-no-flyspell t mouse-face
highlight face org-block keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) rear-nonsticky
(mouse-face highlight keymap invisible intangible help-echo org-linked-text)
font-lock-multiline t) 1250 1599 (fontified nil font-lock-fontified t
font-lock-multiline t face org-block) 1599 1600 (fontified nil
font-lock-fontified t font-lock-multiline t face org-block) 1600 1610
(fontified t font-lock-fontified t face org-block-end-line font-lock-multiline
t) 1610 1611 (fontified t face org-block-end-line) 1611 1614 (fontified t) 1614
1616 (fontified t face org-level-1) 1616 1647 (fontified t face org-level-1)
1647 1656 (fontified t face (org-tag org-level-1) org-no-flyspell t mouse-face
highlight keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))) 1656 1657 (fontified t
face (org-tag org-level-1) org-no-flyspell t mouse-face highlight keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text)) 1657 1658 (fontified t) 1658 1659
(fontified t face org-hide) 1659 1661 (fontified t face org-level-2) 1661 1665
(fontified t face org-done) 1665 1699 (fontified t face org-level-2) 1699 1700
(fontified t) 1700 1701 (fontified t face org-hide) 1701 1703 (fontified t face
org-level-2) 1703 1707 (fontified t face org-done) 1707 1740 (fontified t face
org-level-2) 1740 1804 (fontified t) 1804 1805 (fontified t face org-hide) 1805
1807 (fontified t face org-level-2) 1807 1811 (fontified t face org-done) 1811
1837 (fontified t face org-level-2) 1837 1904 (fontified t) 1904 1905
(fontified t face org-hide) 1905 1907 (fontified t face org-level-2) 1907 1911
(fontified t face org-done) 1911 1928 (fontified t face org-level-2) 1928 2124
(fontified t) 2124 6501 (fontified nil) 6501 6550 (fontified t) 6550 6552
(fontified t face org-level-1) 6552 6564 (fontified t face org-level-1) 6564
6565 (fontified t) 6565 6579 (fontified t face org-special-keyword) 6579 6582
(fontified t) 6582 6593 (fontified t face org-special-keyword) 6593 6594
(fontified t) 6594 6606 (fontified t face org-property-value) 6606 6607
(fontified t) 6607 6614 (fontified t face org-special-keyword) 6614 6641
(fontified t) 6641 6643 (fontified t org-no-flyspell t invisible org-link
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t
help-echo "LINK: file:languages.org" face org-link) 6643 6662 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
file:languages.org") 6662 6663 (fontified t org-no-flyspell t mouse-face
highlight face org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) invisible org-link
font-lock-multiline t help-echo "LINK: file:languages.org" rear-nonsticky
(mouse-face highlight keymap invisible intangible help-echo org-linked-text))
6663 6666 (fontified t org-no-flyspell t mouse-face highlight face org-link
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) font-lock-multiline t help-echo "LINK:
file:languages.org") 6666 6667 (fontified t org-no-flyspell t mouse-face
highlight face org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) rear-nonsticky
(mouse-face highlight keymap invisible intangible help-echo org-linked-text)
font-lock-multiline t help-echo "LINK: file:languages.org") 6667 6686
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK: file:languages.org" face
org-link) 6686 6687 (fontified t org-no-flyspell t keymap (keymap (follow-link
. mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK: file:languages.org"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 6687 6688 (fontified t org-no-flyspell t
invisible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: file:languages.org" face org-link) 6688
6689 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
file:languages.org" rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) face org-link) 6689 6770 (fontified t)
6770 6772 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/" face org-link) 6772 6792 (fontified t org-no-flyspell t
mouse-face highlight face org-link keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) invisible
org-link font-lock-multiline t help-echo "LINK: http://orgmode.org/") 6792 6793
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://orgmode.org/" rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text)) 6793 6800 (fontified t org-no-flyspell t
mouse-face highlight face org-link keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
font-lock-multiline t help-echo "LINK: http://orgmode.org/") 6800 6801
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) font-lock-multiline t help-echo "LINK:
http://orgmode.org/") 6801 6802 (fontified t org-no-flyspell t invisible
org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: http://orgmode.org/" face org-link) 6802
6803 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/" rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) face org-link) 6803 6904 (fontified t)
6904 6905 (fontified t org-no-flyspell t) 6905 6908 (fontified t face
(org-code) org-no-flyspell t font-lock-multiline t org-emphasis t) 6908 6909
(fontified t org-no-flyspell t) 6909 7019 (fontified t) 7019 7020 (fontified t
org-no-flyspell t) 7020 7029 (fontified t face (org-code) org-no-flyspell t
font-lock-multiline t org-emphasis t) 7029 7030 (fontified t org-no-flyspell t)
7030 7062 (fontified t) 7062 7650 (fontified nil) 7650 7651 (fontified t) 7651
7653 (fontified t face org-level-1) 7653 7661 (fontified t face org-level-1)
7661 7786 (fontified t) 7786 7819 (fontified t face (bold)) 7819 8041
(fontified t) 8041 8043 (fontified t org-no-flyspell t invisible org-link
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t
help-echo "LINK: http://orgmode.org/manual/Literal-examples.html" face
org-link) 8043 8091 (fontified t org-no-flyspell t mouse-face highlight face
org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) invisible org-link
font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 8091 8092 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text)) 8092 8094
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 8094 8095 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 8095 8101 (fontified t
org-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" face org-link) 8101 8102
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text) face org-link)
8102 8103 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" face org-link) 8103 8104
(fontified t org-no-flyspell t invisible org-link keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text) face org-link)
8104 8109 (fontified t) 8109 8131 (fontified t org-no-flyspell t invisible
org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: #source-code-blocks" face org-link) 8131
8132 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
#source-code-blocks" rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) face org-link) 8132 8136 (fontified t
org-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: #source-code-blocks" face org-link) 8136
8137 (fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK: #source-code-blocks"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 8137 8138 (fontified t org-no-flyspell t
invisible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: #source-code-blocks" face org-link) 8138
8139 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
#source-code-blocks" rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) face org-link) 8139 8168 (fontified t)
8168 9099 (fontified nil) 9099 9100 (fontified t) 9100 9102 (fontified t face
org-level-1) 9102 9123 (fontified t face org-level-1) 9123 9124 (fontified t)
9124 9138 (fontified t face org-special-keyword) 9138 9141 (fontified t) 9141
9152 (fontified t face org-special-keyword) 9152 9153 (fontified t) 9153 9168
(fontified t face org-property-value) 9168 9171 (fontified t) 9171 9180
(fontified t face org-special-keyword) 9180 9182 (fontified t) 9182 9188
(fontified t face org-property-value) 9188 9189 (fontified t) 9189 9196
(fontified t face org-special-keyword) 9196 9388 (fontified t) 9388 9390
(fontified t org-no-flyspell t invisible org-link keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
file:../../org-faq.org::keeping-current-with-Org-mode-development" face
org-link) 9390 9456 (fontified t org-no-flyspell t mouse-face highlight face
org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) invisible org-link
font-lock-multiline t help-echo "LINK:
file:../../org-faq.org::keeping-current-with-Org-mode-development") 9456 9457
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
file:../../org-faq.org::keeping-current-with-Org-mode-development"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text)) 9457 9463 (fontified t org-no-flyspell t mouse-face highlight
face org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) font-lock-multiline t
help-echo "LINK:
file:../../org-faq.org::keeping-current-with-Org-mode-development") 9463 9464
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) font-lock-multiline t help-echo "LINK:
file:../../org-faq.org::keeping-current-with-Org-mode-development") 9464 9497
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
file:../../org-faq.org::keeping-current-with-Org-mode-development" face
org-link) 9497 9498 (fontified t org-no-flyspell t keymap (keymap (follow-link
. mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
file:../../org-faq.org::keeping-current-with-Org-mode-development"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 9498 9499 (fontified t org-no-flyspell t
invisible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK:
file:../../org-faq.org::keeping-current-with-Org-mode-development" face
org-link) 9499 9500 (fontified t org-no-flyspell t invisible org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo
"LINK: file:../../org-faq.org::keeping-current-with-Org-mode-development"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 9500 9636 (fontified t) 9636 9929 (fontified
nil) 9929 9930 (fontified t) 9930 9932 (fontified t face org-level-1) 9932 9943
(fontified t face org-level-1) 9943 9944 (fontified t) 9944 9960 (fontified t
face org-special-keyword) 9960 9965 (fontified t) 9965 9976 (fontified t face
org-special-keyword) 9976 9977 (fontified t) 9977 9995 (fontified t face
org-property-value) 9995 9996 (fontified t) 9996 10005 (fontified t face
org-special-keyword) 10005 10007 (fontified t) 10007 10008 (fontified t face
org-hide) 10008 10010 (fontified t face org-level-2) 10010 10028 (fontified t
face org-level-2) 10028 10029 (fontified t) 10029 10045 (fontified t face
org-special-keyword) 10045 10050 (fontified t) 10050 10061 (fontified t face
org-special-keyword) 10061 10062 (fontified t) 10062 10084 (fontified t face
org-property-value) 10084 10085 (fontified t) 10085 10094 (fontified t face
org-special-keyword) 10094 10119 (fontified t) 10119 10121 (fontified t
org-no-flyspell t invisible org-link keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" face org-link) 10121 10169
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 10169 10170 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text)) 10170 10173
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 10173 10174 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 10174 10180 (fontified t
org-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" face org-link) 10180 10181
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text) face org-link)
10181 10182 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" face org-link) 10182 10183
(fontified t org-no-flyspell t invisible org-link keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text) face org-link)
10183 10334 (fontified t) 10334 10336 (fontified t org-no-flyspell t invisible
org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" face org-link) 10336 10384
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 10384 10385 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text)) 10385 10392
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 10392 10393 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html") 10393 10399 (fontified t
org-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" face org-link) 10399 10400
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text) face org-link)
10400 10401 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" face org-link) 10401 10402
(fontified t org-no-flyspell t invisible org-link keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text) face org-link)
10402 10446 (fontified t) 10446 10477 (fontified t org-no-flyspell t invisible
org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: #reference-and-documentation" face
org-link) 10477 10478 (fontified t org-no-flyspell t invisible org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo
"LINK: #reference-and-documentation" rear-nonsticky (mouse-face highlight
keymap invisible intangible help-echo org-linked-text) face org-link) 10478
10496 (fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK: #reference-and-documentation"
face org-link) 10496 10497 (fontified t org-no-flyspell t keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
#reference-and-documentation" rear-nonsticky (mouse-face highlight keymap
invisible intangible help-echo org-linked-text) face org-link) 10497 10498
(fontified t org-no-flyspell t invisible org-link keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
#reference-and-documentation" face org-link) 10498 10499 (fontified t
org-no-flyspell t invisible org-link keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK: #reference-and-documentation"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 10499 10525 (fontified t) 10525 12132
(fontified nil) 12132 12133 (fontified t) 12133 12135 (fontified t face
org-level-1) 12135 12156 (fontified t face org-level-1) 12156 12157 (fontified
t) 12157 12173 (fontified t face org-special-keyword) 12173 12178 (fontified t)
12178 12189 (fontified t face org-special-keyword) 12189 12190 (fontified t)
12190 12211 (fontified t face org-property-value) 12211 12212 (fontified t)
12212 12221 (fontified t face org-special-keyword) 12221 12254 (fontified t)
12254 12267 (fontified t face (bold) font-lock-multiline t org-emphasis t)
12267 12646 (fontified t) 12646 24553 (fontified nil) 24553 24554 (fontified t)
24554 24556 (fontified t face org-level-1) 24556 24587 (fontified t face
org-level-1) 24587 24588 (fontified t) 24588 24602 (fontified t face
org-special-keyword) 24602 24605 (fontified t) 24605 24616 (fontified t face
org-special-keyword) 24616 24617 (fontified t) 24617 24628 (fontified t face
org-property-value) 24628 24629 (fontified t) 24629 24636 (fontified t face
org-special-keyword) 24636 24681 (fontified t) 24681 24715 (fontified t
org-no-flyspell t invisible org-link keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
arguments-to-source-code-blocks" face org-link) 24715 24716 (fontified t
org-no-flyspell t invisible org-link keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
arguments-to-source-code-blocks" rear-nonsticky (mouse-face highlight keymap
invisible intangible help-echo org-linked-text) face org-link) 24716 24724
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
arguments-to-source-code-blocks" face org-link) 24724 24725 (fontified t
org-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: arguments-to-source-code-blocks"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 24725 24726 (fontified t org-no-flyspell t
invisible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: arguments-to-source-code-blocks" face
org-link) 24726 24727 (fontified t org-no-flyspell t invisible org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo
"LINK: arguments-to-source-code-blocks" rear-nonsticky (mouse-face highlight
keymap invisible intangible help-echo org-linked-text) face org-link) 24727
24748 (fontified t) 24748 24765 (fontified t org-no-flyspell t invisible
org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: #results-value" face org-link) 24765
24766 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
#results-value" rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) face org-link) 24766 24772 (fontified t
org-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK: #results-value" face org-link) 24772
24773 (fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK: #results-value" rear-nonsticky
(mouse-face highlight keymap invisible intangible help-echo org-linked-text)
face org-link) 24773 24774 (fontified t org-no-flyspell t invisible org-link
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t
help-echo "LINK: #results-value" face org-link) 24774 24775 (fontified t
org-no-flyspell t invisible org-link keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK: #results-value" rear-nonsticky
(mouse-face highlight keymap invisible intangible help-echo org-linked-text)
face org-link) 24775 24877 (fontified t) 24877 24879 (fontified t
org-no-flyspell t invisible org-link keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet" face org-link)
24879 24942 (fontified t org-no-flyspell t mouse-face highlight face org-link
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) invisible org-link font-lock-multiline t
help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet") 24942 24943
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet" rear-nonsticky
(mouse-face highlight keymap invisible intangible help-echo org-linked-text))
24943 24950 (fontified t org-no-flyspell t mouse-face highlight face org-link
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet") 24950 24951
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet") 24951 24976
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet" face org-link)
24976 24977 (fontified t org-no-flyspell t keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet" rear-nonsticky
(mouse-face highlight keymap invisible intangible help-echo org-linked-text)
face org-link) 24977 24978 (fontified t org-no-flyspell t invisible org-link
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t
help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet" face org-link)
24978 24979 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet" rear-nonsticky
(mouse-face highlight keymap invisible intangible help-echo org-linked-text)
face org-link) 24979 25071 (fontified t) 25071 25072 (fontified t
org-no-flyspell t) 25072 25081 (fontified t face (org-code) org-no-flyspell t
font-lock-multiline t org-emphasis t) 25081 25082 (fontified t) 25082 30552
(fontified nil) 30552 30553 (fontified t) 30553 30555 (fontified t face
org-level-1) 30555 30575 (fontified t face org-level-1) 30575 30576 (fontified
t) 30576 30590 (fontified t face org-special-keyword) 30590 30593 (fontified t)
30593 30604 (fontified t face org-special-keyword) 30604 30605 (fontified t)
30605 30621 (fontified t face org-property-value) 30621 30622 (fontified t)
30622 30629 (fontified t face org-special-keyword) 30629 30643 (fontified t)
30643 30645 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel" face
org-link) 30645 30710 (fontified t org-no-flyspell t mouse-face highlight face
org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) invisible org-link
font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel") 30710 30711
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text)) 30711 30713 (fontified t org-no-flyspell t mouse-face
highlight face org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) font-lock-multiline t
help-echo "LINK:
http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel") 30713 30714
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel") 30714 30737
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel" face
org-link) 30737 30738 (fontified t org-no-flyspell t keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 30738 30739 (fontified t org-no-flyspell t
invisible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK:
http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel" face
org-link) 30739 30740 (fontified t org-no-flyspell t invisible org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo
"LINK: http://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 30740 30770 (fontified t) 30770 30844
(fontified t org-no-flyspell t invisible org-link keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
*Simple%20example%20of%20using%20a%20source%20block%20as%20a%20function" face
org-link) 30844 30845 (fontified t org-no-flyspell t invisible org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo
"LINK: *Simple%20example%20of%20using%20a%20source%20block%20as%20a%20function"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 30845 30852 (fontified t org-no-flyspell t
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t
help-echo "LINK:
*Simple%20example%20of%20using%20a%20source%20block%20as%20a%20function" face
org-link) 30852 30853 (fontified t org-no-flyspell t keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
*Simple%20example%20of%20using%20a%20source%20block%20as%20a%20function"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 30853 30854 (fontified t org-no-flyspell t
invisible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK:
*Simple%20example%20of%20using%20a%20source%20block%20as%20a%20function" face
org-link) 30854 30855 (fontified t org-no-flyspell t invisible org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo
"LINK: *Simple%20example%20of%20using%20a%20source%20block%20as%20a%20function"
rear-nonsticky (mouse-face highlight keymap invisible intangible help-echo
org-linked-text) face org-link) 30855 30939 (fontified t) 30939 30940
(fontified t org-no-flyspell t) 30940 30945 (fontified t face (org-code)
org-no-flyspell t font-lock-multiline t org-emphasis t) 30945 30946 (fontified
t org-no-flyspell t) 30946 30957 (fontified t) 30957 30959 (fontified t
org-no-flyspell t) 30959 30980 (fontified t org-no-flyspell t face org-code)
30980 31070 (fontified t) 31070 32520 (fontified nil) 32520 32521 (fontified t)
32521 32523 (fontified t face org-level-1) 32523 32543 (fontified t face
org-level-1) 32543 32544 (fontified t) 32544 32558 (fontified t face
org-special-keyword) 32558 32561 (fontified t) 32561 32572 (fontified t face
org-special-keyword) 32572 32573 (fontified t) 32573 32593 (fontified t face
org-property-value) 32593 32594 (fontified t) 32594 32601 (fontified t face
org-special-keyword) 32601 32603 (fontified t) 32603 32616 (fontified t face
org-block-begin-line font-lock-fontified t font-lock-multiline t) 32616 32617
(fontified t font-lock-fontified t font-lock-multiline t face
org-block-begin-line) 32617 32746 (fontified t font-lock-fontified t
font-lock-multiline t) 32746 32756 (fontified t face (italic)
font-lock-multiline t org-emphasis t font-lock-fontified t) 32756 32812
(fontified t font-lock-fontified t font-lock-multiline t) 32812 32826
(fontified t face (italic) font-lock-multiline t org-emphasis t
font-lock-fontified t) 32826 33056 (fontified t font-lock-fontified t
font-lock-multiline t) 33056 33353 (fontified nil font-lock-fontified t
font-lock-multiline t) 33353 33354 (fontified nil font-lock-fontified t
font-lock-multiline t face org-meta-line) 33354 33365 (fontified nil
font-lock-fontified t font-lock-multiline t face org-block-end-line) 33365
33366 (fontified nil face org-block-end-line) 33366 40638 (fontified nil) 40638
40639 (fontified t) 40639 40641 (fontified t face org-level-1) 40641 40662
(fontified t face org-level-1) 40662 40663 (fontified t) 40663 40677 (fontified
t face org-special-keyword) 40677 40680 (fontified t) 40680 40691 (fontified t
face org-special-keyword) 40691 40692 (fontified t) 40692 40713 (fontified t
face org-property-value) 40713 40714 (fontified t) 40714 40721 (fontified t
face org-special-keyword) 40721 40722 (fontified t) 40722 40736 (fontified t
face org-block-begin-line font-lock-fontified t font-lock-multiline t) 40736
40737 (fontified t font-lock-fontified t font-lock-multiline t face
org-block-begin-line) 40737 41031 (fontified t font-lock-fontified t
font-lock-multiline t) 41031 41032 (fontified t font-lock-fontified t
font-lock-multiline t face org-meta-line) 41032 41043 (fontified t face
org-block-end-line font-lock-fontified t font-lock-multiline t) 41043 41044
(fontified t face org-block-end-line) 41044 41045 (fontified t) 41045 41047
(fontified t org-no-flyspell t invisible org-link keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page" face org-link) 41047 41099
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page") 41099 41100 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text)) 41100 41111
(fontified t org-no-flyspell t mouse-face highlight face org-link keymap
(keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2
. org-open-at-mouse)) font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page") 41111 41112 (fontified t
org-no-flyspell t mouse-face highlight face org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible
intangible help-echo org-linked-text) font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page") 41112 41120 (fontified t
org-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight
font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page" face org-link) 41120 41121
(fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face)
(mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face
highlight font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text) face org-link)
41121 41122 (fontified t org-no-flyspell t invisible org-link keymap (keymap
(follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 .
org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page" face org-link) 41122 41123
(fontified t org-no-flyspell t invisible org-link keymap (keymap (follow-link .
mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse))
mouse-face highlight font-lock-multiline t help-echo "LINK:
http://reproducibleresearch.net/index.php/Main_Page" rear-nonsticky (mouse-face
highlight keymap invisible intangible help-echo org-linked-text) face org-link)
41123 41173 (fontified t) 41173 42636 (fontified nil) 42636 42637 (fontified t)
42637 42639 (fontified t face org-level-1) 42639 42648 (fontified t face
org-level-1) 42648 42649 (fontified t) 42649 42655 (fontified t org-no-flyspell
t mouse-face highlight keymap (keymap (follow-link . mouse-face) (mouse-3 .
org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) help-echo "Footnote
definition" font-lock-fontified t font-lock-multiline t face org-footnote)
42655 42663 (fontified t) 42663 42664 (fontified t org-no-flyspell t) 42664
42673 (fontified t face (org-code) org-no-flyspell t font-lock-multiline t
org-emphasis t) 42673 42674 (fontified t org-no-flyspell t) 42674 42743
(fontified t) 42743 42749 (fontified t org-no-flyspell t mouse-face highlight
keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse)
(mouse-2 . org-open-at-mouse)) help-echo "Footnote definition"
font-lock-fontified t font-lock-multiline t face org-footnote) 42749 42796
(fontified t)) :emph-multiline t :for-backend html :skip-before-1st-heading nil
:drawers (HIDE) :todo-keywords t :tasks t :tags not-in-toc :priority nil
:footnotes t :timestamps nil :archived-trees nil :select-tags ("export")
:exclude-tags ("noexport") :add-text nil :LaTeX-fragments nil)
(org-split-string (org-export-preprocess-string region :emph-multiline t
:for-backend (quote html) :skip-before-1st-heading (plist-get opt-plist
:skip-before-1st-heading) :drawers (plist-get opt-plist :drawers)
:todo-keywords (plist-get opt-plist :todo-keywords) :tasks (plist-get opt-plist
:tasks) :tags (plist-get opt-plist :tags) :priority (plist-get opt-plist
:priority) :footnotes (plist-get opt-plist :footnotes) :timestamps (plist-get
opt-plist :timestamps) :archived-trees (plist-get opt-plist :archived-trees)
:select-tags (plist-get opt-plist :select-tags) :exclude-tags (plist-get
opt-plist :exclude-tags) :add-text (plist-get opt-plist :text) :LaTeX-fragments
(plist-get opt-plist :LaTeX-fragments)) "[
\n]")
(let* ((opt-plist (org-export-process-option-filters (org-combine-plists
(org-default-export-plist) ext-plist (org-infile-export-plist)))) (body-only
(or body-only (plist-get opt-plist :body-only))) (style (concat (if (plist-get
opt-plist :style-include-default) org-export-html-style-default) (plist-get
opt-plist :style) (plist-get opt-plist :style-extra) "\n" (if (plist-get
opt-plist :style-include-scripts) org-export-html-scripts))) (html-extension
(plist-get opt-plist :html-extension)) valid thetoc have-headings
first-heading-pos (odd org-odd-levels-only) (region-p (org-region-active-p))
(rbeg (and region-p (region-beginning))) (rend (and region-p (region-end)))
(subtree-p (if (plist-get opt-plist :ignore-subtree-p) nil (when region-p
(save-excursion (goto-char rbeg) (and (org-at-heading-p) (>= ... rend))))))
(level-offset (if subtree-p (save-excursion (goto-char rbeg) (+ (funcall
outline-level) (if org-odd-levels-only 1 0))) 0)) (opt-plist (setq
org-export-opt-plist (if subtree-p (org-export-add-subtree-options opt-plist
rbeg) opt-plist))) (org-current-export-dir (or pub-dir (org-export-directory
:html opt-plist))) (org-current-export-file buffer-file-name) (level 0) (line
"") (origline "") txt todo (umax nil) (umax-toc nil) (filename (if to-buffer
nil (expand-file-name (concat (file-name-sans-extension (or ... ...)) "."
html-extension) (file-name-as-directory (or pub-dir (org-export-directory :html
opt-plist)))))) (current-dir (if buffer-file-name (file-name-directory
buffer-file-name) default-directory)) (buffer (if to-buffer (cond ((eq
to-buffer (quote string)) (get-buffer-create "*Org HTML Export*")) (t
(get-buffer-create to-buffer))) (find-file-noselect filename)))
(org-levels-open (make-vector org-level-max nil)) (date (plist-get opt-plist
:date)) (author (plist-get opt-plist :author)) (html-validation-link (or
org-export-html-validation-link "")) (title (org-html-expand (or (and subtree-p
(org-export-get-title-from-subtree)) (plist-get opt-plist :title) (and (not
body-only) (not (plist-get opt-plist :skip-before-1st-heading))
(org-export-grab-title-from-buffer)) (and buffer-file-name
(file-name-sans-extension (file-name-nondirectory buffer-file-name)))
"UNTITLED"))) (link-up (and (plist-get opt-plist :link-up) (string-match "\\S-"
(plist-get opt-plist :link-up)) (plist-get opt-plist :link-up))) (link-home
(and (plist-get opt-plist :link-home) (string-match "\\S-" (plist-get opt-plist
:link-home)) (plist-get opt-plist :link-home))) (dummy (setq opt-plist
(plist-put opt-plist :title title))) (html-table-tag (plist-get opt-plist
:html-table-tag)) (quote-re0 (concat "^[ ]*" org-quote-string "\\>"))
(quote-re (concat "^\\(\\*+\\)\\([ ]+" org-quote-string "\\>\\)"))
(inquote nil) (infixed nil) (inverse nil) (email (plist-get opt-plist :email))
(language (plist-get opt-plist :language)) (keywords (plist-get opt-plist
:keywords)) (description (plist-get opt-plist :description)) (num (plist-get
opt-plist :section-numbers)) (lang-words nil) (head-count 0) cnt (start 0) ...)
(let ((inhibit-read-only t)) (org-unmodified (remove-text-properties
(point-min) (point-max) (quote (:org-license-to-kill t))))) (message
"Exporting...") (setq org-min-level (org-get-min-level lines level-offset))
(setq org-last-level org-min-level) (org-init-section-numbers) (cond ((and date
(string-match "%" date)) (setq date (format-time-string date))) (date) (t (setq
date (format-time-string "%Y-%m-%d %T %Z")))) (setq lang-words (or (assoc
language org-export-language-setup) (assoc "en" org-export-language-setup)))
(set-buffer buffer) (let ((inhibit-read-only t)) (erase-buffer))
(fundamental-mode) (org-install-letbind) (and (fboundp (quote
set-buffer-file-coding-system)) (set-buffer-file-coding-system
coding-system-for-write)) (let ((case-fold-search nil) (org-odd-levels-only
odd)) (mapc (lambda (x) (set (make-local-variable (nth 2 x)) (plist-get
opt-plist (car x)))) org-export-plist-vars) (setq umax (if arg
(prefix-numeric-value arg) org-export-headline-levels)) (setq umax-toc (if
(integerp org-export-with-toc) (min org-export-with-toc umax) umax)) (unless
body-only (insert (format "%s\n<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0
Strict//EN\"\n
\"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd\">\n<html
xmlns=\"http://www.w3.org/1999/xhtml\"\nlang=\"%s\"
xml:lang=\"%s\">\n<head>\n<title>%s</title>\n<meta http-equiv=\"Content-Type\"
content=\"text/html;charset=%s\"/>\n<meta name=\"generator\"
content=\"Org-mode\"/>\n<meta name=\"generated\" content=\"%s\"/>\n<meta
name=\"author\" content=\"%s\"/>\n<meta name=\"description\"
content=\"%s\"/>\n<meta name=\"keywords\"
content=\"%s\"/>\n%s\n%s\n</head>\n<body>\n%s\n" (format (or (and ...
org-export-html-xml-declaration) (cdr ...) (cdr ...) "") (or charset
"iso-8859-1")) language language title (or charset "iso-8859-1") date author
description keywords style mathjax (if (or link-up link-home) (concat (format
org-export-html-home/up-format ... ...) "\n") ""))) (when (plist-get opt-plist
:html-preamble) (let ((html-pre (plist-get opt-plist :html-preamble))) (insert
"<div id=\"" (nth 0 org-export-html-divs) "\">\n") (cond ((stringp html-pre)
(insert ...)) ((functionp html-pre) (funcall html-pre)) (t (insert ...)))
(insert "\n</div>\n"))) (insert (format "\n<div id=\"%s\">" (or
org-export-html-content-div (nth 1 org-export-html-divs))) "\n<h1
class=\"title\">" title "</h1>\n")) (if (and org-export-with-toc (not
body-only)) (progn (push (format "<h%d>%s</h%d>\n"
org-export-html-toplevel-hlevel (nth 3 lang-words)
org-export-html-toplevel-hlevel) thetoc) (push "<div
id=\"text-table-of-contents\">\n" thetoc) (push "<ul>\n<li>" thetoc) (setq
lines (mapcar (function (lambda ... ... line)) lines)) (while (> org-last-level
(1- org-min-level)) (setq org-last-level (1- org-last-level)) (push
"</li>\n</ul>\n" thetoc)) (push "</div>\n" thetoc) (setq thetoc (if
have-headings (nreverse thetoc) nil)))) (setq head-count 0)
(org-init-section-numbers) (org-open-par) (while (setq line (pop lines)
origline line) (catch (quote nextline) (when (and inquote (string-match
org-outline-regexp-bol line)) (insert "</pre>\n") (org-open-par) (setq inquote
nil)) (when inquote (insert (org-html-protect line) "\n") (throw (quote
nextline) nil)) (when (and org-export-with-fixed-width (string-match "^[
]*:\\(\\([ ]\\|$\\)\\(.*\\)\\)" line)) (when (not infixed) (setq infixed
t) (org-close-par-maybe) (insert "<pre class=\"example\">\n")) (insert
(org-html-protect (match-string 3 line)) "\n") (when (or (not lines) (not ...))
(setq infixed nil) (insert "</pre>\n") (org-open-par)) (throw (quote nextline)
nil)) (when (and (get-text-property 0 (quote org-protected) line) (not (< ...
...))) (let (par (ind ...)) (when (re-search-backward "\\(<p>\\)\\([
\n]*\\)\\=" ... t) (setq par ...) (replace-match "\\2\n")) (insert line "\n")
(while (and lines ... ...) (insert ... "\n")) (and par (insert "<p>\n")))
(throw (quote nextline) nil)) (when (equal "ORG-BLOCKQUOTE-START" line)
(org-close-par-maybe) (insert "<blockquote>\n") (org-open-par) (throw (quote
nextline) nil)) (when (equal "ORG-BLOCKQUOTE-END" line) (org-close-par-maybe)
(insert "\n</blockquote>\n") (org-open-par) (throw (quote nextline) nil)) (when
(equal "ORG-VERSE-START" line) (org-close-par-maybe) (insert "\n<p
class=\"verse\">\n") (setq org-par-open t) (setq inverse t) (throw (quote
nextline) nil)) (when (equal "ORG-VERSE-END" line) (insert "</p>\n") (setq
org-par-open nil) (org-open-par) (setq inverse nil) (throw (quote nextline)
nil)) (when (equal "ORG-CENTER-START" line) (org-close-par-maybe) (insert
"\n<div style=\"text-align: center\">") (org-open-par) (throw (quote nextline)
nil)) (when (equal "ORG-CENTER-END" line) (org-close-par-maybe) (insert
"\n</div>") (org-open-par) (throw (quote nextline) nil)) (run-hooks (quote
org-export-html-after-blockquotes-hook)) (when inverse (let ((i ...)) (if (> i
0) (setq line ...)) (unless (string-match "\\\\\\\\[ ]*$" line) (setq line
...)))) (setq start 0) (while (string-match
"<<<?\\([^<>]*\\)>>>?\\((INVISIBLE)\\)?[ ]*\n?" line start) (cond
((get-text-property ... ... line) (setq start ...)) ((match-end 2) (setq line
...)) ((and org-export-with-toc ...) (setq line ...)) (t (setq line ...))))
(setq line (org-html-handle-time-stamps line)) (or (string-match
org-table-hline-regexp line) (string-match "^[ ]*\\([+]-\\||[ ]\\)[-+
|]*[+|][ ]*$" line) (setq line (org-html-expand line))) (setq line
(org-html-handle-links line opt-plist)) (if (and (string-match
org-todo-line-regexp line) (match-beginning 2)) (setq line (concat (substring
line 0 ...) "<span class=\"" (if ... "done" "todo") " " (match-string 2 line)
"\"> " (org-export-html-get-todo-kwd-class-name ...) "</span>" (substring line
...)))) (when org-export-with-footnotes (setq start 0) (while (string-match
"\\([^* ].*?\\)\\[\\([0-9]+\\)\\]" line start) (if (or ... ...) (setq
start ...) (let ... ... ...)))) (cond ((string-match "^\\(\\*+\\)[
]+\\(.*\\)" line) (setq level (org-tr-level ...) txt (match-string 2 line)) (if
(string-match quote-re0 txt) (setq txt ...)) (if (<= level ...) (setq
head-count ...)) (setq first-heading-pos (or first-heading-pos ...))
(org-html-level-start level txt umax (and org-export-with-toc ...) head-count
opt-plist) (when (string-match quote-re line) (org-close-par-maybe) (insert
"<pre>") (setq inquote t))) ((and org-export-with-tables (string-match "^\\([
]*\\)\\(|\\|\\+-+\\+\\)" line)) (when (not table-open) (setq table-open t
table-buffer nil table-orig-buffer nil)) (setq table-buffer (cons line
table-buffer) table-orig-buffer (cons origline table-orig-buffer)) (when (or
... ...) (setq table-open nil table-buffer ... table-orig-buffer ...)
(org-close-par-maybe) (insert ...))) (t (when (get-text-property 0 ... line)
(setq line ...)) (when (string-match "^[ ]*-\\{5,\\}[ ]*$" line) (if
org-par-open ... ...) (throw ... nil)) (if (string-match "^ [-+*]-\\|^[ ]*$"
line) (org-open-par)) (when org-export-with-footnotes (when ... ...) (when ...
... ...)) (cond (... ...) (org-export-preserve-breaks ...)) (let (...) (while
... ... ...)) (insert line "\n"))))) (when inquote (insert "</pre>\n")
(org-open-par)) (org-html-level-start 1 nil umax (and org-export-with-toc (<=
level umax)) head-count opt-plist) (when (and (> umax 0) first-heading-pos)
(insert "</div>\n")) (save-excursion (goto-char (point-min)) (while
(re-search-forward "\\(\\(<p
class=\"footnote\">\\)[^ ]*?\\)\\(\\(\\2\\)\\|\\'\\)" nil t) (push
(match-string 1) footnotes) (replace-match "\\4" t nil) (goto-char
(match-beginning 0)))) (when footnotes (insert (format
org-export-html-footnotes-section (nth 4 lang-words) (mapconcat (quote
identity) (nreverse footnotes) "\n")) "\n")) (let ((bib
(org-export-html-get-bibliography))) (when bib (insert "\n" bib "\n"))) (unless
body-only (insert "</div>\n") (let ((html-post (plist-get opt-plist
:html-postamble)) (email (mapconcat (lambda ... ...) (split-string email ",+
*") ", ")) (creator-info (concat "Org version " org-version " with Emacs
version " (number-to-string emacs-major-version)))) (when (plist-get opt-plist
:html-postamble) (insert "\n<div id=\"" (nth 2 org-export-html-divs) "\">\n")
(cond ((stringp html-post) (insert ...)) ((functionp html-post) (funcall
html-post)) ((eq html-post ...) (when ... ...) (when ... ...) (when ... ...)
(when ... ...) (insert html-validation-link "\n")) (t (insert ...))) (insert
"\n</div>")))) (if org-export-html-with-timestamp (insert
org-export-html-html-helper-timestamp)) (unless body-only (insert
"\n</body>\n</html>\n")) (unless (plist-get opt-plist :buffer-will-be-killed)
(normal-mode) (if (eq major-mode (default-value (quote major-mode)))
(html-mode))) (goto-char (point-min)) (when thetoc (if (or (re-search-forward
"<p>\\s-*\\[TABLE-OF-CONTENTS\\]\\s-*</p>" nil t) (re-search-forward
"\\[TABLE-OF-CONTENTS\\]" nil t)) (progn (goto-char (match-beginning 0))
(replace-match "")) (goto-char first-heading-pos) (when (looking-at
"\\s-*</p>") (goto-char (match-end 0)) (insert "\n"))) (insert "<div
id=\"table-of-contents\">\n") (let ((beg (point))) (mapc (quote insert) thetoc)
(insert "</div>\n") (while (re-search-backward "<li>[
\n ]*</li>\n?" beg t) (replace-match "")))) (goto-char (point-min)) (while
(re-search-forward "<p>[
\n ]*</p>" nil t) (replace-match "")) (goto-char (point-min)) (goto-char
(point-min)) (let (beg end n) (while (setq beg (next-single-property-change
(point) (quote org-whitespace))) (setq n (get-text-property beg (quote
org-whitespace)) end (next-single-property-change beg (quote org-whitespace)))
(goto-char beg) (delete-region beg end) (insert (format "<span
style=\"visibility:hidden;\">%s</span>" (make-string n 120))))) (goto-char
(point-min)) (when (looking-at "\\s-+\n") (replace-match ""))
(remove-text-properties (point-min) (point-max) (quote (display t))) (run-hooks
(quote org-export-html-final-hook)) (or to-buffer (save-buffer)) (goto-char
(point-min)) (or (org-export-push-to-kill-ring "HTML") (message "Exporting...
done")) (if (eq to-buffer (quote string)) (prog1 (buffer-substring (point-min)
(point-max)) (kill-buffer (current-buffer))) (current-buffer))))
org-export-as-html(nil nil (:buffer-will-be-killed t :base-directory
"~/src/emacs/org/Worg/" :base-extension "org" :exclude
"FIXME\\|revtex-sample.org" :makeindex t :auto-sitemap t :sitemap-ignore-case t
:html-extension "html" :publishing-directory "/var/www/orgmode.org/worg/"
:publishing-function (org-publish-org-to-html org-publish-org-to-org)
:htmlized-source t :section-numbers nil :table-of-contents nil :style "<link
rel=\"stylesheet\" title=\"Standard\" href=\"/worg/style/worg.css\"
type=\"text/css\" />\n<link rel=\"alternate stylesheet\" title=\"Zenburn\"
href=\"/worg/style/worg-zenburn.css\" type=\"text/css\" />\n<link
rel=\"alternate stylesheet\" title=\"Classic\"
href=\"/worg/style/worg-classic.css\" type=\"text/css\" />\n<link
rel=\"stylesheet\" href=\"http://orgmode.org/css/lightbox.css\"
type=\"text/css\" media=\"screen\" />\n<link rel=\"SHORTCUT ICON\"
href=\"/org-mode-unicorn.ico\" type=\"image/x-icon\"></link>\n<link
rel=\"icon\" href=\"/org-mode-unicorn.ico\" type=\"image/ico\"></link>"
:recursive t :auto-preamble t :postamble "<div id=\"license\"><p>Documentation
from the http://orgmode.org/worg/ website (either in its HTML format or in its
Org format) is licensed under the <a
href=\"http://www.gnu.org/copyleft/fdl.html\">GNU Free Documentation License
version 1.3</a> or later. The code examples are licensed under the <a
href=\"http://www.gnu.org/licenses/gpl.html\">GNU General Public License v3</a>
or later.</p></div>" :auto-postamble nil) nil nil
"/var/www/orgmode.org/worg/org-contrib/babel/")
funcall(org-export-as-html nil nil (:buffer-will-be-killed t :base-directory
"~/src/emacs/org/Worg/" :base-extension "org" :exclude
"FIXME\\|revtex-sample.org" :makeindex t :auto-sitemap t :sitemap-ignore-case t
:html-extension "html" :publishing-directory "/var/www/orgmode.org/worg/"
:publishing-function (org-publish-org-to-html org-publish-org-to-org)
:htmlized-source t :section-numbers nil :table-of-contents nil :style "<link
rel=\"stylesheet\" title=\"Standard\" href=\"/worg/style/worg.css\"
type=\"text/css\" />\n<link rel=\"alternate stylesheet\" title=\"Zenburn\"
href=\"/worg/style/worg-zenburn.css\" type=\"text/css\" />\n<link
rel=\"alternate stylesheet\" title=\"Classic\"
href=\"/worg/style/worg-classic.css\" type=\"text/css\" />\n<link
rel=\"stylesheet\" href=\"http://orgmode.org/css/lightbox.css\"
type=\"text/css\" media=\"screen\" />\n<link rel=\"SHORTCUT ICON\"
href=\"/org-mode-unicorn.ico\" type=\"image/x-icon\"></link>\n<link
rel=\"icon\" href=\"/org-mode-unicorn.ico\" type=\"image/ico\"></link>"
:recursive t :auto-preamble t :postamble "<div id=\"license\"><p>Documentation
from the http://orgmode.org/worg/ website (either in its HTML format or in its
Org format) is licensed under the <a
href=\"http://www.gnu.org/copyleft/fdl.html\">GNU Free Documentation License
version 1.3</a> or later. The code examples are licensed under the <a
href=\"http://www.gnu.org/licenses/gpl.html\">GNU General Public License v3</a>
or later.</p></div>" :auto-postamble nil) nil nil
"/var/www/orgmode.org/worg/org-contrib/babel/")
(setq export-buf-or-file (funcall (intern (concat "org-export-as-" format))
(plist-get plist :headline-levels) nil plist nil (plist-get plist :body-only)
pub-dir))
(let* ((plist (cons :buffer-will-be-killed (cons t plist))) (init-buf
(current-buffer)) (init-point (point)) (init-buf-string (buffer-string))
export-buf-or-file) (run-hooks (quote org-publish-before-export-hook)) (setq
export-buf-or-file (funcall (intern (concat "org-export-as-" format))
(plist-get plist :headline-levels) nil plist nil (plist-get plist :body-only)
pub-dir)) (when (and (bufferp export-buf-or-file) (buffer-live-p
export-buf-or-file)) (set-buffer export-buf-or-file) (progn (run-hooks (quote
org-publish-after-export-hook)) (if (buffer-modified-p) (save-buffer)))
(kill-buffer export-buf-or-file)) (set-buffer init-buf) (when
(buffer-modified-p init-buf) (erase-buffer) (insert init-buf-string)
(save-buffer) (goto-char init-point)) (unless visiting (kill-buffer init-buf)))
(save-excursion (org-pop-to-buffer-same-window (or visiting (find-file
filename))) (let* ((plist (cons :buffer-will-be-killed (cons t plist)))
(init-buf (current-buffer)) (init-point (point)) (init-buf-string
(buffer-string)) export-buf-or-file) (run-hooks (quote
org-publish-before-export-hook)) (setq export-buf-or-file (funcall (intern
(concat "org-export-as-" format)) (plist-get plist :headline-levels) nil plist
nil (plist-get plist :body-only) pub-dir)) (when (and (bufferp
export-buf-or-file) (buffer-live-p export-buf-or-file)) (set-buffer
export-buf-or-file) (progn (run-hooks (quote org-publish-after-export-hook))
(if (buffer-modified-p) (save-buffer))) (kill-buffer export-buf-or-file))
(set-buffer init-buf) (when (buffer-modified-p init-buf) (erase-buffer) (insert
init-buf-string) (save-buffer) (goto-char init-point)) (unless visiting
(kill-buffer init-buf))))
(let ((visiting (find-buffer-visiting filename))) (save-excursion
(org-pop-to-buffer-same-window (or visiting (find-file filename))) (let*
((plist (cons :buffer-will-be-killed (cons t plist))) (init-buf
(current-buffer)) (init-point (point)) (init-buf-string (buffer-string))
export-buf-or-file) (run-hooks (quote org-publish-before-export-hook)) (setq
export-buf-or-file (funcall (intern (concat "org-export-as-" format))
(plist-get plist :headline-levels) nil plist nil (plist-get plist :body-only)
pub-dir)) (when (and (bufferp export-buf-or-file) (buffer-live-p
export-buf-or-file)) (set-buffer export-buf-or-file) (progn (run-hooks (quote
org-publish-after-export-hook)) (if (buffer-modified-p) (save-buffer)))
(kill-buffer export-buf-or-file)) (set-buffer init-buf) (when
(buffer-modified-p init-buf) (erase-buffer) (insert init-buf-string)
(save-buffer) (goto-char init-point)) (unless visiting (kill-buffer
init-buf)))))
org-publish-org-to("html" (:base-directory "~/src/emacs/org/Worg/"
:base-extension "org" :exclude "FIXME\\|revtex-sample.org" :makeindex t
:auto-sitemap t :sitemap-ignore-case t :html-extension "html"
:publishing-directory "/var/www/orgmode.org/worg/" :publishing-function
(org-publish-org-to-html org-publish-org-to-org) :htmlized-source t
:section-numbers nil :table-of-contents nil :style "<link rel=\"stylesheet\"
title=\"Standard\" href=\"/worg/style/worg.css\" type=\"text/css\" />\n<link
rel=\"alternate stylesheet\" title=\"Zenburn\"
href=\"/worg/style/worg-zenburn.css\" type=\"text/css\" />\n<link
rel=\"alternate stylesheet\" title=\"Classic\"
href=\"/worg/style/worg-classic.css\" type=\"text/css\" />\n<link
rel=\"stylesheet\" href=\"http://orgmode.org/css/lightbox.css\"
type=\"text/css\" media=\"screen\" />\n<link rel=\"SHORTCUT ICON\"
href=\"/org-mode-unicorn.ico\" type=\"image/x-icon\"></link>\n<link
rel=\"icon\" href=\"/org-mode-unicorn.ico\" type=\"image/ico\"></link>"
:recursive t :auto-preamble t :postamble "<div id=\"license\"><p>Documentation
from the http://orgmode.org/worg/ website (either in its HTML format or in its
Org format) is licensed under the <a
href=\"http://www.gnu.org/copyleft/fdl.html\">GNU Free Documentation License
version 1.3</a> or later. The code examples are licensed under the <a
href=\"http://www.gnu.org/licenses/gpl.html\">GNU General Public License v3</a>
or later.</p></div>" :auto-postamble nil)
"/home/nick/src/emacs/org/Worg/org-contrib/babel/intro.org"
"/var/www/orgmode.org/worg/org-contrib/babel/")
(let ((org-export-preprocess-after-headline-targets-hook (if (plist-get
project-plist :makeindex) (cons (quote org-publish-aux-preprocess)
org-export-preprocess-after-headline-targets-hook)
org-export-preprocess-after-headline-targets-hook))) (org-publish-org-to "html"
plist filename pub-dir))
(org-publish-with-aux-preprocess-maybe (org-publish-org-to "html" plist
filename pub-dir))
org-publish-org-to-html((:base-directory "~/src/emacs/org/Worg/"
:base-extension "org" :exclude "FIXME\\|revtex-sample.org" :makeindex t
:auto-sitemap t :sitemap-ignore-case t :html-extension "html"
:publishing-directory "/var/www/orgmode.org/worg/" :publishing-function
(org-publish-org-to-html org-publish-org-to-org) :htmlized-source t
:section-numbers nil :table-of-contents nil :style "<link rel=\"stylesheet\"
title=\"Standard\" href=\"/worg/style/worg.css\" type=\"text/css\" />\n<link
rel=\"alternate stylesheet\" title=\"Zenburn\"
href=\"/worg/style/worg-zenburn.css\" type=\"text/css\" />\n<link
rel=\"alternate stylesheet\" title=\"Classic\"
href=\"/worg/style/worg-classic.css\" type=\"text/css\" />\n<link
rel=\"stylesheet\" href=\"http://orgmode.org/css/lightbox.css\"
type=\"text/css\" media=\"screen\" />\n<link rel=\"SHORTCUT ICON\"
href=\"/org-mode-unicorn.ico\" type=\"image/x-icon\"></link>\n<link
rel=\"icon\" href=\"/org-mode-unicorn.ico\" type=\"image/ico\"></link>"
:recursive t :auto-preamble t :postamble "<div id=\"license\"><p>Documentation
from the http://orgmode.org/worg/ website (either in its HTML format or in its
Org format) is licensed under the <a
href=\"http://www.gnu.org/copyleft/fdl.html\">GNU Free Documentation License
version 1.3</a> or later. The code examples are licensed under the <a
href=\"http://www.gnu.org/licenses/gpl.html\">GNU General Public License v3</a>
or later.</p></div>" :auto-postamble nil)
"/home/nick/src/emacs/org/Worg/org-contrib/babel/intro.org"
"/var/www/orgmode.org/worg/org-contrib/babel/")
funcall(org-publish-org-to-html (:base-directory "~/src/emacs/org/Worg/"
:base-extension "org" :exclude "FIXME\\|revtex-sample.org" :makeindex t
:auto-sitemap t :sitemap-ignore-case t :html-extension "html"
:publishing-directory "/var/www/orgmode.org/worg/" :publishing-function
(org-publish-org-to-html org-publish-org-to-org) :htmlized-source t
:section-numbers nil :table-of-contents nil :style "<link rel=\"stylesheet\"
title=\"Standard\" href=\"/worg/style/worg.css\" type=\"text/css\" />\n<link
rel=\"alternate stylesheet\" title=\"Zenburn\"
href=\"/worg/style/worg-zenburn.css\" type=\"text/css\" />\n<link
rel=\"alternate stylesheet\" title=\"Classic\"
href=\"/worg/style/worg-classic.css\" type=\"text/css\" />\n<link
rel=\"stylesheet\" href=\"http://orgmode.org/css/lightbox.css\"
type=\"text/css\" media=\"screen\" />\n<link rel=\"SHORTCUT ICON\"
href=\"/org-mode-unicorn.ico\" type=\"image/x-icon\"></link>\n<link
rel=\"icon\" href=\"/org-mode-unicorn.ico\" type=\"image/ico\"></link>"
:recursive t :auto-preamble t :postamble "<div id=\"license\"><p>Documentation
from the http://orgmode.org/worg/ website (either in its HTML format or in its
Org format) is licensed under the <a
href=\"http://www.gnu.org/copyleft/fdl.html\">GNU Free Documentation License
version 1.3</a> or later. The code examples are licensed under the <a
href=\"http://www.gnu.org/licenses/gpl.html\">GNU General Public License v3</a>
or later.</p></div>" :auto-postamble nil)
"/home/nick/src/emacs/org/Worg/org-contrib/babel/intro.org"
"/var/www/orgmode.org/worg/org-contrib/babel/")
(progn (funcall f project-plist filename tmp-pub-dir)
(org-publish-update-timestamp filename pub-dir f))
(if (org-publish-needed-p filename pub-dir f tmp-pub-dir) (progn (funcall f
project-plist filename tmp-pub-dir) (org-publish-update-timestamp filename
pub-dir f)))
(when (org-publish-needed-p filename pub-dir f tmp-pub-dir) (funcall f
project-plist filename tmp-pub-dir) (org-publish-update-timestamp filename
pub-dir f))
(lambda (f) (when (org-publish-needed-p filename pub-dir f tmp-pub-dir)
(funcall f project-plist filename tmp-pub-dir) (org-publish-update-timestamp
filename pub-dir f)))(org-publish-org-to-html)
mapc((lambda (f) (when (org-publish-needed-p filename pub-dir f tmp-pub-dir)
(funcall f project-plist filename tmp-pub-dir) (org-publish-update-timestamp
filename pub-dir f))) (org-publish-org-to-html org-publish-org-to-org))
(if (listp publishing-function) (mapc (lambda (f) (when (org-publish-needed-p
filename pub-dir f tmp-pub-dir) (funcall f project-plist filename tmp-pub-dir)
(org-publish-update-timestamp filename pub-dir f))) publishing-function) (when
(org-publish-needed-p filename pub-dir publishing-function tmp-pub-dir)
(funcall publishing-function project-plist filename tmp-pub-dir)
(org-publish-update-timestamp filename pub-dir publishing-function)))
(let* ((project (or project (or (org-publish-get-project-from-filename
filename) (error "File %s not part of any known project" (abbreviate-file-name
filename))))) (project-plist (cdr project)) (ftname (expand-file-name
filename)) (publishing-function (or (plist-get project-plist
:publishing-function) (quote org-publish-org-to-html))) (base-dir
(file-name-as-directory (expand-file-name (or (plist-get project-plist
:base-directory) (error "Project %s does not have :base-directory defined" (car
project)))))) (pub-dir (file-name-as-directory (file-truename (or (plist-get
project-plist :publishing-directory) (error "Project %s does not have
:publishing-directory defined" (car project)))))) tmp-pub-dir) (unless no-cache
(org-publish-initialize-cache (car project))) (setq tmp-pub-dir
(file-name-directory (concat pub-dir (and (string-match (regexp-quote base-dir)
ftname) (substring ftname (match-end 0)))))) (if (listp publishing-function)
(mapc (lambda (f) (when (org-publish-needed-p filename pub-dir f tmp-pub-dir)
(funcall f project-plist filename tmp-pub-dir) (org-publish-update-timestamp
filename pub-dir f))) publishing-function) (when (org-publish-needed-p filename
pub-dir publishing-function tmp-pub-dir) (funcall publishing-function
project-plist filename tmp-pub-dir) (org-publish-update-timestamp filename
pub-dir publishing-function))) (unless no-cache (org-publish-write-cache-file)))
org-publish-file("/home/nick/src/emacs/org/Worg/org-contrib/babel/intro.org")
(let ((org-publish-use-timestamps-flag (if force nil
org-publish-use-timestamps-flag))) (org-publish-file (buffer-file-name)))
(progn (let ((org-publish-use-timestamps-flag (if force nil
org-publish-use-timestamps-flag))) (org-publish-file (buffer-file-name))))
(unwind-protect (progn (let ((org-publish-use-timestamps-flag (if force nil
org-publish-use-timestamps-flag))) (org-publish-file (buffer-file-name))))
(set-window-configuration wconfig))
(let ((wconfig (current-window-configuration))) (unwind-protect (progn (let
((org-publish-use-timestamps-flag (if force nil
org-publish-use-timestamps-flag))) (org-publish-file (buffer-file-name))))
(set-window-configuration wconfig)))
(save-window-excursion (let ((org-publish-use-timestamps-flag (if force nil
org-publish-use-timestamps-flag))) (org-publish-file (buffer-file-name))))
org-publish-current-file(nil)
eval((org-publish-current-file nil))
repeat-complex-command(1)
call-interactively(repeat-complex-command nil nil)