From: "Charles C. Berry" <ccberry@ucsd.edu>
To: Matt Price <moptop99@gmail.com>
Cc: Org Mode <emacs-orgmode@gnu.org>
Subject: Re: including external file in src block execution; ATTR_HTML on src blocks
Date: Mon, 12 Dec 2016 19:52:23 -0800 [thread overview]
Message-ID: <alpine.OSX.2.20.1612121926120.3056@charles-berrys-macbook.local> (raw)
In-Reply-To: <CAN_Dec-tEDYtDXVcLCKd=+KOq-R+yPK5p2M3vW4jnwvGGSp1Hg@mail.gmail.com>
On Mon, 12 Dec 2016, Matt Price wrote:
> On Mon, Dec 12, 2016 at 12:16 PM, Charles C. Berry <ccberry@ucsd.edu> wrote:
>
>> On Mon, 12 Dec 2016, Matt Price wrote:
>>
>>
>> [snip]
>>
>>
>>> My questions are:
>>> 1. can I pass this html attribute to the <pre><code> block somehow?
>>>
>>
>> Yes.
>>
>> ATTR_HTML doesn't seem to work. Is this a bug? If so, should I try to fix
>>> it?
>>>
>>
>> No and no.
>>
>> Did you try
>>
>> : (plist-get (cadr src-block) :attr_html)
>>
>> in `org-html-src-block' ?
>>
>>
> ah, ok. Now I will reveal some of the depths of my ignorance. Looks like
> :attr_html is a plist (right?).
No, it is a property name. (cadr src-block) is the plist.
See (info "(elisp) Property Lists")
> (a) what is the appropriate way to identify an attribute here. should I
> write, e.g.:
>
> #+ATTR_HTML: :data-external-libs "http://underscorejs.org/underscore-min.js"
> :class "list of classes"
Any could be made to work, but I'd use (a). Then
: (org-babel-parse-header-arguments
: (car (plist-get (cadr src-block) :attr_html)))
will give you
: ((:data-external-libs . "http://underscorejs.org/underscore-min.js")
: (:class . "list of classes"))
> or:
> #+ATTR_HTML: data-external-libs "http://underscorejs.org/underscore-min.js"
> class "list of classes"
> or
> #+ATTR_HTML: "data-external-libs" "http://underscorejs.org/underscore-min.js"
> "class" "list of classes"
>
> And then, if I want to transform this into:
>
> data-external-libs="http://underscorejs.org/underscore-min.js" class="list
> of classes"
>
> can I just do something like:
> (let ((attributes (org-export-get-attribute :attr_html src-block))
> (cl-loop for (key value) in attributes
> (collect (concat key "=" "\"" value "\" " ))))
>
> or do I need to transform the key into a string first?
Well, I'd just try it and see.
> I'm sorry to be writing such basic lisp questions; obviously I need to read
> a really good lisp introduction, but I haven't found one yet.
>
This is what I use:
* Elisp: (elisp). The Emacs Lisp Reference Manual.
* Emacs Lisp Intro: (eintr). A simple introduction to Emacs Lisp programming.
and ample Googling, usually leading to StackOverflow, to get hints on
stuff I am fuzzy on. And I read docstrings over and over and ...
Best,
Chuck
next prev parent reply other threads:[~2016-12-13 3:52 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-12 14:12 including external file in src block execution; ATTR_HTML on src blocks Matt Price
2016-12-12 17:16 ` Charles C. Berry
2016-12-12 20:53 ` Matt Price
2016-12-13 3:52 ` Charles C. Berry [this message]
[not found] ` <CAN_Dec8=72-TvAGD82=tKLPUEO6qD4Mub4RV-hXUrVReHDqRyQ@mail.gmail.com>
2016-12-13 14:44 ` Fwd: " Matt Price
2016-12-14 4:08 ` Charles C. Berry
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.orgmode.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=alpine.OSX.2.20.1612121926120.3056@charles-berrys-macbook.local \
--to=ccberry@ucsd.edu \
--cc=emacs-orgmode@gnu.org \
--cc=moptop99@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).