原文网址:http://www.crifan.com/source_insight_support_highlight_for_python_ruby_arm_batch_ppc_sql_tcl_delphi/

用Souce Insight建立了一个项目,添加了一堆python的*.py文件后,发现当前不支持Python的语法高亮:

所以想要使得SI支持Python文件的语法高亮。

【解决过程】

1.之前就折腾过,给si添加对于汇编文件语法高亮的支持,知道了就是去找到对应的配置文件,添加进来,然后再添加对应的后缀支持即可。

然后找了下,也找到了python的对应的配置文件。然后就是折腾,如何添加支持了。

2.打开SI的Option->Preferences:

然后切换到Language界面:

可以看到,当前已经支持了很多种语言的语法高亮了:

但是很明显,其中没有Python语言的支持。

所以,先去SI的官网中语言支持包的页面:

http://www.sourceinsight.com/public/languages/

中找到对应的Python语言的语法高亮的配置文件:

Python.CLF

下载下来后,就可以点击Import,然后选择找到刚下载的Python.CLF文件:

点击“打开”,就可以导入了,然后就可以看到导入后的“Python Language”:

再点击“Doc Types”:

出现了Document Options对话框:

然后再点击Add Type,然后在跳出的“Add New Document Type”的“Document Type Name”中输入你所想要设置的名字,此处是Python的文件,所以我此处写了个“Python File”,你可以根据自己需要写相应的名字:

然后再去添加对应的File Filter:

此处想要过滤后缀名为py的文件,所以写成:

*.py

此处如果还想要支持更多类型的后缀的话,则可以通过分号分隔开,添加多种后缀的支持,

比如还想要支持后缀为python的,则写成:

*.py;*.python

另外,记得还要选上:

Include when adding to projects

这样,当新建项目的时候,自动就可以此处新加的python类型文件了。

然后再将此新建的后缀为*.py的python文件类型,和对应的解析器关联起来:

在Parsing部分的Language,选择为刚才刚导入的Python:

所有的配置完毕后,应该是这样的:

然后就可以点击Close去关闭,即完成此配置了。

这样,SourceInsight遇到*.py的Python文件时,就会使用此配置去解析,然后就可以正常的让Python文件实现语法高亮了:

对于添加别的类型的代码的语法高亮的支持,则也是这样的方法,

先找到对应的xxx.CLF文件,然后导入,之后再去添加对应的Document Type,加上对应的Filter,

再将两者关联起来,即可。

对应的目前其他的类型的文件,官方已经支持了很多了:

不同的语言 对应的Source Insight的语法高亮(CLF)配置文件
asm 390 Asm.CLF
68K 68000.CLF
ARM汇编 ARM.CLF
windows批处理文件/Bat文件/Batch文件 CMD Batch.CLF
Delphi Delphi.CLFdelphi.key
Lua Lua.CLF
微软汇编文件 MASM.CLF
PHP PHP Script.CLF
PIC PIC.CLF
PowerPC PPC.CLF
Python文件 Python.CLF
Ruby Ruby.CLF
SQL SQL.CLF
TCL TCL.CLF
verilog verilog.CLF

【转】让Souce Insight支持多种语言的语法高亮:Python,Ruby,ARM汇编,windows脚本文件(bat/batch),PPC,SQL,TCL,Delphi等的更多相关文章

  1. Linux系统里让vim支持markdown格式的语法高亮

    Markdown是深受程序员喜爱的一个文件格式. 然而Linux里默认的vim设置,并不支持markdown格式的语法高亮显示. 下面就来介绍如何设置使得markdown格式的文件在vim里也能享有语 ...

  2. C# 支持多种语言

    通过Resource文件建立本地化. net 资源文件名(这里是Resource1.resx)由根名称(即Resource1),本地语言名称(默认情况下还没有)及扩展名组成,在读取资源时,资源管理器会 ...

  3. 宣布正式发布 Windows Azure Notification Hub,新增 SQL Server AlwaysOn 可用性组侦听器支持

    今天,我们非常高兴地宣布,针对使用 Windows Azure 的移动和企业开发人员推出一些新功能.这些新功能可以减少构建移动应用程序的开发时间和成本,并能帮助企业开发人员实现高可用性和全球业务连续性 ...

  4. Netflix 开源 Polynote:对标 Jupyter,一个笔记本运行多种语言

    谈到数据科学领域的开发工具,Jupyter 无疑是非常知名的一种.它具有灵活高效的特点,非常适合进行开发.调试.分享和教学.近日,Netflix(奈飞)居然也玩起了跨界,他们开源了一个名为 Polyn ...

  5. django支持多语言

    Django支持多语言切换 下面介绍下如何使网站或APP国际化,让其支持多种语言 . 官网 效果 1.创建locale文件夹 先在项目根目录下创建一个名为locale的文件夹,这个文件夹是用来存放dj ...

  6. 让你的.NET程序支持多语言

    辛辛苦苦做出来的软件,我们当然希望能让更多的人用,支持多语言是必须的.下面我将以Asp.net Web Form为例来介绍如何支持多语言.其他程序比如windows程序,过程都是大同小异的. 大概分以 ...

  7. 【Android Developers Training】 11. 支持不同语言

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  8. Python与C语言基础对比(Python快速入门)

    代码较长,建议使用电脑阅读本文. 10分钟入门Python 本文中使用的是Python3 如果你曾经学过C语言,阅读此文,相信你能迅速发现这两种语言的异同,达到快速入门的目的.下面将开始介绍它们的异同 ...

  9. Cassandra在CQL语言层面支持多种数据类型

    Cassandra在CQL语言层面支持多种数据类型. CQL类型 对应Java类型 描述 ascii String ascii字符串 bigint long 64位整数 blob ByteBuffer ...

随机推荐

  1. http://www.cnblogs.com/TankXiao/p/4018219.html

    http://www.cnblogs.com/TankXiao/p/4018219.html

  2. fuel openstack 在 VirtualBox 上的部署

    搞了两天,终于搞好了.说说过程: 一开始用的6.1版本的Fuel.iso,按照国内外的教程装了几遍,但是网路验证始终不能通过.自己又不是很懂网络.后来在网上看到说6.1版的需要fuel-master连 ...

  3. unity 脚本(自定义组件)的事件触发关系

  4. MAVEN ERROR: unable to find valid certification path to requested target 解决办法

    第一次使用MAVEN编译项目,出现如下错误 解决办法:Maven的setting.xml中添加如下代码 <mirrors> <mirror> <id>Central ...

  5. 307. Range Sum Query - Mutable

    题目: Given an integer array nums, find the sum of the elements between indices i and j (i ≤ j), inclu ...

  6. Sql server cast(as nvarchar) 默认长度问题

    Sql server 在我的SQL语句中:sql=".........cast(ziduan as nvarchar) ..............." 这样之后,ziduan被转 ...

  7. 基于Theano的DNN框架Blocks使用简要总结

    Blocks官方代码地址:https://github.com/mila-udem/blocks Blocks是加拿大Montreal大学Bengio实验室牵头开发的基于Python的神经网络模型框架 ...

  8. C#添加日志

    /// <summary> /// 记录日志 /// </summary> /// <param name="msg"></param&g ...

  9. 《Java编程那点事儿》读书笔记(五)——System,Integer,Calendar,Random和容器

    System 1)arraycopy int[] a = {1.2.3.4}; int[] b = new int[5]; System.arraycopy(a,1,b,3,2); //把数组a中从下 ...

  10. C# 字符流打印类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...