原文网址: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.CLF,delphi.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. (2)在vs2010上配置opengl

    参考自http://www.yakergong.net/nehe/ 在Visual Studio 2003 中创建基于Nehe SDK的应用程序分为以下几个步骤: 创建一个空白的工程文件 包含Nehe ...

  2. JavaScript. The core.

    Read this article in: Japanese, German (version 2), Arabic, Russian, French, Chinese. An object A pr ...

  3. JS之数组

    1.数组的定义: (1)字面量:  var arr = [1, 2, 3];  (2) new:   var arr = new Array(1, 2, 3);(using new and don't ...

  4. 连接池和 "Timeout expired"异常【转】

    异常信息: MySql.Data.MySqlClient.MySqlException (0x80004005): error connecting: Timeout expired. The tim ...

  5. lintcode:将二叉树拆成链表

    题目 将一棵二叉树按照前序遍历拆解成为一个假链表.所谓的假链表是说,用二叉树的 right 指针,来表示链表中的 next 指针. 注意事项 不要忘记将左儿子标记为 null,否则你可能会得到空间溢出 ...

  6. Jquery DataTables warning : Requested unknown from the data source for row 0

    昨天在做 Jquery DataTables 的时候,遇到的一个问题,我使用MVC,在tables上加入了一个actionlink的href.但是在运行起来的时候,报错: DataTables war ...

  7. Spring框架学习之第1节

    spring快速入门 ①   spring是什么? Struts是web框架(jsp/action/actionform) hibernate是orm框架(对象和关系映射框架),处于持久层 sprin ...

  8. JavaWeb项目开发案例精粹-第6章报价管理系统-05Action层

    0. <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE struts PUBLIC &quo ...

  9. React-组件嵌套-子组件通过委托向父组件传值

    一.简述 父组件嵌套子组件,父组件的处理函数通过属性的方式赋值组子组件( <GenderSelect handleSelect={this.handleSelect}></Gende ...

  10. JLink and JTAG等接口简介

    1.JTAG JTAG用的计算机的并口,JTAG也是一种国际标准测试协议(IEEE 1149.1兼容),主要用于芯片内部测试.现在多数的高级器件都支持JTAG协议,如DSP.FPGA器件等. 标准的J ...