職場のWindowsでレンタルサーバーのWordpressのテーマをいじっています。
いろいろと試行錯誤の末、FileZillaでSFTP接続して、コードの修正はgnupackのEmacsで・・・というところで落ち着いてきたのですが困ったことになっています。
Filezillaは他のFTPクライアントと同様、リモートのファイルをダブルクリックすると、拡張子に関連付けられたアプリケーションで編集できる仕組みがります。ローカルのテンポラリフォルダにファイルを転送してきて、そのファイル(テンポラリファイル)をWindowsに開かせているようです。ここまでは良いです。
問題は、異なるディレクトリの同じファイル名の二つのファイルを同時に編集したいときです。
リモートサーバのAディレクトリにあるhoge.txtをダブルクリックすると、FileZillaはテンポラリフォルダに「hoge.txt」というファイルを作ってエディタに開かせます。次にBディレクトリのhoge.txtをダブルクリックすると、テンポラリフォルダの中にはすでに同じファイル名が存在するので、FileZillaは2番めのhoge.txtを「hoge 2.txt」という名前に変えて保存し、エディタに開かせようとします。ところが、Emacsでは空っぽのファイルしか開きません。
おかしいなー、と思ってよく見てみたら、Emacsのモードラインには「hoge 2.txt^J」を開いているよ、という表示。
^J・・・?
改行コードついとる!!
Emacsのバッファのリストを見ても、ご丁寧に「hoge 2.txt」のあとで改行されてます。
はいはい、そうだよね。改行してたら別のファイルだよね・・・。
どうやら、FileZillaが「hoge.txt」を「hoge 2.txt」と改名するときに、「hoge 2.txt(改行)」として保存してしまうバグを抱えているようです。
ちなみにEmacs以外のエディタだと、秀丸でもサクラでもNotepad++でも、問題なく開けます。
これはもう、FileZillaかEmacsを乗り換えなさい、ということでしょうか。そもそもデベロッパ気取りでEmacsとか使うならFTPクライアント別立てとか日和ってんじゃねえよ、という話でしょうか。
バグ報告はフォーラムが英語の時点で諦めました。今は本職でもないですし。
Windowsは8.1、FileZillaは投稿の時点で最新の3.13.0、Emacsは前述のとおりgnupackの24.5.1です。