Atomでインデントモードを変更するにはどうすればよいですか?


194

私はまだこれを理解することができていません。Atomはデフォルトのインデントモードとしてスペースを使用しているようです。代わりにタブを使う方が好きです。Sublime Textには、インデントを切り替えて変換する機能が組み込まれています。

誰もがAtomのインデントモードを変更する方法を見つけましたか?

Sublime Textからのスクリーンショット:

崇高なテキストインデントメニューを開く 崇高なテキストインデントメニュー


4
インデントを変換するには、正規表現の検索と置換を行い、\ tを使用してタブを検索または挿入できます。
mer10z_tech 2014年

1
現在のコードを2インデントモードから4に変更する簡単な方法はありますか?
チャーリーパーカー

1
私はauto-detect-indentationプラグインを使用します。これは、ファイルに既にあることをすべて実行するようにタブキーを自動的に構成するだけでなく、左下にインデントモードを表示します。
while1fork 2017年

@CharlieParkerあなたの好みに行く、4にエディタタブやインデントセットをクリックしてください
クレイグ

注:デフォルトでは、Atomはタブのようにスペースを表示およびトラバースします。ここでtparkerの回答を参照してください:stackoverflow.com/a/46333677/1599699
Andrew

回答:


218

参照ソフトタブタブ長の下で[設定]> [エディタの設定

インデントモードをすばやく切り替えるには、Ctrl-Shift-Pを使用して、エディター:Toggle Soft Tabsを検索します。


1
@zamberが言ったように、ページを自動インデントしてもインデント設定が反映されない場合は、ページを再度開いて再試行してください。
Victor S

58
余談ですが、ソフトタブはタブのようにスペース文字です。ハードタブはタブ文字です。また、設定が尊重されない場合は、試してくださいCtrl-Shift-P Editor: Toggle Soft Tabs
ivan-k

2
このスレッドのソリューションのうちどれも私が等幅フォントにスワップするまで機能しなかったということを付け加えたいと思います。等幅フォントに交換した後、私はそれぞれの方法を試しましたが、すべて実際に機能します。これが将来の誰かに役立つことを願っています...
Native Coder

現在のコードを2インデントモードから4に変更する簡単な方法はありますか?
チャーリーパーカー

コーディング時に等幅フォントを使用しないことのメリットは見当たらないため、認めざるを得ません。
フランクベイリー

65

[ファイル]-> [設定]に移動します

ここには3つの異なるオプションがあります。

  1. ソフトタブ
  2. タブ長
  3. タブタイプ

私はいくつかのテストを行い、それぞれが何をするかについてこれらの結論に達しました。

ソフトタブ -これを有効にすると、デフォルトでスペースが使用されます(つまり、新しいファイル用)。

タブの長さ -タブ文字が表示される幅、またはソフトタブが有効な場合にタブに挿入されるスペースの数。

タブタイプ -既存のファイルに使用するインデントモードを決定します。自動に設定すると、既存のインデント(タブまたはスペース)が使用されます。ソフトまたはハードに設定すると、既存のインデントに関係なくスペースまたはタブが強制されます。これを自動のままにしておくのが最善です。

注:ソフト=スペース、ハード=タブ


Atomic Soft Tabsについてもお話しいただけますか?
neeh

3
現在のコードを2インデントモードから4に変更する簡単な方法はありますか?
チャーリーパーカー

1
この問題を理解するためにAtomが使用している用語の一部を明確にしていただき、ありがとうございます。
MiFiHiBye


15

OS X:

  1. Atom -> prefrencesまたはに行くCMD + ,

  2. 下にスクロールして、希望する「タブ長」を選択します。

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


11

"Atom> Preferences> Editor"に移動して、タブ長を4に設定してみてください。

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

これはMac用です。ウィンドウの場合は、適切なメニューを見つける必要があります。



6

パーティーには遅れますが、プロジェクトごとにこれを行うクリーンな方法は、.editorconfigを追加することですますが、ファイルをプロジェクトのルートです。複数のプロジェクトで同時に作業しているときにAtomの設定を変更する必要がなくなります。

これは、私が現在使用している非常に基本的な設定のサンプルです。Atom、STなどで動作します...

http://editorconfig.org/

# Automatically add new line to end of all files on save.
[*]
insert_final_newline = true

# 2 space indentation for SASS/CSS
[*.{scss,sass,css}]
indent_style = space
indent_size = 2

# Set all JS to tab => space*2
[js/**.js]
indent_style = space
indent_size = 2

私はこれを見るまでアトムを完全に捨てました。config.csonの設定は、既存のファイルに対してはまったく何もしないようです。ありがとう!
killthrush

3

これはコアに組み込まれています:見てSettings ⇒ Tab Type、選択してくださいauto

「auto」に設定すると、エディターはバッファーの内容に基づいてタブタイプを自動検出します(コメント行以外の最初の先頭の空白を使用します)。検出は失敗します。

自動検出インデントパッケージを確認することもできます。ドキュメントから:

開いているファイルのインデントを自動的に検出します。開かれている各ファイルを調べ、常にエディターのデフォルトを使用する代わりに、ファイルの内容に基づいてファイル固有のタブ設定(ハード/ソフトタブ、タブ長)を設定します。

アトムがタブに4つのスペースを使用するように構成されていても、デフォルトで2つのスペースになっているrailsプロジェクトを開いている場合があります。このパッケージがないと、タブストップ設定をグローバルに変更する必要があります。そうしないと、ファイル内のリード間隔に一貫性がなくなります。


「自動」を使用していて問題が発生した場合(私の場合、この特定のファイルでタブが必要なときにスペースを使用することにしました)、どのように(クイックメニューまたはキーストロークで、設定を掘り下げるのではなく)どのように変更しますか?私は自動検出が失敗したとは思わない、それはちょうどそれを間違っている。それは私のためにハードタブをタイプしません。あらゆる場所で検索と置換を行いましたが、それでもタブキーを押すと4つのスペースが挿入されます。
Ed Randall

私はsearch-and-replaceコマンドパレットconvert spaces to tabs(またはそのようなもの)を使用したでしょう。私は過去にうまくいったと思います。
jcuenod 2017

3

私は同じ問題を抱えていて、上記の提案はどれもうまくいきませんでした。最後に、エディタの設定メニューで「アトミックソフトタブ」のチェックを外してみました。


ああ!それが意味するところです!\tファイルに「」が何もないときに矢印キーがスペースをスキップするのはなぜだろうと思っていました...
Andrew

2

Babelを使用している場合は、「Language Babel」パッケージを必ず更新してください。私にとって、コアエディター設定でタブ長を2に設定していても、Language Babel構成の同じ設定で4に上書きされていました。

Atom -> Preferences -> Packages -> (Search for Babel) -> Grammar -> Tab Length

適切な文法、「Babel ES6 Javascript Grammar」、「language-babel-extension Grammar」、「Regular Expression」があることを確認してください。一貫性を保つために、それらすべてを更新する必要があります。



1

グローバルタブ/スペースのインデント設定がニーズに合わなくなった場合(つまり、さまざまなインデント形式のレガシーコードベースを使用していて、それらをすばやく切り替える必要があり、自動検出が機能していない場合)、タブを試すことができます。 -コントロールプラグイン。スクリーンショットのメニューの機能を複製します。


1

Atomの自動インデント検出がどうしようもない間違いを犯し、リテラルのタブ文字を入力することを拒否したとき、私は最終的に「Force-Tab」拡張機能を見つけました。インデント解除のためにShift-tabを保持したかったので、ctrl-tabを設定してハードタブを挿入しました。私のキーマップで私は追加しました:

'atom-text-editor': 'ctrl-tab': 'force-tab:insert-actual-tab'


1

バージョン1.21.1を使用している場合:

  1. パッケージ/設定ビュー/開くをクリックします
  2. 左側のパネルで[エディタ]を選択します
  3. 「Tab Length」が表示されるまで下にスクロールします
  4. 値を編​​集します。4に設定するのが好きです。

ここで、アクティブなタブペインを閉じるだけで完了です。


0

ここで最も人気のある回答はすべて素晴らしい回答であり、タブのスペースがオンになりますが、すべて1つ欠けています。既存のコードにタブの代わりにスペースを適用する方法。

これを行うには、フォーマットするすべてのコードを選択し、[編集]-> [行]-> [自動インデント]に移動すると、選択したすべてが修正されます。

または、フォーマットするすべてのコードを選択し、Ctrl Shift Pを使用して自動インデントを検索することもできます。検索結果でクリックするだけで、選択したすべてが修正されます。


0

言語固有の構成の変更

デフォルトのタブ設定を変更しましたが、Pythonファイルである自分のファイルを編集していても影響はありませんでした。〜/ .atom / config.csonの "*"設定を変更しても変更されませんでした。私はそれらのどちらにも良い説明がありません。

しかし、config.csonに以下を追加すると、Pythonファイルのタブを2つのスペースに変更できました。

'.source.python':
  editor:
    tabLength: 2

ソリューションのこのリソースのおかげで:タブの長さがタブキーを尊重しない

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