ABB RAPID 在 Notepad++ 中语法高亮的实现

ABB RAPID 在 Notepad++ 中语法高亮的实现

分类: Misc 145人阅读 评论(0) 收藏 举报
notepad++

Notepad++ 内置了一个称为 UDL2.0  (User Defined Language) 的引擎,来实现用户自定义语法高亮,使用它,可以定制自己的代码语言。

相关的参考:

http://udl20.weebly.com/


ABB Rapid 语法类似于 Pascal,Ultraedit 文本编辑器已经有语法高亮定义。因此,可以在参考并引用其中的关键字等信息。

Ultraedit 的语言定义文件:http://www.ultraedit.com/files/wf/abb-s4.uew


之所以要使用 Notepad++ 而不是使用现成的 Ultraedit 是因为后者是收费软件,完全可以用前者来代替。


可导入的 ABB RAPID Notepad++ UDL 定义文件:

[html] view plaincopy
  1. <NotepadPlus>  
  2.     <UserLang name="RAPID_MOSTONE" ext="mod sys prg" udlVersion="2.1">  
  3.         <Settings>  
  4.             <Global caseIgnored="yes" allowFoldOfComments="yes" foldCompact="no" forcePureLC="0" decimalSeparator="0" />  
  5.             <Prefix Keywords1="no" Keywords2="no" Keywords3="no" Keywords4="no" Keywords5="no" Keywords6="no" Keywords7="no" Keywords8="no" />  
  6.         </Settings>  
  7.         <KeywordLists>  
  8.             <Keywords name="Comments">00! 01 02 03%%% 04%%%</Keywords>  
  9.             <Keywords name="Numbers, prefix1"></Keywords>  
  10.             <Keywords name="Numbers, prefix2"></Keywords>  
  11.             <Keywords name="Numbers, extras1"></Keywords>  
  12.             <Keywords name="Numbers, extras2"></Keywords>  
  13.             <Keywords name="Numbers, suffix1"></Keywords>  
  14.             <Keywords name="Numbers, suffix2"></Keywords>  
  15.             <Keywords name="Numbers, range"></Keywords>  
  16.             <Keywords name="Operators1">, : [ ] + - * / < = > \ ;</Keywords>  
  17.             <Keywords name="Operators2">DIV MOD   
  18. NOT AND OR XOR</Keywords>  
  19.             <Keywords name="Folders in code1, open">MODULE THEN PROC WHILE FOR TEST FUNC RECORD TRAP   
  20. </Keywords>  
  21.             <Keywords name="Folders in code1, middle">ELSE ELSEIF CASE DEFAULT</Keywords>  
  22.             <Keywords name="Folders in code1, close">ENDIF ENDFOR ENDTRAP ENDWHILE ENDTEST ENDPROC ENDMODULE ENDFUNC ENDRECORD</Keywords>  
  23.             <Keywords name="Folders in code2, open"></Keywords>  
  24.             <Keywords name="Folders in code2, middle"></Keywords>  
  25.             <Keywords name="Folders in code2, close"></Keywords>  
  26.             <Keywords name="Folders in comment, open">regin</Keywords>  
  27.             <Keywords name="Folders in comment, middle"></Keywords>  
  28.             <Keywords name="Folders in comment, close">endregin</Keywords>  
  29.             <Keywords name="Keywords1">BACKWARD  
  30. CONST  
  31. FROM  
  32. INOUT  
  33. NOSTEPIN NOVIEW  
  34. PERS  
  35. RAISE READONLY RETRY   
  36. STEP SYSMODULE  
  37. IF DO TO TRYNEXT  
  38. VAR VIEWONLY  
  39. WITH</Keywords>  
  40.             <Keywords name="Keywords2">AccSet ActUnit Add  
  41. CallByVar Clear ClkReset ClkStart ClkStop Close ConfJ ConfL CONNECT CorrClear CorrCon CorrDiscon CorrWrite  
  42. DeactUnit Decr  
  43. EoffsOff EOffsOn EoffsSet ERRNO ErrWrite   
  44. GripLoad  
  45. IDelete Idisable IEnable Incr IndAMove IndCMove IndDMove IndReset IndRMove  
  46. InvertDO IODisable IOEnable IsignalDI ISignalDO Isleep ITimer IVarValue IWatch  
  47. Load  
  48. MoveAbsJ MoveC MoveJ MoveL  
  49. Open  
  50. PathResol PdispOff PDispOn PDispSet PulseDO  
  51. Reset RestoPath Rewind  
  52. SearchC SearchL Set SetAO SetDO SetGO SingArea SoftAct SoftDeact StartMove StopMove StorePath  
  53. TPErase TPReadFK TPReadNum TPShow TPWrite TriggC TriggEquip TriggInt TriggIO TriggJ TriggL TuneReset TuneServo  
  54. UnLoad  
  55. VelSet  
  56. WaitDI WaitDO WaitTime WaitUntil WriteBin WriteStrBin WZBoxDef WZCylDef WZDisable WZDOSet WZEnable WZFree WZLimSup WZSphDef</Keywords>  
  57.             <Keywords name="Keywords3">bool  
  58. clock confdata corrdescr  
  59. dionum  
  60. errnum extjoint  
  61. intnum iodev  
  62. jointtarget  
  63. loaddata local  
  64. mecunit motsetdata  
  65. num  
  66. o_jointtarget o_robtarget orient  
  67. pos pose progdisp  
  68. robjoint robtarget  
  69. shapedata signalai signalao signaldi signaldo signalgi signalgo speeddata string symnum  
  70. tooldata tpnum triggdata tunetype  
  71. wobjdata wzstationary wztemporary  
  72. zonedata  
  73. seamdata weavedata welddata</Keywords>  
  74.             <Keywords name="Keywords4">Abs ACos AOutput ArgName ASin ATan ATan2  
  75. ByteToStr  
  76. CDate CjointT ClkRead CorrRead Cos CPos CRobT CTime CTool CWObj  
  77. DefDFrame DefFrame Dim DOutput  
  78. EulerZYX Exp  
  79. GetTime Goutput  
  80. IndInpos IndSpeed IsPers IsVar  
  81. MirPos  
  82. NumToStr  
  83. Offs OpMode OrientZYX ORobT  
  84. PoseInv PoseMult PoseVect Pow Present  
  85. ReadBin ReadMotor ReadNum ReadStr RelTool Round RunMode  
  86. Sin Sqrt StrFind StrLen StrMap StrMatch StrMemb StrOrder StrPart StrToByte StrToVal  
  87. Tan TestDI Trunc  
  88. ValToStr</Keywords>  
  89.             <Keywords name="Keywords5">AbsPosVergleich  
  90. CheckHomePos CheckParity  
  91. EndSync  
  92. FahreZuPos  
  93. High  
  94. Low  
  95. Meldung mv  
  96. PosVergleich ProgInfo  
  97. RobSync  
  98. SetParity SMoveJ SMoveL SyncEvent  
  99. WaitBreakDI WaitMsgDI WaitTPBreakDI</Keywords>  
  100.             <Keywords name="Keywords6">TRUE FALSE</Keywords>  
  101.             <Keywords name="Keywords7">ERROR GOTO RETURN  
  102. Stop Break  
  103. EXIT ExitCycle</Keywords>  
  104.             <Keywords name="Keywords8">ArcC ArcL ArcLStart ArcLEnd ArcCStart ArcCEnd</Keywords>  
  105.             <Keywords name="Delimiters">00" 01 02" 03( 04 05) 06{ 07 08} 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23</Keywords>  
  106.         </KeywordLists>  
  107.         <Styles>  
  108.             <WordsStyle name="DEFAULT" fgColor="000000" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  109.             <WordsStyle name="COMMENTS" fgColor="008000" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  110.             <WordsStyle name="LINE COMMENTS" fgColor="008000" bgColor="FFFFFF" fontName="Courier New" fontStyle="2" nesting="0" />  
  111.             <WordsStyle name="NUMBERS" fgColor="800080" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  112.             <WordsStyle name="KEYWORDS1" fgColor="0000FF" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  113.             <WordsStyle name="KEYWORDS2" fgColor="400080" bgColor="FFFFFF" fontName="Courier New" fontStyle="1" nesting="0" />  
  114.             <WordsStyle name="KEYWORDS3" fgColor="FF00FF" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  115.             <WordsStyle name="KEYWORDS4" fgColor="000080" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  116.             <WordsStyle name="KEYWORDS5" fgColor="0000A0" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />  
  117.             <WordsStyle name="KEYWORDS6" fgColor="0000A0" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />  
  118.             <WordsStyle name="KEYWORDS7" fgColor="FF0000" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />  
  119.             <WordsStyle name="KEYWORDS8" fgColor="0000A0" bgColor="FFFFFF" fontName="" fontStyle="1" nesting="0" />  
  120.             <WordsStyle name="OPERATORS" fgColor="006000" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  121.             <WordsStyle name="FOLDER IN CODE1" fgColor="0000FF" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  122.             <WordsStyle name="FOLDER IN CODE2" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />  
  123.             <WordsStyle name="FOLDER IN COMMENT" fgColor="408080" bgColor="FFFF80" fontName="" fontStyle="3" nesting="0" />  
  124.             <WordsStyle name="DELIMITERS1" fgColor="0080C0" bgColor="FFFFFF" fontName="Courier New" fontStyle="0" nesting="0" />  
  125.             <WordsStyle name="DELIMITERS2" fgColor="004000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="17038336" />  
  126.             <WordsStyle name="DELIMITERS3" fgColor="FF00FF" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />  
  127.             <WordsStyle name="DELIMITERS4" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />  
  128.             <WordsStyle name="DELIMITERS5" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />  
  129.             <WordsStyle name="DELIMITERS6" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />  
  130.             <WordsStyle name="DELIMITERS7" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />  
  131.             <WordsStyle name="DELIMITERS8" fgColor="000000" bgColor="FFFFFF" fontName="" fontStyle="0" nesting="0" />  
  132.         </Styles>  
  133.     </UserLang>  
  134. </NotepadPlus>  



图:在 Notepad++ 中自定义语言



语法高亮效果:



添加了 regin/endregin 注释折叠

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/255955.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MyEclipse运行时自动保存

今天第一次用MyEclipse&#xff0c;我发现我的代码明明修改了&#xff0c;但运行结果发现总是修改前的代码结果。后来发现&#xff0c;是代码修改后必须保存&#xff0c;再点运行。这个功能明显不合适&#xff0c;所以需要更改MyEclipse的配置。红框是修改后的结果。 转载于:ht…

PLSQL中INDEX BY TABLE 的 prior 和 next 操作学习

开始 --INDEX BY Table SET SERVEROUTPUT ON;DECLARETYPE enm_tab_type IS TABLE OFemp.ename%TYPEINDEX BY BINARY_INTEGER;enm_table enm_tab_type; BEGINenm_table(1):1001;enm_table(2):1002;enm_table(3):1003;enm_table(4):1004;enm_table(6):1006;dbms_output.put_line(…

【深度学习torch——error】——“xxx.pt is a zip archive(did you mean to use torch.jit.load()?)

这个问题是在进行权重文件加载进行预测的时候发生的&#xff0c;原因其实就是torch版本不对 我是用的工作站训练使用的是torch1.7.0&#xff0c;然后用自己的电脑进行预测&#xff0c;就报错了&#xff0c;原因就是自己的电脑是torch1.2.0版本的 因为在1.6版本以上的模型改变…

如何写一个bootloader

声明&#xff1a;本文为学习Codeproject文章的个人总结性文章&#xff0c; 原文&#xff1a;http://www.codeproject.com/Articles/664165/Writing-a-boot-loader-in-Assembly-and-C-Part 本人开发环境&#xff1a; 操作系统&#xff1a;Ubuntu 32位&#xff08;64位的会有push…

定时执行某段程序

有时候我们需要每天 定时的 自动 去执行某段程序&#xff0c;那么这个功能如何实现呢&#xff1f; 经过百度&#xff0c;定时器就可以实现&#xff0c;总结如下&#xff1a; 我用控制台写了一个程序&#xff0c;用来在指定时间内 打印 “我执行了” 上面就是程序的运行结构&…

浅谈PROFINET IO通信的实时性

PROFINET由PROFIBUS国际组织&#xff08;PROFIBUS International&#xff0c;PI&#xff09;推出&#xff0c;是新一代基于工业以太网技术的自动化总线标准。作为一项战略性的技术创新&#xff0c;PROFINET为自动化通信领域提 供了一个完整的网络解决方案&#xff0c;囊括了诸如…

今日头条核心技术“个性推荐算法”揭秘

今日头条核心技术“个性推荐算法”揭秘 最近面试华兴资本&#xff0c; 他们比较关注今日头条算法的实现&#xff0c; 今天特转载网上 今日头条算法解密【IT168 评论】互联网给用户带来了大量的信息&#xff0c;满足了用户在信息时代对信息的需求&#xff0c;也使得用户在面对大…

PROFINET及其同步实时通讯分析

1 概述 PROFINET实时以太网是由Profibus International&#xff08;PI&#xff09;组织提出的基于以太网的自动化标准。从2004年4月开 始&#xff0c;PI与Interbus Club总线俱乐部联手&#xff0c;负责合作开发与制定标准。PROFINET构成从I/O级直至协调治理级的基于组件的分…

【剑指offer15.二进制中1的个数】——位操作(左移右移等)

目录 二进制的表示 二进制的位操作 应用&#xff1a; 剑指offer15.统计二进制中1的个数&#xff08;多种方法&#xff0c;位右移操作、与操作等&#xff09; 转自&#xff1a;https://www.jianshu.com/p/3a31065a8e58 红色为自己添加 我们都知道在计算机中所有的信息最终都…

java 异常处理机制(java 编程思想)

一、概念  “异常”这个词有“我对此感到意外”的意思。问题出现了&#xff0c;你也许并不清楚该如何处理&#xff0c;但你的确知道不应该置之不理&#xff1b;你要停下来&#xff0c;看看是不是有别人或在别的地方&#xff0c;能够处理这个问题。只是在当前的环境中还没有足够…

怎样在CentOS 7.0上安装和配置VNC服务器

这是一个关于怎样在你的 CentOS 7 上安装配置 VNC 服务的教程。当然这个教程也适合 RHEL 7 。在这个教程里&#xff0c;我们将学习什么是 VNC 以及怎样在 CentOS 7 上安装配置 VNC 服务器 。 我们都知道 这是一个关于怎样在你的 CentOS 7 上安装配置 VNC 服务的教程。当然这个教…

Spring Cloud构建微服务架构:消息驱动的微服务(入门)【Dalston版】

2019独角兽企业重金招聘Python工程师标准>>> 之前在写Spring Boot基础教程的时候写过一篇《Spring Boot中使用RabbitMQ》。在该文中&#xff0c;我们通过简单的配置和注解就能实现向RabbitMQ中生产和消费消息。实际上我们使用的对RabbitMQ的starter就是通过Spring C…

20145225 《信息安全系统设计基础》第10周学习总结

cp1.c 进行复制文件的操作&#xff0c;需要有源文件和目的文件&#xff0c;第一次命令没有加入所以没有正常完成复制文件的操作fileinfo.c 用来实现显示文件信息。先判断命令是否有操作数&#xff0c;有的话才能继续进行下去&#xff0c;如果没有报错就打印出来相关文件信息&am…

【深度学习】——模型评估指标MAP计算实例计算

目录 一、知识储备 1、IOU——交集面积与并集面积之比 2、混淆矩阵&#xff08;TP、FP、FN、TN&#xff09; 问题1&#xff1a;上面的TP等具体是如何计算得到的&#xff1f; 3、精度precision&召回率recall 二、ap计算实战 1、计算流程 1&#xff09;准备数据&#xf…

hdu5489 Removed Interval dp+线段树优化

现在看这题居然直接秒了。。。去年看的时候还以为神题。。 设以第i项为结尾的lis前缀为f[i]&#xff0c;以第j项为结尾的lis后缀为g[i]&#xff0c;如果求出f[i]和g[j]&#xff0c;然后枚举i&#xff0c;快速找到最大的满足a[j]>a[i]的g[j]就可以了。注意到如果将f[i]从后往…

NoSQL分类及ehcache memcache redis 三大缓存的对比

NoSQL分类 由于NoSQL中没有像传统数据库那样定义数据的组织方式为关系型的&#xff0c;所以只要内部的数据组织采用了非关系型的方式&#xff0c;就可以称之为NoSQL数据库。目前&#xff0c;可以将众多的NoSQL数据库按照内部的数据组织形式进行如下分类&#xff1a; Key/Value的…

乐视云计算基于OpenStack的IaaS实践

本文作者岳龙广&#xff0c;现在就职于乐视云计算有限公司&#xff0c;负责IaaS部门的工作。 从开始工作就混在开源世界里&#xff0c;在虚拟化方面做过CloudStack/Ovirt开发&#xff0c;现在是做以OpenStack为基础的乐视云平台。所以对虚拟化情有独钟&#xff0c;也对虚拟化/云…

【深度学习】——如何提高map值

目录 代码获取 map原理 map提高技巧 技巧总结&#xff1a; 实战&#xff1a; 1、效果不佳map55.55% 1&#xff09;单独调整get_dr_txt.py中的self.iou 0.3 2&#xff09;单独调整get_map,py中的minoverlap: 3)同时调整minoverlap和self.iou 本文是在faster_rcnn模型的…

数据库水平切分的实现原理解析——分库,分表,主从,集群,负载均衡器(转)...

第1章 引言 随着互联网应用的广泛普及&#xff0c;海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用&#xff0c;每天几十亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。通过数据切分来提高网站性能&#xff0c;横…

【深度学习】——纠错error: Unable to find vcvarsall.bat:关于安装pycocotools

1、安装包下载 大佬改写支持 Windows 的 COCO 地址&#xff1a;https://github.com/philferriere/cocoapi 下载后如下&#xff1a; 进入pythonAPI 先后运行&#xff1a; python setup.py build_ext --inplacepython setup.py build_ext install 出现以下标志时&#xff0c…