らくらくタグ入力

二〇〇四年 弥生 拾一日 (木)

MovableTypeというウェブログツールは大変よくできております。設定に時間がかかるというのは、それだけきめ細かい設定ができるということの裏返しなんですな。もともとは英語のツールなんですが、みらのさんという方が日本語化パッチを作ってくれていますので、英語ができなくても安心。いたれりつくせりですなぁ。

そんなMovableTypeなんですが、不肖私目は最近までMobileTypeだと思っていたんです、もばいるたいぷって。なんでウェブのツールなのにモバイルなんだろうって大変疑問に思っていた次第なんですが、何のことはない、勘違いでした。いやはやお恥ずかしい。
悔しいのでぐぐってみると、結構勘違いしてる人がいるようで安心いたしました。

☆★☆

 気を取り直してちょっとしたTipsをご紹介いたしましょう。
 エントリーの入力をするときにカテゴリーのプルダウンメニューの右下あたりに便利なボタンがそろっていることは、ブロガーの皆さんお気づきのことと思います。文字を選択した状態でboldを押すと選択しておいた文字が太くなったり、italicを押すと斜めになったり、楽チンです。ただ、使い込んでいくうちに不満も出てきますなぁ。勝手なものです。
 たとえばlinkを押すとURLを入力するダイアログが表示されて、リンク先のURLを入力すると自動的にタグが挿入されるのですが、私の場合、target="_blank"を設定したいのですが、いったんタグが挿入された後に手で入れる必要があったんですね。一回や二回ならたいしたことはないのですが、基本的にほかのサイトの内容に頼り切っている自主性のないサイトですので、しょっちゅう手で入力することになってきます。ああ、めんどうだなぁ、最初からtarget="_blank"が設定されていたらなぁ、とため息をつく毎日でありました。

 でも、いつまでもため息をついているわけには参りません。行動を起こさねば!調査です。
まずはエントリー入力画面のソースを眺めまして、このボタンを表示している箇所を探します。そうするとこの機能を実現しているのはinsertLinkという関数であることがわかりました。今度はこのinsertLinkを定義しているMTのファイルを探します。サーバー上にあるものを探すのは大変なので、アップロードしたものから探すことにします。Windows XPを使っていますのでエクスプローラーから検索をします。ディレクトリを右クリックしてメニューから検索を指定、「ファイルに含まれる単語または句」というところに「insertLink」と入力して検索実行!!しばぁらく待っておりますと右側に「insertLink」を含むファイルが表示されてまいります。それによりますと、tmpl/cmsディレクトリの二つのファイル、edit_entry.tmplとbm_entry.tmplであることがわかりました。修正するのはこの二つということになりますなぁ。

 おもむろにこのファイルをエディタで表示させ、エディタの検索機能で「insertLink」を検索しますと、ありましたありました。ここを変更すればいいらしいですな。変更前はこんな感じ。

function insertLink () {
    if (!document.selection) return;
    var str = document.selection.createRange().text;
    if (!str) return;
    var my_link = prompt('<MT_TRANS phrase="Enter URL:">', 'http://');
    if (my_link != null)
        document.selection.createRange().text = '<a href="' + my_link + '>' + str + '</a>';
}

これをこんな風にしましたところ、見事にtarget="_blank"が入るようになりました。

function insertLink () {
    if (!document.selection) return;
    var str = document.selection.createRange().text;
    if (!str) return;
    var my_link = prompt('<MT_TRANS phrase="Enter URL:">', 'http://');
    if (my_link != null)
        document.selection.createRange().text = '<a href="' + my_link + '" target="_blank">' + str + '</a>';
}

でもまったく同じコーディングが二つのファイルにあるというのは、なんとなく解せませんなぁ。

書いた人 srock : March 11, 2004 09:05 PM
TrackBack URL :