ABAP Development Tools的前端是Java,根本识别不了ABAP。那么在ADT里的ABAP语法高亮是如何实现的?

第一次打开一个report时,显示在ADT里的代码是没有任何语法高亮显示的,

ABAP Development Tools的语法高亮实现原理-LMLPHP

此时有一个HTTP请求发到ABAP后台:

/sap/bc/adt/abapsource/parsers/rnd/grammar?head=true

请求一个pad文件:

ABAP Development Tools的语法高亮实现原理-LMLPHP

这个pad文件的作用,参考Jerry的博客:

How ABAP syntax highlight is implemented in “WebIDE” launched via browser

Pad文件加载完毕之后,被ADT渲染,就得到了语法高亮的效果:

ABAP Development Tools的语法高亮实现原理-LMLPHP

要获取更多Jerry的原创文章,请关注公众号"汪子熙":

ABAP Development Tools的语法高亮实现原理-LMLPHP

05-23 18:55