web-dev-qa-db-ja.com

崇高なテキスト3でファイルから^ Mを削除するにはどうすればよいですか?

ブランチでgit diffを実行すると、行末に^ Mという文字が含まれていることがわかります。

^M Line Endings

変更をコミットする前に、これらをUnixの行末で置き換えたい。

Ubuntu 14.04、gitおよび崇高なテキスト3を使用しています。

ご協力いただきありがとうございます。

編集:

他のユーティリティやコマンドを使用せずに、崇高なテキスト3の行末を変更する方法を探しています。

20
Achraf JEDAY

私はすべての開いているファイルの行末をUnix/Windows/Mac OS 9に変換する崇高なテキスト plugin を見つけました。

インストール

  1. Sublimeを開き、[設定]> [パッケージの参照]に移動します。ウィンドウが開きます。
  2. この repository のコンテンツを、前の手順で開いたPackages /フォルダーに、パッケージ名とまったく同じ名前のフォルダーにダウンロードまたは複製します。

/home/YOUR_USERNAME/.config/sublime-text-3/Packages

使用法

  1. 崇高に戻り、変換したいすべてのファイルを開きます。
  2. すべてのファイルが開いたら、CTRL + SHIFT + Pを押して、「すべてのビューの行末:Unix」を検索して選択します。
  3. CTRL + ALT + Sを押して、開いているすべてのファイルを保存します。
3
Achraf JEDAY

Linux(パッケージdos2unix)でdos2unixコマンドを使用するか、メニュー項目View/Line EndingsのSublime Textで行末を変更できます。

13
Jan Čejka

これは、上部のメニューから、またはステータスバーを介してプラグインなしで実行できます(ただし、機能を有効にする必要があります)。

上部のメニューから変更するには、[表示]-> [行末]-> [目的の行末の種類を選択]をクリックします。

ステータスバーからこれを有効にするには:[設定]-> [設定]をクリックし、右側の"show_line_endings": true,括弧の間のどこかに{}を追加します。最後に、変更を保存します。

これにより、下部に表示されるステータスバーの右側の小さなセクションが有効になります。現在のEOLエンコーディングがわかり、ボックスをクリックして別のタイプを選択すると、ファイルのEOL文字が変更されます。

もう1つの便利なオプションは、上記と同じ設定に従うだけでなく、"show_encoding": true,マークの間に{}を追加することで、ステータスバーでも有効にできるファイルエンコーディングです。

13
K.B.

^M\r(Control-M、またはキャリッジリターン)です。

これは、ファイルをコミットしたユーザーが、行末に\r\nを使用するWindowsを使用していたためと考えられます。 Linuxは\nのみを使用するため、行の最後に^Mが表示されます。

おそらく、次のいずれかを実行する必要があります。

  • \nなどのツールを使用して)dos2unix行末を含むようにファイルを「修正」してコミットします。その場合は、以下のことを行わせない限り、他のユーザーと戦うことになります。
  • 各環境で行末を正しく処理するように両方のgitインストールを構成します-例: https://stackoverflow.com/questions/10418975/how-to-change-line-ending-settings
  • 'Windowsの行末'でファイルを開くようにSublimeを設定します
7
Attie

^ Mの新しい行を削除するために追加のプラグインをインストールしたくない場合は、

  1. 崇高なテキスト設定で、"trim_trailing_white_space_on_save": true,保存時にスペースを自動的に削除します。 (このステップはオプションの場合があります)

  2. 開いているファイルで、崇高なテキストの右下隅をクリックします。 WindowsUnixに変更して保存します。

  1. ^ Mはなくなりました。楽しい。
3
harrrrrrry