(此文仅对同时喜爱EmEditor与Python的朋友有帮助)

  在经历一段不堪回首的艰难探索后,终于成功地在EmEditor中使用Python作为宏脚本语言,运行出第一个“hello"

  (特别注意:不是让Python仅仅作为一种外部工具,也不是建立Python的开发环境,而是让Python和EmEditor中默认的vbscript、javacript平起平坐,能够直接控制EmEditor的窗口各种元素)

  这是一个复杂的过程,可能需要几篇博文才说得清,我尽量简单一点。

  先介绍下本文所涉及的工作环境:WinXP sp2(WSH 5.7),EmEditor10.0.5(那啥版,你懂的),ActivePython2.6.6.18

  (一)搞清楚EmEditor到底需要什么样的Python?

  是不是随便装个Python,EmEditor就可以用它编写宏了??很遗憾,不是。

  在EmEditor语焉不详的在线帮助文档中,作者明确表示EmEditor可以使用vbs与js之外的Perl、Python、Ruby等作为宏脚本语言,但同时又明确表示对vbs和js之外的脚本语言不提供技术支持(小日本真变态~~),作者只是给了一个隐晦的提示——”ActiveScript“

  娘的,转了一大圈,我才明白,问题就出在"ActiveScript"上。

  ActiveScript是微软提出的,服务于早期的ActiveX、COM战略,可运行于于WSH(Windows Script Host,这个是解决EmEditor问题的关键)、IIS、WMI等,但自从.Net成了宝贝之后,ActiveScript已经事实上被微软抛弃了。所以,在线帮助很少,英文的少,中文的更少。

  长话短说。无论如何,这里要明白一点:Python可以作为ActiveScript,前提是由pywin32这个模块为它提供封装支持。

  真正操蛋的问题是,ActiveState这家不负责任的公司,虽然在ActivePython中集成了pywin32,但那是一个有缺陷的东东,并不是像它自己在可怜的一点帮助上所言,只要安装了ActivePython就会让Python成为windows下的ActiveScript!气愤啊!

  小结一下,我们需要一个能够扮演ActiveScript角色的Python,EmEditor才肯欣然接受它。

  下一篇博文,再讲具体怎么做。