1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-05-01 16:19:43 +02:00

7996 Commits

Author SHA1 Message Date
Paul Licameli
1206afbe9a Another minor update of audacity.pot ...
... a few strings lost terminating \n
2018-01-05 19:35:16 -05:00
Paul Licameli
0badd25844 Reviewed whether fields of PluginDescriptor are translated or not...
... Threw away one field as unused; found a subtle but inconsequential mistake
in the use of another.

Fields that are stored for the purpose of internal identifiers should be
untranslated.  Strings used to form registry keys should certainly be
untranslated.  Translations should only happen for purposes of display to
the user.
2018-01-05 18:40:18 -05:00
Paul Licameli
c6bbe4c3da Fix subtle error revealed by the previous commit ...
... A "translated" effect family string, plus "/Enable",  was used as a
registry key for lookup!  It is wrong to key on a translation.

But in fact exhaustive search for "/Enable" shows that the only such strings
for which a written (by EffectsPrefs) registry value could be found were

AudioUnit
Ladspa
LV2
Nyquist
VAMP
VST

And none of these was actually a msgid in audacity.pot.  So nothing bad can
really have happened in other locale settings.
2018-01-05 18:39:43 -05:00
Paul Licameli
cafbff9ff8 Separate plugin accessors for translated and unstranslated strings...
... because I want to make a type distinction later.

Replace calls to GetXXX() without argument, with GetTranslatedXXX() --
this reveals a subtle error, see next commit.
2018-01-05 18:30:35 -05:00
Paul Licameli
91b0e82c11 PluginDescriptor versions are in fact untranslated; make that clear...
... though the version (like the description) really wasn't yet used for
anything but to write and read again from the registry, still keep writing it.

Because it is appropriate to write untranslated strings to the registry, and
perhaps the values in old registries really will find a future use.
2018-01-05 18:24:22 -05:00
Paul Licameli
3b90538b84 Remove description from PluginDescriptor...
... it was simply written to registry and read again, serving no other
purpose.

But still write a blank to registry for backwards compatibility of the .cfg
file.

This makes it irrelevant whether the value of IdentInterface::GetDescription()
ought to be localized (registry values should probably not be).

Therefore IdentInterface::GetDescription can return localized, and it's all
right that the return be computed (as in VST effects), rather than
an unlocalized msgid that we rely on as an internal identifier.
2018-01-05 18:24:10 -05:00
James Crook
ef25a1187c Doxygen tweaks.
Add Logo, so it appears on the web pages.
Disable tree view as it has a bug that prevents the hyperlinks working well, and WIT uses those hyperlinks.
2018-01-05 21:46:24 +00:00
Paul Licameli
1320879ab4 Reimplement multi-column format of TimerProgressDialog...
... Specify an array of arrays of strings.  Don't pack it all as a single
string that is parsed.  This makes the setup clearer.

It also avoids some concatenations of localized strings (which I want to
make uncompilable some day), and also removes the need for translators to
count the \n's and replicate precisely.
2018-01-05 16:20:33 -05:00
Paul Licameli
e19a4fa943 Timer record exits Audacity more gracefully...
... the direct call to exit(0) caused SIGABRT for me during shutdown on Mac.
2018-01-05 16:20:31 -05:00
Paul Licameli
9a58ead5c8 Uniformity of signatures of all command handler functions 2018-01-05 10:09:23 -05:00
Paul Licameli
78aca8c133 Remove inclusions of Menus.h 2018-01-05 09:27:31 -05:00
Paul Licameli
ab6de1181d No more functor objects; all command handler functions take same args 2018-01-05 09:27:29 -05:00
Paul Licameli
77c392d29c AudacityProject::OnEffect wraps new function DoEffect 2018-01-05 09:27:28 -05:00
Paul Licameli
6dead232f2 Pair CommandHandlerFinder with functor everywhere, but not used yet 2018-01-05 09:27:25 -05:00
Paul Licameli
d263eaa97b Remove the special PopupFunctor, redo it by other means...
... it was only used, so far, by the scrubber.
2018-01-05 09:27:23 -05:00
Paul Licameli
1e3ab82a01 Effect commands store PluginID in CommandEntry parameter, not functor 2018-01-05 09:27:21 -05:00
Paul Licameli
05984e8bfb CommandEntry stores a string parameter, passed in CommandContext 2018-01-05 09:27:19 -05:00
Paul Licameli
0a711d8b26 define CommandContext 2018-01-05 09:27:17 -05:00
Paul Licameli
aa5c3f12a3 easy change key bindings 2018-01-05 09:27:11 -05:00
Paul Licameli
1f7b62f056 AudacityProject::RebuildAllMenuBars is static 2018-01-05 09:19:07 -05:00
Paul Licameli
3769fdea0e fix build 2018-01-05 01:00:14 -05:00
Paul Licameli
b53e7d7a8a change a comment 2018-01-05 00:54:13 -05:00
Paul Licameli
c66eae1a46 Fix uses of wxPLURAL and update audacity.pot ...
so that
(1) we really get msgid_plural entries in the .pot
(2) i18n-comments get extracted too (needs workaround of xgettext bug)
2018-01-05 00:35:04 -05:00
Paul Licameli
d5dca050bd Mid-cycle update of audacity.pot 2018-01-04 19:56:58 -05:00
James Crook
d9c879881e
Appveyor (automated Windows builds) merge from bslatner/master
Changes to work with automated builds.
2018-01-04 15:53:13 +00:00
Bryan Slatner
9d6315fca4 Ignore NuGet package binaries 2018-01-04 10:25:28 -05:00
Bryan Slatner
053a2104ab XML library is required 2018-01-04 10:25:27 -05:00
Paul Licameli
baec816142 Rewrite the composition of clip messages in i18n-friendly way 2018-01-04 09:43:25 -05:00
Paul Licameli
def1d52505 Substitute, don't concatenate, when composing localized strings...
... Avoid English syntax bias.
2018-01-04 04:30:46 -05:00
Paul Licameli
fa7f1a455b Correct self-names for the two Chinese locales 2018-01-03 19:33:04 -05:00
Paul Licameli
e051de0b68 Abandon the drag-and-drop of plug ins for now. 2018-01-03 18:43:06 -05:00
Paul Licameli
815a80846d String literals for UTF-8 language names using octal escapes only...
... Leaving absolutely no doubt about the portability.

New Perl script in locale emits the required C++ source when LanguageNames.txt
is updated.
2018-01-03 18:01:47 -05:00
Paul Licameli
0df94faad8 The message is not in fact a format 2018-01-03 16:55:46 -05:00
Paul Licameli
50d6e75185 null checks -- fix Linux crash in drag-dropping files onto app icon? 2018-01-03 15:35:49 -05:00
Paul Licameli
889284555b Language name table is static and const 2018-01-03 15:33:52 -05:00
James Crook
a2c37d6435 Some Doxygen comments
I'm testing out some ideas on using doxygen more, and these sample
changes will help with that.
2018-01-03 15:10:58 +00:00
James Crook
82ead42249 Doxygen - Audacity version is now 2.2.2
Also enabled full source.
2018-01-03 14:32:15 +00:00
Paul Licameli
c070800e89 Modifications to the easy installation of .ny files 2018-01-03 03:28:30 -05:00
Paul Licameli
17b6ca387e Install plug-in by file icon context menu or drop on program icon...
... no longer by drop onto open program window
2018-01-03 03:26:50 -05:00
Paul Licameli
b8df8e753b macOs magic to allow drag and drop of .ny file onto Audacity program icon 2018-01-03 03:26:34 -05:00
Paul Licameli
191945c8f7 Make enablement of plug-in after drag-and-drop persistent 2018-01-03 03:26:31 -05:00
Paul Licameli
0ec42f3dd2 Fix some English grammar biases...
... Avoid small out-of-context words and phrases in translation catalog that
are then substituted into larger translated phrases with blanks.

(What if my language has declensions?  How do I know the right form to use
for the phrases?)

Instead, give the translators larger in-context phrases to work with, even if
that requires replications of phrases with small variations.
2018-01-02 22:15:33 -05:00
Paul Licameli
0bca8d15f9 Better localization of tooltips in ASlider...
... i18n-hints, avoid syntax assumptions (for Right and Left), avoid
assumptions about widths of non-numerical data
2018-01-02 21:18:20 -05:00
Paul Licameli
cfa62d1d30 Fix a missed translation 2018-01-02 20:14:12 -05:00
Paul Licameli
a1530c36a8 Rewrite "Interface preferences displays self-names of languages" ...
See original attempt at commit 7ec5fd79df65cd3e54d3d14c52df106d71d06c53

This eliminates the need for a resource file at run-time.

locale/LanguageNames.txt is intended as a "source file" that is infrequently
changed as the set of supported languages changes.

The intermediate step, of appropriately copying that file into the C++ source
code in src/Languages.cpp, was done by hand.

In XCode, I set locale/LanguagesNames.txt and src/Languages.cpp to be
interpreted as Western encoding, and then the copy-paste was easy in the
editor.

The resulting C++ source code file now has string literals that are not 7-bit
ASCII.
2018-01-02 17:08:06 -05:00
Paul Licameli
1b19ab4f02 Revert "Use unicode file format with BOM for Languages.cpp"
This reverts commit 3dc241ed54a9d31f4cc55916840839c47e3007c4.
2018-01-02 17:07:25 -05:00
James Crook
3dc241ed54 Use unicode file format with BOM for Languages.cpp
This allows us to directly include language name strings in unicode in the file.
The L in the strings ensures wchar_t use.

I've confirmed that this gives the same results visually on Windows,
and that we do get unicode on Linux.
2018-01-02 20:56:03 +00:00
Paul Licameli
5e670c900a Some i18n-hints 2018-01-02 13:04:19 -05:00
Paul Licameli
b1f7f921a0 Translate the format "%s: %s" wherever user-visible...
... because some languages, like French, prefer to insert a space before :
2018-01-02 12:59:46 -05:00
Paul Licameli
3fbfef0eb1 Plot Spectrum, Change Pitch localize pitch names; Unicode sharp/flat 2018-01-02 12:20:04 -05:00