Initial commit

This commit is contained in:
Tom Willemse 2013-09-23 00:30:00 +02:00
commit 90feb1b23f
2 changed files with 44 additions and 0 deletions

1
README.org Normal file
View file

@ -0,0 +1 @@
Use Emacs org-mode as markup.

43
org.pm Executable file
View file

@ -0,0 +1,43 @@
#!/usr/bin/perl
# org-mode markup
# based on the WikiCreole plugin.
package IkiWiki::Plugin::org;
use warnings;
use strict;
use IkiWiki 3.00;
sub import {
hook(type => "getsetup", id => "org", call => \&getsetup);
hook(type => "htmlize", id => "org", call => \&htmlize);
}
sub getsetup {
return plugin => {
safe => 0,
rebuild => 1, # format plugin
section => "format",
},
}
sub htmlize (@) {
my %params=@_;
my $content = $params{content};
print($params{page});
open(my $file, ">test.org") || die("Couldn't open test.org: $!");
print $file $content;
close($file);
`emacs -batch -L ~/.emacs.d/vendor-lisp/org/lisp -L ~/.emacs.d/vendor-lisp/org/contrib/lisp -visit test.org -eval "(setq org-html-htmlize-output-type 'css)" -eval "(org-html-export-to-html nil nil nil t)"`;
open($file, "test.html") || die("Couldn't open test.html: $!");
my @lines=<$file>;
close($file);
unlink "test.org";
unlink "test.html";
return join('', @lines);
}
1