找出Vim中加载的文件类型

oyt4ldly  于 2023-03-02  发布在  其他
关注(0)|答案(5)|浏览(139)

只要我在Vim中加载了任何文件,它就会尝试检测该文件并在可能的情况下用颜色突出显示它。
我想知道一个Vim命令,它会告诉我哪个ftplugin或filetype plugin / filetype Vim考虑高亮显示文件。

8zzbczxx

8zzbczxx2#

    • &filetype用于脚本用法**

最小示例:

echo &filetype

更实际的用法示例:

if &filetype ==# 'c' || &filetype ==# 'cpp'
  setlocal noexpandtab
endif

&语法适用于所有选项:https://vi.stackexchange.com/questions/2569/how-do-i-check-the-value-of-a-vim-option-in-vimscript

ifmq2ha2

ifmq2ha23#

也可以使用%y%Y项将文件类型添加到状态行或窗口标题。请参见

:help 'statusline'
:help 'titlestring'
c7rzv4ha

c7rzv4ha4#

当我想找到文件类型时,是因为我正在修改一个ipython脚本,上面的问答工作得很好,看到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
9ceoxa92

9ceoxa925#

既然你一开始就问/搜索这个问题,我假设你这样做是因为你的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文件夹
这才是大团圆结局。

相关问题