emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] Publishing notes to a website


From: Eric Schulte
Subject: Re: [O] Publishing notes to a website
Date: Tue, 26 Apr 2011 18:41:18 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Having not read the whole thread I apologize if I'm retracing already
covered ground.  I've had success using Org's built in projects [1].
Although this results in a flat html web-site it is easy to impose a
consistent theme, and to publish large numbers of files.

To give some personal examples my homepage [2], and even the wiki for my
lab [3] are both published using Org-mode's publishing facilities, the
latter with a git repository backend and some fancy post_update hooks.
For smaller sites (like my home page) I just include the project
definition in an elisp block in a commented heading of the main Org-mode
file (e.g., [4]), and for larger efforts I define the projects in a
separate elisp file, or even in an external script which can be run with
an Emacs batch instance.

Hope this helps. Best -- Eric

'Mash <address@hidden> writes:

> Quoting William Gardella <address@hidden>:
>
>> 'Mash <address@hidden> writes:
>>
>>> Quoting Thomas Herbert <address@hidden>:
>>>> Kyle Sexton <ks <at> mocker.org> writes:
>>>>
>>>>> I'm looking for advice on ways people are publishing their org notes
>>>>> to a website.  So far I've looked at blorgit and it's really nice, but
>>>>> the dependency for a backend emacs session and running through sinatra
>>>>> makes me wary of putting it out on my server for the world.
>>>>>
>>>>> 1.  What methods are people using to publish their org notes?
>>>>> 2.  Anyone have sample sites that I can see what the output looks like?
>>>>
>>>> Kyle,
>>>>
>>>> I have been actually been working on a simple clean solution for
>>>> writing in org-mode and keeping the file as org-mode. What I have
>>>> come up with is a "Textile" like PHP class that translates org-mode
>>>> files into HTML.
>>>>
>>>> It is still very very alpha and hope to release the code soon for
>>>> people to look at, work and improve or completely scrap and take my
>>>> idea and do it better.
>>>
>>> As I mentioned earlier I have been playing around building a regex
>>> parser in PHP for Org-Mode files. As you will see I am obviously an
>>> amateur programmer and my hope is that if this is at all useful then
>>> someone else will rewrite it. My site http://toshine.org uses both the
>>> classOrgile and the Orgile CMS. If you look at the bottom of any
>>> article you will see the link to the raw .org file that is
>>> parsed/converted to HTML.
>>>
>>> ---
>>> The classOrgile PHP class (very limited currently!).
>>> http://toshine.org/etc/files/classorgile.php.txt
>>>
>>> The Orgile PHP flat file CMS (currently used for http://toshine.org).
>>> http://toshine.org/etc/files/orgile.php.txt
>>>
>>> The Orgile PHP flat file CMS (fully commented code).
>>> http://toshine.org/etc/files/orgile-commented.php.txt
>>> ---
>>>
>>> Well I hope it is at least interesting for someone on this list.
>>>
>>> 'Mash
>>
>> Limited though it may be, I'm extremely impressed with the results you
>> are getting out of this little flat-file CMS :)
>>
>> It seems like a more "blog" (periodical literature)-like solution than
>> Blorgit, which in spite of its name is really a wiki framework.  I think
>> I'll be trying this in my sandbox soon :)
>>
>> Will
>>
>>
>
> Thanks Will, and do let me know if you need any help deciphering my
> code. It looks a lot better in php-mode!
> It really is actually a very simple program, and really easy to remove
> what you don't need and add what you want.
> You have my email address so pop me a line whenever.
>
> Thanks
>
> 'Mash
>
>
>
>
>


Footnotes: 
[1]  http://orgmode.org/manual/Publishing.html

[2]  http://cs.unm.edu/~eschulte/

[3]  http://wiki.adaptive.cs.unm.edu/

[4]  the attached snippet of org-mode is adapted from my homepage.
** COMMENT publishing

This code is used to publish this page to the cs.unm.edu webserver.
For more information on publishing Org-mode pages see the 
[[http://orgmode.org/manual/Publishing.html#Publishing][Publishing
section]] of the [[http://orgmode.org/manual/index.html#Top][Org-mode manual]].

#+begin_src emacs-lisp :results silent
  (setq homepage-dir (file-name-directory (or load-file-name buffer-file-name)))
  (unless (boundp 'org-publish-project-alist)
    (setq org-publish-project-alist nil))
  ;; the main html page
  (add-to-list 'org-publish-project-alist
               `("homepage-html"
                  :base-directory ,homepage-dir
                  :base-extension "org"
                  :publishing-directory "/ssh:address@hidden:~/public_html/"
                  :html-postamble ; replaces the auto-generated postamble
                  "<div class=\"clear-fix\"></div> custom-postamble </div>"
                  :style "<link 
rel=\"stylesheet\"href=\"data/stylesheet.css\"type=\"text/css\">"))
  ;; the contents of the data/ directory, css, images, etc...
  (add-to-list 'org-publish-project-alist
               `("homepage-data"
                 :base-directory ,(expand-file-name "data" homepage-dir)
                 :base-extension "jpg\\|gif\\|png\\|pdf\\|css\\|bib"
                  :publishing-directory 
"/ssh:address@hidden:~/public_html/data/"
                  :publishing-function org-publish-attachment))
  ;; a single combined project to publish both html and supporting materials
  (add-to-list 'org-publish-project-alist
               '("homepage" :components
                 ("homepage-html" "homepage-data")))
#+end_src

-- 
Eric Schulte
http://cs.unm.edu/~eschulte/

reply via email to

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