文字化け対策でなんかいろいろプログラムの中見て修正してとかやるの面倒だな~、とか、
文字ばっかのファイル見てたら目がしょぼしょぼしちゃうわ~、とか、
Perlとかわからないから変更するの怖いわ~、とか、
そういう方のためにパッチ作成してみた。
パッチ作りってどんなものかいな?と思ったので作ってみた、というだけっす。
パッチ当てたファイルでの動作確認は最小限しか行っておりません。
パッチのニーズが高ければみらのさん頑張っちゃおうかな~。
あ、マックユーザーの方はごめんなさい。
Windowsオンリーの対応です。
このパッチで対応できる箇所は、ひらたさんのJapanese Language Pack 2003-2-17 版のうち、
四-3、四-5、四-6、四-7
の4箇所です。
中途半端ですか?
1. http://www.movabletype.org/ から MovableTYpe2.62をダウンロードしてきます。
「Full Version with Libraries」でも「Full Version」でも「Upgrade Version」でもよいです。
2. ダウンロードしてきたファイルを解凍します。
3. 解答して出来たフォルダの中を覗くと、lib というフォルダがあるはずです。
この lib フォルダを基準に考えます。
4. MT_patch.EXE を lib\MT にコピーした後、ダブルクリックで実行します。
「正常終了」と出たらパッチ適用成功です。
5. 文字化け対策パッチ適用完了です。
インストール手順に従ってインストールしてください。
hirata
折角ですから Language Pack にいれてしまいたいのできちっと作りません?全部まとめてしまいませんか?作者さんとのやりとりはこちらでやります。
milano
まとめるのは望むところですが、Windows版だけでいいものなのか。
MovableType使っている人はMacユーザーが多そうなイメージがあるので。
まぁ、無いよりはあった方がいいか。
さらにパッチを追加すべきなのはどこでしょう。
2.62では lib/MT/App.pm は修正は加えなくてもいいと思います。
mt.cfg は自分で修正させるべきだと思います。なんとなく。
style.css は、、、微妙だなぁ。
hirata
わたしのイメージでは、ja.pm とか、日本語パックようのファイルも一緒にコピーしちゃうといいかな、という感じなのですが。
unix な人むけの diff はこちらでつくりましょうか?
Mac はどうすればいいかな? OS X は unix みたいなものなので、それでもいいような気もしています。
milano
パッチ作成には、
WDiff<http://www.vector.co.jp/soft/win95/util/se057654.html>
を使用しましたが、このプログラムではファイルの追加とか出来ないのです。
いや、出来るのかもしれませんが、今日初めて使ったので良くわかっていません。
なので、ja.pm をコピったりとかはむつかしそげ。
なんかいいアイデアあります?
milano
あ、ファイルの追加出来るっぽい!
調べ中です~。
milano
おー。できたー。
images/lang-ja
をあらかじめ作らなければならないという制限はありますが、
パッチ実行一発で、
・images/lang-ja 以下に日本語用画像の作成
・lib/MT/L10N/ja.pm の作成
・lib/MT/default-template.pl の修正
・lib/MT/Mail.pm の修正
・lib/MT/App/CMS.pm の修正
・lib/MT/APp/Trackback.pm の修正
以上が行えました。
この勢いで、EUC版とUTF-8版を作ればいいのだな。
他に行うべき修正ってありますか?
太鉄
おお、頑張ってください~。
で、便乗質問。
Language Pack付属のREAD.ME通りに変更を加えると、Bookmarkletで以下のエラーが出ます。
Got an error:
syntax error at lib/MT/App/CMS.pm line 209, near "$charset;"
syntax error at lib/MT/App/CMS.pm line 210, near "$charset;"
syntax error at lib/MT/App/CMS.pm line 211, near "$charset;"
syntax error at lib/MT/App/CMS.pm line 633, near "$charset }"
TrackBackでも同様に、"$charset"付近でエラー、と怒られます。
とりあえず、milanoさんが最初に公開された変更方法で動いてるので、問題はないんですが。
心当たりがあれば、ご教授願えれば幸いです。
hirata
おお、さすが早業ですね。これでいいと思います。utf, euc 版できたらください。まとめて本家におくって、いれてもらうことにしますね。
milano
>太鉄さん
むぅ。問題ないはずなのですが。
問題が起こった CMS.pm と Trackback.pm ってまだありますか?
>ひらたさん
送りましたー。
milano
なんか思い出した。
Jcode->new($hoge)->$charset
という具合に、メソッドに変数名を使う書き方はPerlのバージョンによって(なのかな?)はエラーになるはず。
これでエラーになってしまう人は、$charset のかわりに euc とか utf8 とか直に書いてください。
てゆうか、$charsetでパッチ作っちゃったよー。
あ、パッチは EUC版とUTF-8版分けたから、そこもハードコーディング出来るなぁ。
めんどくせー。
太鉄
あ~、Perlのバージョンですか。
もしかしたらそうなのかな、とも思ってたんですが。
うちのサーバのPerlはバージョン「5.00503」です。
レンタルなので、勝手にバージョン上げるわけにもいかず。
直書きで対応するしかないようですね。
> あ、パッチは EUC版とUTF-8版分けたから、そこもハードコーディング出来るなぁ。
頑張っちゃいますか?
でも、新しいバージョンリリースされたら、また作り直しですよね?>パッチ
くれぐれも、ご無理のないように。
milano
あら、5.005_03ですか。ウチと一緒だ。
でもウチはエラー出ず。
じゃぁ何が違うのだ?
教えて!詳しい人!!(>例えばmiyagawaさん)
> でも、新しいバージョンリリースされたら、また作り直しですよね?
そうなのです!
しばらく2.62のままでいてくれるといいなー。
milano
わかりました。
5.005系の人は、$charset の後に () が必要なのです。
Jcode->new($hoge)->$charset()
と書くのです。
ワタシのサーバーは5.005_03だけどエラーが出ないのは何故だと思っていたら、自分のところでは、
Jcode->new($hoge)->euc
と書いているのでした。
失礼しました。
rebecca.acとxrea.comの2箇所でテストしてて、
rebecca.acはeucで、独自の修正、
xrea.comはUTF-8で、Language Packに書いてある修正、
といろいろやってるので、混乱してました。
太鉄
なるほど~。
()付ければいいのですね。
お手数お掛け致しております。
ところで、パッチの方はどちらで公開されるんでしょうか。
hirataさんのところですかね、やっぱり。
どうせなら、そちらが公開されてからまとめて、上記()付けを試してみようと思います。
milano
たぶん、ひらたさんのところで公開することになると思います。
情報は一箇所に集まってたほうがわかりやすいですからね。
でも、バグ報告とかはウチで受けたい。あー矛盾。
どうしましょ?
後は、すげーわかりやすいインストールの説明を誰かが書いてくれれば、初心者の人の敷居が低くなるのにな。
だれかー。
sgn
パッチできたのですか? 公開楽しみです.
今日インストールしてみたのですが,文字化けしたのでいろいろ調べていてここにたどり着きました…
今暇なので,うまくいけば体験的インストールマニュアルかけるかも.