2010-09-23 3 views
1

Dans mon .vimrc je l'extrait suivant:vim ne peut pas syntax.vim ouvert

if has('autocmd') 
    filetype plugin indent on 
    syntax on 

mais quand je commence à vim il montre l'erreur suivante:

Can't open file /usr/share/vim/syntax/syntax.vim 

erreur semble s'être produit sur syntax on ligne dans .vimrc.

Je n'ai pas syntax.vim dans le chemin /usr/share/vim/syntax que j'ai d'autres comme clojure.vim cpp.vim java.vim etc...

Je cherchai mais ne peut pas sembler trouver la valeur par défaut syntax.vim s'il est livré avec la version par défaut de vim. Je suis coincé avec cela pendant un certain temps et je voudrais de l'aide.

Répondre

0

Il devrait être là donc il peut y avoir d'autres fichiers manquants. Je vous suggère de ré-installer !.

Pour une FKD est ici ce que le fichier syntax.vim devrait ressembler à ceci: -

" Vim syntax support file 
" Maintainer: Bram Moolenaar <[email protected]> 
" Last Change: 2001 Sep 04 

" This file is used for ":syntax on". 
" It installs the autocommands and starts highlighting for all buffers. 

if !has("syntax") 
    finish 
endif 

" If Syntax highlighting appears to be on already, turn it off first, so that 
" any leftovers are cleared. 
if exists("syntax_on") || exists("syntax_manual") 
    so <sfile>:p:h/nosyntax.vim 
endif 

" Load the Syntax autocommands and set the default methods for highlighting. 
runtime syntax/synload.vim 

" Load the FileType autocommands if not done yet. 
if exists("did_load_filetypes") 
    let s:did_ft = 1 
else 
    filetype on 
    let s:did_ft = 0 
endif 

" Set up the connection between FileType and Syntax autocommands. 
" This makes the syntax automatically set when the file type is detected. 
augroup syntaxset 
    au! FileType * exe "set syntax=" . expand("<amatch>") 
augroup END 


" Execute the syntax autocommands for the each buffer. 
" If the filetype wasn't detected yet, do that now. 
" Always do the syntaxset autocommands, for buffers where the 'filetype' 
" already was set manually (e.g., help buffers). 
doautoall syntaxset FileType 
if !s:did_ft 
    doautoall filetypedetect BufRead 
endif 
0

J'ai eu ce problème et après la mise à niveau 7.3 (j'utilise Cygwin). Vérifiez si l'exécution de "vi" au lieu de "vim" a le même problème. J'ai trouvé que vim était en fait l'ancien exécutable 7.2, mais les fichiers de syntaxe étaient à l'emplacement attendu par 7.3; vi était le bon exécutable 7.3.