2010-05-06 28 views
162

只要我在vim中加載任何文件,它就會嘗試檢測文件並在可能的情況下突出顯示它。查找在vim中加載了哪種文件類型

我想知道一個vim命令,它會告訴我哪個ftplugin或Filetype插件/文件類型是vim考慮突出顯示該文件。

+0

不會自動執行該操作嗎? – ereOn 2010-05-06 07:56:19

+0

如果你在〜/ .vim/ftplugin /中加入了一個vimscript,當加載了匹配的文件類型的文件時,它將獲得該vimscript。所以把'setlocal cursorline'放在'〜/ .vim/ftplugin/python.vim'中,你將在python文件中有當前的行高亮。見':help ftplugin'和':help after' – idbrii 2011-06-12 16:24:53

回答

265

:set filetype?

+26

您可以保存幾個按鍵,並使用':set ft?' – 2011-02-22 16:00:23

+27

':se ft?' - 我贏了。 ;) – sjas 2012-07-28 10:57:53

+19

':se ft'?我贏了! – 2013-09-16 14:01:48

14

您還可以將文件類型添加到您的狀態欄或使用%y%Y項目窗口標題。請參閱

:help 'statusline' 
:help 'titlestring' 
3

當我想查找文件類型時,這是因爲我的.ipy擴展名修改了ipython腳本。上面的Q & A很好地看到ipython擴展沒有被當作python處理(有些明顯)。因此我想強制設置文件類型,並且我從ever helfpul vim站點找到了它。 http://vim.wikia.com/wiki/Forcing_Syntax_Coloring_for_files_with_odd_extensions

添加下面你的.vimrc工作

au BufRead,BufNewFile *.ipy set filetype=python 
0

既然你問/放在第一位搜索這個問題,我認爲你這樣做,因爲你的vim不知何故沒有突出你的正確語法自動地,並且你正在設法弄清楚爲什麼,以及如何解決它。

所選答案中的命令:set filetype?基本上要求vim「嘿,你認爲當前文件是什麼類型」。如果vim沒有顯示正確的顏色/突出顯示,很可能它的答案是在控制檯底部顯示這個filetype=,這意味着vim不知道文件類型。這只是你追求的一半。

從邏輯上講,您的下一步將告訴vim「只需使用(例如)ps1語法突出顯示」。您通過輸入:set filetype=ps1來實現,現在vim將使用ps1樣式(假設您已經是download the proper powershell syntax file and put it into your ~/.vim/syntax)突出顯示當前文件。

此時,您可能需要從現在開始自動語法高亮顯示。解決方法是將相應的檢測腳本放入〜/ .vim/ftdetect文件夾中。例如,如果要突出顯示所有PowerShell腳本.ps1,.psm1等,請將this file放入您的〜/ .vim/ftdetect

現在,這是一個美滿的結局。

相關問題