Condividi tramite


elementi colorabili personalizzati

È possibile eseguire l'override dell'elenco dei tipi per un colore, ad esempio le parole chiave e commenti, implementando gli elementi colorabili personalizzati come parte del servizio di linguaggio.

Impostazioni utente degli elementi colorabili

È possibile visualizzare la finestra di dialogo di Tipi di carattere e colori selezionando opzioni scegliere dal menu di strumenti e selezionando Tipi di carattere e colori in ambiente. Quando si seleziona una visualizzazione, come editor di testo o finestra di comando, la casella di riepilogo di Visualizzare elementi vengono visualizzati tutti gli elementi colorabili per tale visualizzazione. È possibile visualizzare e modificare il tipo di carattere, la dimensione, il colore di primo piano e il colore di sfondo per ogni elemento il colore. Le opzioni vengono memorizzate nella cache nel Registro di sistema e accessibili dal nome dell'elemento il colore.

Presentazione degli elementi colorabili

Poiché l'ide mantiene un override dell'utente degli elementi colorabili nella finestra di dialogo di Tipi di carattere e colori , è sufficiente fornire a ogni elemento il colore personalizzato con un nome. Questo nome è quello visualizzato nell'elenco di Visualizzare elementi . Gli elementi colorabili vengono visualizzati in ordine alfabetico. Per raggruppare gli elementi colorabili personalizzati del servizio di linguaggio, è possibile iniziare ogni nome con il nome del linguaggio, ad esempio NewLanguage - commento e NewLanguage - parola chiave.

Avviso

È necessario includere il nome della lingua nel nome dell'elemento il colore per evitare conflitti con i nomi degli elementi colorabili esistenti.Se si modifica il nome di uno degli elementi colorabili durante lo sviluppo, è necessario reimpostare la cache che è stato creato la prima volta gli elementi colorabili è stato eseguito.È possibile reimpostare la cache sperimentale dello strumento di vsregex.Utilizzare la riga di comando vsregex GetOrig 10.0 Exp, sostituendo l'estensione appropriata del nome del Registro di sistema e della versione per la versione di Visual Studio.Lo strumento di vsregex viene installato con Visual Studio SDK.Per ulteriori informazioni su vsregex, vedere l'argomento “la riga di comando di VsRegEx„ in istanza sperimentale di Visual Studio.

Il primo elemento nell'elenco di elementi colorabili non viene fatto riferimento mai. Il primo elemento corrisponde a un indice il colore dell'elemento di 0 e Visual Studio fornisce sempre i colori del testo e gli attributi predefiniti per tale elemento. Il modo più semplice per risolvere questo elemento senza riferimenti è fornire un elemento il colore segnaposto nell'elenco come primo elemento.

Distribuire gli elementi colorabili personalizzati

  1. Per definire cosa deve essere colorato nel linguaggio, ad esempio parola chiave, operatori e identificatore.

  2. creare un'enumerazione di questi elementi colorabili.

  3. Associare i tipi di token restituiti da un parser o da uno scanner con i valori enumerati.

    Ad esempio, i valori che rappresentano i tipi di token potrebbero essere gli stessi valori del colore personalizzata degli elementi.

  4. Nell'implementazione del metodo di ColorizeLine nell'oggetto di IVsColorizer , compilare l'elenco degli attributi dei valori del colore personalizzata degli elementi che corrisponde ai tipi di token restituiti dal parser o dallo scanner.

  5. Nella stessa classe che implementa l'interfaccia di IVsLanguageInfo , implementare l'interfaccia di IVsProvideColorableItems e i due metodi, GetItemCount e GetColorableItem.

  6. Implementare l'interfaccia IVsColorableItem.

  7. Se si desidera supportare 24 bit o valori di colore attivato, e implementano l'interfaccia di IVsHiColorItem .

  8. Nell'oggetto del servizio di linguaggio, creare un elenco che contiene gli oggetti di IVsColorableItem , uno per ogni elemento il colore il parser o lo scanner possibile identificare.

    È possibile accedere a ogni elemento nell'elenco utilizzando il valore corrispondente del colore personalizzata degli elementi. Utilizzare i valori di enumerazione come indice dall'elenco. Il primo elemento nell'elenco non viene mai eseguito, poiché corrisponde allo stile predefinito di testo che Visual Studio gestisce sempre stesso. È possibile rimediare questo risultato inserendo un elemento il colore segnaposto l'inizio dell'elenco.

  9. Nell'implementazione del metodo di GetItemCount , restituire il numero di elementi nell'elenco il colore personalizzato degli elementi.

  10. Nell'implementazione del metodo di GetColorableItem , restituire l'elemento il colore richiesto dall'elenco.

per un esempio di come implementare le interfacce di IVsHiColorItem e di IVsColorableItem , vedere IVsHiColorItem.

Vedere anche

Attività

Procedura: utilizzare gli elementi colorabili incorporati

Concetti

modello di un servizio di linguaggio

Colorazione della sintassi nell'editor personalizzati

Colorazione della sintassi

Implementare colorazione della sintassi