マクロツイーター

はてダから移行した記事の表示が崩れてますが、そのうちに直せればいいのに(えっ)

TeXで令和してみるテスト(1)

以下の結果は最新(今日の版)のW32TeXでのもの。

TeX Liveについては、現在は2019のプレテスト中である。TeX Live 2019のリリースの予定日は4月30日であるので、新元号への対応を済ませたTeX Liveは連休明けの頃には一般に入手可能になっていると思われる。

\today の和暦表示で令和してみるテスト

TeXエンジンのSOURCE_DATE_EPOCHの機能を用いて「現在日時が2019年8月8日である」と見なされるようにする。

# 以下の環境変数を設定する
set SOURCE_DATE_EPOCH=1565222400
set FORCE_SOURCE_DATE=1

BXjsclsのクラスの場合

% upLaTeX文書; UTF-8
\documentclass[uplatex,dvipdfmx,ja=standard,a4paper]{bxjsarticle}
\和暦
\title{しあわせ{\TeX}言語入門}
\subtitle{~新時代の{\TeX}言語教科書~}
\author{非ZR氏}
\begin{document}
\maketitle
% 中身はまだ無い。
\end{document}

f:id:zrbabbler:20190406111821p:plain
bxjarticleな出力結果

令和!

jlreqクラスの場合

% LuaLaTeX文書; UTF-8
\documentclass[paper=a4]{jlreq}
\和暦
\title{しあわせ{\TeX}言語入門}
\author{非ZR氏}
\begin{document}
\maketitle
% 中身はまだ無い。
\end{document}

f:id:zrbabbler:20190406111936p:plain
jlreqな出力結果

令和!

jsclassesのクラスの場合

% pLaTeX文書; UTF-8
\documentclass[uplatex,a4paper]{jsarticle}
\和暦
\title{しあわせ{\TeX}言語入門}
\author{非ZR氏}
\begin{document}
\maketitle
% 中身はまだ無い。
\end{document}

f:id:zrbabbler:20190406112016p:plain
jsarticleな出力結果

アレ!

LuaTeX-jaのクラスの場合

% LuaLaTeX文書; UTF-8
\documentclass[a4paper]{ltjsarticle}
\和暦
\title{しあわせ{\TeX}言語入門}
\author{非ZR氏}
\begin{document}
\maketitle
% 中身はまだ無い。
\end{document}

f:id:zrbabbler:20190406112038p:plain
ltjsarticleな出力結果

アレ!

Babelする場合

Babelパッケージを利用する場合、\todayの表記はBabelの言語定義の設定に従う。現在の版のBabelの日本語(japanese)用の定義では和暦がサポートされていて、jsclassesと同様に、\和暦命令で日本語用の\todayの表記が和暦に切り替わる。

% LuaLaTeX文書; UTF-8
\documentclass[a4paper]{ltjsarticle}
% なぜか唐突にエスペラント
\usepackage[main=japanese,esperanto]{babel}
\newcommand{\Eo}[1]{%
  \begin{otherlanguage}{esperanto}#1\end{otherlanguage}}
\和暦
\title{しあわせ{\TeX}言語入門\\
  \Eo{Feliĉa Kurso pri la Lingvo {\TeX}}}
\author{mal-ZR}
\date{\today\quad(\Eo{\today})}
\begin{document}
\maketitle
% Neniu enhavo.
\end{document}

f:id:zrbabbler:20190406112249p:plain
babelな出力結果

令和!

bxwarekiパッケージ

文書クラスが新元号に非対応(あるいはそもそも和暦に非対応)であっても、bxwarekiパッケージを使用すると正しい和暦表記が得られる。\warekitoday命令で今日の日付が和暦で出力されるので、明示的に\date\warekitodayを指定すればよい1

% pLaTeX文書; UTF-8
\documentclass[uplatex,a4paper]{jsarticle}
\usepackage{bxwareki}% 和暦したい
\title{しあわせ{\TeX}言語入門}
\author{非ZR氏}
\date{\warekitoday}% 明示指定する
\begin{document}
\maketitle
% 中身はまだ無い。
\end{document}

f:id:zrbabbler:20190406112105p:plain
bxwarekiな出力結果

令和!

まとめ

というわけで、もしアレだった場合はbxwarekiを使おう。


  1. bxwarekiパッケージは\todayの出力に関しては何の影響もおよぼさない。