Audacity 3.2.0
Go to the documentation of this file.
3 Audacity: A Digital Audio Editor
5 @file FutureStrings.h
7 Paul Licameli
9 **********************************************************************/
11#if 0
13This file contains strings and comments put into the source code tree for the
14string freeze of a release, but while not yet in feature freeze. This allows
15the translation catalog template, locale/audacity.pot, to stabilize long enough
16in advance of the release, that translators have enough opportunity to update
17the language-specific catalogs.
19These strings, and their i18n-hint comments, can be cut and pasted elsewhere
20during the continued development in string freeze.
22Some example strings are also given first, to document the syntax.
23 */
25// //////////////////////////////////////////////// Begin examples
27// A translated string may also have an accompanying special comment
29// i18n-hint to lower oneself
30//XO("Get down"),
32/* i18n-hint An example of a longer special comment that can wrap lines.
33 These comments must begin with the special word i18n-hint and immediately
34 precede the source code line with the opening quotation mark. The translators
35 will see this comment text in the generated .po files, which they edit and
36 complete. This comment can give hints about unusual words, or the grammatical
37 form of an English word (such as whether it's meant as noun or verb) when that
38 is not clear from context.
39 */
40//XO("Get down"),
43 /* i18n-hint one more example of alternative correct placement of an
44 internationalization comment. All comments on different occurrences of the
45 same string are collected in the template file. */
46// "Get down"),
48// Next is an example of a string with a disambiguating context. This allows
49// one English string to have more than one entry in the translation catalog.
50// The context string is not itself seen by users or translated by translators.
51// It only allows the code at runtime to choose the correct translation.
53// i18n-hint Have fun and dance
54//XC("Get down", "party"),
56// i18n-hint Obtain the underfeathers of a goose
57//XC("Get down", "pillows"),
59// Strings may have blanks in which names are substituted, such as a file name.
60// For good internationalization, allowing for variations of grammar between
61// languages, and giving translators the needed context, we substitute names
62// into larger phrases. Do not build up messages by concatenating less complete
63// phrases.
64//XO("Your batch command of %s was not recognized."),
66// Sometimes strings must be given as singular-plural pairs. The translation
67// system may make more or fewer than two entries in the catalog, depending
68// on the grammatical rules of the language. The 0 is a placeholder for an
69// expression in real code that is used to choose the proper string at
70// lookup time.
71// Also %d is a blank appropriate for a number instead of a name.
73// i18n-hint
74//XP("Got down one time", "Got down %d times", 0),
76// Finally, singular-plural pairs may also have context strings.
78// i18n-hint Obtained underfeathers of geese on one or more occasions
79//XPC("Got down one time", "Got down %d times", 0, "pillows"),
81// About keyboard shortcuts:
82// Some strings are labels of dialog controls, and should include '&'
83// characters. These will appear underlined, and the user can type those keys
84// as shortcuts for selecting the control. These characters are called
85// "mnemonics" in wxWidgets documentation.
86// It is recommended to use a common context string for controls of one dialog.
87// If a control has no mnemonic, or two controls have the same mnemonic, then
88// there is no error at runtime, but there will be a control with no shortcut.
89// Use && to include a single ampersand character in the text, which is not
90// a mnemonic.
91// Note that choices in a drop-down menu do not use mnemonics, but the label
92// of the whole drop-down itself does.
93//XC("Spam && &Eggs", "Viking menu"),
94//XC("Spam Eggs Sausage && &Spam", "Viking menu"),
96// //////////////////////////////////////////////// End examples
100XXO("&Cut/Copy/Paste Toolbar"),
XXO("&Cut/Copy/Paste Toolbar")