talonhub / community

Voice command set for Talon, community-supported.
MIT License
623 stars 779 forks source link

core/noise.py seems to depend on plugins/mouse/mouse.py #1400

Closed ssfrr closed 2 months ago

ssfrr commented 6 months ago

Not sure if this is considered a bug, feel free to close this if not.

I'm trying to use a minimal subset of community that I can gradually expand as I get more comfortable and want more features. So I'm symlinking parts of it into my .talon/user directory.

So far I linked core, tags, and plugin/mode_indicator.

I was getting the following error. The only place I found noise_trigger_hiss used was within plugins/mouse.py. After I added that plugin, the error went away.

My thought was that stuff in core shouldn't depend on stuff in plugins, but as I said, I'm not sure if that expectation is intended, or if I'm swimming upstream by trying to use the community repo piecemeal.

2024-03-13 10:49:51.067 ERROR cb error topic="hiss" cb=noise_trigger_hiss_debounce
    8:               talon/noise.py:21 | 
    7:               talon/noise.py:56 | 
    6: --------------------------------# [stack splice]
    5:  talon/scripting/dispatch.py:134| # 'hiss' user.community.core.noise:noise_trigger_hiss_debounce()
    4: user/community/core/noise.py:35 | actions.user.noise_trigger_hiss(active)
    3:                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    2:   talon/scripting/actions.py:62 | 
    1:   talon/scripting/actions.py:159| 
NotImplementedError: Action 'user.noise_trigger_hiss' exists but the Module method is empty and no Context reimplements it
2024-03-13 10:50:32.166 ERROR cb error topic="hiss" cb=noise_trigger_hiss_debounce
    8:               talon/noise.py:21 | 
    7:               talon/noise.py:56 | 
    6: --------------------------------# [stack splice]
    5:  talon/scripting/dispatch.py:134| # 'hiss' user.community.core.noise:noise_trigger_hiss_debounce()
    4: user/community/core/noise.py:35 | actions.user.noise_trigger_hiss(active)
    3:                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    2:   talon/scripting/actions.py:62 | 
    1:   talon/scripting/actions.py:159| 
NotImplementedError: Action 'user.noise_trigger_hiss' exists but the Module method is empty and no Context reimplements it
2024-03-13 10:50:34.965 WARNING settings: skipped because they have no matching declaration: (user.command_history_size, user.mouse_enable_hiss_scroll, user.mouse_continuous_scroll_amount, user.mouse_hide_mouse_gui, user.mouse_wheel_horizontal_amount, user.mouse_wake_hides_cursor, user.command_history_display, user.mouse_enable_pop_click, user.mouse_wheel_down_amount, user.mouse_enable_pop_stops_scroll)
auscompgeek commented 4 months ago

My thought was that stuff in core shouldn't depend on stuff in plugins

This is 100% the intention, the rationale being you should be able to delete entire apps and plugins if you don't need them.