diff --git a/development/Win32/packaging/installer/DictionaryMirrors.txt b/development/Win32/packaging/installer/DictionaryMirrors.txt index 99a459087e..95ab8e8ce9 100644 --- a/development/Win32/packaging/installer/DictionaryMirrors.txt +++ b/development/Win32/packaging/installer/DictionaryMirrors.txt @@ -2,21 +2,23 @@ astuteinternet ayera cfhcable cytranet +datapacket excellmedia freefr iweb jaist kent liquidtelecom +managedway nchc netcologne netix -netcologne newcontinuum phoenixnap +pilotfiber razaoinfo superb-dca2 -superb-sea2 +svwh ufpr versaweb vorboss diff --git a/development/Win32/packaging/installer/HunspellDictionaryNames.txt b/development/Win32/packaging/installer/HunspellDictionaryNames.txt index 817adc9472..625718dcec 100644 --- a/development/Win32/packaging/installer/HunspellDictionaryNames.txt +++ b/development/Win32/packaging/installer/HunspellDictionaryNames.txt @@ -82,6 +82,8 @@ is_IS.aff is_IS.dic it_IT.aff it_IT.dic +ka_GE.aff +ka_GE.dic kk_KZ.aff kk_KZ.dic ko_KR.aff diff --git a/development/Win32/packaging/installer/Packages.txt b/development/Win32/packaging/installer/Packages.txt index 3ba3f1e71b..6859c1e04b 100644 --- a/development/Win32/packaging/installer/Packages.txt +++ b/development/Win32/packaging/installer/Packages.txt @@ -100,6 +100,7 @@ lettrine listings lithuanian genmisc +georgian mathtools mhchem mongolian-babel diff --git a/development/Win32/packaging/installer/include/dictionaries.nsh b/development/Win32/packaging/installer/include/dictionaries.nsh index d540f5349a..4bec27ef68 100644 --- a/development/Win32/packaging/installer/include/dictionaries.nsh +++ b/development/Win32/packaging/installer/include/dictionaries.nsh @@ -28,8 +28,8 @@ Function FindDictionaries # read out the possible spell-checker filenames from the file FileOpen $R5 "$INSTDIR\Resources\HunspellDictionaryNames.txt" r - ${for} $5 1 72 - # the file has 144 lines, but we only need to check for one of the 2 dictionary files per language + ${for} $5 1 73 + # the file has 146 lines, but we only need to check for one of the 2 dictionary files per language # therefore check only for every second line FileRead $R5 $String # skip the .aff file FileRead $R5 $String # $String is now the .dic filename @@ -66,20 +66,32 @@ Function DownloadHunspellDictionaries # read out the locations from the file FileOpen $R5 "$INSTDIR\Resources\HunspellDictionaryNames.txt" r - ${For} $5 1 144 # the file has 144 lines + ${For} $5 1 146 # the file has 146 lines FileRead $R5 $String # $String is now the dictionary name StrCpy $R3 $String -6 # $R3 is now the dictionary language code ${if} $DictCode == $R3 StrCpy $String $String -2 # delete the linebreak characters at the end - # Download hunspell dictionaries - Push $R0 - inetc::get /RECEIVETIMEOUT=5000 "https://sourceforge.net/projects/lyxwininstaller/files/hunspell/$String" "$INSTDIR\Resources\dicts\$String" /END - Pop $R0 + # Download hunspell dictionaries, + # if first download repository is not available try the other ones listed in "DictionaryMirrors.txt" + FileOpen $R4 "$INSTDIR\Resources\DictionaryMirrors.txt" r + + ${For} $4 1 24 # there are 24 mirrors in the file + FileRead $R4 $Search # $Search is now the mirror + StrCpy $Search $Search -2 # delete the linebreak characters at the end + Push $R0 + inetc::get /TIMEOUT=5000 "https://$Search.dl.sourceforge.net/project/lyxwininstaller/hunspell/$String" "$INSTDIR\Resources\dicts\$String" /END + Pop $R0 + ${if} $R0 == "OK" + ${ExitFor} + ${endif} + ${Next} + + FileClose $R4 # if download failed ${if} $R0 != "OK" - MessageBox MB_OK|MB_ICONEXCLAMATION "$(HunspellFailed): $R0" + MessageBox MB_OK|MB_ICONEXCLAMATION "$(HunspellFailed)" Goto abortinstall ${endif} ${endif} # end if $DictCode == $R3 @@ -107,13 +119,25 @@ Function DownloadThesaurusDictionaries ${if} $ThesCode == $R3 StrCpy $String $String -2 # delete the linebreak characters at the end - # Download thesaurus files - Push $R0 - inetc::get /POPUP /RECEIVETIMEOUT=5000 "https://sourceforge.net/projects/lyxwininstaller/files/thesaurus/$String" "$INSTDIR\Resources\thes\$String" /END - Pop $R0 + # Download thesaurus files, + # if first download repository is not available try the other ones listed in "DictionaryMirrors.txt" + FileOpen $R4 "$INSTDIR\Resources\DictionaryMirrors.txt" r + + ${For} $4 1 24 # there are 24 mirrors in the file + FileRead $R4 $Search # $Search is now the mirror + StrCpy $Search $Search -2 # delete the linebreak characters at the end + Push $R0 + inetc::get /TIMEOUT=5000 "https://$Search.dl.sourceforge.net/project/lyxwininstaller/thesaurus/$String" "$INSTDIR\Resources\thes\$String" /END + Pop $R0 + ${if} $R0 == "OK" + ${ExitFor} + ${endif} + ${Next} + + FileClose $R4 # if download failed ${if} $R0 != "OK" - MessageBox MB_OK|MB_ICONEXCLAMATION "$(ThesaurusFailed): $R0" + MessageBox MB_OK|MB_ICONEXCLAMATION "$(ThesaurusFailed)" Goto abortinstall ${endif} ${endif} # end if $ThesCode == $R3 diff --git a/development/Win32/packaging/installer/include/init.nsh b/development/Win32/packaging/installer/include/init.nsh index 9f36dfacae..59370d49b4 100644 --- a/development/Win32/packaging/installer/include/init.nsh +++ b/development/Win32/packaging/installer/include/init.nsh @@ -151,19 +151,19 @@ SectionEnd Section /o "English (AU)" SecDEnglishAU StrCpy $DictCodes "en_AU,$DictCodes" - AddSize 552 + AddSize 557 SectionEnd Section /o "English (CA)" SecDEnglishCA StrCpy $DictCodes "en_CA,$DictCodes" - AddSize 550 + AddSize 557 SectionEnd Section "English (GB)" SecDEnglishGB # already installed by default SectionIn RO #StrCpy $DictCodes "en_GB,$DictCodes" - AddSize 742 + AddSize 1044 SectionEnd Section /o "English (NZ)" SecDEnglishNZ @@ -175,7 +175,7 @@ Section "English (US)" SecDEnglishUS # already installed by default SectionIn RO #StrCpy $DictCodes "en_US,$DictCodes" - AddSize 548 + AddSize 551 SectionEnd Section "Español (ES)" SecDSpanishES @@ -234,6 +234,11 @@ Section /o "Galego" SecDGalician AddSize 3911 SectionEnd +Section /o "ქართული ენა" SecDGeorgian + StrCpy $DictCodes "ka_GE,$DictCodes" + AddSize 3952 +SectionEnd + Section /o "עִברִית" SecDHebrew StrCpy $DictCodes "he_IL,$DictCodes" AddSize 3120 @@ -406,7 +411,7 @@ SectionEnd Section /o "Türkmençe" SecDTurkmen StrCpy $DictCodes "tk_TM,$DictCodes" - AddSize 950 + AddSize 2797 SectionEnd Section /o "Türkçe" SecDTurkish @@ -416,7 +421,7 @@ SectionEnd Section /o "Українська" SecDUkrainian StrCpy $DictCodes "uk_UA,$DictCodes" - AddSize 6375 + AddSize 6905 SectionEnd Section /o "اردو" SecDUrdu @@ -922,6 +927,13 @@ Function .onInit SectionSetFlags ${SecDGalician} $0 SectionSetSize ${SecDGalician} 0 ${endif} + StrCpy $Search "ka_GE" + Call StrPoint + ${if} $Pointer != "-1" + IntOp $0 ${SF_SELECTED} | ${SF_RO} + SectionSetFlags ${SecDGeorgian} $0 + SectionSetSize ${SecDGeorgian} 0 + ${endif} StrCpy $Search "he_IL" Call StrPoint ${if} $Pointer != "-1"