to something else, e.g.
I think I found the answer to my second question: in
org-publish-project-alist, there is the property completion-function
that can be set to a (list of) functions to do some post processing.
My first question still stands, though.
Omid
Sent from my Emacs
On 05/26/2014 12:08 AM, Omid wrote:
> Thank you, Eric for your quick response.
> - I am using Org mode 8.2.6 (from ELPA) and Emacs 24.3.1.
> - org-html-divs does almost what I have been looking for, except for
> one, unfortunately crucial, shortcoming: I don't see any way of
> changing the "id" tag to "class". Bootstrap's container is a "class"
> and will not work as an "id". As far as see, I can only do
>
> (setq org-html-divs (quote ((preamble "div" "preamble")
> (content "div" "container")
> (postamble "div" "postamble"))))
>
> Looking at ox-html.el I see that the "id" tag is hard coded:
>
> (list :tag "Content"
> (const :format "" content)
> (string :tag "element") (string :tag " id"))
>
> Am I missing something here?
>
> - I still could not find a "post publish" hook/variable. Neither
> apropos-variable with org publish, apropos with org publish gives me
> anything useful. C-h v reveals org-export-before-parsing-hook and
> org-export-before-processing-hook but I don't see anything with
> "after" or "post". The only way I see around my problem is to define
> an external publishing-function in org-publish-project-alist (maybe
> a makefile) and do the necessary post processing there. Any better
> suggestion is greatly appreciated.
>
> Thanks,
>
> Omid
>
> Sent from my Emacs
>
> On 05/25/2014 10:10 PM, Eric Abrahamsen wrote:
>> Omid <omidl...@gmail.com> writes:
>>
>>> Hello,
>>>
>>> - I am trying to build a statically-generated website purely with Org
>>> mode. I would like to use Bootstrap CSS to make the site mobile
>>> friendly. Bootstrap uses <div class="container"> for the "main" part
>>> of the <body> of HTML; Org mode export produces <div id="content">
>>> for that part.
>>>
>>> Is there a variable to set/way to make Org wrap this part in the
>>> "container" class?
>>>
>>> Looking at several "apropos" results (with all the search keywords I
>>> could think of), I only see a setting for pre/postamble-class:
>>>
>>> org-html--pre/postamble-class
>>> Variable: CSS class used for pre/postamble
>>
>> It would help to know your Org mode version, but I'm pretty sure
>> org-html-divs has been around for a bit. Check out its docstring, and
>> modify its second element, which is '(content "div" "content") by
>> default.
>>
>>> - Assuming there is no Org-internal way to do this, is there a
>>> function that is run after a project is published to that I can,
>>> e.g., run a sed script on the HTML files generated? Again, the only
>>> remotely relevant result I see in M-x apropos RET org post is
>>>
>>> org-babel-post-tangle-hook
>>> Variable: Hook run in code files tangled by `org-babel-tangle'.
>>> Properties: standard-value custom-version custom-type
>>> custom-requests variable-documentation
>>>
>>> - As a "meta question", how would one find the answer to these and
>>> similar questions without leaving Emacs, since we know Emacs is
>>> self-documenting and Org mode has a very comprehensive set of
>>> functions and documentation. Looking in the usual places (C-u M-x
>>> apropos, C-h v) did not lead me to an answer.
>>
>> One good thing to know is that Org export variables related to a certain
>> backend all start with org-BACKEND-*. So you could do C-h v org-html-TAB
>> and see... a lot of variables. Still, that would (eventually) get you
>> there. I did apropos-variable for "org html container" and that got me a
>> similar list as C-h v, albeit slimmed down somewhat, and with
>> docstrings.
>>
>> Hope that helps,
>> Eric
>>
>>