2013-04-23 24 views
13

Ecco il mio .vimrcvim "sintassi on" non funziona

1 syntax on 
    2 set ts=4 
    3 set number 
    4 set smartindent 
    5 set shiftwidth=4 

Tuttavia, ho cercato di modificare HelloWorld.java e HelloWorld.c. Entrambi hanno un carattere nero normale puro. Nessuna evidenziazione!

Ho anche provato :syntax on dopo che il video è aperto, ma senza fortuna.

\>vim -version 
VIM - Vi IMproved 7.3 (2010 Aug 15) 

\>cat /etc/*-release 
openSUSE 11.4 (x86_64) 
VERSION = 11.4 
CODENAME = Celadon 

risposta

2

nel vostro .vimrc, non vedo filetype impostazione. potresti provare ad aggiungere:

filetype plugin indent on 

al tuo vimrc.

se non si dispone di set nocp, aggiungere anche questa linea.

se leggete :h filetype

:filetype on 

Each time a new or existing file is edited, Vim will try to recognize the type 
of the file and set the 'filetype' option. This will trigger the FileType 
event, which can be used to set the syntax highlighting, set options, etc. 
+0

Grazie, Kent. Provai. Ma senza fortuna. A proposito, io uso ssh per connettere questo server openSUSE. – JackWM

4

avrete bisogno di installare il pacchetto vim-data su openSUSE per la sintassi vim colorazione a lavorare. Sembra strano, so che questo non è inserito di default con il pacchetto vim, ma AFAIK è per le persone che vogliono creare minuscole installazioni di base. Il pacchetto vim-data contiene i file di runtime.

Verificare inoltre che l'ambiente remoto disponga di un set di variabili TERM appropriato TERM = schermo-256color, TERM = xterm, TERM = xterm-256color funzionino tutti bene con ssh e ssh con screen/tmux.

+0

Ti benedica per avermi risparmiato negli ultimi 30 minuti di sbattere la testa contro il terminale. – tonysdg

12

Quando si modifica il file, stai usando

vim filename 

Questo può importare. In alcune configurazioni del server, se si fa vi filename si ottiene vim, ma è una versione molto ridotta di vim che è molto simile al vi originale. Se invece si digita vim filename, si ottiene il vim completo.

Ho appena risolto questo problema con una persona che si trovava su un server con installato il pacchetto vim-minimal e un altro pacchetto vim. Sospetto (ma non ho verificato) che il pacchetto vim-minimal abbia installato il suo eseguibile come /bin/vi.

la differenza era molto chiaro quando si guardava i file effettivi (cioè ls -l /bin/vi vs ls -l /usr/bin/vim) - uno era circa dieci volte più grande. Entrambi erano in realtà vim, lo stesso numero di versione e tutto, ma lo/bin/vi è stato compilato con pochissime funzionalità abilitate.

Per rendere ancora più confusa:

vi existing.pl 

ha aperto il file .pl, ha dato nessuna colorazione della sintassi

vi [enter] 

ha dato la schermata iniziale di vim, e da lì

:e existing.pl 

ha aperto il file con la colorazione della sintassi su.

+1

Incredibile. Ho passato ore negli ultimi due anni a cercare di far funzionare Syntac highlighting. Ha funzionato fuori dalla scatola sul server CentOS 4 che ho installato nel 2005, ma su nulla da allora. Ho letto decine di articoli che mi hanno insegnato ad aggiungere "sintassi on" a .vimrc, ma nulla ha funzionato fino ad ora. vim e vi sono in realtà binari diversi. Complimenti a te, buon signore. – mdoyle

+0

@mdoyle Ho appena ricevuto un avviso su questa domanda e sono venuto a rileggere il tuo commento. Vorrei poterti dare tutta la domanda sul karma per il gentile gesto di farmi sapere quanto ti ha aiutato! Grazie per aver dedicato del tempo per dartelo. Mi fa ancora piacere pensarci due anni dopo. – msouth

0

Per qualche strano motivo su MacOS, "syntax on" deve essere la prima riga nel file .vimrc. La linea sembra essere ignorata se posta altrove nel file.

1

Se tutti sopra sono stati fatti e si vede alcune sottolineature e grassetto invece di colori reali ... questo potrebbe funzionare per voi:

export TERM=xterm-color 
+0

Grazie! Questa evidenziazione della sintassi fissa per me; tmux imposta 'TERM' su' screen-256color', che vim non sembra gradire. –