3
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?

Hugo Front Matterの日付をemacsで自動的に更新する

Last updated at Posted at 2022-04-20

はじめに

Hugoではmarkdownではなくasciidoctorを利用しています。

編集は主にemacsで行なっているのですが、Front matterの日付を手動で更新するのは忘れることが多かったので、hookを設定して自動的に保存の時に更新するようにしてみました。

環境

  • Ubuntu 22.04 LTS
  • emacs 27.1 (デフォルトのemacs-gtkパッケージを使用)

参考文献

~/.emacs/init.el の編集

adoc-modeのために、次のようなコードを追加しています。

~/.emacs/init.el
;; asciidoc mode from https://github.com/sensorflo/adoc-mode
(load "~/lib/elisp/markup-faces.el")
(load "~/lib/elisp/adoc-mode.el")
(autoload 'adoc-mode "adoc-mode" nil t)
(add-to-list 'auto-mode-alist '("\\.adoc\\'" . adoc-mode))
;; update timestamp for adoc-mode
(add-hook 'adoc-mode-hook (lambda()
			    (require 'time-stamp)
			    (add-hook 'before-save-hook 'time-stamp)
			    (custom-set-variables
			     '(time-stamp-active t)
			     '(time-stamp-start "date: ") 
			     '(time-stamp-format "%Y-%02m-%02dT%02H:%02M:%02S%:z")
			     '(time-stamp-end "$"))))

emacs 26などの古いemacsを利用している場合

Ubuntu 20.04などの古いemacsのtime-stamp.elではtime-stamp-formatにtimezoneの指定はできないので次のように"+09:00"を文字列として含めていました。

			     '(time-stamp-format "%04y-%02m-%02dT%02H:%02M:%02S+09:00")

さいごに

emacs 26系列は古くなったので、現在の~/.emacs.d/init.elに書いているtime-stamp-formatに変更しました。

3
0
1

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
3
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?