Issues on translating default plugins

Hello. I’m localizing Audacity to Japanese.
I tried translating default Nyquist plugins and confirmed whether it affects them correctly.
Things are mostly OK but some are not.

1. Errors I can’t meet

#: plug-ins/adjustable-fade.ny
#, lisp-format
msgid "~aPercentage values cannot be more than 1000 %."

▲ Even if I use extremely loud setting(), the effect doesn’t return this error.
Fade Type: Fade Up, Mid-fade Adjust: 0.0, Start/End as: % of Original, Start: 1500.0, End: 2000.0, Handy Presets: None Selected)

#: plug-ins/adjustable-fade.ny
#, lisp-format
msgid ""
"~adB values cannot be more than +100 dB.~%~%~\n"
"                                 Hint: 6 dB doubles the amplitude~%~\n"
"                                 t-6 dB halves the amplitude."

▲ When I change ‘Start/End as’ of above extreme setting to “dB Gain” and press ‘OK’,
I get an empty error that displays just “Error”, rather than the detail lisp message.

#: plug-ins/delay.ny
#, lisp-format
msgid "Number of echoes '~a' outside valid range 1 to 50.~%~a"

▲ This and 3 similar messages are replaced with simpler ones.
e.g. Set ‘Number of echoes’ as 100, then ‘OK’. Error is “Not in range 1 to 30”.

2. Errors ignoring translation

#: plug-ins/highpass.ny plug-ins/lowpass.ny
#, lisp-format
msgid ""
"Error:~%~%Frequency (~a Hz) is too high for track sample rate.~%~%~\n"
"                   Track sample rate is ~a Hz~%~\n"
"                   Frequency must be less than ~a Hz."

▲ I can see this error but it’s shown as completely untranslated even after I updated mo file.
Note that the other error of highpass and lowpass, “Frequency must be at least 0.1 Hz.”, does accept translation.

#: plug-ins/sample-data-export.ny
#, lisp-format
msgid ""
"~a~%Sample Rate: ~a Hz. Sample values on ~a scale. ~a.~%~aLength processed: ~a ~\n"
"                  samples, ~a seconds.~%Peak amplitude: ~a (linear) ~a dB.  Unweighted RMS: ~a dB.~%~\n"
"                  DC offset: ~a~a"

▲ This and some similar messages for result dialog and text header ignore translation.
Additionally, when I use the text export with “All” header, wxWidgets shows so many (over 70) error alerts saying “wxUniChar::FromHi8bit(): invalid multibyte character” before completing export and appearing the dialog.
This seems something related with that the data import can deal only with pure ASCII letters.

#: plug-ins/sample-data-import.ny
#, lisp-format
msgid ""
"                        '~a' could not be opened.~%~\n"
"                        Check that file exists."

▲ This and some similar error messages ignore translation.

#: plug-ins/vocalrediso.ny
msgid ""
" - The two channels are identical, i.e. dual mono.\n"
"   The center can't be removed.\n"
"      Any remaining difference may be caused by lossy encoding."

▲ This and some similar error messages except “A fairly good value …” ignore translation.
“A fairly good value …” is a string which has only one line, so it might be a kind of hint.
I confirmed, on Notepad++, that the default scripts in my “Plug-ins” folder are LF-newline text files and they’re the ones enabled on plugin manager.

3. Errors saying wrong

#: plug-ins/StudioFadeOut.ny
#, lisp-format
msgid "Selection too short.~%It must be more than 2 samples."

▲ Selection can be just 2 samples when project rate is 22050 Hz.
When 96000 Hz, selecting less than 6 samples gets “more than 2 samples” error.

4. Plug-ins which doesn’t work

I can’t confirm how ‘Regular Interval Labels’ works and I can hardly translate it therefore.
When I use it with its default setting, it returns a simple dialog saying “Nyquist returned the value: 2” and nothing else happens.
If I press ‘Debug’ instead of OK, firstly it returns 2 and then debug output shows the result beginning with “error: bad argument type - NIL”.

Here’s my environment.

  • Audacity: 2.3.1-alpha-Oct 8 2018 from Audacity devel on FossHub
  • OS: Windows 7 64bit
  • mo file: Attached as zip (because *.mo file couldn’t be attached directly)

Thanks. (113 KB)

I’ll check and update these plug-ins as necessary.
If you notice any others, do let me know and I’ll fix them.

Do you get this problem with all multi-line strings?

The actual string in the plug-in is:

"Error:~%~%Frequency (~a Hz) is too high for track sample rate.~%~%~
Track sample rate is ~a Hz~%~
Frequency must be less than ~a Hz."

so I’m wondering if the problem is due to the new-line character “\n”. If it is, then I would expect the error to occur with all multi-line strings in Nyquist plug-ins.

Nyquist plug-ins are pure ASCII. A multi-byte Unicode characters in a Nyquist plug-in is an error. I don’t know the details of how the translation string substitutions work, and whether Nyquist ever sees the translated strings, but if it does, then this is a major problem that needs to be fixed by the developers. I’ll need to ask Paul about this.

You may have stumbled across an error in Audacity’s time selection. The plug-in itself appears to be correct, but I’m seeing some weird behaviour.

Can you give exact step-by-step instructions so that I can reproduce exactly what you are seeing.

Which menu is ‘Regular Interval Labels’ in? Is it in the “Analyze” menu or the “Tools” menu?

Thanks very much for your report and thorough testing. Most of these issues I have not seen before because I couldn’t see any plug-in translations on Linux until 11 days ago. Your post has been a great help in sorting out issues in this new feature.

Because there 5 different issues, it may be best to start new separate topics, one for each issue.

These should all be fixed now in the latest alpha code.

Thanks for each reply and the fix.

I confirmed that “I can’t meet” ones appear now or have been removed.
(Plugins don’t seem updated on the FossHub zip so I brought updated ones from Git and confirmed)
Then I’ll make 4 topics for the rest of them.

Thanks for confirming.

By the way, are you signed up to the translator’s mailing list? If not, it is here:
The people on that list are the experts regarding translation issues. I believe that completed .PO files are normally posted as attachments to that list, then one of the developers (usually James or Paul) will pick them up and commit them.

For Nyquist issues, this forum is probably the best place.

I already joined that mailing list.
The reason why I post this report not there but here is simply because I feel it’s too long to mail (and it’s also likely to be brought to developers by writing here).