このページは、コナミから出ているギターフリークス(=ギタフリ)をこよなく愛する島人がプログラムを公開する場です*1。雑談もあるかも。
 現在公開しているプログラムは、ランでつねとギタドンです。ギタドンの正式名称は「ギターフリークスのコントローラーをPCにつなげてドンっと音を出してみよう」です。今考えました。

*1:スキルはCSで500台しか有りません。プログラムも素人です

Vistaは危険(フォントの話)

 今回の話はなるべく多くの人に読んでもらいたいので、このページへの参照リンク推奨、コピペOKとします。
(長いですけど、とりあえずリンクの手前ぐらいまで読んでみてください)

 Windows Vistaは触ったことがないが、印刷系のMLとかで流れていた話を見ていると、「こ、これは、印刷業界だけの話じゃねぇ…」と思ったのでまとめてみた。

 簡潔に言うと、パソコンでの「辻」の字体が変わる。
 Vista標準フォント(メイリオ)が変わるのはもちろん、MSゴシック/明朝(MS書体)で『フォント名は変わらずに字形が変わる』。追加じゃなくて、一点しんにょうの「辻」の文字コードに二点しんにょうの「辻」が割り振られる。結果、一点しんにょうの「辻」が姿を消す。
 Vistaを使ってない人も、Vistaを使っている人と名簿などをやり取りする場合などは気をつけないといけない。XP以前でも新規格(JIS2004)のフォントを入れればいいのだけど、MS書体はフォント名が一緒なので上書きになる。
 しかし、気をつけたところで、結局は新規格に合わせるという「打つ手無し」な状態になると思われる。

http://internet.watch.impress.co.jp/cda/news/2005/07/29/8621.html
http://www005.upp.so-net.ne.jp/greentree/koizumi/75_moji.htm

 話の元は文字コードを制定するJISが2004年に打ち出した規格。
 今までのJISがコンピューターの技術レベルに合わせて略字中心だったのに対し、このJIS2004は国語的に超保守的でコンピューター的に超前衛的だ。
 自分は12歳からパソコンの世界に足をつっこんでJIS漢字は20年ぐらい慣れ親しんできているので、この前衛的な規格に頭がクラクラする。
 JIS2004の認否はおいといて(後述)、マイクロソフトがフォント名を変えずに字形を変えたのが問題だ。MSゴシック2004とかっていうフォント名にすれば良かったのにと思う。
 マイクロソフト側に「MSフォントをJIS2004にしたら、みんなJIS2004にするでしょ?」的な奢りを感じる。
 プログラム的にたとえると、「よく使うWinAPIの仕様が変わって、実行環境によって挙動が違う。でも、WinAPIのバージョンは一緒」て感じになる。致命的なエラーはあまり起きないけど、エラー出た時の対処がものすごく面倒。

 今までのJISが日本語的に間違いとしても、20年以上たってそれが普遍化しているのに、「正常化」するために今までのものを無かった物にするってのは乱暴。これはVガンダムで言うところの巨大ローラー作戦じゃないか。ちょっと分かりやすく言うとシャアのアクシズ落としじゃないか。一般人的に言うと、区画整理するために住宅街を焼け野原にするみたいなもんじゃないか。

 せめてマイクロソフトはJIS83のMSフォントを別名で提供すべき。

 ここからは関連するけど別の話。
 自分はJIS2004に批判的だ。
 たぶんJIS2004は国語的に正しいと思う。しかし、自分は「正しい日本語」は存在しないと思う。自然言語ってその場所、その時代によって緩やかに変化している物だと思うから。平安時代からいきなり現代仮名遣いになったわけじゃない。常用漢字の制定とかあったと思うけど、それも一気に変わったんじゃなくて、ゆっくり変わっていったと思う。
 その時代時代で「一般的に正しい日本語」は定義できると思う。が、しかし、常に変化するので、定義した瞬間に陳腐化すると思う。
 たとえば「ホームページ」。本来ホームページとは「そのパソコンのブラウザで一番最初に表示するページ」を意味していたが、今では「webページ全般」を指す言葉になってしまった。歓迎すべき話じゃないが、受け入れなければならない。道義的問題にもならないので、マスコミは正しい用法を啓蒙しない。というか、見出しに「ホームページ」と表記するぐらい積極的に使う。
(道義的に問題があって変更された言葉の例「分裂病」→「統合失調症」)
 漢字の話。漢字は字形も意味をなす。だから、略字体を使うべきではないってのもわかる。しかし、漢字も手書きで伝承されていた時代は常に変化を伴っていたと思う。
 ちょっと話は変わるが、自分の名字は「吉永」だが、「吉」の字は正しくは「土」+「口」だ。しかし自分は「吉」でいいと思っている。(まあ、ちょっとこの辺は感情が入る問題だけど)
 つまり、漢字を「正しく」使い出すとものすごい困難な作業になる。
 国がIT革命を標榜した以上、国語であってもパソコン側に歩み寄る方針が必要なんではないか? と思う。
(歩み寄った結果がJIS2004なのかもしれない)
 そんな感じで自分は「略字派」なのだが、それは「略字が主流になっている」と思うからである。(もちろん、同じコードで違う字体というのに生理的嫌悪感を持っているのもある)
(新聞の難しい漢字排除も問題有りだとは思うが)

ランでつねはDelphi6で作っています。ソースは公開しますが、メールによる個別対応とします。ソース希望の方はメールください。
(外国製のスクロールラベルコンポーネントを改造して使っているので、著作権的に微妙な立ち位置に。なので、自分の書いたソースだけではコンパイルできません。)
本ソフトの通信部分はSocketのReceiveTextを使っているだけです。互換クライアントは簡単に作れると思います。互換品の公開もOKです。そのとき、自分に知らせてくれるとうれしいです。細かい仕様はメールで対応します。(仕様書書くのがめんどくさいので、ソースをそのまま送ることになるかと…)。つか、ログを眺めていたら、たいてい何やってるかわかると思います。
最後に、2ちゃんのプログラム板「くだすれDelphi(超初心者用)」に感謝します。おせわになっています。

  • 再生ボタンを押しても反応しない時がある。
    • →他のアプリ(iTunes本体含む)で再生とか停止とかをした場合、1回のクリックでは再生が反応しない時があります。その時は2回押してください(汗 iTunesが再生中かどうかのチェック方法を誰か教えてください(汗
  • タイムラグがある
    • 仕様です(汗。iTunesの反応が遅いのと、ウェイトをかけてあるためです。iTunesの情報を読みに行くのは0.5秒に1回です。隠しパラメーターで変更可能です。LANを利用したテキスト送信は0.3秒のウェイトがかけてあります。
  • 半角「"」が全角「”」になる/半角「;」が全角「;」になる
    • 仕様です(汗
  • テキストがスクロールしていないのにちらつく
    • 仕様です(汗 外国の人が作ったスクロールコンポーネントを使っています。ソース付属ですが、どこをいじったらいいのかわかりません(汗

このアプリはプレイヤーの画像、ボタンの画像の変更が可能です。
画像の基本的お約束
・画像のフォーマットはビットマップ(.bmp)です。
・画像を置くフォルダはアプリのフォルダの下にしてください。(そうすることで、デザインファイルと画像フォルダをコピーすることでデザインのやり取りができます。(他人への譲渡が簡単にできます)
・画像は透明化処理を行っています。画像の左下の1ドットの色すべてを透明化します。左下のドットを描写したい場合は、1ドット余分にデータを作ってください。

【注意】このプログラムはTCP/IPのSocketを利用して通信しています。このソフトに使用するポート番号をルーターで通さないようにしてください。ルーターを使わずにネットに繋がっている環境での使用はかなりオススメできません。
基本的にアドレスとポート番号だけちゃんと設定したら動くと思います。サーバー側はポート番号だけでOK。
IPアドレスが動的割り振りで特定できない場合、HOST名の指定だけでOKです。
設定を変更した場合、このアプリをいったん閉じて再び開いてください。(クライアントモードならそのままでOKかも)

[未接続を表示]
コネクトLEDを意識した(作者的には)■がプレイヤー左上に表示されます。黄=初期(未接続)、青=サーバーで接続、赤=接続エラー、黒=接続終了。クライアントモードで動作時は非表示になります。ピクセルは■の大きさです。
[通信ログを取得]
このアプリの挙動が不安な人、ログが好きな人はこれにチェックを入れてください。ログに自動的に保存する機能とかはついていません。保存したい場合はコピペしてメモ帳等に貼り付けてください。1000行ぐらいを超えたら、古いのから消していきます。ログはわりと素直に作ってあるので、「Error」とかでても驚かないでください。いちお、クラサバ間のやり取りはすべてログにはき出しています。
[マルチユーザーは非対応です]
本アプリはサーバー1につきクライアント1の仕様です。複数クライアントで使いたい場合はサーバー側で使う本アプリをフォルダ別に必要数用意し、ユニークなポートを割り当ててください。ただ、動作の保証はできません。