Visual Studioコードの重複行


146

Visual Studio Codeで行を複製するためのショートカットを見つけようとしています(1.3.1を使用しています)明らかなCTRL+ を試しましたDが、うまくいかないようです。



行の複製のCtrl + Dはそれほど明白ではありません。たとえば、Notepad ++で機能しますが、Eclipseで現在の行を削除します:)
kol

Contextual Duplicate拡張機能を参照してください
CharlesB 2018年

デフォルトでは、CTRL + D他のIDEに対して選択された次のオカレンスを選択するだけです。
アミールキアン

回答:


253

[ ファイル] > [ 設定] > [ キーボードショートカット]をクリックします

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

検索するcopyLinesDownActionか、copyLinesUpActionキーボードショートカットで

通常はSHIFT+ ALT+


Ubuntuの更新:

UbuntuはそのショートカットをVSCodeに表示されないように隠しているようです(つまり、おそらく独自に使用しています)。GitHubにその問題があります

Ubuntuで作業するには、独自のショートカットを定義する必要があります。たとえば、ctrl+ shift+ alt+ jCTRL+ SHIFT+ ALT+ kを使用して行をコピーするには、次のkeybindings.jsonようにします。

[
    { "key": "ctrl+shift+alt+j", "command": "editor.action.copyLinesDownAction",
                                    "when": "editorTextFocus && !editorReadonly" },
    { "key": "ctrl+shift+alt+k", "command": "editor.action.copyLinesUpAction",
                                    "when": "editorTextFocus && !editorReadonly" }
]

Macの場合:[コード]> [設定]> [キーボードショートカット]。Shift + Option +下矢印。
jarmod

2
@DAXaholicの答えは正解でした。単純なソリューションでさえ必要な場合は、複製したい行にカーソルを置いたまま、Ctrl + CとCtrl + Vを押してください。それは正常に動作します
Gopi P

1
Ubuntu 16.04では、デフォルトでCtrl+ Shift+ Up Arrow/ Down Arrowショートカットがウィンドウを別のワークスペースに移動するようにマッピングされています。でこれを変更し、Ubuntu -->System Settings --> Keyboard --> Shortcuts --> Navigationを押しBackspaceて不要なショートカットを削除できます。
mowen

1
私はCtrl + Shift + Alt + DownArrowにバインドされていますが、これらのボタンをクリックしても実際には何も実行しません。
アーロンフランケ

104

複製は、何も選択されていない行にカーソルを置いたCTRL+ CおよびCTRL+ によって実現できますV


35
私は反対票を投じていませんが、これはOPが行をクリップボードにコピーするため、これは許容できないと思います。これは、コピー/貼り付けコマンドの代わりに「行の複製」コマンドが必要な非常に良い理由の1つです。
マット・デル

1
editor.emptySelectionClipboardオプションがfalse(私の優先構成)に設定されている場合、これは機能しません。
Bill_Stewart 2017

7
これは私が私のクリップボードに持っていたものを吹き飛ばします
クリス・キルトン

1
この方法で私が指摘した興味深い点の1つは、「C」を押した後にCtrlキーを離す必要がないことです(Vを離した後にのみ離す)
Arun

これは、インスタントライン複製の目的全体を台無しにします。
Arman Karimi

52

OSに応じて、以下を使用できます。

ウィンドウズ:

Shift+ Alt+ または Shift+ Alt+

マック:

Shift+ Option+ または Shift+ Option+

Linux:

Ctrl+ Shift+ Alt+ またはCtrl+ Shift+ Alt+

注:一部のLinuxディストリビューションでは、テンキーの矢印を使用します


9

検索するcopyLinesDownActionか、copyLinesUpActionキーボードショートカットで

通常はSHIFT+ ALT+


7

Ubuntu:

  • 重複ラインアップ:Ctrl+ Alt+ Shift+8
  • 重複行下:Ctrl+ Alt+ Shift+2

1
私にとっては完璧に機能しています。答えてくれてありがとう。
singhkumarhemant

1
これは実際には(Ubuntu 20および19で動作する)優れたソリューションであり、デフォルト設定を変更する必要はありません。非常に直感的には思えないかもしれませんが、NumPadでは8と2が実際に上下しています
user273711



2

v1.40に新しいコマンドがあります:editor.action.duplicateSelectionキーバインドにバインドされていません。

重複した選択

Duplicate Selectionという名前の新しいアクションを追加しました。実行すると、現在の選択が複製され、結果が選択されます。何も選択されていない場合、現在の行は複製され、すべてシステムクリップボードに書き込まれません。

https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_40.mdから

特定の状況で役立つ場合があります。


0

別の2つの非常に便利なショートカットは、崇高なテキストのように、選択した行を上下に移動することです...

{
  "key" : "ctrl+shift+down", "command" : "editor.action.moveLinesDownAction",
  "when" : "editorTextFocus && !editorReadonly"
},

そして

{
  "key" : "ctrl+shift+up", "command" : "editor.action.moveLinesUpAction",
  "when" : "editorTextFocus && !editorReadonly"
}

違う。select複製するために、STの行は必要ありません。
Green

ショートカットは選択された「行」を移動することです
Nishant Baranwal

0

VCコードバージョン:1.22.2移動:コード->設定->キーボードショートカット(cmd + K; cms + S); 変更(編集):「次の一致に選択を追加」:「cmd +必要なもの」//これは「cmd + D」であり、cmd + Fを実行します。「行を下にコピー」に移動します。「cmd + D」//これを編集して、たとえばcmd + Dを設定します。そして、私にとってはそれだけです-私はmacを使用しています。



0

Vim for VSCodeがオンで特定のモード(「通常」、「挿入」、または「ビジュアル」)の場合にのみアクティブになるキーバインドを作成することができます。

、その使用を行うためにCtrl+ Shift+ PVSCodeのコマンドパレットを開くために、そして「環境設定:オープンキーボードショートカット(JSON)」を検索-開きます。このオプションを選択keybindings.jsonを。ここでは、カスタムバインディングを追加できます。

たとえば、Vimで使いやすいように微調整された行を移動/複製するための従来のVSCodeコマンドを次に示します。

    [
      {
        "key": "alt+j",
        "command": "editor.action.moveLinesDownAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+shift+j",
        "command": "editor.action.copyLinesDownAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+k",
        "command": "editor.action.moveLinesUpAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
      {
        "key": "alt+shift+k",
        "command": "editor.action.copyLinesUpAction",
        "when": "editorTextFocus && vim.active && vim.mode == 'Normal'"
      },
    ]

これで、VSCodeでこれらのVim対応のコマンドを使用できるようになりました。

  • Alt+ J行を下に移動するには
  • Alt+ K行を上に移動するには
  • Shift+ Alt+ J行を下に複製するには
  • Shift + Alt+ Kラインを複製する

0

彼らはまだ使用したい場合はUbuntuユーザを助けるかもしれ更新とを代わりにキーの別のセットで。

Ubuntu 18.04 LTSに新しいバージョンのVSCodeをインストールAdd Cursor Aboveしました。Add Cursor Below

オリジナルのキーバインド

使用したバインディングを削除Ctrlして、次のものを追加しました

Copy Line Up

Ctrl+ Shift+

Copy Line Down

Ctrl+ Shift+

新しいキーバインド


0

さまざまな方法があります。

  • CNTRL + CおよびCNTRL + Vを押します。
  • Shift + Alt +下矢印を押して、行を下に複製します
  • Shift + Alt +上矢印を押して、線を上に複製します
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.