emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Ian Barton <ian@manor-farm.org>
To: Christopher Allan Webber <cwebber@dustycloud.org>
Cc: emacs-orgmode@gnu.org
Subject: Re: Org as a static site generator
Date: Sat, 6 Apr 2013 09:01:54 +0100	[thread overview]
Message-ID: <20130406080154.GA13510@mail2.wilkesley.net> (raw)
In-Reply-To: <87li8x6k3z.fsf@earlgrey.lan>

On Fri, Apr 05, 2013 at 11:02:56AM -0500, Christopher Allan Webber wrote:
> Ian Barton writes:
>
> > On 01/04/13 13:08, Vincent Beffara wrote:
> >
> >> Yes, I mean, I know which html you need for that, simply within o-blog you need to manage between relative paths, absolute paths, canonical paths and so on in the template, to match the right section,  - mainly it should be a matter of let-ing the right variable to the right value at the right point in the template and catching it when generating the toc, but I never took the time to get it right ...
> >>> I've also just found this, which uses Org only as a markup tool and
> >>> Jekyll to generate the site:
> >>>
> >>> http://orgmode.org/worg/org-tutorials/org-jekyll.html
> >> I had a look at the too, but it felt just a little bit too convoluted compared to managing everything from Org. Besides, it seems to lose fontification of code snippets and the like?
> >>
> >> /v
> >>
> > As the original author of that page, I agree that using Jekyll is
> > convoluted, but it gives you much more control. However I now use
> > Pelican: https://pelican.readthedocs.org/en/3.1.1/
> >
> > There are a few reasons for this. Pelican is written in Python, which I
> > find easier to hack on. It is more flexible than Jekyll, which I found
> > hard to get to work the way I wanted with categories and tags.
> >
> > I wrote a yaml importer for Pelican so I could use my old jekyll posts.
> > However, Pelican understands Markdown, which I think the new exporter
> > supports.
> >
> > So my work flow now is Emacs-> export as html -> run Jekyll
> >
> > Ian.
>
> Heya Ian,
>
> I've been planning to switch my blog over to pelican.  It's cool to hear
> you say this.
>
> Is there any special elisp you use for the export, including converting
> things like the title, etc?
>
> Thanks!
>  - Chris


Hi Chris,

No, nothing special. I just use org's standard publish functions. However, I publish only the body part of the html and place the yaml tags in the org file. A typical org file for a blog post would look like:


#+STARTUP: showall indent
#+STARTUP: hidestars
#+OPTIONS: H:2 num:nil tags:nil toc:nil timestamps:nil
#+BEGIN_HTML
---
title: My Fire Steel Crumbles to Dust.
date: 2013-02-17
tags: [gear]
category: blog

---
#+END_HTML

After my walk over Moel Famau and Moel Arthur I was looking forward
to making a hot drink. My brew kit lives permanently in the boot of



org pubish then creates a file with a yaml header and html body text. Then I just run Pelican to publish the post. I have written a Pelican yaml reader which converts the yaml files to allow Pelican to process them. I'll document the whole process over the next couple of days and put it on Worg. I keep meaning to contribute my yaml reader back to Pelican, but it's quite specific to publishing org-mode files and not really a general purpose yaml importer.


--

Best wishes,

Ian.

  reply	other threads:[~2013-04-06  8:02 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-01 11:12 Org as a static site generator David Engster
2013-04-01 11:29 ` Vincent Beffara
2013-04-01 11:54   ` David Engster
2013-04-01 12:08     ` Vincent Beffara
2013-04-01 19:09       ` Ian Barton
2013-04-05 16:02         ` Christopher Allan Webber
2013-04-06  8:01           ` Ian Barton [this message]
2013-04-06 15:15             ` Christopher Allan Webber
2013-04-06 16:13               ` Ian Barton
2013-04-10  9:17 ` 'Mash (Thomas Herbert)
2013-04-10 16:59   ` Bastien
2013-05-27 23:48     ` François Pinard
2013-05-29 13:16       ` Eric Schulte

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=20130406080154.GA13510@mail2.wilkesley.net \
    --to=ian@manor-farm.org \
    --cc="ian@manor-farm.org"@li40-130.members.linode.com \
    --cc=cwebber@dustycloud.org \
    --cc=emacs-orgmode@gnu.org \
    /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).