MT4/MovableType用 携帯電話向け変換プログラム
* MT4/MovableType用 携帯電話向け変換プログラム [#ee8bb6f2]

#contents

* 概要 [#e9e55729]
** 概要 [#e9e55729]

 MovableTypeは、[[dh's memoranda:http://uva.jp/dh/mt/]]にて公開されているJapanese Language Packや、[[Milano::Monolog:http://rebecca.ac/milano/mt/]]にて公開されている日本語化パッチを適用することにより、日本語化が可能です。ただし、これらを適用する為にはサイトの文字コードをUTF-8あるいはEUC-JPにする必要があります。((MT2.661以前の話。3.0日本語版以降はShift_JISも使用できます。))
#ref(mt4i_sample_entry_list.png,right,wrap,around,nolink,表示サンプル)

 MovableTypeは、[[dh's memoranda:http://uva.jp/dh/mt/]]にて公開されているJapanese Language Packや、[[Milano::Monolog:http://rebecca.ac/milano/mt/]]にて公開されている日本語化パッチを適用することにより、日本語化が可能です((3.0日本語版以降はそもそも日本語化されているので、日本語化の必要はありません。))。ただし、これらを適用する為にはサイトの文字コードをUTF-8あるいはEUC-JPにする必要があります((MT2.661以前の話。3.0日本語版以降はShift_JISも使用できます。))。

 UTF-8やEUC-JPに対応したWebブラウザーやツールなども増えてきましたが、まだまだShift_JISのみサポートというケースも少なくありません。特に、i-modeなどの携帯電話用Webブラウザーの多くがShift_JISのみのサポートに留まっています。日本では最も普及していると思われる、しかも至極手軽にネットへ接続できる環境があるというのに、そこからは自分のサイトが文字化けして見ることができないわけです。

 そこで開発したのがMT4iです。MT4iは、(MovableTypeのAPIを利用して)MovableTypeのデータベースからデータを直接読み込み、文字コードをShift_JISに変換、携帯電話向けにレイアウトして出力します。言語はPerlです。

 そもそも自分のサイト向けに作成したものなので、まだまだ機能は少ないですし、Perlその他に関しては素人同然なのですが、何とか頑張って今後も継続的に機能追加・リリースしていこうと思っていますので、よろしくお願い致します。

※「MT4i」は、「MovableType for i-mode」の略です。が、i-modeに限らずVodafoneやEZwebなどの携帯電話各キャリア、PDAなどの携帯情報端末においても表示できるよう、出来得る範囲で配慮しております。

#clear

** 表示サンプル [#d0783278]

-[[talk to oneself 2 mobile ver.:http://www.hazama.nu/t2o2/i/]]

 ※開発中の為、ここで配布しているものとバージョン・機能が異なる場合があります。

* 最新バージョン [#i5c286e4]
** 最新バージョン [#i5c286e4]

-MT4i Version 1.81~
→[[ダウンロード:http://www.hazama.nu/t2o2/archives/mt4i/mt4i181.lzh]]~
(3.0以上に対応、及びTonkey版より管理機能などを取り込んだβ版を仮公開中です。β版などの最新情報は[[こちら:http://www.hazama.nu/t2o2/archives/cat_mt4i.html]]で。)
-MT4i/1.81

** パッケージ内容 [#qe15e6fb]
** MT4i Mailing Listのご紹介 [#fdd25f43]

 上記リンクよりダウンロードしたファイルを解凍すると、以下のファイルができます。

-mt4i.cgi(MT4i本体)

** 旧バージョン [#k08a7782]

-[[Version 1.8:http://www.hazama.nu/t2o2/archives/mt4i/mt4i18.lzh]]
-[[Version 1.71:http://www.hazama.nu/t2o2/archives/mt4i/mt4i171.lzh]]
-[[Version 1.7:http://www.hazama.nu/t2o2/archives/mt4i/mt4i17.lzh]]
-[[Version 1.61:http://www.hazama.nu/t2o2/archives/mt4i/mt4i161.lzh]]
-[[Version 1.6:http://www.hazama.nu/t2o2/archives/mt4i/mt4i16.lzh]]
-[[Version 1.5:http://www.hazama.nu/t2o2/archives/mt4i/mt4i15.lzh]]
-[[Version 1.41:http://www.hazama.nu/t2o2/archives/mt4i/mt4i141.lzh]]
-[[Version 1.4:http://www.hazama.nu/t2o2/archives/mt4i/mt4i14.lzh]]
-[[Version 1.3:http://www.hazama.nu/t2o2/archives/mt4i/mt4i13.lzh]]
-[[Version 1.2:http://www.hazama.nu/t2o2/archives/mt4i/mt4i12.lzh]]
-[[Version 1.1:http://www.hazama.nu/t2o2/archives/mt4i/mt4i11.lzh]]
-[[Version 1.0:http://www.hazama.nu/t2o2/archives/mt4i/mt4i.lzh]]

* 前提条件 [#g78beb77]

-Movable Type 2.661以前のバージョンが正常に動作していること(3.0以上に対応、及びTonkey版より管理機能などを取り込んだβ版を仮公開中です。β版などの最新情報は[[こちら:http://www.hazama.nu/t2o2/archives/cat_mt4i.html]]で。)
-文字コードUTF-8で運用している場合、Perlモジュール「[[Jcode.pm:http://openlab.jp/Jcode/index-j.html]]」を導入していること(っていうか、UTF-8で運用している場合はJcodeモジュール無しだとMT自体が文字化け起こすので、MTがちゃんと動いているなら導入済みのはず)
-画像の自動縮小機能を利用するには、Perlモジュール「[[ImageMagick:http://www.imagemagick.org/]]」が必須

* 動作確認 [#mefbb5ca]

 MT4iは、OSにFreeBSD、WebサーバにApache、Perl 5.8、BerkleyDB or MySQL、文字コードEUC-JP or UTF-8、Jcode.pmインストール済みという環境でのみ動作確認を行っています。これは、作者がここまでの環境しか用意できない為です。

 よって、上記以外の環境で動作するとうたっていても、正常に動作しない可能性があります。予めご了承下さい。

 上記以外の環境をお持ちの方、動作確認して頂き、結果をご報告頂けると助かります。勝手なお願いですが、宜しくお願いいたします。

* 主な機能 [#acb564e0]

-最新10件のタイトル一覧を表示(表示件数は設定で変更可)
-タイトルクリックで個別記事へ
-改行→<br>タグ変換(MTの設定に従う)
-<blockquote>タグ→<p>タグ変換
-<blockquote>タグ部文字色変更(色は設定で変更可)
-Shift_JISへの文字コード変換
-全角カナ・英数字→半角カナ・英数字変換(ON/OFF設定可)
-本文+追記が4KBを超える場合、分割して表示(制限サイズ・区切り文字列は設定で変更可)
-<img>タグの削除及びALT属性の内容表示、画像ファイルへのリンク(画像の表示を保証するものではありません)
-Googleのchtmltransと連携して外部リンク先もフォロー(表示を保証するものではありません)
-外部リンク先がAmazonの個別商品リンクである場合、chtmltrans経由にせずAmazonのi-mode版個別商品リンクに変換する。
-i-mode、Vodafone Live!、EZwebでのアクセスを自動判別し、対応する絵文字を表示及びアクセス(ダイレクト)キーを設定(ON/OFF設定可、一覧件数を6件に調整、EZwebの絵文字はi-modeのものを自動変換)
-コメントの表示
-トップタイトル、背景、リンクの色等を設定にて変更可
-一覧時、各エントリー横にコメント数を表示(設定にて表示色変更及び表示ON/OFF指定可)
-一覧時、カテゴリーでの絞込み(descriptionに日本語名を設定して使用しているケースにも対応)
-コメントの投稿(設定にて必須項目を選択可能)
-コメント投稿通知メール発信(Blogの設定に基づく)
-管理者名、管理者メールアドレスの表示(管理者名及びmailtoリンク表示、管理者名のみ表示、非表示、が設定にて選択可。メールアドレスは'@'及び'.'を実体参照に自動変換)
-最近のコメント一覧表示機能(設定により表示コメント数変更可能)
-画像の自動縮小表示機能(キャッシュサイズを判別し、表示可能なサイズへ縮小)
-キャリアを判別し、画像を適切なフォーマットへ変換する機能
-コメント表示時のソート順はBLOGの設定に準拠
-コメントのNone、Open、Closedに対応
-自blog内のリンクはMT4i経由のURLに変換
-コメント投稿フォームに注意書きを入れられる
-AタグのTITLE属性に"携帯対応"の文字列が含まれる場合、chtmltransを経由させない(含む文字列は設定にて変更可)
-コメント投稿時のRebuildの対象とするテンプレートを指定できる
-二重投稿防止機能

* 設置に関して [#cf48e6c6]

+上記リンクよりダウンロードし解凍した「mt4i.cgi」を編集します(「mt4i.cgi」は文字コードEUC-JP、改行コードLFで保存されています。これらを扱えるエディタで編集し、文字コード及び改行コードを絶対に変更しないで下さい)。
+一行目のPerlへのパスを、貴方の環境に合わせて書き換えてください。
+「設定開始」から「設定終了」までの値を、貴方の環境に合わせて書き換えてください。
+「MTホームディレクトリ」とは、MovableTypeのCGIを設置したディレクトリ(mt.cgiが有るディレクトリ)のことです。このファイル(MT4i本体)からの相対パス、または絶対パスにて指定してください。
+編集後保存し、貴方のサーバーのCGIが実行可能な場所にアップロードします。
+編集・保存・アップロードの際、ファイルの文字コードは必ずEUC-JPのまま、他の文字コードに変換しないよう気をつけてください。他の文字コードに変換してしまうと、動かした時に文字化け等が発生する原因となります。
+パーミッションは「705」が推奨値です。これで動かない場合、「755」で動いたという報告もあります。サーバーの仕様によって異なると思いますので、適宜変更して下さい。
+文字コードUTF-8で運用している場合、Perlモジュール「[[Jcode.pm:http://openlab.jp/Jcode/index-j.html]]」が必須です。その他のコードで「Jcode.pm」がインストールされていない場合、「jcode.pl」を同一階層内に置く必要があります。「Jcode.pm」がインストールされていれば「jcode.pl」は必要ありませんのでご注意を。「jcode.pl」の最新バージョンは、以下のサイトよりダウンロードできます。
 [[jcode.pl official page:http://srekcah.org/jcode/]]
+アップロードした「mt4i.cgi」のURLに(設定にて$blog_idをしていない場合は「?id=貴方のblogのblog ID」を付加して)アクセスしてください。
+最新記事一覧が表示されれば設置完了です。

※「blog IDって何?」という方へ
 「mt4i.cgi」一行目のPerlパスだけをご自分の環境に合わせて変更し、MovableTypeホームディレクトリ(mt.cfgがある場所です)へアップロード後、パーミッションを「705」へ変更、ブラウザからアクセスしてみてください。

** FAQ [#oe4f049f]

-''「Your DataSource directory ('./db') does not exist.」というエラーが表示される''
--MT本体でBerkeleyDBを使用しており、MTホームディレクトリ(mt.cgiが有るディレクトリ)と別の場所にインストールした場合に発生するエラーです。MTホームディレクトリにあるmt.cfgを開き、DataSourceの指定を相対パス(./db)から絶対パスに変更して下さい。
-''画像が表示されない''
--画像の自動縮小表示機能を使用する場合、Entry内のimgタグで指定するURLに、転送アドレスは使用しないで下さい。必ず転送先の、実体があるURLを指定して下さい。転送アドレスを指定してしまうと、画像を取得できず、表示することができません。
--自宅サーバーなどで運用されている場合、画像の自動縮小表示機能が正常に動作しない(画像が表示されない)場合があります。自サイト内の画像を取得する際、ドメインの名前解決にグローバルIPを取得してしまい、取得に失敗する為と考えられます。自宅サーバーなどで運用され、画像が表示されない場合は、hostsファイルの「127.0.0.1 localhost」となっている行を、「127.0.0.1 localhost 貴サイトのドメイン名」と書き換えてみてください。(参考:[[KIKI ::GOLFとゴルフを楽しむページ:MT4Iで画像が表示されなかったら:http://kiki.minidns.net/archives/000025.html#more]])
--Entry内のimgタグで指定するURLパスに、半角スペースが使用されている場合、画像の自動縮小表示機能が正常に動作しません(画像が表示されない)。

* MT4i Mailing Listのご紹介 [#fdd25f43]

 MT4i開発者及びユーザーの情報交換の場として、メーリングリストを用意しました。以下のフォームより入会頂けます。
 新バージョンリリースのアナウンスはこちらにも流すようにしますので、入会して頂けばいちいちtalk to oneself 2をチェックしていただく必要はなくなります。また、改変版を公開されている方はそのリリース情報、ユーザーの方にはバグ報告や設置方法の質問などにご活用ください。
 フリーのメーリングリストサービスを使用している為、メールには広告等が含まれます。予めご承知おきください。

-[[入会手続きはこちらから:http://www.hazama.nu/t2o2/mt4i.shtml]]

* 今後追加したいと思っている機能(順不同) [#i776d8a6]
** 不具合報告等 [#c882a3de]

-月別一覧
-リンクに変換した画像タイプの表示
-リンクに変換した画像サイズの表示
-リンクに変換した画像に張られていたハイパーリンクへの対応
-エントリー投稿
-トラックバック閲覧
-アクセスカウンター
-アクセス解析
-更なる高速化

 できるのかどうか、技術的な検証は何も無しで、思いつきだけで書いています。このうちどれだけ実装できるのやら。

* 既知の不具合 [#e1a03259]

-バイト数制限機能にてページ分けされた際、blockquoteタグ、pタグ、ulタグなどが閉じられる前でぶった切られる場合がある(要するにタグが閉じられない場合があるってこと)。
-MTをUTF-8で運用している場合、文字化けする文字がある(「〜」など)。
-半角カナ変換をONにしていると、「)」の後の「。」が「゚」に変換されてしまう場合がある(原因調査中)。
-「Can't locate Jcode/Unicode.pm in @INC〜」のエラーが発生する場合がある(原因調査中)。

* 不具合報告等 [#c882a3de]

 不具合報告ほか、ご意見ご要望等は上記MT4i Mailing Listか、下記関連記事にコメントとして投稿して下さい。

* 当サイト内関連記事 [#xb395630]
** 当サイト内関連記事 [#xb395630]

-[[talk to oneself 2:MT4i Archives:http://www.hazama.nu/t2o2/archives/cat_mt4i.html]]

* このプログラムのライセンスについて [#o771e814]
** このプログラムのライセンスについて [#o771e814]

 このプログラムは「GPL」に従って配布します。

-[[GNU 一般公衆利用許諾契約書 - GNU プロジェクト - フリーソフトウェア財団 (FSF):http://www.opensource.jp/gpl/gpl.ja.html]]

 フリーウェアです。
 「GPL」の詳細は上記リンク先を読んでください。大まかな内容は以下などを参照してください。

-[[@IT:Linux用語辞典[GPL(General Public License)]:http://www.atmarkit.co.jp/aig/03linux/gpl.html]]
-[[@IT:Insider's Computer Dictionary [GPL]:http://www.atmarkit.co.jp/icd/root/14/5785014.html]]

 特に上記「今後追加したいと思っている機能」に関する改変は大歓迎です。

* 改変版を公開してくださっている方々 [#q86361b9]
** 改変版を公開してくださっている方々 [#q86361b9]

-[[Tonkey Magic:http://tonkey.mails.ne.jp/]]:[[MT4i_18T7:http://tonkey.mails.ne.jp/archives/000546.html]](v1.8をベースに、Entry投稿・編集機能など追加)
-[[人生迷い箸:http://valium.oops.jp/]]:[[MT4i181V:http://valium.oops.jp/wiki/pukiwiki.php?cmd=read&page=MT4i181V]](MT4i自動リンク『あいのり』機能追加)

* リンク集 [#jcd42348]
** リンク集 [#jcd42348]

 「[[Konpeki Blog:http://tsukihito.zive.net/kpb/]]」のTsukihitoさんが、MT4i設置サイトの自動登録リンク集を公開されています。
 設置された方は、是非登録して下さい。

-[[MT4i_Link ver.2:http://tsukihito.zive.net/l/mt4ilv2.cgi]]

* リンクなど [#b59a1f8c]
** リンクなど [#b59a1f8c]

 手抜きではありますが、以下のようなボタンを作成しましたのでご利用ください。
 必ず一度ローカルに保存、ご自分のサイトにアップロードして使用して下さいね。
 このページへのリンクに使用して頂いても結構ですし、ご自分が設置されているMT4iへのリンクでも結構ですし、ご自由にお使いください。
 もちろん、リンク無しで単に貼るだけでも、ご自分で新たに作られても、一向に構いません。

-&ref(http://www.hazama.nu/t2o2/archives/banner_mt4i_01.png,ボタン01);
-&ref(http://www.hazama.nu/t2o2/archives/banner_mt4i_02.png,ボタン02);
-&ref(http://www.hazama.nu/t2o2/archives/banner_mt4i_03.png,ボタン03);

 また、有志の方より以下のバナーをご提供いただいております。配布を快く承諾してくださり、ありがとうございました。

-&ref(http://www.hazama.nu/t2o2/archives/banner_mt4i_nagasawa_01.gif,nagasawaさん作バナー01);~
[[Modern Syntax::nagasawaさん作:http://www.aivy.co.jp/BLOG_TEST/nagasawa/]]

-&ref(http://www.hazama.nu/t2o2/archives/banner_mt4i_jun_matsuo_01.gif,Jun Matsuoさん作バナー01);~
[[DEPOLOG::Jun Matsuoさん作:http://depo.main.jp/]]

* 更新履歴 [#o8747f30]
** 更新履歴 [#o8747f30]

-2004/07/13 Version 1.81公開
--自blog内リンクをMT4iで表示機能追加
--コメント投稿フォームに注意書きを入れる機能追加
--chtmltransを経由させない機能追加
--Rebuildの対象とするテンプレートを指定する機能追加
--テキスト分割処理の高速化
--二重投稿防止機能追加
--長らく原因不明だった文字化け対策
-2004/01/21 Version 1.8公開
--画像縮小時、キャッシュサイズを判別し表示可能なサイズまで縮小する機能追加
--画像取得時、ポートの取得に失敗した場合のデフォルト値(80)を設定
--Amazonの個別商品リンクをi-mode版へのリンクに変換する機能の追加
--カテゴリセレクタ内の記事数に下書きEntryを含まないよう変更
-2004/01/05 Version 1.71公開
--画像自動縮小機能が働かない不具合への対策
-2003/12/29 Version 1.7公開
--BLOG設定のコメントのソート順に対応
--コメントのステータス(None,Open,Closed)に対応
--画像の自動縮小表示機能及びキャリア判別変換機能の追加
-2003/12/17 Version 1.61公開
--最新の個別記事から一覧に戻れない不具合への対策
--ミスタイプ"Shit_JIS"を"Shift_JIS"に変更
--タイトルが入力されていないEntryに対応
-2003/12/09 Version 1.6公開
--別Entryへコメントが投稿されてしまう不具合への対策
--管理者名、管理者メールアドレス表示機能の追加
--最近のコメント一覧表示機能の追加
-2003/12/02 Version 1.5公開
--一覧時各エントリー横にコメント数表示
--一覧時カテゴリー絞込み機能追加
--コメント投稿機能追加
--コメント投稿通知メール発信機能追加
-2003/10/28 Version 1.4 1公開
--Perl 文法チェッカにて表示されたメッセージの対策
--テキストフォーマットの設定が反映されない不具合への対策
-2003/10/14 Version 1.4 公開
--DBアクセスにMovableTypeをAPIの使用(DBを選ばなくなった)
--コメントの表示機能追加
--携帯電話の絵文字、アクセスキーへの対応
--画像表示時の戻るリンク追加
--画像URLの切り出しに失敗する不具合への対策
-2003/09/26 Version 1.3 公開
--MovableTypeのObjectDriverの使用([[DBIモジュール:http://member.nifty.ne.jp/hippo2000/perltips/dbimemo.htm]]経由への変更及びMySQLのサポート)
--UTF-8にて運用されている場合に一部文字化けが発生する不具合への対策
-2003/08/20 Version 1.2 公開
--バイト数カウントが正確に行われない不具合への対策
--ハイパーリンクをGoogleのchtmltrans経由に変換する機能追加
-2003/08/07 Version 1.1
--UTF--8環境にて文字化けする不具合への対策
--画像のALT表示機能追加
--画像へのリンク機能追加
-2003/08/06 Version 1.0
--公開開始


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS