[PHP-users 4723] Re: sjis で  echo ”能” エ

Ryuzi Kambe php-users@php.gr.jp
Tue, 15 Jan 2002 19:03:09 +0900


> 長尾です。
> 
> 正式にあがっているかどうかは、確認していませんが、
> 
> それから、誰かが、メールはしていると書かかれたので、
> 期待して待っている状態です。
> 
> で、ふじもとさんがあげると期待しています。
> 
> 私は、デザイナーさんと仕事することが多いので、システム的な
> ことで、彼らに認知上の負担をかけるのは避けたいと思っています。
> 
> プログラム書かれる方との感覚はかなりその点違うかなというところです。
> 
> テンプレートシステムも、Dreamweaver で編集できることが重要になります。

Dreamweaver ユーザとしていくつか。

.phpファイルもHTMLファイルと同様にWYSIWYGで編集できるDreamwaverは
PHPを使ってWebサイトを運営している人には非常に手助けになってくれます。

しかし、過去にもこのMLで話題になっているように、伝統的にEUCコードの
扱いにはバグがあるようです。
http://ns1.php.gr.jp/pipermail/php-users/2001-September/002011.html

特にテンプレート機能を使うときには適用したすべてのドキュメントが
文字コードの変換の失敗により利用できなくなり、あやうくコンテンツを
すべて失うところでした。

Macromediaのサイトの非常にわかりにくいところに、これについての問題が
掲載されています。
http://www.macromedia.com/jp/support/dreamweaver/ts/documents/dw0156.html
(以下の検索ページで検索の対象を「Dreamwaver」にし、
「EUC」でクエリーしてみてください)
http://japanesesearch.macromedia.com/search.asp

この問題でVersions: allとなっていますが、かつてはテクニカルサポートの
一覧で「Ver3.x以前の問題」と分類されていました。(今はその一覧ページが
見つかりません)実際私が上記の問題にあたったのはDreamwaver 3です。

その後Dreamwaver 4にバージョンアップしたところ、一応問題はなくなった
ように思います。mbstringで

mbstring.http_output = SJIS

を(.htacessなどで一時的に)指定したときのために、

ファイルのエンコーディング:EUC
metaタグ:Shift_JIS

と指定しなければいけないようなケースでも、とりあえず編集中の
ファイルを壊すことなく編集やテンプレートの適用が(見た限りに
おいては)問題なく出来ています。
(metaタグは見ずにファイルのエンコーディングを自前で自動判別
 しているのでは・・・という想像をしているのですが)

Dreamwaver 4では編集->環境設定->フォント・エンコーディングで
「エンコーディング初期設定」でEUCを指定できます。(複数の仕事を
しているWebデザイナーにこのオプションを強要するのは酷ですが・・・)

現在Dreamwaver3を使ってるのなら、バージョンを上げてみるのは
どうでしょうか。もちろん私は何の保証も責任も持ちません。
購入するまえに、Macromediaから体験版がダウンロード出来るので、
それを使えば容易に確認できますしね。

また、テキストエディタですが、シェアウェアのEmEditorではHTMLなどの
文章の時にmetaタグを参照するオプションをはずせるようになっていますので、
いざWindows環境下で弄るときにはこちらを使います(普段はLinuxで
jedなどを使っているのであまり気にしてないですが)

閑話休題。

Dreamwaverについては、文字コードの扱いは大事なことなので、もっと
わかりやすいところに置いておいてほしいですね。現バージョンの
最新リビジョンでは問題ないと考えているのかもしれませんが。

PHPについては、確かに内部エンコーディングにSJISが指定できたら
だいぶ楽ですし、上記のようなファイルの内部エンコードとmetaタグとの
矛盾も無くなります。

bugs.php.netのfeature/change request

にリクエストを上げる動きを支援をすることが出来るのなら
ぜひしたいと考えています。

-
Ryuzi Kambe
kambe@mc.kcom.ne.jp