emacs-orgmode
[Top][All Lists]
Advanced

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

[Orgmode] Re: Org publish hierarchies and style variable


From: Bernt Hansen
Subject: [Orgmode] Re: Org publish hierarchies and style variable
Date: Wed, 29 Oct 2008 13:59:33 -0400
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (gnu/linux)

address@hidden writes:

> A question: The org-publish tutorial recommends the use of template
> files for setting the relative link to the stylesheet for nested
> directories to be published to html.
>  
> - http://orgmode.org/worg/org-tutorials/org-publish-html-tutorial.php
>
> E.g., 
>
> For first level directories such as 
>
>   ~/org/
>       |- css/
>       |  |- stylesheet.css
>       |- index.org
>       |- Emacs
>       |   |- index.org 
>                          
> ~/org/Emacs/index.org would contain the following:
>
> #+SETUPFILE: ~/.emacs.d/level-1.org
>
> which points to a setupfile with the option:
>
> #+STYLE: <link rel="stylesheet" type="text/css"\
>          href="../stylesheet.css" />
>
> My question: Instead of this method, which I find a little tedious,
> I've created a hardlink to the master css directory in each
> subdirectory of my project. As a result the, css files get copied to
> each subdirectory in my public web directory and I only need to
> specify a single style option in my org-publish-alist.
>
> Apart from taking up extra disk space on the server (and thus being
> less economical), are there any other potential problems with this
> approach? I'm using org as a wiki and have a lot of org files in each
> subdirectory. This approach seems easier than having to add and tweak
> the SETUPFILE option for each new org file. 

I have lots of org files generating documents (some public, most not) at
http://doc.norang.ca/

,----
| Most of the public documents in doc.norang.ca have outdated
| information but the 'How to use git' document might be of interest to
| people on this mailing list.
`----

I wrote a simple Python CGI script that picks up any HTML file in that
directory and displays it on the index page.  Each page uses the same
CSS file.

I have one entry for CSS which I share between all of my pages:

,----[ part of my org-publish-project-alist ]
|  ("doc-org" :base-directory "~/git/doc.norang.ca/" :publishing-directory 
"/ssh:address@hidden:~/doc.norang.ca/htdocs" :recursive t :section_numbers nil 
:table-of-contents nil :base-extension "org" :publishing-function 
org-publish-org-to-html :style "<link rel=\"stylesheet\"\n                  
href=\"/org.css\"\n                  type=\"text/css\">" :author-info nil 
:creator-info nil)
|  ("doc-css" :base-directory "~/git/doc.norang.ca/" :publishing-directory 
"/ssh:address@hidden:~/doc.norang.ca/htdocs" :base-extension "css" 
:publishing-function org-publish-attachment :recursive t :author nil)
|  ("doc" :components
|   ("doc-org" "doc-css"))
`----

I create docs in subdirectories under http://doc.norang.ca/ and each
document uses the css file in the root directory.  All the documents use
the same CSS file and therefore look the same.  You could of course
specify a fixed address for the stylesheet - there's no requirement to
use relative addressing for your stylesheets at all (i.e. I could have
replaced "/org.css" with "http://doc.norang.ca/org.css"; and I'm free to
use that stylesheet for any page (even stuff not in the doc.norang.ca
domain)

Feel free to steal it if you like it :)

Maybe some of that is useful...

-Bernt




reply via email to

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