古いEmacsにあるアレなファイルを見てみる
多分黒歴史
謎のファイル
上のページにあるように、古いEmacsにはetcディレクトリにcondom.1やsex.6といった謎(?)のファイルがある。
しかし、これはEmacs 24.4のときに削除されてしまっていて、最新版のEmacsでは存在しない1。
これをEmacsから見てみたいが古いEmacs持ってくるなんて面倒だなと思ったら、そう言えばmacOSに標準で入ってるのはめっちゃ古いことを思い出した。
macOSに標準で入ってるEmacs
macOSでは標準で/usr/bin/emacsにEmacsがインストールされている2が、これのバージョンは22.1である。22.1のリリース日時は2007-06-02で、現在の最新版が26.3(リリース日時:2019-08-28)を考えるとめっちゃ古い。
$ /usr/bin/emacs --version GNU Emacs 22.1.1 Copyright (C) 2007 Free Software Foundation, Inc. GNU Emacs comes with ABSOLUTELY NO WARRANTY. You may redistribute copies of Emacs under the terms of the GNU General Public License. For more information about these matters, see the file named COPYING.
どうしてこんな古いEmacsなのかというと、macOSがGPLv3なOSSを使わないようにしていることが関係しているようである。
Emacsは22.1までGPL v2なライセンスであったが、22.2からGPLv3になっていて、macOSに入っているEmacsはGPLv2なEmacsの最後のバージョンのままとしているようである3。
見てみる
ともかく古いEmacsがあったので試す。
起動
initファイルを読み込まないように-Qで起動する。xterm-256colorでのデフォルトなEmacsの配色は見づらいため、TERM環境変数にxterm-16colorを設定して起動している。
TERM=xterm-16color /usr/bin/emacs -Q
condom.1を見る
M-x man
する。
M-x man /usr/share/emacs/22.1/etc/condom.1
condomコマンドはシステムに感染したウイルスからの保護や子プロセスの妊娠(conceptionの訳)を防ぐもので、返り値が0で成功、1で失敗したことを示すらしい。
meese.elを試す
meese.elはsex.6
という名前のファイルを開くときに18歳以上かどうか尋ねるパッケージである。
scratchバッファなどで(require 'meese)
を評価する。
(require 'meese)
sex.6という名前のファイルを開くと18歳以上かどうか聞かれる。
C-x C-f /usr/share/emacs/22.1/etc/sex.6
yを押せばsex.6が見られる。
様々なオプションがあるようだが結構えげつないことが書かれている。
また、C-x k
でsex.6をkill-bufferすれば、再びsex.6を開いたときに18歳以上かどうか聞かれる。
nを押せば、sex.6は見ることはできず、celibacy.1を見ることになる...
終わり
記事を書いておいてなんですが、sex.6を見て微妙な気持ちになってしまいました。
現在のEmacsには存在しないのですっきり忘れることにします...。