Dreamweaverには特定の拡張子のファイルを編集するときに使用する外部エディタを指定できるようになってます。

それは「編集」→「環境設定」で出てくるダイアログの「ファイルタイプ/エディタ」の「外部コードエディタ」で指定することができます。

ですから、Dreamweaverでファイルを編集中に「編集」→「エディタを指定して編集」すれば、外部エディタが起動して編集することができるようになっています。

Dreamweaverのコードエディタがいまいち馴染めずに本格的に外部エディタで編集したいときには大変重宝する機能です。

ところが、です。

ファイルパネル(「ウインドウ」→「ファイル」で表示オン/オフ)でファイルを選択して右クリックしたときに「エディタを指定して開く」の先に出てくるエディタ名は、みなさんどうなってますか?

.jsや.cssの拡張子を選んで右クリックし、「エディタを指定して開く」を選んだ先は「Dreamweaver」と「参照」しかなくないですか?

photo

これを「外部エディタ」で開くには「参照」してCドライブのProgramフォルダから外部エディタを指定するなんて正直やってられません。

これを自分に馴染んでいるエディタから「参照」せずに開くためにはどうしたらいいのでしょうか。

すげー探しました。

いろいろ検索したら外国のサイトに答えが載っていました!

Modify Dreamweaver to Open files in Vim

これです! 私がしたかったことは!

とりあえず以下は自己責任で、関連ファイルはバックアップを取ってから始めてください。

1. DWContext_LocalSite_OpenWith.xml の編集


(Dreamweaver8 x WindowsXPの場合)
C:\Documents and Settings\(ユーザ名)\Application Data\Macromedia\Dreamweaver 8\Configuration\Menus\Cache\Menus\
(Dreamweaver CS3 x Windows XPの場合)
C:\Documents and Settings\(ユーザ名)\Application Data\Adobe\Dreamweaver 9\Configuration\Menus\Cache\Menus\

このフォルダの中に「DWContext_LocalSite_OpenWith.xml」というファイルがあるので、これを編集すればいいらしい。文字コードがUTF-8なので、ユニコードが編集できるメモ帳などのエディタを使ってくださいね。

<menus xmlns:MMString="http://www.macromedia.com/schemes/data/string/">
<menuitem name="_Dreamweaver" file="Menus/MM/Dreamweaver_Editor.htm" id="DWContext_LocalSite_OpenDW" />
[ここに外部エディタのメニューを挿入するようにコードを書く]
<menuitem name="エディタが見つかりません" enabled="true" file="Menus/MM/Editors_Dynamic.htm" id="DWContext_LocalSite_OpenWith_NoEditors" dynamic="true" />

[ここに…]の外部エディタの記述は、TeraPadを例にあげると次のようになります。

<menuitem name="_TeraPad" file="Menus/TP/TP_Editor.htm" id="DWContext_LocalSite_OpenDW" />

file="Menus/TP/TP_Editor.htm"
の記述は自分で好きなようにしていいですが、このファイルを後から作らないといけません。

編集が終わったらファイルを保存して閉じます。

2. 外部エディタを指定するファイルのコピー


(Dreamweaver8 x WindowsXPの場合)
C:\Program Files\Macromedia\Dreamweaver 8\Configuration\Menus\MM
(Dreamweaver CS3 x Windows XPの場合)
C:\Program Files\Adobe\Adobe Dreamweaver CS3\configuration\Menus\MM

ここのフォルダに
Dreamweaver_Editor.htm
Dreamweaver_Editor.js
のファイルがあるので、これを1.の挿入行に記述した内容に対応するフォルダを作成し、そこにコピーします。

上記の私の例ですと、Menusフォルダ下にTPというフォルダを作ります。
参照サイトのaaronさんですと、ABフォルダを作ることになります。

3. 外部エディタを指定するファイル(htm)の編集


コピーした2つのファイル名を1.の挿入行に記述した内容に対応する名前に変更します。

私の例ですと、TP_Editor.htm、TP_Editor.jsとなります。

で、リネームした(自分のお気に入り外部エディタ).htmを開き、
<SCRIPT SRC="Dreamweaver_Editor.js"></SCRIPT>
の部分の「Dreamweaver_Editor」を1.で記述した内容に変更します。
私の例ですと、TP_Editor.jsとなります。

4. 外部エディタを実行させるファイル(js)の編集


私の例ですと、TP_Editor.jsとなりますが、このファイルを開きます。

10行目あたりにエディタのプログラムパスを参照サイトを参考に書き込みます。
参照サイト
dw.openWithApp(fileName,'file:///C:/Program%20Files/Vim/vim70/gvim.exe');

私の例(TeraPadをtpad090フォルダに入れている場合)
dw.openWithApp(fileName,'file:///C:/Program%20Files/tpad090/TeraPad.exe');

で、
 }
return true;
}
の前までの行を削除するか、コメント化(「//」を行頭につける)します。

これでHappy?


もし、うまくいけば、これからファイルパネルからファイルを指定して右クリックし、「エディタを指定して開く」を選ぶと、お気に入りの外部エディタが表示され、そのエディタで編集できるようになります。

なんてすばらしいんでしょう!(って思ってるのは私だけかもしれないけど)

ただ、これだと、htmlファイルを右クリックしたときに、メニューが重複して出ることあります。

photo

……けど私に言わせれば「そんなの関係ねぇ!そんなの関係ねぇ!」です。気にしない気にしない。

ファイルパネルから「参照」なしにお気に入りエディタでいつでも開けることから比べればね。

秀丸エディタでもWZ EditorでもEmEditorでもphpエディタでもなんでもいいですぜ、ダンナ。

これであなたも私も「オッパッピー(OCEAN PACIFFIC PEACE)」?