From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nick Dokos Subject: Re: What's the license for worg.css? Date: Mon, 15 Aug 2011 02:22:57 -0400 Message-ID: <8264.1313389377@alphaville.dokosmarshall.org> References: <87r54o9d7a.fsf@altern.org> Reply-To: nicholas.dokos@hp.com Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Return-path: Received: from eggs.gnu.org ([140.186.70.92]:47248) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QsqZu-0001hg-OL for emacs-orgmode@gnu.org; Mon, 15 Aug 2011 02:23:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QsqZi-0000Su-Vp for emacs-orgmode@gnu.org; Mon, 15 Aug 2011 02:23:14 -0400 Received: from g6t0187.atlanta.hp.com ([15.193.32.64]:20794) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QsqZi-0000Sp-AV for emacs-orgmode@gnu.org; Mon, 15 Aug 2011 02:23:02 -0400 In-Reply-To: Message from Aankhen of "Mon\, 15 Aug 2011 10\:56\:11 +0530." List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Aankhen Cc: Bastien , Jeff Dik , Org mailing list , nicholas.dokos@hp.com --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Aankhen wrote: > Hi folks, >=20 > On Mon, Aug 15, 2011 at 05:05, suvayu ali w= rote: > > On Sun, Aug 14, 2011 at 6:16 PM, Bastien 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. >=20 > Just wanted to confirm that I see this too. The culprit is line 909 > of worg.css, which sets the =E2=80=98line-height=E2=80=99 to 30%. Removi= ng that line > fixes the overlap without any apparent problems. >=20 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 --=-=-= Content-Type: text/plain Content-Disposition: inline; filename=worg-publish-babel-intro-bt.txt Content-Transfer-Encoding: quoted-printable Content-Description: backtrace obtained on attempting to publish org-contrib/bable/intro.org Debugger entered--Lisp error: (wrong-type-argument consp nil) setcdr(nil "nil=3Dx") (setf (cddr (nth variable-index vars)) (concat (symbol-name (car (nth var= iable-index vars))) "=3D" (cdr pair))) (prog1 (setf (cddr (nth variable-index vars)) (concat (symbol-name (car (= nth variable-index vars))) "=3D" (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 na= me pair)))) (prog1 (setf (cddr (nth variable-index vars)) (concat (symbol-n= ame (car (nth variable-index vars))) "=3D" (cdr pair))) (incf variable-inde= x))) (let ((name (if (listp (cdr pair)) (cadr pair) (and (string-match "^\\([^= =3D \f \n=0D=0B]+\\)[ ]*=3D" (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 pa= ir)))) (prog1 (setf (cddr (nth variable-index vars)) (concat (symbol-name (= car (nth variable-index vars))) "=3D" (cdr pair))) (incf variable-index)))) (cond ((eql (car pair) (quote :var)) (let ((name (if (listp (cdr pair)) (= cadr pair) (and (string-match "^\\([^=3D \f \n=0D=0B]+\\)[ ]*=3D" ...) (in= tern ...))))) (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 ...) "=3D" (cdr pair))) (incf variable-index)))= )) ((eql (car pair) (quote :results)) (setq results (e-merge results-exclus= ive-groups results (split-string (let ((r ...)) (if (stringp r) r (eval r))= ))))) ((eql (car pair) (quote :file)) (when (cdr pair) (setq results (e-mer= ge results-exclusive-groups results (quote ("file")))) (unless (or (member = "both" exports) (member "none" exports) (member "code" exports)) (setq expo= rts (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 nowe= b (e-merge (quote (("yes" "no" "tangle"))) noweb (split-string (or (cdr pai= r) ""))))) ((eql (car pair) (quote :cache)) (setq cache (e-merge (quote (("= yes" "no"))) cache (split-string (or (cdr pair) ""))))) ((eql (car pair) (q= uote :padline)) (setq padline (e-merge (quote (("yes" "no"))) padline (spli= t-string (or (cdr pair) ""))))) ((eql (car pair) (quote :shebang)) (setq sh= ebang (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) pa= rams))))) (case (car pair) (:var (let ((name (if (listp (cdr pair)) (cadr pair) (an= d (string-match "^\\([^=3D \f \n=0D=0B]+\\)[ ]*=3D" ...) (intern ...))))) = (if name (setq vars (append (if (member name ...) (delq nil ...) vars) (lis= t (cons name pair)))) (prog1 (setf (cddr (nth variable-index vars)) (concat= (symbol-name ...) "=3D" (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 res= ults (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))))) (:expo= rts (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"))) c= ache (split-string (or (cdr pair) ""))))) (:padline (setq padline (e-merge = (quote (("yes" "no"))) padline (split-string (or (cdr pair) ""))))) (:sheba= ng (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 p= air) (and ... ...)))) (if name (setq vars (append (if ... ... vars) (list .= ..))) (prog1 (setf (cddr ...) (concat ... "=3D" ...)) (incf variable-index)= )))) (:results (setq results (e-merge results-exclusive-groups results (spl= it-string (let (...) (if ... r ...)))))) (:file (when (cdr pair) (setq resu= lts (e-merge results-exclusive-groups results (quote ("file")))) (unless (o= r (member "both" exports) (member "none" exports) (member "code" exports)) = (setq exports (e-merge exports-exclusive-groups exports (quote ...)))) (set= q 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 no= web (e-merge (quote (("yes" "no" "tangle"))) noweb (split-string (or (cdr p= air) ""))))) (:cache (setq cache (e-merge (quote (("yes" "no"))) cache (spl= it-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 (s= etq params (cons pair (assq-delete-all (car pair) params))))))((:var . "x")) mapc((lambda (pair) (case (car pair) (:var (let ((name (if (listp ...) (c= adr pair) (and ... ...)))) (if name (setq vars (append (if ... ... vars) (l= ist ...))) (prog1 (setf (cddr ...) (concat ... "=3D" ...)) (incf variable-i= ndex))))) (: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")))) (unle= ss (or (member "both" exports) (member "none" exports) (member "code" expor= ts)) (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 (se= tq 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 (quo= te (("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 ...)) (u= nless (or ... ... ...) (setq exports ...)) (setq params (cons pair ...)))) = (:exports (setq exports (e-merge exports-exclusive-groups exports (split-st= ring ...)))) (:tangle (setq tangle (or (list ...) tangle))) (:noweb (setq n= oweb (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 ...) comme= nts (split-string ...)))) (t (setq params (cons pair (assq-delete-all ... p= arams)))))) plist))(((:var . "x"))) mapc((lambda (plist) (mapc (lambda (pair) (case (car pair) (:var (let ((n= ame ...)) (if name (setq vars ...) (prog1 ... ...)))) (:results (setq resul= ts (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 (spl= it-string ...)))) (:tangle (setq tangle (or (list ...) tangle))) (:noweb (s= etq noweb (e-merge (quote ...) noweb (split-string ...)))) (:cache (setq ca= che (e-merge (quote ...) cache (split-string ...)))) (:padline (setq padlin= e (e-merge (quote ...) padline (split-string ...)))) (:shebang (setq sheban= g (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") (:s= ession . "none")))) (progn (fset (quote e-merge) (function* (lambda (exclusive-groups &rest r= esult-params) (block e-merge (let (output) (mapc (lambda ... ...) result-pa= rams) output))))) (mapc (lambda (plist) (mapc (lambda (pair) (case (car pai= r) (: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 para= ms ...)))) plist)) plists)) (unwind-protect (progn (fset (quote e-merge) (function* (lambda (exclusiv= e-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-- (a= nd --cl-letf-bound-- (symbol-function (quote e-merge))))) (unwind-protect (= progn (fset (quote e-merge) (function* (lambda (exclusive-groups &rest resu= lt-params) (block e-merge (let ... ... output))))) (mapc (lambda (plist) (m= apc (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-g= roups &rest result-params) (block e-merge (let (output) (mapc ... result-pa= rams) output)))))) (mapc (lambda (plist) (mapc (lambda (pair) (case (car pa= ir) (:var (let ... ...)) (:results (setq results ...)) (:file (when ... ...= ... ...)) (:exports (setq exports ...)) (:tangle (setq tangle ...)) (:nowe= b (setq noweb ...)) (:cache (setq cache ...)) (:padline (setq padline ...))= (:shebang (setq shebang ...)) (:comments (setq comments ...)) (t (setq par= ams ...)))) plist)) plists)) (letf* (((symbol-function (quote e-merge)) (function* (lambda (exclusive-= groups &rest result-params) (block e-merge (let (output) (mapc ... result-p= arams) output)))))) (mapc (lambda (plist) (mapc (lambda (pair) (case (car p= air) (:var (let ... ...)) (:results (setq results ...)) (:file (when ... ..= . ... ...)) (:exports (setq exports ...)) (:tangle (setq tangle ...)) (:now= eb (setq noweb ...)) (:cache (setq cache ...)) (:padline (setq padline ...)= ) (:shebang (setq shebang ...)) (:comments (setq comments ...)) (t (setq pa= rams ...)))) plist)) plists)) (flet ((e-merge (exclusive-groups &rest result-params) (let (output) (map= c (lambda (new-params) (mapc (lambda ... ... ...) new-params)) result-param= s) output))) (mapc (lambda (plist) (mapc (lambda (pair) (case (car pair) (:= var (let ... ...)) (:results (setq results ...)) (:file (when ... ... ... .= ..)) (:exports (setq exports ...)) (:tangle (setq tangle ...)) (:noweb (set= q noweb ...)) (:cache (setq cache ...)) (:padline (setq padline ...)) (:she= bang (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-gro= ups (quote (("code" "results" "both" "none")))) (variable-index 0) params r= esults exports tangle noweb cache vars shebang comments padline) (flet ((e-= merge (exclusive-groups &rest result-params) (let (output) (mapc (lambda (n= ew-params) (mapc ... new-params)) result-params) output))) (mapc (lambda (p= list) (mapc (lambda (pair) (case (car pair) (:var ...) (:results ...) (:fil= e ...) (:exports ...) (:tangle ...) (:noweb ...) (:cache ...) (:padline ...= ) (:shebang ...) (:comments ...) (t ...))) plist)) plists)) (setq vars (rev= erse vars)) (while vars (setq params (cons (cons :var (cddr (pop vars))) pa= rams))) (mapc (lambda (hd) (let ((key (intern (concat ":" ...))) (val (eval= hd))) (setf params (cons (cons key (mapconcat ... val " ")) params)))) (qu= ote (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") (:se= ssion . "none"))) (setcar (nthcdr 2 info) (org-babel-merge-params (mapcar (lambda (ref) (co= ns :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 :v= ar 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 (m= apcar (lambda (ref) (cons :var ref)) (org-babel-ref-split-args (match-strin= g 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))) (wh= en (match-string 6) (setf (nth 2 info) (org-babel-merge-params (mapcar (lam= bda (ref) (cons :var ref)) (org-babel-ref-split-args (match-string 6))) (nt= h 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)) (or= g-babel-ref-split-args (match-string 6))) (nth 2 info))))) (save-excursion (goto-char head) (setq info (org-babel-parse-src-block-ma= tch)) (setq indent (car (last info))) (setq info (butlast info)) (while (an= d (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-a= rguments (match-string 1))))) (when (looking-at org-babel-src-name-w-name-r= egexp) (setq name (org-babel-clean-text-properties (match-string 4))) (when= (match-string 6) (setf (nth 2 info) (org-babel-merge-params (mapcar (lambd= a (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) (lo= oking-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-r= ef-split-args ...)) (nth 2 info)))))) (when (save-excursion (re-search-back= ward "[ \f \n=0D=0B]" 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-bab= el-where-is-src-block-head)) (save-excursion (goto-char head) (setq info (o= rg-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-properti= es (match-string 4))) (when (match-string 6) (setf (nth 2 info) (org-babel-= merge-params (mapcar ... ...) (nth 2 info)))))) (when (save-excursion (re-s= earch-backward "[ \f \n=0D=0B]" nil t) (looking-at org-babel-inline-src-blo= ck-regexp)) (setq info (org-babel-parse-inline-src-block-match)))) (when (a= nd info (not light)) (setf (nth 2 info) (org-babel-process-params (nth 2 in= fo)))) (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 i= nfo)) (raw-params (nth 2 info)) hash) (when info (when (member (cdr (assoc = :exports (nth 2 info))) (quote ("both" "results"))) (org-babel-exp-in-expor= t-file lang (setf (nth 2 info) (org-babel-process-params (org-babel-merge-p= arams org-babel-default-header-args (org-babel-params-from-buffer) (org-bab= el-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=3D "yes" (cdr (assoc :noweb ...)))) (org-babel-expa= nd-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-g= et-src-block-info (quote light))) (lang (nth 0 info)) (raw-params (nth 2 in= fo)) hash) (when info (when (member (cdr (assoc :exports (nth 2 info))) (qu= ote ("both" "results"))) (org-babel-exp-in-export-file lang (setf (nth 2 in= fo) (org-babel-process-params (org-babel-merge-params org-babel-default-hea= der-args ... ... ... raw-params)))) (setf hash (org-babel-sha1-hash info)))= (setf (nth 1 info) (if (and (cdr (assoc :noweb ...)) (string=3D "yes" (cdr= ...))) (org-babel-expand-noweb-references info (get-file-buffer org-curren= t-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)) #("pyt= hon" 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 head= ers))) (unwind-protect (progn (if (memq type org-export-blocks-witheld) "" (appl= y func body headers))) (set-match-data save-match-data-internal (quote evap= orate))) (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-with= eld) "" (apply func body headers))))) (when replacement (delete-region matc= h-start match-end) (goto-char match-start) (insert replacement) (unless pre= serve-indent (indent-code-rigidly match-start (point) indentation)))) (progn (let ((replacement (save-match-data (if (memq type org-export-bloc= ks-witheld) "" (apply func body headers))))) (when replacement (delete-regi= on match-start match-end) (goto-char match-start) (insert replacement) (unl= ess preserve-indent (indent-code-rigidly match-start (point) indentation)))= )) (if (setq func (cadr (assoc type org-export-blocks))) (progn (let ((repla= cement (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 ((replacemen= t (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 (inden= t-code-rigidly match-start (point) indentation))))) (let* ((match-start (match-beginning 0)) (body-start (match-end 0)) (inde= ntation (length (match-string 1))) (inner-re (format "[=0D\n]*[ ]*#\\+\\(b= egin\\|end\\)_%s" (regexp-quote (downcase (match-string 2))))) (type (inter= n (downcase (match-string 2)))) (headers (save-match-data (org-split-string= (match-string 3) "[ ]+"))) (balanced 1) (preserve-indent (or org-src-pres= erve-indentation (member "-i" headers))) match-end) (while (and (not (zerop= balanced)) (re-search-forward inner-re nil t)) (if (string=3D (downcase (m= atch-string 1)) "end") (decf balanced) (incf balanced))) (when (not (zerop = balanced)) (error "unbalanced begin/end_%s blocks with %S" type (buffer-sub= string match-start (point)))) (setq match-end (match-end 0)) (unless preser= ve-indent (setq body (save-match-data (org-remove-indentation (buffer-subst= ring body-start (match-beginning 0)))))) (unless (memq type types) (setq ty= pes (cons type types))) (save-match-data (interblock start match-start)) (w= hen (setq func (cadr (assoc type org-export-blocks))) (let ((replacement (s= ave-match-data (if (memq type org-export-blocks-witheld) "" (apply func bod= y headers))))) (when replacement (delete-region match-start match-end) (got= o-char match-start) (insert replacement) (unless preserve-indent (indent-co= de-rigidly match-start (point) indentation)))))) (while (re-search-forward beg-re nil t) (let* ((match-start (match-beginn= ing 0)) (body-start (match-end 0)) (indentation (length (match-string 1))) = (inner-re (format "[=0D\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote (do= wncase (match-string 2))))) (type (intern (downcase (match-string 2)))) (he= aders (save-match-data (org-split-string (match-string 3) "[ ]+"))) (balan= ced 1) (preserve-indent (or org-src-preserve-indentation (member "-i" heade= rs))) match-end) (while (and (not (zerop balanced)) (re-search-forward inne= r-re nil t)) (if (string=3D (downcase (match-string 1)) "end") (decf balanc= ed) (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-da= ta (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 or= g-export-blocks))) (let ((replacement (save-match-data (if ... "" ...)))) (= when replacement (delete-region match-start match-end) (goto-char match-sta= rt) (insert replacement) (unless preserve-indent (indent-code-rigidly match= -start (point) indentation)))))) (setq start (point))) (let ((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[=0D\n]")) = (while (re-search-forward beg-re nil t) (let* ((match-start (match-beginnin= g 0)) (body-start (match-end 0)) (indentation (length (match-string 1))) (i= nner-re (format "[=0D\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote (down= case ...)))) (type (intern (downcase (match-string 2)))) (headers (save-mat= ch-data (org-split-string (match-string 3) "[ ]+"))) (balanced 1) (preserv= e-indent (or org-src-preserve-indentation (member "-i" headers))) match-end= ) (while (and (not (zerop balanced)) (re-search-forward inner-re nil t)) (i= f (string=3D (downcase (match-string 1)) "end") (decf balanced) (incf balan= ced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s blocks = with %S" type (buffer-substring match-start (point)))) (setq match-end (mat= ch-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-s= tart)) (when (setq func (cadr (assoc type org-export-blocks))) (let ((repla= cement (save-match-data ...))) (when replacement (delete-region match-start= match-end) (goto-char match-start) (insert replacement) (unless preserve-i= ndent (indent-code-rigidly match-start ... indentation)))))) (setq start (p= oint)))) (progn (fset (quote interblock) (function* (lambda (start end) (block int= erblock (mapcar (lambda (pair) (funcall ... start end)) org-export-interblo= cks))))) (goto-char (point-min)) (setq start (point)) (let ((beg-re "^\\([ = ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[=0D\n]")) (while (re-search-forwa= rd beg-re nil t) (let* ((match-start (match-beginning 0)) (body-start (matc= h-end 0)) (indentation (length (match-string 1))) (inner-re (format "[=0D\n= ]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-quote ...))) (type (intern (downca= se ...))) (headers (save-match-data (org-split-string ... "[ ]+"))) (balan= ced 1) (preserve-indent (or org-src-preserve-indentation (member "-i" heade= rs))) match-end) (while (and (not (zerop balanced)) (re-search-forward inne= r-re nil t)) (if (string=3D (downcase ...) "end") (decf balanced) (incf bal= anced))) (when (not (zerop balanced)) (error "unbalanced begin/end_%s block= s with %S" type (buffer-substring match-start (point)))) (setq match-end (m= atch-end 0)) (unless preserve-indent (setq body (save-match-data (org-remov= e-indentation ...)))) (unless (memq type types) (setq types (cons type type= s))) (save-match-data (interblock start match-start)) (when (setq func (cad= r (assoc type org-export-blocks))) (let ((replacement ...)) (when replaceme= nt (delete-region match-start match-end) (goto-char match-start) (insert re= placement) (unless preserve-indent ...))))) (setq start (point)))) (interbl= ock 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-+\\)[ ]*\\(.*\\)?[=0D\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 "[=0D\n]*[ ]*#\\+\\(begin\= \|end\\)_%s" ...)) (type (intern ...)) (headers (save-match-data ...)) (bal= anced 1) (preserve-indent (or org-src-preserve-indentation ...)) match-end)= (while (and (not ...) (re-search-forward inner-re nil t)) (if (string=3D .= .. "end") (decf balanced) (incf balanced))) (when (not (zerop balanced)) (e= rror "unbalanced begin/end_%s blocks with %S" type (buffer-substring match-= start ...))) (setq match-end (match-end 0)) (unless preserve-indent (setq b= ody (save-match-data ...))) (unless (memq type types) (setq types (cons typ= e types))) (save-match-data (interblock start match-start)) (when (setq fun= c (cadr ...)) (let (...) (when replacement ... ... ... ...)))) (setq start = (point)))) (interblock start (point-max)) (run-hooks (quote org-export-bloc= ks-postblock-hook))) (if --cl-letf-bound-- (fset (quote interblock) --cl-le= tf-save--) (fmakunbound (quote interblock)))) (let* ((--cl-letf-bound-- (fboundp (quote interblock))) (--cl-letf-save--= (and --cl-letf-bound-- (symbol-function (quote interblock))))) (unwind-pro= tect (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-+\\)[ ]*\= \(.*\\)?[=0D\n]")) (while (re-search-forward beg-re nil t) (let* ((match-st= art ...) (body-start ...) (indentation ...) (inner-re ...) (type ...) (head= ers ...) (balanced 1) (preserve-indent ...) match-end) (while (and ... ...)= (if ... ... ...)) (when (not ...) (error "unbalanced begin/end_%s blocks w= ith %S" type ...)) (setq match-end (match-end 0)) (unless preserve-indent (= setq body ...)) (unless (memq type types) (setq types ...)) (save-match-dat= a (interblock start match-start)) (when (setq func ...) (let ... ...))) (se= tq start (point)))) (interblock start (point-max)) (run-hooks (quote org-ex= port-blocks-postblock-hook))) (if --cl-letf-bound-- (fset (quote interblock= ) --cl-letf-save--) (fmakunbound (quote interblock))))) (letf (((symbol-function (quote interblock)) (function* (lambda (start en= d) (block interblock (mapcar (lambda ... ...) org-export-interblocks)))))) = (goto-char (point-min)) (setq start (point)) (let ((beg-re "^\\([ ]*\\)#\\= +begin_\\(\\S-+\\)[ ]*\\(.*\\)?[=0D\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 "[=0D\n]*[ ]*#\= \+\\(begin\\|end\\)_%s" (regexp-quote ...))) (type (intern (downcase ...)))= (headers (save-match-data (org-split-string ... "[ ]+"))) (balanced 1) (p= reserve-indent (or org-src-preserve-indentation (member "-i" headers))) mat= ch-end) (while (and (not (zerop balanced)) (re-search-forward inner-re nil = t)) (if (string=3D (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-indenta= tion ...)))) (unless (memq type types) (setq types (cons type types))) (sav= e-match-data (interblock start match-start)) (when (setq func (cadr (assoc = type org-export-blocks))) (let ((replacement ...)) (when replacement (delet= e-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 e= nd) (block interblock (mapcar (lambda ... ...) org-export-interblocks))))))= (goto-char (point-min)) (setq start (point)) (let ((beg-re "^\\([ ]*\\)#\= \+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[=0D\n]")) (while (re-search-forward beg-r= e nil t) (let* ((match-start (match-beginning 0)) (body-start (match-end 0)= ) (indentation (length (match-string 1))) (inner-re (format "[=0D\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))) ma= tch-end) (while (and (not (zerop balanced)) (re-search-forward inner-re nil= t)) (if (string=3D (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-indent= ation ...)))) (unless (memq type types) (setq types (cons type types))) (sa= ve-match-data (interblock start match-start)) (when (setq func (cadr (assoc= type org-export-blocks))) (let ((replacement ...)) (when replacement (dele= te-region match-start match-end) (goto-char match-start) (insert replacemen= t) (unless preserve-indent ...))))) (setq start (point)))) (interblock star= t (point-max)) (run-hooks (quote org-export-blocks-postblock-hook))) (flet ((interblock (start end) (mapcar (lambda (pair) (funcall (second pa= ir) start end)) org-export-interblocks))) (goto-char (point-min)) (setq sta= rt (point)) (let ((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[= =0D\n]")) (while (re-search-forward beg-re nil t) (let* ((match-start (matc= h-beginning 0)) (body-start (match-end 0)) (indentation (length (match-stri= ng 1))) (inner-re (format "[=0D\n]*[ ]*#\\+\\(begin\\|end\\)_%s" (regexp-q= uote ...))) (type (intern (downcase ...))) (headers (save-match-data (org-s= plit-string ... "[ ]+"))) (balanced 1) (preserve-indent (or org-src-preser= ve-indentation (member "-i" headers))) match-end) (while (and (not (zerop b= alanced)) (re-search-forward inner-re nil t)) (if (string=3D (downcase ...)= "end") (decf balanced) (incf balanced))) (when (not (zerop balanced)) (err= or "unbalanced begin/end_%s blocks with %S" type (buffer-substring match-st= art (point)))) (setq match-end (match-end 0)) (unless preserve-indent (setq= body (save-match-data (org-remove-indentation ...)))) (unless (memq type t= ypes) (setq types (cons type types))) (save-match-data (interblock start ma= tch-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 o= rg-export-blocks-postblock-hook))) (let ((case-fold-search t) (types (quote nil)) matched indentation type f= unc start end body headers preserve-indent progress-marker) (flet ((interbl= ock (start end) (mapcar (lambda (pair) (funcall (second pair) start end)) o= rg-export-interblocks))) (goto-char (point-min)) (setq start (point)) (let = ((beg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[=0D\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 "[= =0D\n]*[ ]*#\\+\\(begin\\|end\\)_%s" ...)) (type (intern ...)) (headers (s= ave-match-data ...)) (balanced 1) (preserve-indent (or org-src-preserve-ind= entation ...)) match-end) (while (and (not ...) (re-search-forward inner-re= nil t)) (if (string=3D ... "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)) (unles= s preserve-indent (setq body (save-match-data ...))) (unless (memq type typ= es) (setq types (cons type types))) (save-match-data (interblock start matc= h-start)) (when (setq func (cadr ...)) (let (...) (when replacement ... ...= ... ...)))) (setq start (point)))) (interblock start (point-max)) (run-hoo= ks (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 ((b= eg-re "^\\([ ]*\\)#\\+begin_\\(\\S-+\\)[ ]*\\(.*\\)?[=0D\n]")) (while (re= -search-forward beg-re nil t) (let* ((match-start ...) (body-start ...) (in= dentation ...) (inner-re ...) (type ...) (headers ...) (balanced 1) (preser= ve-indent ...) match-end) (while (and ... ...) (if ... ... ...)) (when (not= ...) (error "unbalanced begin/end_%s blocks with %S" type ...)) (setq matc= h-end (match-end 0)) (unless preserve-indent (setq body ...)) (unless (memq= type types) (setq types ...)) (save-match-data (interblock start match-sta= rt)) (when (setq func ...) (let ... ...))) (setq start (point)))) (interblo= ck start (point-max)) (run-hooks (quote org-export-blocks-postblock-hook)))= )) (unwind-protect (progn (let ((case-fold-search t) (types (quote nil)) mat= ched 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-+\\)[ ]*\\(.*\\)?[=0D\n]")) (while (re-search= -forward beg-re nil t) (let* (... ... ... ... ... ... ... ... match-end) (w= hile ... ...) (when ... ...) (setq match-end ...) (unless preserve-indent .= ..) (unless ... ...) (save-match-data ...) (when ... ...)) (setq start (poi= nt)))) (interblock start (point-max)) (run-hooks (quote org-export-blocks-p= ostblock-hook))))) (set-window-configuration wconfig)) (let ((wconfig (current-window-configuration))) (unwind-protect (progn (l= et ((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-+\\)[ ]*\\= (.*\\)?[=0D\n]")) (while (re-search-forward beg-re nil t) (let* ... ... ...= ... ... ... ... ...) (setq start ...))) (interblock start (point-max)) (ru= n-hooks (quote org-export-blocks-postblock-hook))))) (set-window-configurat= ion wconfig))) (save-window-excursion (let ((case-fold-search t) (types (quote nil)) mat= ched 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-+\\)[ ]*\\(.*\\)?[=0D\= n]")) (while (re-search-forward beg-re nil t) (let* ((match-start ...) (bod= y-start ...) (indentation ...) (inner-re ...) (type ...) (headers ...) (bal= anced 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 (poi= nt)))) (interblock start (point-max)) (run-hooks (quote org-export-blocks-p= ostblock-hook))))) org-export-blocks-preprocess() (progn (erase-buffer) (insert string) (setq case-fold-search t) (let ((in= hibit-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 sourc= e-buffer "^\\(org-\\|orgtbl-\\)") (org-install-letbind) (run-hooks (quote o= rg-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) (or= g-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-ex= port-remove-tasks (plist-get parameters :tasks)) (when (plist-get parameter= s :footnotes) (org-footnote-normalize nil parameters)) (org-export-mark-lis= t-end) (org-export-preprocess-apply-macros) (run-hooks (quote org-export-pr= eprocess-after-macros-hook)) (org-export-blocks-preprocess) (org-export-mar= k-list-properties) (org-export-replace-src-segments-and-examples) (org-expo= rt-protect-colon-examples) (org-export-convert-protected-spaces) (setq targ= et-alist (org-export-define-heading-targets target-alist)) (run-hooks (quot= e org-export-preprocess-after-headline-targets-hook)) (org-export-remember-= html-container-classes) (org-export-remove-or-extract-drawers drawers (plis= t-get parameters :drawers)) (when (plist-get parameters :skip-before-1st-he= ading) (goto-char (point-min)) (when (re-search-forward "^\\(#.*\n\\)?\\*+[= ]" nil t) (delete-region (point-min) (match-beginning 0)) (goto-char (poi= nt-min)) (insert "\n"))) (when (plist-get parameters :add-text) (goto-char = (point-min)) (insert (plist-get parameters :add-text) "\n")) (org-export-re= move-headline-metadata parameters) (setq target-alist (org-export-handle-in= visible-targets target-alist)) (run-hooks (quote org-export-preprocess-befo= re-selecting-backend-code-hook)) (org-export-select-backend-specific-text) = (org-export-protect-quoted-subtrees) (org-export-remove-clock-lines) (org-e= xport-protect-verbatim) (org-export-mark-blockquote-verse-center) (run-hook= s (quote org-export-preprocess-after-blockquote-hook)) (unless (plist-get p= arameters :timestamps) (org-export-remove-timestamps)) (setq target-alist (= org-export-attach-captions-and-attributes target-alist)) (org-export-mark-r= adio-links) (run-hooks (quote org-export-preprocess-after-radio-targets-hoo= k)) (org-export-concatenate-multiline-links) (run-hooks (quote org-export-p= reprocess-before-normalizing-links-hook)) (org-export-normalize-links) ...) (unwind-protect (progn (erase-buffer) (insert string) (setq case-fold-sea= rch t) (let ((inhibit-read-only t)) (remove-text-properties (point-min) (po= int-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) (ru= n-hooks (quote org-export-preprocess-hook)) (untabify (point-min) (point-ma= x)) (org-export-handle-include-files-recurse) (run-hooks (quote org-export-= preprocess-after-include-files-hook)) (org-export-remove-archived-trees arc= hived-trees) (org-export-remove-comment-blocks-and-subtrees) (org-export-ha= ndle-export-tags (plist-get parameters :select-tags) (plist-get parameters = :exclude-tags)) (run-hooks (quote org-export-preprocess-after-tree-selectio= n-hook)) (org-export-remove-tasks (plist-get parameters :tasks)) (when (pli= st-get parameters :footnotes) (org-footnote-normalize nil parameters)) (org= -export-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks (quo= te org-export-preprocess-after-macros-hook)) (org-export-blocks-preprocess)= (org-export-mark-list-properties) (org-export-replace-src-segments-and-exa= mples) (org-export-protect-colon-examples) (org-export-convert-protected-sp= aces) (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-drawe= rs drawers (plist-get parameters :drawers)) (when (plist-get parameters :sk= ip-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-t= ext) (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-clo= ck-lines) (org-export-protect-verbatim) (org-export-mark-blockquote-verse-c= enter) (run-hooks (quote org-export-preprocess-after-blockquote-hook)) (unl= ess (plist-get parameters :timestamps) (org-export-remove-timestamps)) (set= q target-alist (org-export-attach-captions-and-attributes target-alist)) (o= rg-export-mark-radio-links) (run-hooks (quote org-export-preprocess-after-r= adio-targets-hook)) (org-export-concatenate-multiline-links) (run-hooks (qu= ote org-export-preprocess-before-normalizing-links-hook)) (org-export-norma= lize-links) ...) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))) (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn (era= se-buffer) (insert string) (setq case-fold-search t) (let ((inhibit-read-on= ly t)) (remove-text-properties (point-min) (point-max) (quote (read-only t)= ))) (org-export-kill-licensed-text) (let ((org-inhibit-startup t)) (org-mod= e)) (setq case-fold-search t) (org-clone-local-variables source-buffer "^\\= (org-\\|orgtbl-\\)") (org-install-letbind) (run-hooks (quote org-export-pre= process-hook)) (untabify (point-min) (point-max)) (org-export-handle-includ= e-files-recurse) (run-hooks (quote org-export-preprocess-after-include-file= s-hook)) (org-export-remove-archived-trees archived-trees) (org-export-remo= ve-comment-blocks-and-subtrees) (org-export-handle-export-tags (plist-get p= arameters :select-tags) (plist-get parameters :exclude-tags)) (run-hooks (q= uote org-export-preprocess-after-tree-selection-hook)) (org-export-remove-t= asks (plist-get parameters :tasks)) (when (plist-get parameters :footnotes)= (org-footnote-normalize nil parameters)) (org-export-mark-list-end) (org-e= xport-preprocess-apply-macros) (run-hooks (quote org-export-preprocess-afte= r-macros-hook)) (org-export-blocks-preprocess) (org-export-mark-list-proper= ties) (org-export-replace-src-segments-and-examples) (org-export-protect-co= lon-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-containe= r-classes) (org-export-remove-or-extract-drawers drawers (plist-get paramet= ers :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)) (ins= ert "\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-targe= ts target-alist)) (run-hooks (quote org-export-preprocess-before-selecting-= backend-code-hook)) (org-export-select-backend-specific-text) (org-export-p= rotect-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 :ti= mestamps) (org-export-remove-timestamps)) (setq target-alist (org-export-at= tach-captions-and-attributes target-alist)) (org-export-mark-radio-links) (= run-hooks (quote org-export-preprocess-after-radio-targets-hook)) (org-expo= rt-concatenate-multiline-links) (run-hooks (quote org-export-preprocess-bef= ore-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) (i= nsert string) (setq case-fold-search t) (let ((inhibit-read-only t)) (remov= e-text-properties (point-min) (point-max) (quote (read-only t)))) (org-expo= rt-kill-licensed-text) (let ((org-inhibit-startup t)) (org-mode)) (setq cas= e-fold-search t) (org-clone-local-variables source-buffer "^\\(org-\\|orgtb= l-\\)") (org-install-letbind) (run-hooks (quote org-export-preprocess-hook)= ) (untabify (point-min) (point-max)) (org-export-handle-include-files-recur= se) (run-hooks (quote org-export-preprocess-after-include-files-hook)) (org= -export-remove-archived-trees archived-trees) (org-export-remove-comment-bl= ocks-and-subtrees) (org-export-handle-export-tags (plist-get parameters :se= lect-tags) (plist-get parameters :exclude-tags)) (run-hooks (quote org-expo= rt-preprocess-after-tree-selection-hook)) (org-export-remove-tasks (plist-g= et parameters :tasks)) (when (plist-get parameters :footnotes) (org-footnot= e-normalize nil parameters)) (org-export-mark-list-end) (org-export-preproc= ess-apply-macros) (run-hooks (quote org-export-preprocess-after-macros-hook= )) (org-export-blocks-preprocess) (org-export-mark-list-properties) (org-ex= port-replace-src-segments-and-examples) (org-export-protect-colon-examples)= (org-export-convert-protected-spaces) (setq target-alist (org-export-defin= e-heading-targets target-alist)) (run-hooks (quote org-export-preprocess-af= ter-headline-targets-hook)) (org-export-remember-html-container-classes) (o= rg-export-remove-or-extract-drawers drawers (plist-get parameters :drawers)= ) (when (plist-get parameters :skip-before-1st-heading) (goto-char (point-m= in)) (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 (plis= t-get parameters :add-text) "\n")) (org-export-remove-headline-metadata par= ameters) (setq target-alist (org-export-handle-invisible-targets target-ali= st)) (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) (o= rg-export-mark-blockquote-verse-center) (run-hooks (quote org-export-prepro= cess-after-blockquote-hook)) (unless (plist-get parameters :timestamps) (or= g-export-remove-timestamps)) (setq target-alist (org-export-attach-captions= -and-attributes target-alist)) (org-export-mark-radio-links) (run-hooks (qu= ote org-export-preprocess-after-radio-targets-hook)) (org-export-concatenat= e-multiline-links) (run-hooks (quote org-export-preprocess-before-normalizi= ng-links-hook)) (org-export-normalize-links) ...) (and (buffer-name temp-bu= ffer) (kill-buffer temp-buffer)))) (let ((temp-buffer (generate-new-buffer " *temp*"))) (with-current-buffer= temp-buffer (unwind-protect (progn (erase-buffer) (insert string) (setq ca= se-fold-search t) (let ((inhibit-read-only t)) (remove-text-properties (poi= nt-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-l= etbind) (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-archive= d-trees archived-trees) (org-export-remove-comment-blocks-and-subtrees) (or= g-export-handle-export-tags (plist-get parameters :select-tags) (plist-get = parameters :exclude-tags)) (run-hooks (quote org-export-preprocess-after-tr= ee-selection-hook)) (org-export-remove-tasks (plist-get parameters :tasks))= (when (plist-get parameters :footnotes) (org-footnote-normalize nil parame= ters)) (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-segme= nts-and-examples) (org-export-protect-colon-examples) (org-export-convert-p= rotected-spaces) (setq target-alist (org-export-define-heading-targets targ= et-alist)) (run-hooks (quote org-export-preprocess-after-headline-targets-h= ook)) (org-export-remember-html-container-classes) (org-export-remove-or-ex= tract-drawers drawers (plist-get parameters :drawers)) (when (plist-get par= ameters :skip-before-1st-heading) (goto-char (point-min)) (when (re-search-= forward "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region (point-min) (match-be= ginning 0)) (goto-char (point-min)) (insert "\n"))) (when (plist-get parame= ters :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-sel= ect-backend-specific-text) (org-export-protect-quoted-subtrees) (org-export= -remove-clock-lines) (org-export-protect-verbatim) (org-export-mark-blockqu= ote-verse-center) (run-hooks (quote org-export-preprocess-after-blockquote-= hook)) (unless (plist-get parameters :timestamps) (org-export-remove-timest= amps)) (setq target-alist (org-export-attach-captions-and-attributes target= -alist)) (org-export-mark-radio-links) (run-hooks (quote org-export-preproc= ess-after-radio-targets-hook)) (org-export-concatenate-multiline-links) (ru= n-hooks (quote org-export-preprocess-before-normalizing-links-hook)) (org-e= xport-normalize-links) ...) (and (buffer-name temp-buffer) (kill-buffer tem= p-buffer))))) (with-temp-buffer (erase-buffer) (insert string) (setq case-fold-search t= ) (let ((inhibit-read-only t)) (remove-text-properties (point-min) (point-m= ax) (quote (read-only t)))) (org-export-kill-licensed-text) (let ((org-inhi= bit-startup t)) (org-mode)) (setq case-fold-search t) (org-clone-local-vari= ables source-buffer "^\\(org-\\|orgtbl-\\)") (org-install-letbind) (run-hoo= ks (quote org-export-preprocess-hook)) (untabify (point-min) (point-max)) (= org-export-handle-include-files-recurse) (run-hooks (quote org-export-prepr= ocess-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 :excl= ude-tags)) (run-hooks (quote org-export-preprocess-after-tree-selection-hoo= k)) (org-export-remove-tasks (plist-get parameters :tasks)) (when (plist-ge= t parameters :footnotes) (org-footnote-normalize nil parameters)) (org-expo= rt-mark-list-end) (org-export-preprocess-apply-macros) (run-hooks (quote or= g-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-expor= t-remember-html-container-classes) (org-export-remove-or-extract-drawers dr= awers (plist-get parameters :drawers)) (when (plist-get parameters :skip-be= fore-1st-heading) (goto-char (point-min)) (when (re-search-forward "^\\(#.*= \n\\)?\\*+[ ]" nil t) (delete-region (point-min) (match-beginning 0)) (got= o-char (point-min)) (insert "\n"))) (when (plist-get parameters :add-text) = (goto-char (point-min)) (insert (plist-get parameters :add-text) "\n")) (or= g-export-remove-headline-metadata parameters) (setq target-alist (org-expor= t-handle-invisible-targets target-alist)) (run-hooks (quote org-export-prep= rocess-before-selecting-backend-code-hook)) (org-export-select-backend-spec= ific-text) (org-export-protect-quoted-subtrees) (org-export-remove-clock-li= nes) (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 tar= get-alist (org-export-attach-captions-and-attributes target-alist)) (org-ex= port-mark-radio-links) (run-hooks (quote org-export-preprocess-after-radio-= targets-hook)) (org-export-concatenate-multiline-links) (run-hooks (quote o= rg-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 :archi= ved-trees)) (inhibit-read-only t) (drawers org-drawers) (source-buffer (cur= rent-buffer)) target-alist rtn) (setq org-export-target-aliases nil org-exp= ort-preferred-target-alist nil org-export-id-target-alist nil org-export-co= de-refs nil) (with-temp-buffer (erase-buffer) (insert string) (setq case-fo= ld-search t) (let ((inhibit-read-only t)) (remove-text-properties (point-mi= n) (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-letbin= d) (run-hooks (quote org-export-preprocess-hook)) (untabify (point-min) (po= int-max)) (org-export-handle-include-files-recurse) (run-hooks (quote org-e= xport-preprocess-after-include-files-hook)) (org-export-remove-archived-tre= es archived-trees) (org-export-remove-comment-blocks-and-subtrees) (org-exp= ort-handle-export-tags (plist-get parameters :select-tags) (plist-get param= eters :exclude-tags)) (run-hooks (quote org-export-preprocess-after-tree-se= lection-hook)) (org-export-remove-tasks (plist-get parameters :tasks)) (whe= n (plist-get parameters :footnotes) (org-footnote-normalize nil parameters)= ) (org-export-mark-list-end) (org-export-preprocess-apply-macros) (run-hook= s (quote org-export-preprocess-after-macros-hook)) (org-export-blocks-prepr= ocess) (org-export-mark-list-properties) (org-export-replace-src-segments-a= nd-examples) (org-export-protect-colon-examples) (org-export-convert-protec= ted-spaces) (setq target-alist (org-export-define-heading-targets target-al= ist)) (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 paramete= rs :skip-before-1st-heading) (goto-char (point-min)) (when (re-search-forwa= rd "^\\(#.*\n\\)?\\*+[ ]" nil t) (delete-region (point-min) (match-beginni= ng 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-b= ackend-specific-text) (org-export-protect-quoted-subtrees) (org-export-remo= ve-clock-lines) (org-export-protect-verbatim) (org-export-mark-blockquote-v= erse-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-alis= t)) (org-export-mark-radio-links) (run-hooks (quote org-export-preprocess-a= fter-radio-targets-hook)) (org-export-concatenate-multiline-links) (run-hoo= ks (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-t= oc\n#+STARTUP: align fold nodlcheck hidestars oddeven lognotestate hideb= locks\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 a= c dot uk, tsd at tsdye dot com\n#+LANGUAGE: en\n#+STYLE: \n#+S= TYLE: \n#+LINK_UP: index.php\n#+LINK_HOME: http://orgmode.org/worg\n\n#+= begin_html\n
\n

executable code blocks in org-mode

\n
\n \n#+end_= html\n \n* Improving this document :noexport:\n** DONE Document sli= ce indexing of tables\n** DONE Document synonymous alternatives\n {call,l= ob}, {source, function, srcname}, {results, resname}\n** DONE Describe usef= ul functions\n - `org-babel-execute-buffer'\n - `org-babel-execute-subt= ree'\n\n** DONE Language support\n Hopefully we will be breaking out a sepa= rate section for\neach language, and expanding the portion which documents = the actual\nusage of header-arguments and noweb references as those section= s are\nwoefully out of date.\n** DONE Document noweb references\n*** DONE W= hy is :noweb needed for execution but not for tangling?\n** TODO Developmen= ts\n- org-babel can now cache the results of source block execution to avoi= d\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 li= ne 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 e= nable 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-a= rgs)))\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 hea= der arguments\n - org-babel: capture graphical output from R\n\n If = a [:file filename.ext] header arg is provided, then all graphical\n outpu= t from the source block is captured on disk, and output of the\n source b= lock is a link to the resulting file, as with the\n graphics-only languag= es 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 tha= t fails, png format output is\n created.\n\n Additionally, values for s= everal arguments to the R graphics\n device can be passed using header ar= gs:\n\n :width :height :bg :units :pointsize\n :antialias :quality :com= pression :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 A= n example block is (although both bg and fg can be passed directly as\n h= eader args)\n\n \\#+begin_src R :file z.pdf :width 8 :height 8 :R-dev-arg= s bg=3D\"olivedrab\", fg=3D\"hotpink\"\n plot(matrix(rnorm(100), ncol= =3D2), type=3D\"l\")\n \\#+end_src\n\n - Yes, I think we do want a vers= ion of this for python and ruby et al. In\nyour example, the filename is cr= eated in python. I suggest doing it\nslightly differently, something like t= his.\n\n#+srcname: fileoutput\n#+begin_src python :file outfile.txt\n def s= avetofile(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 avai= lable for ruby & python in branch\nded-babel of git://orgmode.org/org-mode/= babel.git.\n\nSo here, if you specify :file ruby/python blindly = outputs a\nlink to , regardless of the contents of the\ncode. Res= ponsibility for creating useful contents of 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 t= o the graphics languages (dot, ditaa, asymptote), where\nthe results *autom= atically* get sent to the file specified by :file. The\nsame is also true n= ow for graphical output from R.\n\nThe difference with python, ruby et al i= s that they might create file\noutput in a variety of ways which we can't a= nticipate, 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\" s= o\nthat a python variable is created e.g. __org_babel_output_file__ that\na= lways holds a string corresponding to the file specified by :file. Eric\nma= y 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 lett= ing [[file:languages.org][many different languages]] work together.\n Prog= ramming languages live in blocks inside natural language\n [[http://orgmod= e.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 =3DR=3D code block, and\n fi= nally end up embedded as a value in the middle of a paragraph or\n possibl= y pass through a =3Dgnuplot=3D code block and end up as a plot\n embedded = in the document.\n\n Through extending [[http://orgmode.org/][Org-mode]] w= ith several features for editing\n exporting and executing source code Bab= el turns Org-mode into a tool\n for both /Literate Programming/ and /Repro= ducible Research/.\n\n Babel augments [[http://orgmode.org/manual/Literal-= examples.html][Org-mode support for code blocks]] by providing:\n\n - inte= ractive and on-export execution of code blocks;\n - code blocks as functio= ns that can be parameterised, refer to\n other code blocks, and be calle= d remotely; and\n - export to files for literate programming.\n\n* Overvie= w\n Babel provides new features on a few different fronts, and\n differen= t people may want to start in different places.\n\n - Using 'src' blocks i= n 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 majo= r-mode\n edit buffer, then you should have a look at the relevant sectio= n\n in the [[http://orgmode.org/manual/Literal-examples.html][Org manual= ]] and [[#source-code-blocks][below]], try it out, and come back.\n - Exec= uting 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 [[#s= ource-code-execution][here]].\n - Literate Programming ::\n If you are = a programmer writing code that you would normally\n execute in some othe= r 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-programmin= g][Literate Programming]] support to extract pure code\n from your Org f= iles.\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 :PROPER= TIES:\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 i= s a simple process.\n\n 1) It is strongly recommended that you update to t= he latest version\n of Org-mode by [[file:../../org-faq.org::keeping-cu= rrent-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 e= xecute 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 =3Demacs-lisp=3D examples will s= till\n work as expected.\n\n 3) Evaluate your modified .emacs.\n\n* Co= de Blocks\n :PROPERTIES:\n :CUSTOM_ID: source-code-blocks\n :END:\= n\n** Code Blocks in Org\n :PROPERTIES:\n :CUSTOM_ID: source-code-blo= cks-org\n :END:\n\n Babel is all about [[http://orgmode.org/manual/Li= teral-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 'sr= c' blocks, please have a look at the [[http://orgmode.org/manual/Literal-ex= amples.html][Org-mode manual]]\n before proceeding.\n\n Code blocks i= n [[#reference-and-documentation][supported languages]] can occur anywhere = in an\n Org-mode file. Code blocks can be entered directly into\n th= e Org-mode file, but it is often easier to enter code with the\n functio= n =3Dorg-edit-src-code=3D, which is called with the keyboard\n shortcut,= C-c '. This places the code block in a new\n buffer with the appropria= te 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 [[ht= tp://www.ruby-lang.org/][ruby]] code looks like this in\n an Org-mode fi= le:\n\n#+begin_src org\n ,#+begin_src ruby\n ,require 'date'\n ,\"This f= ile was last evaluated on #{Date.today}\"\n ,#+end_src\n#+end_src\n\n** Co= de Blocks in Babel\n :PROPERTIES:\n :CUSTOM_ID: source-code-blocks-ba= bel\n :END:\n\nBabel adds some new elements to code blocks. The basic\ns= tructure 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 m= embers of =3Dorg-babel-interpreters=3D.\n- header-arguments :: Header argum= ents control many facets of the\n evaluation and output of source-code = blocks. See the [[file:reference.org::#header-arguments][Header\n Argu= ments]] section for a complete review of available header\n arguments.\= n- body :: The source code to be evaluated. An important key-binding\n = is =3D=E2=80=8BC-c '=E2=80=8B=3D. This calls =3Dorg-edit-src-code=3D, a f= unction that brings\n up an edit buffer containing the code using the E= macs 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 e= xecutes code blocks for *interpreted* languages such\nas shell, python, R, = etc. by passing code to the interpreter, which\nmust be installed on your s= ystem. You control what is done with the\nresults of execution. \n\nHere a= re 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: #+beg= in_src ruby\n: \"This file was last evaluated on #{Date.today}\"\n: #+end_s= rc\n\nHTML export of code:\n#+begin_src ruby\n\"This file was last evaluate= d 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\n= HTML export of code:\n#+begin_src sh\n echo \"This file takes up `du -h or= g-babel.org |sed 's/\\([0-9k]*\\)[ ]*org-babel.org/\\1/'`\"\n#+end_src\n\nH= TML 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 wor= ds in this file?\nIn the Org-mode file:\n: #+begin_src R :colnames yes\n: = words <- tolower(scan(\"intro.org\", what=3D\"\", na.strings=3Dc(\"|\",\":= \")))\n: t(sort(table(words[nchar(words) > 3]), decreasing=3DTRUE)[1:10])= \n: #+end_src\n\nHTML export of code:\n#+begin_src R :colnames yes\n words= <- tolower(scan(\"intro.org\", what=3D\"\", na.strings=3Dc(\"|\",\":\")))\= 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 | th= at | 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: #+begi= n_src ditaa :file blue.png :cmdline -r\n: +---------+\n: | cBLU |\n: | = |\n: | +----+\n: | |cPNK|\n: | | |\n: +----+----+\n: #+e= nd_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#+resn= ame:\n[[file:../../images/babel/blue.png]]\n\n** Capturing the Results of C= ode Evaluation\n :PROPERTIES:\n :CUSTOM_ID: results\n :END:\n Babel= provides two fundamentally different modes for capturing\n the results o= f code evaluation: functional mode and scripting\n mode. The choice of m= ode is specified by the =3D:results=3D header\n argument.\n*** =3D:result= s value=3D (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 bloc= k is a function with a return value. The return\n value of one code blo= ck can be used as input for another\n code block, even one in a differe= nt language. In this\n way, Babel becomes a [[meta-programming-languag= e]]. If the block\n returns tabular data (a vector, array or table of s= ome 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 f= ollowing 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.ctim= e())\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\nth= e last statement and nothing else.\n\n*** =3D:results output=3D (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 h= as 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\nim= port 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 i= s Wed Nov 11 18:50:36 2009\n: Two plus two is\n\nHere, scripting mode retur= ned the text that python sent to =3Dstdout=3D. Because\nthe code block doe= sn't include a =3Dprint()=3D statement for the last\nvalue, =3D(2 + 2)=3D, = 4 does not appear in the results.\n\n** Session-based Evaluation\n For so= me 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 me= ans that an environment is created containing\n data objects that persist= between different source code\n blocks. Babel supports evaluation of cod= e within such sessions\n with the =3D:session=3D 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 u= seful for prototyping and\n debugging. The function =3Dorg-babel-pop-to-= session=3D can be used to\n switch to the session buffer.\n\n Once a co= de block is finished, it is often best to execute it\n outside of a sessi= on, so the state of the environment in which it\n executes will be certai= n.\n\n With R, the session will be under the control of [[http://ess.r-pr= oject.org/][Emacs Speaks\n Statistics]] as usual, and the full power of E= SS is thus still\n available, both in the R session, and when switching t= o the R code\n edit buffer with =3D=E2=80=8BC-c '=E2=80=8B=3D.\n\n** Argu= ments to Code Blocks\n :PROPERTIES:\n :CUSTOM_ID: arguments-to-source-c= ode-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 st= atus of *functions*. Arguments can be passed to code blocks in\n both fun= ctional 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 followin= g source\n code block defines a function, using python, that squares it= s 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: squ= are(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=3D6)\n(/for information on the/ =3Dcal= l=3D /syntax see/ [[library-of-babel]])\n\n#+call: square(x=3D6)\n\n#+resul= ts: square(x=3D6)\n: 36\n\n*** A more complex example using an Org-mode tab= le as input\n\n In this example we define a function called =3Dfibonacc= i-seq=3D, using\n Emacs Lisp. The function =3Dfibonacci-seq=3D compute= s a Fibonacci\n sequence. The function takes a single argument, in thi= s case, a\n reference to an Org-mode table.\n\n Here is the Org-mod= e table that is passed to =3Dfibonacci-seq=3D:\n\n#+tblname: fibonacci-inpu= ts\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 buff= er:\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=3Dfibonacci-inputs)\n#+begin_src emacs= -lisp\n (defun fibonacci (n)\n (if (or (=3D n 0) (=3D 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-s= eq(fib-inputs=3Dfibonacci-inputs)\n: #+begin_src emacs-lisp\n: (defun fib= onacci (n)\n: (if (or (=3D n 0) (=3D n 1))\n: n\n: (+ (fi= bonacci (- n 1)) (fibonacci (- n 2)))))\n: \n: (mapcar (lambda (row)\n:= (mapcar #'fibonacci row)) fib-inputs)\n: #+end_src\n\nThe retu= rn value of =3Dfibonacci-seq=3D 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[:sessi= on]{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 eval= uation, i.e., the\n evaluated code comprises the code block contents au= gmented with\n code that assigns referenced data to variables. It is po= ssible to\n preview expanded contents, and also to expand code during\n= tangling. Expansion takes into account header arguments and\n var= iables.\n\n- preview :: =3DC-c M-b p=3D is bound to =3Dorg-babel-expand-src= -block=3D. It\n can be used inside a code block to preview the expande= d\n contents. This facility is useful for debugging.\n\n- tangling :: T= he 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 f= or emacs\n initialization. Values such as user names and passwords can= be\n stored in headline properties or in tables. The =3D:no-expand=3D= \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| u= sername | john-doe |\n| password | abc123 |\n\nThe code block refers to t= he data table:\n#+srcname: setup-my-account\n#+begin_src emacs-lisp :rownam= es yes :var data=3Duser-data\n (setq my-special-username (first (first dat= a)))\n (setq my-special-password (first (second data)))\n#+end_src\n \nWi= th point inside the code block, =3DC-c M-b p=3D expands the contents:\n#+b= egin_src emacs-lisp\n (let ((data (quote ((\"john-doe\") (\"abc123\")))))\= n (setq my-special-username (first (first data)))\n (setq my-special-pass= word (first (second data)))\n )\n#+end_src\n\n\n** A Meta-programming Lang= uage 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-functio= nal programming language. With Babel, functions from\nmany languages can w= ork together. You can mix and match languages,\nusing each language for th= e 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 w= ith their\n sizes. Babel automatically converts the output into an Org-mo= de\n table.\n \n: #+srcname: directories\n: #+begin_src sh :results rep= lace\n: cd ~ && du -sc * |grep -v total\n: #+end_src\n \n#+resname: dir= ectories\n| 72 | \"Desktop\" |\n| 12156104 | \"Documents\" |\n| 34= 82440 | \"Downloads\" |\n| 2901720 | \"Library\" |\n| 57344 | \"Movie= s\" |\n| 16548024 | \"Music\" |\n| 120 | \"News\" |\n| 76= 49472 | \"Pictures\" |\n| 0 | \"Public\" |\n| 152224 | \"Sites= \" |\n| 8 | \"System\" |\n| 56 | \"bin\" |\n| 38= 21872 | \"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 =3Dsrcname=3D\n of the previous code block to obtain the data.\= n\nIn the Org-mode file: \n: #+srcname: directory-pie-chart(dirs =3D direct= ories)\n: #+begin_src R :session R-pie-example :file ../../images/babel/dir= s.png\n: pie(dirs[,1], labels =3D dirs[,2])\n: #+end_src\n\nHTML export o= f code:\n#+srcname: directory-pie-chart(dirs =3D directories)\n#+begin_src = R :session R-pie-example :file ../../images/babel/dirs.png\n pie(dirs[,1],= labels =3D dirs[,2])\n#+end_src\n [[file:../../images/babel/dirs.png]]\n\n= * Using Code Blocks in Org Tables\n :PROPERTIES:\n :CUSTOM_ID: spreadshee= t\n :END:\n\nIn addition to passing data from tables as [[arguments-to-sou= rce-code-blocks][arguments]] to code\nblocks, and [[#results-value][storing= ]] results as tables, Babel can be used in a\nthird way with Org-mode table= s. First note that Org-mode's [[http://orgmode.org/manual/The-spreadsheet.h= tml#The-spreadsheet][existing\nspreadsheet functionality]] allows values in= cells to be computed\nautomatically from the values of other cells, using = a =3D#+TBLFM=3D\nformula line. In this way, table computations can be carri= ed out using\n[[http://orgmode.org/manual/Formula-syntax-for-Calc.html#Form= ula-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 =3D#+TBLFM=3D= line to perform the necessary computation.\n\n*** Example 1: Data Summarie= s Using R\nAs a simple example, we'll fill in a cell in an Org-mode table w= ith the\naverage value of a few numbers. First, let's make some data. The\n= following source block creates an Org-mode table filled with five random\nn= umbers between 0 and 1.\n\n: #+srcname: tbl-example-data()\n: #+begin_src R= \n: runif(n=3D5, min=3D0, max=3D1)\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 bloc= k 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 t= able which is going to make use of the R\ncode. This is done using the =3Ds= be=3D ('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=3D'(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=3D'(sbe R-mean (x tbl-example-= data));%.2f\n\nTo recalculate the table formula, use C-u C-c C-c in the\nta= ble. Notice that as things stand the calculated value doesn't\nchange, beca= use the data (held in the table above named\n=3Dtbl-example-data=3D) are st= atic. However, if you delete that data table,\nthen the reference will be i= nterpreted as a reference to the source\nblock responsible for generating t= he data; each time the table formula\nis recalculated the source block will= be evaluated again, and\ntherefore the calculated average value will chang= e.\n\n*** Example 2: Babel Test Suite\nWhile developing Babel, we used a su= ite of tests implemented\nas a large Org-mode table. To run the entire tes= t suite we simply\nevaluate the table with C-u C-c C-c: all of the tests ar= e run,\nthe results are compared with expectations, and the table is update= d\nwith results and pass/fail statistics.\n\nHere's a sample of our test su= ite.\n\nIn the Org-mode file:\n\n: #+TBLNAME: org-babel-tests\n: | function= ality | 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 wo= rld | hello world | pass |\n: | R | basic-R | | = 13 | 13 | pass |\n: #+TBLFM: $5=3D'(if (=3D (length $3) 1) (= sbe $2 (n $3)) (sbe $2)) :: $6=3D'(if (string=3D $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 | re= sults | 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=3D'(if (=3D (length $3)= 1) (sbe $2 (n $3)) (sbe $2)) :: $6=3D'(if (string=3D $4 $5) \"pass\" (form= at \"expected %S but was %S\" $4 $5))\n\n**** code blocks for tests\n\nIn t= he 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: #+srcna= me: date-simple\n: #+begin_src sh :results silent\n: date\n: #+end_src\n\nH= TML 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 exp= ort 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 exp= ort 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/Libra= ry-of-Babel.html#Library-of-Babel][Org manual:Library-of-Babel]])\n\n As w= e saw above with the [[*Simple%20example%20of%20using%20a%20source%20block%= 20as%20a%20function][=3Dsquare=3D]] example, once a source block\n functio= n has been defined it can be called using the =3Dlob=3D notation:\n\n : #+= lob: square(x=3D6)\n\n But what about code blocks that you want to make av= ailable 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 (no= t 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, asymp= tote, 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 Ba= bel -- there's always a chance\n that other Babel users will be able to co= ntribute 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]] f= ile -- raw file at\n#+html: library-of-babel.org\n = --. It is possible to add code blocks to the library from any\n Org-mode f= ile using the =3Dorg-babel-lob-ingest=3D (bound to =3DC-c C-v\n l=3D).\n\n= #+srcname: add-file-to-lob\n #+begin_src emacs-lisp \n (org-babel-lob-i= ngest \"path/to/file.org\")\n #+end_src\n\n Note that it is possible to p= ass table values or the output of a\n source-code block to Library of Babe= l 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 o= ur traditional attitude to the construction of\nprograms: Instead of imagin= ing that our main task is to instruct a\n/computer/ what to do, let us conc= entrate 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\nessa= yist, whose main concern is with exposition and excellence of\nstyle. Such = an author, with thesaurus in hand, chooses the names of\nvariables carefull= y and explains what each variable means. He or she\nstrives for a program t= hat is comprehensible because its concepts have\nbeen introduced in an orde= r that is best for human understanding,\nusing a mixture of formal and info= rmal methods that reinforce each\nother.\n\n -- Donald Knuth\n#+end_quote\n= \nBabel supports [[http://en.wikipedia.org/wiki/Literate_programming][Liter= ate Programming]] (LP) by allowing the act of\nprogramming to take place in= side of Org-mode documents. The Org-mode\nfile can then be exported (*wove= n* in LP speak) to HTML or LaTeX for\nconsumption by a human, and the embed= ded source code can be extracted\n(*tangled* in LP speak) into structured s= ource code files for\nconsumption by a computer.\n\nTo support these operat= ions Babel relies on Org-mode's [[http://orgmode.org/manual/Exporting.html#= Exporting][existing\nexporting functionality]] for *weaving* of documentati= on, and on the\n=3Dorg-babel-tangle=3D function which makes use of [[http:/= /www.cs.tufts.edu/~nr/noweb/][Noweb]] [[noweb-reference-syntax][reference s= yntax]]\nfor *tangling* of code files.\n\nThe [[literate-programming-exampl= e][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 functio= nality is controlled by the =3Dtangle=3D family of [[tangle-header-argument= s][Tangle\nheader arguments]]. These arguments can be used to turn tanglin= g on or\noff (the default), either for the code block or the Org-mode\nhead= ing level.\n\nThe following code blocks demonstrate how to tangle them into= a\nsingle source code file using =3Dorg-babel-tangle=3D.\n\nThe following = two code blocks have no =3Dtangle=3D header arguments\nand so will not, by = themselves, create source code files. They are\nincluded in the source cod= e file by the third code block, which\ndoes have a =3Dtangle=3D header argu= ment.\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: h= ello-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= =3Dtangle=3D header argument\nindicating the name of the file to which the= tangled source code will\nbe written. It also has [[http://www.cs.tufts.e= du/~nr/noweb/][Noweb]] style references to the two previous\ncode blocks. = These references will be expanded during tangling\nto include them in the o= utput file as well.\n\nIn the Org-mode file:\n: #+srcname: hello-world\n: #= +begin_src sh :tangle hello :exports none :noweb yes\n: <>\n: echo \"| hello world = |\"\n: <>\n: #+end_src\n\nHTML export of code:\n#= +srcname: hello-world\n#+begin_src sh :tangle hello.sh :exports none :noweb= yes\n <>\n echo \"| hello worl= d |\"\n <>\n#+end_src\n\n\nCa= lling =3Dorg-babel-tangle=3D will result in the following shell source\ncod= e being written to the =3Dhello.sh=3D file:\n\n#+srcname: hello-world-outpu= t\n#+begin_src sh \n#!/usr/bin/env sh\n\n# [[file:~/org/temp/index.org::*No= web%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 c= ode block, in this case one named =3Dexample-block=3D.\n\n: # <>\n\nAny optional arguments can be passed to =3Dexample-block()=3D by = placing the\narguments inside the parentheses following the convention defi= ned when\ncalling source block functions (see the [[library-of-babel][Libra= ry of babel]]). For example,\n\n: # <>\n\nsets the va= lue of argument \\\"a\\\" equal to \\\"9\\\". Note that\nthese arguments a= re not evaluated in the current source-code\nblock but are passed literally= to =3Dexample-block()=3D.\n\n*** Emacs Initialization with Babel\n :PRO= PERTIES:\n :CUSTOM_ID: emacs-initialization\n :END:\n\n#+attr_html: s= tyle=3D\"float:left;\"\n[[file:../../images/babel/dot-emacs.png]]\n\nBabel = has special support for embedding your Emacs initialization\ninto Org-mode = files. The =3Dorg-babel-load-file=3D function can be used\nto load the Ema= cs Lisp code blocks embedded in a literate\nOrg-mode file in the same way t= hat you might load a regular Emacs Lisp\nfile, such as .emacs.\n\nThis allo= ws 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 initializat= ion.\n\nTo try this out, either see the simple [[literate-emacs-init][Liter= ate Emacs Initialization]]\nexample, or check out the Babel Literate Progra= mming version of\nPhil Hagelberg's excellent [[http://github.com/technomanc= y/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 usag= e, follow these 5 steps:\n\n1) create a directory named =3D.emacs.d=3D in t= he 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 su= bdirectory\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 =3Dinit.el=3D = in your Emacs\n initialization directory (=3D~/.emacs.d=3D).\n #+srcnam= e: emacs-init\n #+begin_src emacs-lisp \n ;;; init.el --- Where all t= he magic begins\n ;;\n ;; This file loads Org-mode and then loads t= he rest of our Emacs initialization from Emacs lisp\n ;; embedded in li= terate 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 (fi= le-name-directory (or (buffer-file-name) load-file-name)))\n \n (le= t* ((org-dir (expand-file-name\n \"lisp\" (expand-file= -name\n \"org\" (expand-file-name\n = \"src\" dotfiles-dir))))\n (org-contri= b-dir (expand-file-name\n \"lisp\" (expand-fil= e-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-ba= bel\n (require 'org-install)\n (require 'ob-tangle))\n \n = ;; load up all literate org-mode files in this directory\n (mapc #'o= rg-babel-load-file (directory-files dotfiles-dir t \"\\\\.org$\"))\n \n= ;;; init.el ends here\n #+end_src\n4) implement all of your Emacs cu= stomizations inside of Emacs Lisp\n code blocks embedded in Org-mode file= s in this directory;\n and\n5) re-start Emacs to load the customizations= .\n\n* Reproducible Research\n :PROPERTIES:\n :CUSTOM_ID: reproducable-re= search\n :END:\n#+begin_quote \nAn article about computational science in = a scientific publication is\nnot the scholarship itself, it is merely adver= tising of the\nscholarship. The actual scholarship is the complete software= \ndevelopment environment and the complete set of instructions which\ngener= ated the figures.\n\n-- D. Donoho\n#+end_quote\n\n[[http://reproduciblerese= arch.net/index.php/Main_Page][Reproducible Research]] (RR) is the practice = of distributing, along with\na research publication, all data, software sou= rce code, and tools\nrequired to reproduce the results discussed in the pub= lication. As\nsuch the RR package not only describes the research and its = results,\nbut becomes a complete laboratory in which the research can be\nr= eproduced and extended.\n\nOrg-mode already has exceptional support for [[h= ttp://orgmode.org/manual/Exporting.html#Exporting][exporting to HTML and\nL= aTeX]]. Babel makes Org-mode a tool for RR by *activating* the\ndata and c= ode blocks embedded in Org-mode documents; the\nentire document becomes exe= cutable. 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 sup= ports multiple languages (we're not aware of other RR tools that do this);\= n - the [[http://orgmode.org/manual/Exporting.html#Exporting][export proces= s]] 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 pl= anning]] and [[http://orgmode.org/manual/TODO-Items.html#TODO-Items][task m= anagement]].\n\n* Footnotes\n[fn:1] Calling =3DC-c C-o=3D on a code block w= ill open the\nblock's results in a separate buffer.\n\n[fn:2] This mode wi= ll 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) 1= 94 195 (fontified t font-lock-fontified t face org-meta-line) 195 265 (font= ified 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-li= ne font-lock-fontified t) 326 327 (fontified t font-lock-fontified t face o= rg-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 (fo= ntified 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-do= cument-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 fo= nt-lock-fontified t) 623 624 (fontified t font-lock-fontified t face org-me= ta-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 (fontif= ied t face org-meta-line font-lock-fontified t) 728 729 (fontified t font-l= ock-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 h= ighlight face org-meta-line keymap (keymap (follow-link . mouse-face) (mous= e-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) font-lock-font= ified t) 764 765 (fontified t org-no-flyspell t mouse-face highlight face o= rg-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 hi= ghlight keymap invisible intangible help-echo org-linked-text) font-lock-fo= ntified t) 765 766 (fontified t font-lock-fontified t face org-meta-line) 7= 66 767 (fontified t) 767 779 (fontified t font-lock-fontified t face org-bl= ock-begin-line font-lock-multiline t) 779 780 (fontified t font-lock-fontif= ied 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 (fo= ntified nil font-lock-fontified t font-lock-multiline t face org-block) 119= 1 1249 (fontified nil font-lock-fontified t org-no-flyspell t mouse-face hi= ghlight 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) (mo= use-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) rear-nonstic= ky (mouse-face highlight keymap invisible intangible help-echo org-linked-t= ext) 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-fo= ntified 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 (fo= ntified t face org-level-1) 1616 1647 (fontified t face org-level-1) 1647 1= 656 (fontified t face (org-tag org-level-1) org-no-flyspell t mouse-face hi= ghlight 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 (fol= low-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-op= en-at-mouse)) rear-nonsticky (mouse-face highlight keymap invisible intangi= ble help-echo org-linked-text)) 1657 1658 (fontified t) 1658 1659 (fontifie= d t face org-hide) 1659 1661 (fontified t face org-level-2) 1661 1665 (font= ified 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 f= ace 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 or= g-hide) 1805 1807 (fontified t face org-level-2) 1807 1811 (fontified t fac= e 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-lev= el-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 (font= ified t) 6550 6552 (fontified t face org-level-1) 6552 6564 (fontified t fa= ce org-level-1) 6564 6565 (fontified t) 6565 6579 (fontified t face org-spe= cial-keyword) 6579 6582 (fontified t) 6582 6593 (fontified t face org-speci= al-keyword) 6593 6594 (fontified t) 6594 6606 (fontified t face org-propert= y-value) 6606 6607 (fontified t) 6607 6614 (fontified t face org-special-ke= yword) 6614 6641 (fontified t) 6641 6643 (fontified t org-no-flyspell t inv= isible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 . org-fi= nd-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 6= 662 (fontified t org-no-flyspell t mouse-face highlight face org-link keyma= p (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mo= use-2 . org-open-at-mouse)) invisible org-link font-lock-multiline t help-e= cho "LINK: file:languages.org") 6662 6663 (fontified t org-no-flyspell t mo= use-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-n= onsticky (mouse-face highlight keymap invisible intangible help-echo org-li= nked-text)) 6663 6666 (fontified t org-no-flyspell t mouse-face highlight f= ace 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-ec= ho "LINK: file:languages.org") 6666 6667 (fontified t org-no-flyspell t mou= se-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-nonst= icky (mouse-face highlight keymap invisible intangible help-echo org-linked= -text) font-lock-multiline t help-echo "LINK: file:languages.org") 6667 668= 6 (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-fac= e 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-a= t-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK: file:= languages.org" rear-nonsticky (mouse-face highlight keymap invisible intang= ible help-echo org-linked-text) face org-link) 6687 6688 (fontified t org-n= o-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 keyma= p (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mo= use-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t help= -echo "LINK: file:languages.org" rear-nonsticky (mouse-face highlight keyma= p 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 k= eymap (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 (follo= w-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 highli= ght 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 (mous= e-face highlight keymap invisible intangible help-echo org-linked-text)) 67= 93 6800 (fontified t org-no-flyspell t mouse-face highlight face org-link k= eymap (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 highl= ight 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-f= ace highlight keymap invisible intangible help-echo org-linked-text) font-l= ock-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)) mo= use-face highlight font-lock-multiline t help-echo "LINK: http://orgmode.or= g/" face org-link) 6802 6803 (fontified t org-no-flyspell t invisible org-l= ink keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-m= ouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multili= ne t help-echo "LINK: http://orgmode.org/" rear-nonsticky (mouse-face highl= ight 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-e= mphasis 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 (or= g-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 (fon= tified t face (bold)) 7819 8041 (fontified t) 8041 8043 (fontified t org-no= -flyspell t invisible org-link keymap (keymap (follow-link . mouse-face) (m= ouse-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-flyspel= l 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)) inv= isible org-link font-lock-multiline t help-echo "LINK: http://orgmode.org/m= anual/Literal-examples.html") 8091 8092 (fontified t org-no-flyspell t mous= e-face highlight face org-link keymap (keymap (follow-link . mouse-face) (m= ouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) invisible o= rg-link font-lock-multiline t help-echo "LINK: http://orgmode.org/manual/Li= teral-examples.html" rear-nonsticky (mouse-face highlight keymap invisible = intangible help-echo org-linked-text)) 8092 8094 (fontified t org-no-flyspe= ll 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)) fo= nt-lock-multiline t help-echo "LINK: http://orgmode.org/manual/Literal-exam= ples.html") 8094 8095 (fontified t org-no-flyspell t mouse-face highlight f= ace 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 hi= ghlight keymap invisible intangible help-echo org-linked-text) font-lock-mu= ltiline t help-echo "LINK: http://orgmode.org/manual/Literal-examples.html"= ) 8095 8101 (fontified t org-no-flyspell t keymap (keymap (follow-link . mo= use-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 or= g-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 . org-fi= nd-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-= lock-multiline t help-echo "LINK: http://orgmode.org/manual/Literal-example= s.html" rear-nonsticky (mouse-face highlight keymap invisible intangible he= lp-echo org-linked-text) face org-link) 8102 8103 (fontified t org-no-flysp= ell 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 highli= ght font-lock-multiline t help-echo "LINK: http://orgmode.org/manual/Litera= l-examples.html" face org-link) 8103 8104 (fontified t org-no-flyspell t in= visible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 . org-f= ind-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight font= -lock-multiline t help-echo "LINK: http://orgmode.org/manual/Literal-exampl= es.html" rear-nonsticky (mouse-face highlight keymap invisible intangible h= elp-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-li= nk . 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 invis= ible 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-lo= ck-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-l= ink . 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: #sourc= e-code-blocks" face org-link) 8136 8137 (fontified t org-no-flyspell t keym= ap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (m= ouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t hel= p-echo "LINK: #source-code-blocks" rear-nonsticky (mouse-face highlight key= map invisible intangible help-echo org-linked-text) face org-link) 8137 813= 8 (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-a= t-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK: #sour= ce-code-blocks" face org-link) 8138 8139 (fontified t org-no-flyspell t inv= isible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 . org-fi= nd-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-= lock-multiline t help-echo "LINK: #source-code-blocks" rear-nonsticky (mous= e-face highlight keymap invisible intangible help-echo org-linked-text) fac= e org-link) 8139 8168 (fontified t) 8168 9099 (fontified nil) 9099 9100 (fo= ntified 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-s= pecial-keyword) 9138 9141 (fontified t) 9141 9152 (fontified t face org-spe= cial-keyword) 9152 9153 (fontified t) 9153 9168 (fontified t face org-prope= rty-value) 9168 9171 (fontified t) 9171 9180 (fontified t face org-special-= keyword) 9180 9182 (fontified t) 9182 9188 (fontified t face org-property-v= alue) 9188 9189 (fontified t) 9189 9196 (fontified t face org-special-keywo= rd) 9196 9388 (fontified t) 9388 9390 (fontified t org-no-flyspell t invisi= ble 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-loc= k-multiline t help-echo "LINK: file:../../org-faq.org::keeping-current-with= -Org-mode-development" face org-link) 9390 9456 (fontified t org-no-flyspel= l 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)) inv= isible org-link font-lock-multiline t help-echo "LINK: file:../../org-faq.o= rg::keeping-current-with-Org-mode-development") 9456 9457 (fontified t org-= no-flyspell t mouse-face highlight face org-link keymap (keymap (follow-lin= k . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-m= ouse)) invisible org-link font-lock-multiline t help-echo "LINK: file:../..= /org-faq.org::keeping-current-with-Org-mode-development" rear-nonsticky (mo= use-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-mous= e) (mouse-2 . org-open-at-mouse)) font-lock-multiline t help-echo "LINK: fi= le:../../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 invisi= ble intangible help-echo org-linked-text) font-lock-multiline t help-echo "= LINK: file:../../org-faq.org::keeping-current-with-Org-mode-development") 9= 464 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)) mo= use-face highlight font-lock-multiline t help-echo "LINK: file:../../org-fa= q.org::keeping-current-with-Org-mode-development" face org-link) 9497 9498 = (fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-face) (m= ouse-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::ke= eping-current-with-Org-mode-development" rear-nonsticky (mouse-face highlig= ht keymap invisible intangible help-echo org-linked-text) face org-link) 94= 98 9499 (fontified t org-no-flyspell t invisible org-link keymap (keymap (f= ollow-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 or= g-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) (mous= e-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t help-e= cho "LINK: file:../../org-faq.org::keeping-current-with-Org-mode-developmen= t" rear-nonsticky (mouse-face highlight keymap invisible intangible help-ec= ho org-linked-text) face org-link) 9500 9636 (fontified t) 9636 9929 (fonti= fied 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 (f= ontified t face org-special-keyword) 9976 9977 (fontified t) 9977 9995 (fon= tified t face org-property-value) 9995 9996 (fontified t) 9996 10005 (fonti= fied t face org-special-keyword) 10005 10007 (fontified t) 10007 10008 (fon= tified t face org-hide) 10008 10010 (fontified t face org-level-2) 10010 10= 028 (fontified t face org-level-2) 10028 10029 (fontified t) 10029 10045 (f= ontified t face org-special-keyword) 10045 10050 (fontified t) 10050 10061 = (fontified t face org-special-keyword) 10061 10062 (fontified t) 10062 1008= 4 (fontified t face org-property-value) 10084 10085 (fontified t) 10085 100= 94 (fontified t face org-special-keyword) 10094 10119 (fontified t) 10119 1= 0121 (fontified t org-no-flyspell t invisible org-link keymap (keymap (foll= ow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-ope= n-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK: ht= tp://orgmode.org/manual/Literal-examples.html" face org-link) 10121 10169 (= fontified t org-no-flyspell t mouse-face highlight face org-link keymap (ke= ymap (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 (fontif= ied 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 10= 173 (fontified t org-no-flyspell t mouse-face highlight face org-link keyma= p (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mo= use-2 . org-open-at-mouse)) font-lock-multiline t help-echo "LINK: http://o= rgmode.org/manual/Literal-examples.html") 10173 10174 (fontified t org-no-f= lyspell 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-ec= ho org-linked-text) font-lock-multiline t help-echo "LINK: http://orgmode.o= rg/manual/Literal-examples.html") 10174 10180 (fontified t org-no-flyspell = t keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mou= se) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline= t help-echo "LINK: http://orgmode.org/manual/Literal-examples.html" face o= rg-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-a= t-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK: http:= //orgmode.org/manual/Literal-examples.html" rear-nonsticky (mouse-face high= light keymap invisible intangible help-echo org-linked-text) face org-link)= 10181 10182 (fontified t org-no-flyspell t invisible org-link keymap (keym= ap (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 (fo= llow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-o= pen-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 fo= nt-lock-multiline t help-echo "LINK: http://orgmode.org/manual/Literal-exam= ples.html" face org-link) 10336 10384 (fontified t org-no-flyspell t mouse-= face highlight face org-link keymap (keymap (follow-link . mouse-face) (mou= se-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/Lite= ral-examples.html") 10384 10385 (fontified t org-no-flyspell t mouse-face h= ighlight 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-ex= amples.html" rear-nonsticky (mouse-face highlight keymap invisible intangib= le help-echo org-linked-text)) 10385 10392 (fontified t org-no-flyspell t m= ouse-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-loc= k-multiline t help-echo "LINK: http://orgmode.org/manual/Literal-examples.h= tml") 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 highli= ght keymap invisible intangible help-echo org-linked-text) font-lock-multil= ine t help-echo "LINK: http://orgmode.org/manual/Literal-examples.html") 10= 393 10399 (fontified t org-no-flyspell t keymap (keymap (follow-link . mous= e-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) m= ouse-face highlight font-lock-multiline t help-echo "LINK: http://orgmode.o= rg/manual/Literal-examples.html" face org-link) 10399 10400 (fontified t or= g-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 . org-fi= nd-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-= lock-multiline t help-echo "LINK: http://orgmode.org/manual/Literal-example= s.html" rear-nonsticky (mouse-face highlight keymap invisible intangible he= lp-echo org-linked-text) face org-link) 10400 10401 (fontified t org-no-fly= spell 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 high= light font-lock-multiline t help-echo "LINK: http://orgmode.org/manual/Lite= ral-examples.html" face org-link) 10401 10402 (fontified t org-no-flyspell = t invisible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 . o= rg-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-ex= amples.html" rear-nonsticky (mouse-face highlight keymap invisible intangib= le help-echo org-linked-text) face org-link) 10402 10446 (fontified t) 1044= 6 10477 (fontified t org-no-flyspell t invisible org-link keymap (keymap (f= ollow-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-fac= e highlight font-lock-multiline t help-echo "LINK: #reference-and-documenta= tion" rear-nonsticky (mouse-face highlight keymap invisible intangible help= -echo org-linked-text) face org-link) 10478 10496 (fontified t org-no-flysp= ell 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-multi= line t help-echo "LINK: #reference-and-documentation" face org-link) 10496 = 10497 (fontified t org-no-flyspell t keymap (keymap (follow-link . mouse-fa= ce) (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-docum= entation" rear-nonsticky (mouse-face highlight keymap invisible intangible = help-echo org-linked-text) face org-link) 10497 10498 (fontified t org-no-f= lyspell t invisible org-link keymap (keymap (follow-link . mouse-face) (mou= se-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face hi= ghlight font-lock-multiline t help-echo "LINK: #reference-and-documentation= " face org-link) 10498 10499 (fontified t org-no-flyspell t invisible org-l= ink keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-m= ouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multili= ne t help-echo "LINK: #reference-and-documentation" rear-nonsticky (mouse-f= ace highlight keymap invisible intangible help-echo org-linked-text) face o= rg-link) 10499 10525 (fontified t) 10525 12132 (fontified nil) 12132 12133 = (fontified t) 12133 12135 (fontified t face org-level-1) 12135 12156 (fonti= fied 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 (fontifi= ed t face org-property-value) 12211 12212 (fontified t) 12212 12221 (fontif= ied t face org-special-keyword) 12221 12254 (fontified t) 12254 12267 (font= ified t face (bold) font-lock-multiline t org-emphasis t) 12267 12646 (font= ified 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) 2= 4587 24588 (fontified t) 24588 24602 (fontified t face org-special-keyword)= 24602 24605 (fontified t) 24605 24616 (fontified t face org-special-keywor= d) 24616 24617 (fontified t) 24617 24628 (fontified t face org-property-val= ue) 24628 24629 (fontified t) 24629 24636 (fontified t face org-special-key= word) 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 fo= nt-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 key= map (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 he= lp-echo "LINK: arguments-to-source-code-blocks" rear-nonsticky (mouse-face = highlight keymap invisible intangible help-echo org-linked-text) face org-l= ink) 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-mo= use)) mouse-face highlight font-lock-multiline t help-echo "LINK: arguments= -to-source-code-blocks" face org-link) 24724 24725 (fontified t org-no-flys= pell t keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-a= t-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-mult= iline t help-echo "LINK: arguments-to-source-code-blocks" rear-nonsticky (m= ouse-face highlight keymap invisible intangible help-echo org-linked-text) = face org-link) 24725 24726 (fontified t org-no-flyspell t invisible org-lin= k keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mou= se) (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 2= 4727 (fontified t org-no-flyspell t invisible org-link keymap (keymap (foll= ow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-ope= n-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK: ar= guments-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-mous= e) (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-fa= ce) (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 keym= ap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (m= ouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline t hel= p-echo "LINK: #results-value" face org-link) 24772 24773 (fontified t org-n= o-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-loc= k-multiline t help-echo "LINK: #results-value" rear-nonsticky (mouse-face h= ighlight keymap invisible intangible help-echo org-linked-text) face org-li= nk) 24773 24774 (fontified t org-no-flyspell t invisible org-link keymap (k= eymap (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-ech= o "LINK: #results-value" face org-link) 24774 24775 (fontified t org-no-fly= spell 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 high= light font-lock-multiline t help-echo "LINK: #results-value" rear-nonsticky= (mouse-face highlight keymap invisible intangible help-echo org-linked-tex= t) face org-link) 24775 24877 (fontified t) 24877 24879 (fontified t org-no= -flyspell t invisible org-link keymap (keymap (follow-link . mouse-face) (m= ouse-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 (fol= low-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-op= en-at-mouse)) invisible org-link font-lock-multiline t help-echo "LINK: htt= p://orgmode.org/manual/The-spreadsheet.html#The-spreadsheet") 24942 24943 (= fontified t org-no-flyspell t mouse-face highlight face org-link keymap (ke= ymap (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-l= inked-text)) 24943 24950 (fontified t org-no-flyspell t mouse-face highligh= t face org-link keymap (keymap (follow-link . mouse-face) (mouse-3 . org-fi= nd-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-spre= adsheet") 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 . mo= use-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-fac= e 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) (mou= se-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-li= nk keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mo= use) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multilin= e t help-echo "LINK: http://orgmode.org/manual/The-spreadsheet.html#The-spr= eadsheet" rear-nonsticky (mouse-face highlight keymap invisible intangible = help-echo org-linked-text) face org-link) 24979 25071 (fontified t) 25071 2= 5072 (fontified t org-no-flyspell t) 25072 25081 (fontified t face (org-cod= e) org-no-flyspell t font-lock-multiline t org-emphasis t) 25081 25082 (fon= tified 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-keywo= rd) 30604 30605 (fontified t) 30605 30621 (fontified t face org-property-va= lue) 30621 30622 (fontified t) 30622 30629 (fontified t face org-special-ke= yword) 30629 30643 (fontified t) 30643 30645 (fontified t org-no-flyspell t= invisible org-link keymap (keymap (follow-link . mouse-face) (mouse-3 . or= g-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight f= ont-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-mou= se)) invisible org-link font-lock-multiline t help-echo "LINK: http://orgmo= de.org/manual/Library-of-Babel.html#Library-of-Babel") 30710 30711 (fontifi= ed t org-no-flyspell t mouse-face highlight face org-link keymap (keymap (f= ollow-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: h= ttp://orgmode.org/manual/Library-of-Babel.html#Library-of-Babel" rear-nonst= icky (mouse-face highlight keymap invisible intangible help-echo org-linked= -text)) 30711 30713 (fontified t org-no-flyspell t mouse-face highlight fac= e org-link keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-fi= le-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-li= nk keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mo= use) (mouse-2 . org-open-at-mouse)) rear-nonsticky (mouse-face highlight ke= ymap 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-a= t-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 . m= ouse-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://orgmod= e.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 key= map (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 he= lp-echo "LINK: http://orgmode.org/manual/Library-of-Babel.html#Library-of-B= abel" face org-link) 30739 30740 (fontified t org-no-flyspell t invisible o= rg-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-mul= tiline t help-echo "LINK: http://orgmode.org/manual/Library-of-Babel.html#L= ibrary-of-Babel" rear-nonsticky (mouse-face highlight keymap invisible inta= ngible help-echo org-linked-text) face org-link) 30740 30770 (fontified t) = 30770 30844 (fontified t org-no-flyspell t invisible org-link keymap (keyma= p (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 "L= INK: *Simple%20example%20of%20using%20a%20source%20block%20as%20a%20functio= n" 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-multil= ine 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 . o= rg-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%2= 0source%20block%20as%20a%20function" face org-link) 30852 30853 (fontified = t org-no-flyspell t keymap (keymap (follow-link . mouse-face) (mouse-3 . or= g-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse-face highlight f= ont-lock-multiline t help-echo "LINK: *Simple%20example%20of%20using%20a%20= source%20block%20as%20a%20function" rear-nonsticky (mouse-face highlight ke= ymap invisible intangible help-echo org-linked-text) face org-link) 30853 3= 0854 (fontified t org-no-flyspell t invisible org-link keymap (keymap (foll= ow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-ope= n-at-mouse)) mouse-face highlight font-lock-multiline t help-echo "LINK: *S= imple%20example%20of%20using%20a%20source%20block%20as%20a%20function" face= org-link) 30854 30855 (fontified t org-no-flyspell t invisible org-link ke= ymap (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 h= elp-echo "LINK: *Simple%20example%20of%20using%20a%20source%20block%20as%20= a%20function" rear-nonsticky (mouse-face highlight keymap invisible intangi= ble help-echo org-linked-text) face org-link) 30855 30939 (fontified t) 309= 39 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 (font= ified 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 (font= ified t face org-level-1) 32543 32544 (fontified t) 32544 32558 (fontified = t face org-special-keyword) 32558 32561 (fontified t) 32561 32572 (fontifie= d t face org-special-keyword) 32572 32573 (fontified t) 32573 32593 (fontif= ied t face org-property-value) 32593 32594 (fontified t) 32594 32601 (fonti= fied t face org-special-keyword) 32601 32603 (fontified t) 32603 32616 (fon= tified t face org-block-begin-line font-lock-fontified t font-lock-multilin= e t) 32616 32617 (fontified t font-lock-fontified t font-lock-multiline t f= ace org-block-begin-line) 32617 32746 (fontified t font-lock-fontified t fo= nt-lock-multiline t) 32746 32756 (fontified t face (italic) font-lock-multi= line 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 (ital= ic) 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 (fon= tified nil font-lock-fontified t font-lock-multiline t) 33353 33354 (fontif= ied nil font-lock-fontified t font-lock-multiline t face org-meta-line) 333= 54 33365 (fontified nil font-lock-fontified t font-lock-multiline t face or= g-block-end-line) 33365 33366 (fontified nil face org-block-end-line) 33366= 40638 (fontified nil) 40638 40639 (fontified t) 40639 40641 (fontified t f= ace org-level-1) 40641 40662 (fontified t face org-level-1) 40662 40663 (fo= ntified 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 4071= 4 (fontified t) 40714 40721 (fontified t face org-special-keyword) 40721 40= 722 (fontified t) 40722 40736 (fontified t face org-block-begin-line font-l= ock-fontified t font-lock-multiline t) 40736 40737 (fontified t font-lock-f= ontified t font-lock-multiline t face org-block-begin-line) 40737 41031 (fo= ntified t font-lock-fontified t font-lock-multiline t) 41031 41032 (fontifi= ed 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-mous= e) (mouse-2 . org-open-at-mouse)) mouse-face highlight font-lock-multiline = t help-echo "LINK: http://reproducibleresearch.net/index.php/Main_Page" fac= e 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-fin= d-file-at-mouse) (mouse-2 . org-open-at-mouse)) invisible org-link font-loc= k-multiline t help-echo "LINK: http://reproducibleresearch.net/index.php/Ma= in_Page") 41099 41100 (fontified t org-no-flyspell t mouse-face highlight f= ace 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 hel= p-echo org-linked-text)) 41100 41111 (fontified t org-no-flyspell t mouse-f= ace highlight face org-link keymap (keymap (follow-link . mouse-face) (mous= e-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) font-lock-mult= iline t help-echo "LINK: http://reproducibleresearch.net/index.php/Main_Pag= e") 41111 41112 (fontified t org-no-flyspell t mouse-face highlight face or= g-link keymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-a= t-mouse) (mouse-2 . org-open-at-mouse)) rear-nonsticky (mouse-face highligh= t keymap invisible intangible help-echo org-linked-text) font-lock-multilin= e t help-echo "LINK: http://reproducibleresearch.net/index.php/Main_Page") = 41112 41120 (fontified t org-no-flyspell t keymap (keymap (follow-link . mo= use-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://reprodu= cibleresearch.net/index.php/Main_Page" face org-link) 41120 41121 (fontifie= d 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/ind= ex.php/Main_Page" rear-nonsticky (mouse-face highlight keymap invisible int= angible help-echo org-linked-text) face org-link) 41121 41122 (fontified t = org-no-flyspell t invisible org-link keymap (keymap (follow-link . mouse-fa= ce) (mouse-3 . org-find-file-at-mouse) (mouse-2 . org-open-at-mouse)) mouse= -face highlight font-lock-multiline t help-echo "LINK: http://reproducibler= esearch.net/index.php/Main_Page" face org-link) 41122 41123 (fontified t or= g-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-f= ace highlight font-lock-multiline t help-echo "LINK: http://reproducibleres= earch.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 4= 2639 (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 mo= use-face highlight keymap (keymap (follow-link . mouse-face) (mouse-3 . org= -find-file-at-mouse) (mouse-2 . org-open-at-mouse)) help-echo "Footnote def= inition" font-lock-fontified t font-lock-multiline t face org-footnote) 426= 55 42663 (fontified t) 42663 42664 (fontified t org-no-flyspell t) 42664 42= 673 (fontified t face (org-code) org-no-flyspell t font-lock-multiline t or= g-emphasis t) 42673 42674 (fontified t org-no-flyspell t) 42674 42743 (font= ified t) 42743 42749 (fontified t org-no-flyspell t mouse-face highlight ke= ymap (keymap (follow-link . mouse-face) (mouse-3 . org-find-file-at-mouse) = (mouse-2 . org-open-at-mouse)) help-echo "Footnote definition" font-lock-fo= ntified t font-lock-multiline t face org-footnote) 42749 42796 (fontified t= )) :emph-multiline t :for-backend html :skip-before-1st-heading nil :drawer= s (HIDE) :todo-keywords t :tasks t :tags not-in-toc :priority nil :footnote= s t :timestamps nil :archived-trees nil :select-tags ("export") :exclude-ta= gs ("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 :sk= ip-before-1st-heading) :drawers (plist-get opt-plist :drawers) :todo-keywor= ds (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-pl= ist :timestamps) :archived-trees (plist-get opt-plist :archived-trees) :sel= ect-tags (plist-get opt-plist :select-tags) :exclude-tags (plist-get opt-pl= ist :exclude-tags) :add-text (plist-get opt-plist :text) :LaTeX-fragments (= plist-get opt-plist :LaTeX-fragments)) "[=0D\n]") (let* ((opt-plist (org-export-process-option-filters (org-combine-plists = (org-default-export-plist) ext-plist (org-infile-export-plist)))) (body-onl= y (or body-only (plist-get opt-plist :body-only))) (style (concat (if (plis= t-get opt-plist :style-include-default) org-export-html-style-default) (pli= st-get opt-plist :style) (plist-get opt-plist :style-extra) "\n" (if (plist= -get opt-plist :style-include-scripts) org-export-html-scripts))) (html-ext= ension (plist-get opt-plist :html-extension)) valid thetoc have-headings fi= rst-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) (>=3D ... 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-exp= ort-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 :ht= ml opt-plist))) (org-current-export-file buffer-file-name) (level 0) (line = "") (origline "") txt todo (umax nil) (umax-toc nil) (filename (if to-buffe= r 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-director= y buffer-file-name) default-directory)) (buffer (if to-buffer (cond ((eq to= -buffer (quote string)) (get-buffer-create "*Org HTML Export*")) (t (get-bu= ffer-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-va= lidation-link "")) (title (org-html-expand (or (and subtree-p (org-export-g= et-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-no= ndirectory buffer-file-name))) "UNTITLED"))) (link-up (and (plist-get opt-p= list :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 "^\\(\\*+\\)\\([ ]+" or= g-quote-string "\\>\\)")) (inquote nil) (infixed nil) (inverse nil) (email = (plist-get opt-plist :email)) (language (plist-get opt-plist :language)) (k= eywords (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-unmod= ified (remove-text-properties (point-min) (point-max) (quote (:org-license-= to-kill t))))) (message "Exporting...") (setq org-min-level (org-get-min-le= vel lines level-offset)) (setq org-last-level org-min-level) (org-init-sect= ion-numbers) (cond ((and date (string-match "%" date)) (setq date (format-t= ime-string date))) (date) (t (setq date (format-time-string "%Y-%m-%d %T %Z= ")))) (setq lang-words (or (assoc language org-export-language-setup) (asso= c "en" org-export-language-setup))) (set-buffer buffer) (let ((inhibit-read= -only t)) (erase-buffer)) (fundamental-mode) (org-install-letbind) (and (fb= oundp (quote set-buffer-file-coding-system)) (set-buffer-file-coding-system= coding-system-for-write)) (let ((case-fold-search nil) (org-odd-levels-onl= y odd)) (mapc (lambda (x) (set (make-local-variable (nth 2 x)) (plist-get o= pt-plist (car x)))) org-export-plist-vars) (setq umax (if arg (prefix-numer= ic-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\= n\n\n%s\n\n\n\n\n\n\n%s\n%s\n\n\n= %s\n" (format (or (and ... org-export-html-xml-declaration) (cdr ...) (cdr = ...) "") (or charset "iso-8859-1")) language language title (or charset "is= o-8859-1") date author description keywords style mathjax (if (or link-up l= ink-home) (concat (format org-export-html-home/up-format ... ...) "\n") "")= )) (when (plist-get opt-plist :html-preamble) (let ((html-pre (plist-get op= t-plist :html-preamble))) (insert "
\n") (cond ((stringp html-pre) (insert ...)) ((functionp html-pre) (= funcall html-pre)) (t (insert ...))) (insert "\n
\n"))) (insert (forma= t "\n
" (or org-export-html-content-div (nth 1 org-export-h= tml-divs))) "\n

" title "

\n")) (if (and org-expor= t-with-toc (not body-only)) (progn (push (format "%s\n" org-expo= rt-html-toplevel-hlevel (nth 3 lang-words) org-export-html-toplevel-hlevel)= thetoc) (push "
\n" thetoc) (push "\n
  • " thetoc) (setq lines (mapcar (function (lambda ... ... line)) lines= )) (while (> org-last-level (1- org-min-level)) (setq org-last-level (1- or= g-last-level)) (push "
  • \n\n" thetoc)) (push "
    \n" thetoc) (se= tq thetoc (if have-headings (nreverse thetoc) nil)))) (setq head-count 0) (= org-init-section-numbers) (org-open-par) (while (setq line (pop lines) orig= line line) (catch (quote nextline) (when (and inquote (string-match org-out= line-regexp-bol line)) (insert "\n") (org-open-par) (setq inquote nil= )) (when inquote (insert (org-html-protect line) "\n") (throw (quote nextli= ne) nil)) (when (and org-export-with-fixed-width (string-match "^[ ]*:\\(\= \([ ]\\|$\\)\\(.*\\)\\)" line)) (when (not infixed) (setq infixed t) (org-= close-par-maybe) (insert "
    \n")) (insert (org-html-=
    protect (match-string 3 line)) "\n") (when (or (not lines) (not ...)) (setq=
     infixed nil) (insert "
    \n") (org-open-par)) (throw (quote nextline) n= il)) (when (and (get-text-property 0 (quote org-protected) line) (not (< ..= . ...))) (let (par (ind ...)) (when (re-search-backward "\\(

    \\)\\([ =0D= \n]*\\)\\=3D" ... t) (setq par ...) (replace-match "\\2\n")) (insert line "= \n") (while (and lines ... ...) (insert ... "\n")) (and par (insert "

    \n"= ))) (throw (quote nextline) nil)) (when (equal "ORG-BLOCKQUOTE-START" line)= (org-close-par-maybe) (insert "

    \n") (org-open-par) (throw (quo= te nextline) nil)) (when (equal "ORG-BLOCKQUOTE-END" line) (org-close-par-m= aybe) (insert "\n
    \n") (org-open-par) (throw (quote nextline) n= il)) (when (equal "ORG-VERSE-START" line) (org-close-par-maybe) (insert "\n=

    \n") (setq org-par-open t) (setq inverse t) (throw (qu= ote nextline) nil)) (when (equal "ORG-VERSE-END" line) (insert "

    \n") (s= etq org-par-open nil) (org-open-par) (setq inverse nil) (throw (quote nextl= ine) nil)) (when (equal "ORG-CENTER-START" line) (org-close-par-maybe) (ins= ert "\n
    ") (org-open-par) (throw (quote = nextline) nil)) (when (equal "ORG-CENTER-END" line) (org-close-par-maybe) (= insert "\n
    ") (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-w= ith-toc ...) (setq line ...)) (t (setq line ...)))) (setq line (org-html-ha= ndle-time-stamps line)) (or (string-match org-table-hline-regexp line) (str= ing-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 li= ne (concat (substring line 0 ...) " " (org-export-html-get-todo-kwd-class-name = ...) "" (substring line ...)))) (when org-export-with-footnotes (set= q start 0) (while (string-match "\\([^* ].*?\\)\\[\\([0-9]+\\)\\]" line st= art) (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 = (<=3D level ...) (setq head-count ...)) (setq first-heading-pos (or first-h= eading-pos ...)) (org-html-level-start level txt umax (and org-export-with-= toc ...) head-count opt-plist) (when (string-match quote-re line) (org-clos= e-par-maybe) (insert "
    ") (setq inquote t))) ((and org-export-with-tabl=
    es (string-match "^\\([ 	]*\\)\\(|\\|\\+-+\\+\\)" line)) (when (not table-o=
    pen) (setq table-open t table-buffer nil table-orig-buffer nil)) (setq tabl=
    e-buffer (cons line table-buffer) table-orig-buffer (cons origline table-or=
    ig-buffer)) (when (or ... ...) (setq table-open nil table-buffer ... table-=
    orig-buffer ...) (org-close-par-maybe) (insert ...))) (t (when (get-text-pr=
    operty 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 (wh=
    en ... ...) (when ... ... ...)) (cond (... ...) (org-export-preserve-breaks=
     ...)) (let (...) (while ... ... ...)) (insert line "\n"))))) (when inquote=
     (insert "
    \n") (org-open-par)) (org-html-level-start 1 nil umax (and = org-export-with-toc (<=3D level umax)) head-count opt-plist) (when (and (> = umax 0) first-heading-pos) (insert "
    \n")) (save-excursion (goto-char = (point-min)) (while (re-search-forward "\\(\\(

    \\)[^= =00]*?\\)\\(\\(\\2\\)\\|\\'\\)" nil t) (push (match-string 1) footnotes) (r= eplace-match "\\4" t nil) (goto-char (match-beginning 0)))) (when footnotes= (insert (format org-export-html-footnotes-section (nth 4 lang-words) (mapc= oncat (quote identity) (nreverse footnotes) "\n")) "\n")) (let ((bib (org-e= xport-html-get-bibliography))) (when bib (insert "\n" bib "\n"))) (unless b= ody-only (insert "\n") (let ((html-post (plist-get opt-plist :html-po= stamble)) (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 :htm= l-postamble) (insert "\n

    \n")= (cond ((stringp html-post) (insert ...)) ((functionp html-post) (funcall h= tml-post)) ((eq html-post ...) (when ... ...) (when ... ...) (when ... ...)= (when ... ...) (insert html-validation-link "\n")) (t (insert ...))) (inse= rt "\n
    ")))) (if org-export-html-with-timestamp (insert org-export-htm= l-html-helper-timestamp)) (unless body-only (insert "\n\n\n")= ) (unless (plist-get opt-plist :buffer-will-be-killed) (normal-mode) (if (e= q major-mode (default-value (quote major-mode))) (html-mode))) (goto-char (= point-min)) (when thetoc (if (or (re-search-forward "

    \\s-*\\[TABLE-OF-CO= NTENTS\\]\\s-*

    " 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-*

    ") (goto-char (match-end 0))= (insert "\n"))) (insert "
    \n") (let ((beg (= point))) (mapc (quote insert) thetoc) (insert "
    \n") (while (re-search= -backward "
  • [ =0D\n ]*
  • \n?" beg t) (replace-match "")))) (goto-char = (point-min)) (while (re-search-forward "

    [ =0D\n ]*

    " 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-whitespac= e))) (setq n (get-text-property beg (quote org-whitespace)) end (next-singl= e-property-change beg (quote org-whitespace))) (goto-char beg) (delete-regi= on beg end) (insert (format "%s= " (make-string n 120))))) (goto-char (point-min)) (when (looking-at "\\s-+\= n") (replace-match "")) (remove-text-properties (point-min) (point-max) (qu= ote (display t))) (run-hooks (quote org-export-html-final-hook)) (or to-buf= fer (save-buffer)) (goto-char (point-min)) (or (org-export-push-to-kill-rin= g "HTML") (message "Exporting... done")) (if (eq to-buffer (quote string)) = (prog1 (buffer-substring (point-min) (point-max)) (kill-buffer (current-buf= fer))) (current-buffer)))) org-export-as-html(nil nil (:buffer-will-be-killed t :base-directory "~/s= rc/emacs/org/Worg/" :base-extension "org" :exclude "FIXME\\|revtex-sample.o= rg" :makeindex t :auto-sitemap t :sitemap-ignore-case t :html-extension "ht= ml" :publishing-directory "/var/www/orgmode.org/worg/" :publishing-function= (org-publish-org-to-html org-publish-org-to-org) :htmlized-source t :secti= on-numbers nil :table-of-contents nil :style "\n= \n\n\n\n" :recursive t :auto-preamble t :postamble "

    Documentation from the http://orgmode.org/worg/ website (either in it= s HTML format or in its Org format) is licensed under the GNU Free Documentation License version 1.= 3 or later. The code examples are licensed under the GNU General Public License v3 or late= r.

    " :auto-postamble nil) nil nil "/var/www/orgmode.org/worg/org-c= ontrib/babel/") funcall(org-export-as-html nil nil (:buffer-will-be-killed t :base-direct= ory "~/src/emacs/org/Worg/" :base-extension "org" :exclude "FIXME\\|revtex-= sample.org" :makeindex t :auto-sitemap t :sitemap-ignore-case t :html-exten= sion "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 "\n\n\n\n\n" :recursive t :auto-preamble t :postamble "

    Documentation from the http://orgmode.org/worg/ website (eith= er in its HTML format or in its Org format) is licensed under the GNU Free Documentation License = version 1.3 or later. The code examples are licensed under the GNU General Public License v3 or later.

    " :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 (cu= rrent-buffer)) (init-point (point)) (init-buf-string (buffer-string)) expor= t-buf-or-file) (run-hooks (quote org-publish-before-export-hook)) (setq exp= ort-buf-or-file (funcall (intern (concat "org-export-as-" format)) (plist-g= et plist :headline-levels) nil plist nil (plist-get plist :body-only) pub-d= ir)) (when (and (bufferp export-buf-or-file) (buffer-live-p export-buf-or-f= ile)) (set-buffer export-buf-or-file) (progn (run-hooks (quote org-publish-= after-export-hook)) (if (buffer-modified-p) (save-buffer))) (kill-buffer ex= port-buf-or-file)) (set-buffer init-buf) (when (buffer-modified-p init-buf)= (erase-buffer) (insert init-buf-string) (save-buffer) (goto-char init-poin= t)) (unless visiting (kill-buffer init-buf))) (save-excursion (org-pop-to-buffer-same-window (or visiting (find-file fi= lename))) (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-onl= y) 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-b= uffer export-buf-or-file)) (set-buffer init-buf) (when (buffer-modified-p i= nit-buf) (erase-buffer) (insert init-buf-string) (save-buffer) (goto-char i= nit-point)) (unless visiting (kill-buffer init-buf)))) (let ((visiting (find-buffer-visiting filename))) (save-excursion (org-po= p-to-buffer-same-window (or visiting (find-file filename))) (let* ((plist (= cons :buffer-will-be-killed (cons t plist))) (init-buf (current-buffer)) (i= nit-point (point)) (init-buf-string (buffer-string)) export-buf-or-file) (r= un-hooks (quote org-publish-before-export-hook)) (setq export-buf-or-file (= funcall (intern (concat "org-export-as-" format)) (plist-get plist :headlin= e-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 visit= ing (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-sit= emap 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-c= ontents nil :style "\n\n\n\n\n" :recursive t= :auto-preamble t :postamble "" :auto-postam= ble 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 p= roject-plist :makeindex) (cons (quote org-publish-aux-preprocess) org-expor= t-preprocess-after-headline-targets-hook) org-export-preprocess-after-headl= ine-targets-hook))) (org-publish-org-to "html" plist filename pub-dir)) (org-publish-with-aux-preprocess-maybe (org-publish-org-to "html" plist f= ilename pub-dir)) org-publish-org-to-html((:base-directory "~/src/emacs/org/Worg/" :base-ex= tension "org" :exclude "FIXME\\|revtex-sample.org" :makeindex t :auto-sitem= ap t :sitemap-ignore-case t :html-extension "html" :publishing-directory "/= var/www/orgmode.org/worg/" :publishing-function (org-publish-org-to-html or= g-publish-org-to-org) :htmlized-source t :section-numbers nil :table-of-con= tents nil :style "\n\n\n\n\n" :recursive t= :auto-preamble t :postamble "

    Documentation from t= he http://orgmode.org/worg/ website (either in its HTML format or in its Or= g format) is licensed under the GNU Free Documentation License version 1.3 or later. The code = examples are licensed under the GNU General Public License v3 or later.

    " :auto-postam= ble 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 :au= to-sitemap t :sitemap-ignore-case t :html-extension "html" :publishing-dire= ctory "/var/www/orgmode.org/worg/" :publishing-function (org-publish-org-to= -html org-publish-org-to-org) :htmlized-source t :section-numbers nil :tabl= e-of-contents nil :style "\n\n\n\n\n" :rec= ursive t :auto-preamble t :postamble "

    Documentatio= n from the http://orgmode.org/worg/ website (either in its HTML format or i= n its Org format) is licensed under the GNU Free Documentation License version 1.3 or later. T= he code examples are licensed under the GNU General Public License v3 or later.

    " :aut= o-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 filena= me pub-dir f))) (when (org-publish-needed-p filename pub-dir f tmp-pub-dir) (funcall f pr= oject-plist filename tmp-pub-dir) (org-publish-update-timestamp filename pu= b-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-d= ir) (funcall f project-plist filename tmp-pub-dir) (org-publish-update-time= stamp filename pub-dir f))) (org-publish-org-to-html org-publish-org-to-org= )) (if (listp publishing-function) (mapc (lambda (f) (when (org-publish-need= ed-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-fun= ction) (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 fi= lename) (error "File %s not part of any known project" (abbreviate-file-nam= e filename))))) (project-plist (cdr project)) (ftname (expand-file-name fil= ename)) (publishing-function (or (plist-get project-plist :publishing-funct= ion) (quote org-publish-org-to-html))) (base-dir (file-name-as-directory (e= xpand-file-name (or (plist-get project-plist :base-directory) (error "Proje= ct %s does not have :base-directory defined" (car project)))))) (pub-dir (f= ile-name-as-directory (file-truename (or (plist-get project-plist :publishi= ng-directory) (error "Project %s does not have :publishing-directory define= d" (car project)))))) tmp-pub-dir) (unless no-cache (org-publish-initialize= -cache (car project))) (setq tmp-pub-dir (file-name-directory (concat pub-d= ir (and (string-match (regexp-quote base-dir) ftname) (substring ftname (ma= tch-end 0)))))) (if (listp publishing-function) (mapc (lambda (f) (when (or= g-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 publishin= g-function tmp-pub-dir) (funcall publishing-function project-plist filename= tmp-pub-dir) (org-publish-update-timestamp filename pub-dir publishing-fun= ction))) (unless no-cache (org-publish-write-cache-file))) org-publish-file("/home/nick/src/emacs/org/Worg/org-contrib/babel/intro.o= rg") (let ((org-publish-use-timestamps-flag (if force nil org-publish-use-time= stamps-flag))) (org-publish-file (buffer-file-name))) (progn (let ((org-publish-use-timestamps-flag (if force nil org-publish-u= se-timestamps-flag))) (org-publish-file (buffer-file-name)))) (unwind-protect (progn (let ((org-publish-use-timestamps-flag (if force n= il org-publish-use-timestamps-flag))) (org-publish-file (buffer-file-name))= )) (set-window-configuration wconfig)) (let ((wconfig (current-window-configuration))) (unwind-protect (progn (l= et ((org-publish-use-timestamps-flag (if force nil org-publish-use-timestam= ps-flag))) (org-publish-file (buffer-file-name)))) (set-window-configuratio= n wconfig))) (save-window-excursion (let ((org-publish-use-timestamps-flag (if force n= il 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) --=-=-=--