20230903
Table of Contents
1. 前略 前日の続き
参考: https __systemcrafters.net_publishing-websites-with-org-mode_building-the-site
もう publish を回るには英語のサイトしかない……。
とぼちぼち眺めたんだけど、ox-publish って lisp/org の中にあるってことは組み込み済の機能なのか?!! なによりこれなら .emacs を汚さなくて済む んですが!!
というわけで:
Let’s call it build-site.el: ;; Load the publishing system (require 'ox-publish) (message "Build complete!") We also need a shell script that can run our Emacs Lisp script. We’ll call that build.sh: #!/bin/sh emacs -Q --script build-site.el Don’t forget to use chmod +x build.sh to make the script executable!
これをもとにイチから書いていきます。
1.1. ここまでのあらすじ(試行錯誤)
- テーマの貼りかた
publishを使う、すなわちソース(.org)ファイルと出力ファイル(.html)が違う場所になる。つまり、CSS ファイルも出力先のディレクトリに置いておかねばならぬ…………(気付くのに一日かかった…) - ヘッダ部分
ページのみ生成しちゃおって思ってたけど、それでもやっぱり「共通のヘッダ」があったほうが良くない? とうんうん唸った。
最終的には org-publish-project-alist の要素である :html-preamble と :html-postamble に defvar で書き込んだ。
org-html-preamble-format はどうもうまく動いてくれなかった。
1.2. オマケ(ここ数日のメモに対する)
改行してくれない件については
#+OPTIONS: \n:t
でできました!
1.3. あとやりたいこと
ページファイルごとに #+TITLE を与えてるんですけど、<HEAD>要素の中に書かれる<TITLE>にも使われるんですよねコレ。
できればこのときだけ「ページタイトル - サイトタイトル」みたいにしたいんだけど、もうこれはやりかたがわかりませんわ。