emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] seeking good practices for writing about org using org


From: Charles C. Berry
Subject: Re: [O] seeking good practices for writing about org using org
Date: Thu, 4 Aug 2016 20:05:30 -0700
User-agent: Alpine 2.20 (OSX 67 2015-01-07)

On Thu, 4 Aug 2016, Cook, Malcolm wrote:

Hi Charles,
On Wed, 3 Aug 2016, Cook, Malcolm wrote:

> > Thanks.  Much closer.  Still some issues.  Mind taking another
gander....  (hoping the attached jpeg of the webpage rendered comes
through as an attachment)....
If my emacs buffer holds...
----------------------------------------------
#+BEGIN_SRC org :exports both :results value ascii


> ...............................................^^^^^>>
> what is the `ascii' doing?

> Can you provide a link to documentation in the manual or a
docstring describing its function?

I cannot!  I learned this from reading the code.  In ob-org.el we
find provision for this as well as `html' and `latex'


(defun org-babel-execute:org (body params)
 "Execute a block of Org code with.
This function is called by `org-babel-execute-src-block'."
 (let ((result-params (split-string (or (cdr (assoc :results params)) "")))
               (body (org-babel-expand-body:org
                      (replace-regexp-in-string "^," "" body) params)))
   (cond
    ((member "latex" result-params)
     (org-export-string-as (concat "#+Title: \n" body) 'latex t))
    ((member "html" result-params) (org-export-string-as  body 'html t))
    ((member "ascii" result-params) (org-export-string-as body 'ascii t))
    (t body)
    )))


This is all undocumented.  I think it is a 'nod in the direction' of
what I am trying to accomplish, allowing to see as "results" the org
markup transcoded into the markup of a backend.  See below for my
hack extension on this idea.

Argh! Not even a mention in the docstring!

I think there was a plea a while back for updates for the
missing entries in

./worg/org-contrib/babel/languages.org

but I see `org' has nothing. Sigh!



> Why don't you have 'replace' in the :results args?

Oops.  Of course.  While trying to understand all this, I had done this to 
similar effect instead:

(setq  org-babel-default-header-args:org nil) ; fix bug? NOT silent

If this is set as a default, it is deliberate. But you can just set
it as a property in the buffer.

[stuff deleted]

I played with extending org-babel-execute:org to allow including
 MULTIPLE transcoded markdown results using screwy variant syntax of
 `:results +ascii +html +latex` with some success.

[Malcolm's extension of `org-babel-execute:org' deleted]

Writing a custom org-babel-execute:org is one way to go.

Or slurp the code into another babel block, format it there, and wrap
the results accordingly. This might be best for your purposes. You can
write a block to format the original code, one to format it as latex,
one as html, one as markdown, etc. Put them in your personal
library-of-babel and ingest them. Then #+CALL lines will create the
markup you need for any src block (which you will mark `:exports none'
so all formatting is done by #+CALL's).

HTH,

Chuck



reply via email to

[Prev in Thread] Current Thread [Next in Thread]