Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 00:42
    LexiconCode edited #104
  • May 16 16:06

    quintijn on master

    working on natlinkstatus.py and… working on (original) sample ma… finishing natlinkconfigfunction… and 6 more (compare)

  • May 16 16:06
    quintijn closed #105
  • May 16 16:06
    quintijn synchronize #105
  • May 16 16:03
    quintijn opened #105
  • May 16 12:26

    quintijn on master

    static website for natlink proj… (compare)

  • May 14 10:03

    quintijn on master

    enhanced documentation.rst, con… (compare)

  • May 14 09:05

    quintijn on master

    try documentation/conf.py again… (compare)

  • May 12 02:37
    LexiconCode edited #104
  • May 12 02:30
    LexiconCode edited #104
  • May 12 02:13
    LexiconCode edited #104
  • May 12 02:09
    LexiconCode edited #104
  • May 12 02:08
    LexiconCode opened #104
  • May 11 16:20

    LexiconCode on LexiconCode-patch-rst

    (compare)

  • May 10 09:37

    quintijn on master

    documentation ok without _build… (compare)

  • May 10 09:17

    quintijn on master

    exclude _build directory. Test … (compare)

  • May 10 07:38

    quintijn on master

    remove _build of documentation (compare)

  • May 04 18:15

    quintijn on master

    Update developers.rst Merge pull request #102 from di… (compare)

  • May 04 18:15
    quintijn closed #102
  • May 04 17:26
    LexiconCode opened #103
Quintijn Hoogenboom
@quintijn
Especially for Dragonfly developers (and packages that rely on Dragonfly), please try this pre release and share your experiences!
Anatole Matveief
@amatveie
Does anybody know of a guide on how to develop inside of the core Vocola code? I've been digging around and want to try my hand at adding in a new backend_ file. But my current efforts have led to dead ends. In particular I'm curious after the call in _vocola_main.py to vcl2py.py, I lose the ability to output any sorts of log or print() to the natlink messages window. ie none of my calls to print inside of the Natlink\Vocola\exec\vcl2py folder seem to work. Also my attempt to replace the backend_Natlink w/ a backend_multi that outputs to both Natlink and echo has not led to anything. @mdbridge , @quintijn (or anyone else), any thoughts?
Quintijn Hoogenboom
@quintijn
@amatveie : I am on my way to adapt Vocola to the new release of Natlink for python3 (python38-32).
Anatole Matveief
@amatveie
@quintijn Thanks, if you have any hints on how to debug especially the backend proxies, I would really appreciate it.
Quintijn Hoogenboom
@quintijn
I'll let you know when I have some more progress...
Anatole Matveief
@amatveie
@quintijn Just FYI have been able to make some progress by just calling log_warn all over the place. Do you know what folders are reloaded automatically versus requiring a Dragon restart? I've seen some cases where changes to a file inside of Natlink/Vocola/exec do seem to be reloaded without having to restart Dragon, But I'm not sure if that's expected behavior? I know that stuff inside of Natlink/MacroSystem/ seems to get reloaded without restarting Dragon...
Quintijn Hoogenboom
@quintijn
I am close to making a Natlink and a Vocola release: now after changing a Vocola Command File (.vcl), at second utterance the command is recognised. I do not understand why it does not reload on first utterance. This is the case when you need to toggle the microphone to get changed grammars to reload. But also with a new option, with which you can "trigger_load" of all changed grammars for example 3 times. At each time this int is decreased by one, until it is 0 and the property of the loader (main instance of NatlinkMain class, note: loader.py used to be called natlinkmain.py) is set to False again. When this property is True, it will remain True, and setting such an integer value is not allowed.
The name of this property is load_on_begin_utterance, BTW
Maybe we can get some help from Microsoft, like the actually import libs etc. for dragon. or contributions to this project. Who would we approach?
Dane Finlay
@Danesprite
It is not up to me, of course, but help from Microsoft doesn't seem like something this project really needs.
Dane Finlay
@Danesprite

Oh, I should say that I have recently tested the pre-release of Natlink 5.0.0. I note no Dragonfly-specific issues. The library's test suite passes normally. Everything seems to be working nicely.

I do get a large number of deprecation warnings for the PY_SSIZE_T_CLEAN macro. These occur upon invocation of the GramObj.load() function. There is some information on this problem on the following page:
https://docs.python.org/3/c-api/arg.html#strings-and-buffers

jungar1111
@jungar1111
@quintijn How close are you to making the vocola release? My installation just blew up, and I'd rather (re-)install a Python 3 version of things if I can...(?)
Quintijn Hoogenboom
@quintijn
vocola release is very close, but vocola often relies on "unimacro actions", and that is still quite a bit of work to get into shape. I will try to make a pip install and the needed natlink release beginning of next week.
jungar1111
@jungar1111
@quintijn so I tried to install things a number of different ways including things listed at https://qh.antenna.nl/unimacro/installation/installationexperimentalversionpython3.html , https://test.pypi.org/project/natlinkpy/, https://github.com/dictation-toolbox/natlink/releases, and https://github.com/dictation-toolbox/natlink, and 'no joy' . I've some of the cli responses at (http://jungar.net/voice/logs/Install-NatlinkVocolaUnimacroDragonfly-JU20220420-01.txt) .
Help me fix it and I'll write your install docs ;) ...]
LexiconCode
@LexiconCode
@jungar1111 Let me know and I can try to help you out when you're available.
jungar1111
@jungar1111
@LexiconCode - I'm on for the next 4 hours, if you have time to help me with the re-install. Send me a zoom or some other im/screen share app link...or I can send it to you. github@jungar.net
@quintijn - I don't need unimacro necessarily... I have a include file (.vch) which covers all the relevant unimacro stuff..
LexiconCode
@LexiconCode
@jungar1111 ok just a sec
LexiconCode
@LexiconCode
@jungar1111 I sent you a link
Quintijn Hoogenboom
@quintijn
I updated the readme instructions a bit: https://github.com/dictation-toolbox/natlink
Hope this helps!
Quintijn Hoogenboom
@quintijn
Problem: the installer file for Natlink does not work on some systems. See dictation-toolbox/natlink#101
LexiconCode
@lexicon-code:matrix.org
[m]
See my comments in the issue
Anatole Matveief
@amatveie
@lexicon-code:matrix.org @quintijn does the Python 3 w/ Vocola version work at the moment? I don't use any unimacro, but it sounded like from the earlier comment that it might be required anyway?
LexiconCode
@LexiconCode
I'll let @quintijn comment on vocola unimacro as I only use dragenfly. There may be a new release tomorrow that properly bundles Microsoft Visual C++ Redistributables
Quintijn Hoogenboom
@quintijn
@jungar1111 : please try natlink release 5.1.1.pre. https://github.com/dictation-toolbox/natlink/releases
And for vocola: pip install vocola2
jungar1111
@jungar1111
@quintijn : still no joy with vocola2 install
  1. Install Natlink using natlink5.1.1-py3.8-32-setup.exe or the customer version that LexiconCode helped me compile.
  2. pip3 install dragonfly2
    ERROR: Could not install packages due to an
    OSError: [Errno 2] No such file or directory:
    'c:\python38-32\lib\site-package
       \dragonfly2-0.29.0.dist-info\METADATA'
  3. pip3 install vocola2
    Collecting vocola2
    Using cached vocola2-2.9.1.tar.gz (742 kB)
    Installing build dependencies ... done
    Getting requirements to build wheel ... done
    Preparing metadata (pyproject.toml) ... done
    Collecting unimacro
    Using cached unimacro-0.0.3.12.tar.gz (22.0 MB)
    Installing build dependencies ... done
    Getting requirements to build wheel ... done
    Preparing metadata (pyproject.toml) ... done
    Requirement already satisfied: natlink in c:\python38-32\lib\site-packages (from vocola2) (5.1.5)
    Requirement already satisfied: wxpython==4.0.7 in c:\python38-32\lib\site-packages (from natlink->vocola2) (4.0.7)
    Requirement already satisfied: pyenvutils in c:\python38-32\lib\site-packages (from natlink->vocola2) (1.0.0.2)
    Requirement already satisfied: debugpy in c:\python38-32\lib\site-packages (from natlink->vocola2) (1.2.1)
    Requirement already satisfied: dtactions in c:\python38-32\lib\site-packages (from natlink->vocola2) (1.4.2)
    Requirement already satisfied: pydebugstring in c:\python38-32\lib\site-packages (from natlink->vocola2) (0.0.0.2)
    Requirement already satisfied: pywin32==300 in c:\python38-32\lib\site-packages (from natlink->vocola2) (300)
    Requirement already satisfied: dragonfly2 in c:\python38-32\lib\site-packages (from natlink->vocola2) (0.29.0)
    Requirement already satisfied: pillow in c:\python38-32\lib\site-packages (from wxpython==4.0.7->natlink->vocola2) (8.1.0)
    Requirement already satisfied: six in c:\python38-32\lib\site-packages (from wxpython==4.0.7->natlink->vocola2) (1.15.0)
    Requirement already satisfied: numpy in c:\python38-32\lib\site-packages (from wxpython==4.0.7->natlink->vocola2) (1.20.1)
    ERROR: Could not install packages due to an OSError: [Errno 2] No such file or directory: 'c:\python38-32\lib\site-packages\dragonfly2-0.29.0.dist-info\METADATA'
  4. Run Dragon -
    \For diagnosing natlink startup issues use DebugView from sysinternals.
    path:
HappyFishkeeper
@HappyFishkeeper

I was able to install Natlink 5.1.1 pre, and vocola2, after dealing with some pip install problems. I've run the GUI config, but my Vocola commands are not executing, and the Natlink messages say this:

from_config_parser: skip "C:\User\Matt\Documents\Dragonfly" ("dragonfly"): is not a valid directory
from_config_parser: skip "C:\User\Matt\Documents\Vocola" ("vocola"): is not a valid directory
from_config_parser: skip "C:\User\Matt\Documents\Unimacro" ("unimacro"): is not a valid directory
from_config_parser: skip "C:\User\Matt\Documents\Dragonfly ## can be the same as Dragonfly or Caster directory" ("userdirectory"): is not a valid directory
set log level to: DEBUG

jungar1111
@jungar1111
@HappyFishkeeper Assuming you have the c:\User\Matt\* directories (yes?).
...and that permissions are appropriate (e.g. Full Control)
HappyFishkeeper
@HappyFishkeeper
Yes, I have those directories and have been using them with Natlink 4.2. Don't know about permissions, but would think that would be the same as 4.2.
1 reply
jungar1111
@jungar1111
\5. Run natlinkconfig ... it shows
Natlink enabled,
Vocola enabled with correct directory
Unimacro enabled with correct directory
UserDirectory (dragonfly) enabled with correct directory
HappyFishkeeper
@HappyFishkeeper
Yes, I've done that.
HappyFishkeeper
@HappyFishkeeper
I checked, and there wasn't a natlink.ini in the ".natlink" directory (there was a natlinkstatus.ini), so I copied that file from the Program Files (x86)/Natlink directory, and edited it to point to the directories listed above. Now the messages window says: Starting Natlink, but no directories to load are specified.
Please add one or more directories
in config file: "C:\Users\matt.natlink\natlink.ini".
Quintijn Hoogenboom
@quintijn
@HappyFishkeeper : that is definitely the wrong .ini file. Jungar succeeded, he got the natlinkconfigfunctions.py run. I will put more instructions on https://natlink.readthedocs.io today.
Quintijn Hoogenboom
@quintijn
more instructions are now at https://natlink.readthedocs.io
HappyFishkeeper
@HappyFishkeeper
Still having issues here. Going to go back to 4.2 until I feel like trying again.
jungar1111
@jungar1111
Unfortunately, I have not succeeded. Still get the Natlink debug msg
1 reply
jungar1111
@jungar1111
\For diagnosing natlink startup issues use DebugView from sysinternals.
path:
jungar1111
@jungar1111
and vocola and unimacro don't run
Anatole Matveief
@amatveie
@quintijn for vocola where is the default extensions folder? I'm getting an error C:\Users\user\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\vocola2_vocola_main.py , line 135, in checkExtensionsFolderContents
os.mkdir(actual)
PermissionError: [WinError 5] Access is denied: 'extensions'
9 replies
Anatole Matveief
@amatveie
afaict the Vocola directories are not being read from the natlink.ini. I printed them out from the _vocola_main.py file and they didn't seem correct or of the values in the .ini file. Not sure when or where they are being read.
Quintijn Hoogenboom
@quintijn
Unfortunately, these are still pre-releases. Thanks folks for the feedback, I/we will try to solve things ASAP and come up with better releases. Detailed info from the Messages from Natlink window can be sent via mail to q.hoogenboom@antenna.nl
Anatole Matveief
@amatveie
Is there a way to easily switch between the new Python 3 pre- release, and the tried-and-true Python 2? I have a machine that I'm setting up and was going to use it for Python 3 but it seems that's not working yet.
5 replies
LexiconCode
@LexiconCode
@amatveie Since Natlink Python 3 does not require path that should make it easier. They both have a CLI which you could write a script to register/unregister the respective versions. (Switching out which is registered as you can't have them both registered at once)
In addition I was able to use the latest release. Taking advantage of the default directory dir supposed to grab configuration files from. C:\Program Files (x86)\Natlink\DefaultConfig Dropping in dragonfly scripts worked well enough. Obviously not good enough for a release but its functional someone needs too.
2 replies
Quintijn Hoogenboom
@quintijn
A next update of Vocola (vocola2) has been done. pip install ---upgrade vocola2
two minus signs will be enough (--upgrade)