Impedir o preenchimento automático no código do Visual Studio


101

Estou usando o novo Visual Studio Code , que claramente não está pronto para o horário nobre ainda, mas espero resolver um problema que estou tendo.

Em um arquivo SQL, sempre que você digitar case, ele adiciona automaticamente end, como se você estivesse construindo um casebloco. Mesmo se você estiver em um comentário ou usando Casecomo parte de uma palavra (por exemplo, select CaseID from...). Eu gostaria de desabilitar todo esse absurdo completamente, já que não faz um bom trabalho de conclusão automática para mim.

As únicas opções de configuração que posso encontrar, já defini:

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

Alguma outra ideia sobre como parar isso?

Também é verdade para coisas como begin(acrescenta end) e tenho certeza que muito mais.


3
Uma solução alternativa é pressionar ^ Z após digitar caseou begin. Ainda é uma dor.
zedfoxus,

Respostas:


168

Na versão mais recente do Visual Studio Code, descobri que o

"editor.acceptSuggestionOnCommitCharacter": false

a configuração desativa esse comportamento.


59
Obrigado por isso. Eu estava digitando render(e recebendo CanvasRenderingContext2Dem vez disso. WTF?!?!?! Não me deixaria escrever o que digitei sem desativar o caractere de commit. Que inadimplência horrível. Os editores não devem substituir o que você digita sem sua permissão.
Brennan Cheung

14
É ainda pior quando muda para algo maluco e insere automaticamente uma importação para aquele símbolo indesejado.
Darius

1
@shybovycha Sim, eu adiciono "editor.acceptSuggestionOnCommitCharacter": false ao settings.json manualmente, mas não funciona como esperado. Quero dizer, ainda é completado automaticamente após eu reiniciar o VScode. Não sei por quê.
tucq88

4
Agradecendo gentilmente porque getData+ (=> __acrt_get_locale_data_prefix()simplesmente não está ajudando minha produtividade.
alter igel de

1
Eu mudei isso porque estava me deixando louco para fazer importações JS. No entanto, eu também tinha que adicionar: "editor.quickSuggestions": false,para que toda vez que eu digitasse "const" eu não obtivesse uma lista enorme e irrelevante exigindo que eu clique ESCentre a palavra-chave e o nome da variável.
Neil Guy Lindberg

58

Agora, um ano depois, o Visual Studio Code está muito bom e pronto para o horário nobre. Mas ainda não encontrei uma maneira de simplesmente desligar o preenchimento automático completamente.

Mas eles têm algumas coisas em seus documentos: https://code.visualstudio.com/docs/editor/intellisense#_customizing-intellisense

Basicamente, eu coloquei isso no meu settings.jsonpara tentar desligá-lo para o espaço de trabalho. Mas ainda tenho que avaliar isso.

// 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
Estou provavelmente a utilizar uma nova versão uma vez que este foi escrito, mas para mim "editor.quickSuggestions"é um objeto onde eu possa ajustar 3 sub-valores: { "other": false, "comments": false, "strings": false }. Além disso, talvez o VS Code seja inteligente o suficiente para ver "editor.quickSuggestions": falsee definir todos os 3 como falsos
Brad Cupit

Não consegui seguir as instruções. Melhore a resposta
userJT

3
acceptSuggestionOnEnteragora deve ser definido "off"como nas versões recentes.
rjh

2
Eu não suporto wordBasedSuggestions, que tende a re-sugerir os mesmos erros de ortografia / erros de digitação cometidos no passado; "Aqui está um nome de função que parece enganosamente semelhante a um real, mas não é!"
jrh

12

Isso funciona para mim a partir de 17 de maio de 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
Adicione para desativar as dicas de navegação:"editor.hover.enabled": false
Vidar

7

Na versão atual do VS Code, adicione às suas configurações de usuário:

"editor.quickSuggestions.other": false

Isso desativa a maioria das sugestões espúrias.


7

Esta não é a resposta correta, mas pode ser uma opção ainda melhor. Aumentar:

Editor: Atraso nas sugestões rápidas

de 50 ms (padrão) a 500-1000 ms.

Nesse caso, você terá meio segundo para vencer a opção de preenchimento automático, que pode ser suficiente para 95% do tempo, e você não perderá a funcionalidade que deseja em alguns casos.


Ótima resposta. Eu fiz isso. Você poderia configurá-lo para um número ainda maior e desafiar a si mesmo para ver se você pode autocompletar mais rápido que a máquina ;-)
PatrickT

3

Reiterando a resposta para facilitar a leitura das pessoas. Abra suas configurações com ⌘+,ou Ctrl+,.

{
    "editor.quickSuggestions": false
}

Em vez disso, você deve fazer uma edição em uma resposta existente. As instruções e o realce de sintaxe são boas adições, mas reiterar as respostas pode ser visto por alguns como uma violação do mecanismo de votação
Samy Bencherif

2
O problema é que as outras respostas são mais abrangentes, embora não tão úteis no meu caso, porque eu só precisava de uma configuração. Não quero remover detalhes de suas respostas, apenas me concentrar naquele que eu precisava.
ubershmekel

2

Fiz essa alteração para a versão 1.22.1

"editor.wordBasedSuggestions": false

Isso impede a conclusão de uma palavra que já ocorreu.


Faça as alterações acima nas configurações do usuário, que podem ser encontradas em Arquivo -> Preferências -> Configurações


-1

isso talvez tenha ajudado você >> editor.acceptSuggestionOnCommitCharacter: false

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.