You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

73 lines
1.8 KiB

4 years ago
* PlumHTML
org-export backend for sane HTML. Basically some changes and
extensions to [[https://github.com/balddotcat/ox-slimhtml][ox-slimhtml]].
4 years ago
Used to publish words I write.
** Installation
4 years ago
You want to clone the repo, cd to it then do ~M-x
package-install-file~ on ~ox-plumhtml.el~
** Header IDs
In org-mode you can do something like
#+begin_example
,#+plumhtml_header_ids:
,* Header 1
.....
some content...
.....
,* Header 2
[[Header 1][Link to header 1]]
#+end_example
And the link will jump back to =Header 1= when you click it.
This is implemented in ox-plumhtml conditionally by setting the
variable ~ox-plumhtml-export-header-ids~, or putting
~#+plumhtml_header_ids: t~ in your org file.
Exported contents look like this when set to nil:
#+begin_src html
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body><h1>Header 1</h1><p>.....
some content...
.....
</p>
<h1>Header 2</h1><p><a href="Header 1">Link to header 1</a>
</p>
</div></body>
</html>
#+end_src
And this when non-nil:
#+begin_src html
<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body><h1 id="orgffb8f9b">Header 1</h1><p>.....
some content...
.....
</p>
<h1 id="org89773e7">Header 2</h1><p><a href="#orgffb8f9b">Link to header 1</a>
</p>
</div></body>
</html>
#+end_src
It adds some noise to the outputted file but it's worth it IMO.
4 years ago
** Functions
*** ~ox-plumhtml-export-as-html~
4 years ago
Makes a temporary buffer with the exported HTML.
*** ~ox-plumhtml-export-to-html~
4 years ago
Like ~ox-plumhtml-export-as-html~ but dumps the exported HTML to a
file like =example.org= -> =example.html=
*** ~ox-plumhtml-publish-to-html~
4 years ago
Same as ~ox-plumhtml-export-as-html~ but for ~org-publish~
** Tests
I stole them from =ox-slimhtml= lole
#+BEGIN_EXAMPLE
emacs -batch \
-l ert \
-l ox-plumhtml-tests.el \
-f ert-run-tests-batch-and-exit
#+END_EXAMPLE