mirror of
https://github.com/cookiengineer/audacity
synced 2025-06-17 16:40:07 +02:00
Interface preferences displays self-names of languages
This commit is contained in:
parent
2e8a73bab1
commit
7ec5fd79df
@ -5,7 +5,7 @@ ACLOCAL_AMFLAGS = -I m4
|
|||||||
bin_PROGRAMS = audacity$(EXEEXT)
|
bin_PROGRAMS = audacity$(EXEEXT)
|
||||||
|
|
||||||
dist_doc_DATA = LICENSE.txt README.txt
|
dist_doc_DATA = LICENSE.txt README.txt
|
||||||
dist_pkgdata_DATA = presets/EQDefaultCurves.xml
|
dist_pkgdata_DATA = presets/EQDefaultCurves.xml locale/LanguageNames.txt
|
||||||
|
|
||||||
nobase_dist_pkgdata_DATA = \
|
nobase_dist_pkgdata_DATA = \
|
||||||
include/audacity/ConfigInterface.h \
|
include/audacity/ConfigInterface.h \
|
||||||
|
@ -513,7 +513,7 @@ SUBDIRS = help images lib-src po src tests
|
|||||||
ACLOCAL_AMFLAGS = -I m4
|
ACLOCAL_AMFLAGS = -I m4
|
||||||
bin_PROGRAMS = audacity$(EXEEXT)
|
bin_PROGRAMS = audacity$(EXEEXT)
|
||||||
dist_doc_DATA = LICENSE.txt README.txt
|
dist_doc_DATA = LICENSE.txt README.txt
|
||||||
dist_pkgdata_DATA = presets/EQDefaultCurves.xml
|
dist_pkgdata_DATA = presets/EQDefaultCurves.xml locale/LanguageNames.txt
|
||||||
nobase_dist_pkgdata_DATA = \
|
nobase_dist_pkgdata_DATA = \
|
||||||
include/audacity/ConfigInterface.h \
|
include/audacity/ConfigInterface.h \
|
||||||
include/audacity/EffectAutomationParameters.h \
|
include/audacity/EffectAutomationParameters.h \
|
||||||
|
56
locale/LanguageNames.txt
Normal file
56
locale/LanguageNames.txt
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
af Afrikaans
|
||||||
|
ar العربية
|
||||||
|
be Беларуская
|
||||||
|
bg Български
|
||||||
|
bn বাংলা
|
||||||
|
bs Bosanski
|
||||||
|
ca Català
|
||||||
|
ca_ES@valencia Valencià
|
||||||
|
cs Čeština
|
||||||
|
cy Cymraeg
|
||||||
|
da Dansk
|
||||||
|
de Deutsch
|
||||||
|
el Ελληνικά
|
||||||
|
en English
|
||||||
|
es Español
|
||||||
|
eu Euskara
|
||||||
|
eu_ES Euskara (Espainiako)
|
||||||
|
fa فارسی
|
||||||
|
fi Suomi
|
||||||
|
fr Français
|
||||||
|
ga Gaeilge
|
||||||
|
gl Galego
|
||||||
|
he עברית
|
||||||
|
hi हिन्दी
|
||||||
|
hr Hrvatski
|
||||||
|
hu Magyar
|
||||||
|
hy Հայերեն
|
||||||
|
id Bahasa Indonesia
|
||||||
|
it Italiano
|
||||||
|
ja 日本語
|
||||||
|
ka ქართული
|
||||||
|
km ខេមរភាសា
|
||||||
|
ko 한국어
|
||||||
|
lt Lietuvių
|
||||||
|
mk Македонски
|
||||||
|
my မြန်မာစာ
|
||||||
|
nb Norsk
|
||||||
|
nl Nederlands
|
||||||
|
oc Occitan
|
||||||
|
pl Polski
|
||||||
|
pt Português
|
||||||
|
pt_BR Português (Brasil)
|
||||||
|
ro Română
|
||||||
|
ru Русский
|
||||||
|
sk Slovenčina
|
||||||
|
sl Slovenščina
|
||||||
|
sr_RS Српски
|
||||||
|
sr_RS@latin Srpski
|
||||||
|
sv Svenska
|
||||||
|
ta தமிழ்
|
||||||
|
tg Тоҷикӣ
|
||||||
|
tr Türkçe
|
||||||
|
uk Українська
|
||||||
|
vi Tiếng Việt
|
||||||
|
zh_CN 中文
|
||||||
|
zh_TW 中文
|
@ -1222,6 +1222,7 @@
|
|||||||
5E15126E1DB0010C00702E29 /* TrackControls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E1512681DB0010C00702E29 /* TrackControls.cpp */; };
|
5E15126E1DB0010C00702E29 /* TrackControls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E1512681DB0010C00702E29 /* TrackControls.cpp */; };
|
||||||
5E15126F1DB0010C00702E29 /* TrackUI.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E15126A1DB0010C00702E29 /* TrackUI.cpp */; };
|
5E15126F1DB0010C00702E29 /* TrackUI.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E15126A1DB0010C00702E29 /* TrackUI.cpp */; };
|
||||||
5E1512701DB0010C00702E29 /* TrackVRulerControls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E15126B1DB0010C00702E29 /* TrackVRulerControls.cpp */; };
|
5E1512701DB0010C00702E29 /* TrackVRulerControls.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E15126B1DB0010C00702E29 /* TrackVRulerControls.cpp */; };
|
||||||
|
5E16FF4D1FF9CE0B0085E1B8 /* LanguageNames.txt in Resources */ = {isa = PBXBuildFile; fileRef = 5E16FF4C1FF9CE0B0085E1B8 /* LanguageNames.txt */; };
|
||||||
5E2A19941EED688500217B58 /* SelectionState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E2A19921EED688500217B58 /* SelectionState.cpp */; };
|
5E2A19941EED688500217B58 /* SelectionState.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E2A19921EED688500217B58 /* SelectionState.cpp */; };
|
||||||
5E3FFE721EC9032B0020F7C9 /* NoteTrackSliderHandles.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E3FFE701EC9032B0020F7C9 /* NoteTrackSliderHandles.cpp */; };
|
5E3FFE721EC9032B0020F7C9 /* NoteTrackSliderHandles.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E3FFE701EC9032B0020F7C9 /* NoteTrackSliderHandles.cpp */; };
|
||||||
5E667A601F0BEE5F00C942A5 /* WaveTrackVZoomHandle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E667A5E1F0BEE5F00C942A5 /* WaveTrackVZoomHandle.cpp */; };
|
5E667A601F0BEE5F00C942A5 /* WaveTrackVZoomHandle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5E667A5E1F0BEE5F00C942A5 /* WaveTrackVZoomHandle.cpp */; };
|
||||||
@ -3070,6 +3071,7 @@
|
|||||||
5E15126A1DB0010C00702E29 /* TrackUI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TrackUI.cpp; sourceTree = "<group>"; };
|
5E15126A1DB0010C00702E29 /* TrackUI.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TrackUI.cpp; sourceTree = "<group>"; };
|
||||||
5E15126B1DB0010C00702E29 /* TrackVRulerControls.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TrackVRulerControls.cpp; sourceTree = "<group>"; };
|
5E15126B1DB0010C00702E29 /* TrackVRulerControls.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = TrackVRulerControls.cpp; sourceTree = "<group>"; };
|
||||||
5E15126C1DB0010C00702E29 /* TrackVRulerControls.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TrackVRulerControls.h; sourceTree = "<group>"; };
|
5E15126C1DB0010C00702E29 /* TrackVRulerControls.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TrackVRulerControls.h; sourceTree = "<group>"; };
|
||||||
|
5E16FF4C1FF9CE0B0085E1B8 /* LanguageNames.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = LanguageNames.txt; path = ../locale/LanguageNames.txt; sourceTree = "<group>"; };
|
||||||
5E2A19921EED688500217B58 /* SelectionState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SelectionState.cpp; sourceTree = "<group>"; };
|
5E2A19921EED688500217B58 /* SelectionState.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SelectionState.cpp; sourceTree = "<group>"; };
|
||||||
5E2A19931EED688500217B58 /* SelectionState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SelectionState.h; sourceTree = "<group>"; };
|
5E2A19931EED688500217B58 /* SelectionState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SelectionState.h; sourceTree = "<group>"; };
|
||||||
5E3FFE701EC9032B0020F7C9 /* NoteTrackSliderHandles.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NoteTrackSliderHandles.cpp; sourceTree = "<group>"; };
|
5E3FFE701EC9032B0020F7C9 /* NoteTrackSliderHandles.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = NoteTrackSliderHandles.cpp; sourceTree = "<group>"; };
|
||||||
@ -5349,6 +5351,7 @@
|
|||||||
286D30AC0F264B58004E6E4A /* locale */ = {
|
286D30AC0F264B58004E6E4A /* locale */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
5E16FF4C1FF9CE0B0085E1B8 /* LanguageNames.txt */,
|
||||||
28884912131B6CF500B59735 /* af.po */,
|
28884912131B6CF500B59735 /* af.po */,
|
||||||
28884913131B6CF500B59735 /* ar.po */,
|
28884913131B6CF500B59735 /* ar.po */,
|
||||||
28884914131B6CF500B59735 /* be.po */,
|
28884914131B6CF500B59735 /* be.po */,
|
||||||
@ -7091,6 +7094,7 @@
|
|||||||
isa = PBXResourcesBuildPhase;
|
isa = PBXResourcesBuildPhase;
|
||||||
buildActionMask = 2147483647;
|
buildActionMask = 2147483647;
|
||||||
files = (
|
files = (
|
||||||
|
5E16FF4D1FF9CE0B0085E1B8 /* LanguageNames.txt in Resources */,
|
||||||
174F73D0098D516D009CD6E0 /* Audacity.icns in Resources */,
|
174F73D0098D516D009CD6E0 /* Audacity.icns in Resources */,
|
||||||
174F73D1098D516D009CD6E0 /* AudacityAIFF.icns in Resources */,
|
174F73D1098D516D009CD6E0 /* AudacityAIFF.icns in Resources */,
|
||||||
174F73D2098D516D009CD6E0 /* AudacityAU.icns in Resources */,
|
174F73D2098D516D009CD6E0 /* AudacityAU.icns in Resources */,
|
||||||
|
@ -35,8 +35,10 @@
|
|||||||
#include <wx/defs.h>
|
#include <wx/defs.h>
|
||||||
#include <wx/hashmap.h>
|
#include <wx/hashmap.h>
|
||||||
#include <wx/intl.h>
|
#include <wx/intl.h>
|
||||||
|
#include <wx/textfile.h>
|
||||||
|
|
||||||
#include "Languages.h"
|
#include "Languages.h"
|
||||||
|
#include "FileNames.h"
|
||||||
|
|
||||||
#include "AudacityApp.h"
|
#include "AudacityApp.h"
|
||||||
|
|
||||||
@ -131,66 +133,25 @@ void GetLanguages(wxArrayString &langCodes, wxArrayString &langNames)
|
|||||||
LangHash reverseHash;
|
LangHash reverseHash;
|
||||||
LangHash tempHash;
|
LangHash tempHash;
|
||||||
|
|
||||||
// MM: Use only ASCII characters here to avoid problems with
|
{
|
||||||
// charset conversion on Linux platforms
|
// The list of locales and associated self-names of languages
|
||||||
localLanguageName[wxT("af")] = wxT("Afrikaans");
|
// is stored in an external resource file which is easier
|
||||||
localLanguageName[wxT("ar")] = wxT("Arabic");
|
// to edit as Unicode than C++ source code.
|
||||||
localLanguageName[wxT("be")] = wxT("Belarusian");
|
auto dir = FileNames::ResourcesDir();
|
||||||
localLanguageName[wxT("bg")] = wxT("Balgarski");
|
wxTextFile file{dir + wxFILE_SEP_PATH + "LanguageNames.txt"};
|
||||||
localLanguageName[wxT("bn")] = wxT("Bengali");
|
file.Open();
|
||||||
localLanguageName[wxT("bs")] = wxT("Bosnian");
|
for ( auto str = file.GetFirstLine(); !file.Eof();
|
||||||
localLanguageName[wxT("ca")] = wxT("Catalan");
|
str = file.GetNextLine() )
|
||||||
localLanguageName[wxT("ca_ES@valencia")] = wxT("Valencian (southern Catalan)");
|
{
|
||||||
localLanguageName[wxT("cs")] = wxT("Czech");
|
// Allow commenting-out of languages no longer supported
|
||||||
localLanguageName[wxT("cy")] = wxT("Welsh");
|
if (str[0] == '#')
|
||||||
localLanguageName[wxT("da")] = wxT("Dansk");
|
continue;
|
||||||
localLanguageName[wxT("de")] = wxT("Deutsch");
|
|
||||||
localLanguageName[wxT("el")] = wxT("Ellinika");
|
auto code = str.BeforeFirst(' ');
|
||||||
localLanguageName[wxT("en")] = wxT("English");
|
auto name = str.AfterFirst(' ');
|
||||||
localLanguageName[wxT("es")] = wxT("Espanol");
|
localLanguageName[code] = name;
|
||||||
localLanguageName[wxT("eu")] = wxT("Euskara");
|
}
|
||||||
localLanguageName[wxT("eu_ES")] = wxT("Euskara (Espainiako)");
|
}
|
||||||
localLanguageName[wxT("fa")] = wxT("Farsi");
|
|
||||||
localLanguageName[wxT("fi")] = wxT("Suomi");
|
|
||||||
localLanguageName[wxT("fr")] = wxT("Francais");
|
|
||||||
localLanguageName[wxT("ga")] = wxT("Gaeilge");
|
|
||||||
localLanguageName[wxT("gl")] = wxT("Galician");
|
|
||||||
localLanguageName[wxT("he")] = wxT("Hebrew");
|
|
||||||
localLanguageName[wxT("hi")] = wxT("Hindi");
|
|
||||||
localLanguageName[wxT("hr")] = wxT("Croatian");
|
|
||||||
localLanguageName[wxT("hu")] = wxT("Magyar");
|
|
||||||
localLanguageName[wxT("hy")] = wxT("Armenian");
|
|
||||||
localLanguageName[wxT("id")] = wxT("Bahasa Indonesia"); // aka Indonesian
|
|
||||||
localLanguageName[wxT("it")] = wxT("Italiano");
|
|
||||||
localLanguageName[wxT("ja")] = wxT("Nihongo");
|
|
||||||
localLanguageName[wxT("ka")] = wxT("Georgian");
|
|
||||||
localLanguageName[wxT("km")] = wxT("Khmer");
|
|
||||||
localLanguageName[wxT("ko")] = wxT("Korean");
|
|
||||||
localLanguageName[wxT("lt")] = wxT("Lietuviu");
|
|
||||||
localLanguageName[wxT("mk")] = wxT("Makedonski");
|
|
||||||
localLanguageName[wxT("my")] = wxT("Burmese");
|
|
||||||
localLanguageName[wxT("nb")] = wxT("Norsk");
|
|
||||||
localLanguageName[wxT("nl")] = wxT("Nederlands");
|
|
||||||
localLanguageName[wxT("oc")] = wxT("Occitan");
|
|
||||||
localLanguageName[wxT("pl")] = wxT("Polski");
|
|
||||||
localLanguageName[wxT("pt")] = wxT("Portugues");
|
|
||||||
localLanguageName[wxT("pt_BR")] = wxT("Portugues (Brasil)");
|
|
||||||
localLanguageName[wxT("ro")] = wxT("Romanian");
|
|
||||||
localLanguageName[wxT("ru")] = wxT("Russky");
|
|
||||||
localLanguageName[wxT("sk")] = wxT("Slovak");
|
|
||||||
localLanguageName[wxT("sl")] = wxT("Slovenscina");
|
|
||||||
localLanguageName[wxT("sr_RS")] = wxT("Serbian (Cyrillic)");
|
|
||||||
localLanguageName[wxT("sr_RS@latin")] = wxT("Serbian (Latin)");
|
|
||||||
localLanguageName[wxT("sv")] = wxT("Svenska");
|
|
||||||
localLanguageName[wxT("tg")] = wxT("Tajik");
|
|
||||||
localLanguageName[wxT("ta")] = wxT("Tamil");
|
|
||||||
localLanguageName[wxT("tr")] = wxT("Turkce");
|
|
||||||
localLanguageName[wxT("uk")] = wxT("Ukrainska");
|
|
||||||
localLanguageName[wxT("vi")] = wxT("Vietnamese");
|
|
||||||
// If we look up zh in wxLocale we get zh_TW hence we MUST look
|
|
||||||
// for zh_CN.
|
|
||||||
localLanguageName[wxT("zh_CN")] = wxT("Chinese (Simplified)");
|
|
||||||
localLanguageName[wxT("zh_TW")] = wxT("Chinese (Traditional)");
|
|
||||||
|
|
||||||
wxArrayString audacityPathList = wxGetApp().audacityPathList;
|
wxArrayString audacityPathList = wxGetApp().audacityPathList;
|
||||||
|
|
||||||
|
@ -98,6 +98,7 @@ Source: "{#AppExe}"; DestDir: "{app}"; Flags: ignoreversion
|
|||||||
Source: "..\help\manual\*"; DestDir: "{app}\help\manual\"; Flags: ignoreversion recursesubdirs
|
Source: "..\help\manual\*"; DestDir: "{app}\help\manual\"; Flags: ignoreversion recursesubdirs
|
||||||
|
|
||||||
Source: "..\presets\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
Source: "..\presets\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
||||||
|
Source: "..\locale\LanguageNames.txt"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs
|
||||||
|
|
||||||
; wxWidgets DLLs. Be specific (not *.dll) so we don't accidentally distribute avformat.dll, for example.
|
; wxWidgets DLLs. Be specific (not *.dll) so we don't accidentally distribute avformat.dll, for example.
|
||||||
; Don't use the WXWIN environment variable, because...
|
; Don't use the WXWIN environment variable, because...
|
||||||
|
Loading…
x
Reference in New Issue
Block a user