Sublime Text 2で4つのスペースをタブに置き換える方法は?


310

ここに画像の説明を入力してください

別のテキストエディターで記述されたすべての「4つのスペース」をタブで置き換えたい。どうすればできますか?

回答:


639

ステータスバーの右下隅をクリックしSpaces: N(またはTab Width: N、ここでNは整数)、Tab Width: 44つのスペースからの変換を示していることを確認してConvert Indentation to Tabsから、最初のクリックから表示されるコンテキストメニューから選択します。

同様に、反対の操作を行う場合は、ステータスバーのSpacesまたはをクリックしてTab Width、同じメニューから選択します。

ここに画像の説明を入力してくださいここに画像の説明を入力してください


3
すべての答えは正しいですが、これが最も簡単です。ありがとう
Mohsen

1
お奨めは認めます。それは:)ステータスバーのコンテキストメニューを使用したことはありません、私はいつもそれらが静的インジケータであると思っていたと思います。
Ekin Koc

2
彼らはおそらくそうあるべきほど目立たないです、私は崇高なノーショーストッパーのために私が提出しなければならないいくつかのバグがあります。優れたエディター。
ncremins

エディターにプロジェクト内のすべてのファイルのこの設定を記憶させたい場合は、崇高なプロジェクトファイルの設定を利用することもできます
Michael

1
@phreakhead私はあなたのニーズを完全に理解しているかどうかはわかりませんが(新しい質問を開くことを検討していますか?)、translate_tabs_to_spacesをfalseに設定している場合、(新しいテキスト)を入力してタブを押すと、タブ文字になります。(タブではなく)すでに4スペースとしてインデントが設定されているファイルがある場合は、スクリーンショットのメニューの下部にあるオプションを使用して、インデントをタブに変換できます。
マイケル

106

すべて選択してから:

Windows / Linux:

Ctrl+ Shift+p

次に「インデント」と入力します


マック:

Shift+ Command+p

次に「インデント」と入力します


これは、キーボードに手を置いている最速です。+1
eduncan911 2015年

すばらしい...これは、2行のインデントが付属するBootstrapなどのファイルから「行を再インデント」するオプションを提供します
Shina

私はこれは彼が求めていることを正確には実行しないと思います。これにより、行が再度インデントされるため、実際にインデントが変更され、スペースをタブに変換することについてのみ尋ねています。とにかくそれは良い答えですが、場合によってはインデントをめちゃくちゃにする可能性があります(たとえば、ブレードのインデントされたテンプレートを考えてみてください)。
セルジラモン

貼り付けられたコードをコピーするとうまく機能するので、これはより良い方法です。
SaurabhM

45

常にタブを使用するようにSublimeを構成するには、preferences-> settings-userに以下を追加してみてください。

{
    "tab_size": 4,
    "translate_tabs_to_spaces": false
}

詳細はこちら:http : //www.sublimetext.com/docs/2/indentation.html


5
これは正解です。「スペースを使用してインデント」を選択した後でも、そのオプションは再起動時にリセットされます。
mvd 2013年

1
OPはその逆を求めた。奇妙なことに、選択肢はありません。タブ嫌い。
phreakhead 2014


9

\t(バックスラッシュ-t、タブ)の正規表現「検索」を実行し、4つのスペースに置き換えます。

メインメニューまたは右下のステータスバーの間隔メニューのいずれかが同じことを行い、作業が少なくなります。


3
これは、ポスターが要求したものの逆です
Max Nanasy 2013

3
@MaxNanasyそうですね。タブ文字の嫌いはあまりにも深いので潜在意識だと思います。
デイブニュートン

2
この回答は、尋ねられる質問とはまったく無関係です。正解に変更するか、解答を削除してください。
Randy the Dev

2
@AndrewDunn「完全に」?本当に?何かの逆が「完全に」無関係であるにはどうすればよいでしょうか。定義それは、関連だし、修正が明らかです。答えを編集する能力さえあれば。
デイブニュートン

6

最速の方法でキーバインドを作成する

{ "keys": ["super+alt+t"], "command": "unexpand_tabs", "args": { "set_translate_tabs": true } }

これを[ 設定]> [キーバインド(ユーザー)]に追加 します。super+ alt+ を押すtと、スペースがタブに変換されます


2

簡単なキーバインドを追加できます:

設定>キーバインド-ユーザー:

[
    { "keys": ["super+l"], "command": "reindent"},
]

次に、行またはファイルを選択してヒットします:command + l


0

この変更をディレクトリ内のすべてのファイルに再帰的に適用する場合は、[検索]> [ファイルから検索...]モーダルを使用できます。

ファイルモーダルで検索

編集画像では強調表示していませんが、Sublimeが検索フィールドを正規表現として解釈するようにするには、左側の。*ボタンをクリックする必要があります/編集

編集2文字列の開始アンカーを正規表現に追加するのを怠っていました。以下で修正しています。機会があったら画像を更新します/編集

[検索]フィールドの正規表現は、^[^\S\t\n\r]{4}4つのグループの空白文字と一致します(タブと改行文字を除く)。replaceフィールド\tは、それらをタブに置き換えることを示します。

[場所]フィールドの右側にあるボタンをクリックすると、検索、置換のターゲット設定に役立つオプションが表示されます。Add Folderオプションを使用すると、再帰的に検索するフォルダを選択できます。このAdd Include Filterオプションを使用すると、検索を特定の拡張子のファイルに制限できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.