Visual Studio Codeでの複数行編集


581

Sublime Textのように複数行の編集を有効にすることはできますか?

たとえば、を押すCtrlと、カーソルキャレットが追加され、ドキュメント内の複数の場所で一度に書き込み/削除できるようになります。


4
多くのMacアプリ(TextEditなど)では、Optionキーを押しながらマウスをドラッグしてボックスを選択することもできます。これはVSコードで利用できますか?
Simon Woodside 2017

関連記事はこちら
2017年

2
2018年4月(バージョン1.23)以降、中マウスボタンを使用して複数の列を選択できます。code.visualstudio.com/updates/...
ブルーレイ

5
キーボードショートカットセクションでこのコマンドの名前を探している人にとっては、次のとおりですeditor.action.insertCursorAtEndOfEachLineSelected
。– enzoborgfrantz

1
@enzoborgfrantz +1まさに私が探していたもの!キーバインドは異なる場合があるため、選択した回答では、最初に関連するエディターコマンドについて言及しているはずです。
pius

回答:


1063

Windowsでは、Ctrl+ Altを押しながら上矢印キーまたは下矢印キーを押してカーソルを追加します。

Mac:⌥ Opt+ ⌘ Cmd+ /

Linux:Shift+ Alt+ /

サードパーティのソフトウェアがこれらのショートカットに干渉し、意図したとおりに機能しない可能性があることに注意してください(特にWindows上のIntelのHDグラフィックソフトウェア。詳細はコメントを参照してください)。

この問題が発生した場合は、インテル/その他のソフトウェアのホットキーを無効にするか、VSコードのショートカットを変更できます(下記を参照)。

を押しEscて、単一のカーソルにリセットします。

Visual Studio Codeの複数行カーソル

または、Isidor Nikolicが指摘しているようにAltマウスを押したまま左クリックすると、カーソルを任意に配置できます。

Visual Studio Codeに任意に配置された複数行カーソル

次の方法でキーボードショートカットを表示および編集できます。

ファイル→設定→キーボードショートカット

ドキュメンテーション:

https://code.visualstudio.com/docs/customization/keybindings

公式VSコードキーボードショートカットのチートシート:

https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf
https://code.visualstudio.com/shortcuts/keyboard-shortcuts-macos.pdf
https://code.visualstudio.com/shortcuts/ keyboard-shortcuts-linux.pdf


155
Windowsでは、最初のオプションで画面が反転するだけです。:-/
Kristoffer la Cour

26
これはもう有効ではありません。CTRL + SHIFT + UP/DOWN/CLICKORを試すALT + SHIFT + UP/DOWN/CLICK
ハン

39
@Nacimota-Windows 10マシン(今テスト済み)では、CTRL + ALT + ARROWの組み合わせで画面が反転し、CTRL + ALT + SHIFT + ARROWで新しいカーソルが作成されます。キーボードショートカットPDFの公開リストが古くなっている可能性があります。
Alex C

11
@AlexCショートカットが古くないわけではありません。最新のビルドをダウンロードして、自分で構成を確認してください。表示されているショートカットが画面をめくっていることがわかった場合は、Intel GPUがあり、デフォルトでこれらのショートカットをインターセプトするIntelソフトウェアを実行していることが原因です。気になる場合は、HDグラフィックスソフトウェアを開き、ホットキーを無効にするか再バインドします。ただし、私の投稿を編集して誤った情報を追加しないでください。リストされているショートカットは正確であり、それらに干渉する可能性があるか、または干渉しない可能性があるすべてのサードパーティ製ソフトウェアをリストするつもりはありません。
ナシモタ2017

6
@Nacimotaはすべての敬意を払って、ユーザーの大部分にとって現実を表す正直な間違いでした。追加の情報が有益であったデフォルトの構成である可能性がある十分なIntelマシンが世の中にあります。私たちはどちらも、最新の最良の回答を提供することを目標としています。その違いを列挙するための追加の文が役立つでしょう。
アレックスC

137

たった2つのステップで解決しました!

  1. Ctrl + F

  2. Alt + Enter

Sublime TextのAlt+ と同じF3です。

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


21
同じ効果でctrl + F2を
押す

2
そのキーワードを含むすべての行を一度に選択できますか?崇高なテキストにはそれがありましたCtrl + F> Alt + F3> Ctrl + L
Anirban '27

これはMac用語で何ですか?CtrlとAltは...に置き換えられましたか?
OldPeculier

67

あなただけのことができますAlt+追加のカーソルのためにクリックしてください。すでに述べたように、Ctrl+ Alt+ または


9
また、Alt + Shift +クリックを使用して、2つの行とその間のすべての行を選択できます。
Steven Liekens 16

6
質問は、そのキーバインディングを編集する方法(Alt + Clickの名前は何ですか?)
David Refoua

Alt +クリックで単語が自動的に定義されるか、単語の左側に移動して機能しません。
2019年

発見の答え私の質問には、それがいずれかになりますAltキーです(デフォルト、またはCtrlキー/⌘このオプションは、で変更することができます。"editor.multiCursorModifier": "ctrlCmd"中にキーsettings.json
デビッド・Refoua

62

ボックス選択

Windows:shift+ alt+Mouse Left Button

macOS:shift+ option+Click

これはVisual Studio Codeにボックス選択/複数行編集がありますか?


私はShift + Alt + Clickのファンではありません(動作しますが)。VSと同じように(Windowsで)機能させるには、次のようにします。[選択]メニューに移動し、[マルチカーソルの場合はAlt + Clickに切り替え]を選択します。ここでAlt + Clickはボックスの選択を行います。

27

Ctrl+を使用DWindowsとLinuxで同じ単語の複数単語編集を使用を使用します。

Macの場合はCMD+ Dを使用します。


@Krishnarajが言ったように、Ctrl + Dが機能します。実際、VSCodeとSublimeの両方がこれをサポートしています。Ctrl + Dキーを押して、Ctrlキーを放さずに、後から発生するものすべてに適用してください。ええ、まだ手動で選択する必要があります。マウスを解放するのに役立ちます。MacOS Command + D
Oscar Zhang

22

バージョン1.13(2017年5月)から、複数のカーソルを作成するためのデフォルトの修飾キーを最終的に変更できます(設定に追加)。

"editor.multiCursorModifier": "ctrlCmd"

PS:この瞬間の修飾子「フォローリンク」はになりますAlt


これらの他の回答の多くは、質問に対応していません。これは-マウスクリックで余分なキャレットを配置する方法です。
Aleksander Niedziolko


16

複数の行を選択し、「何か」を押して、選択した行ごとにカーソルを置きたいと思っていました(Sublime TextのCtrl+ Shift+ と同様L)。Visual Studio Codeでのこのアクションは、「行端にカーソルを追加」と呼ばれます。

これはVisual Studio Code 1.22でテストされ、WindowsMacの両方で動作ます

ここに方法があります:

  1. 複数のカーソルを置きたい行を選択します。
  2. Alt+ Shift-を押すだけIです。

これで、選択した行ごとにカーソルが1つあります。


1
@マンザVSコードでは、そうですALT-SHIFT-I(そうではありiませんL)。フォントが正しく表示されない。私はこのコマンドをMacとWindowsの両方で1日に複数回使用し、VS Codeの最新バージョン1.24.1でもう一度テストしたところ、動作することを確認しました。多分あなたは衝突を引き起こしているプラ​​グインを持っていますか?
Maxime、

うんすごい、トリックを行うこと、サイコー便利です、私はまだこの機能のbecuase崇高間フリッピングた、ありがとうございました
万座

私にとっては、CTRL-SHIFT-L(窓)だ
標本


14

私はvscodevim拡張機能を使用しているので、これが一般的な問題であるかどうかはわかりません。しかし、私はCtrl+ Alt+がUpArrow画面を上下逆にしたという問題を抱えていました。

見てみるとVisual Studioのコードの基礎(彼らは最近のアップデートでこれを変更した場合、私は知りません)、それが使用することを言います。

Ctrl+ Alt+ Shift+(Up/ down


1
Ctrl + Alt + [矢印キー]は、画面回転用の一般的なキーボードショートカットであり、確かにIntelグラフィックスドライバや関連ソフトウェアで使用されています。VSCodeが表示される前に、これによってインターセプトされていると思います。最近(そして、私が以前使用していたので、厄介なことに)ローテーションは、Intelソフトウェアのアップデートで中止されたようで、長めのメニューからのみ利用できますWindowsで。したがって、キーボードショートカットは、最新のドライバを使用するVSCodeで機能するはずです。
ボブ・サマーズ2017

9

手順1:

置き換える単語を選択する


ステップ2:

Ctrl+ F複数のオカレンスを選択します


ステップ3:

Alt + Enterこれにより、見つかったすべての出現箇所にカーソルが設定されます


ステップ4:

新しい単語の入力を開始する



6
また、cmd+shift+LMacで。同じことを1つのステップで実行します。
アンドレス

2
@Andresありがとう!これでWindowsでの問題は解決しました。他のソリューションでは画面が反転します。
Tarik Hacialiogullari


8

Visual Studio Codeの最新リリースでは、OptionAltWindowsでは)を押しながらカーソルをドラッグして、複数の行で同じ列を選択できるようになりました。

これを有効にするには、次のように変更してくださいeditor.multiCursorModifier

"editor.multiCursorModifier": "ctrlCmd"

Visual Studio Codeリリースノート1.32.0から:

次のビデオでは、選択は通常の選択として開始され、マウスボタンが離されるまでAltが押されたままになります。

改善された列選択の例:



4

お使いのVisual Studio Codeのバージョンに依存すると思います。

マインはLinuxバージョンのVisual Studio Code 1.7.2です。

                                     "when": "editorTextFocus" },
{ "key": "shift+alt+up",          "command": "editor.action.insertCursorAbove",
                                     "when": "editorTextFocus" },
{ "key": "ctrl+shift+down",       "command": "editor.action.insertCursorBelow",
                                     "when": "editorTextFocus" },
{ "key": "shift+alt+down",        "command": "editor.action.insertCursorBelow",
                                     "when": "editorTextFocus" }```

The point is the shortcuts are not same in all machines, so you should check your configuration. Go to menu:

> Menu *File* → *Preferences* → *Keyboard Shortcuts*

Search for `editor.action.insertCursorAbove` and `editor.action.insertCursorBelow` and see your current configurations. You may change them if they conflict with operating system's shortcut keys.




ユーザー設定にSHIFT + ALT + UP / DOWNを追加すると、Windows 10で動作しました
SteveC

4

Visual Studio CodeではAlt、カーソルを押して編集場所(編集する場所)にカーソルを置き、右クリックして選択します。


2
この回答は不完全なようです
Spangen

4

私にとっての作業ソリューションは、最初に編集に必要なテキスト選択し、次にCTRL+ F2を使用してページ内の一致するすべてのデータを選択することでした。@lesterCovaxで提案されているようにCTRL+ Shift+ Lを使用することもできます

注意:上記のソリューションは、VSCodeエディターの固有の機能を使用して、ページ全体で同様のテキストを選択するため、注意が必要です。

私にとって、上記のCtrl+ ALT+の解決策は機能Arrowkeysしませんでした。VSCodeで行を選択することに対して画面の表示方向が変更されたためです。

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


3

すべての回答に加えて、もう1つの方法があります。必要な行を選択して、次を押します。

  • Windows:Shift+Alt+i
  • Mac:shift+ option+i

これにより、選択範囲のすべての行にカーソルが置かれます。


これは完璧に動作します!おかげで
ミゲルスティーブンス

2

Linuxを使用している場合、Alt+ クリックと競合する可能性があります。これは、「ウィンドウの移動」のデフォルトです。

メニューの「設定」 →「ウィンドウの動作」 →「ウィンドウの動作」 →「アクション」タブに移動できます

Alt+ left(ホールド)を削除するだけで機能します。

この+ような単純なタスクを実行するために2つのキーを押す必要がないため、これが最良の方法です。


2

私はSublime Textキーマップを使用していますが、トップの回答で提供されたキーバインドが機能しないようです:

@Hanが推奨するキーバインドは私にとってはうまくいきます(大歓迎です!):

  • Ctrl+ Shift+ Up/ で複数行カーソルモードに入るDown
  • で終了 Esc

(補足)以下は、Emmetをマルチラインカーソルと共に使用する小さな例です(上記のキーバインディングで有効および無効になっています)。

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


2

バージョン1.43(2020年2月)

次の方法で、列の選択モードを切り替えて、マウスのジェスチャーと矢印キーを変更できます。

  • メニューバー>選択>列選択モード
  • Ctrl+ Shift+ P(すべてのコマンドを表示)>列選択モードを切り替え
  • コマンドにキーをバインドする "editor.action.toggleColumnSelection"

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

注:アクティブ化後、ステータスバーに[列の選択]パネルが表示されます。このパネルを押すと、再び無効にすることができます。


1

私の設定:Windows 8.1 64ビット、Visual Studio Codeバージョン1.33.1。

問題:Intel HD Graphics 4000のキーボードショートカットとの競合

Visual Studio Codeのデフォルトのショートカット(Ctrl+ Alt+ UPCtrl+ Alt+DOWN)。私の場合、これらのコマンドは画面をそれぞれ0度と180度回転させていました。私のコンピューターにグラフィックIntelアプリケーションがインストールされているので、それは起こっています。次に、このアプリケーションのショートカットを無効にします。

これは誰かを助けるためのチュートリアルです。


1
Windows 7では、デスクトップを右クリックして、グラフィックスオプション->ホットキー->無効を選択できます。
Moritz Roessler、


0

@maximeからソリューション使用するのはSHIFT + ALT + i、私は、ファイルにすばやく編集〜20Kラインに必要なときに、私のために働きました。上記の他のキーボードショートカットのほとんどは、限られた行数でのみ役立ちます。 SHIFT列を編集する領域を選択してから押すのSHIFT + ALT + iが、これを処理する最も効率的な方法です。

しかし、私が誤って発見した(そして、ここではまだ触れられていない)のは、「カーソル編集モード」では10k行の制限があることです(それを増やすためのオープンなGithub機能リクエストがあります)。つまり、非常に大きなファイルの場合は、手動で編集するよりも、編集をスクリプト化する方が適切な場合があります。

以下のような人のために@specimenのようなショートカットを使用していたことCTRL + SHIFT + L(デフォルトは結合されSelect all occurrences of current selection、これを達成するために)、あなたはキーマップの拡張機能をインストールしていないことを確認する必要があります。()に移動@recommended:keymapsして、拡張機能ペインで検索することで確認できます。File > Preferences > KeymapsCTRL+K CTRL+M

デフォルトの[Windows]キーマップはPDF形式でここにあります。または、に移動しFile > Preferences > Keyboard Shortcutsて、現在のバインディングを検索/変更できます。より詳細なキーバインディングのドキュメントもありますHERE


0

KDEを使用するLinux Fedora(私はFedora 31で試した)で、次の場所に移動します。

  1. システム設定
  2. ウィンドウ管理
  3. ウィンドウの動作
  4. ウィンドウアクション
  5. 内部ウィンドウ、タイトルバー、フレームアクション
  6. 左クリックボックスをクリック
  7. [何もしない]を選択(移動/ドラッグの代わり)

Alt +左​​クリックで複数の行を選択できるようになりました!

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