I don’t know how accessible Nyquist Workbench is - I don’t have a screen reader installed and Audacity accessibility is badly broken on Linux
If you build Nyquist Workbench then next time that you build Audacity, perhaps you could tell us.
This is not a full description, but highlights most of the main features of the Nyquist Workbench.
Nyquist Workbench provides a graphical environment for writing Nyquist plug-ins. I believe that it was originally written just as a demonstration / proof of concept for Audacity modules, but nevertheless I find it to be a useful tool.
The interface consists of two panels. By default they are side by side, though I prefer to use them one above the other (View > Split Horizontally).
The first panel is for the Nyquist code. The second is for debug output. Both panels are resizeable, which is a significant improvement over the small and non-resizeable window in the Nyquist Prompt effect.
The Workbench interface is a modeless window, so it can remain open while doing other things in Audacity.
Generate, Process and Analyze type plug-ins are supported. The plug-in type is set by adding the usual ;type header at the top of the code. The default type is “generate”.
As with Nyquist plug-ins, the “S” parameter only contains the selected audio data when the plug-in type is set to process or analyze.
The workbench menu bar provides the usual “New, Open, Save, Save As” options.
There are also "Copy to clipboard, Cut to Clipboard, Paste from Clipboard and “Select All Text” options to provide convenient exchange of text between the workbench and other editors.
The final two buttons on the menu bar are for running and stopping scripts (“Start Script” and “Stop Script” respectively).
Pressing the Start Script button will attempt to execute the code in the Code panel. If the code includes the necessary headers for a plug-in GUI then the GUI is created and the full graphical plug-in window pops up like any installed plug-in.
The Stop button can be useful for escaping from an improperly designed loop structure that might otherwise be endless, though this should not be relied on as a fast code loop may not allow time for Workbench to be able to interrupt the loop. It can also be useful for stopping code that will otherwise take too long.
Just as Nyquist plug-ins display standard-output in the debug window, the Workbench prints standard-output in the “Output” window. This output is in real time as the code is running. The output window can be cleared using the “Clear Selection” button in the menu bar.
When the plug-in is complete and tested, it can be saved to the Audacity Plug-ins folder (providing that you have write permissions). The plug-in will then be installed when Audacity is restarted.
Additional features include:
- Parentheses matching
- Go to matching parentheses
- Go to top / higher / previous / next S-expression
- Revert to saved
- Autoload last file when launched
- Selected font does not stick
- Selected text may be same colour as highlight
- Pasted text may be red instead of black if replacing a currently matched bracket
- CR/LF are not converted to native format when pasting text
- Stop Script button may not be able to stop a script
- Audacity keyboard shortcuts may stop working until Audacity Preferences are opened and closed
- Audacity plug-in menus are pushed out of order by the name of the current workbench effect
- 2 space tabs
- Syntax highlighting
- Auto-complete option
- Plug-in header template
- Snippet library support
- Lisp indentation rules
- Help menu links to Nyquist and XLisp manuals
- keyword lookup in Nyquist and XLisp manuals