web-dev-qa-db-ja.com

Atomエディタでコードを自動インデントする方法

Atomエディタでどのようにしてコードを自動インデントしますか?他のエディタでは、通常、いくつかのコードを選択して自動インデントすることができます。

キーボードショートカットもありますか?

371
Anders

メニューの[編集]> [線]> [自動インデント]にオプションがあります。デフォルトのキーマップはバインドされていないようです。

次のようなキーマッピング(Atom> Open Your Keymap [Windowsの場合:ファイル>設定>キーバインド> "あなたのキーマップファイル"])を追加してみてください。

'atom-text-editor':
  'cmd-alt-l': 'editor:auto-indent'

それは私のために働きました:)


Windowsの場合

'atom-text-editor':
  'ctrl-alt-l': 'editor:auto-indent'
632
Nacho L.

受け入れられた答えはうまくいきます、しかし、あなたは最初に「すべて選択」をしなければなりません - 毎回 - そして、私はそれに対して非常に怠惰です。

そして結局のところ、それはそれほど簡単なことではない - 私はこれをすべて追跡するのにかかる30分は志を同じくする個人を救うためにこれをここに投稿することにした。 - また、注意してください:このアプローチはそれが行われたときに元の選択を復元します(そしてそれはとても速く起こります、あなたは選択が今までに変更されたことに気づかない)。

1.)まず、あなたのinitスクリプトにカスタムコマンドを追加します(File-> Open Your Init Script、それから一番下に貼り付けます):

atom.commands.add 'atom-text-editor', 'custom:reformat', ->
    editor = atom.workspace.getActiveTextEditor();
    oldRanges = editor.getSelectedBufferRanges();
    editor.selectAll();
    atom.commands.dispatch(atom.views.getView(editor), 'editor:auto-indent')
    editor.setSelectedBufferRanges(oldRanges);

2.) "custom:reformat"をキーにバインドします(File-> Open Your Keymapをクリックして、一番下に貼り付けます)。

'atom-text-editor':
    'ctrl-alt-d': 'custom:reformat'

3.)Atomを再起動します(init.coffeeスクリプトはatomが最初に起動されたときにのみ実行されます)。

82
BrainSlugs83

全体のショートカットこのショートカット に自動インデントを適用するためのパッケージauto-indentがあります。

ctrl+shift+i

または

cmd+shift+i

パッケージのURL: https://atom.io/packages/auto-indent

40
colundrum

私は原子美を使うことを好みます、 CTRL+ALT+B (Linuxでは、Windowsにもあるかもしれません)すべての種類のフォーマットを扱い、ファイルフォーマットごとにカスタマイズすることもできます。

詳細はこちら: https://atom.io/packages/atom-beautify

22
ungalcrys

コマンドパレットをすばやく開いてそこで実行できます
Cmd + Shift + p そしてEditor: Auto Indentを検索します。

screenshot

15
codingninja

これは私のために働く:

'atom-workspace atom-text-editor':
    'ctrl-alt-a': 'editor:auto-indent'

最初に ctrl-a を使用してすべて選択する必要があります。

5
dave doe

ホットキーに問題がある場合は、Key Binding Resolver Windowを次のように開いてみてください。 Cmd + .。それはあなたがリアルタイムであなたが押している鍵を示します。

例えば、 Cmd + Shift + ' 実は Cmd + "

2
Dmitriy

これは私が見つけた最高の助けです:

https://atom.io/packages/atom-beautify

このパッケージはAtomにインストールでき、それからCTRL + ALT + Bで問題を解決できます。

2

Linuxの場合

(Ununtu KDEでテスト済み)

メニューに、編集>行>自動インデントの下にあるオプションがあるか、またはを押します。 Cmd + Shift + p「ai」と入力してEditor: Auto Indentを検索します。

注:KDEではctrl-alt-lは既にグローバルに "lock screen"に設定されているので、代わりにctrl-alt-iを使用してください。

Atomにキーマッピングを追加できます。

  • Cmd + Shift + p「設定ビュー:キーバインドの表示」を検索してください。
  • 「あなたのキーマップファイル」をクリックしてください
  • このようなセクションを追加してください。

     'atom-text-editor':
        'ctrl-alt-i': 'editor:auto-indent'
    

インデントが機能していない場合は、ファイルの終わりがAtomによって認識されていないことが原因と考えられます。あなたの言語のサポートを追加してください。例えば、 "Lua"の場合は、パッケージ "language-lua"をインストールしてください。

あなたの言語でファイルが認識されない場合:

  • ~/.atom/config.csonファイルを開く(CTRL + SHIFT + p: `` open config ''と入力)
  • 次のように、customFileTypesの下にcoreセクションを追加/編集します。

    core:
      customFileTypes:
        "source.lua": [
          "conf"
        ]
        "text.html.php": [
          "thtml"
        ]
    

(言語スコープの名前( "source.lua"、 "text.html.php" ...)は言語パッケージの設定にあります ここを参照

0
rubo77

私はいくつかのグルーヴィーなコードに取り組んでいました、それは保存時に自動フォーマットしません。私がしたのはコードペインを右クリックしてからESLint Fixを選択することでした。それは私のインデントを修正しました。

enter image description here

0
Jeff Lowery

キーマッピングを追加して、ファイル内のすべてのコードを自動選択してインデントすることもできます。

'atom-text-editor':
  'ctrl-alt-l': 'auto-indent:apply'
0