Verhindern Sie die automatische Vervollständigung in Visual Studio Code


100

Ich verwende den neuen Visual Studio-Code , der eindeutig noch nicht für die Hauptsendezeit bereit ist, aber ich hoffe, ein Problem zu lösen, das ich habe.

In einer SQL-Datei wird bei jeder Eingabe caseautomatisch hinzugefügt end, als ob Sie einen caseBlock erstellen würden . Auch wenn Sie sich in einem Kommentar befinden oder Caseals Teil eines Wortes verwenden (zum Beispiel select CaseID from...). Ich möchte diesen ganzen Unsinn komplett deaktivieren, da es für mich nicht gut ist, Dinge automatisch zu erledigen.

Die einzigen Konfigurationsoptionen, die ich finden kann, habe ich bereits festgelegt:

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

Irgendwelche anderen Ideen, wie man das aufhält?

Auch für Dinge wie begin(es fügt hinzu end) und ich bin sicher viel mehr.


3
Eine Problemumgehung besteht darin, nach der Eingabe von caseoder ^ Z zu drücken begin. Es ist immer noch ein Schmerz.
Zedfoxus

Antworten:


168

In der neuesten Version von Visual Studio Code habe ich herausgefunden, dass die

"editor.acceptSuggestionOnCommitCharacter": false

Konfiguration deaktiviert dieses Verhalten.


58
Danke dafür. Ich tippte render(und bekam CanvasRenderingContext2Dstattdessen. WTF?!?!?! Ich würde nicht schreiben können, was ich eingegeben habe, ohne das Festschreiben zu deaktivieren. Was für ein schrecklicher Standard. Redakteure sollten nicht ersetzen, was Sie ohne Ihre Erlaubnis eingeben.
Brennan Cheung

14
Es ist noch schlimmer, wenn es sich in etwas Bonkers ändert und automatisch einen Import für dieses unerwünschte Symbol einfügt.
Darius

1
@shybovycha Ja, ich füge die Datei "editor.acceptSuggestionOnCommitCharacter": false settings.json manuell hinzu, aber es funktioniert nicht wie erwartet. Ich meine, es wird immer noch automatisch abgeschlossen, nachdem ich VScode neu gestartet habe. Nicht sicher warum.
Tucq88

4
Vielen Dank, dass getData+ (=> __acrt_get_locale_data_prefix()meiner Produktivität nicht hilft.
Alter Igel

1
Ich habe das geändert, weil es mich verrückt gemacht hat, JS-Importe zu machen. Allerdings musste ich auch hinzufügen: "editor.quickSuggestions": false,Damit ich jedes Mal, wenn ich "const" eingab, keine große und irrelevante Liste erhielt, musste ich ESCzwischen dem Schlüsselwort und dem Variablennamen klicken .
Neil Guy Lindberg

58

Inzwischen, ein Jahr später, ist Visual Studio Code ziemlich cool und bereit für die Hauptsendezeit. Aber ich habe immer noch keinen Weg gefunden, die automatische Vervollständigung einfach vollständig auszuschalten.

Aber sie haben einige Dinge in ihren Dokumenten: https://code.visualstudio.com/docs/editor/intellisense#_customizing-intellisense

Grundsätzlich lege ich dies in mein settings.json, um zu versuchen, es für den Arbeitsbereich auszuschalten. Aber ich muss das noch bewerten.

// 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
Ich verwende wahrscheinlich eine neue Version, da diese geschrieben wurde, aber für mich "editor.quickSuggestions"ist es ein Objekt, in dem ich 3 Unterwerte optimieren kann : { "other": false, "comments": false, "strings": false }. Vielleicht ist VS Code auch klug genug, "editor.quickSuggestions": falseum alle 3 zu sehen und auf falsch zu setzen
Brad Cupit

Ich konnte den Anweisungen nicht folgen. Bitte verbessern Sie die Antwort
userJT

3
acceptSuggestionOnEntersollte jetzt auf den "off"neuesten Stand gebracht werden.
rjh

2
Ich kann es nicht ertragen wordBasedSuggestions, dass man dazu neigt, dieselben Rechtschreibfehler / Tippfehler wie in der Vergangenheit erneut vorzuschlagen. "Hier ist ein Funktionsname, der einem echten täuschend ähnlich sieht, aber nicht!"
jrh

12

Dies funktioniert für mich ab dem 17. Mai 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
Fügen Sie dies hinzu, um Hover-Tooltips zu deaktivieren:"editor.hover.enabled": false
Vidar

7

Fügen Sie dies in der aktuellen Version von VS Code zu Ihren Benutzereinstellungen hinzu:

"editor.quickSuggestions.other": false

Dies deaktiviert die meisten falschen Vorschläge.


6

Dies ist nicht die richtige Antwort, aber es könnte eine noch bessere Option sein. Erhöhen, ansteigen:

Editor: Verzögerung bei schnellen Vorschlägen

von 50 ms (Standard) bis 500-1000 ms.

In diesem Fall haben Sie eine halbe Sekunde Zeit, um die Option für die automatische Vervollständigung zu umgehen, die in 95% der Fälle ausreicht, und Sie verlieren in einigen Fällen nicht die gewünschte Funktionalität.


Gute Antwort. Ich habe das gemacht. Sie könnten es auf eine noch höhere Zahl einstellen und sich selbst herausfordern, um zu sehen, ob Sie schneller als die Maschine automatisch
vervollständigen können

3

Wiederholen Sie die Antwort, um das Überfliegen zu vereinfachen. Öffnen Sie Ihre Einstellungen mit ⌘+,oder Ctrl+,.

{
    "editor.quickSuggestions": false
}

Sie sollten stattdessen eine vorhandene Antwort bearbeiten. Die Anweisungen und die Hervorhebung der Syntax sind gute Ergänzungen, aber das Wiederholen von Antworten kann von einigen als Manipulation des Abstimmungsmechanismus angesehen werden
Samy Bencherif

2
Das Problem ist, dass die anderen Antworten umfassender sind, in meinem Fall jedoch nicht so nützlich, da ich nur die eine Einstellung benötigte. Ich möchte keine Details aus ihren Antworten entfernen, sondern mich nur auf die konzentrieren, die ich brauchte.
Ubershmekel

2

Ich habe diese Änderung für Version 1.22.1 vorgenommen

"editor.wordBasedSuggestions": false

Dies verhindert die Vervollständigung eines bereits aufgetretenen Wortes.


Nehmen Sie die obigen Änderungen an den Benutzereinstellungen vor, die Sie unter Datei -> Einstellungen -> Einstellungen finden


-1

Dies hat Ihnen vielleicht geholfen >> editor.acceptSuggestionOnCommitCharacter: false

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.