0

我最近开始涉足 DragonFly(由于轻微的 RSI 问题),我将它与 WSR 和 wsr_module_loader_plus.py 脚本一起使用。

我发现真正令人讨厌的一件事是,每当我调整语法时,我都需要重新启动主脚本。在我执行 Ctrl+C 后需要几秒钟才能关闭(idk 为什么),这只会增加乏味。

是否可以通过命令热重载语法?我看过演讲者这样做的演示,但他们使用的是 Dragon NaturallySpeaking,而不是 WSR。

我在这里遗漏了一些明显的东西,但我是 Python 新手。如果我最终解决了这个问题,我肯定会发布一个解决方案......谷歌搜索没有帮助._。

(或者,仅用于终止脚本的语音命令也可以工作,但这只会使重新启动更快,而不是完全摆脱它们。)

4

1 回答 1

0

事实证明,这实际上非常简单。通过复制 wsr_module_loader_plus.py 脚本中的代码并将其放入自己的命令中,我能够让蜻蜓重新加载脚本。

这是有问题的代码:

import os.path
from dragonfly.loader import CommandModuleDirectory

def reload():
    path = os.path.dirname(__file__)
    directory = CommandModuleDirectory(path, excludes=[__file__])
    directory.load()

然后只需发出命令调用 reload 命令即可。

话虽如此,我不相信这是一个完美的解决方案。我认为它实际上并没有卸载任何旧语法。我暂时将其作为答案,但我认为这不是最好的解决方案。

于 2020-10-10T17:55:10.110 回答