web-dev-qa-db-fra.com

existe-t-il un moyen de mettre en évidence tous les caractères d'accentuation spéciaux dans le texte sublime ou tout autre éditeur de texte?

J'utilise le code HTML pour coder les caractères spéciaux dans le texte Sublime pour convertir tous les caractères spéciaux dans leur code HTML. J'ai beaucoup de caractères accentués dans différentes parties du fichier. Donc, ce serait génial si je pouvais sélectionner tous les caractères spéciaux et ensuite utiliser le plugin pour les convertir en une seule fois!

Existe-t-il une expression régulière qui permet de sélectionner uniquement tous les caractères spéciaux?

68
user1452307

Oui.

Le texte sublime prend en charge l'expression régulière et vous pouvez sélectionner tous les caractères non ASCII (point de code> 128). Cette trouvaille regex devrait vous suffire:

[^\x00-\x7F]

Recherchez et remplacez.

Mais si vous faites un encodage HTML manuel en premier lieu, vous vous trompez. Enregistrez vos fichiers au format UTF-8 (Sublime Text 2 par défaut) et assurez-vous que votre serveur Web envoie également ces fichiers au format UTF-8. Aucune conversion, encodage ou quoi que ce soit nécessaire.

162
Mikko Ohtamaa

Comme autre référence (ou complément):

Le package Sublime Text 2/3, nommé Highlighter , peut (comme son nom l'indique) mettre en évidence certains caractères avec regex ...

"Vous pouvez également ajouter un regex personnalisé pour que les caractères soient mis en évidence."

Donc, avec ce package, plus @Mikko Ohtamaa réponse, nous pouvons éditer le fichier ...

highlighter.sublime-settings -User

... et inclure l'expression régulière proposée, (exprimée ici sous la forme [^\\x00-\\x7F]) pour finir avec quelque chose comme ceci:

{  
    "highlighter_regex": "(\t+ +)|( +\t+)|[^\\x00-\\x7F]|[\u2026\u2018\u2019\u201c\u201d\u2013\u2014]|[\t ]+$"  
}

Le résultat serait une surbrillance automatique de tous les caractères "non ASCII (point de code> 128)" dans notre fichier.

Remarque, cela ne fera pas une sélection de ces personnages, seulement les mettra en évidence pour se rendre compte facilement si vous en avez.

13
gmo

Une autre option de plugin

J'ai récemment écrit un plugin dédié à la mise en évidence des caractères non-ascii: https://github.com/TuureKaunisto/highlight-dodgy-chars

La même fonctionnalité peut être obtenue avec Highlighter mais avec le plugin Highlight Dodgy Chars moins générique, vous n'avez pas besoin d'écrire une expression régulière, vous pouvez simplement lister les caractères non-ascii que vous ne souhaitez pas mettre en évidence dans les paramètres. Les caractères spéciaux européens sont ajoutés par défaut à la liste blanche.

6
Tuure