Como desativar o recurso de espelhamento automático de marca de mudança de código / espelho do VS Code?

18

Eu queria poder editar facilmente tags HTML juntas. Pareceu-me que isso é uma coisa tão fácil de implementar hoje em dia, por isso instalei essa extensão de renomeação automática de tags e acabou não sendo útil para mim: em vez de me ajudar na edição de código html / jsx, quebra tudo e eu tenho que desfazer o que faz e tentar editar a coisa para evitar acioná-la.

A coisa lógica aqui seria, obviamente, remover esta extensão do meu sistema. O único problema aqui, no entanto, é que não consigo fazer isso - eu o desinstalei, até reinstalei o VS Code, tentei o VS Code Insiders, mas aqui está, ainda habilitado:

em ação

Está embutido agora? Como faço para desativá-lo?

Versão do VSCode: 1.41.0, confirmação 9579eda04fdb3a9bba2750f15193e5fafe16b959

dmitryguzeev
fonte
Tags de renomeação HTML são um recurso diferente do cursor do espelho, consulte stackoverflow.com/questions/36628833/…
Marque
Sim, o HTML Rename é um recurso diferente. Mas o Cursor de Espelho HTML é semelhante à funcionalidade fornecida pela extensão de Renomeação Automática de Tags , que edita as tags HTML iniciais e finais se você colocar o cursor nelas.
Gino Mempin

Respostas:

29

Resposta original para 1,41

Agora é um recurso embutido a partir da versão 1.41.

Cursor de espelho HTML
https://code.visualstudio.com/updates/v1_41#_html-mirror-cursor

O VS Code agora adiciona um "cursor de espelho" quando você está editando tags HTML. Esse comportamento é controlado pela configuração html.mirrorCursorOnMatchingTag, que está ativada por padrão.

Esse recurso funciona adicionando um cursor múltiplo à tag correspondente quando o cursor se move para um intervalo de nomes de tags HTML. Assim como no modo multi-cursor, você pode usar a exclusão por palavras ou a seleção por palavras. O cursor espelhado é removido quando você move o cursor para fora do intervalo de nomes de tags.

Basicamente, a seleção do início ou do término da tag coloca dois cursores em cada um, portanto, a edição de um também edita o outro. Está ativado por padrão.

Você pode desabilitá-lo explicitamente de suas configurações.

Via interface do usuário:

insira a descrição da imagem aqui

Via settings.json:

"html.mirrorCursorOnMatchingTag": false,

Atualização para 1.42

O html.mirrorCursorOnMatchingTagagora está desativado por padrão a partir de 1.42 .
Veja esta outra resposta para a cotação das notas de versão.


Atualização para 1.44

Eles mudaram o recurso de cursor de espelho e agora o chamam de regiões sincronizadas .

insira a descrição da imagem aqui
(copiado das notas de versão do VS Code 1.44)

Quando ativado nas tags HTML, se as tags inicial e final ficarem "sincronizadas", a alteração de uma também mudará a outra. No entanto, o recurso está desativado por padrão e você executa explicitamente o comando On Type Rename Symbol ou define a editor.renameOnTypeconfiguração como true.

Com essa alteração, o html.mirrorCursorOnMatchingTagitem agora será exibido como reprovado (ou acinzentado).

insira a descrição da imagem aqui

Gino Mempin
fonte
13
Eu achei esse recurso muito HTML com erros e corrompido nas operações de copiar / colar. Deixo este comentário aqui porque os desenvolvedores de código impedem de criar problemas em seu site :( PS Parece html.mirrorCursorOnMatchingTag = false
help
7
Esse recurso é incrivelmente incorreto, alterando arbitrariamente o conteúdo em outras tags e excluindo grandes faixas de conteúdo quando edito os atributos das tags. Nunca deveria ter saído nesse estado. Coisas como essa arriscam arruinar um bom editor, quando começam a inchar com recursos mal cozidos e mal testados quando estava funcionando bem antes.
Garret Wilson
5
Concordo com a KoViMa e a @Garret Wilson que a implementação desse recurso por padrão põe em causa o julgamento da equipe de desenvolvimento de código. Expense-se neste tópico monitorado pelo MS: github.com/microsoft/vscode/issues/87737
VanAlbert
11
@VanAlbert, obrigado; Eu comentei sobre o assunto.
Garret Wilson
1

Consulte https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_42.md#html-mirror-cursor-off-by-default com a v1.42 com lançamento previsto para fevereiro de 2020.

Cursor de espelho HTML desativado por padrão

Tornamos o Cursor de Espelho um recurso de aceitação. Na próxima iteração, continuaremos aprimorando sua implementação para tornar esse recurso mais facilmente compreensível e disponível para mais idiomas. Você ainda pode usar esse recurso ativando html.mirrorCursorOnMatchingTag.

----- Atualização março 2020 ----------

Os desenvolvedores do vscode ouviram você. A funcionalidade do cursor de espelho está sendo substancialmente modificada. Você pode testá-lo no Build Insiders 'Build agora, portanto, talvez ele entre na v1.44 ou logo em seguida.

Especialmente colar em uma tag foi muito melhorado. E não há cursores duplos. Consulte https://github.com/microsoft/vscode/issues/88424#issuecomment-600840619

E notas de versão: https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_44.md#synced-regions Está na v1.44.

Marca
fonte