python - Dragonfly IntegerRef 出现 TypeError : 'NoneType' object is not callable error

标签 python python-dragonfly

尝试使用 Python 2.7 让 Dragonfly 在 Windows 10 中运行。我有一个我制作的示例模块,我试图开始工作,但是我收到以下错误:

Traceback (most recent call last):
  File "C:\NatLink\NatLink\MacroSystem\core\natlinkmain.py", line 304, in loadFile
    imp.load_module(modName,fndFile,fndName,fndDesc)
  File "C:\Users\jarrett\projects\natlink\_test.py", line 3, in <module>
    class ExampleRule2(MappingRule):
  File "C:\Users\jarrett\projects\natlink\_test.py", line 20, in ExampleRule2
    IntegerRef("n", 1, 20),
  File "C:\Python27\lib\site-packages\dragonfly-0.6.5-py2.7.egg\dragonfly\grammar\number.py", line 75, in __init__
    element = self._element_type(None, min, max)
TypeError: 'NoneType' object is not callable

生成此错误的代码是:

from dragonfly.all import Grammar, CompoundRule, MappingRule, Key, Text, IntegerRef, Dictation

class ExampleRule2(MappingRule):
    mapping  = {
                "[feed] address [bar]":                Key("a-d"),
                "subscribe [[to] [this] feed]":        Key("a-u"),
                "paste [feed] address":                Key("a-d, c-v, enter"),
                "feeds | feed (list | window | win)":  Key("a-d, tab:2, s-tab"),
                "down [<n>] (feed | feeds)":           Key("a-d, tab:2, s-tab, down:%(n)d"),
                "up [<n>] (feed | feeds)":             Key("a-d, tab:2, s-tab, up:%(n)d"),
                "open [item]":                         Key("a-d, tab:2, c-s"),
                "newer [<n>]":                         Key("a-d, tab:2, up:%(n)d"),
                "older [<n>]":                         Key("a-d, tab:2, down:%(n)d"),
                "mark all [as] read":                  Key("cs-r"),
                "mark all [as] unread":                Key("cs-u"),
                "search [bar]":                        Key("a-s"),
                "search [for] <text>":                 Key("a-s") + Text("%(text)s\n"),
               }
    extras   = [
                IntegerRef("n", 1, 20),
                Dictation("text"),
               ]
    defaults = {
                "n": 1,
               }

# Create a grammar which contains and loads the command rule.
grammar = Grammar("example grammar")
grammar.add_rule(ExampleRule2())
grammar.load()

有人知道我做错了什么吗?

最佳答案

事实证明,这是我的语言问题 - 我的语言被设置为蜻蜓 natlink 引擎中未定义的语言。

手动添加语言后,一切正常。

关于python - Dragonfly IntegerRef 出现 TypeError : 'NoneType' object is not callable error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34700823/

相关文章:

python - 在带有python2.6的windows7上使用python dragonfly的问题

python - 从 Dragonfly 语音识别引擎获取文本

python - 您如何使用 Python 模块 Dragonfly 识别语音?

python - Tkinter 是否有我可以使用的固定或重复更新循环?

python - 无法使用 django 和 postgreSQL 调试 psycopg2 的错误消息

python - 如何使用 OpenCV 绘图函数绘制填充矩形?

python - 在不修改的情况下在 Jython 中导入 Python 模块

python - 有没有一种简单、优雅的方式来定义单例?