0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Emacs 精進 02: 認知をサボれない……

Posted at

この記事は Emacs 精進 Advent Calendar 2025 2 日目の投稿です。

背景

前回は Qiita Advent Calender 用の執筆環境を構築しました。今回は 2 日目の記事ですから、まだまだメタなことをやっていきたいと思います。

『Emacs 精進 2025』は 1 つの .org ファイルで記述されています。これを PDF ファイルに変換した場合、技術同人誌風に表示できるでしょうか? やってみます!

PDF 出力

案 1. org-latex-export-to-pdf

org-latex-export-to-pdf 関数を使うと、日本語を全て枠所した PDF ファイルが生成されました。 AI に従うと、以下を .org ファイルの冒頭に記載して、最低限日本語も表示されるようになりました:

#+LATEX_COMPILER: lualatex
#+LATEX_HEADER: \usepackage{luatexja}
#+LATEX_HEADER: \usepackage{luatexja-fontspec}
#+LATEX_HEADER: \usepackage[haranoaji]{luatexja-preset}

LuaTex などは NixOS においては texliveFull パッケージとして一括インストールできます。

変換後の画面は以下の通りです。日本語も正しく表示されています:

02-export-pdf.png

もう少しだけ調整するなら、 emacs の org-latex-export-to-pdf 設定手順 などが良さそうです (※ 動作未確認) 。しかし LaTeX が相手だと、自力でスタイルを修正するのは困難に思えたので、他の方法も検討してみます。

案 2. ox-typst

Typst を経由して PDF を出力してみます。 ox-typst は Qiita, Zenn 共に検索結果が 0 件だったため、ネタとしても良さそうです。

なぜ Typst か (経験則)

Typst によるスライド生成 を試したところ、テーマの調整なども簡単で、主戦力になりました。 PDF 出力も一定品質以上になる気がします。

ox-typst の導入

ひとまずインストールします:

(leaf ox-typst)

グローバルな設定は設けず、ドキュメントごとに File Variables を設定するのが良さそうです:

Typst の数式の構文を使う場合
;; Local Variables:
;; org-typst-from-latex-environment: (function org-typst-from-latex-with-naive)
;; org-typst-from-latex-fragment: (function org-typst-from-latex-with-naive)
;; End:

PDF 変換

さっそく org-typst-export-to-pdf を使ってみましたが、コードブロックが一枚の画像のような扱いとなり、画面下部で見切れてしまいました:

02-code-block-out-of-page.png

それでもハイライト付きなのは嬉しい!

試しに figurebreakable 属性を ATTR_TYPST で設定……するつもりが、 ox-typst において未実装のようで .typ ファイルの出力内容は変わりませんでした:

#+ATTR_TYPST: :breakable true
#+BEGIN_SRC elisp
(leaf ox-qmd
  :commands (org-qiita-export-buffer-to-book)
  ;; ..
#+END_SRC

ちょっと厳しそうなので、早めに切り上げます。

結論

ox-typst では、出力ファイルの細かい調整はできないと思います。長期的にコントリビュートする気がなければ、本格的な使用は難しそうだと感じました。

今回の記事としては、アドベントカレンダー用の .org ファイルを PDF 出力して、 25 記事分の内容を一気に確認できるようになったということで、良しとしたいと思います。

それでは次の記事でお会いしましょう! (あと 23 記事、、)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?