Comment désactiver la fonction de renommage automatique des balises / code HTML VS Code?

18

Je voulais pouvoir éditer facilement des balises HTML ensemble. Il me semblait que c'est une chose si facile à implémenter de nos jours, j'ai donc installé cette extension de changement de nom automatique , et cela s'est avéré ne pas être utile pour moi: au lieu de m'aider dans l'édition de code html / jsx, il casse tout et je dois annuler ce qu'il fait et essayer de modifier la chose pour éviter de la déclencher.

La chose logique ici serait évidemment de supprimer cette extension de mon système. Le seul problème ici, cependant, est que je n'arrive pas à le faire - je l'ai désinstallé, même réinstallé VS Code, essayé VS Code Insiders, mais le voici, toujours activé:

en action

Est-il intégré maintenant? Comment le désactiver?

Version VSCode: 1.41.0, commit 9579eda04fdb3a9bba2750f15193e5fafe16b959

dmitryguzeev
la source
Les balises HTML Rename sont une fonctionnalité différente du curseur miroir, voir stackoverflow.com/questions/36628833/…
Mark
Oui, le Renommage HTML est une fonctionnalité différente. Mais le curseur miroir HTML est similaire à la fonctionnalité fournie par l' extension de changement de nom automatique , qui modifie les balises HTML de début et de fin si vous placez votre curseur dessus.
Gino Mempin

Réponses:

29

Réponse originale pour 1,41

C'est maintenant une fonctionnalité intégrée à partir de la version 1.41.

Curseur miroir HTML
https://code.visualstudio.com/updates/v1_41#_html-mirror-cursor

VS Code ajoute désormais un "curseur miroir" lorsque vous modifiez des balises HTML. Ce comportement est contrôlé par le paramètre html.mirrorCursorOnMatchingTag, qui est activé par défaut.

Cette fonctionnalité fonctionne en ajoutant un multi-curseur à la balise correspondante lorsque votre curseur se déplace dans une plage de noms de balises HTML. Tout comme en mode multi-curseur, vous pouvez utiliser la suppression mot par mot ou la sélection par mot. Le curseur en miroir est supprimé lorsque vous déplacez votre curseur en dehors de la plage de noms de balises.

Fondamentalement, la sélection du début ou de la fin du tag place 2 curseurs sur chacun, donc éditer l'un édite également l'autre. Il est activé par défaut.

Vous pouvez le désactiver explicitement à partir de vos paramètres.

Via l'interface utilisateur:

entrez la description de l'image ici

Via settings.json:

"html.mirrorCursorOnMatchingTag": false,

Mise à jour pour 1.42

Le html.mirrorCursorOnMatchingTagest maintenant désactivé par défaut à partir de 1.42 .
Voir cette autre réponse pour la citation des notes de version.


Mise à jour pour 1.44

Ils ont changé la fonction de curseur miroir et l'appellent maintenant régions synchronisées .

entrez la description de l'image ici
(copié à partir des notes de mise à jour de VS Code 1.44)

Lorsqu'elle est activée sur les balises HTML, si les balises de début et de fin deviennent "synchronisées", la modification de l'une modifie également l'autre. Cependant, la fonctionnalité est désactivée par défaut et vous exécutez explicitement la commande On Type Rename Symbol ou définissez le editor.renameOnTypeparamètre sur true.

Avec ce changement, le html.mirrorCursorOnMatchingTagsera désormais affiché comme obsolète (ou grisé).

entrez la description de l'image ici

Gino Mempin
la source
13
J'ai trouvé que cette fonctionnalité est très boguée et corrompue HTML lors des opérations de copier / coller. Je laisse ce commentaire ici parce que les développeurs de code empêchent de créer des problèmes sur leur site :( PS Il semble que html.mirrorCursorOnMatchingTag = fausses aides
KoViMa
7
Cette fonctionnalité est incroyablement boguée, modifiant arbitrairement le contenu dans d'autres balises et supprimant de larges pans de contenu lorsque je modifie les attributs des balises. Il n'aurait jamais dû sortir dans cet état. Des choses comme cela risquent de ruiner un bon éditeur, quand ils commencent à le gonfler de fonctionnalités à moitié cuites et mal testées alors qu'il fonctionnait bien auparavant.
Garret Wilson
5
Je suis d'accord avec KoViMa et @Garret Wilson que la mise en œuvre de cette fonctionnalité par défaut remet en question le jugement de l'équipe de développement de Code. Exprimez-vous à ce sujet sur ce fil de discussion MS: github.com/microsoft/vscode/issues/87737
VanAlbert
1
@ VanAlbert, merci; J'ai commenté la question.
Garret Wilson
1

Voir https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_42.md#html-mirror-cursor-off-by-default avec la v1.42 prévue pour début février 2020.

Curseur miroir HTML désactivé par défaut

Nous avons fait de Mirror Cursor une fonctionnalité opt-in. Dans la prochaine itération, nous continuerons d'améliorer son implémentation afin de rendre cette fonctionnalité plus facilement compréhensible et disponible pour plus de langues. Vous pouvez toujours utiliser cette fonction en l'activant html.mirrorCursorOnMatchingTag.

----- Mise à jour mars 2020 ----------

Les développeurs de vscode vous ont entendu. La fonctionnalité de curseur miroir est en cours de modification substantielle. Vous pouvez le tester dans la version des initiés maintenant, donc peut-être qu'il entrera dans la v1.44 ou peu de temps après.

En particulier, le collage dans une balise a été considérablement amélioré. Et pas de curseurs doubles. Voir https://github.com/microsoft/vscode/issues/88424#issuecomment-600840619

Et notes de version: https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_44.md#synced-regions C'est dans la v1.44.

marque
la source