markdownからhtml

投稿者: | 2023-01-30

最近、markdownを使っている。xxx.mdファイルからhtmlにして見るには、emacsのmarkdown modeにも機能があるが、2カラムにすることはできないようである。それでpandocを使ったみた。以下はそのときのeshellのコマンドの例

pandoc test01.md -o test01out.html --toc --template=html/uikit.html 
pandoc test01.md -o test01out.html --toc --toc-depth=5 --template=html/clean_menu.html

pandoc c:/home/OTMSG/Gen0901.md -o 00testout.html --toc --toc-depth=5 --template=c:/home/markdown/html/clean_menu.html --metadata=title:abc

init.elを編集して、C-c C-c h で起動できるようにした。

;; add-hookにC-c C-c hを定義
(add-hook 'markdown-mode-hook
	  '(lambda()
	     (define-key markdown-mode-map (kbd "\C-c C-c h") 'my-markdown-preview)
;; my-markdown-previewを定義
(defun my-markdown-preview ()
  "markdown fileを2カラムのcssを使ってpreviewする"
  (interactive)
  (let (ffname ffhtml fftemp ffcss ffmeta)
    (setq ffname (buffer-file-name))
    (setq ffhtml (concat default-directory "00mdpreview.html"))
    (setq fftemp "--template=c:/home/markdown/html/clean_menu.html")
    (setq ffcss (concat "-c" "c:/home/markdown/style.css"))
    (setq ffmeta (concat "--metadata=title:" (buffer-name)))
    (call-process "pandoc" ffname "*markdown err*" nil "-o" ffhtml ffcss "--toc" "--toc-depth=5" fftemp ffmeta)
    (browse-url ffhtml)))