Dragonfly IntegerRef获取TypeError:“NoneType”对象不是callab

2024-03-29 04:40:13 发布

您现在位置:Python中文网/ 问答频道 /正文

尝试让dragonfly使用Python2.7在Windows10中工作。我有一个我制作的示例模块,我正在尝试工作,但是我遇到了以下错误:

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()

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


Tags: keyinpyfeedlinealltabfile