May 25, 2005

External Editor Extension for FireFox

FireFox 用の Extension で External Editor というのがある。フォームなどのテキストエリアの内容を外部のエディタで編集できるようにするもの。普段使い慣れたエディタでの編集ができるというのは結構助かることが多いかと思う。が残念ながら日本語が文字化けしてしまう。

ということで早速日本語対応してみた!

ちなみに Extension の拡張子は xpi となっているが実はこれただの zip ファイルで、解凍するといくつかファイルやフォルダが作成される。その中の install.rdf に、その Extension に関する情報が入っている。でもソースではないので、あまり見ても面白くない ^^;
chrome というフォルダの中にある *.jar(今回の場合 externaleditor.jar)にソース本体がある。これもただの zip なので普通に解凍可能。External Editor の場合、externaleditor.js というのがソース本体らしい。

ざっと眺めると、下の方でテキストエリアの内容をファイルに書出して、編集終了後に再度テキストエリアに戻してる部分がある。テキストエディタの代わりにバイナリエディタで書出された内容をダンプすると、なんとなく文字コードおかしい?ってことでいろいろ試行錯誤した結果 Shift-JIS に変換してやってそれをファイルに書出すようにして、戻すときは UTF-8 に変換する、ということで解決できた。

ってか内部の文字コードって UTF-8 っぽいんだが、変数の型が悪いんだがなんだかよく分からないが、とにかくテキストエリアから拾ってきた文字コードそのままではちゃんと書出せない。Shift-JIS に変換するんではなく代わりに UTF-8 に変換してその文字列を書出した場合でもちゃんと書出される。変換前の文字列って一体何?ってな感じだが、まぁ動いたしいいかなぁ。

Mozilla の Extension 一覧からは v0.4.2 がダウンロード可能だが、作者のページでは既に v0.5 が最新版らしく、自分の改変も v0.5を元にしている。ちなみに v0.5ではライセンスについて言及されてあって、Mozilla Public License Version1.1 です、ってなってる。で、現在作者に再配布していい?もしくはオリジナルに取り込んでくれる?って問い合わせ中。配布できるようであれば後日改めて配布しようと思う。


Related Info.

Comments

Andy wrote:

MozExがうまく動かないことが多く,最近放置気味でした。
これが使えるんだったらうれしいなあ。
Posted on May 26, 2005 02:52:09

Kimitake wrote:

実はフォーラムでの Andy さんの発言を見て、MozEx 入れてみたんですが、なんか古いらしく他の Extension も入れろ、ってなことでやってみたもののうまく動かなかったので他の探して今回の見つけました。

で、作者から早速返事がきました。MPL で配布するなら全然かまわない(まぁ当然と言えば当然なんだが ^^;)とのことなので、今夜にでもパッケージにして配布を開始しようと思います。

ちなみに作者も言及してますが、外部エディタを起動中、他の FireFox も含めてすべてロック状態になります。どうやって直すんじゃ-ってな愚痴?も書かれてあるので、お礼がてらにそのあたり調査してみようかと思ってます。解決しない可能性大ですが ^^;

あ、そうか MozEx がどうやってるか見てみるというのも手だなぁ。ってか MozEx の方はこのあたりどんな挙動してたんですか?
Posted on May 26, 2005 09:37:36

kitsune.info wrote:

あ、そういえば私も MozEx ではまりました。
なんか JavaScript のライブラリとか入れなきゃいけないんでしたっけ。
で、あっちもエンコードをうまく渡せなかったのですよ。

テキストエディタによっては起動パスにオプションをつけてエンコードを固定できるわけですが、それがどうやるのかわからなかったんだっけな?
Posted on May 26, 2005 14:54:16

Kimitake wrote:

MozEx は Firefox の 0.9までしか対応してないようで、そういう場合、古い Extension を使えるようにする Show Old Extensions という別の Extension が必要、というところまで分かったので、他にも現在古くて使えなくなってる Extension もあるのでそりゃ便利だ!と思って入れてみたんですが、駄目でした。もちろん他の古くて使えない Extension も同様。なんか設定ミスをしてたかもしれないんですが、そういう既にメンテされてないツールを無理やり使うのもなぁ...ということで探したら External Editor が出てきたんです。
Posted on May 26, 2005 15:11:59

Andy wrote:

MozExはShow Old Extensionsがいる上,普通に配布されているのでは日本語が動かず,どこかの中国語のページからダウンロードする必要があるのですが,それがまた普通にダウンロードできず,結局日本語でその説明をしているページからのリンクをたどってやっとダウンロードできたような記憶があります。かなり面倒でした。
Posted on May 28, 2005 05:53:08

Add Comments

※下記の単語・フレーズはコメントで使用できません。大文字・小文字は同一視します。
poker, backgammon, tramadol, casino, insurance, loans
JavaScript is required when you submit comment %20%20%3c%61%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%22%3e%3c%2f%61%3e %3c%66%6f%72%6d%20%6d%65%74%68%6f%64%3d%22%70%6f%73%74%22%20%61%63%74%69%6f%6e%3d%22%23%6e%75%63%6c%65%75%73%5f%63%66%22%3e %09%3c%64%69%76%20%63%6c%61%73%73%3d%22%63%6f%6d%6d%65%6e%74%66%6f%72%6d%22%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%61%63%74%69%6f%6e%22%20%76%61%6c%75%65%3d%22%61%64%64%63%6f%6d%6d%65%6e%74%22%20%2f%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%75%72%6c%22%20%76%61%6c%75%65%3d%22%68%74%74%70%3a%2f%2f%6b%69%6d%69%74%61%6b%65%62%6c%6f%67%2e%6e%65%74%2f%69%74%65%6d%2f%31%38%33%22%20%2f%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%69%74%65%6d%69%64%22%20%76%61%6c%75%65%3d%22%31%38%33%22%20%2f%3e %09%09 %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%62%6f%64%79%22%3eコメント%3a%3c%2f%6c%61%62%65%6c%3e %09%09%3c%74%65%78%74%61%72%65%61%20%6e%61%6d%65%3d%22%62%6f%64%79%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%66%69%65%6c%64%22%20%63%6f%6c%73%3d%22%34%30%22%20%72%6f%77%73%3d%22%31%30%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%62%6f%64%79%22%3e%3c%2f%74%65%78%74%61%72%65%61%3e %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%6e%61%6d%65%22%3eお名前%3a%3c%2f%6c%61%62%65%6c%3e %09%09%3c%69%6e%70%75%74%20%6e%61%6d%65%3d%22%75%73%65%72%22%20%73%69%7a%65%3d%22%34%30%22%20%6d%61%78%6c%65%6e%67%74%68%3d%22%34%30%22%20%76%61%6c%75%65%3d%22%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%66%69%65%6c%64%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%6e%61%6d%65%22%20%2f%3e %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%6d%61%69%6c%22%3eウェブサイト%3a%3c%2f%6c%61%62%65%6c%3e %09%09%3c%69%6e%70%75%74%20%6e%61%6d%65%3d%22%75%73%65%72%69%64%22%20%73%69%7a%65%3d%22%34%30%22%20%6d%61%78%6c%65%6e%67%74%68%3d%22%36%30%22%20%76%61%6c%75%65%3d%22%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%66%69%65%6c%64%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%6d%61%69%6c%22%20%2f%3e %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%65%6d%61%69%6c%22%3eメール%3a%3c%2f%6c%61%62%65%6c%3e %09%09%3c%69%6e%70%75%74%20%6e%61%6d%65%3d%22%65%6d%61%69%6c%22%20%73%69%7a%65%3d%22%34%30%22%20%6d%61%78%6c%65%6e%67%74%68%3d%22%31%30%30%22%20%76%61%6c%75%65%3d%22%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%66%69%65%6c%64%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%65%6d%61%69%6c%22%20%2f%3e %09%09 %09%09%3c%69%6e%70%75%74%20%74%79%70%65%3d%22%63%68%65%63%6b%62%6f%78%22%20%76%61%6c%75%65%3d%22%31%22%20%6e%61%6d%65%3d%22%72%65%6d%65%6d%62%65%72%22%20%69%64%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%72%65%6d%65%6d%62%65%72%22%20%20%2f%3e %09%09%3c%6c%61%62%65%6c%20%66%6f%72%3d%22%6e%75%63%6c%65%75%73%5f%63%66%5f%72%65%6d%65%6d%62%65%72%22%3e情報を記憶しておく%3c%2f%6c%61%62%65%6c%3e %09%09%3c%69%6e%70%75%74%20%74%79%70%65%3d%22%73%75%62%6d%69%74%22%20%61%6c%74%3d%22コメントを追加%22%20%76%61%6c%75%65%3d%22コメントを追加%22%20%63%6c%61%73%73%3d%22%66%6f%72%6d%62%75%74%74%6f%6e%22%20%2f%3e %09%3c%2f%64%69%76%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%6e%70%5f%70%72%6f%74%65%63%74%62%79%6d%64%35%22%20%76%61%6c%75%65%3d%22%32%34%39%33%65%65%33%39%36%64%64%65%66%38%31%64%62%32%31%65%32%33%34%31%38%30%63%35%35%36%33%30%22%3e %3c%69%6e%70%75%74%20%74%79%70%65%3d%22%68%69%64%64%65%6e%22%20%6e%61%6d%65%3d%22%6e%70%5f%70%72%6f%74%65%63%74%62%79%6d%64%35%5f%68%61%73%68%22%20%76%61%6c%75%65%3d%22%66%38%37%36%33%65%33%65%37%30%61%39%39%31%30%63%35%31%30%30%38%32%61%32%36%35%63%32%61%37%38%66%22%3e %3c%2f%66%6f%72%6d%3e %20%20

OpenID を使ってログインすることができます。

Identity URL:

Trackbacks

トラックバック
このエントリにトラックバックはありません
このトラックバックURLを使ってこの記事にトラックバックを送ることができます。 もしあなたのブログがトラックバック送信に対応していない場合にはこちらのフォームからトラックバックを送信することができます。.
visitor stats