|
Post by scalion on Oct 26, 2018 14:42:29 GMT 1
Hello dear friend, It's been a while since I trots in the head, I launch, it says. I will give all source and exe of this IDE and an installer i will make with inno-setup.
I'm going to use the Gfa-Basic 32 kernel as a compiler by using a fairly simple specific gll extension that checks the launch parameters of the IDE. Like this :
Sub Gfa_init // wird automatisch beim Laden des Basic aufgerufen Local String param, src Local Long V param = Trim(_DosCmd$) V = InStr(LCase(param), "-src:"#34) If V > 0 src = Trim(Mid(param, V + 6)) src = Mid(src, 1, InStr(src, #34) - 1) EndIf If Len(src) > 0 ShowW Gfa_hWndED, SW_HIDE ShowW Gfa_hWnd, SW_MINIMIZE If Exist(src) Gfa_LoadFile src If Len(Gfa_ExeName) > 0 Gfa_DoCompile Else Message "No exe name defined in "#13#10 & src EndIf Else Message src & " not found." EndIf Gfa_DoExit EndIf If InStr(LCase(param), "-doexit") > 0 Gfa_DoExit EndSub
I have already developed an IDE with syntax corrector, auto-indent and all the trimmings. In this version of GFA-Basic I predict native support for OpenGL and Directsound.
Like this :
Win 3DOpenGl 1,x,y,w,h WinSubLoop 1,Mygame
wave = LoadWave("Ding.wav") WaveFreq Wave,44100 WavePlay wave,SND_LOOP | SND_FADEOUT
Proc MyGame etc... etc...
See you next post !
|
|
webu
Full Member
Posts: 148
|
Post by webu on Oct 26, 2018 15:09:44 GMT 1
You have developed a new own IDE Version?
|
|
|
Post by scalion on Oct 26, 2018 21:06:16 GMT 1
Hi Webu, In fact I have developed a string of basic and exotic editor, it has been my experience but I plan to start from scratch. I think today I have everything I need to start on a good foundation.
|
|
|
Post by scalion on Oct 27, 2018 10:28:19 GMT 1
The first thing to do is lay the foundation. A window that opens at the last saved position in the windows registry. Like this :
App.Name = "GfaBasic32V3" OpenW 1 Win_1_Init Do Sleep Loop Until Me Is Nothing Sub Win_1_Destroy SaveSetting App.Name, "Position", "Left", Int, Win_1.Left SaveSetting App.Name, "Position", "Top", Int, Win_1.Top SaveSetting App.Name, "Position", "Width", Int, Win_1.Width SaveSetting App.Name, "Position", "Height", Int, Win_1.Height SaveSetting App.Name, "Position", "State", Int, Win_1.WindowState EndSub Proc Win_1_Init Local Long x, y, w, h, s Win_1.Caption = App.Name
x = Val(vbGetSetting(App.Name, "Position", "Left", , "0")) y = Val(vbGetSetting(App.Name, "Position", "Top", , "0")) w = Val(vbGetSetting(App.Name, "Position", "Width", , Trim(Screen.cxScreen))) h = Val(vbGetSetting(App.Name, "Position", "Height", , Trim(Screen.cyScreen))) s = Val(vbGetSetting(App.Name, "Position", "State", , "0")) Void SetForegroundWindow(Me.hWnd) AutoRedraw = 1 Win_1.Move x, y, w, h If s = 2 Win_1.Maximize EndProc
|
|
|
Post by scalion on Oct 27, 2018 20:54:12 GMT 1
One thing I've always regretted with IDE is the limitation of languages to English and German. I'm going to make it easier. To start the IDE will start with the language of the user who can change the language at will. Here is a code to know the language in use (If you have more simple this interests me):
Declare Function GetThreadUILanguage Lib "Kernel32.dll" () As Word Global Long UserLang = GetThreadUILanguage() SetLanguagesInformations Message GetLangTag(UserLang) & "," & GetLangName(UserLang) & "," & GetLangLoc(UserLang) Proc SetLanguagesInformations Global Long LanguagesCnt = 807 Global Dim LanguageName(807) As String Global Dim LanguageTag(807) As String Global Dim LanguageLocation(807) As String Global Dim LanguageCode(807) As Long LanguageName(1) = "Afar" : LanguageLocation(1) = "" LanguageCode(1) = 0x1000 : LanguageTag(1) = "aa" LanguageName(2) = "Afar" : LanguageLocation(2) = "Djibouti" LanguageCode(2) = 0x1000 : LanguageTag(2) = "aa-DJ" LanguageName(3) = "Afar" : LanguageLocation(3) = "Eritrea" LanguageCode(3) = 0x1000 : LanguageTag(3) = "aa-ER" LanguageName(4) = "Afar" : LanguageLocation(4) = "Ethiopia" LanguageCode(4) = 0x1000 : LanguageTag(4) = "aa-ET" LanguageName(5) = "Afrikaans" : LanguageLocation(5) = "" LanguageCode(5) = 0x0036 : LanguageTag(5) = "af" LanguageName(6) = "Afrikaans" : LanguageLocation(6) = "Namibia" LanguageCode(6) = 0x1000 : LanguageTag(6) = "af-NA" LanguageName(7) = "Afrikaans" : LanguageLocation(7) = "South Africa" LanguageCode(7) = 0x0436 : LanguageTag(7) = "af-ZA" LanguageName(8) = "Aghem" : LanguageLocation(8) = "" LanguageCode(8) = 0x1000 : LanguageTag(8) = "agq" LanguageName(9) = "Aghem" : LanguageLocation(9) = "Cameroon" LanguageCode(9) = 0x1000 : LanguageTag(9) = "agq-CM" LanguageName(10) = "Akan" : LanguageLocation(10) = "" LanguageCode(10) = 0x1000 : LanguageTag(10) = "ak" LanguageName(11) = "Akan" : LanguageLocation(11) = "Ghana" LanguageCode(11) = 0x1000 : LanguageTag(11) = "ak-GH" LanguageName(12) = "Albanian" : LanguageLocation(12) = "" LanguageCode(12) = 0x001C : LanguageTag(12) = "sq" LanguageName(13) = "Albanian" : LanguageLocation(13) = "Albania" LanguageCode(13) = 0x041C : LanguageTag(13) = "sq-AL" LanguageName(14) = "Albanian" : LanguageLocation(14) = "Macedonia, FYRO" LanguageCode(14) = 0x1000 : LanguageTag(14) = "sq-MK" LanguageName(15) = "Alsatian" : LanguageLocation(15) = "" LanguageCode(15) = 0x0084 : LanguageTag(15) = "gsw" LanguageName(16) = "Alsatian" : LanguageLocation(16) = "France" LanguageCode(16) = 0x0484 : LanguageTag(16) = "gsw-FR" LanguageName(17) = "Alsatian" : LanguageLocation(17) = "Liechtenstein" LanguageCode(17) = 0x1000 : LanguageTag(17) = "gsw-LI" LanguageName(18) = "Alsatian" : LanguageLocation(18) = "Switzerland" LanguageCode(18) = 0x1000 : LanguageTag(18) = "gsw-CH" LanguageName(19) = "Amharic" : LanguageLocation(19) = "" LanguageCode(19) = 0x005E : LanguageTag(19) = "am" LanguageName(20) = "Amharic" : LanguageLocation(20) = "Ethiopia" LanguageCode(20) = 0x045E : LanguageTag(20) = "am-ET" LanguageName(21) = "Arabic" : LanguageLocation(21) = "" LanguageCode(21) = 0x0001 : LanguageTag(21) = "ar" LanguageName(22) = "Arabic" : LanguageLocation(22) = "Algeria" LanguageCode(22) = 0x1401 : LanguageTag(22) = "ar-DZ" LanguageName(23) = "Arabic" : LanguageLocation(23) = "Bahrain" LanguageCode(23) = 0x3C01 : LanguageTag(23) = "ar-BH" LanguageName(24) = "Arabic" : LanguageLocation(24) = "Chad" LanguageCode(24) = 0x1000 : LanguageTag(24) = "ar-TD" LanguageName(25) = "Arabic" : LanguageLocation(25) = "Comoros" LanguageCode(25) = 0x1000 : LanguageTag(25) = "ar-KM" LanguageName(26) = "Arabic" : LanguageLocation(26) = "Djibouti" LanguageCode(26) = 0x1000 : LanguageTag(26) = "ar-DJ" LanguageName(27) = "Arabic" : LanguageLocation(27) = "Egypt" LanguageCode(27) = 0x0c01 : LanguageTag(27) = "ar-EG" LanguageName(28) = "Arabic" : LanguageLocation(28) = "Eritrea" LanguageCode(28) = 0x1000 : LanguageTag(28) = "ar-ER" LanguageName(29) = "Arabic" : LanguageLocation(29) = "Iraq" LanguageCode(29) = 0x0801 : LanguageTag(29) = "ar-IQ" LanguageName(30) = "Arabic" : LanguageLocation(30) = "Israel" LanguageCode(30) = 0x1000 : LanguageTag(30) = "ar-IL" LanguageName(31) = "Arabic" : LanguageLocation(31) = "Jordan" LanguageCode(31) = 0x2C01 : LanguageTag(31) = "ar-JO" LanguageName(32) = "Arabic" : LanguageLocation(32) = "Kuwait" LanguageCode(32) = 0x3401 : LanguageTag(32) = "ar-KW" LanguageName(33) = "Arabic" : LanguageLocation(33) = "Lebanon" LanguageCode(33) = 0x3001 : LanguageTag(33) = "ar-LB" LanguageName(34) = "Arabic" : LanguageLocation(34) = "Libya" LanguageCode(34) = 0x1001 : LanguageTag(34) = "ar-LY" LanguageName(35) = "Arabic" : LanguageLocation(35) = "Mauritania" LanguageCode(35) = 0x1000 : LanguageTag(35) = "ar-MR" LanguageName(36) = "Arabic" : LanguageLocation(36) = "Morocco" LanguageCode(36) = 0x1801 : LanguageTag(36) = "ar-MA" LanguageName(37) = "Arabic" : LanguageLocation(37) = "Oman" LanguageCode(37) = 0x2001 : LanguageTag(37) = "ar-OM" LanguageName(38) = "Arabic" : LanguageLocation(38) = "Palestinian Authority" LanguageCode(38) = 0x1000 : LanguageTag(38) = "ar-PS" LanguageName(39) = "Arabic" : LanguageLocation(39) = "Qatar" LanguageCode(39) = 0x4001 : LanguageTag(39) = "ar-QA" LanguageName(40) = "Arabic" : LanguageLocation(40) = "Saudi Arabia" LanguageCode(40) = 0x0401 : LanguageTag(40) = "ar-SA" LanguageName(41) = "Arabic" : LanguageLocation(41) = "Somalia" LanguageCode(41) = 0x1000 : LanguageTag(41) = "ar-SO" LanguageName(42) = "Arabic" : LanguageLocation(42) = "South Sudan" LanguageCode(42) = 0x1000 : LanguageTag(42) = "ar-SS" LanguageName(43) = "Arabic" : LanguageLocation(43) = "Sudan" LanguageCode(43) = 0x1000 : LanguageTag(43) = "ar-SD" LanguageName(44) = "Arabic" : LanguageLocation(44) = "Syria" LanguageCode(44) = 0x2801 : LanguageTag(44) = "ar-SY" LanguageName(45) = "Arabic" : LanguageLocation(45) = "Tunisia" LanguageCode(45) = 0x1C01 : LanguageTag(45) = "ar-TN" LanguageName(46) = "Arabic" : LanguageLocation(46) = "U.A.E." LanguageCode(46) = 0x3801 : LanguageTag(46) = "ar-AE" LanguageName(47) = "Arabic" : LanguageLocation(47) = "World" LanguageCode(47) = 0x1000 : LanguageTag(47) = "ar-001" LanguageName(48) = "Arabic" : LanguageLocation(48) = "Yemen" LanguageCode(48) = 0x2401 : LanguageTag(48) = "ar-YE" LanguageName(49) = "Armenian" : LanguageLocation(49) = "" LanguageCode(49) = 0x002B : LanguageTag(49) = "hy" LanguageName(50) = "Armenian" : LanguageLocation(50) = "Armenia" LanguageCode(50) = 0x042B : LanguageTag(50) = "hy-AM" LanguageName(51) = "Assamese" : LanguageLocation(51) = "" LanguageCode(51) = 0x004D : LanguageTag(51) = "as" LanguageName(52) = "Assamese" : LanguageLocation(52) = "India" LanguageCode(52) = 0x044D : LanguageTag(52) = "as-IN" LanguageName(53) = "Asturian" : LanguageLocation(53) = "" LanguageCode(53) = 0x1000 : LanguageTag(53) = "ast" LanguageName(54) = "Asturian" : LanguageLocation(54) = "Spain" LanguageCode(54) = 0x1000 : LanguageTag(54) = "ast-ES" LanguageName(55) = "Asu" : LanguageLocation(55) = "" LanguageCode(55) = 0x1000 : LanguageTag(55) = "asa" LanguageName(56) = "Asu" : LanguageLocation(56) = "Tanzania" LanguageCode(56) = 0x1000 : LanguageTag(56) = "asa-TZ" LanguageName(57) = "Azerbaijani (Cyrillic)" : LanguageLocation(57) = "" LanguageCode(57) = 0x742C : LanguageTag(57) = "az-Cyrl" LanguageName(58) = "Azerbaijani (Cyrillic)" : LanguageLocation(58) = "Azerbaijan" LanguageCode(58) = 0x082C : LanguageTag(58) = "az-Cyrl-AZ" LanguageName(59) = "Azerbaijani (Latin)" : LanguageLocation(59) = "" LanguageCode(59) = 0x002C : LanguageTag(59) = "az" LanguageName(60) = "Azerbaijani (Latin)" : LanguageLocation(60) = "" LanguageCode(60) = 0x782C : LanguageTag(60) = "az-Latn" LanguageName(61) = "Azerbaijani (Latin)" : LanguageLocation(61) = "Azerbaijan" LanguageCode(61) = 0x042C : LanguageTag(61) = "az-Latn-AZ" LanguageName(62) = "Bafia" : LanguageLocation(62) = "" LanguageCode(62) = 0x1000 : LanguageTag(62) = "ksf" LanguageName(63) = "Bafia" : LanguageLocation(63) = "Cameroon" LanguageCode(63) = 0x1000 : LanguageTag(63) = "ksf-CM" LanguageName(64) = "Bamanankan" : LanguageLocation(64) = "" LanguageCode(64) = 0x1000 : LanguageTag(64) = "bm" LanguageName(65) = "Bamanankan (Latin)" : LanguageLocation(65) = "Mali" LanguageCode(65) = 0x1000 : LanguageTag(65) = "bm-Latn-ML" LanguageName(66) = "Bangla" : LanguageLocation(66) = "" LanguageCode(66) = 0x0045 : LanguageTag(66) = "bn" LanguageName(67) = "Bangla" : LanguageLocation(67) = "Bangladesh" LanguageCode(67) = 0x0845 : LanguageTag(67) = "bn-BD" LanguageName(68) = "Bangla" : LanguageLocation(68) = "India" LanguageCode(68) = 0x0445 : LanguageTag(68) = "bn-IN" LanguageName(69) = "Basaa" : LanguageLocation(69) = "" LanguageCode(69) = 0x1000 : LanguageTag(69) = "bas" LanguageName(70) = "Basaa" : LanguageLocation(70) = "Cameroon" LanguageCode(70) = 0x1000 : LanguageTag(70) = "bas-CM" LanguageName(71) = "Bashkir" : LanguageLocation(71) = "" LanguageCode(71) = 0x006D : LanguageTag(71) = "ba" LanguageName(72) = "Bashkir" : LanguageLocation(72) = "Russia" LanguageCode(72) = 0x046D : LanguageTag(72) = "ba-RU" LanguageName(73) = "Basque" : LanguageLocation(73) = "" LanguageCode(73) = 0x002D : LanguageTag(73) = "eu" LanguageName(74) = "Basque" : LanguageLocation(74) = "Spain" LanguageCode(74) = 0x042D : LanguageTag(74) = "eu-ES" LanguageName(75) = "Belarusian" : LanguageLocation(75) = "" LanguageCode(75) = 0x0023 : LanguageTag(75) = "be" LanguageName(76) = "Belarusian" : LanguageLocation(76) = "Belarus" LanguageCode(76) = 0x0423 : LanguageTag(76) = "be-BY" LanguageName(77) = "Bemba" : LanguageLocation(77) = "" LanguageCode(77) = 0x1000 : LanguageTag(77) = "bem" LanguageName(78) = "Bemba" : LanguageLocation(78) = "Zambia" LanguageCode(78) = 0x1000 : LanguageTag(78) = "bem-ZM" LanguageName(79) = "Bena" : LanguageLocation(79) = "" LanguageCode(79) = 0x1000 : LanguageTag(79) = "bez" LanguageName(80) = "Bena" : LanguageLocation(80) = "Tanzania" LanguageCode(80) = 0x1000 : LanguageTag(80) = "bez-TZ" LanguageName(81) = "Blin" : LanguageLocation(81) = "" LanguageCode(81) = 0x1000 : LanguageTag(81) = "byn" LanguageName(82) = "Blin" : LanguageLocation(82) = "Eritrea" LanguageCode(82) = 0x1000 : LanguageTag(82) = "byn-ER" LanguageName(83) = "Bodo" : LanguageLocation(83) = "" LanguageCode(83) = 0x1000 : LanguageTag(83) = "brx" LanguageName(84) = "Bodo" : LanguageLocation(84) = "India" LanguageCode(84) = 0x1000 : LanguageTag(84) = "brx-IN" LanguageName(85) = "Bosnian (Cyrillic)" : LanguageLocation(85) = "" LanguageCode(85) = 0x641A : LanguageTag(85) = "bs-Cyrl" LanguageName(86) = "Bosnian (Cyrillic)" : LanguageLocation(86) = "Bosnia and Herzegovina" LanguageCode(86) = 0x201A : LanguageTag(86) = "bs-Cyrl-BA" LanguageName(87) = "Bosnian (Latin)" : LanguageLocation(87) = "" LanguageCode(87) = 0x681A : LanguageTag(87) = "bs-Latn" LanguageName(88) = "Bosnian (Latin)" : LanguageLocation(88) = "" LanguageCode(88) = 0x781A : LanguageTag(88) = "bs" LanguageName(89) = "Bosnian (Latin)" : LanguageLocation(89) = "Bosnia and Herzegovina" LanguageCode(89) = 0x141A : LanguageTag(89) = "bs-Latn-BA" LanguageName(90) = "Breton" : LanguageLocation(90) = "" LanguageCode(90) = 0x007E : LanguageTag(90) = "br" LanguageName(91) = "Breton" : LanguageLocation(91) = "France" LanguageCode(91) = 0x047E : LanguageTag(91) = "br-FR" LanguageName(92) = "Bulgarian" : LanguageLocation(92) = "" LanguageCode(92) = 0x0002 : LanguageTag(92) = "bg" LanguageName(93) = "Bulgarian" : LanguageLocation(93) = "Bulgaria" LanguageCode(93) = 0x0402 : LanguageTag(93) = "bg-BG" LanguageName(94) = "Burmese" : LanguageLocation(94) = "" LanguageCode(94) = 0x0055 : LanguageTag(94) = "my" LanguageName(95) = "Burmese" : LanguageLocation(95) = "Myanmar" LanguageCode(95) = 0x0455 : LanguageTag(95) = "my-MM" LanguageName(96) = "Catalan" : LanguageLocation(96) = "" LanguageCode(96) = 0x0003 : LanguageTag(96) = "ca" LanguageName(97) = "Catalan" : LanguageLocation(97) = "Andorra" LanguageCode(97) = 0x1000 : LanguageTag(97) = "ca-AD" LanguageName(98) = "Catalan" : LanguageLocation(98) = "France" LanguageCode(98) = 0x1000 : LanguageTag(98) = "ca-FR" LanguageName(99) = "Catalan" : LanguageLocation(99) = "Italy" LanguageCode(99) = 0x1000 : LanguageTag(99) = "ca-IT" LanguageName(100) = "Catalan" : LanguageLocation(100) = "Spain" LanguageCode(100) = 0x0403 : LanguageTag(100) = "ca-ES" LanguageName(101) = "Central Atlas Tamazight (Latin)" : LanguageLocation(101) = "Morocco" LanguageCode(101) = 0x1000 : LanguageTag(101) = "tzm-Latn-MA" LanguageName(102) = "Central Kurdish" : LanguageLocation(102) = "" LanguageCode(102) = 0x0092 : LanguageTag(102) = "ku" LanguageName(103) = "Central Kurdish" : LanguageLocation(103) = "" LanguageCode(103) = 0x7c92 : LanguageTag(103) = "ku-Arab" LanguageName(104) = "Central Kurdish" : LanguageLocation(104) = "Iraq" LanguageCode(104) = 0x0492 : LanguageTag(104) = "ku-Arab-IQ" LanguageName(105) = "Chechen" : LanguageLocation(105) = "Russia" LanguageCode(105) = 0x1000 : LanguageTag(105) = "cd-RU" LanguageName(106) = "Cherokee" : LanguageLocation(106) = "" LanguageCode(106) = 0x005C : LanguageTag(106) = "chr" LanguageName(107) = "Cherokee" : LanguageLocation(107) = "" LanguageCode(107) = 0x7c5C : LanguageTag(107) = "chr-Cher" LanguageName(108) = "Cherokee" : LanguageLocation(108) = "United States" LanguageCode(108) = 0x045C : LanguageTag(108) = "chr-Cher-US" LanguageName(109) = "Chiga" : LanguageLocation(109) = "" LanguageCode(109) = 0x1000 : LanguageTag(109) = "cgg" LanguageName(110) = "Chiga" : LanguageLocation(110) = "Uganda" LanguageCode(110) = 0x1000 : LanguageTag(110) = "cgg-UG" LanguageName(111) = "Chinese (Simplified)" : LanguageLocation(111) = "" LanguageCode(111) = 0x0004 : LanguageTag(111) = "zh-Hans" LanguageName(112) = "Chinese (Simplified)" : LanguageLocation(112) = "" LanguageCode(112) = 0x7804 : LanguageTag(112) = "zh" LanguageName(113) = "Chinese (Simplified)" : LanguageLocation(113) = "People's Republic of China" LanguageCode(113) = 0x0804 : LanguageTag(113) = "zh-CN" LanguageName(114) = "Chinese (Simplified)" : LanguageLocation(114) = "Singapore" LanguageCode(114) = 0x1004 : LanguageTag(114) = "zh-SG" LanguageName(115) = "Chinese (Traditional)" : LanguageLocation(115) = "" LanguageCode(115) = 0x7C04 : LanguageTag(115) = "zh-Hant" LanguageName(116) = "Chinese (Traditional)" : LanguageLocation(116) = "Hong Kong S.A.R." LanguageCode(116) = 0x0C04 : LanguageTag(116) = "zh-HK" LanguageName(117) = "Chinese (Traditional)" : LanguageLocation(117) = "Macao S.A.R." LanguageCode(117) = 0x1404 : LanguageTag(117) = "zh-MO" LanguageName(118) = "Chinese (Traditional)" : LanguageLocation(118) = "Taiwan" LanguageCode(118) = 0x0404 : LanguageTag(118) = "zh-TW" LanguageName(119) = "Church Slavic" : LanguageLocation(119) = "Russia" LanguageCode(119) = 0x1000 : LanguageTag(119) = "cu-RU" LanguageName(120) = "Congo Swahili" : LanguageLocation(120) = "" LanguageCode(120) = 0x1000 : LanguageTag(120) = "swc" LanguageName(121) = "Congo Swahili" : LanguageLocation(121) = "Congo DRC" LanguageCode(121) = 0x1000 : LanguageTag(121) = "swc-CD" LanguageName(122) = "Cornish" : LanguageLocation(122) = "" LanguageCode(122) = 0x1000 : LanguageTag(122) = "kw" LanguageName(123) = "Cornish" : LanguageLocation(123) = "United Kingdom" LanguageCode(123) = 0x1000 : LanguageTag(123) = "kw-GB" LanguageName(124) = "Corsican" : LanguageLocation(124) = "" LanguageCode(124) = 0x0083 : LanguageTag(124) = "co" LanguageName(125) = "Corsican" : LanguageLocation(125) = "France" LanguageCode(125) = 0x0483 : LanguageTag(125) = "co-FR" LanguageName(126) = "Croatian" : LanguageLocation(126) = "" LanguageCode(126) = 0x001A : LanguageTag(126) = "bs, hr, or sr" LanguageName(127) = "Croatian" : LanguageLocation(127) = "Croatia" LanguageCode(127) = 0x041A : LanguageTag(127) = "hr-HR" LanguageName(128) = "Croatian (Latin)" : LanguageLocation(128) = "Bosnia and Herzegovina" LanguageCode(128) = 0x101A : LanguageTag(128) = "hr-BA" LanguageName(129) = "Czech" : LanguageLocation(129) = "" LanguageCode(129) = 0x0005 : LanguageTag(129) = "cs" LanguageName(130) = "Czech" : LanguageLocation(130) = "Czech Republic" LanguageCode(130) = 0x0405 : LanguageTag(130) = "cs-CZ" LanguageName(131) = "Danish" : LanguageLocation(131) = "" LanguageCode(131) = 0x0006 : LanguageTag(131) = "da" LanguageName(132) = "Danish" : LanguageLocation(132) = "Denmark" LanguageCode(132) = 0x0406 : LanguageTag(132) = "da-DK" LanguageName(133) = "Danish" : LanguageLocation(133) = "Greenland" LanguageCode(133) = 0x1000 : LanguageTag(133) = "da-GL" LanguageName(134) = "Dari" : LanguageLocation(134) = "" LanguageCode(134) = 0x008C : LanguageTag(134) = "prs" LanguageName(135) = "Dari" : LanguageLocation(135) = "Afghanistan" LanguageCode(135) = 0x048C : LanguageTag(135) = "prs-AF" LanguageName(136) = "Divehi" : LanguageLocation(136) = "" LanguageCode(136) = 0x0065 : LanguageTag(136) = "dv" LanguageName(137) = "Divehi" : LanguageLocation(137) = "Maldives" LanguageCode(137) = 0x0465 : LanguageTag(137) = "dv-MV" LanguageName(138) = "Duala" : LanguageLocation(138) = "" LanguageCode(138) = 0x1000 : LanguageTag(138) = "dua" LanguageName(139) = "Duala" : LanguageLocation(139) = "Cameroon" LanguageCode(139) = 0x1000 : LanguageTag(139) = "dua-CM" LanguageName(140) = "Dutch" : LanguageLocation(140) = "" LanguageCode(140) = 0x0013 : LanguageTag(140) = "nl" LanguageName(141) = "Dutch" : LanguageLocation(141) = "Aruba" LanguageCode(141) = 0x1000 : LanguageTag(141) = "nl-AW" LanguageName(142) = "Dutch" : LanguageLocation(142) = "Belgium" LanguageCode(142) = 0x0813 : LanguageTag(142) = "nl-BE" LanguageName(143) = "Dutch" : LanguageLocation(143) = "Bonaire, Sint Eustatius and Saba" LanguageCode(143) = 0x1000 : LanguageTag(143) = "nl-BQ" LanguageName(144) = "Dutch" : LanguageLocation(144) = "Curaçao" LanguageCode(144) = 0x1000 : LanguageTag(144) = "nl-CW" LanguageName(145) = "Dutch" : LanguageLocation(145) = "Netherlands" LanguageCode(145) = 0x0413 : LanguageTag(145) = "nl-NL" LanguageName(146) = "Dutch" : LanguageLocation(146) = "Sint Maarten" LanguageCode(146) = 0x1000 : LanguageTag(146) = "nl-SX" LanguageName(147) = "Dutch" : LanguageLocation(147) = "Suriname" LanguageCode(147) = 0x1000 : LanguageTag(147) = "nl-SR" LanguageName(148) = "Dzongkha" : LanguageLocation(148) = "" LanguageCode(148) = 0x1000 : LanguageTag(148) = "dz" LanguageName(149) = "Dzongkha" : LanguageLocation(149) = "Bhutan" LanguageCode(149) = 0x0C51 : LanguageTag(149) = "dz-BT" LanguageName(150) = "Embu" : LanguageLocation(150) = "" LanguageCode(150) = 0x1000 : LanguageTag(150) = "ebu" LanguageName(151) = "Embu" : LanguageLocation(151) = "Kenya" LanguageCode(151) = 0x1000 : LanguageTag(151) = "ebu-KE" LanguageName(152) = "English" : LanguageLocation(152) = "" LanguageCode(152) = 0x0009 : LanguageTag(152) = "en" LanguageName(153) = "English" : LanguageLocation(153) = "American Samoa" LanguageCode(153) = 0x1000 : LanguageTag(153) = "en-AS" LanguageName(154) = "English" : LanguageLocation(154) = "Anguilla" LanguageCode(154) = 0x1000 : LanguageTag(154) = "en-AI" LanguageName(155) = "English" : LanguageLocation(155) = "Antigua and Barbuda" LanguageCode(155) = 0x1000 : LanguageTag(155) = "en-AG" LanguageName(156) = "English" : LanguageLocation(156) = "Australia" LanguageCode(156) = 0x0C09 : LanguageTag(156) = "en-AU" LanguageName(157) = "English" : LanguageLocation(157) = "Austria" LanguageCode(157) = 0x1000 : LanguageTag(157) = "en-AT" LanguageName(158) = "English" : LanguageLocation(158) = "Bahamas" LanguageCode(158) = 0x1000 : LanguageTag(158) = "en-BS" LanguageName(159) = "English" : LanguageLocation(159) = "Barbados" LanguageCode(159) = 0x1000 : LanguageTag(159) = "en-BB" LanguageName(160) = "English" : LanguageLocation(160) = "Belgium" LanguageCode(160) = 0x1000 : LanguageTag(160) = "en-BE" LanguageName(161) = "English" : LanguageLocation(161) = "Belize" LanguageCode(161) = 0x2809 : LanguageTag(161) = "en-BZ" LanguageName(162) = "English" : LanguageLocation(162) = "Bermuda" LanguageCode(162) = 0x1000 : LanguageTag(162) = "en-BM" LanguageName(163) = "English" : LanguageLocation(163) = "Botswana" LanguageCode(163) = 0x1000 : LanguageTag(163) = "en-BW" LanguageName(164) = "English" : LanguageLocation(164) = "British Indian Ocean Territory" LanguageCode(164) = 0x1000 : LanguageTag(164) = "en-IO" LanguageName(165) = "English" : LanguageLocation(165) = "British Virgin Islands" LanguageCode(165) = 0x1000 : LanguageTag(165) = "en-VG" LanguageName(166) = "English" : LanguageLocation(166) = "Burundi" LanguageCode(166) = 0x1000 : LanguageTag(166) = "en-BI" LanguageName(167) = "English" : LanguageLocation(167) = "Cameroon" LanguageCode(167) = 0x1000 : LanguageTag(167) = "en-CM" LanguageName(168) = "English" : LanguageLocation(168) = "Canada" LanguageCode(168) = 0x1009 : LanguageTag(168) = "en-CA" LanguageName(169) = "English" : LanguageLocation(169) = "Caribbean" LanguageCode(169) = 0x2409 : LanguageTag(169) = "en-029" LanguageName(170) = "English" : LanguageLocation(170) = "Cayman Islands" LanguageCode(170) = 0x1000 : LanguageTag(170) = "en-KY" LanguageName(171) = "English" : LanguageLocation(171) = "Christmas Island" LanguageCode(171) = 0x1000 : LanguageTag(171) = "en-CX" LanguageName(172) = "English" : LanguageLocation(172) = "Cocos [Keeling] Islands" LanguageCode(172) = 0x1000 : LanguageTag(172) = "en-CC" LanguageName(173) = "English" : LanguageLocation(173) = "Cook Islands" LanguageCode(173) = 0x1000 : LanguageTag(173) = "en-CK" LanguageName(174) = "English" : LanguageLocation(174) = "Cyprus" LanguageCode(174) = 0x1000 : LanguageTag(174) = "en-CY" LanguageName(175) = "English" : LanguageLocation(175) = "Denmark" LanguageCode(175) = 0x1000 : LanguageTag(175) = "en-DK" LanguageName(176) = "English" : LanguageLocation(176) = "Dominica" LanguageCode(176) = 0x1000 : LanguageTag(176) = "en-DM" LanguageName(177) = "English" : LanguageLocation(177) = "Eritrea" LanguageCode(177) = 0x1000 : LanguageTag(177) = "en-ER" LanguageName(178) = "English" : LanguageLocation(178) = "Europe" LanguageCode(178) = 0x1000 : LanguageTag(178) = "en-150" LanguageName(179) = "English" : LanguageLocation(179) = "Falkland Islands" LanguageCode(179) = 0x1000 : LanguageTag(179) = "en-FK" LanguageName(180) = "English" : LanguageLocation(180) = "Finland" LanguageCode(180) = 0x1000 : LanguageTag(180) = "en-FI" LanguageName(181) = "English" : LanguageLocation(181) = "Fiji" LanguageCode(181) = 0x1000 : LanguageTag(181) = "en-FJ" LanguageName(182) = "English" : LanguageLocation(182) = "Gambia" LanguageCode(182) = 0x1000 : LanguageTag(182) = "en-GM" LanguageName(183) = "English" : LanguageLocation(183) = "Germany" LanguageCode(183) = 0x1000 : LanguageTag(183) = "en-DE" LanguageName(184) = "English" : LanguageLocation(184) = "Ghana" LanguageCode(184) = 0x1000 : LanguageTag(184) = "en-GH" LanguageName(185) = "English" : LanguageLocation(185) = "Gibraltar" LanguageCode(185) = 0x1000 : LanguageTag(185) = "en-GI" LanguageName(186) = "English" : LanguageLocation(186) = "Grenada" LanguageCode(186) = 0x1000 : LanguageTag(186) = "en-GD" LanguageName(187) = "English" : LanguageLocation(187) = "Guam" LanguageCode(187) = 0x1000 : LanguageTag(187) = "en-GU" LanguageName(188) = "English" : LanguageLocation(188) = "Guernsey" LanguageCode(188) = 0x1000 : LanguageTag(188) = "en-GG" LanguageName(189) = "English" : LanguageLocation(189) = "Guyana" LanguageCode(189) = 0x1000 : LanguageTag(189) = "en-GY" LanguageName(190) = "English" : LanguageLocation(190) = "Hong Kong" LanguageCode(190) = 0x3C09 : LanguageTag(190) = "en-HK" LanguageName(191) = "English" : LanguageLocation(191) = "India" LanguageCode(191) = 0x4009 : LanguageTag(191) = "en-IN" LanguageName(192) = "English" : LanguageLocation(192) = "Ireland" LanguageCode(192) = 0x1809 : LanguageTag(192) = "en-IE" LanguageName(193) = "English" : LanguageLocation(193) = "Isle of Man" LanguageCode(193) = 0x1000 : LanguageTag(193) = "en-IM" LanguageName(194) = "English" : LanguageLocation(194) = "Israel" LanguageCode(194) = 0x1000 : LanguageTag(194) = "en-IL" LanguageName(195) = "English" : LanguageLocation(195) = "Jamaica" LanguageCode(195) = 0x2009 : LanguageTag(195) = "en-JM" LanguageName(196) = "English" : LanguageLocation(196) = "Jersey" LanguageCode(196) = 0x1000 : LanguageTag(196) = "en-JE" LanguageName(197) = "English" : LanguageLocation(197) = "Kenya" LanguageCode(197) = 0x1000 : LanguageTag(197) = "en-KE" LanguageName(198) = "English" : LanguageLocation(198) = "Kiribati" LanguageCode(198) = 0x1000 : LanguageTag(198) = "en-KI" LanguageName(199) = "English" : LanguageLocation(199) = "Lesotho" LanguageCode(199) = 0x1000 : LanguageTag(199) = "en-LS" LanguageName(200) = "English" : LanguageLocation(200) = "Liberia" LanguageCode(200) = 0x1000 : LanguageTag(200) = "en-LR" LanguageName(201) = "English" : LanguageLocation(201) = "Macao SAR" LanguageCode(201) = 0x1000 : LanguageTag(201) = "en-MO" LanguageName(202) = "English" : LanguageLocation(202) = "Madagascar" LanguageCode(202) = 0x1000 : LanguageTag(202) = "en-MG" LanguageName(203) = "English" : LanguageLocation(203) = "Malawi" LanguageCode(203) = 0x1000 : LanguageTag(203) = "en-MW" LanguageName(204) = "English" : LanguageLocation(204) = "Malaysia" LanguageCode(204) = 0x4409 : LanguageTag(204) = "en-MY" LanguageName(205) = "English" : LanguageLocation(205) = "Malta" LanguageCode(205) = 0x1000 : LanguageTag(205) = "en-MT" LanguageName(206) = "English" : LanguageLocation(206) = "Marshall Islands" LanguageCode(206) = 0x1000 : LanguageTag(206) = "en-MH" LanguageName(207) = "English" : LanguageLocation(207) = "Mauritius" LanguageCode(207) = 0x1000 : LanguageTag(207) = "en-MU" LanguageName(208) = "English" : LanguageLocation(208) = "Micronesia" LanguageCode(208) = 0x1000 : LanguageTag(208) = "en-FM" LanguageName(209) = "English" : LanguageLocation(209) = "Montserrat" LanguageCode(209) = 0x1000 : LanguageTag(209) = "en-MS" LanguageName(210) = "English" : LanguageLocation(210) = "Namibia" LanguageCode(210) = 0x1000 : LanguageTag(210) = "en-NA" LanguageName(211) = "English" : LanguageLocation(211) = "Nauru" LanguageCode(211) = 0x1000 : LanguageTag(211) = "en-NR" LanguageName(212) = "English" : LanguageLocation(212) = "Netherlands" LanguageCode(212) = 0x1000 : LanguageTag(212) = "en-NL" LanguageName(213) = "English" : LanguageLocation(213) = "New Zealand" LanguageCode(213) = 0x1409 : LanguageTag(213) = "en-NZ" LanguageName(214) = "English" : LanguageLocation(214) = "Nigeria" LanguageCode(214) = 0x1000 : LanguageTag(214) = "en-NG" LanguageName(215) = "English" : LanguageLocation(215) = "Niue" LanguageCode(215) = 0x1000 : LanguageTag(215) = "en-NU" LanguageName(216) = "English" : LanguageLocation(216) = "Norfolk Island" LanguageCode(216) = 0x1000 : LanguageTag(216) = "en-NF" LanguageName(217) = "English" : LanguageLocation(217) = "Northern Mariana Islands" LanguageCode(217) = 0x1000 : LanguageTag(217) = "en-MP" LanguageName(218) = "English" : LanguageLocation(218) = "Pakistan" LanguageCode(218) = 0x1000 : LanguageTag(218) = "en-PK" LanguageName(219) = "English" : LanguageLocation(219) = "Palau" LanguageCode(219) = 0x1000 : LanguageTag(219) = "en-PW" LanguageName(220) = "English" : LanguageLocation(220) = "Papua New Guinea" LanguageCode(220) = 0x1000 : LanguageTag(220) = "en-PG" LanguageName(221) = "English" : LanguageLocation(221) = "Pitcairn Islands" LanguageCode(221) = 0x1000 : LanguageTag(221) = "en-PN" LanguageName(222) = "English" : LanguageLocation(222) = "Puerto Rico" LanguageCode(222) = 0x1000 : LanguageTag(222) = "en-PR" LanguageName(223) = "English" : LanguageLocation(223) = "Republic of the Philippines" LanguageCode(223) = 0x3409 : LanguageTag(223) = "en-PH" LanguageName(224) = "English" : LanguageLocation(224) = "Rwanda" LanguageCode(224) = 0x1000 : LanguageTag(224) = "en-RW" LanguageName(225) = "English" : LanguageLocation(225) = "Saint Kitts and Nevis" LanguageCode(225) = 0x1000 : LanguageTag(225) = "en-KN" LanguageName(226) = "English" : LanguageLocation(226) = "Saint Lucia" LanguageCode(226) = 0x1000 : LanguageTag(226) = "en-LC" LanguageName(227) = "English" : LanguageLocation(227) = "Saint Vincent and the Grenadines" LanguageCode(227) = 0x1000 : LanguageTag(227) = "en-VC" LanguageName(228) = "English" : LanguageLocation(228) = "Samoa" LanguageCode(228) = 0x1000 : LanguageTag(228) = "en-WS" LanguageName(229) = "English" : LanguageLocation(229) = "Seychelles" LanguageCode(229) = 0x1000 : LanguageTag(229) = "en-SC" LanguageName(230) = "English" : LanguageLocation(230) = "Sierra Leone" LanguageCode(230) = 0x1000 : LanguageTag(230) = "en-SL" LanguageName(231) = "English" : LanguageLocation(231) = "Singapore" LanguageCode(231) = 0x4809 : LanguageTag(231) = "en-SG" LanguageName(232) = "English" : LanguageLocation(232) = "Sint Maarten" LanguageCode(232) = 0x1000 : LanguageTag(232) = "en-SX" LanguageName(233) = "English" : LanguageLocation(233) = "Slovenia" LanguageCode(233) = 0x1000 : LanguageTag(233) = "en-SI" LanguageName(234) = "English" : LanguageLocation(234) = "Solomon Islands" LanguageCode(234) = 0x1000 : LanguageTag(234) = "en-SB" LanguageName(235) = "English" : LanguageLocation(235) = "South Africa" LanguageCode(235) = 0x1C09 : LanguageTag(235) = "en-ZA" LanguageName(236) = "English" : LanguageLocation(236) = "South Sudan" LanguageCode(236) = 0x1000 : LanguageTag(236) = "en-SS" LanguageName(237) = "English" : LanguageLocation(237) = "St Helena, Ascension, Tristan da Cunha" LanguageCode(237) = 0x1000 : LanguageTag(237) = "en-SH" LanguageName(238) = "English" : LanguageLocation(238) = "Sudan" LanguageCode(238) = 0x1000 : LanguageTag(238) = "en-SD" LanguageName(239) = "English" : LanguageLocation(239) = "Swaziland" LanguageCode(239) = 0x1000 : LanguageTag(239) = "en-SZ" LanguageName(240) = "English" : LanguageLocation(240) = "Sweden" LanguageCode(240) = 0x1000 : LanguageTag(240) = "en-SE" LanguageName(241) = "English" : LanguageLocation(241) = "Switzerland" LanguageCode(241) = 0x1000 : LanguageTag(241) = "en-CH" LanguageName(242) = "English" : LanguageLocation(242) = "Tanzania" LanguageCode(242) = 0x1000 : LanguageTag(242) = "en-TZ" LanguageName(243) = "English" : LanguageLocation(243) = "Tokelau" LanguageCode(243) = 0x1000 : LanguageTag(243) = "en-TK" LanguageName(244) = "English" : LanguageLocation(244) = "Tonga" LanguageCode(244) = 0x1000 : LanguageTag(244) = "en-TO" LanguageName(245) = "English" : LanguageLocation(245) = "Trinidad and Tobago" LanguageCode(245) = 0x2c09 : LanguageTag(245) = "en-TT" LanguageName(246) = "English" : LanguageLocation(246) = "Turks and Caicos Islands" LanguageCode(246) = 0x1000 : LanguageTag(246) = "en-TC" LanguageName(247) = "English" : LanguageLocation(247) = "Tuvalu" LanguageCode(247) = 0x1000 : LanguageTag(247) = "en-TV" LanguageName(248) = "English" : LanguageLocation(248) = "Uganda" LanguageCode(248) = 0x1000 : LanguageTag(248) = "en-UG" LanguageName(249) = "English" : LanguageLocation(249) = "United Kingdom" LanguageCode(249) = 0x0809 : LanguageTag(249) = "en-GB" LanguageName(250) = "English" : LanguageLocation(250) = "United States" LanguageCode(250) = 0x0409 : LanguageTag(250) = "en-US" LanguageName(251) = "English" : LanguageLocation(251) = "US Minor Outlying Islands" LanguageCode(251) = 0x1000 : LanguageTag(251) = "en-UM" LanguageName(252) = "English" : LanguageLocation(252) = "US Virgin Islands" LanguageCode(252) = 0x1000 : LanguageTag(252) = "en-VI" LanguageName(253) = "English" : LanguageLocation(253) = "Vanuatu" LanguageCode(253) = 0x1000 : LanguageTag(253) = "en-VU" LanguageName(254) = "English" : LanguageLocation(254) = "World" LanguageCode(254) = 0x1000 : LanguageTag(254) = "en-001" LanguageName(255) = "English" : LanguageLocation(255) = "Zambia" LanguageCode(255) = 0x1000 : LanguageTag(255) = "en-ZM" LanguageName(256) = "English" : LanguageLocation(256) = "Zimbabwe" LanguageCode(256) = 0x3009 : LanguageTag(256) = "en-ZW" LanguageName(257) = "Esperanto" : LanguageLocation(257) = "" LanguageCode(257) = 0x1000 : LanguageTag(257) = "eo" LanguageName(258) = "Esperanto" : LanguageLocation(258) = "World" LanguageCode(258) = 0x1000 : LanguageTag(258) = "eo-001" LanguageName(259) = "Estonian" : LanguageLocation(259) = "" LanguageCode(259) = 0x0025 : LanguageTag(259) = "et" LanguageName(260) = "Estonian" : LanguageLocation(260) = "Estonia" LanguageCode(260) = 0x0425 : LanguageTag(260) = "et-EE" LanguageName(261) = "Ewe" : LanguageLocation(261) = "" LanguageCode(261) = 0x1000 : LanguageTag(261) = "ee" LanguageName(262) = "Ewe" : LanguageLocation(262) = "Ghana" LanguageCode(262) = 0x1000 : LanguageTag(262) = "ee-GH" LanguageName(263) = "Ewe" : LanguageLocation(263) = "Togo" LanguageCode(263) = 0x1000 : LanguageTag(263) = "ee-TG" LanguageName(264) = "Ewondo" : LanguageLocation(264) = "" LanguageCode(264) = 0x1000 : LanguageTag(264) = "ewo" LanguageName(265) = "Ewondo" : LanguageLocation(265) = "Cameroon" LanguageCode(265) = 0x1000 : LanguageTag(265) = "ewo-CM" LanguageName(266) = "Faroese" : LanguageLocation(266) = "" LanguageCode(266) = 0x0038 : LanguageTag(266) = "fo" LanguageName(267) = "Faroese" : LanguageLocation(267) = "Denmark" LanguageCode(267) = 0x1000 : LanguageTag(267) = "fo-DK" LanguageName(268) = "Faroese" : LanguageLocation(268) = "Faroe Islands" LanguageCode(268) = 0x0438 : LanguageTag(268) = "fo-FO" LanguageName(269) = "Filipino" : LanguageLocation(269) = "" LanguageCode(269) = 0x0064 : LanguageTag(269) = "fil" LanguageName(270) = "Filipino" : LanguageLocation(270) = "Philippines" LanguageCode(270) = 0x0464 : LanguageTag(270) = "fil-PH" LanguageName(271) = "Finnish" : LanguageLocation(271) = "" LanguageCode(271) = 0x000B : LanguageTag(271) = "fi" LanguageName(272) = "Finnish" : LanguageLocation(272) = "Finland" LanguageCode(272) = 0x040B : LanguageTag(272) = "fi-FI" LanguageName(273) = "French" : LanguageLocation(273) = "" LanguageCode(273) = 0x000C : LanguageTag(273) = "fr" LanguageName(274) = "French" : LanguageLocation(274) = "Algeria" LanguageCode(274) = 0x1000 : LanguageTag(274) = "fr-DZ" LanguageName(275) = "French" : LanguageLocation(275) = "Belgium" LanguageCode(275) = 0x080C : LanguageTag(275) = "fr-BE" LanguageName(276) = "French" : LanguageLocation(276) = "Benin" LanguageCode(276) = 0x1000 : LanguageTag(276) = "fr-BJ" LanguageName(277) = "French" : LanguageLocation(277) = "Burkina Faso" LanguageCode(277) = 0x1000 : LanguageTag(277) = "fr-BF" LanguageName(278) = "French" : LanguageLocation(278) = "Burundi" LanguageCode(278) = 0x1000 : LanguageTag(278) = "fr-BI" LanguageName(279) = "French" : LanguageLocation(279) = "Cameroon" LanguageCode(279) = 0x2c0C : LanguageTag(279) = "fr-CM" LanguageName(280) = "French" : LanguageLocation(280) = "Canada" LanguageCode(280) = 0x0c0C : LanguageTag(280) = "fr-CA" LanguageName(281) = "French" : LanguageLocation(281) = "Central African Republic" LanguageCode(281) = 0x1000 : LanguageTag(281) = "fr-CF" LanguageName(282) = "French" : LanguageLocation(282) = "Chad" LanguageCode(282) = 0x1000 : LanguageTag(282) = "fr-TD" LanguageName(283) = "French" : LanguageLocation(283) = "Comoros" LanguageCode(283) = 0x1000 : LanguageTag(283) = "fr-KM" LanguageName(284) = "French" : LanguageLocation(284) = "Congo" LanguageCode(284) = 0x1000 : LanguageTag(284) = "fr-CG" LanguageName(285) = "French" : LanguageLocation(285) = "Congo, DRC" LanguageCode(285) = 0x240C : LanguageTag(285) = "fr-CD" LanguageName(286) = "French" : LanguageLocation(286) = "Côte d'Ivoire" LanguageCode(286) = 0x300C : LanguageTag(286) = "fr-CI" LanguageName(287) = "French" : LanguageLocation(287) = "Djibouti" LanguageCode(287) = 0x1000 : LanguageTag(287) = "fr-DJ" LanguageName(288) = "French" : LanguageLocation(288) = "Equatorial Guinea" LanguageCode(288) = 0x1000 : LanguageTag(288) = "fr-GQ" LanguageName(289) = "French" : LanguageLocation(289) = "France" LanguageCode(289) = 0x040C : LanguageTag(289) = "fr-FR" LanguageName(290) = "French" : LanguageLocation(290) = "French Guiana" LanguageCode(290) = 0x1000 : LanguageTag(290) = "fr-GF" LanguageName(291) = "French" : LanguageLocation(291) = "French Polynesia" LanguageCode(291) = 0x1000 : LanguageTag(291) = "fr-PF" LanguageName(292) = "French" : LanguageLocation(292) = "Gabon" LanguageCode(292) = 0x1000 : LanguageTag(292) = "fr-GA" LanguageName(293) = "French" : LanguageLocation(293) = "Guadeloupe" LanguageCode(293) = 0x1000 : LanguageTag(293) = "fr-GP" LanguageName(294) = "French" : LanguageLocation(294) = "Guinea" LanguageCode(294) = 0x1000 : LanguageTag(294) = "fr-GN" LanguageName(295) = "French" : LanguageLocation(295) = "Haiti" LanguageCode(295) = 0x3c0C : LanguageTag(295) = "fr-HT" LanguageName(296) = "French" : LanguageLocation(296) = "Luxembourg" LanguageCode(296) = 0x140C : LanguageTag(296) = "fr-LU" LanguageName(297) = "French" : LanguageLocation(297) = "Madagascar" LanguageCode(297) = 0x1000 : LanguageTag(297) = "fr-MG" LanguageName(298) = "French" : LanguageLocation(298) = "Mali" LanguageCode(298) = 0x340C : LanguageTag(298) = "fr-ML" LanguageName(299) = "French" : LanguageLocation(299) = "Martinique" LanguageCode(299) = 0x1000 : LanguageTag(299) = "fr-MQ" LanguageName(300) = "French" : LanguageLocation(300) = "Mauritania" LanguageCode(300) = 0x1000 : LanguageTag(300) = "fr-MR" LanguageName(301) = "French" : LanguageLocation(301) = "Mauritius" LanguageCode(301) = 0x1000 : LanguageTag(301) = "fr-MU" LanguageName(302) = "French" : LanguageLocation(302) = "Mayotte" LanguageCode(302) = 0x1000 : LanguageTag(302) = "fr-YT" LanguageName(303) = "French" : LanguageLocation(303) = "Morocco" LanguageCode(303) = 0x380C : LanguageTag(303) = "fr-MA" LanguageName(304) = "French" : LanguageLocation(304) = "New Caledonia" LanguageCode(304) = 0x1000 : LanguageTag(304) = "fr-NC" LanguageName(305) = "French" : LanguageLocation(305) = "Niger" LanguageCode(305) = 0x1000 : LanguageTag(305) = "fr-NE" LanguageName(306) = "French" : LanguageLocation(306) = "Principality of Monaco" LanguageCode(306) = 0x180C : LanguageTag(306) = "fr-MC" LanguageName(307) = "French" : LanguageLocation(307) = "Reunion" LanguageCode(307) = 0x200C : LanguageTag(307) = "fr-RE" LanguageName(308) = "French" : LanguageLocation(308) = "Rwanda" LanguageCode(308) = 0x1000 : LanguageTag(308) = "fr-RW" LanguageName(309) = "French" : LanguageLocation(309) = "Saint Barthélemy" LanguageCode(309) = 0x1000 : LanguageTag(309) = "fr-BL" LanguageName(310) = "French" : LanguageLocation(310) = "Saint Martin" LanguageCode(310) = 0x1000 : LanguageTag(310) = "fr-MF" LanguageName(311) = "French" : LanguageLocation(311) = "Saint Pierre and Miquelon" LanguageCode(311) = 0x1000 : LanguageTag(311) = "fr-PM" LanguageName(312) = "French" : LanguageLocation(312) = "Senegal" LanguageCode(312) = 0x280C : LanguageTag(312) = "fr-SN" LanguageName(313) = "French" : LanguageLocation(313) = "Seychelles" LanguageCode(313) = 0x1000 : LanguageTag(313) = "fr-SC" LanguageName(314) = "French" : LanguageLocation(314) = "Switzerland" LanguageCode(314) = 0x100C : LanguageTag(314) = "fr-CH" LanguageName(315) = "French" : LanguageLocation(315) = "Syria" LanguageCode(315) = 0x1000 : LanguageTag(315) = "fr-SY" LanguageName(316) = "French" : LanguageLocation(316) = "Togo" LanguageCode(316) = 0x1000 : LanguageTag(316) = "fr-TG" LanguageName(317) = "French" : LanguageLocation(317) = "Tunisia" LanguageCode(317) = 0x1000 : LanguageTag(317) = "fr-TN" LanguageName(318) = "French" : LanguageLocation(318) = "Vanuatu" LanguageCode(318) = 0x1000 : LanguageTag(318) = "fr-VU" LanguageName(319) = "French" : LanguageLocation(319) = "Wallis and Futuna" LanguageCode(319) = 0x1000 : LanguageTag(319) = "fr-WF" LanguageName(320) = "Frisian" : LanguageLocation(320) = "" LanguageCode(320) = 0x0062 : LanguageTag(320) = "fy" LanguageName(321) = "Frisian" : LanguageLocation(321) = "Netherlands" LanguageCode(321) = 0x0462 : LanguageTag(321) = "fy-NL" LanguageName(322) = "Friulian" : LanguageLocation(322) = "" LanguageCode(322) = 0x1000 : LanguageTag(322) = "fur" LanguageName(323) = "Friulian" : LanguageLocation(323) = "Italy" LanguageCode(323) = 0x1000 : LanguageTag(323) = "fur-IT" LanguageName(324) = "Fulah" : LanguageLocation(324) = "" LanguageCode(324) = 0x0067 : LanguageTag(324) = "ff" LanguageName(325) = "Fulah" : LanguageLocation(325) = "" LanguageCode(325) = 0x7C67 : LanguageTag(325) = "ff-Latn" LanguageName(326) = "Fulah" : LanguageLocation(326) = "Cameroon" LanguageCode(326) = 0x1000 : LanguageTag(326) = "ff-CM" LanguageName(327) = "Fulah" : LanguageLocation(327) = "Guinea" LanguageCode(327) = 0x1000 : LanguageTag(327) = "ff-GN" LanguageName(328) = "Fulah" : LanguageLocation(328) = "Mauritania" LanguageCode(328) = 0x1000 : LanguageTag(328) = "ff-MR" LanguageName(329) = "Fulah" : LanguageLocation(329) = "Senegal" LanguageCode(329) = 0x0867 : LanguageTag(329) = "ff-Latn-SN" LanguageName(330) = "Galician" : LanguageLocation(330) = "" LanguageCode(330) = 0x0056 : LanguageTag(330) = "gl" LanguageName(331) = "Galician" : LanguageLocation(331) = "Spain" LanguageCode(331) = 0x0456 : LanguageTag(331) = "gl-ES" LanguageName(332) = "Ganda" : LanguageLocation(332) = "" LanguageCode(332) = 0x1000 : LanguageTag(332) = "lg" LanguageName(333) = "Ganda" : LanguageLocation(333) = "Uganda" LanguageCode(333) = 0x1000 : LanguageTag(333) = "lg-UG" LanguageName(334) = "Georgian" : LanguageLocation(334) = "" LanguageCode(334) = 0x0037 : LanguageTag(334) = "ka" LanguageName(335) = "Georgian" : LanguageLocation(335) = "Georgia" LanguageCode(335) = 0x0437 : LanguageTag(335) = "ka-GE" LanguageName(336) = "German" : LanguageLocation(336) = "" LanguageCode(336) = 0x0007 : LanguageTag(336) = "de" LanguageName(337) = "German" : LanguageLocation(337) = "Austria" LanguageCode(337) = 0x0C07 : LanguageTag(337) = "de-AT" LanguageName(338) = "German" : LanguageLocation(338) = "Belgium" LanguageCode(338) = 0x1000 : LanguageTag(338) = "de-BE" LanguageName(339) = "German" : LanguageLocation(339) = "Germany" LanguageCode(339) = 0x0407 : LanguageTag(339) = "de-DE" LanguageName(340) = "German" : LanguageLocation(340) = "Italy" LanguageCode(340) = 0x1000 : LanguageTag(340) = "de-IT" LanguageName(341) = "German" : LanguageLocation(341) = "Liechtenstein" LanguageCode(341) = 0x1407 : LanguageTag(341) = "de-LI" LanguageName(342) = "German" : LanguageLocation(342) = "Luxembourg" LanguageCode(342) = 0x1007 : LanguageTag(342) = "de-LU" LanguageName(343) = "German" : LanguageLocation(343) = "Switzerland" LanguageCode(343) = 0x0807 : LanguageTag(343) = "de-CH" LanguageName(344) = "Greek" : LanguageLocation(344) = "" LanguageCode(344) = 0x0008 : LanguageTag(344) = "el" LanguageName(345) = "Greek" : LanguageLocation(345) = "Cyprus" LanguageCode(345) = 0x1000 : LanguageTag(345) = "el-CY" LanguageName(346) = "Greek" : LanguageLocation(346) = "Greece" LanguageCode(346) = 0x0408 : LanguageTag(346) = "el-GR" LanguageName(347) = "Greenlandic" : LanguageLocation(347) = "" LanguageCode(347) = 0x006F : LanguageTag(347) = "kl" LanguageName(348) = "Greenlandic" : LanguageLocation(348) = "Greenland" LanguageCode(348) = 0x046F : LanguageTag(348) = "kl-GL" LanguageName(349) = "Guarani" : LanguageLocation(349) = "" LanguageCode(349) = 0x0074 : LanguageTag(349) = "gn" LanguageName(350) = "Guarani" : LanguageLocation(350) = "Paraguay" LanguageCode(350) = 0x0474 : LanguageTag(350) = "gn-PY" LanguageName(351) = "Gujarati" : LanguageLocation(351) = "" LanguageCode(351) = 0x0047 : LanguageTag(351) = "gu" LanguageName(352) = "Gujarati" : LanguageLocation(352) = "India" LanguageCode(352) = 0x0447 : LanguageTag(352) = "gu-IN" LanguageName(353) = "Gusii" : LanguageLocation(353) = "" LanguageCode(353) = 0x1000 : LanguageTag(353) = "guz" LanguageName(354) = "Gusii" : LanguageLocation(354) = "Kenya" LanguageCode(354) = 0x1000 : LanguageTag(354) = "guz-KE" LanguageName(355) = "Hausa (Latin)" : LanguageLocation(355) = "" LanguageCode(355) = 0x0068 : LanguageTag(355) = "ha" LanguageName(356) = "Hausa (Latin)" : LanguageLocation(356) = "" LanguageCode(356) = 0x7C68 : LanguageTag(356) = "ha-Latn" LanguageName(357) = "Hausa (Latin)" : LanguageLocation(357) = "Ghana" LanguageCode(357) = 0x1000 : LanguageTag(357) = "ha-Latn-GH" LanguageName(358) = "Hausa (Latin)" : LanguageLocation(358) = "Niger" LanguageCode(358) = 0x1000 : LanguageTag(358) = "ha-Latn-NE" LanguageName(359) = "Hausa (Latin)" : LanguageLocation(359) = "Nigeria" LanguageCode(359) = 0x0468 : LanguageTag(359) = "ha-Latn-NG" LanguageName(360) = "Hawaiian" : LanguageLocation(360) = "" LanguageCode(360) = 0x0075 : LanguageTag(360) = "haw" LanguageName(361) = "Hawaiian" : LanguageLocation(361) = "United States" LanguageCode(361) = 0x0475 : LanguageTag(361) = "haw-US" LanguageName(362) = "Hebrew" : LanguageLocation(362) = "" LanguageCode(362) = 0x000D : LanguageTag(362) = "he" LanguageName(363) = "Hebrew" : LanguageLocation(363) = "Israel" LanguageCode(363) = 0x040D : LanguageTag(363) = "he-IL" LanguageName(364) = "Hindi" : LanguageLocation(364) = "" LanguageCode(364) = 0x0039 : LanguageTag(364) = "hi" LanguageName(365) = "Hindi" : LanguageLocation(365) = "India" LanguageCode(365) = 0x0439 : LanguageTag(365) = "hi-IN" LanguageName(366) = "Hungarian" : LanguageLocation(366) = "" LanguageCode(366) = 0x000E : LanguageTag(366) = "hu" LanguageName(367) = "Hungarian" : LanguageLocation(367) = "Hungary" LanguageCode(367) = 0x040E : LanguageTag(367) = "hu-HU" LanguageName(368) = "Icelandic" : LanguageLocation(368) = "" LanguageCode(368) = 0x000F : LanguageTag(368) = "is" LanguageName(369) = "Icelandic" : LanguageLocation(369) = "Iceland" LanguageCode(369) = 0x040F : LanguageTag(369) = "is-IS" LanguageName(370) = "Igbo" : LanguageLocation(370) = "" LanguageCode(370) = 0x0070 : LanguageTag(370) = "ig" LanguageName(371) = "Igbo" : LanguageLocation(371) = "Nigeria" LanguageCode(371) = 0x0470 : LanguageTag(371) = "ig-NG" LanguageName(372) = "Indonesian" : LanguageLocation(372) = "" LanguageCode(372) = 0x0021 : LanguageTag(372) = "id" LanguageName(373) = "Indonesian" : LanguageLocation(373) = "Indonesia" LanguageCode(373) = 0x0421 : LanguageTag(373) = "id-ID" LanguageName(374) = "Interlingua" : LanguageLocation(374) = "" LanguageCode(374) = 0x1000 : LanguageTag(374) = "ia" LanguageName(375) = "Interlingua" : LanguageLocation(375) = "France" LanguageCode(375) = 0x1000 : LanguageTag(375) = "ia-FR" LanguageName(376) = "Interlingua" : LanguageLocation(376) = "World" LanguageCode(376) = 0x1000 : LanguageTag(376) = "ia-001" LanguageName(377) = "Inuktitut (Latin)" : LanguageLocation(377) = "" LanguageCode(377) = 0x005D : LanguageTag(377) = "iu" LanguageName(378) = "Inuktitut (Latin)" : LanguageLocation(378) = "" LanguageCode(378) = 0x7C5D : LanguageTag(378) = "iu-Latn" LanguageName(379) = "Inuktitut (Latin)" : LanguageLocation(379) = "Canada" LanguageCode(379) = 0x085D : LanguageTag(379) = "iu-Latn-CA" LanguageName(380) = "Inuktitut (Syllabics)" : LanguageLocation(380) = "" LanguageCode(380) = 0x785D : LanguageTag(380) = "iu-Cans" LanguageName(381) = "Inuktitut (Syllabics)" : LanguageLocation(381) = "Canada" LanguageCode(381) = 0x045d : LanguageTag(381) = "iu-Cans-CA" LanguageName(382) = "Irish" : LanguageLocation(382) = "" LanguageCode(382) = 0x003C : LanguageTag(382) = "ga" LanguageName(383) = "Irish" : LanguageLocation(383) = "Ireland" LanguageCode(383) = 0x083C : LanguageTag(383) = "ga-IE" LanguageName(384) = "Italian" : LanguageLocation(384) = "" LanguageCode(384) = 0x0010 : LanguageTag(384) = "it" LanguageName(385) = "Italian" : LanguageLocation(385) = "Italy" LanguageCode(385) = 0x0410 : LanguageTag(385) = "it-IT" LanguageName(386) = "Italian" : LanguageLocation(386) = "San Marino" LanguageCode(386) = 0x1000 : LanguageTag(386) = "it-SM" LanguageName(387) = "Italian" : LanguageLocation(387) = "Switzerland" LanguageCode(387) = 0x0810 : LanguageTag(387) = "it-CH" LanguageName(388) = "Italian" : LanguageLocation(388) = "Vatican City" LanguageCode(388) = 0x1000 : LanguageTag(388) = "it-VA" LanguageName(389) = "Japanese" : LanguageLocation(389) = "" LanguageCode(389) = 0x0011 : LanguageTag(389) = "ja" LanguageName(390) = "Japanese" : LanguageLocation(390) = "Japan" LanguageCode(390) = 0x0411 : LanguageTag(390) = "ja-JP" LanguageName(391) = "Javanese" : LanguageLocation(391) = "" LanguageCode(391) = 0x1000 : LanguageTag(391) = "jv" LanguageName(392) = "Javanese" : LanguageLocation(392) = "Latin" LanguageCode(392) = 0x1000 : LanguageTag(392) = "jv-Latn" LanguageName(393) = "Javanese" : LanguageLocation(393) = "Latin, Indonesia" LanguageCode(393) = 0x1000 : LanguageTag(393) = "jv-Latn-ID" LanguageName(394) = "Jola-Fonyi" : LanguageLocation(394) = "" LanguageCode(394) = 0x1000 : LanguageTag(394) = "dyo" LanguageName(395) = "Jola-Fonyi" : LanguageLocation(395) = "Senegal" LanguageCode(395) = 0x1000 : LanguageTag(395) = "dyo-SN" LanguageName(396) = "Kabuverdianu" : LanguageLocation(396) = "" LanguageCode(396) = 0x1000 : LanguageTag(396) = "kea" LanguageName(397) = "Kabuverdianu" : LanguageLocation(397) = "Cabo Verde" LanguageCode(397) = 0x1000 : LanguageTag(397) = "kea-CV" LanguageName(398) = "Kabyle" : LanguageLocation(398) = "" LanguageCode(398) = 0x1000 : LanguageTag(398) = "kab" LanguageName(399) = "Kabyle" : LanguageLocation(399) = "Algeria" LanguageCode(399) = 0x1000 : LanguageTag(399) = "kab-DZ" LanguageName(400) = "Kako" : LanguageLocation(400) = "" LanguageCode(400) = 0x1000 : LanguageTag(400) = "kkj" LanguageName(401) = "Kako" : LanguageLocation(401) = "Cameroon" LanguageCode(401) = 0x1000 : LanguageTag(401) = "kkj-CM" LanguageName(402) = "Kalenjin" : LanguageLocation(402) = "" LanguageCode(402) = 0x1000 : LanguageTag(402) = "kln" LanguageName(403) = "Kalenjin" : LanguageLocation(403) = "Kenya" LanguageCode(403) = 0x1000 : LanguageTag(403) = "kln-KE" LanguageName(404) = "Kamba" : LanguageLocation(404) = "" LanguageCode(404) = 0x1000 : LanguageTag(404) = "kam" LanguageName(405) = "Kamba" : LanguageLocation(405) = "Kenya" LanguageCode(405) = 0x1000 : LanguageTag(405) = "kam-KE" LanguageName(406) = "Kannada" : LanguageLocation(406) = "" LanguageCode(406) = 0x004B : LanguageTag(406) = "kn" LanguageName(407) = "Kannada" : LanguageLocation(407) = "India" LanguageCode(407) = 0x044B : LanguageTag(407) = "kn-IN" LanguageName(408) = "Kashmiri" : LanguageLocation(408) = "" LanguageCode(408) = 0x0060 : LanguageTag(408) = "ks" LanguageName(409) = "Kashmiri" : LanguageLocation(409) = "Perso-Arabic" LanguageCode(409) = 0x0460 : LanguageTag(409) = "ks-Arab" LanguageName(410) = "Kashmiri" : LanguageLocation(410) = "Perso-Arabic" LanguageCode(410) = 0x1000 : LanguageTag(410) = "ks-Arab-IN" LanguageName(411) = "Kazakh" : LanguageLocation(411) = "" LanguageCode(411) = 0x003F : LanguageTag(411) = "kk" LanguageName(412) = "Kazakh" : LanguageLocation(412) = "Kazakhstan" LanguageCode(412) = 0x043F : LanguageTag(412) = "kk-KZ" LanguageName(413) = "Khmer" : LanguageLocation(413) = "" LanguageCode(413) = 0x0053 : LanguageTag(413) = "km" LanguageName(414) = "Khmer" : LanguageLocation(414) = "Cambodia" LanguageCode(414) = 0x0453 : LanguageTag(414) = "km-KH" LanguageName(415) = "K'iche" : LanguageLocation(415) = "" LanguageCode(415) = 0x0086 : LanguageTag(415) = "quc" LanguageName(416) = "K'iche" : LanguageLocation(416) = "Guatemala" LanguageCode(416) = 0x0486 : LanguageTag(416) = "quc-Latn-GT" LanguageName(417) = "Kikuyu" : LanguageLocation(417) = "" LanguageCode(417) = 0x1000 : LanguageTag(417) = "ki" LanguageName(418) = "Kikuyu" : LanguageLocation(418) = "Kenya" LanguageCode(418) = 0x1000 : LanguageTag(418) = "ki-KE" LanguageName(419) = "Kinyarwanda" : LanguageLocation(419) = "" LanguageCode(419) = 0x0087 : LanguageTag(419) = "rw" LanguageName(420) = "Kinyarwanda" : LanguageLocation(420) = "Rwanda" LanguageCode(420) = 0x0487 : LanguageTag(420) = "rw-RW" LanguageName(421) = "Kiswahili" : LanguageLocation(421) = "" LanguageCode(421) = 0x0041 : LanguageTag(421) = "sw" LanguageName(422) = "Kiswahili" : LanguageLocation(422) = "Kenya" LanguageCode(422) = 0x0441 : LanguageTag(422) = "sw-KE" LanguageName(423) = "Kiswahili" : LanguageLocation(423) = "Tanzania" LanguageCode(423) = 0x1000 : LanguageTag(423) = "sw-TZ" LanguageName(424) = "Kiswahili" : LanguageLocation(424) = "Uganda" LanguageCode(424) = 0x1000 : LanguageTag(424) = "sw-UG" LanguageName(425) = "Konkani" : LanguageLocation(425) = "" LanguageCode(425) = 0x0057 : LanguageTag(425) = "kok" LanguageName(426) = "Konkani" : LanguageLocation(426) = "India" LanguageCode(426) = 0x0457 : LanguageTag(426) = "kok-IN" LanguageName(427) = "Korean" : LanguageLocation(427) = "" LanguageCode(427) = 0x0012 : LanguageTag(427) = "ko" LanguageName(428) = "Korean" : LanguageLocation(428) = "Korea" LanguageCode(428) = 0x0412 : LanguageTag(428) = "ko-KR" LanguageName(429) = "Korean" : LanguageLocation(429) = "North Korea" LanguageCode(429) = 0x1000 : LanguageTag(429) = "ko-KP" LanguageName(430) = "Koyra Chiini" : LanguageLocation(430) = "" LanguageCode(430) = 0x1000 : LanguageTag(430) = "khq" LanguageName(431) = "Koyra Chiini" : LanguageLocation(431) = "Mali" LanguageCode(431) = 0x1000 : LanguageTag(431) = "khq-ML" LanguageName(432) = "Koyraboro Senni" : LanguageLocation(432) = "" LanguageCode(432) = 0x1000 : LanguageTag(432) = "ses" LanguageName(433) = "Koyraboro Senni" : LanguageLocation(433) = "Mali" LanguageCode(433) = 0x1000 : LanguageTag(433) = "ses-ML" LanguageName(434) = "Kwasio" : LanguageLocation(434) = "" LanguageCode(434) = 0x1000 : LanguageTag(434) = "nmg" LanguageName(435) = "Kwasio" : LanguageLocation(435) = "Cameroon" LanguageCode(435) = 0x1000 : LanguageTag(435) = "nmg-CM" LanguageName(436) = "Kyrgyz" : LanguageLocation(436) = "" LanguageCode(436) = 0x0040 : LanguageTag(436) = "ky" LanguageName(437) = "Kyrgyz" : LanguageLocation(437) = "Kyrgyzstan" LanguageCode(437) = 0x0440 : LanguageTag(437) = "ky-KG" LanguageName(438) = "Kurdish" : LanguageLocation(438) = "Perso-Arabic, Iran" LanguageCode(438) = 0x1000 : LanguageTag(438) = "ku-Arab-IR" LanguageName(439) = "Lakota" : LanguageLocation(439) = "" LanguageCode(439) = 0x1000 : LanguageTag(439) = "lkt" LanguageName(440) = "Lakota" : LanguageLocation(440) = "United States" LanguageCode(440) = 0x1000 : LanguageTag(440) = "lkt-US" LanguageName(441) = "Langi" : LanguageLocation(441) = "" LanguageCode(441) = 0x1000 : LanguageTag(441) = "lag" LanguageName(442) = "Langi" : LanguageLocation(442) = "Tanzania" LanguageCode(442) = 0x1000 : LanguageTag(442) = "lag-TZ" LanguageName(443) = "Lao" : LanguageLocation(443) = "" LanguageCode(443) = 0x0054 : LanguageTag(443) = "lo" LanguageName(444) = "Lao" : LanguageLocation(444) = "Lao P.D.R." LanguageCode(444) = 0x0454 : LanguageTag(444) = "lo-LA" LanguageName(445) = "Latvian" : LanguageLocation(445) = "" LanguageCode(445) = 0x0026 : LanguageTag(445) = "lv" LanguageName(446) = "Latvian" : LanguageLocation(446) = "Latvia" LanguageCode(446) = 0x0426 : LanguageTag(446) = "lv-LV" LanguageName(447) = "Lingala" : LanguageLocation(447) = "" LanguageCode(447) = 0x1000 : LanguageTag(447) = "ln" LanguageName(448) = "Lingala" : LanguageLocation(448) = "Angola" LanguageCode(448) = 0x1000 : LanguageTag(448) = "ln-AO" LanguageName(449) = "Lingala" : LanguageLocation(449) = "Central African Republic" LanguageCode(449) = 0x1000 : LanguageTag(449) = "ln-CF" LanguageName(450) = "Lingala" : LanguageLocation(450) = "Congo" LanguageCode(450) = 0x1000 : LanguageTag(450) = "ln-CG" LanguageName(451) = "Lingala" : LanguageLocation(451) = "Congo DRC" LanguageCode(451) = 0x1000 : LanguageTag(451) = "ln-CD" LanguageName(452) = "Lithuanian" : LanguageLocation(452) = "" LanguageCode(452) = 0x0027 : LanguageTag(452) = "lt" LanguageName(453) = "Lithuanian" : LanguageLocation(453) = "Lithuania" LanguageCode(453) = 0x0427 : LanguageTag(453) = "lt-LT" LanguageName(454) = "Low German" : LanguageLocation(454) = "" LanguageCode(454) = 0x1000 : LanguageTag(454) = "nds" LanguageName(455) = "Low German" : LanguageLocation(455) = "Germany" LanguageCode(455) = 0x1000 : LanguageTag(455) = "nds-DE" LanguageName(456) = "Low German" : LanguageLocation(456) = "Netherlands" LanguageCode(456) = 0x1000 : LanguageTag(456) = "nds-NL" LanguageName(457) = "Lower Sorbian" : LanguageLocation(457) = "" LanguageCode(457) = 0x7C2E : LanguageTag(457) = "dsb" LanguageName(458) = "Lower Sorbian" : LanguageLocation(458) = "Germany" LanguageCode(458) = 0x082E : LanguageTag(458) = "dsb-DE" LanguageName(459) = "Luba-Katanga" : LanguageLocation(459) = "" LanguageCode(459) = 0x1000 : LanguageTag(459) = "lu" LanguageName(460) = "Luba-Katanga" : LanguageLocation(460) = "Congo DRC" LanguageCode(460) = 0x1000 : LanguageTag(460) = "lu-CD" LanguageName(461) = "Luo" : LanguageLocation(461) = "" LanguageCode(461) = 0x1000 : LanguageTag(461) = "luo" LanguageName(462) = "Luo" : LanguageLocation(462) = "Kenya" LanguageCode(462) = 0x1000 : LanguageTag(462) = "luo-KE" LanguageName(463) = "Luxembourgish" : LanguageLocation(463) = "" LanguageCode(463) = 0x006E : LanguageTag(463) = "lb" LanguageName(464) = "Luxembourgish" : LanguageLocation(464) = "Luxembourg" LanguageCode(464) = 0x046E : LanguageTag(464) = "lb-LU" LanguageName(465) = "Luyia" : LanguageLocation(465) = "" LanguageCode(465) = 0x1000 : LanguageTag(465) = "luy" LanguageName(466) = "Luyia" : LanguageLocation(466) = "Kenya" LanguageCode(466) = 0x1000 : LanguageTag(466) = "luy-KE" LanguageName(467) = "Macedonian" : LanguageLocation(467) = "" LanguageCode(467) = 0x002F : LanguageTag(467) = "mk" LanguageName(468) = "Macedonian" : LanguageLocation(468) = "Macedonia (Former Yugoslav Republic of Macedonia)" LanguageCode(468) = 0x042F : LanguageTag(468) = "mk-MK" LanguageName(469) = "Machame" : LanguageLocation(469) = "" LanguageCode(469) = 0x1000 : LanguageTag(469) = "jmc" LanguageName(470) = "Machame" : LanguageLocation(470) = "Tanzania" LanguageCode(470) = 0x1000 : LanguageTag(470) = "jmc-TZ" LanguageName(471) = "Makhuwa-Meetto" : LanguageLocation(471) = "" LanguageCode(471) = 0x1000 : LanguageTag(471) = "mgh" LanguageName(472) = "Makhuwa-Meetto" : LanguageLocation(472) = "Mozambique" LanguageCode(472) = 0x1000 : LanguageTag(472) = "mgh-MZ" LanguageName(473) = "Makonde" : LanguageLocation(473) = "" LanguageCode(473) = 0x1000 : LanguageTag(473) = "kde" LanguageName(474) = "Makonde" : LanguageLocation(474) = "Tanzania" LanguageCode(474) = 0x1000 : LanguageTag(474) = "kde-TZ" LanguageName(475) = "Malagasy" : LanguageLocation(475) = "" LanguageCode(475) = 0x1000 : LanguageTag(475) = "mg" LanguageName(476) = "Malagasy" : LanguageLocation(476) = "Madagascar" LanguageCode(476) = 0x1000 : LanguageTag(476) = "mg-MG" LanguageName(477) = "Malay" : LanguageLocation(477) = "" LanguageCode(477) = 0x003E : LanguageTag(477) = "ms" LanguageName(478) = "Malay" : LanguageLocation(478) = "Brunei Darussalam" LanguageCode(478) = 0x083E : LanguageTag(478) = "ms-BN" LanguageName(479) = "Malay" : LanguageLocation(479) = "Malaysia" LanguageCode(479) = 0x043E : LanguageTag(479) = "ms-MY" LanguageName(480) = "Malayalam" : LanguageLocation(480) = "" LanguageCode(480) = 0x004C : LanguageTag(480) = "ml" LanguageName(481) = "Malayalam" : LanguageLocation(481) = "India" LanguageCode(481) = 0x044C : LanguageTag(481) = "ml-IN" LanguageName(482) = "Maltese" : LanguageLocation(482) = "" LanguageCode(482) = 0x003A : LanguageTag(482) = "mt" LanguageName(483) = "Maltese" : LanguageLocation(483) = "Malta" LanguageCode(483) = 0x043A : LanguageTag(483) = "mt-MT" LanguageName(484) = "Manx" : LanguageLocation(484) = "" LanguageCode(484) = 0x1000 : LanguageTag(484) = "gv" LanguageName(485) = "Manx" : LanguageLocation(485) = "Isle of Man" LanguageCode(485) = 0x1000 : LanguageTag(485) = "gv-IM" LanguageName(486) = "Maori" : LanguageLocation(486) = "" LanguageCode(486) = 0x0081 : LanguageTag(486) = "mi" LanguageName(487) = "Maori" : LanguageLocation(487) = "New Zealand" LanguageCode(487) = 0x0481 : LanguageTag(487) = "mi-NZ" LanguageName(488) = "Mapudungun" : LanguageLocation(488) = "" LanguageCode(488) = 0x007A : LanguageTag(488) = "arn" LanguageName(489) = "Mapudungun" : LanguageLocation(489) = "Chile" LanguageCode(489) = 0x047A : LanguageTag(489) = "arn-CL" LanguageName(490) = "Marathi" : LanguageLocation(490) = "" LanguageCode(490) = 0x004E : LanguageTag(490) = "mr" LanguageName(491) = "Marathi" : LanguageLocation(491) = "India" LanguageCode(491) = 0x044E : LanguageTag(491) = "mr-IN" LanguageName(492) = "Masai" : LanguageLocation(492) = "" LanguageCode(492) = 0x1000 : LanguageTag(492) = "mas" LanguageName(493) = "Masai" : LanguageLocation(493) = "Kenya" LanguageCode(493) = 0x1000 : LanguageTag(493) = "mas-KE" LanguageName(494) = "Masai" : LanguageLocation(494) = "Tanzania" LanguageCode(494) = 0x1000 : LanguageTag(494) = "mas-TZ" LanguageName(495) = "Mazanderani" : LanguageLocation(495) = "Iran" LanguageCode(495) = 0x1000 : LanguageTag(495) = "mzn-IR" LanguageName(496) = "Meru" : LanguageLocation(496) = "" LanguageCode(496) = 0x1000 : LanguageTag(496) = "mer" LanguageName(497) = "Meru" : LanguageLocation(497) = "Kenya" LanguageCode(497) = 0x1000 : LanguageTag(497) = "mer-KE" LanguageName(498) = "Meta'" : LanguageLocation(498) = "" LanguageCode(498) = 0x1000 : LanguageTag(498) = "mgo" LanguageName(499) = "Meta'" : LanguageLocation(499) = "Cameroon" LanguageCode(499) = 0x1000 : LanguageTag(499) = "mgo-CM" LanguageName(500) = "Mohawk" : LanguageLocation(500) = "" LanguageCode(500) = 0x007C : LanguageTag(500) = "moh" LanguageName(501) = "Mohawk" : LanguageLocation(501) = "Canada" LanguageCode(501) = 0x047C : LanguageTag(501) = "moh-CA" LanguageName(502) = "Mongolian (Cyrillic)" : LanguageLocation(502) = "" LanguageCode(502) = 0x0050 : LanguageTag(502) = "mn" LanguageName(503) = "Mongolian (Cyrillic)" : LanguageLocation(503) = "" LanguageCode(503) = 0x7850 : LanguageTag(503) = "mn-Cyrl" LanguageName(504) = "Mongolian (Cyrillic)" : LanguageLocation(504) = "Mongolia" LanguageCode(504) = 0x0450 : LanguageTag(504) = "mn-MN" LanguageName(505) = "Mongolian (Traditional Mongolian)" : LanguageLocation(505) = "" LanguageCode(505) = 0x7C50 : LanguageTag(505) = "mn-Mong" LanguageName(506) = "Mongolian (Traditional Mongolian)" : LanguageLocation(506) = "People's Republic of China" LanguageCode(506) = 0x0850 : LanguageTag(506) = "mn-Mong-CN" LanguageName(507) = "Mongolian (Traditional Mongolian)" : LanguageLocation(507) = "Mongolia" LanguageCode(507) = 0x0C50 : LanguageTag(507) = "mn-Mong-MN" LanguageName(508) = "Morisyen" : LanguageLocation(508) = "" LanguageCode(508) = 0x1000 : LanguageTag(508) = "mfe" LanguageName(509) = "Morisyen" : LanguageLocation(509) = "Mauritius" LanguageCode(509) = 0x1000 : LanguageTag(509) = "mfe-MU" LanguageName(510) = "Mundang" : LanguageLocation(510) = "" LanguageCode(510) = 0x1000 : LanguageTag(510) = "mua" LanguageName(511) = "Mundang" : LanguageLocation(511) = "Cameroon" LanguageCode(511) = 0x1000 : LanguageTag(511) = "mua-CM" LanguageName(512) = "N'ko" : LanguageLocation(512) = "" LanguageCode(512) = 0x1000 : LanguageTag(512) = "nqo" LanguageName(513) = "N'ko" : LanguageLocation(513) = "Guinea" LanguageCode(513) = 0x1000 : LanguageTag(513) = "nqo-GN" LanguageName(514) = "Nama" : LanguageLocation(514) = "" LanguageCode(514) = 0x1000 : LanguageTag(514) = "naq" LanguageName(515) = "Nama" : LanguageLocation(515) = "Namibia" LanguageCode(515) = 0x1000 : LanguageTag(515) = "naq-NA" LanguageName(516) = "Nepali" : LanguageLocation(516) = "" LanguageCode(516) = 0x0061 : LanguageTag(516) = "ne" LanguageName(517) = "Nepali" : LanguageLocation(517) = "India" LanguageCode(517) = 0x0861 : LanguageTag(517) = "ne-IN" LanguageName(518) = "Nepali" : LanguageLocation(518) = "Nepal" LanguageCode(518) = 0x0461 : LanguageTag(518) = "ne-NP" LanguageName(519) = "Ngiemboon" : LanguageLocation(519) = "" LanguageCode(519) = 0x1000 : LanguageTag(519) = "nnh" LanguageName(520) = "Ngiemboon" : LanguageLocation(520) = "Cameroon" LanguageCode(520) = 0x1000 : LanguageTag(520) = "nnh-CM" LanguageName(521) = "Ngomba" : LanguageLocation(521) = "" LanguageCode(521) = 0x1000 : LanguageTag(521) = "jgo" LanguageName(522) = "Ngomba" : LanguageLocation(522) = "Cameroon" LanguageCode(522) = 0x1000 : LanguageTag(522) = "jgo-CM" LanguageName(523) = "Northern Luri" : LanguageLocation(523) = "Iraq" LanguageCode(523) = 0x1000 : LanguageTag(523) = "lrc-IQ" LanguageName(524) = "Northern Luri" : LanguageLocation(524) = "Iran" LanguageCode(524) = 0x1000 : LanguageTag(524) = "lrc-IR" LanguageName(525) = "North Ndebele" : LanguageLocation(525) = "" LanguageCode(525) = 0x1000 : LanguageTag(525) = "nd" LanguageName(526) = "North Ndebele" : LanguageLocation(526) = "Zimbabwe" LanguageCode(526) = 0x1000 : LanguageTag(526) = "nd-ZW" LanguageName(527) = "Norwegian (Bokmal)" : LanguageLocation(527) = "" LanguageCode(527) = 0x0014 : LanguageTag(527) = "no" LanguageName(528) = "Norwegian (Bokmal)" : LanguageLocation(528) = "" LanguageCode(528) = 0x7C14 : LanguageTag(528) = "nb" LanguageName(529) = "Norwegian (Bokmal)" : LanguageLocation(529) = "Norway" LanguageCode(529) = 0x0414 : LanguageTag(529) = "nb-NO" LanguageName(530) = "Norwegian (Nynorsk)" : LanguageLocation(530) = "" LanguageCode(530) = 0x7814 : LanguageTag(530) = "nn" LanguageName(531) = "Norwegian (Nynorsk)" : LanguageLocation(531) = "Norway" LanguageCode(531) = 0x0814 : LanguageTag(531) = "nn-NO" LanguageName(532) = "Norwegian Bokmål" : LanguageLocation(532) = "Svalbard and Jan Mayen" LanguageCode(532) = 0x1000 : LanguageTag(532) = "nb-SJ" LanguageName(533) = "Nuer" : LanguageLocation(533) = "" LanguageCode(533) = 0x1000 : LanguageTag(533) = "nus" LanguageName(534) = "Nuer" : LanguageLocation(534) = "Sudan" LanguageCode(534) = 0x1000 : LanguageTag(534) = "nus-SD" LanguageName(535) = "Nyankole" : LanguageLocation(535) = "" LanguageCode(535) = 0x1000 : LanguageTag(535) = "nyn" LanguageName(536) = "Nyankole" : LanguageLocation(536) = "Uganda" LanguageCode(536) = 0x1000 : LanguageTag(536) = "nyn-UG" LanguageName(537) = "Occitan" : LanguageLocation(537) = "" LanguageCode(537) = 0x0082 : LanguageTag(537) = "oc" LanguageName(538) = "Occitan" : LanguageLocation(538) = "France" LanguageCode(538) = 0x0482 : LanguageTag(538) = "oc-FR" LanguageName(539) = "Odia" : LanguageLocation(539) = "" LanguageCode(539) = 0x0048 : LanguageTag(539) = "or" LanguageName(540) = "Odia" : LanguageLocation(540) = "India" LanguageCode(540) = 0x0448 : LanguageTag(540) = "or-IN" LanguageName(541) = "Oromo" : LanguageLocation(541) = "" LanguageCode(541) = 0x0072 : LanguageTag(541) = "om" LanguageName(542) = "Oromo" : LanguageLocation(542) = "Ethiopia" LanguageCode(542) = 0x0472 : LanguageTag(542) = "om-ET" LanguageName(543) = "Oromo" : LanguageLocation(543) = "Kenya" LanguageCode(543) = 0x1000 : LanguageTag(543) = "om-KE" LanguageName(544) = "Ossetian" : LanguageLocation(544) = "" LanguageCode(544) = 0x1000 : LanguageTag(544) = "os" LanguageName(545) = "Ossetian" : LanguageLocation(545) = "Cyrillic, Georgia" LanguageCode(545) = 0x1000 : LanguageTag(545) = "os-GE" LanguageName(546) = "Ossetian" : LanguageLocation(546) = "Cyrillic, Russia" LanguageCode(546) = 0x1000 : LanguageTag(546) = "os-RU" LanguageName(547) = "Pashto" : LanguageLocation(547) = "" LanguageCode(547) = 0x0063 : LanguageTag(547) = "ps" LanguageName(548) = "Pashto" : LanguageLocation(548) = "Afghanistan" LanguageCode(548) = 0x0463 : LanguageTag(548) = "ps-AF" LanguageName(549) = "Persian" : LanguageLocation(549) = "" LanguageCode(549) = 0x0029 : LanguageTag(549) = "fa" LanguageName(550) = "Persian" : LanguageLocation(550) = "Afghanistan" LanguageCode(550) = 0x1000 : LanguageTag(550) = "fa-AF" LanguageName(551) = "Persian" : LanguageLocation(551) = "Iran" LanguageCode(551) = 0x0429 : LanguageTag(551) = "fa-IR" LanguageName(552) = "Polish" : LanguageLocation(552) = "" LanguageCode(552) = 0x0015 : LanguageTag(552) = "pl" LanguageName(553) = "Polish" : LanguageLocation(553) = "Poland" LanguageCode(553) = 0x0415 : LanguageTag(553) = "pl-PL" LanguageName(554) = "Portuguese" : LanguageLocation(554) = "" LanguageCode(554) = 0x0016 : LanguageTag(554) = "pt" LanguageName(555) = "Portuguese" : LanguageLocation(555) = "Angola" LanguageCode(555) = 0x1000 : LanguageTag(555) = "pt-AO" LanguageName(556) = "Portuguese" : LanguageLocation(556) = "Brazil" LanguageCode(556) = 0x0416 : LanguageTag(556) = "pt-BR" LanguageName(557) = "Portuguese" : LanguageLocation(557) = "Cabo Verde" LanguageCode(557) = 0x1000 : LanguageTag(557) = "pt-CV" LanguageName(558) = "Portuguese" : LanguageLocation(558) = "Equatorial Guinea" LanguageCode(558) = 0x1000 : LanguageTag(558) = "pt-GQ" LanguageName(559) = "Portuguese" : LanguageLocation(559) = "Guinea-Bissau" LanguageCode(559) = 0x1000 : LanguageTag(559) = "pt-GW" LanguageName(560) = "Portuguese" : LanguageLocation(560) = "Luxembourg" LanguageCode(560) = 0x1000 : LanguageTag(560) = "pt-LU" LanguageName(561) = "Portuguese" : LanguageLocation(561) = "Macao SAR" LanguageCode(561) = 0x1000 : LanguageTag(561) = "pt-MO" LanguageName(562) = "Portuguese" : LanguageLocation(562) = "Mozambique" LanguageCode(562) = 0x1000 : LanguageTag(562) = "pt-MZ" LanguageName(563) = "Portuguese" : LanguageLocation(563) = "Portugal" LanguageCode(563) = 0x0816 : LanguageTag(563) = "pt-PT" LanguageName(564) = "Portuguese" : LanguageLocation(564) = "São Tomé and Príncipe" LanguageCode(564) = 0x1000 : LanguageTag(564) = "pt-ST" LanguageName(565) = "Portuguese" : LanguageLocation(565) = "Switzerland" LanguageCode(565) = 0x1000 : LanguageTag(565) = "pt-CH" LanguageName(566) = "Portuguese" : LanguageLocation(566) = "Timor-Leste" LanguageCode(566) = 0x1000 : LanguageTag(566) = "pt-TL" LanguageName(567) = "Prussian" : LanguageLocation(567) = "" LanguageCode(567) = 0x1000 : LanguageTag(567) = "prg-001" LanguageName(568) = "Pseudo Language" : LanguageLocation(568) = "Pseudo locale for east Asian/complex script localization testing" LanguageCode(568) = 0x05FE : LanguageTag(568) = "qps-ploca" LanguageName(569) = "Pseudo Language" : LanguageLocation(569) = "Pseudo locale used for localization testing" LanguageCode(569) = 0x0501 : LanguageTag(569) = "qps-ploc" LanguageName(570) = "Pseudo Language" : LanguageLocation(570) = "Pseudo locale used for localization testing of mirrored locales" LanguageCode(570) = 0x09FF : LanguageTag(570) = "qps-plocm" LanguageName(571) = "Punjabi" : LanguageLocation(571) = "" LanguageCode(571) = 0x0046 : LanguageTag(571) = "pa" LanguageName(572) = "Punjabi" : LanguageLocation(572) = "" LanguageCode(572) = 0x7C46 : LanguageTag(572) = "pa-Arab" LanguageName(573) = "Punjabi" : LanguageLocation(573) = "India" LanguageCode(573) = 0x0446 : LanguageTag(573) = "pa-IN" LanguageName(574) = "Punjabi" : LanguageLocation(574) = "Islamic Republic of Pakistan" LanguageCode(574) = 0x0846 : LanguageTag(574) = "pa-Arab-PK" LanguageName(575) = "Quechua" : LanguageLocation(575) = "" LanguageCode(575) = 0x006B : LanguageTag(575) = "quz" LanguageName(576) = "Quechua" : LanguageLocation(576) = "Bolivia" LanguageCode(576) = 0x046B : LanguageTag(576) = "quz-BO" LanguageName(577) = "Quechua" : LanguageLocation(577) = "Ecuador" LanguageCode(577) = 0x086B : LanguageTag(577) = "quz-EC" LanguageName(578) = "Quechua" : LanguageLocation(578) = "Peru" LanguageCode(578) = 0x0C6B : LanguageTag(578) = "quz-PE" LanguageName(579) = "Ripuarian" : LanguageLocation(579) = "" LanguageCode(579) = 0x1000 : LanguageTag(579) = "ksh" LanguageName(580) = "Ripuarian" : LanguageLocation(580) = "Germany" LanguageCode(580) = 0x1000 : LanguageTag(580) = "ksh-DE" LanguageName(581) = "Romanian" : LanguageLocation(581) = "" LanguageCode(581) = 0x0018 : LanguageTag(581) = "ro" LanguageName(582) = "Romanian" : LanguageLocation(582) = "Moldova" LanguageCode(582) = 0x0818 : LanguageTag(582) = "ro-MD" LanguageName(583) = "Romanian" : LanguageLocation(583) = "Romania" LanguageCode(583) = 0x0418 : LanguageTag(583) = "ro-RO" LanguageName(584) = "Romansh" : LanguageLocation(584) = "" LanguageCode(584) = 0x0017 : LanguageTag(584) = "rm" LanguageName(585) = "Romansh" : LanguageLocation(585) = "Switzerland" LanguageCode(585) = 0x0417 : LanguageTag(585) = "rm-CH" LanguageName(586) = "Rombo" : LanguageLocation(586) = "" LanguageCode(586) = 0x1000 : LanguageTag(586) = "rof" LanguageName(587) = "Rombo" : LanguageLocation(587) = "Tanzania" LanguageCode(587) = 0x1000 : LanguageTag(587) = "rof-TZ" LanguageName(588) = "Rundi" : LanguageLocation(588) = "" LanguageCode(588) = 0x1000 : LanguageTag(588) = "rn" LanguageName(589) = "Rundi" : LanguageLocation(589) = "Burundi" LanguageCode(589) = 0x1000 : LanguageTag(589) = "rn-BI" LanguageName(590) = "Russian" : LanguageLocation(590) = "" LanguageCode(590) = 0x0019 : LanguageTag(590) = "ru" LanguageName(591) = "Russian" : LanguageLocation(591) = "Belarus" LanguageCode(591) = 0x1000 : LanguageTag(591) = "ru-BY" LanguageName(592) = "Russian" : LanguageLocation(592) = "Kazakhstan" LanguageCode(592) = 0x1000 : LanguageTag(592) = "ru-KZ" LanguageName(593) = "Russian" : LanguageLocation(593) = "Kyrgyzstan" LanguageCode(593) = 0x1000 : LanguageTag(593) = "ru-KG" LanguageName(594) = "Russian" : LanguageLocation(594) = "Moldova" LanguageCode(594) = 0x0819 : LanguageTag(594) = "ru-MD" LanguageName(595) = "Russian" : LanguageLocation(595) = "Russia" LanguageCode(595) = 0x0419 : LanguageTag(595) = "ru-RU" LanguageName(596) = "Russian" : LanguageLocation(596) = "Ukraine" LanguageCode(596) = 0x1000 : LanguageTag(596) = "ru-UA" LanguageName(597) = "Rwa" : LanguageLocation(597) = "" LanguageCode(597) = 0x1000 : LanguageTag(597) = "rwk" LanguageName(598) = "Rwa" : LanguageLocation(598) = "Tanzania" LanguageCode(598) = 0x1000 : LanguageTag(598) = "rwk-TZ" LanguageName(599) = "Saho" : LanguageLocation(599) = "" LanguageCode(599) = 0x1000 : LanguageTag(599) = "ssy" LanguageName(600) = "Saho" : LanguageLocation(600) = "Eritrea" LanguageCode(600) = 0x1000 : LanguageTag(600) = "ssy-ER" LanguageName(601) = "Sakha" : LanguageLocation(601) = "" LanguageCode(601) = 0x0085 : LanguageTag(601) = "sah" LanguageName(602) = "Sakha" : LanguageLocation(602) = "Russia" LanguageCode(602) = 0x0485 : LanguageTag(602) = "sah-RU" LanguageName(603) = "Samburu" : LanguageLocation(603) = "" LanguageCode(603) = 0x1000 : LanguageTag(603) = "saq" LanguageName(604) = "Samburu" : LanguageLocation(604) = "Kenya" LanguageCode(604) = 0x1000 : LanguageTag(604) = "saq-KE" LanguageName(605) = "Sami (Inari)" : LanguageLocation(605) = "" LanguageCode(605) = 0x703B : LanguageTag(605) = "smn" LanguageName(606) = "Sami (Inari)" : LanguageLocation(606) = "Finland" LanguageCode(606) = 0x243B : LanguageTag(606) = "smn-FI" LanguageName(607) = "Sami (Lule)" : LanguageLocation(607) = "" LanguageCode(607) = 0x7C3B : LanguageTag(607) = "smj" LanguageName(608) = "Sami (Lule)" : LanguageLocation(608) = "Norway" LanguageCode(608) = 0x103B : LanguageTag(608) = "smj-NO" LanguageName(609) = "Sami (Lule)" : LanguageLocation(609) = "Sweden" LanguageCode(609) = 0x143B : LanguageTag(609) = "smj-SE" LanguageName(610) = "Sami (Northern)" : LanguageLocation(610) = "" LanguageCode(610) = 0x003B : LanguageTag(610) = "se" LanguageName(611) = "Sami (Northern)" : LanguageLocation(611) = "Finland" LanguageCode(611) = 0x0C3B : LanguageTag(611) = "se-FI" LanguageName(612) = "Sami (Northern)" : LanguageLocation(612) = "Norway" LanguageCode(612) = 0x043B : LanguageTag(612) = "se-NO" LanguageName(613) = "Sami (Northern)" : LanguageLocation(613) = "Sweden" LanguageCode(613) = 0x083B : LanguageTag(613) = "se-SE" LanguageName(614) = "Sami (Skolt)" : LanguageLocation(614) = "" LanguageCode(614) = 0x743B : LanguageTag(614) = "sms" LanguageName(615) = "Sami (Skolt)" : LanguageLocation(615) = "Finland" LanguageCode(615) = 0x203B : LanguageTag(615) = "sms-FI" LanguageName(616) = "Sami (Southern)" : LanguageLocation(616) = "" LanguageCode(616) = 0x783B : LanguageTag(616) = "sma" LanguageName(617) = "Sami (Southern)" : LanguageLocation(617) = "Norway" LanguageCode(617) = 0x183B : LanguageTag(617) = "sma-NO" LanguageName(618) = "Sami (Southern)" : LanguageLocation(618) = "Sweden" LanguageCode(618) = 0x1C3B : LanguageTag(618) = "sma-SE" LanguageName(619) = "Sango" : LanguageLocation(619) = "" LanguageCode(619) = 0x1000 : LanguageTag(619) = "sg" LanguageName(620) = "Sango" : LanguageLocation(620) = "Central African Republic" LanguageCode(620) = 0x1000 : LanguageTag(620) = "sg-CF" LanguageName(621) = "Sangu" : LanguageLocation(621) = "" LanguageCode(621) = 0x1000 : LanguageTag(621) = "sbp" LanguageName(622) = "Sangu" : LanguageLocation(622) = "Tanzania" LanguageCode(622) = 0x1000 : LanguageTag(622) = "sbp-TZ" LanguageName(623) = "Sanskrit" : LanguageLocation(623) = "" LanguageCode(623) = 0x004F : LanguageTag(623) = "sa" LanguageName(624) = "Sanskrit" : LanguageLocation(624) = "India" LanguageCode(624) = 0x044F : LanguageTag(624) = "sa-IN" LanguageName(625) = "Scottish Gaelic" : LanguageLocation(625) = "" LanguageCode(625) = 0x0091 : LanguageTag(625) = "gd" LanguageName(626) = "Scottish Gaelic" : LanguageLocation(626) = "United Kingdom" LanguageCode(626) = 0x0491 : LanguageTag(626) = "gd-GB" LanguageName(627) = "Sena" : LanguageLocation(627) = "" LanguageCode(627) = 0x1000 : LanguageTag(627) = "seh" LanguageName(628) = "Sena" : LanguageLocation(628) = "Mozambique" LanguageCode(628) = 0x1000 : LanguageTag(628) = "seh-MZ" LanguageName(629) = "Serbian (Cyrillic)" : LanguageLocation(629) = "" LanguageCode(629) = 0x6C1A : LanguageTag(629) = "sr-Cyrl" LanguageName(630) = "Serbian (Cyrillic)" : LanguageLocation(630) = "Bosnia and Herzegovina" LanguageCode(630) = 0x1C1A : LanguageTag(630) = "sr-Cyrl-BA" LanguageName(631) = "Serbian (Cyrillic)" : LanguageLocation(631) = "Montenegro" LanguageCode(631) = 0x301A : LanguageTag(631) = "sr-Cyrl-ME" LanguageName(632) = "Serbian (Cyrillic)" : LanguageLocation(632) = "Serbia" LanguageCode(632) = 0x281A : LanguageTag(632) = "sr-Cyrl-RS" LanguageName(633) = "Serbian (Cyrillic)" : LanguageLocation(633) = "Serbia and Montenegro (Former)" LanguageCode(633) = 0x0C1A : LanguageTag(633) = "sr-Cyrl-CS" LanguageName(634) = "Serbian (Latin)" : LanguageLocation(634) = "" LanguageCode(634) = 0x701A : LanguageTag(634) = "sr-Latn" LanguageName(635) = "Serbian (Latin)" : LanguageLocation(635) = "" LanguageCode(635) = 0x7C1A : LanguageTag(635) = "sr" LanguageName(636) = "Serbian (Latin)" : LanguageLocation(636) = "Bosnia and Herzegovina" LanguageCode(636) = 0x181A : LanguageTag(636) = "sr-Latn-BA" LanguageName(637) = "Serbian (Latin)" : LanguageLocation(637) = "Montenegro" LanguageCode(637) = 0x2c1A : LanguageTag(637) = "sr-Latn-ME" LanguageName(638) = "Serbian (Latin)" : LanguageLocation(638) = "Serbia" LanguageCode(638) = 0x241A : LanguageTag(638) = "sr-Latn-RS" LanguageName(639) = "Serbian (Latin)" : LanguageLocation(639) = "Serbia and Montenegro (Former)" LanguageCode(639) = 0x081A : LanguageTag(639) = "sr-Latn-CS" LanguageName(640) = "Sesotho sa Leboa" : LanguageLocation(640) = "" LanguageCode(640) = 0x006C : LanguageTag(640) = "nso" LanguageName(641) = "Sesotho sa Leboa" : LanguageLocation(641) = "South Africa" LanguageCode(641) = 0x046C : LanguageTag(641) = "nso-ZA" LanguageName(642) = "Setswana" : LanguageLocation(642) = "" LanguageCode(642) = 0x0032 : LanguageTag(642) = "tn" LanguageName(643) = "Setswana" : LanguageLocation(643) = "Botswana" LanguageCode(643) = 0x0832 : LanguageTag(643) = "tn-BW" LanguageName(644) = "Setswana" : LanguageLocation(644) = "South Africa" LanguageCode(644) = 0x0432 : LanguageTag(644) = "tn-ZA" LanguageName(645) = "Shambala" : LanguageLocation(645) = "" LanguageCode(645) = 0x1000 : LanguageTag(645) = "ksb" LanguageName(646) = "Shambala" : LanguageLocation(646) = "Tanzania" LanguageCode(646) = 0x1000 : LanguageTag(646) = "ksb-TZ" LanguageName(647) = "Shona" : LanguageLocation(647) = "" LanguageCode(647) = 0x1000 : LanguageTag(647) = "sn" LanguageName(648) = "Shona" : LanguageLocation(648) = "Latin" LanguageCode(648) = 0x1000 : LanguageTag(648) = "sn-Latn" LanguageName(649) = "Shona" : LanguageLocation(649) = "Zimbabwe" LanguageCode(649) = 0x1000 : LanguageTag(649) = "sn-Latn-ZW" LanguageName(650) = "Sindhi" : LanguageLocation(650) = "" LanguageCode(650) = 0x0059 : LanguageTag(650) = "sd" LanguageName(651) = "Sindhi" : LanguageLocation(651) = "" LanguageCode(651) = 0x7C59 : LanguageTag(651) = "sd-Arab" LanguageName(652) = "Sindhi" : LanguageLocation(652) = "Islamic Republic of Pakistan" LanguageCode(652) = 0x0859 : LanguageTag(652) = "sd-Arab-PK" LanguageName(653) = "Sinhala" : LanguageLocation(653) = "" LanguageCode(653) = 0x005B : LanguageTag(653) = "si" LanguageName(654) = "Sinhala" : LanguageLocation(654) = "Sri Lanka" LanguageCode(654) = 0x045B : LanguageTag(654) = "si-LK" LanguageName(655) = "Slovak" : LanguageLocation(655) = "" LanguageCode(655) = 0x001B : LanguageTag(655) = "sk" LanguageName(656) = "Slovak" : LanguageLocation(656) = "Slovakia" LanguageCode(656) = 0x041B : LanguageTag(656) = "sk-SK" LanguageName(657) = "Slovenian" : LanguageLocation(657) = "" LanguageCode(657) = 0x0024 : LanguageTag(657) = "sl" LanguageName(658) = "Slovenian" : LanguageLocation(658) = "Slovenia" LanguageCode(658) = 0x0424 : LanguageTag(658) = "sl-SI" LanguageName(659) = "Soga" : LanguageLocation(659) = "" LanguageCode(659) = 0x1000 : LanguageTag(659) = "xog" LanguageName(660) = "Soga" : LanguageLocation(660) = "Uganda" LanguageCode(660) = 0x1000 : LanguageTag(660) = "xog-UG" LanguageName(661) = "Somali" : LanguageLocation(661) = "" LanguageCode(661) = 0x0077 : LanguageTag(661) = "so" LanguageName(662) = "Somali" : LanguageLocation(662) = "Djibouti" LanguageCode(662) = 0x1000 : LanguageTag(662) = "so-DJ" LanguageName(663) = "Somali" : LanguageLocation(663) = "Ethiopia" LanguageCode(663) = 0x1000 : LanguageTag(663) = "so-ET" LanguageName(664) = "Somali" : LanguageLocation(664) = "Kenya" LanguageCode(664) = 0x1000 : LanguageTag(664) = "so-KE" LanguageName(665) = "Somali" : LanguageLocation(665) = "Somalia" LanguageCode(665) = 0x0477 : LanguageTag(665) = "so-SO" LanguageName(666) = "Sotho" : LanguageLocation(666) = "" LanguageCode(666) = 0x0030 : LanguageTag(666) = "st" LanguageName(667) = "Sotho" : LanguageLocation(667) = "South Africa" LanguageCode(667) = 0x0430 : LanguageTag(667) = "st-ZA" LanguageName(668) = "South Ndebele" : LanguageLocation(668) = "" LanguageCode(668) = 0x1000 : LanguageTag(668) = "nr" LanguageName(669) = "South Ndebele" : LanguageLocation(669) = "South Africa" LanguageCode(669) = 0x1000 : LanguageTag(669) = "nr-ZA" LanguageName(670) = "Southern Sotho" : LanguageLocation(670) = "Lesotho" LanguageCode(670) = 0x1000 : LanguageTag(670) = "st-LS" LanguageName(671) = "Spanish" : LanguageLocation(671) = "" LanguageCode(671) = 0x000A : LanguageTag(671) = "es" LanguageName(672) = "Spanish" : LanguageLocation(672) = "Argentina" LanguageCode(672) = 0x2C0A : LanguageTag(672) = "es-AR" LanguageName(673) = "Spanish" : LanguageLocation(673) = "Belize" LanguageCode(673) = 0x1000 : LanguageTag(673) = "es-BZ" LanguageName(674) = "Spanish" : LanguageLocation(674) = "Bolivarian Republic of Venezuela" LanguageCode(674) = 0x200A : LanguageTag(674) = "es-VE" LanguageName(675) = "Spanish" : LanguageLocation(675) = "Bolivia" LanguageCode(675) = 0x400A : LanguageTag(675) = "es-BO" LanguageName(676) = "Spanish" : LanguageLocation(676) = "Brazil" LanguageCode(676) = 0x1000 : LanguageTag(676) = "es-BR" LanguageName(677) = "Spanish" : LanguageLocation(677) = "Chile" LanguageCode(677) = 0x340A : LanguageTag(677) = "es-CL" LanguageName(678) = "Spanish" : LanguageLocation(678) = "Colombia" LanguageCode(678) = 0x240A : LanguageTag(678) = "es-CO" LanguageName(679) = "Spanish" : LanguageLocation(679) = "Costa Rica" LanguageCode(679) = 0x140A : LanguageTag(679) = "es-CR" LanguageName(680) = "Spanish" : LanguageLocation(680) = "Cuba" LanguageCode(680) = 0x5c0A : LanguageTag(680) = "es-CU" LanguageName(681) = "Spanish" : LanguageLocation(681) = "Dominican Republic" LanguageCode(681) = 0x1c0A : LanguageTag(681) = "es-DO" LanguageName(682) = "Spanish" : LanguageLocation(682) = "Ecuador" LanguageCode(682) = 0x300A : LanguageTag(682) = "es-EC" LanguageName(683) = "Spanish" : LanguageLocation(683) = "El Salvador" LanguageCode(683) = 0x440A : LanguageTag(683) = "es-SV" LanguageName(684) = "Spanish" : LanguageLocation(684) = "Equatorial Guinea" LanguageCode(684) = 0x1000 : LanguageTag(684) = "es-GQ" LanguageName(685) = "Spanish" : LanguageLocation(685) = "Guatemala" LanguageCode(685) = 0x100A : LanguageTag(685) = "es-GT" LanguageName(686) = "Spanish" : LanguageLocation(686) = "Honduras" LanguageCode(686) = 0x480A : LanguageTag(686) = "es-HN" LanguageName(687) = "Spanish" : LanguageLocation(687) = "Latin America" LanguageCode(687) = 0x580A : LanguageTag(687) = "es-419" LanguageName(688) = "Spanish" : LanguageLocation(688) = "Mexico" LanguageCode(688) = 0x080A : LanguageTag(688) = "es-MX" LanguageName(689) = "Spanish" : LanguageLocation(689) = "Nicaragua" LanguageCode(689) = 0x4C0A : LanguageTag(689) = "es-NI" LanguageName(690) = "Spanish" : LanguageLocation(690) = "Panama" LanguageCode(690) = 0x180A : LanguageTag(690) = "es-PA" LanguageName(691) = "Spanish" : LanguageLocation(691) = "Paraguay" LanguageCode(691) = 0x3C0A : LanguageTag(691) = "es-PY" LanguageName(692) = "Spanish" : LanguageLocation(692) = "Peru" LanguageCode(692) = 0x280A : LanguageTag(692) = "es-PE" LanguageName(693) = "Spanish" : LanguageLocation(693) = "Philippines" LanguageCode(693) = 0x1000 : LanguageTag(693) = "es-PH" LanguageName(694) = "Spanish" : LanguageLocation(694) = "Puerto Rico" LanguageCode(694) = 0x500A : LanguageTag(694) = "es-PR" LanguageName(695) = "Spanish" : LanguageLocation(695) = "Spain" LanguageCode(695) = 0x040A : LanguageTag(695) = "es-ES_tradnl" LanguageName(696) = "Spanish" : LanguageLocation(696) = "Spain" LanguageCode(696) = 0x0c0A : LanguageTag(696) = "es-ES" LanguageName(697) = "Spanish" : LanguageLocation(697) = "United States" LanguageCode(697) = 0x540A : LanguageTag(697) = "es-US" LanguageName(698) = "Spanish" : LanguageLocation(698) = "Uruguay" LanguageCode(698) = 0x380A : LanguageTag(698) = "es-UY" LanguageName(699) = "Standard Moroccan Tamazight" : LanguageLocation(699) = "" LanguageCode(699) = 0x1000 : LanguageTag(699) = "zgh" LanguageName(700) = "Standard Moroccan Tamazight" : LanguageLocation(700) = "Morocco" LanguageCode(700) = 0x1000 : LanguageTag(700) = "zgh-Tfng-MA" LanguageName(701) = "Standard Moroccan Tamazight" : LanguageLocation(701) = "Tifinagh" LanguageCode(701) = 0x1000 : LanguageTag(701) = "zgh-Tfng" LanguageName(702) = "Swati" : LanguageLocation(702) = "" LanguageCode(702) = 0x1000 : LanguageTag(702) = "ss" LanguageName(703) = "Swati" : LanguageLocation(703) = "South Africa" LanguageCode(703) = 0x1000 : LanguageTag(703) = "ss-ZA" LanguageName(704) = "Swati" : LanguageLocation(704) = "Swaziland" LanguageCode(704) = 0x1000 : LanguageTag(704) = "ss-SZ" LanguageName(705) = "Swedish" : LanguageLocation(705) = "" LanguageCode(705) = 0x001D : LanguageTag(705) = "sv" LanguageName(706) = "Swedish" : LanguageLocation(706) = "Åland Islands" LanguageCode(706) = 0x1000 : LanguageTag(706) = "sv-AX" LanguageName(707) = "Swedish" : LanguageLocation(707) = "Finland" LanguageCode(707) = 0x081D : LanguageTag(707) = "sv-FI" LanguageName(708) = "Swedish" : LanguageLocation(708) = "Sweden" LanguageCode(708) = 0x041D : LanguageTag(708) = "sv-SE" LanguageName(709) = "Syriac" : LanguageLocation(709) = "" LanguageCode(709) = 0x005A : LanguageTag(709) = "syr" LanguageName(710) = "Syriac" : LanguageLocation(710) = "Syria" LanguageCode(710) = 0x045A : LanguageTag(710) = "syr-SY" LanguageName(711) = "Tachelhit" : LanguageLocation(711) = "" LanguageCode(711) = 0x1000 : LanguageTag(711) = "shi" LanguageName(712) = "Tachelhit" : LanguageLocation(712) = "Tifinagh" LanguageCode(712) = 0x1000 : LanguageTag(712) = "shi-Tfng" LanguageName(713) = "Tachelhit" : LanguageLocation(713) = "Tifinagh, Morocco" LanguageCode(713) = 0x1000 : LanguageTag(713) = "shi-Tfng-MA" LanguageName(714) = "Tachelhit (Latin)" : LanguageLocation(714) = "" LanguageCode(714) = 0x1000 : LanguageTag(714) = "shi-Latn" LanguageName(715) = "Tachelhit (Latin)" : LanguageLocation(715) = "Morocco" LanguageCode(715) = 0x1000 : LanguageTag(715) = "shi-Latn-MA" LanguageName(716) = "Taita" : LanguageLocation(716) = "" LanguageCode(716) = 0x1000 : LanguageTag(716) = "dav" LanguageName(717) = "Taita" : LanguageLocation(717) = "Kenya" LanguageCode(717) = 0x1000 : LanguageTag(717) = "dav-KE" LanguageName(718) = "Tajik (Cyrillic)" : LanguageLocation(718) = "" LanguageCode(718) = 0x0028 : LanguageTag(718) = "tg" LanguageName(719) = "Tajik (Cyrillic)" : LanguageLocation(719) = "" LanguageCode(719) = 0x7C28 : LanguageTag(719) = "tg-Cyrl" LanguageName(720) = "Tajik (Cyrillic)" : LanguageLocation(720) = "Tajikistan" LanguageCode(720) = 0x0428 : LanguageTag(720) = "tg-Cyrl-TJ" LanguageName(721) = "Tamazight (Latin)" : LanguageLocation(721) = "" LanguageCode(721) = 0x005F : LanguageTag(721) = "tzm" LanguageName(722) = "Tamazight (Latin)" : LanguageLocation(722) = "" LanguageCode(722) = 0x7C5F : LanguageTag(722) = "tzm-Latn" LanguageName(723) = "Tamazight (Latin)" : LanguageLocation(723) = "Algeria" LanguageCode(723) = 0x085F : LanguageTag(723) = "tzm-Latn-DZ" LanguageName(724) = "Tamil" : LanguageLocation(724) = "" LanguageCode(724) = 0x0049 : LanguageTag(724) = "ta" LanguageName(725) = "Tamil" : LanguageLocation(725) = "India" LanguageCode(725) = 0x0449 : LanguageTag(725) = "ta-IN" LanguageName(726) = "Tamil" : LanguageLocation(726) = "Malaysia" LanguageCode(726) = 0x1000 : LanguageTag(726) = "ta-MY" LanguageName(727) = "Tamil" : LanguageLocation(727) = "Singapore" LanguageCode(727) = 0x1000 : LanguageTag(727) = "ta-SG" LanguageName(728) = "Tamil" : LanguageLocation(728) = "Sri Lanka" LanguageCode(728) = 0x0849 : LanguageTag(728) = "ta-LK" LanguageName(729) = "Tasawaq" : LanguageLocation(729) = "" LanguageCode(729) = 0x1000 : LanguageTag(729) = "twq" LanguageName(730) = "Tasawaq" : LanguageLocation(730) = "Niger" LanguageCode(730) = 0x1000 : LanguageTag(730) = "twq-NE" LanguageName(731) = "Tatar" : LanguageLocation(731) = "" LanguageCode(731) = 0x0044 : LanguageTag(731) = "tt" LanguageName(732) = "Tatar" : LanguageLocation(732) = "Russia" LanguageCode(732) = 0x0444 : LanguageTag(732) = "tt-RU" LanguageName(733) = "Telugu" : LanguageLocation(733) = "" LanguageCode(733) = 0x004A : LanguageTag(733) = "te" LanguageName(734) = "Telugu" : LanguageLocation(734) = "India" LanguageCode(734) = 0x044A : LanguageTag(734) = "te-IN" LanguageName(735) = "Teso" : LanguageLocation(735) = "" LanguageCode(735) = 0x1000 : LanguageTag(735) = "teo" LanguageName(736) = "Teso" : LanguageLocation(736) = "Kenya" LanguageCode(736) = 0x1000 : LanguageTag(736) = "teo-KE" LanguageName(737) = "Teso" : LanguageLocation(737) = "Uganda" LanguageCode(737) = 0x1000 : LanguageTag(737) = "teo-UG" LanguageName(738) = "Thai" : LanguageLocation(738) = "" LanguageCode(738) = 0x001E : LanguageTag(738) = "th" LanguageName(739) = "Thai" : LanguageLocation(739) = "Thailand" LanguageCode(739) = 0x041E : LanguageTag(739) = "th-TH" LanguageName(740) = "Tibetan" : LanguageLocation(740) = "" LanguageCode(740) = 0x0051 : LanguageTag(740) = "bo" LanguageName(741) = "Tibetan" : LanguageLocation(741) = "India" LanguageCode(741) = 0x1000 : LanguageTag(741) = "bo-IN" LanguageName(742) = "Tibetan" : LanguageLocation(742) = "People's Republic of China" LanguageCode(742) = 0x0451 : LanguageTag(742) = "bo-CN" LanguageName(743) = "Tigre" : LanguageLocation(743) = "" LanguageCode(743) = 0x1000 : LanguageTag(743) = "tig" LanguageName(744) = "Tigre" : LanguageLocation(744) = "Eritrea" LanguageCode(744) = 0x1000 : LanguageTag(744) = "tig-ER" LanguageName(745) = "Tigrinya" : LanguageLocation(745) = "" LanguageCode(745) = 0x0073 : LanguageTag(745) = "ti" LanguageName(746) = "Tigrinya" : LanguageLocation(746) = "Eritrea" LanguageCode(746) = 0x0873 : LanguageTag(746) = "ti-ER" LanguageName(747) = "Tigrinya" : LanguageLocation(747) = "Ethiopia" LanguageCode(747) = 0x0473 : LanguageTag(747) = "ti-ET" LanguageName(748) = "Tongan" : LanguageLocation(748) = "" LanguageCode(748) = 0x1000 : LanguageTag(748) = "to" LanguageName(749) = "Tongan" : LanguageLocation(749) = "Tonga" LanguageCode(749) = 0x1000 : LanguageTag(749) = "to-TO" LanguageName(750) = "Tsonga" : LanguageLocation(750) = "" LanguageCode(750) = 0x0031 : LanguageTag(750) = "ts" LanguageName(751) = "Tsonga" : LanguageLocation(751) = "South Africa" LanguageCode(751) = 0x0431 : LanguageTag(751) = "ts-ZA" LanguageName(752) = "Turkish" : LanguageLocation(752) = "" LanguageCode(752) = 0x001F : LanguageTag(752) = "tr" LanguageName(753) = "Turkish" : LanguageLocation(753) = "Cyprus" LanguageCode(753) = 0x1000 : LanguageTag(753) = "tr-CY" LanguageName(754) = "Turkish" : LanguageLocation(754) = "Turkey" LanguageCode(754) = 0x041F : LanguageTag(754) = "tr-TR" LanguageName(755) = "Turkmen" : LanguageLocation(755) = "" LanguageCode(755) = 0x0042 : LanguageTag(755) = "tk" LanguageName(756) = "Turkmen" : LanguageLocation(756) = "Turkmenistan" LanguageCode(756) = 0x0442 : LanguageTag(756) = "tk-TM" LanguageName(757) = "Ukrainian" : LanguageLocation(757) = "" LanguageCode(757) = 0x0022 : LanguageTag(757) = "uk" LanguageName(758) = "Ukrainian" : LanguageLocation(758) = "Ukraine" LanguageCode(758) = 0x0422 : LanguageTag(758) = "uk-UA" LanguageName(759) = "Upper Sorbian" : LanguageLocation(759) = "" LanguageCode(759) = 0x002E : LanguageTag(759) = "dsb or hsb" LanguageName(760) = "Upper Sorbian" : LanguageLocation(760) = "Germany" LanguageCode(760) = 0x042E : LanguageTag(760) = "hsb-DE" LanguageName(761) = "Urdu" : LanguageLocation(761) = "" LanguageCode(761) = 0x0020 : LanguageTag(761) = "ur" LanguageName(762) = "Urdu" : LanguageLocation(762) = "India" LanguageCode(762) = 0x0820 : LanguageTag(762) = "ur-IN" LanguageName(763) = "Urdu" : LanguageLocation(763) = "Islamic Republic of Pakistan" LanguageCode(763) = 0x0420 : LanguageTag(763) = "ur-PK" LanguageName(764) = "Uyghur" : LanguageLocation(764) = "" LanguageCode(764) = 0x0080 : LanguageTag(764) = "ug" LanguageName(765) = "Uyghur" : LanguageLocation(765) = "People's Republic of China" LanguageCode(765) = 0x0480 : LanguageTag(765) = "ug-CN" LanguageName(766) = "Uzbek" : LanguageLocation(766) = "Perso-Arabic" LanguageCode(766) = 0x1000 : LanguageTag(766) = "uz-Arab" LanguageName(767) = "Uzbek" : LanguageLocation(767) = "Perso-Arabic, Afghanistan" LanguageCode(767) = 0x1000 : LanguageTag(767) = "uz-Arab-AF" LanguageName(768) = "Uzbek (Cyrillic)" : LanguageLocation(768) = "" LanguageCode(768) = 0x7843 : LanguageTag(768) = "uz-Cyrl" LanguageName(769) = "Uzbek (Cyrillic)" : LanguageLocation(769) = "Uzbekistan" LanguageCode(769) = 0x0843 : LanguageTag(769) = "uz-Cyrl-UZ" LanguageName(770) = "Uzbek (Latin)" : LanguageLocation(770) = "" LanguageCode(770) = 0x0043 : LanguageTag(770) = "uz" LanguageName(771) = "Uzbek (Latin)" : LanguageLocation(771) = "" LanguageCode(771) = 0x7C43 : LanguageTag(771) = "uz-Latn" LanguageName(772) = "Uzbek (Latin)" : LanguageLocation(772) = "Uzbekistan" LanguageCode(772) = 0x0443 : LanguageTag(772) = "uz-Latn-UZ" LanguageName(773) = "Vai" : LanguageLocation(773) = "" LanguageCode(773) = 0x1000 : LanguageTag(773) = "vai" LanguageName(774) = "Vai" : LanguageLocation(774) = "" LanguageCode(774) = 0x1000 : LanguageTag(774) = "vai-Vaii" LanguageName(775) = "Vai" : LanguageLocation(775) = "Liberia" LanguageCode(775) = 0x1000 : LanguageTag(775) = "vai-Vaii-LR" LanguageName(776) = "Vai (Latin)" : LanguageLocation(776) = "Liberia" LanguageCode(776) = 0x1000 : LanguageTag(776) = "vai-Latn-LR" LanguageName(777) = "Vai (Latin)" : LanguageLocation(777) = "" LanguageCode(777) = 0x1000 : LanguageTag(777) = "vai-Latn" LanguageName(778) = "Valencian" : LanguageLocation(778) = "Spain" LanguageCode(778) = 0x0803 : LanguageTag(778) = "ca-ES-valencia" LanguageName(779) = "Venda" : LanguageLocation(779) = "" LanguageCode(779) = 0x0033 : LanguageTag(779) = "ve" LanguageName(780) = "Venda" : LanguageLocation(780) = "South Africa" LanguageCode(780) = 0x0433 : LanguageTag(780) = "ve-ZA" LanguageName(781) = "Vietnamese" : LanguageLocation(781) = "" LanguageCode(781) = 0x002A : LanguageTag(781) = "vi" LanguageName(782) = "Vietnamese" : LanguageLocation(782) = "Vietnam" LanguageCode(782) = 0x042A : LanguageTag(782) = "vi-VN" LanguageName(783) = "Volapük" : LanguageLocation(783) = "" LanguageCode(783) = 0x1000 : LanguageTag(783) = "vo" LanguageName(784) = "Volapük" : LanguageLocation(784) = "World" LanguageCode(784) = 0x1000 : LanguageTag(784) = "vo-001" LanguageName(785) = "Vunjo" : LanguageLocation(785) = "" LanguageCode(785) = 0x1000 : LanguageTag(785) = "vun" LanguageName(786) = "Vunjo" : LanguageLocation(786) = "Tanzania" LanguageCode(786) = 0x1000 : LanguageTag(786) = "vun-TZ" LanguageName(787) = "Walser" : LanguageLocation(787) = "" LanguageCode(787) = 0x1000 : LanguageTag(787) = "wae" LanguageName(788) = "Walser" : LanguageLocation(788) = "Switzerland" LanguageCode(788) = 0x1000 : LanguageTag(788) = "wae-CH" LanguageName(789) = "Welsh" : LanguageLocation(789) = "" LanguageCode(789) = 0x0052 : LanguageTag(789) = "cy" LanguageName(790) = "Welsh" : LanguageLocation(790) = "United Kingdom" LanguageCode(790) = 0x0452 : LanguageTag(790) = "cy-GB" LanguageName(791) = "Wolaytta" : LanguageLocation(791) = "" LanguageCode(791) = 0x1000 : LanguageTag(791) = "wal" LanguageName(792) = "Wolaytta" : LanguageLocation(792) = "Ethiopia" LanguageCode(792) = 0x1000 : LanguageTag(792) = "wal-ET" LanguageName(793) = "Wolof" : LanguageLocation(793) = "" LanguageCode(793) = 0x0088 : LanguageTag(793) = "wo" LanguageName(794) = "Wolof" : LanguageLocation(794) = "Senegal" LanguageCode(794) = 0x0488 : LanguageTag(794) = "wo-SN" LanguageName(795) = "Xhosa" : LanguageLocation(795) = "" LanguageCode(795) = 0x0034 : LanguageTag(795) = "xh" LanguageName(796) = "Xhosa" : LanguageLocation(796) = "South Africa" LanguageCode(796) = 0x0434 : LanguageTag(796) = "xh-ZA" LanguageName(797) = "Yangben" : LanguageLocation(797) = "" LanguageCode(797) = 0x1000 : LanguageTag(797) = "yav" LanguageName(798) = "Yangben" : LanguageLocation(798) = "Cameroon" LanguageCode(798) = 0x1000 : LanguageTag(798) = "yav-CM" LanguageName(799) = "Yi" : LanguageLocation(799) = "" LanguageCode(799) = 0x0078 : LanguageTag(799) = "ii" LanguageName(800) = "Yi" : LanguageLocation(800) = "People's Republic of China" LanguageCode(800) = 0x0478 : LanguageTag(800) = "ii-CN" LanguageName(801) = "Yoruba" : LanguageLocation(801) = "" LanguageCode(801) = 0x006A : LanguageTag(801) = "yo" LanguageName(802) = "Yoruba" : LanguageLocation(802) = "Benin" LanguageCode(802) = 0x1000 : LanguageTag(802) = "yo-BJ" LanguageName(803) = "Yoruba" : LanguageLocation(803) = "Nigeria" LanguageCode(803) = 0x046A : LanguageTag(803) = "yo-NG" LanguageName(804) = "Zarma" : LanguageLocation(804) = "" LanguageCode(804) = 0x1000 : LanguageTag(804) = "dje" LanguageName(805) = "Zarma" : LanguageLocation(805) = "Niger" LanguageCode(805) = 0x1000 : LanguageTag(805) = "dje-NE" LanguageName(806) = "Zulu" : LanguageLocation(806) = "" LanguageCode(806) = 0x0035 : LanguageTag(806) = "zu" LanguageName(807) = "Zulu" : LanguageLocation(807) = "South Africa" LanguageCode(807) = 0x0435 : LanguageTag(807) = "zu-ZA" EndProc Function GetLangTag(Code As Long) As String Local Long i For i = 1 To LanguagesCnt If Code = LanguageCode(i) Return LanguageTag(i) Next i Return ""
EndFunc Function GetLangName(Code As Long) As String Local Long i For i = 1 To LanguagesCnt If Code = LanguageCode(i) Return LanguageName(i) Next i Return "" EndFunc Function GetLangLoc(Code As Long) As String Local Long i For i = 1 To LanguagesCnt If Code = LanguageCode(i) Return LanguageLocation(i) Next i Return "" EndFunc
|
|
|
Post by scalion on Oct 28, 2018 22:38:45 GMT 1
Hi, To process automatics translation i use
Void AppendMenu(HpopFile, MF_STRING, HPOP(Menu_FileNew), Translate(1, "New"))
instead of Void AppendMenu(HpopFile, MF_STRING, HPOP(Menu_FileNew), "New") The translate function return the corresponding string for the UserLang code. During developpement each time i add a string constant for user i execute the Proc SaveEnTranslations to generate "en.lng" file.
For each string an new index must be transmitted. For example with "new" its 1, for next string "Open" that will 2, etc...
Here the functions code :
Proc LoadLanguage(LangTag As String) Local String FileNAme Local Long i FileNAme = App.Path If Right(FileNAme) <> "\" FileNAme = FileNAme & "\" FileNAme = FileNAme & LangTag & ".lng" If Exist(FileNAme) Try Open FileNAme for Input As # 1 Catch Message "Can't open language File " & FileNAme EndCatch Try For i = 1 To Dim?(Translated()) - 1 Line Input # 1, Translated(i) Next i Catch Message "Error while reading language file " & FileNAme EndCatch Try Close # 1 Catch Message "Can't load language for " & LangTag EndCatch Else Message "Language File " & FileNAme & " not found." EndIf EndProc Function Translate(Index As Long, T As String) As String If UserLang = 0x0009 Or IsExe = False // en If Index + 1 > Dim?(Translated()) ReDim Translated(Index + 1) If Len(Translated(Index)) = 0 Translated(Index) = T Return T Else Return Translated(Index) EndIf EndFunc Proc SaveEnTranslations Local String FileNAme Local Long i FileNAme = App.Path If Right(FileNAme) <> "\" FileNAme = FileNAme & "\" FileNAme = FileNAme & "en.lng" Open FileNAme for Output As # 1 For i = 1 To Dim?(Translated()) - 1 Print # 1, Translated(i) Next i Close # 1 EndProc
Have a good night !
|
|
|
Post by scalion on Oct 29, 2018 10:39:50 GMT 1
Actually i have multilanguage menus and the Status bar with icons
How to have an icon on StatusBar ?
Here the part of code (i will give all sources later) :
Proc CreateStatusBar Ocx StatusBar StatusBar StatusBar.FontName = "Lucida Console" StatusBar.FontSize = 10 StatusBar.Panels.Add , , "Line 0", 0 StatusBar.Panels.Add , , "Curs 0", 0 StatusBar.Panels.Add , , "Caps", 3 StatusBar.Panels.Add , , "Num", 4 StatusBar.Panels.Add , , "Scroll", 5 StatusBar.Panels.Add , , "Insert", 6 StatusBar.Panels.Add , , "", 0 StatusBar.Panels.Add , , "c", 7 StatusBar.Panels.Item(1).AutoSize = 2 StatusBar.Panels.Item(2).AutoSize = 2 StatusBar.Panels.Item(3).AutoSize = 2 StatusBar.Panels.Item(4).AutoSize = 2 StatusBar.Panels.Item(5).AutoSize = 2 StatusBar.Panels.Item(6).AutoSize = 2 StatusBar.Panels.Item(7).Width = 36 StatusBar.Panels.Item(8).AutoSize = 1 OcxOcx StatusBar Image Icon_Recording Icon_Recording.Picture = LoadPicture("Icons\Recording.bmp") OcxOcx StatusBar Image Icon_Playing Icon_Playing.Picture = LoadPicture("Icons\Playing.bmp") OcxOcx StatusBar Image Icon_Pause Icon_Pause.Picture = LoadPicture("Icons\Pause.bmp") Icon_Pause.Visible = False OcxOcx StatusBar Image Icon_Paused Icon_Paused.Picture = LoadPicture("Icons\Paused.bmp") Icon_Paused.Visible = False OcxOcx StatusBar Image Icon_Stop Icon_Stop.Picture = LoadPicture("Icons\Stop.bmp") Icon_Stop.Visible = False EndProc Sub Win_1_ReSize If !IsNothing(StatusBar) Icon_Recording.Move StatusBar.Panels.Item(7).Left + 3, 3, 16, StatusBar.Height Icon_Playing.Move StatusBar.Panels.Item(7).Left + 19, 3, 16, StatusBar.Height Icon_Stop.Move StatusBar.Panels.Item(7).Left + 3, 3, 16, StatusBar.Height Icon_Pause.Move StatusBar.Panels.Item(7).Left + 19, 3, 16, StatusBar.Height Icon_Paused.Move StatusBar.Panels.Item(7).Left + 19, 3, 16, StatusBar.Height EndIf EndSub Have a nice day !
|
|
|
Post by scalion on Nov 15, 2018 14:46:03 GMT 1
Hi all, Finally I also rewrite the compilation part (which will allow to generate DLL for example). So it's going to take a lot of time, sorry. At this time i have this element of ide: - all menus ok (purpose all work of course) - toolbar ok - statusbar ok - special editor for syntax coloring (95% finished) - custom and scalable language management ok Regarding the compiler part I just start and there is a lot of code to type (just typing the code is very tedious even if it's technically exciting).
Here a sample code of compiler at embryonic state :
Type TYPE_DOS_HEADER Packed 1 - Byte M, Z - Card lastsize - Card nblocks - Card nreloc - Card hdrsize - Card minalloc - Card maxalloc - Card ss - Card sp - Card checksum - Card ip - Card cs - Card relocpos // value 64 (of course...) - Card noverlay - Large reserved1 - Card oem_id - Card oem_info - Card reserved2(1 To 10) - Long e_lfanew ' Offset to the PE signature (alway's the same cause i use always dos prog) EndType Type TYPE_COFF_HEADER Packed 1 - Card Machine - Card NumberOfSections - Long TimeDateStamp - Long PointerToSymbolTable - Long NumberOfSymbols - Short SizeOfOptionalHeader - Short Characteristics EndType Type TYPE_PE_FILE Packed 1 DOS_HEADER As TYPE_DOS_HEADER - Byte DOS_MESSAGE_PROG(0 To 102) - Long PE_SIGNATURE COFF_HEADER As TYPE_COFF_HEADER ' OPTIONAL_COFF_HEADER ' SECTION_TABLE ' MAPPABLE_SECTIONS EndType
Global PE_FILE As TYPE_PE_FILE MemBFill V:PE_FILE, SizeOf(PE_FILE), 0 WriteHexToMem( "800000000E1FBA0E00B409CD21B8014CCD21546869732050726F6772616D2072657175697265732033322D4269742D57696E646F77732E0D0D0A24000000000000000000" , V:PE_FILE.DOS_MESSAGE_PROG(39)) LPoke V:PE_FILE.PE_SIGNATURE, 17744 ' PE DPoke V:PE_FILE.COFF_HEADER.Machine , 332 ' Intel Message DosHeaderInfos(V:PE_FILE)
Proc WriteHexToMem(S As String, Adr As Long) Local Long Scan, i Scan = 1 For i = Adr To Adr + Div(Len(S), 2) Poke i, Val("&h" & Mid(S, Scan, 2)) Add Scan, 2 Next i EndProc
Function DosHeaderInfos(Adr As Long) As String Local x As Pointer To TYPE_DOS_HEADER Local String Info Local Long i
Pointer x = Adr Info = "Signature : " & Chr(Max(32, x.M)) & Chr(Max(32, x.Z)) & " (" & Hex(x.M, 2) & Hex(x.Z, 2) & ")" & #13#10 Info = Info & "LastSize=" & Trim(x.lastsize) Info = Info & " - nblocks=" & Trim(x.nblocks) Info = Info & " - nreloc=" & Trim(x.nreloc) Info = Info & " - hdrsize=" & Trim(x.hdrsize) & #13#10 Info = Info & " minalloc=" & Trim(x.minalloc) Info = Info & " - maxalloc=" & Trim(x.maxalloc) Info = Info & " - ss=" & Trim(x.ss) Info = Info & " - sp=" & Trim(x.sp) Info = Info & " - checksum=" & Trim(x.checksum) & #13#10 Info = Info & "ip=" & Trim(x.ip) Info = Info & " - cs=" & Trim(x.cs) Info = Info & " - relocpos=" & Trim(x.relocpos) Info = Info & " - noverlay=" & Trim(x.noverlay) Info = Info & " - reserved1=" & Trim(x.reserved1) & #13#10 Info = Info & "oem_id=" & Trim(x.oem_id) Info = Info & " - oem_info=" & Trim(x.oem_info) Info = Info & " - reserved2=" For i = 1 To 10 : Info = Info & Hex(x.reserved2(i), 2) : Next i Info = Info & #13#10 & "e_lfanew=" & Trim(x.e_lfanew) Return Info EndFunc
|
|
|
Post by scalion on Nov 19, 2018 12:23:55 GMT 1
Hi, I am in the process of structuring and classifying keywords, this is the most important part, and also the most exciting.
|
|
|
Post by scalion on Nov 21, 2018 9:47:33 GMT 1
Hi,
Now I attack the expression parser. It is quite complicated and it requires a good structuring.
Here is a piece of the code being written to give you an idea of how it will working:
Function Expr(T As String, ByRef N /* N=element number */, ByRef ExprError As Long, ByRef NE As Long) As String Local Long AcceptNumber = True Local Long AcceptOperator = False Local Long AcceptLeftPar = True Local Long AcceptRightPAr = False Local Long AcceptString = True Local Long AcceptComma = False Local Long AcceptFunction = True Local String Result = "" Static Dim ParStack(1000) As Card Local Long ParStackIndex = 0 ParStack(0) = 0 NE = 0 ExprError = 0 Do e = Element(T, N, Scan, Etype) Exit If Len(e) = 0 If e = "(" If AcceptLeftPar = False ExprError = ERR_EXPR_ULP Return Result EndIf Inc NE Inc ParStack(ParStackIndex) Result = Result & "(" AcceptNumber = True AcceptOperator = False AcceptLeftPar = True AcceptRightPar = True ' <- We can have () then a default value if needed is passed AcceptString = True AcceptComma = True ' <- same thing with (, AcceptFunction = True Inc N Else If e = ")" If AcceptRightPar = False ExprError = ERR_EXPR_URP Return Result EndIf Inc NE While ParStack(ParStackIndex) = 0 If ParStackIndex = 0 Result = Result & ")" Return Result Else Dec ParStackIndex EndIf Wend Dec ParStack(ParStackIndex) Result = Result & ")" AcceptNumber = False AcceptOperator = True AcceptLeftPar = True AcceptRightPar = True ' <- We can have () then a default value if needed is passed AcceptString = True AcceptComma = True ' <- same thing with (, AcceptFunction = False Inc N Else If e = "," If AcceptComma = False ExprErr = ERR_EXPR_UC Return Result EndIf Inc ParStackIndex ParStack(ParStackIndex) = 0 Inc NE Result = Result & "," AcceptNumber = True AcceptOperator = False AcceptLeftPar = True AcceptRightPar = True ' <- We can have ,) then a default value if needed is passed AcceptString = True AcceptComma = True ' <- same thing with ,, AcceptFunction = True
Inc N Else If KwIsOperator(e) = True If AcceptOperator = False ExprErr = ERR_EXPR_UO Return Result EndIf Inc NE Result = Result & " " & e AcceptNumber = True AcceptOperator = False AcceptLeftPar = True AcceptRightPar = False AcceptString = True AcceptComma = False AcceptFunction = True
Else If KwIsBasicFN(e) = True If AcceptFunction = False ExprErr = ERR_EXPR_UKW Return Result EndIf Inc NE Result = Result & " " & e
EndIf Loop Return Result EndFunc
Have a good day !
|
|
|
Post by infoliner on Nov 26, 2018 18:31:36 GMT 1
Oha, good luck!
|
|
|
Post by scalion on Nov 28, 2018 19:19:36 GMT 1
Thank's Infoliner I just recovered my laptop whose screen was HS. So here I go again today, I was parser expression so ... I saw on Sjouke Hamstra's site that he continues the development of the GFA-Basic which is good news. However I do not work for nothing since I also like project to develop a Basic for android with an interpreter under windows. All without going through Eclipse, Java DSK, JRE and all the tralala ... I am starting to seriously document myself about Dalvik's successor ART (Androit Run Time). I will come back in more detail later ... See you.
|
|
|
Post by scalion on Nov 29, 2018 11:39:16 GMT 1
Hi, As part of the development of my GFA-BASIC for Android I am looking at the structure of the executable file and I am starting to lay the functions I will need. Here are 2 first functions. In .DEX files (executable for Android who's found in APK files) we have a certain type of data called LEB128. If at the base this format is intended to store integers of arbitrary lengths (See specifications of DWARF), in the .DEX for Android it is only used to store integers on 32 bits signed or unsigned. For the compiler I will only need to encode in LEB128 however I needed to test my encoding and write also decoding. Here are the 2 necessary functions: EncodeLEB128 (Value, Signed / Unsigned) and DecodeLEB128 (Value, Signed / Unsigned).
Function DecodeLEB128(LEB128 As String, Signed%) As Long Local Long Value = 0, i = 1, Offset = 0 Local Byte B If Signed = False For i = 1 To Len(LEB128) B = And(Cvi(LEB128, i), 127) Value = Value | Shl(B, Offset) Add Offset, 7 Next i Else
Do B = Cv1(LEB128, i) Value |= And(B, 127) << Offset Add Offset, 7 Inc i Loop Until Btst(B, 7) = 0 If Offset < 32 And Btst(B, 6) = True Value |= -1 << Offset EndIf Return Value EndFunc Function EncodeLEB128(Value%, Signed%) As String Local String LEB128 = "" Local Byte B Local Long More Local Boolean S, SB If Signed% = False Do B = And(Value, 127) Value >>= 7 If Value <> 0 B = Bset(B, 7) LEB128 = LEB128 & Chr(B) Loop Until Value = 0 Else More = 1 : S = (Value < 0) While More <> 0 B = And(Value, 127) Value >>= 7 If S = True Value |= &HFE000000 SB = Btst(B, 6) If (Value = 0 And B = False) Or (Value = -1 And SB = True) More = 0 Else B = Bset(B, 7) EndIf LEB128 = LEB128 & Chr(B) Wend EndIf Return LEB128 EndFunc
See you.
|
|
|
Post by scalion on Dec 1, 2018 22:28:33 GMT 1
Bonsoir JMM, On est chez nous sur ce forum ;p
Merci pour le compliment, surtout de la part de quelqu'un qui est curieux, passionné et plutot doué à ce que j'ai vu.
Cependant je ne pense pas que tu sois surpassé, loin de là. Tu as sûrement un travail et peu de temps disponible pour développer à titre personnel. J'ai vu les efforts que tu as pourtant déployé pour développer des controls (les fameux potars) et j'avoue avoir été très surpris que tu sois allé aussi loin, merci encore. Ca nous fais au moins un point commun : on est tenaces. Moi j'alterne entre des petits boulots et des periodes sans emploi, ça aide beaucoup sur ce plan là.
Ceci dit c'est le problème de beaucoup de programmeurs, ils sont persuadés qu'ils ne peuvent pas écrire un système d'exploitation, que bidouiller un noyau c'est le niveau "guru", ou que de faire un Worlf of Warcraft c'est pas pour eux. Mais ils ont pratiquement toujours tort. Ils en sont parfaitement capables, ils manquent de temps, parfois aussi de moyens (serveurs etc...) ou ils manquent de connaissances (ce qui revient au même puisqu'il faut du temps pour apprendre).
Si je peux me permettre, il est un sentiment tout à fait normal quand on veux s'attaquer à l'inconnu : c'est la panique. C'est un sentiment inutile, il nous fait perdre confiance en nous et nous empêche de nous engager. Il faut donc se lancer, tranquillement, chercher les informations, fouiller le web, glaner les docs, non pas d'un coup, mais progressivement. L'important étant finalement de prendre du plaisir à réaliser un objectif. L'objectif en lui-même n'étant pas le plus important mais si en plus c'est réussi c'est une grande satisfaction, qui donne envie d'aller toujours plus loin. Encore un dernier petit conseil : n'écoute jamais ceux qui te disent que tu ne peux pas faire ceci ou cela. Tu peux TOUT faire. Bill Gates n'est pas un extra-terrestre.
Il n'est pas obligatoire par exemple de connaite tout Java avant de commencer un programme en Java, je pense que tu ne le sais que trop bien. Et je suis même quasiment sûr que tu t'es déjà fait cette réflexion : "Ha si j'avais plus de temps". Et bien du temps tu en as, tu as toute ta vie, et il te suffit simplement de faire, même si tu n'as que 30mn par jour, la faisabilité d'un projet n'est pas à discuter, c'est une résolution d'équation entre le temps disponible et le temps que tu te donnes, et si tu te donnes toute ta vie, tout est possible.
C'est en tout cas ce que je me dis pour tous les projets que je développe à titre personnel, je ne m'inquiète jamais de savoir si j'aurais le temps de terminer, je le fais et si j'ai de la chance, je termine. C'est tout. Parfois je m'apperçois que dès le départ j'ai fait un mauvais choix comme mon projet Entrelacs Celtiques qui est un pur fiasco. Mais je suis allé au bout et je recommence à zéro. Ce n'est pas grave. L'argent ne m'intéresse pas. L'important c'est que je fais ce qui me plait, vu que je suis comme toi un passionné de programmation. Il y en a qui font des mots croisés, qui peignent des tableaux, qui tricotent des pulls ou qui bricolent des bagnoles comme des fous, chacun sa passion en fait.
Désolé j'ai tendance à épiloguer à l'infini. C'était la pause philo. Prochain post on va se recentrer, ça va programmer !!!!
|
|
|
Post by ventilo25 on Dec 2, 2018 20:14:31 GMT 1
Bonsoir Scalion ! Voilà un message remarquable de finesse et de détermination que je partage tout à fait. Tu décris très bien la motivation, la passion qui peut animer certains programmeurs authentiques, malgré les auto-limitations qu'il faut dépasser et le temps qui manque. Bravo et merci pour cette pause philo. Je ne pense pas que ton projet "Entrelacs Celtiques" soit un fiasco. C'est au contraire une tentative graphique très intéressante tout comme ta "Géométrie Sauvage" qui pourraient être présentées dans certains festivals d'art numérique. Bonne continuation !
|
|
|
Post by scalion on Dec 13, 2018 11:21:13 GMT 1
J'ai pratiquement fini la partie analyse des users DATA... Reste encore les type date et currency pffff. Je suis ko, je fais une pause.
I have practically finished the analysis part of the users DATA...There are still the date and currency types pffff. I'm ko, I'm taking a break.
Here a part of code :
Function DataElement(L As String, ByRef Scan%, ByRef EType%) As String Local Long i, vcomma, n34 = 0 Local String car Local String E = "", E_Part, UE Global Const DE_NONE = 0 Global Const DE_BOOLEAN = 1 Global Const DE_BYTE = 2 Global Const DE_CARD = 3 Global Const DE_STRING = 4 Global Const DE_SHORT = 5 Global Const DE_LONG = 6 Global Const DE_LARGE = 7 Global Const DE_SINGLE = 8 Global Const DE_DOUBLE = 9 Global Const DE_SBYTE = 10 Global Const DE_ULONG = 11 Global Const DE_ULARGE = 12 EType = DE_NONE If Scan > Len(L) Return "" EndIf Do car = Mid(L, Scan, 1) If car = #34 Inc n34 If car = "," If Mod(n34, 2) = 0 Inc Scan Exit Do EndIf EndIf Add E, car Inc Scan Loop Until Scan > Len(L) E = Trim(E) If Left(E) = #34 And Right(E) = #34 E = Trim(E) E = Mid(E, 2, Len(E) - 2) EType = DE_STRING Return E EndIf EType = LowestDataType(E) Return E EndFunc Function LowestDataType(E As String) As Long Local String UE, B Local Long i Local Long Ok Local Single CheckSingle Local Double CheckDouble If Len(E) = 0 Return DE_STRING UE = UCase(E) If UE = "TRUE" Or UE = "FALSE" Or UE = "0" Or UE = "1" If UE = "TRUE" Or UE = "1" NUMERIC_DATA_VALUE = 1 Else NUMERIC_DATA_VALUE = 0 EndIf Return DE_BOOLEAN EndIf ' Test if it's hexadecimal value If Left(UE, 2) = "&H" Ok = True For i = 3 To Len(E) If InStr("0123456789ABCDEF", Mid(UE, i, 1)) = 0 Ok = False Exit For EndIf Next i If Ok = True B = Mid(E, 3) If B <= "1" NUMERIC_DATA_VALUE = ValInt(B) Return DE_BOOLEAN Else If Len(B) <= 2 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_BYTE Else If Len(B) <= 4 NUMERIC_DATA_VALUE = ValInt(UE) - 32768 Return DE_SHORT Else If Len(B) <= 8 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_LONG Else If Len(E) <= 16 NUMERIC_DATA_VALUE = ValLarge(UE) Return DE_LARGE Else Return DE_STRING EndIf EndIf EndIf ' Test if it's Octal value If Left(UE, 2) = "&O" Ok = True For i = 3 To Len(E) If InStr("01234567", Mid(UE, i, 1)) = 0 Ok = False Exit For EndIf Next i If Ok = True B = Mid(UE, 3) If B <= "1" And Len(B) = 1 NUMERIC_DATA_VALUE = Val(B) Return DE_BOOLEAN Else If Right("00" & B, 3) <= "177" And Len(B) <= 3 NUMERIC_DATA_VALUE = Val(UE) Return DE_SBYTE Else If Right("00" & B, 3) <= "377" And Len(B) <= 3 NUMERIC_DATA_VALUE = Val(UE) Return DE_BYTE Else If Right("00000" & B, 5) <= "77777" And Len(B) <= 5 NUMERIC_DATA_VALUE = Val(UE) Return DE_SHORT Else If Right("00000" & B, 6) <= "177777" And Len(B) <= 6 NUMERIC_DATA_VALUE = Val(UE) Return DE_CARD Else If Right("00000000000" & B, 11) <= "17777777777" And Len(B) <= 11 NUMERIC_DATA_VALUE = Val(UE) Return DE_LONG Else If Right("00000000000" & B, 11) <= "37777777777" And Len(B) <= 11 NUMERIC_DATA_VALUE = Val(UE) Return DE_ULONG Else If Right(String(21, "0") & B, 21) <= "777777777777777777777" And Len(B) <= 21 NUMERIC_DATA_VALUE = Val(UE) Return DE_LARGE Else If Right(String(22, "0") & B, 22) <= "1777777777777777777777" And Len(B) <= 22 NUMERIC_DATA_VALUE = Val(UE) Return DE_ULARGE Else Return DE_STRING EndIf EndIf EndIf ' Test if it's binary value If Left(UE, 2) = "&X" Ok = True For i = 3 To Len(E) If InStr("01", Mid(UE, i, 1)) = 0 Ok = False Exit For EndIf Next i If Ok = True If Len(E) = 3 NUMERIC_DATA_VALUE = Val(UE) Return DE_BOOLEAN Else If Len(E) <= 10 NUMERIC_DATA_VALUE = Val(UE) Return DE_BYTE Else If Len(E) <= 18 NUMERIC_DATA_VALUE = Val(UE) - 32768 Return DE_SHORT Else If Len(E) <= 34 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_LONG Else If Len(E) <= 66 NUMERIC_DATA_VALUE = ValLarge(UE) Return DE_LARGE Else Return DE_STRING EndIf EndIf EndIf ' Test if is a positive Integer Ok = True For i = 1 To Len(E) If InStr("0123456789", Mid(E, i, 1)) = 0 Ok = False Exit For EndIf Next i If Ok = True If E <= "1" And Len(E) = 1 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_BOOLEAN Else If Right(String(3, "0") & E, 3) <= "127" And Len(E) <= 3 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_SBYTE Else If Right(String(3, "0") & E, 3) <= "255" And Len(E) <= 3 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_BYTE Else If Right(String(5, "0") & E, 5) <= "32767" And Len(E) <= 5 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_SHORT Else If Right(String(5, "0") & E, 5) <= "65535" And Len(E) <= 5 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_CARD Else If Right(String(10, "0") & E, 10) <= "2147483647" And Len(E) <= 10 NUMERIC_DATA_VALUE = ValInt(UE) Return DE_LONG Else If Right(String(10, "0") & E, 10) <= "4294967295" And Len(E) <= 10 NUMERIC_DATA_VALUE = ValLarge(UE) Return DE_ULONG Else If Right(String(19, "0") & E, 19) <= "9223372036854775807" And Len(E) <= 19 NUMERIC_DATA_VALUE = ValLarge(UE) Return DE_LARGE Else If Right(String(20, "0") & E, 20) <= "18446744073709551615" And Len(E) <= 20 NUMERIC_DATA_VALUE = LITERAL_LARGE_TO_ULARGE(E) Return DE_ULARGE Else Return DE_STRING EndIf EndIf ' Test if it's a negative Integer If Left(E) = "-" Ok = True For i = 2 To Len(E) If InStr("0123456789", Mid(E, i, 1)) = 0 Ok = False Exit For EndIf Next i If Ok = True B = Mid(E, 2) If Right(String(3, "0") & B, 3) <= "128" And Len(B) <= 3 NUMERIC_DATA_VALUE = ValInt(B) + 127 Return DE_SBYTE Else If Right(String(5, "0") & B, 5) <= "32768" And Len(B) <= 5 NUMERIC_DATA_VALUE = ValInt(B) + 32767 Return DE_SHORT Else If Right(String(10, "0") & B, 10) <= "2147483648" And Len(B) <= 10 NUMERIC_DATA_VALUE = ValInt(E) Return DE_LONG Else If Right(String(19, "0") & B, 19) <= "9223372036854775808" And Len(B) <= 19 NUMERIC_DATA_VALUE = ValLarge(E) Return DE_LARGE Else Return DE_STRING EndIf EndIf EndIf ' Test if its a single or double precision number binary32 If UCase(Trim(Val(E))) = UE CheckDouble = Val(E) Try CheckSingle = CheckDouble Catch DblPoke V:NUMERIC_DATA_VALUE , CheckDouble Return DE_DOUBLE EndCatch LPoke V:NUMERIC_DATA_VALUE , LPeek(V:CheckSingle) If UCase(Trim(CheckSingle)) = UE Return DE_SINGLE EndIf ' It's a string Return DE_STRING EndFunc
|
|
rosy
New Member
Posts: 3
|
Post by rosy on Dec 28, 2020 12:51:07 GMT 1
What about the Android version? Can you expect her soon?
|
|