月別アーカイブ: 2015年8月

TeXでファイルの更新日時を取得する

TeXでは \today で現在の日付を取得できる。\maketitle\date を省略すると現在の日付になる。

しかし、TeX文書の「内容」に関わる日付と言ったら、ファイルの更新日時ではないだろうか。タイトルのところにファイルの更新日時を(自動で)出す方法はあるか。

ググってみたら割と簡単に答えが出てきた。

pdfTeXだと \pdffilemoddate というプリミティブがあるらしい。例えば \pdffilemoddate{\jobname} と書くとコンパイル中のファイルの更新日時が D:20150829212230+09'00' というようなフォーマットで取得できるようだ。

LuaTeXだと \pdffilemoddate はないが、Luaを使えば同じようなことはできるだろう。まあ自分でLuaコードを書いて実装するのは面倒なので、既製品を使おう。

filemodというパッケージはpdfTeXとLuaTeXで使えて、ファイルの更新日時を取得するだけじゃなくて、\today と同じような読みやすいフォーマットにしてくれるようだ。例えば、ファイルのプリアンブルに

\usepackage{filemod}
\date{\Filemodtoday{\jobname}}

と書けばタイトルの日付がファイルの更新日時になる。

複数のファイルの中で最も新しい更新日時を使いたいときは、試してないけど \filemodNewest を使えば良さそう。

既に書いたように、filemodパッケージはpdfTeXかLuaTeXが必要で、pTeXXeTeXでは動かない。

【2016年12月12日 追記】ε-pTeX では \pdffilemoddate を含むいくつかの pdfTeX primitive が実装されているため、 filemod パッケージを使うことができる。参考:ε-pTeX について

Macのストレージを空けた (2)

関連:Macのストレージを空けた

またMacのSSDの空き容量が減ってきたので、なんとかする。

duコマンドでホームディレクトリ以下を検査して、容量を食っているやつをチェックする。

~/Library/Application Support/MobileSync/Backup/

20GBくらい。

こういうバックアップの類はなるべく消したくないタチなので、できれば外付けドライブとかに移したい。ググったらシンボリックリンクを貼れば良いというのが出てきたが、リンク先のドライブが接続されてない場合の挙動が心配である。

というわけで今回はパス。

~/Library/Developer/Xcode/

7.1GBくらい。

中でも、 iOS DeviceSupport というサブディレクトリが6.3GBほど食っているようである。

ググって調べたところ、新しいiOSデバイス、または新しいiOSの入ったデバイスを接続すると iOS DeviceSupport の中身が増殖するらしい。

$ rm -r 7.1.* 8.0.* 8.1.*

のようにして、最新のバージョン(8.4)以外を削除。

古いHaskell Platform

7.10.2を入れたので7.8.3には消えてもらう。手順は前の記事に書いた。