(我是 Linux 和 Vim 新手,我正在尝试学习 Vim,但我遇到了一些无法解决的问题)
我安装的 Linux (Ubuntu 8.04) 无法使用 Vim 7.1.138 进行更新。
我的 vim 安装在 /usr/share/vim/vim71/
中。/home/用户/
我的.vimrc文件位于/home/user/.vimrc
中,如下:
fun! MySys()
return "linux"
endfun
set runtimepath=~/.vim,$VIMRUTNTIME
source ~/.vim/.vimrc
然后,在我的 /home/user/.vim/.vimrc
中:
" =============== GENERAL CONFIG ==============
set nocompatible
syntax on
" =============== ENCODING AND FILE TYPES =====
set encoding=utf8
set ffs=unix,dos,mac
" =============== INDENTING ===================
set ai " Automatically set the indent of a new line (local to buffer)
set si " smartindent (local to buffer)
" =============== FONT ========================
" Set font according to system
if MySys() == "mac"
set gfn=Bitstream\ Vera\ Sans\ Mono:h13
set shell=/bin/bash
elseif MySys() == "windows"
set gfn=Bitstream\ Vera\ Sans\ Mono:h10
elseif MySys() == "linux"
set gfn=Inconsolata\ 14
set shell=/bin/bash
endif
" =============== COLORS ======================
colorscheme molokai
" ============== PLUGINS ======================
" -------------- NERDTree ---------------------
:noremap ,n :NERDTreeToggle<CR>
" =============== DIRECTORIES =================
set backupdir=~/.backup/vim
set directory=~/.swap/vim
...事实是命令 syntax on
不起作用,无论是在 vim 还是 gvim 中。奇怪的是:如果我尝试使用 gvim 工具箱设置语法,它会起作用。然后,在 gvim 的正常模式下,使用工具栏激活后,使用代码 :syntax off
,它可以工作,并且在执行此操作后尝试执行 :syntax on
不会不起作用!!
我在 /usr/share/vim/vim71/
和 home 文件夹中都有语法文件(在 home 中只有一个 python 语法模块)。我也运行了 sudo aptitude install vim
,除了 vim-gtk
之外,没有任何东西可以下载,因为我担心某种不兼容。
发生什么事了?我错过了什么吗?
最佳答案
让我们将其分解为简单的事情。不要尝试调试多个可能的故障点(源
、运行时路径
),而是查看最简单的情况是否有效。然后,添加回每个部分,直到有东西损坏为止。
首先,确保您的 ~/.vimrc/
和 ~/.vim/.vimrc
已 checkin 版本控制或保存副本。另外,除非您出于某种原因修改了原始 python 语法模块,否则不需要将其放在 ~/.vim
目录中。
现在,删除两个 .vimrc
文件的内容,并仅将以下两行添加到 ~/.vimrc
文件中。
filetype plugin on
syntax on
现在,打开一个新的 vim session ,其中包含您尝试语法突出显示的文件。有效吗?如果正确检测到文件类型,我希望这在大多数情况下都有效。
:set filetype?
如果语法突出显示不起作用,并且 filetype
正确,则不仅仅是您的 .vimrc
文件出了问题。您也可以尝试删除 ~/.vim 目录,看看这是否是问题所在。
我不确定你为什么要设置 runtimepath
但当我检查我的时,它显示 ~/.vim
作为第一个条目(并且有一个默认情况下,目录多于 VIMRUNTIME
),因此不需要该行。
:set runtimepath?
此外,VIMRUNTIME
拼写错误。我希望这是你的问题。如果我使用上面的set runtimepath
,我也会失去语法突出显示。
希望这有帮助。
关于syntax - 无法让 "syntax on"在我的 gvim 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2790299/