【问题标题】:Can't get "syntax on" to work in my gvim无法在我的 gvim 中使用“语法”
【发布时间】:2010-05-10 12:16:20
【问题描述】:

(我是 Linux 和 Vim 的新手,我正在尝试学习 Vim,但我遇到了一些无法修复的问题)

我正在使用 Vim 7.1.138 进行无法更新的 Linux 安装 (Ubuntu 8.04)。

我的 vim 安装在 /usr/share/vim/vim71/。 /home/user/

我的.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 toolbat 设置语法,它可以工作。然后,在gvim的正常模式下,使用工具栏激活后,使用代码:syntax off,它可以工作,而在这样做之后尝试做:syntax on不起作用!!

我在/usr/share/vim/vim71/ 和主文件夹中都有语法文件(在主文件夹中只有一个 python 语法模块)。我也运行了sudo aptitude install vim,除了vim-gtk,没有什么可下载的,因为我害怕某种不兼容。

发生了什么事?我错过了什么吗?

【问题讨论】:

  • 我想过,但最后,这个问题可能出现在每个三部曲网站中,因为它可能是我的 Linux 安装中的包问题(在 serverfault 中更好)或 programming 语法我弄错了(stackoverflow)。由于这是一个与编程本身相关的配置,我认为最好在 SO 中发布。

标签: syntax vim


【解决方案1】:

让我们把它分解成一些简单的东西。与其尝试调试多个可能的故障点(sourceruntimepath),不如看看最简单的情况是否有效。然后,重新添加每一部分,直到出现中断。

首先,确保您的~/.vimrc/~/.vim/.vimrc 已签入版本控制或保存副本。此外,除非您出于某种原因修改了原始 python 语法模块,否则不需要将其放在您的 ~/.vim 目录中。

现在,删除两个 .vimrc 文件的内容,只将以下两行添加到您的 ~/.vimrc 文件中。

filetype plugin on
syntax on

现在,使用您尝试语法高亮的文件打开一个新的 vim 会话。它有效吗?如果正确检测到文件类型,我希望这在大多数情况下都能正常工作。

:set filetype?

如果语法突出显示不起作用并且filetype 是正确的,那么除了您的.vimrc 文件之外,还有更多错误。您也可以尝试删除 ~/.vim 目录,看看是否是问题所在。

我不确定您为什么要设置 runtimepath,但是当我检查我的时,默认情况下它会将 ~/.vim 显示为第一个条目(并且除了 VIMRUNTIME 之外还有更多目录),这样线不应该是必要的。

:set runtimepath?

另外,VIMRUNTIME 拼写错误。我希望这是你的问题。如果我从上面使用你的set runtimepath,我也会失去语法高亮。

希望这会有所帮助。

【讨论】:

  • 这是拼写错误。我真的很惭愧……至少我知道你真的阅读了我所有的配置来帮助我。 :) 错误仍然很奇怪,因为所有其他配置都在工作,除了语法。并感谢您对简单案例进行测试的建议。
【解决方案2】:

Ubuntu 默认安装不会安装所有的 vim。

sudo apt-get install vim

【讨论】:

    【解决方案3】:

    尝试在 .vimrc 中在 syntax on 之前添加 filetype plugin on

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-23
      • 1970-01-01
      • 1970-01-01
      • 2017-07-12
      • 1970-01-01
      • 1970-01-01
      • 2017-03-05
      • 1970-01-01
      相关资源
      最近更新 更多