Empêcher la saisie semi-automatique dans Visual Studio Code


102

J'utilise le nouveau code Visual Studio , qui n'est clairement pas encore prêt pour les heures de grande écoute, mais j'espère résoudre un problème que je rencontre.

Dans un fichier SQL, chaque fois que vous tapez case, il ajoute automatiquement end, comme si vous construisiez un casebloc. Même si vous êtes dans un commentaire ou que vous utilisez Casedans le cadre d'un mot (par exemple, select CaseID from...). J'aimerais désactiver complètement toutes ces absurdités, car cela ne fait pas un bon travail de complétion automatique des choses pour moi.

Les seules options de configuration que je peux trouver, j'ai déjà défini:

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

Avez-vous d'autres idées sur la façon d'arrêter cela?

Aussi vrai pour des choses comme begin(ça ajoute end) et je suis sûr que beaucoup plus.


3
Une solution de contournement consiste à appuyer sur ^ Z après avoir tapé caseou begin. C'est toujours une douleur.
zedfoxus

Réponses:


167

Dans la version la plus récente de Visual Studio Code, j'ai découvert que le

"editor.acceptSuggestionOnCommitCharacter": false

la configuration désactive ce comportement.


59
Merci pour ça. Je tapais render(et obtenais à la CanvasRenderingContext2Dplace. WTF?!?!?! Cela ne me permettrait pas d'écrire ce que j'ai tapé sans désactiver le caractère de validation. Quel horrible défaut. Les éditeurs ne doivent pas remplacer ce que vous tapez sans votre permission.
Brennan Cheung

14
C'est encore pire quand il change en quelque chose de dingue et insère automatiquement une importation pour ce symbole indésirable ..
Darius

1
@shybovycha Oui, j'ajoute "editor.acceptSuggestionOnCommitCharacter": false manuellement à settings.json mais cela ne fonctionne pas comme prévu. Je veux dire, il est toujours terminé automatiquement après le redémarrage de VScode. Pas certain de pourquoi.
tucq88

4
Merci de bien vouloir parce que getData+ (=> __acrt_get_locale_data_prefix()n'aide tout simplement pas ma productivité.
alter igel

1
J'ai changé cela parce que cela me rendait fou de faire des importations JS. Cependant, j'ai aussi dû ajouter: de "editor.quickSuggestions": false,sorte qu'à chaque fois que je tapais "const", je n'obtenais pas une liste énorme et non pertinente nécessitant que je clique ESCentre le mot-clé et le nom de la variable.
Neil Guy Lindberg

58

À présent, un an plus tard, Visual Studio Code est plutôt cool et prêt pour les heures de grande écoute. Mais je n'ai toujours pas trouvé de moyen de désactiver complètement la saisie semi-automatique.

Mais ils ont certaines choses dans leurs documents: https://code.visualstudio.com/docs/editor/intellisense#_customizing-intellisense

En gros, je mets ceci dans mon settings.jsonpour essayer de l'éteindre pour l'espace de travail. Mais je dois encore évaluer cela.

// 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
J'utilise probablement une nouvelle version puisque cela a été écrit , mais pour moi "editor.quickSuggestions"est un objet où je peux modifier 3 sous-valeurs: { "other": false, "comments": false, "strings": false }. En outre, peut-être que VS Code est assez intelligent pour voir "editor.quickSuggestions": falseet définir les 3 sur false
Brad Cupit

Je n'ai pas pu suivre les instructions. S'il vous plaît améliorer la réponse
userJT

3
acceptSuggestionOnEnterdevrait maintenant être défini sur à "off"partir des versions récentes.
rjh

2
Je ne peux pas supporter wordBasedSuggestionsque l'on ait tendance à suggérer à nouveau les mêmes fautes d'orthographe / fautes de frappe faites dans le passé; "Voici un nom de fonction qui ressemble trompeusement à un vrai, mais ce n'est pas le cas!"
jrh

12

Cela fonctionne pour moi à partir du 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
Ajoutez ceci pour désactiver les info-bulles de survol:"editor.hover.enabled": false
Vidar

7

Dans la version actuelle de VS Code, ajoutez ceci à vos paramètres utilisateur:

"editor.quickSuggestions.other": false

Cela désactive la plupart des suggestions fausses.


7

Ce n'est pas la bonne réponse, mais cela pourrait être une option encore meilleure. Augmenter:

Editeur: Délai des suggestions rapides

de 50 ms (par défaut) à 500-1000 ms.

Dans ce cas, vous aurez une demi-seconde pour battre l'option de saisie semi-automatique, ce qui peut être suffisant pour 95% du temps, et vous ne perdrez pas la fonctionnalité que vous pourriez souhaiter dans certains cas.


Très bonne réponse. Je l'ai fait. Vous pouvez le définir sur un nombre encore plus élevé et vous mettre au défi de voir si vous pouvez effectuer une saisie semi-automatique plus rapidement que la machine ;-)
PatrickT

3

Réitérer la réponse pour faciliter la tâche des personnes qui écrément. Ouvrez vos paramètres avec ⌘+,ou Ctrl+,.

{
    "editor.quickSuggestions": false
}

Vous devriez plutôt apporter une modification à une réponse existante. Les instructions et la coloration syntaxique sont de bons ajouts, mais la réitération des réponses pourrait être considérée par certains comme une altération du mécanisme de vote
Samy Bencherif

2
Le problème est que les autres réponses sont plus complètes, mais pas aussi utiles dans mon cas, car j'avais juste besoin d'un paramètre. Je ne veux pas supprimer les détails de leurs réponses, juste pour me concentrer sur celui dont j'avais besoin.
ubershmekel

2

J'ai effectué cette modification pour la version 1.22.1

"editor.wordBasedSuggestions": false

Cela empêche l'achèvement d'un mot qui s'est déjà produit.


Faites ci-dessus les changements dans les paramètres utilisateur qui peuvent être trouvés sous Fichier -> Préférences -> Paramètres


-1

cela vous a peut-être aidé >> editor.acceptSuggestionOnCommitCharacter: false

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.