`
lantian_123
  • 浏览: 1365320 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

每日一Vim(25)filetype---- 文件类型检测

 
阅读更多

 

每日一Vim(25)filetype---- 文件类型检测


当你用Vim打开某种编程语言的文件时,你会看到关键字,函数名等等都会高亮,下图是两个内容一样,名称不一样的文件,一个是txt,一个是py,明显能看出txt文件显示并不是那么友好。这就和filetype有关系啦。
filetype

执行:filetype可以查看Vim的文件类型检测功能是否已打开,默认你会看到:detection:ON plugin:OFF indent:OFF。下面详细介绍这三个参数的具体含义。

 

detection:默认情况vim会对文件自动检测文件类型,也就是你看到的'detection:ON',同样你可以手动关闭:filetype off。 因此我们看到dection 也是ON,所以Vim会很友好的显示文本, 可以用:set filetype查看当前文件是什么类型了。 类似的如果如上图中file.txt文件的filetype设置为python那么就和普通的python文件一样的显示效果了:set filetype=python

另一种方式就是在文件内容中指定,Vim会从文件的头几行自动扫描文件是否有声明文件的类型的代码,如在文件的行首加入# vim: filetype=python,Java文件变通的做法/* vim: filetype=java */,总之就是把这行当作注释,以致于不影响文件的编译,这样Vim不通过文件名也能检测出文件是什么类型了。

 

plugin:如果plugin状态时ON,那么就会在Vim的运行时环境目录下加载该类型相关的插件。比如为了让Vim更好的支持Python编程,你就需要下载一些Python相关的插件,此时就必须设置plugin为ON插件才会生效,具体设置方法就是:filetype plugin on

 

indent:不同类型文件有不同的方式,比如Python就要求使用4个空格作为缩进,而c使用两个tab作为缩进,那么indent就可以为不同文件类型选择合适的缩进方式了。你可以在Vim的安装目录的indent目录下看到定义了很多缩进相关的脚本。具体设置方法:filetype indent on

 

以上三个参数,可以写成一行filetype plugin indent on设置在_vimrc文件中。

转载请注明出处,谢谢合作!作者---zhijun

 

1
3
分享到:
评论
2 楼 lantian_123 2013-04-18  
yes,h:-)
1 楼 isensen 2013-04-12  
纠错, 介绍 indent时.具体设置方法应该是
:filetype indent on

是不是这样

相关推荐

    VMware-VIM-all-6.7.0-15976714.txt

    VMware-VIM-all-6.7.0-15976714 原版镜像 .................................................................................................................

    VMware-VIM-all-6.5.0-14020092.txt

    vmware vcenter6.5 for windows版本。 VMware-VIM-all-6.5.0-14020092

    vim-powerline-develop

    **vim-powerline-develop** 是一个针对 Vim 编辑器的扩展插件,它属于 Vim 插件中的 **powerline** 家族。Powerline 是一个非常流行的增强型状态栏插件,它为 Vim、Emacs 和其他软件提供了一个美观、信息丰富的状态...

    vim键盘图(vi-vim-cheat-sheet)

    vim键盘图 ....vi-vim-cheat-sheet.gif vi-vim-tutorial-1.gif vi-vim-tutorial-2.gif vi-vim-tutorial-3.gif vi-vim-tutorial-4.gif vi-vim-tutorial-5.gif vi-vim-tutorial-6.gif vi-vim-tutorial-7.gif

    Atom-atom-vim-mode-plus,vim.zip

    Atom-atom-vim-mode-plus是针对Atom文本编辑器的一个扩展插件,主要目的是增强其内置的VIM编辑模式。VIM(Vi Improved)是一种高度可配置的文本编辑器,以其高效的操作方式和丰富的命令集而闻名。在Atom中,VIM模式...

    vim-common-7.4.629-7.el7.x86_64.rpm

    vim-common-7.4.629-7.el7.x86_64.rpm

    vim-tmux-focus-events, 使终端vim和tmux更好地协同工作.zip

    vim-tmux-focus-events, 使终端vim和tmux更好地协同工作 tmux-focus-events.vimFocusGained 和 FocusLost 自动命令事件在终端vim中不工作。 这个插件在使用vim内部Tmux时恢复它们。以下是相关内容:vim fugitive插件...

    vim-for-server, .vimrc, 简单配置服务器,不带插件.zip

    vim-for-server, .vimrc, 简单配置服务器,不带插件 vim-for-servervimrc,简单配置服务器,不带插件。简介这个存储库是 k-vim的简化版本。只删除所有插件,保留基本配置。屏幕截图 安装 。 如果有必要,备份旧的. ...

    vim-atom-dark, 一个由 Atom 黑暗主题默认启发的vim主题.zip

    vim-atom-dark, 一个由 Atom 黑暗主题默认启发的vim主题 vim-atom-dark一个由 Atom 黑暗主题默认启发的vim主题。 在 .vim 文件夹中克隆这个文件或者将 colors/atom-dark.vim 文件放在 colors/ 中。

    VMware-VIMSetup-all-5.5.0-1312299

    根据提供的文件信息,我们可以推断出这份资料与VMware vCenter Infrastructure Manager (VIM) Setup 5.5.0版本有关。尽管描述部分没有提供太多技术细节,但从标题和其他信息中,我们可以提炼出一系列与VMware ...

    VMware-VIM-all-6.7.0-9451876.txt

    VMware vSphere 6.7 百度网盘链接及提取 码

    vim8.0.zip --Linux-CentOS7离线安装VIM及相关依赖包

    vim-8.0.zip gpm-libs-1.20.7-6.el7.i686.rpm ncurses-5.9-14.20130511.el7_4.x86_64.rpm ncurses-base-5.9-14.20130511.el7_4.noarch.rpm ncurses-devel-5.9-14.20130511.el7_4.x86_64.rpm ncurses-libs-5.9-14....

    vim-enhanced-7.4.629-8.el7_9.x86_64.rpm

    官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装

    Vim-handbook-cn-72

    |usr 02.txt| Vim第一步 |usr 03.txt| 移动 |usr 04.txt| 小幅改动 |usr 05.txt| 定制你的Vim |usr 06.txt| 使用语法高亮 |usr 07.txt| 编辑多个文件 |usr 08.txt| 分隔窗口 |usr 09.txt| 使用GUI |usr 10....

    vim-minimal-8.0.1763-16.el8.x86_64.rpm

    官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装

    vim7.4版本rpm

    vim-common-7.4.629-8.el7_9.x86_64.rpm vim-enhanced-7.4.629-8.el7_9.x86_64.rpm vim-filesystem-7.4.629-8.el7_9.x86_64.rpm vim-minimal-7.4.160-5.el7.x86_64.rpm

    vim-jsx-pretty, [Vim script] 对vim的JSX语法非常突出.zip

    vim-jsx-pretty, [Vim script] 对vim的JSX语法非常突出 vim-jsx-pretty演示语法vim-jsx-pretty( 添加彩色配置) vim-jsx-pretty mxw/vim-jsx 自动缩进( 使用 vim-javascript )

    vim-pathogen-master

    `vim-pathogen`是Vim编辑器中一个非常著名的插件管理工具,由Toby Hedegeous开发。它的主要作用是简化Vim插件的安装、管理和更新过程,使得用户能够更方便地定制自己的Vim环境。在本文中,我们将深入探讨`vim-...

    vim-7.3-22.1.3.x86_64.rpm

    vim7.3的rpm包 需要先安装vim-base-7.3-22.1.3.x86_64.rpm 我会上传的

    VMware-VIMSetup-all-5.1.0-880471.iso 下载地址

    VMware vSphere 5.1 是一款强大的云计算基础架构平台,它由多个组件构成,包括vCenter Server、ESXi ...通过下载"VMware-VIMSetup-all-5.1.0-880471.iso"这个ISO文件,用户可以安装和体验这个强大的虚拟化平台。

Global site tag (gtag.js) - Google Analytics