Schemi di colori Vim e programmi SAS


3

Ho un problema che quando apro i programmi SAS (file .sas) in Vim, i colori appaiono molto brutti (un mix di sfondo bianco e nero, ecc.).

Esempio qui: Ecco come appare vim quando apro un file SAS ( setf=sas )

This is how vim looks when I open a SAS file (setf=sas)

Il mio colorscheme è koehler.

Ho provato a cambiare il colorscheme, ma poi succede:

When I run :colo delek, vim looks like this. Syntax highlighting seems to have disappeared.

Quindi corro :setf sase l'evidenziazione della sintassi appare di nuovo con i colori corretti.

So I run :setf sas, and syntax highlighting appears again with correct colors.

Non sono sicuro di quale sia il problema di fondo qui: potrebbe trattarsi di un problema nel colorscheme 'koehler', tuttavia, poiché l'evidenziazione della sintassi scompare quando cambio il colorscheme, potrebbe essere piuttosto un problema nel rilevamento del filytype.

Come posso risolvere questo?

Posso in qualche modo configurare vim per usare un diverso colorscheme per un tipo di file specifico? (ad esempio usa delek per i file .sas?)

Aggiornamento 2015-05-15 : Appare evidente che il problema si verifica solo in gvim e non in Vim in un terminale. Ho uno screenshot qui di come appare quando apro un file .sas in Vim da un terminale: https://imgur.com/EQguEst

Aggiornamento 2016-01-15 :

Il problema è stato risolto modificando sas.vim e modificando tutte le definizioni di colore costante su collegamenti HiLink:

HiLink sComment Comment
HiLink sCard    String
HiLink sDate_Time   Special
HiLink sKeyword Structure
HiLink sFmtInfmt    Special
HiLink sString  String
HiLink sText    String
HiLink sNumber  Number
HiLink sProc    Structure
HiLink sSection Structure
HiLink mDefine  Define
HiLink mKeyword Structure
HiLink mReference   Structure
HiLink mSection Structure
HiLink mText    String

fa :redraw anche risolvere il problema ?!
Ingo Karkat

: il ridisegno non sembra avere alcun effetto.
Thomas

Peccato. Avrei indovinato i problemi del terminale (sbagliato $TERM valore), ma almeno uno dei tuoi screenshot mostra che anche GVIM è interessato. Strano.
Ingo Karkat

Tutti gli screenshot provengono da gvim. Non ho provato nella console, ma lo farò e aggiornerò con i risultati.
Thomas

Risposte:


3

Spiegare questo comportamento

L'evidenziazione della sintassi ha lo scopo di modificare una combinazione di colori. L'evidenziazione della sintassi SAS predefinita ha lo scopo di modificare una normale combinazione di colori, come quella che utilizzo, e quindi è adatta a mostrare data come il blu su bianco. Su uno schema video inverso, come koehler, non è.

Quando cambi la tua combinazione di colori in una normale, vim elimina l'evidenziazione della sintassi, perché potrebbe essere incompatibile con la combinazione di colori appena selezionata.

Puoi risolvere questo

creando un'evidenziazione della sintassi personalizzata per SAS in video inverso. Per fare ciò, modifica il tuo sas.vim file (sul mio sistema Windows in C:\Program Files (x84)\vim74\syntax ) , impostazione di tutti guibg a Black, sostituto guifg=Blue guifg=LightBlue e applicando cambiamenti simili fino a che non sembra a posto


Questo ha risolto il mio problema. Farò un aggiornamento delle modifiche effettive a sas.vim che ha risolto questo problema.
Thomas
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.