RV Python 快速入门

除了 Mu 之外,RV 现在还附带了 Python,以跨平台编写脚本和扩展应用程序。就 RV 而言,Python 完全对等于 Mu。命令 API 在这两者之间几乎相同。

为了利用 Python 扩展 RV,需要制作一个“模式”作为 rvpkg 软件包的一部分 - 方法与在 Mu 中相同,这也是我们内部用来向 RV 界面添加新函数的方法。参考手册中记录了如何创建模式和软件包。请阅读相关章节,了解如何完成这些操作。下面是一个用 Python 编写的、非常简单的模式,也是 $RV_HOME/rvpkgs/pyhello-1.0.rvpkg 的一部分。您可以添加和安装 $RV_HOME/rvpkgs/pyhello-1.0.rvpkg 以查看其是否发挥作用。

import rv.rvtypes
import rv.commands

class PyHello(rv.rvtypes.MinorMode):
  "A simple example that shows how to make shift-Z start/stop playback"

  def togglePlayback(self, event):
    if rv.commands.isPlaying():
      rv.commands.stop()
    else:
      rv.commands.play()

  def __init__(self):
    rv.rvtypes.MinorMode.__init__(self)
    self.init("pyhello",
              [("key-down--Z", self.togglePlayback, "Z key")],
              None)

def createMode():
  "Required to initialize the module. RV will call this function to create your mode."
  return PyHello()

文档:

请点击此处阅读通过联机提供的参考手册。

或者通过 RV 的“帮助 -> RV 参考手册”(Help -> RV Reference Manual)菜单项访问。

命令 API 与 Mu 几乎相同。有几个模块务必要了解:rv.rvtypes、rv.commands、rv.extra_commands 和 rv.rvui。这些模块实现 RV 的基本 Python 接口。

我们目前没有针对 Python 中的 RV 命令 API 的单独文档(例如通过 Pydoc),但您可以使用 RV 的“帮助”(Help)菜单下的现有“Mu Command API Browser”。commands 和 extra_commands 模块在这两种语言中基本上是相同的。我们希望未来拥有 Pydoc 解决方案。

如果您不熟悉 Python,请访问 python.org 查找相关文档、书籍和教程。我们无法回答有关 Python 语言的支持问题,但我们很愿意就 RV 的 Python 集成和 Python 命令 API 相关问题提供帮助。

注意:经过编辑,改为使用“import”而不是“from”。
关注

0 评论

登录写评论。