2016-01-22 49 views
1

我是vim的初學者,所以我不知道vim是如何工作的。在這裏,我遇到了一個問題。我無法在vim中使用語法,它僅適用於某些文檔,如 vimrc或帶有.vim的文檔。vim語法根本不起作用

如果我在文檔語法後面添加.vim運行良好,但是另一個擴展名 則語法不起作用。我試圖通過修改/etc/vim/vimrc解決它:

add 
syntax on 
set background=dark 
set hlsearch 
set number 

每次我打開一個新的文件,我可以看到在每一行和深色背景的數量,只有語法不起作用。

也許這對你們來說太簡單了,但我找不到解決這個問題的方法。有人能告訴我我做錯了什麼嗎?

順便說一下,我使用Kali Linux(x64)。

+1

通常,最好修改/添加'〜/ .vimrc'。修改'/ etc/vim/vimrc'對我來說似乎是個壞主意。添加這個也試試'filetype縮進上' – dlmeetei

回答

2

vim試圖自動確定文件類型。如果它檢測到一個已知類型,它將使用語法高亮顯示。如果它沒有檢測到類型,它不知道使用哪種語法(例如Java/vimrc/apache-config)。

通過使用命令:set filetype,可以隨時檢查哪個文件類型vim認爲當前文檔具有。如果變量爲空,vim現在可以知道這是哪種類型的文件,因此不能使用語法高亮顯示。

有幾種可能性來「幫助」vim確定文件類型。

  1. 最簡單的就是用正確的文件擴展名:如果,例如,你打開一個名爲test.html文件,vim知道,你可能會填補HTML代碼文件,從而自動設置filetype變量html
  2. 您也可以用一種方式編寫文件,以便vim知道這是什麼類型的文件。例如,如果文件以#!/bin/bash開頭,則vim知道這是一個bash腳本並將filetype變量設置爲bash
  3. 如果一切都失敗了,您還可以明確告訴vimfiletype。可以將其設置在編輯器中,例如:set filetype=bash,或使用modeline,例如, # vim:filetype=bash

無論文件類型是否被正確識別,vim都需要知道哪些顏色用於哪些單詞。這些在「vim語法文件」中指定。在Debian上,這些位於/usr/share/vim/vim<your-vim-version>/syntax,例如/usr/share/vim/vim74/syntax。我不知道卡利的位置是否相同,但我懷疑它會是相似的。如果你正在編輯的文件類型沒有vim語法文件,vim不能幫你。但是,您可能能夠在線或在其他包中找到語法文件。

+0

謝謝你弗雷德,它幫助我很多 – cyxeL

+0

很高興有幫助。如果答案解決了您的問題,請將其標記爲「已接受」,以便其他人看到此解決方案有效。謝謝! – Fred