2013-04-23 70 views
13

這裏是我的.vimrcVIM 「的語法」 不工作

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

不過,我嘗試過編輯HelloWorld.javaHelloWorld.c。兩者都有純正規的黑色字體。沒有任何突出顯示!

我也試過:syntax on vim打開後,但沒有運氣。

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

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

回答

2

.vimrc,我沒有看到filetype設置。您可以嘗試添加:

filetype plugin indent on 

到您的vimrc。

如果您還沒有set nocp,請添加此行。

如果你讀: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

謝謝,肯特。我試過了。但沒有運氣。順便說一句,我用ssh來連接這個openSUSE服務器。 – JackWM 2013-04-24 23:35:41

4

你需要在openSUSE安裝vim-data包vim的語法着色工作。 聽起來很奇怪,我知道默認情況下vim包沒有這樣做,但AFAIK適用於想要創建微型基本安裝的人。 軟件包vim-data包含運行時文件。

還要確保你的遠程環境有一個合適的TERM變量集TERM = screen-256color,TERM = xterm,TERM = xterm-256color應該都可以用ssh和ssh和screen/tmux一起工作。

+0

保佑你在最後30分鐘內將我的頭撞向終端。 – tonysdg 2017-04-11 18:28:35

12

當您編輯的文件,您使用的

vim filename 

這無關緊要。在一些服務器配置中,如果你做的是vi filename,你會得到vim,但它是一個非常類似於原版vi的vim的精簡版。如果你改爲輸入vim filename,你會得到全功能的vim。

我剛剛與一位曾安裝過vim-minimal軟件包的服務器以及另一個vim軟件包一起工作。我懷疑(但沒有驗證)vim-minimal軟件包將其可執行文件安裝爲/bin/vi

當您查看實際文件(即ls -l /bin/vi vs ls -l /usr/bin/vim)時,差異非常明顯 - 一個大小約爲十倍。他們兩個實際上都是vim,相同的版本號和所有內容,但是/ bin/vi卻是在啓用了很少的功能的情況下編譯的。

爲了使它更加混亂:

vi existing.pl 

打開特等文件,沒有給出語法着色

vi [enter] 

給vim的啓動畫面,並從那裏

:e existing.pl 

用語法着色打開文件。

+1

令人驚歎。過去幾年我花了幾個小時試圖讓syntac突出顯示工作。它在2005年我安裝的CentOS 4服務器上開箱即用,但之後一無所有。我讀過幾十篇文章,都指示我在.vimrc上添加「語法」,但到現在爲止沒有任何工作。 vim和vi實際上是不同的二進制文件。榮譽給你,好先生。 – mdoyle 2015-02-17 15:35:56

+0

@mdoyle我剛剛收到有關此問題的通知,並重新閱讀了您的評論。我希望我能給你所有問題的業力,讓我知道這對你有多大幫助!感謝您花時間打印出來。兩年後,我仍然很高興想到它。 – msouth 2017-03-03 05:06:42

0

對於MacOS上的一些奇怪的原因,'語法'必須是.vimrc文件中的第一行。如果放在文件的其他位置,該行似乎被忽略。

1

如果以上已經完成,你會看到一些下劃線和大膽的,而不是實際的顏色...這可能爲你工作:

export TERM=xterm-color 
+0

謝謝!這個固定的語法突出顯示了我; tmux將'TERM'設置爲'screen-256color',而vim似乎並不喜歡。 – 2017-03-10 16:59:29