Выключить полную копию строки в коде Visual Studio

Я пытаюсь отключить эту функцию в коде Visual Studio, где, если у вас нет выделенного выделения, ctrl + c копирует всю строку. Я никогда не пытался сделать это специально, но я всегда делаю это случайно, когда я нажимаю ctrl + c вместо ctrl + v.

Вот то, что я пробовал, что, похоже, должно работать:

В разделе File-> "Настройки" → "Горячие клавиши" есть настройка по умолчанию:

{ "key": "ctrl+c", "command":  "editor.action.clipboardCopyAction",
                   "when": "editorTextFocus" },

Я попытался изменить это, так что он копируется только когда что-то выбрано, поместив в файл keybindings.json следующее:

{ "key": "ctrl+c",  "command": "-editor.action.clipboardCopyAction"},
{ "key": "ctrl+c",  "command": "editor.action.clipboardCopyAction",
                    "when": "editorHasSelection" }

Я думаю, что это должно очистить предыдущую привязку, прежде чем повторно привязать действие копирования, чтобы работать только тогда, когда что-то действительно выбрано. ОДНАКО, это не работает. Редактор по-прежнему копирует целую строку, когда ничего не выбрано. Если у меня есть только первая строка, она успешно удаляет привязку полностью, поэтому я знаю, что она что-то делает, но тег "когда", похоже, не работает так, как должен.

Есть ли способ заставить редактора делать то, что я хочу?

Ответы

Ответ 1

В настройках введите следующую строку:

"editor.emptySelectionClipboard": false

Это должно делать именно то, что вы хотите.