web-dev-qa-db-ja.com

すべてのタブと開いているすべてのファイルの行末を設定する

Windowsの行末が必要な場合、ファイル/タブのいくつかはどういうわけかUnixの行末になります。表示>行末>ウィンドウに移動できますが、これは現在開いているファイル/タブにのみ適用されます。私はすべてのファイルに対してこれを実行する必要はありません(これを実行しました)。しかし、これを行っても、他のファイルを開くと、UNIXで設定されることがあります。開いているか開いていないかにかかわらず、すべてのファイルに適用できる単一の設定はありますか?

[設定]> [設定-デフォルト]に移動し、default_line_endings設定に移動すると、その値は「システム」に設定されます。私は「設定-ユーザー」設定でこれをオーバーライドできることを知っていますが、行末が何らかの形で混乱する前にこれを行う必要はありませんでした。別の方法はありますか?

また、sublimetextを再インストールした場合、これは修正されますか、それとも行末はファイル自体に依存していますか?おそらくファイル内のどの行末が使用されているかに基づいて、どの行末を使用するかを決定する崇高なテキストになると思います。しかし、私は確かにこれを知りません。さらに、私の行末はすべて、UnixのLFではなく、ウィンドウのCRLFでした。

崇高なテキストで行末を制御することは、現在のファイルを表示または設定するための一括の方法も、将来のファイルのために設定するための一括の方法もないため、現在のところややこしいです。

どんな知識もいただければ幸いです。

17
ahnbizcad

Line Endings プラグイン/パッケージは小さいですが、魅力のように機能します GitHubレポジトリ にアクセスすると、パッケージコントロールページに説明がないため、いくつかの詳細を取得できます。

これは機能するだけでなく、追加の機能も提供します。行末だけでなく、開いているすべてのファイルのインデント方法も1ステップで変更できます。

インストール後:

  1. 行末やインデント方法を変換/変更したいすべてのファイルを開きます。

  2. 押す Ctrl+Shift+P、コマンドパレットを表示し、linと入力してLine Ending to all views: Windowsを見つけます(たとえば)。

  3. それを選択し、ヒット Enter、そして...あなたは終わった!

  4. 手順2を繰り返しますが、spacesと入力してIndentation: Convert to all views to Spacesを見つけるか、tabsと入力してIndentation: Convert to all views to Tabsを見つけ、開いているすべてのファイルのインデント方法を変更します。

このプラグインにバグがあるか、Sublime Text 3が時々少しワコになることに注意してください。一部の検索では、上記のコマンドが明らかになりませんでした。そして、コマンドパレットを閉じて再度開き、もう一度シーケンスを入力する必要がありました。特に、ST3に何らかの種類のリンターがインストールされている場合、linと入力すると、そのコマンドが Line Endings のコマンドを妨害する可能性があります。

21
trejder

あなたが望むことをするプラグインがあります sublime-line-endings-unify

default_line_endings設定は新しいファイルにのみ影響します。 Sublimeは、既存のファイルにすでに存在する行末を使用します。おそらく、エンディングを変更するツール(ソース管理システムなど)を使用しています。 Sublime自体は、明示的に変更しない限り変更されません。

6
Eric Huss