Запретить автозаполнение в Visual Studio Code


103

Я использую новый код Visual Studio , который явно еще не готов к использованию в прайм-тайм, но я надеюсь решить возникшую у меня проблему.

Каждый раз, когда вы вводите SQL-файл, caseон автоматически добавляется end, как если бы вы строили caseблок. Даже если вы находитесь в комментарии или используете Caseкак часть слова (например, select CaseID from...). Я бы хотел полностью отключить всю эту ерунду, поскольку она не очень хорошо справляется с автоматическим завершением вещей для меня.

Единственные параметры конфигурации, которые я могу найти, я уже установил:

"editor.autoClosingBrackets": false,
"editor.suggestOnTriggerCharacters": false,

Есть ли другие идеи, как это остановить?

Также верно для таких вещей, как begin(он добавляет end) и я уверен, что многое другое.


3
Чтобы решить эту проблему, нажмите ^ Z после ввода caseили begin. Это все еще боль.
zedfoxus 02 окт.15,

Ответы:


169

В самой последней версии Visual Studio Code я обнаружил, что

"editor.acceptSuggestionOnCommitCharacter": false

конфигурация отключает это поведение.


60
Спасибо тебе за это. Я печатал render(и получал CanvasRenderingContext2Dвместо этого. WTF?!?!?! Это не позволяло мне писать то, что я набирал, без отключения символа фиксации. Какой ужасный дефолт. Редакторы не должны заменять то, что вы печатаете, без вашего разрешения.
Brennan Cheung

14
Еще хуже, когда он меняется на что-то безумное и автоматически вставляет импорт для этого нежелательного символа ..
Дариус

1
@shybovycha Да, я добавляю "editor.acceptSuggestionOnCommitCharacter": false в settings.json вручную, но он работает не так, как ожидалось. Я имею в виду, что он все еще автоматически завершается после перезапуска VScode. Не знаю почему.
tucq88

4
Благодарю вас за то, что getData+ (=> __acrt_get_locale_data_prefix()просто не способствует моей производительности.
alter igel 01

1
Я изменил это, потому что это сводило меня с ума от импорта JS. Однако мне также пришлось добавить: "editor.quickSuggestions": false,чтобы каждый раз, когда я набирал «const», я не получал огромного и нерелевантного списка, требующего щелкнуть ESCмежду ключевым словом и именем переменной.
Нил Гай Линдберг

58

К настоящему времени, год спустя, Visual Studio Code довольно крут и готов к использованию в прайм-тайм. Но я до сих пор не нашел способа просто полностью отключить автозаполнение.

Но у них есть кое-что в их документах: https://code.visualstudio.com/docs/editor/intellisense#_customizing-intellisense

Обычно я кладу это в свой, settings.jsonчтобы попробовать выключить его для рабочего места. Но мне еще предстоит это оценить.

// Place your settings in this file to overwrite default and user settings. 
{
    // Controls if quick suggestions should show up while typing
    "editor.quickSuggestions": { "other": false, "comments": false, "strings": false },

    // Controls if suggestions should be accepted with "Enter" - in addition to "Tab". Helps to avoid ambiguity between inserting new lines and accepting suggestions.
    "editor.acceptSuggestionOnEnter": "off",

    // Controls the delay in ms after which quick suggestions will show up.
    "editor.quickSuggestionsDelay": 10,

    // Enable word based suggestions
    "editor.wordBasedSuggestions": false
}

1
Я , вероятно , используя новую версию , так как это было написано , но для меня "editor.quickSuggestions"это объект , где можно настроить 3 дополнительных значений: { "other": false, "comments": false, "strings": false }. Кроме того, возможно, VS Code достаточно умен, чтобы увидеть "editor.quickSuggestions": falseи установить для всех 3 значение false
Брэд Купит,

Я не смог выполнить инструкции. Пожалуйста, улучшите ответ
userJT

3
acceptSuggestionOnEnterтеперь должно быть установлено значение "off"последних версий.
rjh

2
Я терпеть не могу wordBasedSuggestions, что каждый имеет тенденцию повторно предлагать те же орфографические ошибки / опечатки, которые были сделаны в прошлом; «Вот имя функции, которое обманчиво похоже на настоящее, но это не так!»
JRH

13

У меня это работает с 17 мая 2019 года.

"editor.acceptSuggestionOnCommitCharacter": false,
"editor.acceptSuggestionOnEnter": "off",
"editor.hover.enabled": false,
"editor.minimap.enabled": false,
"editor.parameterHints.enabled": false,
"editor.quickSuggestions": false,
"editor.quickSuggestionsDelay": 10,
"editor.suggest.snippetsPreventQuickSuggestions": false,
"editor.suggestOnTriggerCharacters": false,
"editor.wordBasedSuggestions": false,

3
Добавьте это, чтобы отключить всплывающие подсказки:"editor.hover.enabled": false
Vidar

У меня это работает!
AmolR

8

Это неправильный ответ, но это может быть даже лучший вариант. Увеличение:

Редактор: Задержка быстрых предложений

от 50 мс (по умолчанию) до 500-1000 мс.

В этом случае у вас будет полсекунды, чтобы превзойти опцию автозаполнения, которой может хватить в 95% случаев, и вы не потеряете функциональность, которая может вам понадобиться в некоторых случаях.


Отличный ответ. Я это сделал. Вы можете установить для него еще большее число и испытать себя, чтобы увидеть, сможете ли вы выполнить автозаполнение быстрее, чем машина ;-)
PatrickT

7

В текущей версии VS Code добавьте это в свои пользовательские настройки:

"editor.quickSuggestions.other": false

Это отключает большинство ложных предложений.


3

Повторение ответа, чтобы облегчить людям скимминг. Откройте свои настройки с помощью ⌘+,или Ctrl+,.

{
    "editor.quickSuggestions": false
}

Вместо этого вам следует отредактировать существующий ответ. Инструкции и выделение синтаксиса - хорошие дополнения, но повторение ответов может быть рассмотрено некоторыми как вмешательство в механизм голосования
Сами Бенчериф

2
Проблема в том, что другие ответы более подробны, хотя в моем случае они не так полезны, потому что мне просто нужен был один параметр. Я не хочу убирать детали из их ответов, просто чтобы сосредоточиться на том, что мне было нужно.
ubershmekel

2

Я сделал это изменение для версии 1.22.1

"editor.wordBasedSuggestions": false

Это предотвращает завершение слова, которое уже произошло.


Внесите указанные выше изменения в пользовательские настройки, которые можно найти в меню « Файл» -> « Настройки» -> « Настройки».


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.