Colorscheme in .vimrc non funziona


16

Ho esaminato un sacco di domande qui, e sono abbastanza esperto con Vim, ma per qualche ragione il mio .vimrcnon è più impostato colorscheme.

Non so quando sia iniziato, ma mi sono appena trasferito su una nuova macchina ed è piuttosto sconcertante per me. La parte più strana è che sono in grado di impostarlo manualmente :colorscheme vividchalk, semplicemente non funzionerà quando ci sono colorscheme vividchalkdentro .vimrc. Ho provato a commentare assolutamente tutto il resto .vimrc, ancora senza fortuna. Ho provato a commentare tutto ma syntax one set t_Co=256, ancora senza fortuna (e lo stesso comportamento delle impostazioni manuali funzionanti).

Qualche idea? La mia installazione è sshsul mio computer Ubuntu da Chrome OS.

Risposte:


17

[Risposta completamente rivista per gli altri.]

Poiché il :colorschemecomando " " funziona manualmente, ciò dimostra che hai installato il sistema colori. Ciò significa che in qualche modo c'è qualcosa che viene dopo negli script di inizializzazione che sta sovrascrivendo il tuo schema preferito. Puoi rintracciarlo digitando " :scriptnames" e leggendolo per caricare un altro schema di colori. Una volta trovato, puoi rimuovere o commentare quella riga in qualsiasi script di inizializzazione da cui viene chiamato.


1
No, sfortunatamente è elencato lì. Ho vividchalk.vimnella mia ~/.vim/colorsdirectory, e come ho già detto, si carica perfettamente fino a quando :colorscheme vividchalkscrivo in una sessione di vim. È come se qualcos'altro lo sovrascrivesse, ma non viene caricato nient'altro.
Californiano,

1
E qui ho pensato di aver letto correttamente la tua domanda. Chiedo scusa. Cosa :scriptnamesmostra l'output di " "?
Heptite il

Nessun problema; grazie per il tempo dedicato a rispondere a tutti! Ah sì, e penso che sia qui che sta il problema ... quindi ha un sacco di cose lì dentro, ma è troppo lungo per questo commento, quindi lo posterò separatamente. Inoltre, prima di commentare qualche cosa di colore nella synload.vim(dalla riga 4 sopra), aveva qualche errore nel non riuscire a trovare un colorcheme chiamato "ansi_blows" durante l'esecuzione :so $MYVIMRC. Qualche idea su quale file dovrei approfondire?
Californiano,

1
@Heptite Ci sono molte cose che vengono eseguite prima e dopo il mio ~/.vimrcsembra. C'è un modo per ~/.vimrcdire semplicemente che il mio è stato eseguito per ultimo, in modo che sovrascriva qualunque cosa sia successa prima?
sognatore,

1
Nel mio caso, il mio errore è stato mettere colorscheme ... prima set t_Co=256 e causare il problema.
nima,

9

set background=darkdovrebbe essere prima syntax enablee colorscheme whatevernel tuo .vimrc


2
Accurato, ma il problema è stato riscontrato con la risposta sopra. Grazie comunque; speriamo che qualcuno lo trovi utile.
Californiano,

Questo mi ha risolto dopo aver guardato tutti gli script. Grazie! (Non vedo l'ora che arrivi Neovim ...).
Ben

6

Per altri come me inciampare in:

Se stai utilizzando vimo nvimall'interno di un emulatore di terminale, assicurati che le impostazioni dei colori per il tuo profilo siano corrette. Per gnome-terminal, ho dovuto disabilitare "usa i colori dal tema di sistema" nelle mie impostazioni Preferenze / Profilo / Colore prima di riuscire a far funzionare correttamente il mio schema di colori:

inserisci qui la descrizione dell'immagine

Inoltre, da poco nvim si è deprecato NVIM_TUI_ENABLE_TRUE_COLORa favore di set termguicolors(vedi questo ).


0

Ho avuto lo stesso problema su Debian stretch, anche con alcuni altri comandi (il colore e l'impostazione dello sfondo funzionano manualmente ma non in .vimrc). Ma non volevo esaminare tutti i file nei nomi di script.

La soluzione è aggiungere

source $VIMRUNTIME/defaults.vim

a .vimrc

Questa riga può essere trovata in /usr/share/vim/vimXX/vimrc_example.vim come riferimento (XX è la versione vim, nel mio caso 80).

Suppongo che defaults.vim faccia alcune cose di configurazione necessarie per cambiare il colore. Ma defaults.vim non viene caricato se l'utente ha ~ / .vimrc, secondo / usr / share / vim / vimrc

" Vim will load $VIMRUNTIME/defaults.vim if the user does not have a vimrc.

0

Nel mio caso uso combinazioni di colori dai plugin (repository esterni). Quindi devo caricare i plugin prima di applicare il colorschemecomando.


0

.gvimrc

Durante l'utilizzo gvim, potrebbe essere necessario inserire colorscheme vividchalkanche il .gvimrcfile, nonostante questo sia già presente in.vimrc

:scriptnamespotrebbe rivelarsi quando /usr/share/vim/vim80/colors/ron.vimviene caricato un colore predefinito come .

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.