Ctrl + Shift + Fを使用してVisual Studio Codeで選択したコードをインデント/フォーマットする方法


110

Visual Studio Codeのコードの特定のセクションをインデントしたい。

私は読んでは、Visual Studioのコードでコードをフォーマットするにはどうすればよいですか?これは、コード全体をインデントするショートカットを提供しますが、コードの特定のセクションを選択するときには機能しません。

コードでいくつかの行を選択した後でCtrl+ + Shift+ を試しましたFが、ファイル全体がインデントされています。私はWindowsでVisual Studio Code Insider 1.8.0を使用しています。どうすればできますか?

回答:


177

Visual Studio Codeのコードの特定のセクションをインデントしたい:

  • インデントする行を選択し、
  • Ctrl+ ]を使用してインデントします。

セクションをインデントする代わりにフォーマットしたい場合:

  • フォーマットする行を選択し、
  • Ctrl+ KCtrl+ Fを使用してフォーマットします。

7
Shift + Alt + Fは、フォーマットにも使用できます(Windowsプラットフォーム)
SridharKritha

2
OSXはどうですか?
GreenAsJade

3
@GreenAsJade MacOSでは、Cmd+ ](インデント)とCmd+ [(非インデント)が機能します。
アレックスジョンソン

2
@AlexJohnson申し訳ありませんが、OSX 形式の選択された行についてはどうでしょうか。
GreenAsJade 2018

1
MacOSの@GreenAsJade、選択した行のフォーマットはCmd+ K Cmd+ F
Bogatyr

122
  • セクションを選択してクリックすると、セクション全体をインデントすることもできます TAB
  • Shift+ を使用して逆方向にインデントするTAB

もちろん、自動インデントと書式設定については、使用している言語に従って、適切な拡張機能が適切に機能していること、インストールするフォーマッタ、または各言語とその使用可能なツールに対して有効または設定するパラメータ設定を確認できます。拡張機能のドキュメントをよく読んで、必要なものをすべてインストールして設定してください。

これまで、インデントの問題は、コードのブロックをコピーして貼り付けるときにPythonで悩みました。その場合の解決方法は次のとおりです。Python用のVisual Studioコードインデント


4
これはVS Codeでは機能しません。テキストを選択しながらタブを押すと、カーソルが置かれている場所にタブが追加されるだけです
Abe Fehr

1
1行のテキストの一部のみを選択したと思います。それが機能するためには、あまりにも多くのケースがあります。複数行を選択していて、そのような場合、選択した数に関係なく機能します。もう1つのケースは、それが機能する行全体を選択することです。1行から一部だけを選択すると、選択したテキストの代わりにタブが挿入されます。WindowsとLinuxシステムの両方でテストしました。それがあなたと同じであるか、あなたの設定に何か問題があるかを確認してください。
Mohamed Allal 2018

9

OS Xでは、「Document Format」を選択し、フォーマットが必要なすべての行を選択します。

次にOption+ Shift+ F


これが正解です。質問に答えていないものに50以上の賛成票がある理由がわかりません。おそらくボット????
Wildhammer

3
これは選択ではなくファイル全体を実行するように見えます:(
GreenAsJade

正常に動作します。私はMacBook Air 2019を持っていますが、キーボードは私の古いものとは異なります(以前はCMD + [または]でした)。新しいキーボードのこのショートカットを探してきました。そして、それはまさに私が探していたものです。選択範囲でも機能します。ありがとう。
LuizEduardoMPF

3

(これは、少なくともバージョン1.45.0、2020年5月7日まで機能します)


macOS Visual Studio Codeバージョン1.36.1(2019)

Visual Studio Codeバージョン1.36.1(2019)

選択範囲を自動フォーマットするには、⌘K⌘Fを使用します(コツは、thisKが最初に続き、その後に⌘Fが続くことです)。

自動フォーマット選択またはドキュメント

自動フォーマットせずに単にインデント(右シフト)するには、use]を使用します

インデントオプション

キーボードショートカットと同様(⌘K⌘S、または以下に示すメニューから)

キーボードショートカット


1
「トリック」をありがとう。alt/option + f以前はショートカットが機能していたので、私は迷っていました!!! そして突然それは `̰`文字に置き換えられました。とても迷惑!
グレン

グレンを助けてくれてうれしい。
auspicious99

3

これは、ここでインデント/アウトデントするために必要なキーバインドに設定できるはずです:

メニューファイル設定キーボードショートカット

editor.action.indentLines

editor.action.outdentLines


ありがとうございました!dedent(コードベースで使用している)のキーボードショートカットを検索していましたが、それはoutdentです。ありがとうございました。
1

1

F1→キーボードショートカットを開く→「インデント行」を検索し、キーバインドをに変更しTabます。

右クリック> [式の変更]を editorHasSelection && editorTextFocus && !editorReadonly

それはあなたがその行の何かが選択されたときにあなたが行をインデントすることを可能にします(複数の行はまだ機能します)。


「F1」?メニューの「ファイル」 →「設定」ですか?
Peter Mortensen

コマンドパレットを開くことを意味しました。名前を忘れてしまい、デフォルトのショートカットを思い出してしまいました。
ネブラスト

0

私は、Windows上でそれがだったCtrl+¡インデント行。各行の先頭にタブを追加します。

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