BSD games の banner って需要多いと思うんだけどどです?

なんだか「古き良きUnix」なサイトになりかけてる…。

そんなつもりは毛頭ないけれどね。好みなんす、BSD。Sun OS (Solarisじゃなく正真正銘の Sun OS)育ちだもんでね。

BSD 系 Unix での「/usr/games のはなし」は何度かしていて、実際のところ、最も大活躍してたのが banner だったのです。

まず時代的なことから話しとくと。「ワタシがSun OSを使っていた頃」(学生時)というのは、「Unix ワークステーション時代」のほぼ末期に当たっていて、そろそろ PC Unix 文化と「それなりの Windows OS」が出始めの頃です。(Windows 3.x 時代の終わり、Windows 95 リリースを冷ややかにみてたクチです。)で、その頃「でさえ」、プリンターでの印刷環境は、そんなに今とかけ離れていたわけでもなく、誰でも自由に使える小型のプリンターを少人数で使えてました。banner が「本来の意味を発揮する」のは、「大人数で共用する(身長を超えるような)大型のプリンターに大判の用紙に」印刷するようなケースで、この場合、「誰が印刷したのか」が表示ページにデカデカと出てないと、本当に誰が出したものかすぐにわからなくなるのね。大型計算機センターみたいなとこではまさにそうだったね。働き始めて汎用機使うようになっても実際に経験したけどね。

そんなわけで、「games」にカテゴライズされてるくせに「実用にもなる」お遊びプログラム、というもの「だったけれどワタシが学生時分から既にそんなでもなくなってた」という程度のもの。でもね、なんだろなぁ、要するに「センスいい」のよねぇ、この BSD の banner。

ここまでが「時代」の話なんですが、問題はここから。ほんとになんだかなぁ、と思うのね。FSF には同名の banner プログラムがいて、また、Red hat 系 linux なんかでも yum とか rpm で手軽にインストール出来るのだけれど、これがまたイケてないんだ。「作りました」だけのシロモノで、愛情のカケラも感じない。てなわけで、linux ユーザも BSD バナーを入れよう。ソースはここから手に入ります。多分 ubuntu な人はなにがしかのパッケージマネージャからインストール出来たりするのかな。

linux でのビルドは簡単で、「ワタシは lint です」と主張してあげるだけです:

1 me@host: ~$ gcc -Dlint banner.c -obanner

(多分。昔は違ってて、BSD 固有のライブラリ(err系)で簡単には行かなかったんだけど、最近どの linux で試してもこれだけで行ける。)

Microsoft Visual C++ Compiler for Python 2.7など MSVC では、ほぼasciiコマンドのときと一緒です。ただasciiコマンドよりは要改造箇所は多かったです。これは画像だけで、ではキツイので、改造後のを添付しときます

動かせればこんなですよ:
bsdbanner-example

ちなみに。漢字が使える kbanner というのも出回ったことがあって、こっちも良く使ってたですね。こっちはまだビルド出来るか調べてないだけでなく、まだ探してもいないです。

2017-07-05 追記:
たまに随分前に書いたものがふと何かのきっかけで読む人が増えることがあって、Popular Post に出てきたんで、せっかくなんで追記。

ここにこっそり Python pillow を使って Banner 的なことをするサンプルを書いてたりします。