LazowskiAnton · Extensions

ColorSmith

Campioni di colore e un vero selettore di colori per l’editor di Visual Studio. Un campione appare solo dove il codice definisce davvero un colore, mai sulla parola «red» nel testo di una pagina o su #123 in un commento.

Gratuito · Visual Studio 2022 e 2026 · 14 lingue dell’interfaccia · nessuna telemetria

Perché un’altra estensione per i colori

Rilevamento intelligente

Ogni linguaggio ha il proprio lexer: stringhe, commenti e codice vengono distinti. Un nome di colore ottiene un campione solo in un contesto di colore (Foreground="Red", color: red), non nel testo normale.

Un selettore che vale la pena aprire

HEX, RGB, HSL e OKLCH, contagocce con lente, tinte chiare e scure, colori del file, preferiti, contrasto WCAG. Il risultato viene riscritto nella notazione già usata dal codice.

Gratuito, senza condizioni

Nessun abbonamento, nessuna prova, nessun promemoria insistente, nessuna telemetria. Le impostazioni restano sul tuo computer.

Parla la tua lingua

Inglese, ceco, tedesco, spagnolo, francese, italiano, giapponese, coreano, polacco, portoghese (Brasile), russo, turco, cinese (semplificato e tradizionale). Segue la lingua di Visual Studio.

Funzionalità

Linguaggi

LinguaggioCosa ottiene un campione
C#, Visual Basic, F#stringhe hex, Colors.X / Brushes.X / Color.X, Color.FromArgb / FromRgb con letterali, Unity Color / Color32, SkiaSharp, MAUI
C / C++stringhe hex, RGB(), D2D1::ColorF, QColor, IM_COL32
JavaScript / TypeScriptstringhe hex e CSS, nomi assegnati a destinazioni di colore (fillStyle = 'red'), new THREE.Color(), classi Tailwind in JSX
Pythonstringhe hex, matplotlib "tab:blue", QColor(…), nomi solo come argomenti di colore (color="red", Tkinter bg=)
XAML / AXAMLproprietà di colore, setter, risorse <Color>, pennelli sfumatura, riferimenti a risorse, MAUI AppThemeBinding
CSS / SCSS / LESSsolo valori delle dichiarazioni, variabili, light-dark(), color-mix(), sfumature, var()
HTML / Vue / SVG / Razorattributi style, attributi di colore, blocchi <style> e <script>, blocchi C# Razor, classi Tailwind

Selettore di colori

Fai clic su un campione o su Modifica nella scheda colore. Il selettore si apre accanto al valore e mostra in quale notazione lo riscriverà (Color.FromArgb() nell’esempio).

  • Area saturazione/valore, barre di tonalità e alfa.
  • Inserimento in HEX, RGB, HSL e OKLCH; la riga sotto mostra esattamente cosa verrà scritto nel codice.
  • Il contagocce preleva un colore in qualsiasi punto dello schermo. Una lente mostra i pixel sotto il cursore; le frecce lo spostano di un pixel, Shift+frecce di dieci.
  • Copia come HEX per XAML/.NET o CSS, rgb(), hsl(), oklch(), Color.FromArgb, Unity Color o 0xAARRGGBB.
  • Tinte chiare e scure del colore corrente, colori in questo file, preferiti (pulsante a stella) e colori recenti.
  • Contrasto (WCAG) del colore usato come testo sullo sfondo dell’editor, sul bianco o sul nero, con i contrassegni AA / AAA / Grande.
  • Il colore con nome più vicino (≈ DodgerBlue); fai clic per usare il nome esatto.
  • Enter applica, Esc annulla; anche un clic fuori dal selettore applica. Le sezioni si possono comprimere e il selettore le ricorda. Il pulsante ? apre questa pagina.

I colori composti e quelli delle risorse sono di sola lettura nel selettore: modifica i colori al loro interno, oppure la risorsa dove è definita.

Selettore di colori di ColorSmith con il tema scuro
Il selettore segue il tema di Visual Studio.

Scheda colore

Passa il mouse su un colore per vederne la scheda. Nelle modalità sottolineatura e sfondo la scheda ha anche dei pulsanti: Modifica apre il selettore, Copia copia il valore, Sostituisci colore nella soluzione… avvia una sostituzione in tutta la soluzione. Alt+clic su un campione copia il valore senza aprire nulla.

Come funziona il rilevamento

ColorSmith non cerca nel testo con un’unica grande espressione regolare. Ogni file viene suddiviso in stringhe, commenti e codice dal lexer del suo linguaggio, e un valore diventa un colore solo se il contesto non lascia dubbi. Nel dubbio, nessun campione.

Ottiene un campioneResta testo normale
Foreground="Red", color: red;<p>Red is my favorite color</p>
"#3D8BFF", // #3D8BFF// fixed in #123 (hex brevi nei commenti)
Color.FromArgb(255, 61, 139, 255)Color.FromArgb(alpha, r, g, b) (valore sconosciuto)
bg-sky-500, text-white/80text-lg, border-2, bg-cover
color="red" in Pythonstatus = "red", (255, 0, 0)
a { color: navy }selettori #main, .red, font-family: Red Hat

Hex a 8 cifre

#XXXXXXXX indica alfa all’inizio in .NET, XAML e Qt (#AARRGGBB) e alfa alla fine in CSS e JavaScript (#RRGGBBAA). Per le stringhe C#, VB e C++ l’ordine è un’impostazione, perché Unity e il codice orientato al web usano alfa alla fine.

Sostituisci nella soluzione

Aprilo con la lampadina (Ctrl+.) su un colore o con il pulsante nella scheda colore. Trova il colore in ogni notazione nella cartella della soluzione (escluse bin, obj e node_modules), ti lascia scegliere le posizioni e riscrive ciascuna nella propria notazione. I file modificati si aprono senza essere salvati, con un passaggio di annullamento per file, così puoi rivedere tutto prima di salvare.

Impostazioni

Strumenti → Opzioni → SmithWorks → ColorSmith. Ogni opzione ha una descrizione subito sotto.

OpzionePredefinito
Mostra campioni di coloreattivo
Modalità di visualizzazioneSottolineatura
Dimensione del campioneMedio
Anteprima colore in IntelliSenseattivo
Sostituisci nella soluzioneattivo
Colori hex nei commentiattivo
Classi Tailwind CSSattivo
Colori delle risorseattivo
Hex a 8 cifre in C#, VB e C++#AARRGGBB
Dimensione massima del file (KB)4096
Linguaggitutti attivi

Le impostazioni sono salvate in %LocalAppData%\ColorSmith, insieme ai preferiti e ai colori recenti del selettore.

Pagina delle opzioni di ColorSmith
La pagina delle opzioni. Il collegamento Documentazione in basso apre questa pagina.

FAQ

Perché il mio colore non ha un campione?

Molto probabilmente il contesto è ambiguo: un nome fuori da un contesto di colore, una chiamata con un argomento variabile, un hex breve in un commento o un valore costruito con var()/calc(). Verifica anche che il linguaggio sia attivo nelle impostazioni e che il file non superi il limite di dimensione.

I colori possono apparire come icone nell’elenco di IntelliSense?

No. Visual Studio non consente a un’estensione di cambiare le icone degli elementi di completamento di altri provider. ColorSmith mostra invece un’etichetta colorata sopra il cursore.

Il campione sposta il mio codice?

Solo nella modalità «quadrato prima del valore». Le modalità margine, sottolineatura e sfondo non spostano mai il testo.

Posso modificare un colore di risorsa dove viene usato?

Non ancora. La scheda mostra il valore di ogni tema con file e riga; modificalo nella definizione.

ColorSmith invia dati?

No. Nessuna telemetria e nessun accesso alla rete.

Dove segnalo un problema o suggerisco una funzionalità?

Apri una issue nel repository Feedback su GitHub: ci sono moduli per bug e idee. Puoi anche usare la scheda Q&A nel Marketplace.

Registro modifiche

1.0.2

1.0.1

1.0.0