J'ai une extension Visual Studio qui affiche des gribouillis d'erreur rouges. J'aime aussi fournir des symboles d'autres couleurs, par exemple jaune pour les avertissements.
La création de gribouillis rouges peut être réalisée en étendant la classe ITagger, comme suit :
internal sealed class MySquigglesTagger : ITagger<IErrorTag> {
public IEnumerable<ITagSpan<IErrorTag>> GetTags(NormalizedSnapshotSpanCollection spans) {
foreach (IMappingTagSpan<MyTokenTag> myTokenTag in this._aggregator.GetTags(spans))
SnapshotSpan tagSpan = myTokenTag.Span.GetSpans(this._sourceBuffer)[0];
yield return new TagSpan<IErrorTag>(tagSpan, new ErrorTag("Error", "some info about the error"));
}
}
}
Ce que j'ai essayé :
- Mon intuition (erronée) me dit que retourner un ErrorTag avec un errorType différent peut donner un type de tag différent, mais quelle que soit la chaîne que vous lui passez, les gribouillis restent rouges. Par exemple, new ErrorTag("Warning") renvoie des gribouillis rouges. La documentation MSDN est pratiquement inexistante. Voir ErrorTag .
- Dans le cadre de la Espace de noms pour le balisage il n'est pas fait mention d'une classe d'étiquettes différente qui mettrait en œuvre ITag. J'espérais qu'il existait un WarningTag ou un InfoTag.
- A posé une question sur le forum MSDN aquí .
Pregunta Comment créer des ornements verts (ou bleus ou jaunes) en forme de gribouillis ? Malheureusement, même les solutions obscures ou alambiquées sont appréciées...
Je vise VS2015 et VS2017.
Edit : Pendant que je tapais cette question, quelqu'un sur le forum MSDN m'a répondu que ce n'était pas possible avec l'API actuelle. Est-il vraiment impossible de faire des gribouillis jaunes dans Visual Studio ?