2013-04-26 16 views
75

私は私のWindowsマシン上のUNIXサーバーからファイルを開いたとき、彼らは時折MacintoshのEOL変換を持っている、と私は編集時/再保存彼らは、UNIX上では正しく動作しません。サーバ。私はnotepad ++を使ってこのunixサーバーからファイルを編集するだけです。ファイルを開くたびに自動的にEOLをUnix形式に変換するマクロを作成する方法はありますか?EOL変換++

+0

可能複製(:-) http://stackoverflow.com/questions/11341660/change-eol-on-multiple-files-in-one- go) –

+1

ご使用のFTPプログラムに問題がある可能性があります。たとえば、WinSCPを使ってUnixサーバにリモート接続すると、Notepad ++がデフォルトのエディタに設定されていますが、WinSCPの設定に入り、行末を保存するために転送モードを「バイナリ」に設定する必要がありました。したがって、FTP/SCP/etcプログラムを再構成して、異なる方法でファイルを転送することができます。 – Slicktrick

答えて

133

この機能は既にNotepad ++に組み込まれています。 [編集]メニューから[EOL変換] - > [UNIX/OSX形式]を選択します。また、 "設定" - > "環境設定" - > "新規ドキュメント/デフォルトディレクトリ"で、デフォルトのEOLをnotepad ++に設定し、フォーマットボックスの下の "Unix/OSX"を選択することもできます。

+6

私は編集メニューでの変換について知っています、あなたが言及した設定は新しい文書のためだけです。開いているすべてのファイル(または保存したすべてのファイル)の変換を自動的に行いたい – Jeff

+0

問題は、既存のUnixファイルを開くときに、「EOL変換」 - > UNIX/OSX形式がグレー表示されていることです。 Notepad ++はUNIXファイルで使用するのが難しいので、Notetab Liteを使用して、新しいファイルだけでなくすべてのファイルをUNIXとして保存することができます。 –

+2

@OffTheGold UNIX EOLオプションは現在選択されているため、グレー表示されています。 – blakeoft

9

メモ帳++では、replace allには正規表現を使用します。これは、各ファイルを開いたり、n個のドロップ(数百のファイル上では目立って遅くなります)をドラッグしたりしなくても、フォルダ全体を操作でき、ファイル名のワイルドカードフィルタを設定することもできます。

(\r?\n)|(\r\n?) 

\n 

これはバック\ nにすべての可能なラインエンディングパターン(単一の\ R、\ Nまたは\ r \ n)と一致します。複数のファイルを操作する

、次のいずれか

  • 使用すると、タブを「置き換え」で「すべての開いている文書にすべて置換」。メモ帳にまずすべてのファイルをドラッグアンドドロップする必要があります。どのファイルを操作するのかを制御できますが、数百または数千のファイルがある場合は遅くなることがあります。
  • 「ファイルで検索」タブの「ファイルを置き換える」、たとえば指定したディレクトリの下にある* .cpp * .csなど、選択したファイルフィルタで指定します。
+0

これは、\ r \ n \ r \ nを1つの\ nに置き換えたためにEOLが失われる可能性があります。おもう。 – Sunspawn

+0

Notepad ++ 6.9.1で動作確認。それは前方を検索するため、後方にあるものを再帰的に置き換えることはありません。 – Wappenull

1

は、私は私が私場合:-(

何をしたかに関係なく、常にMacの形式で開かれた私のLinuxサーバ上のPHPファイルがありませんでした ++メモ帳でファイルを開くWinSCPのから「直接」ファイルを開きますファイルをダウンロードしてからローカル(Windows)から開いた。それはDOS/Windowsとして開いていた。hmmm

解決策は、ローカルファイルを "UNIX/OSX形式"にEOL変換してから保存してから

今すぐサーバーから直接ファイルを開くと、 "D OS/Windowsの」[一回で複数のファイルに変更EOL]の

関連する問題