From 81f370f5c78a237e26f61e97ce67211d0db7cd2b Mon Sep 17 00:00:00 2001 From: Gres Date: Sun, 1 Mar 2020 11:54:23 +0300 Subject: [PATCH] Remove outdated files --- distr/Changelog_en.txt | 69 - distr/Changelog_ru.txt | 69 - distr/deb/DEBIAN/control | 16 - .../applications/ScreenTranslator.desktop | 9 - distr/iss/InnoSetup.iss | 129 -- distr/iss/InnoSetupWithTessdata.iss | 91 - distr/iss/LICENSE_ru.md | 9 - distr/iss/code2langTr.txt | 109 -- distr/iss/default.isl | 106 -- distr/iss/dwinshs.iss | 1266 -------------- distr/iss/make_tess_iss.sh | 94 -- distr/iss/russian.isl | 122 -- distr/iss/tessdata.iss | 348 ---- distr/iss/tessdataBuiltin.iss | 30 - scripts/get_deps.sh | 8 - scripts/get_tessdata.sh | 14 - scripts/install_deps.sh | 5 - scripts/make_all.sh | 19 - scripts/make_app.sh | 12 - scripts/make_deb.sh | 59 - scripts/make_deps.sh | 54 - scripts/make_iss.sh | 49 - scripts/make_sf.sh | 21 - scripts/options.sh | 58 - scripts/win/build.bat | 61 - scripts/win/deploy_sf.bat | 33 - scripts/win/env.bat | 19 - scripts/win/prepare.bat | 111 -- scripts/win/sf_key.av | Bin 3248 -> 0 bytes translations/translation_en.ts | 1474 ---------------- translations/translation_ru.ts | 1483 ----------------- 31 files changed, 5947 deletions(-) delete mode 100644 distr/Changelog_en.txt delete mode 100644 distr/Changelog_ru.txt delete mode 100644 distr/deb/DEBIAN/control delete mode 100644 distr/deb/usr/share/applications/ScreenTranslator.desktop delete mode 100644 distr/iss/InnoSetup.iss delete mode 100644 distr/iss/InnoSetupWithTessdata.iss delete mode 100644 distr/iss/LICENSE_ru.md delete mode 100644 distr/iss/code2langTr.txt delete mode 100644 distr/iss/default.isl delete mode 100644 distr/iss/dwinshs.iss delete mode 100755 distr/iss/make_tess_iss.sh delete mode 100644 distr/iss/russian.isl delete mode 100644 distr/iss/tessdata.iss delete mode 100644 distr/iss/tessdataBuiltin.iss delete mode 100755 scripts/get_deps.sh delete mode 100755 scripts/get_tessdata.sh delete mode 100755 scripts/install_deps.sh delete mode 100755 scripts/make_all.sh delete mode 100755 scripts/make_app.sh delete mode 100755 scripts/make_deb.sh delete mode 100755 scripts/make_deps.sh delete mode 100755 scripts/make_iss.sh delete mode 100755 scripts/make_sf.sh delete mode 100755 scripts/options.sh delete mode 100644 scripts/win/build.bat delete mode 100644 scripts/win/deploy_sf.bat delete mode 100644 scripts/win/env.bat delete mode 100644 scripts/win/prepare.bat delete mode 100644 scripts/win/sf_key.av delete mode 100644 translations/translation_en.ts delete mode 100644 translations/translation_ru.ts diff --git a/distr/Changelog_en.txt b/distr/Changelog_en.txt deleted file mode 100644 index c92c07d..0000000 --- a/distr/Changelog_en.txt +++ /dev/null @@ -1,69 +0,0 @@ -Changes. - -2.0.2: - -* Added force translator rotation option. - -2.0.1: - -* Fixed installer. - -2.0.0: - -* Added a version for linux. -* Added support for multiple monitors. -* Added ability of recognition without translation. -* Added ability to recapture from old image. -* Added ability to recapture without closing capture window. -* Added ability to re-recognize other language. -* Added ability to display intermediate result when error occured. -* Added support for different translation services. -* Added ability to copy image to clipboard. -* Added ability to edit recognized text. -* Added ability to automatically correct common recognition mistakes. -* Added ability to use a proxy. -* Added ability to swap translation and recognition languages. -* Updated icons. -* Show progress on icon. -* Added ability to automatically update. - -1.2.3: - -* Fixed possible crash. -* Added version information and some error messages. - -1.2.2: - -* Added alternative translation source. - -1.2.1: - -* Fixed the bug with the lack of translation. -* Fixed the bug with the use of language recognition by default when you select another one in OCR region selection mode. - -1.2.0: - -+ Changed installer. -+ Added all available languages for recognition. -+ Added ability to specify language when selecting the field of recognition using right click. -+ Human readable language names. -* Reduced memory usage. -* Updated libraries. - -1.1.3: - -* Added library libgcc_s_dw2-1.dll. -* Updated libraries. - -1.1.2: - -* If you specify in the settings the path to tessdata characters "\" or "/" at the end of the path are no longer required. - -1.1.1: - -* Fixed an issue with incorrect window size when display results. - -1.1.0: - -+ Displays the result in the window, along with the picture. -+ Context menu expanded. Added buttons display the last result and copy it to the clipboard. diff --git a/distr/Changelog_ru.txt b/distr/Changelog_ru.txt deleted file mode 100644 index 56e1278..0000000 --- a/distr/Changelog_ru.txt +++ /dev/null @@ -1,69 +0,0 @@ -. - -2.0.2: - -* . - -2.0.1: - -* . - -2.0.0: - -* linux. -* . -* . -* . -* . -* . -* . -* . -* . -* . -* . -* . -* . -* . -* . -* . - -1.2.3: - -* . -* . - -1.2.2: - -* . - -1.2.1: - -* . -* . - -1.2.0: - -+ . -+ . -+ . -+ . -* . -* . - -1.1.3: - -- libgcc_s_dw2-1.dll. -- . - -1.1.2: - -- tessdata \ / . - -1.1.1: - -- . - -1.1.0: - -- , . -- . . diff --git a/distr/deb/DEBIAN/control b/distr/deb/DEBIAN/control deleted file mode 100644 index 864145a..0000000 --- a/distr/deb/DEBIAN/control +++ /dev/null @@ -1,16 +0,0 @@ -Package: screen-translator -Version: 1 -Section: graphics -Architecture: amd64 -Depends: libtesseract3, libqt5webkit5, libqt5x11extras5 -Recommends: tesseract-ocr-eng, tesseract-ocr-rus, tesseract-ocr-deu, tesseract-ocr-spa, tesseract-ocr-chi-sim, tesseract-ocr-fra, tesseract-ocr-jpn -Installed-Size: 1 -Priority: optional -Maintainer: Gres -Homepage: https://github.com/OneMoreGres/ScreenTranslator -Description: Screen capture, OCR and translation tool. - This software allows to translate any text on screen. - Basically it is a combination of screen capture, - OCR and translation tools. - - diff --git a/distr/deb/usr/share/applications/ScreenTranslator.desktop b/distr/deb/usr/share/applications/ScreenTranslator.desktop deleted file mode 100644 index f71d72e..0000000 --- a/distr/deb/usr/share/applications/ScreenTranslator.desktop +++ /dev/null @@ -1,9 +0,0 @@ -[Desktop Entry] -Version=1 -Name=Screen Translator -Comment=Screen capture, OCR and translation tool. -Exec=/opt/ScreenTranslator/ScreenTranslator -Icon=ScreenTranslator.png -Terminal=false -Type=Application -Categories=Graphics; diff --git a/distr/iss/InnoSetup.iss b/distr/iss/InnoSetup.iss deleted file mode 100644 index 5a12725..0000000 --- a/distr/iss/InnoSetup.iss +++ /dev/null @@ -1,129 +0,0 @@ -; Script generated by the Inno Setup Script Wizard. -; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! -#ifexist "defines.iss" -#include "defines.iss" -#endif - -#ifndef MyAppVersion -#define MyAppVersion "1.0.0" -#endif - -#define MyAppName "Screen Translator" -#define MyAppPublisher "Gres" -#define MyAppURL "http://gres.biz/screen-translator/" -#define MyAppExeName "ScreenTranslator.exe" -#define MyAppDescription "Screen capture and translation tool" - -[Setup] -; NOTE: The value of AppId uniquely identifies this application. -; Do not use the same AppId value in installers for other applications. -; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) -AppId={{016F399E-0EED-476C-AB00-8AD0FF5BFD77} -AppName={#MyAppName} -AppVersion={#MyAppVersion} -;AppVerName={#MyAppName} {#MyAppVersion} -AppPublisher={#MyAppPublisher} -AppPublisherURL={#MyAppURL} -AppSupportURL={#MyAppURL} -AppUpdatesURL={#MyAppURL} -DefaultDirName={pf}\{#MyAppName} -DefaultGroupName={#MyAppName} -AllowNoIcons=yes -PrivilegesRequired=admin -CloseApplications=yes -OutputDir=.. -OutputBaseFilename=screen-translator-online-{#MyAppVersion} -SetupIconFile=icon.ico -RestartIfNeededByRun=False -ShowLanguageDialog=auto -VersionInfoCompany={#MyAppPublisher} -VersionInfoDescription={#MyAppDescription} -VersionInfoProductName={#MyAppName} -VersionInfoProductVersion={#MyAppVersion} -VersionInfoVersion={#MyAppVersion} -Compression=lzma2/ultra64 -InternalCompressLevel=ultra -SolidCompression=yes - -[Languages] -Name: "en"; MessagesFile: "compiler:Default.isl,default.isl"; LicenseFile: "LICENSE_en.md"; InfoBeforeFile: "Changelog_en.txt" -Name: "ru"; MessagesFile: "compiler:Languages\Russian.isl,russian.isl"; LicenseFile: "LICENSE_ru.md"; InfoBeforeFile: "Changelog_ru.txt" - -[Tasks] -Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked -Name: "startupicon"; Description: "{cm:CreateStartupIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked -Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1 - -[Icons] -Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" -Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}" -Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon -Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon -Name: "{commonstartup}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: startupicon - -[Run] -Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent -Filename: "{tmp}\vcredist_x86.exe"; Description: "{cm:InstallRedist}"; Parameters: "/install"; Flags: postinstall skipifsilent - -[Files] -Source: "content\ScreenTranslator.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: Executable -Source: "content\*.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: Libraries -Source: "content\platforms\*"; DestDir: "{app}\platforms"; Flags: ignoreversion; Components: Libraries -Source: "content\translators\*"; DestDir: "{app}\translators"; Flags: ignoreversion; Components: Translators -Source: "content\vcredist_x86.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall; - -[Types] -Name: "custom"; Description: "Custom installation"; Flags: iscustom - -[Components] -Name: "Executable"; Description: "{cm:Executables}"; Types: custom; Flags: fixed; -Name: "Libraries"; Description: "{cm:Libraries}"; Types: custom; Flags: fixed; -Name: "Translators"; Description: "{cm:Translators}"; Types: custom; Flags: fixed; - -#include "tessdata.iss" - -[UninstallDelete] -Type: files; Name: "{app}\updates.json" -Type: files; Name: "{app}\st_subs.csv" - -[UninstallRun] -Filename: "taskkill.exe"; Parameters: "/IM ScreenTranslator.exe /T /F" - - -[Code] -#define DwinsHs_Use_Predefined_Downloading_WizardPage -#define DwinsHs_Auto_Continue -#include "dwinshs.iss" - -procedure InitializeWizard(); -begin - DwinsHs_InitializeWizard(wpPreparing); -end; - -procedure CurPageChanged(CurPageID: Integer); -begin - DwinsHs_CurPageChanged(CurPageID, nil, nil); -end; - -function ShouldSkipPage(CurPageId: Integer): Boolean; -begin - Result := False; - DwinsHs_ShouldSkipPage(CurPageId, Result); -end; - -function BackButtonClick(CurPageID: Integer): Boolean; -begin - Result := True; - DwinsHs_BackButtonClick(CurPageID); -end; - -function NextButtonClick(CurPageID: Integer): Boolean; -begin - Result := True; - DwinsHs_NextButtonClick(CurPageID, Result); -end; - -procedure CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean); -begin - DwinsHs_CancelButtonClick(CurPageID, Cancel, Confirm); -end; diff --git a/distr/iss/InnoSetupWithTessdata.iss b/distr/iss/InnoSetupWithTessdata.iss deleted file mode 100644 index 9dc32dd..0000000 --- a/distr/iss/InnoSetupWithTessdata.iss +++ /dev/null @@ -1,91 +0,0 @@ -; Script generated by the Inno Setup Script Wizard. -; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES! -#ifexist "defines.iss" -#include "defines.iss" -#endif - -#ifndef MyAppVersion -#define MyAppVersion "1.0.0" -#endif - -#define MyAppName "Screen Translator" -#define MyAppPublisher "Gres" -#define MyAppURL "http://gres.biz/screen-translator/" -#define MyAppExeName "ScreenTranslator.exe" -#define MyAppDescription "Screen capture and translation tool" - -[Setup] -; NOTE: The value of AppId uniquely identifies this application. -; Do not use the same AppId value in installers for other applications. -; (To generate a new GUID, click Tools | Generate GUID inside the IDE.) -AppId={{016F399E-0EED-476C-AB00-8AD0FF5BFD77} -AppName={#MyAppName} -AppVersion={#MyAppVersion} -;AppVerName={#MyAppName} {#MyAppVersion} -AppPublisher={#MyAppPublisher} -AppPublisherURL={#MyAppURL} -AppSupportURL={#MyAppURL} -AppUpdatesURL={#MyAppURL} -DefaultDirName={pf}\{#MyAppName} -DefaultGroupName={#MyAppName} -AllowNoIcons=yes -PrivilegesRequired=admin -CloseApplications=yes -OutputDir=.. -OutputBaseFilename=screen-translator-offline-{#MyAppVersion} -SetupIconFile=icon.ico -RestartIfNeededByRun=False -ShowLanguageDialog=auto -VersionInfoCompany={#MyAppPublisher} -VersionInfoDescription={#MyAppDescription} -VersionInfoProductName={#MyAppName} -VersionInfoProductVersion={#MyAppVersion} -VersionInfoVersion={#MyAppVersion} -Compression=lzma2/ultra64 -InternalCompressLevel=ultra -SolidCompression=yes - -[Languages] -Name: "en"; MessagesFile: "compiler:Default.isl,default.isl"; LicenseFile: "LICENSE_en.md"; InfoBeforeFile: "Changelog_en.txt" -Name: "ru"; MessagesFile: "compiler:Languages\Russian.isl,russian.isl"; LicenseFile: "LICENSE_ru.md"; InfoBeforeFile: "Changelog_ru.txt" - -[Tasks] -Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked -Name: "startupicon"; Description: "{cm:CreateStartupIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked -Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked; OnlyBelowVersion: 0,6.1 - -[Icons] -Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}" -Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}" -Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon -Name: "{userappdata}\Microsoft\Internet Explorer\Quick Launch\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: quicklaunchicon -Name: "{commonstartup}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: startupicon - -[Run] -Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent -Filename: "{tmp}\vcredist_x86.exe"; Description: "{cm:InstallRedist}"; Parameters: "/install"; Flags: postinstall skipifsilent - -[Files] -Source: "content\ScreenTranslator.exe"; DestDir: "{app}"; Flags: ignoreversion; Components: Executable -Source: "content\*.dll"; DestDir: "{app}"; Flags: ignoreversion; Components: Libraries -Source: "content\platforms\*"; DestDir: "{app}\platforms"; Flags: ignoreversion; Components: Libraries -Source: "content\translators\*"; DestDir: "{app}\translators"; Flags: ignoreversion; Components: Translators -Source: "content\vcredist_x86.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall; - -[Types] -Name: "custom"; Description: "Custom installation"; Flags: iscustom - -[Components] -Name: "Executable"; Description: "{cm:Executables}"; Types: custom; Flags: fixed; -Name: "Libraries"; Description: "{cm:Libraries}"; Types: custom; Flags: fixed; -Name: "Translators"; Description: "{cm:Translators}"; Types: custom; Flags: fixed; - -#include "tessdataBuiltin.iss" - -[UninstallDelete] -Type: files; Name: "{app}\updates.json" -Type: files; Name: "{app}\st_subs.csv" - -[UninstallRun] -Filename: "taskkill.exe"; Parameters: "/IM ScreenTranslator.exe /T /F" - diff --git a/distr/iss/LICENSE_ru.md b/distr/iss/LICENSE_ru.md deleted file mode 100644 index b6ec971..0000000 --- a/distr/iss/LICENSE_ru.md +++ /dev/null @@ -1,9 +0,0 @@ - MIT - -Copyright (c) 2017 Gres (gres@gres.biz) - - , ( ), , , , , , , , / , , , : - - . - - ܻ, - , , , , . - , , , , , - . \ No newline at end of file diff --git a/distr/iss/code2langTr.txt b/distr/iss/code2langTr.txt deleted file mode 100644 index 96d1359..0000000 --- a/distr/iss/code2langTr.txt +++ /dev/null @@ -1,109 +0,0 @@ -#iso-639-3 standard code to names -afr Afrikaans Африкаанс -amh Amharic Амхарский -ara Arabic Арабский -asm Assamese Ассамский -aze Azerbaijani Азербайджанский -#aze_cyrl aze_cyrl -bel Belarusian Белорусский -ben Bengali Бенгальский -bod Tibetan Тибетский -bos Bosnian Боснийский -bul Bulgarian Болгарии -cat Catalan Каталонский -ceb Cebuano Кебуано -ces Czech Чешский -chi_sim Chineese_simplified Китайский_упрощенный -chi_tra Chineese_traditional Китайский_традиционный -chr Cherokee Чероки -cym Welsh Валлийский -dan Danish Датский -#dan_frak dan_frak -deu German Немецкий -#deu_frak deu_frak -dzo Dzongkha Джонгкха -ell Modern_Greek Новогреческий -eng English Английский -enm Middle_English Средневековый_английский -epo Esperanto Эсперанто -equ Math Математика -est Estonian Эстонский -eus Basque Басков -fas Persian Персидский -fin Finnish Финский -fra French Французский -frk Frankish Франкский -frm Middle_French Средневековый_французский -gle Irish Ирландский -glg Galician Галисийский -grc Ancient_Greek Древнегреческий -guj Gujarati Гуджарати -hat Haitian Гаити -heb Hebrew Иврит -hin Hindi Хинди -hrv Croatian Хорватский -hun Hungarian Венгерский -iku Inuktitut Инуктитут -ind Indonesian Индонезийский -isl Icelandic Исландский -ita Italian Итальянский -#ita_old ita_old -jav Javanese Яванский -jpn Japanese Японский -kan Kannada Каннада -kat Georgian Грузинский -#kat_old kat_old -kaz Kazakh Казахский -khm Khmer Кхмерский -kir Kirghiz Киргизский -kor Korean Корейский -kur Kurdish Курдский -lao Lao Лао -lat Latin Латинский -lav Latvian Латышский -lit Lithuanian Литовский -mal Malayalam Малаялам -mar Marathi Маратхи -mkd Macedonian Македонский -mlt Maltese Мальтийский -msa Malay Малайский -mya Burmese Бирманский -nep Nepali Непальский -nld Dutch Голландский -nor Norwegian Норвежский -ori Oriya Ория -#osd OSD OSD -pan Panjabi Панджаби -pol Polish Польский -por Portuguese Португальский -pus Pushto Пушту -ron Romanian Румынский -rus Russian Русский -san Sanskrit Санскрит -sin Sinhala Сингальский -slk Slovak Словацкий -#slk_frak slk_frak -slv Slovenian Словенский -spa Spanish Испанский -#spa_old spa_old -sqi Albanian Албанский -srp Serbian Сербский -#srp_latn srp_latn -swa Swahili Суахили -swe Swedish Шведский -syr Syriac Сирийский -tam Tamil Тамил -tel Telugu Телугу -tgk Tajik Таджикский -tgl Tagalog Тагальский -tha Thai Тайский -tir Tigrinya Тиграи -tur Turkish Турецкий -uig Uighur Уйгурский -ukr Ukrainian Украинский -urd Urdu Урду -uzb Uzbek Узбекский -#uzb_cyrl uzb_cyrl -vie Vietnamese Вьетнамский -yid Yiddish Идиш - diff --git a/distr/iss/default.isl b/distr/iss/default.isl deleted file mode 100644 index 18f8bca..0000000 --- a/distr/iss/default.isl +++ /dev/null @@ -1,106 +0,0 @@ - -[CustomMessages] -CreateStartupIcon=Create autostart icon -Executables=Executables -Libraries=Libraries -Translators=Translators -InstallRedist=Install VC redistributable - -Languages=OCR Languages -Afrikaans=Afrikaans -Albanian=Albanian -Amharic=Amharic -Ancient_Greek=Ancient Greek -Arabic=Arabic -Assamese=Assamese -Azerbaijani=Azerbaijani -Basque=Basque -Belarusian=Belarusian -Bengali=Bengali -Bosnian=Bosnian -Bulgarian=Bulgarian -Burmese=Burmese -Catalan=Catalan -Cebuano=Cebuano -Cherokee=Cherokee -Chineese_simplified=Chineese simplified -Chineese_traditional=Chineese traditional -Croatian=Croatian -Czech=Czech -Danish=Danish -Dutch=Dutch -Dzongkha=Dzongkha -English=English -Esperanto=Esperanto -Estonian=Estonian -Finnish=Finnish -Frankish=Frankish -French=French -Galician=Galician -Georgian=Georgian -German=German -Gujarati=Gujarati -Haitian=Haitian -Hebrew=Hebrew -Hindi=Hindi -Hungarian=Hungarian -Icelandic=Icelandic -Indonesian=Indonesian -Inuktitut=Inuktitut -Irish=Irish -Italian=Italian -Japanese=Japanese -Javanese=Javanese -Kannada=Kannada -Kazakh=Kazakh -Khmer=Khmer -Kirghiz=Kirghiz -Korean=Korean -Kurdish=Kurdish -Lao=Lao -Latin=Latin -Latvian=Latvian -Lithuanian=Lithuanian -Macedonian=Macedonian -Malay=Malay -Malayalam=Malayalam -Maltese=Maltese -Marathi=Marathi -Math=Math -Middle_English=Middle English -Middle_French=Middle French -Modern_Greek=Modern Greek -Nepali=Nepali -Norwegian=Norwegian -Oriya=Oriya -Panjabi=Panjabi -Persian=Persian -Polish=Polish -Portuguese=Portuguese -Pushto=Pushto -Romanian=Romanian -Russian=Russian -Sanskrit=Sanskrit -Serbian=Serbian -Sinhala=Sinhala -Slovak=Slovak -Slovenian=Slovenian -Spanish=Spanish -Swahili=Swahili -Swedish=Swedish -Syriac=Syriac -Tagalog=Tagalog -Tajik=Tajik -Tamil=Tamil -Telugu=Telugu -Thai=Thai -Tibetan=Tibetan -Tigrinya=Tigrinya -Turkish=Turkish -Uighur=Uighur -Ukrainian=Ukrainian -Urdu=Urdu -Uzbek=Uzbek -Vietnamese=Vietnamese -Welsh=Welsh -Yiddish=Yiddish diff --git a/distr/iss/dwinshs.iss b/distr/iss/dwinshs.iss deleted file mode 100644 index 5bb1e34..0000000 --- a/distr/iss/dwinshs.iss +++ /dev/null @@ -1,1266 +0,0 @@ -// ===================================================================================================================== -// DwinsHs -// -// Author: HAN-SOFT -// E-Mail: support@han-soft.com -// WebURL: http://www.han-soft.com -// Copyright (C) 2001, 2015 Han-soft Corporation. All rights reserved. -// ===================================================================================================================== -// $Rev: 113 $ $Id: dwinshs.iss 113 2015-07-23 07:30:14Z hanjy $ -// ===================================================================================================================== - -#define Use_DwinsHs - -[Code] - -type - TCancelDownload = (cdNone, cdBack, cdExit); - TProxyMode = (pmDefault, pmDirect, pmProxy); - TProxyProtocol = (ppHttp, ppSocks); - TDwinsHs_Proxy = record - Mode: TProxyMode; - Protocol: TProxyProtocol; - Host: AnsiString; - Port: Integer; - Username: AnsiString; - Password: AnsiString; - end; - -var - DwinsHs_CancelDownload: TCancelDownload; - DwinsHs_Proxy: TDwinsHs_Proxy; - -const - PM_NOREMOVE = $0000; - PM_REMOVE = $0001; - PM_NOYIELD = $0002; - WM_QUIT = $0012; - -type - TMsg = record - hWnd: HWnd; - Msg: LongInt; - wParam: LongInt; - lParam: LongInt; - Time: LongInt; - Pt: TPoint; - end; - -function PeekMessage(var Msg: TMsg; Wnd: HWnd; MsgFilterMin, MsgFilterMax, wRemoveMsg: LongInt): BOOL; -external 'PeekMessageA@user32.dll stdcall delayload setuponly'; - -function TranslateMessage(var Msg: TMsg): BOOL; -external 'TranslateMessage@user32.dll stdcall delayload setuponly'; - -function DispatchMessage(var Msg: TMsg): LongInt; -external 'DispatchMessageA@user32.dll stdcall delayload setuponly'; - -procedure DwinsHs_ProcessMessages(); -var - Msg: TMsg; -begin - while PeekMessage(Msg, 0, 0, 0, PM_REMOVE) do - if Msg.Msg <> WM_QUIT then - begin - TranslateMessage(Msg); - DispatchMessage(Msg); - end - else - begin - DwinsHs_CancelDownload := cdExit; - end; -end; - -// ===================================================================================================================== - -type - Pointer = Cardinal; - HINTERNET = Pointer; - PLPSTR = Pointer; - LPDWORD = DWORD_PTR; - -function InternetOpen(lpszAgent: PAnsiChar; dwAccessType: DWORD; lpszProxy, lpszProxyBypass: PAnsiChar; - dwFlags: DWORD): HINTERNET; -external 'InternetOpenA@wininet.dll stdcall delayload setuponly'; - -function InternetSetOption(hInet: HINTERNET; dwOption: DWORD; lpBuffer: PAnsiChar; dwBufferLength: DWORD): BOOL; -external 'InternetSetOptionA@wininet.dll stdcall delayload setuponly'; - -function InternetConnect(hInet: HINTERNET; lpszServerName: PAnsiChar; nServerPort: Word; lpszUsername: PAnsiChar; - lpszPassword: PAnsiChar; dwService: DWORD; dwFlags: DWORD; dwContext: DWORD_PTR): HINTERNET; -external 'InternetConnectA@wininet.dll stdcall delayload setuponly'; - -function HttpOpenRequest(hConnect: HINTERNET; lpszVerb: PAnsiChar; lpszObjectName: PAnsiChar; lpszVersion: PAnsiChar; - lpszReferrer: PAnsiChar; lplpszAcceptTypes: PLPSTR; dwFlags: DWORD; dwContext: DWORD_PTR): HINTERNET; -external 'HttpOpenRequestA@wininet.dll stdcall delayload setuponly'; - -function HttpSendRequest(hRequest: HINTERNET; lpszHeaders: PAnsiChar; dwHeadersLength: DWORD; lpOptional: PAnsiChar; - dwOptionalLength: DWORD): BOOL; -external 'HttpSendRequestA@wininet.dll stdcall delayload setuponly'; - -function HttpQueryInfo(hRequest: HINTERNET; dwInfoLevel: DWORD; lpvBuffer: PAnsiChar; var lpdwBufferLength: DWORD; - var lpdwReserved: DWORD): BOOL; -external 'HttpQueryInfoA@wininet.dll stdcall delayload setuponly'; - -function FtpOpenFile(hConnect: HINTERNET; lpszFileName: PAnsiChar; dwAccess: DWORD; dwFlags: DWORD; - dwContext: DWORD): HINTERNET; -external 'FtpOpenFileA@wininet.dll stdcall delayload setuponly'; - -function FtpGetFileSize(hFile: HINTERNET; lpdwFileSizeHigh: DWORD): DWORD; -external 'FtpGetFileSize@wininet.dll stdcall delayload setuponly'; - -function InternetReadFile(hFile: HINTERNET; lpBuffer: PAnsiChar; dwNumberOfBytesToRead: DWORD; - var lpdwNumberOfBytesRead: DWORD): BOOL; -external 'InternetReadFile@wininet.dll stdcall delayload setuponly'; - -function InternetCloseHandle(hInet: HINTERNET): BOOL; -external 'InternetCloseHandle@wininet.dll stdcall delayload setuponly'; - -function InternetGetConnectedState(lpdwFlags: PAnsiChar; dwReserved: DWORD): BOOL; -external 'InternetGetConnectedState@wininet.dll stdcall delayload setuponly'; - -const - INTERNET_CONNECTION_OFFLINE = 32; - INTERNET_OPEN_TYPE_PRECONFIG = 0; - INTERNET_OPEN_TYPE_DIRECT = 1; - INTERNET_OPEN_TYPE_PROXY = 3; - INTERNET_OPTION_PROXY_USERNAME = 43; - INTERNET_OPTION_PROXY_PASSWORD = 44; - INTERNET_SERVICE_FTP = 1; - INTERNET_SERVICE_HTTP = 3; - INTERNET_FLAG_RELOAD = $80000000; - INTERNET_FLAG_SECURE = $00800000; - INTERNET_FLAG_IGNORE_CERT_CN_INVALID = $00001000; - INTERNET_FLAG_IGNORE_CERT_DATE_INVALID = $00002000; - INTERNET_FLAG_EXISTING_CONNECT = $20000000; - INTERNET_FLAG_PASSIVE = $08000000; - GENERIC_READ = $80000000; - FTP_TRANSFER_TYPE_BINARY = $00000002; - HTTP_HEADER = 'Content-Type: application/x-www-form-urlencoded'; - HTTP_QUERY_CONTENT_LENGTH = 5; - HTTP_QUERY_STATUS_CODE = 19; - - #ifndef DwinsHs_Data_Buffer_Length - #define DwinsHs_Data_Buffer_Length 4096 - #endif - READ_BUFFER_LENGTH = {#DwinsHs_Data_Buffer_Length}; - - CONNECT_OK = 0; - CONNECT_ERROR_NETWORK = 1; - CONNECT_ERROR_OFFLINE = 2; - CONNECT_ERROR_INITIALIZE = 3; - CONNECT_ERROR_OPENSESSION = 4; - CONNECT_ERROR_CREATEREQUEST = 5; - CONNECT_ERROR_SENDREQUEST = 6; - - READ_OK = 0; - READ_ERROR_DELETEFILE = 7; - READ_ERROR_SAVEFILE = 8; - READ_ERROR_CANCELED = 9; - READ_ERROR_READDATA = 10; - -type - TReadScheme = (rpHttp, rpHttps, rpFtp); - TReadMethod = (rmGet, rmPost, rmActive, rmPassive); - TOnRead = function(URL, Agent: AnsiString; Method: TReadMethod; Index, TotalSize, ReadSize, CurrentSize: LongInt; - var ReadStr: AnsiString): Boolean; - -procedure ParseURL(URL: AnsiString; var Scheme: TReadScheme; var Host, Path, Data, Username, Password: AnsiString; - var Port: Integer); -var - i: Integer; -begin - URL := Trim(URL); - Scheme := rpHttp; - Port := 80; - i := Pos('://', URL); - if i > 0 then - begin - case LowerCase(Trim(Copy(URL, 1, i - 1))) of - 'http': - begin - Port := 80; - Scheme := rpHttp; - end; - 'https': - begin - Port := 443; - Scheme := rpHttps; - end; - 'ftp': - begin - Port := 21; - Scheme := rpFtp; - end; - end; - URL := Trim(Copy(URL, i + 3, 65535)); - end; - - i := Pos('/', URL); - if i > 0 then - begin - Host := Trim(Copy(URL, 1, i - 1)); - Path := Trim(Copy(URL, i, 65535)); - end - else - begin - Host := URL; - Path := ''; - end; - - i := Pos('@', Host); - if i > 0 then - begin - Username := Trim(Copy(Host, 1, i - 1)); - Host := Trim(Copy(Host, i + 1, 65535)); - end - else - begin - Username := ''; - end; - - i := Pos(':', Username); - if i > 0 then - begin - Password := Trim(Copy(Username, i + 1, 65535)); - Username := Trim(Copy(Username, 1, i - 1)); - end - else - begin - Password := ''; - end; - - i := Pos(':', Host); - if i > 0 then - begin - Port := StrToIntDef(Trim(Copy(Host, i + 1, 65535)), Port); - Host := Trim(Copy(Host, 1, i -1)); - end; - - i := Pos('?', Path); - if i > 0 then - begin - Data := Trim(Copy(Path, i + 1, 65536)); - Path := Trim(Copy(Path, 1, i - 1)); - end - else - Data := ''; - Host := LowerCase(Host); -end; - -procedure DwinsHs_SetProxy(Mode: TProxyMode; Protocol: TProxyProtocol; Host: AnsiString; Port: Integer; - Username, Password: AnsiString); -begin - DwinsHs_Proxy.Mode := Mode; - DwinsHs_Proxy.Protocol := Protocol; - DwinsHs_Proxy.Host := Host; - DwinsHs_Proxy.Port := Port; - DwinsHs_Proxy.Username := Username; - DwinsHs_Proxy.Password := Password; -end; - -function CreateConnect(URL, Agent: AnsiString; Method: TReadMethod; var hSession, hConnect, hRequest: HINTERNET; - var Size: LongInt): Integer; -var - Scheme: TReadScheme; - ProxyProtocolName, Host, Path, Data, Username, Password: AnsiString; - Port, i: Integer; - Buffer: AnsiString; - Flag, Bytes: DWord; - Sended: Boolean; -begin - ParseUrl(URL, Scheme, Host, Path, Data, Username, Password, Port); - Size := -1; - - Result := CONNECT_ERROR_NETWORK; - Buffer := '0000'; - if not InternetGetConnectedState(PAnsiChar(Buffer), 0) then Exit; - Result := CONNECT_ERROR_OFFLINE; - Flag := Ord(Buffer[1]) + Ord(Buffer[2]) * 256 + Ord(Buffer[3]) * 65536 + Ord(Buffer[4]) * 16777216; - if (Flag and INTERNET_CONNECTION_OFFLINE) <> 0 then Exit; - - Result := CONNECT_ERROR_INITIALIZE; - case DwinsHs_Proxy.Mode of - pmDefault: - hSession := InternetOpen(Agent, INTERNET_OPEN_TYPE_PRECONFIG, '', '', 0); - pmDirect: - hSession := InternetOpen(Agent, INTERNET_OPEN_TYPE_DIRECT, '', '', 0); - pmProxy: - begin - case DwinsHs_Proxy.Protocol of - ppHttp: ProxyProtocolName := 'HTTP'; - ppSocks: ProxyProtocolName := 'SOCKS'; - end; - hSession := InternetOpen(Agent, INTERNET_OPEN_TYPE_PROXY, PAnsiChar(ProxyProtocolName + '=' + ProxyProtocolName + - '://' + DwinsHs_Proxy.Host + ':' + IntToStr(DwinsHs_Proxy.Port)), '', 0); - if DwinsHs_Proxy.Username <> '' then - InternetSetOption(hSession, INTERNET_OPTION_PROXY_USERNAME, PAnsiChar(DwinsHs_Proxy.Username), - Length(DwinsHs_Proxy.Username)); - if DwinsHs_Proxy.Password <> '' then - InternetSetOption(hSession, INTERNET_OPTION_PROXY_PASSWORD, PAnsiChar(DwinsHs_Proxy.Password), - Length(DwinsHs_Proxy.Password)); - end; - end; - if hSession = 0 then Exit; - - Result := CONNECT_ERROR_OPENSESSION; - case Scheme of - rpHttp, rpHttps: - hConnect := InternetConnect(hSession, PAnsiChar(Host), Port, PAnsiChar(Username), PAnsiChar(Password), - INTERNET_SERVICE_HTTP, 0, 0); - rpFtp: - begin - if Method = rmPassive then Flag := INTERNET_FLAG_PASSIVE else Flag := 0; - hConnect := InternetConnect(hSession, PAnsiChar(Host), Port, PAnsiChar(Username), PAnsiChar(Password), - INTERNET_SERVICE_FTP, INTERNET_FLAG_EXISTING_CONNECT or Flag, 0); - end; - end; - if hConnect = 0 then - begin - InternetCloseHandle(hSession); - Exit; - end; - - Result := CONNECT_ERROR_CREATEREQUEST; - case Scheme of - rpHttp, rpHttps: - begin - Flag := INTERNET_FLAG_RELOAD; - if Scheme = rpHttps then - Flag := Flag or INTERNET_FLAG_SECURE or INTERNET_FLAG_IGNORE_CERT_CN_INVALID or - INTERNET_FLAG_IGNORE_CERT_DATE_INVALID; - case Method of - rmGet: - begin - if Data <> '' then Path := Path + '?' + Data; - hRequest := HttpOpenRequest(hConnect, 'GET', PAnsiChar(Path), 'HTTP/1.0', '', 0, Flag, 0); - end; - rmPost: - hRequest := HttpOpenRequest(hConnect, 'POST', PAnsiChar(Path), 'HTTP/1.0', '', 0, Flag, 0); - end; - if hRequest = 0 then - begin - InternetCloseHandle(hConnect); - InternetCloseHandle(hSession); - Exit; - end; - Result := CONNECT_ERROR_SENDREQUEST; - case Method of - rmGet: Sended := HttpSendRequest(hRequest, HTTP_HEADER, Length(HTTP_HEADER), '', 0); - rmPost: Sended := HttpSendRequest(hRequest, HTTP_HEADER, Length(HTTP_HEADER), PAnsiChar(Data), Length(Data)); - end; - if Sended then - begin - SetLength(Buffer, READ_BUFFER_LENGTH + 1); - try - Bytes := READ_BUFFER_LENGTH; - Flag := 0; - if HttpQueryInfo(hRequest, HTTP_QUERY_STATUS_CODE, PAnsiChar(Buffer), Bytes, Flag) then - begin - Flag := 0; - for i := 1 to Bytes do Flag := Flag * 10 + Ord(Buffer[i]) - 48; - end; - if Flag >= 400 then - begin - Result := Flag; - end - else - begin - Bytes := READ_BUFFER_LENGTH; - Flag := 0; - if HttpQueryInfo(hRequest, HTTP_QUERY_CONTENT_LENGTH, PAnsiChar(Buffer), Bytes, Flag) then - begin - Size := 0; - for i := 1 to Bytes do Size := Size * 10 + Ord(Buffer[i]) - 48; - end; - Result := CONNECT_OK; - end; - finally - SetLength(Buffer, 0); - end; - end; - if Result <> CONNECT_OK then - begin - InternetCloseHandle(hConnect); - InternetCloseHandle(hSession); - InternetCloseHandle(hRequest); - Exit; - end; - end; - rpFtp: - begin - hRequest := - FtpOpenFile(hConnect, PAnsiChar(Path), GENERIC_READ, FTP_TRANSFER_TYPE_BINARY or INTERNET_FLAG_RELOAD, 0); - if hRequest = 0 then - begin - InternetCloseHandle(hConnect); - InternetCloseHandle(hSession); - Exit; - end; - Size := FtpGetFileSize(hRequest, 0); - Result := CONNECT_OK; - end; - end; -end; - -function DwinsHs_GetRemoteSize(URL, Agent: AnsiString; Method: TReadMethod): LongInt; -var - hSession, hConnect, hRequest: HINTERNET; - Status: Integer; -begin - Status := CreateConnect(URL, Agent, Method, hSession, hConnect, hRequest, Result); - if Status <> CONNECT_OK then - begin - Result := - Status; - Exit; - end; - InternetCloseHandle(hConnect); - InternetCloseHandle(hSession); - InternetCloseHandle(hRequest); -end; - -function DwinsHs_ReadRemoteURL(URL, Agent: AnsiString; Method: TReadMethod; var Response: AnsiString; var Size: LongInt; - SaveFilename: string; OnRead: TOnRead): Integer; -var - hSession, hConnect, hRequest: HINTERNET; - Buffer, ReadStr: AnsiString; - ToContinue: Boolean; - Bytes: DWORD; - Readed, Index: LongInt; -begin - Result := CreateConnect(URL, Agent, Method, hSession, hConnect, hRequest, Size); - if Result <> CONNECT_OK then Exit; - SetLength(Buffer, READ_BUFFER_LENGTH + 1); - try - Index := 0; - Readed := 0; - ToContinue := True; - while ToContinue do - begin - if InternetReadFile(hRequest, PAnsiChar(Buffer), READ_BUFFER_LENGTH, Bytes) then - begin - if Bytes > 0 then - begin - Readed := Readed + Bytes; - ReadStr := Copy(Buffer, 1, Bytes); - if SaveFilename <> '' then - begin - if (Index = 0) and FileExists(SaveFilename) then - begin - Result := READ_ERROR_DELETEFILE; - if not DeleteFile(SaveFilename) then Break; - end; - Result := READ_ERROR_SAVEFILE; - if not SaveStringToFile(SaveFilename, ReadStr, Index <> 0) then Break; - end; - if OnRead <> nil then ToContinue := OnRead(URL, Agent, Method, Index, Size, Readed, Bytes, ReadStr); - Response := Response + ReadStr; - Result := READ_OK; - end - else - begin - ReadStr := ''; - if OnRead <> nil then ToContinue := OnRead(URL, Agent, Method, Index, Size, Readed, 0, ReadStr); - Response := Response + ReadStr; - Break; - end; - if (not ToContinue) or (DwinsHs_CancelDownload <> cdNone) then - begin - ToContinue := False; - Result := READ_ERROR_CANCELED; - end; - DwinsHs_ProcessMessages(); - end - else - begin - ReadStr := ''; - Response := ''; - if SaveFilename <> '' then DeleteFile(SaveFilename); - if OnRead <> nil then ToContinue := OnRead(URL, Agent, Method, -1, Size, Readed, 0, ReadStr); - Result := READ_ERROR_READDATA; - Break; - end; - Index := Index + 1; - end; - finally - SetLength(Buffer, 0); - InternetCloseHandle(hConnect); - InternetCloseHandle(hSession); - InternetCloseHandle(hRequest); - end; -end; - -// ===================================================================================================================== - -#ifdef DwinsHs_Use_Predefined_Downloading_WizardPage - -[CustomMessages] - -#ifndef DwinsHs_Disable_Default_CustomMessages - -DwinsHs_PageCaption =Downloading additional files -DwinsHs_PageDescription =Please wait while setup downloads additional files... -DwinsHs_TotalProgress =Total progress: -DwinsHs_CurrentFile =Current file: -DwinsHs_File =File: -DwinsHs_Speed =Speed: -DwinsHs_Status =Status: -DwinsHs_ElapsedTime =Elapsed time: -DwinsHs_RemainingTime =Remaining time: -DwinsHs_Status_ButtonRetry =&Retry -DwinsHs_Status_ButtonNext =&Next > - -DwinsHs_SizeInBytes =%d Bytes -DwinsHs_SizeInKB =%.2f KB -DwinsHs_SizeInMB =%.2f MB -DwinsHs_ProgressValue = %s of %s (%d%%%) -DwinsHs_SpeedInBytes =%d Bytes/s -DwinsHs_SpeedInKB =%.2f KB/s -DwinsHs_SpeedInMB =%.2f MB/s -DwinsHs_TimeInHour =%d hour(s), %d minute(s), %d second(s) -DwinsHs_TimeInMinute =%d minute(s), %d second(s) -DwinsHs_TimeInSecond =%d second(s) - -DwinsHs_Status_GetFileInformation =Fetch file size -DwinsHs_Status_StartingDownload =Starting to download -DwinsHs_Status_Downloading =Downloading -DwinsHs_Status_DownlaodComplete =Download completes - -DwinsHs_Error_Network =No active Internet connection -DwinsHs_Error_Offline =The computer is in offline mode -DwinsHs_Error_Initialize =Failed to initialize the setup -DwinsHs_Error_OpenSession =Failed to open the FTP or HTTP session -DwinsHs_Error_CreateRequest =Failed to create an HTTP request handle -DwinsHs_Error_SendRequest =Failed to send request to the HTTP server -DwinsHs_Error_DeleteFile =The old file cannot be deleted -DwinsHs_Error_SaveFile =Failed to save data -DwinsHs_Error_Canceled =Download canceled -DwinsHs_Error_ReadData =Failed to read data - -DwinsHs_Status_HTTPError =HTTP error %d: %s -DwinsHs_Status_HTTP400 =Bad request -DwinsHs_Status_HTTP401 =Unauthorized -DwinsHs_Status_HTTP404 =Not found -DwinsHs_Status_HTTP407 =Proxy authentication required -DwinsHs_Status_HTTP500 =Internal error -DwinsHs_Status_HTTP502 =Bad gateway -DwinsHs_Status_HTTP503 =Service unavailable -DwinsHs_Status_HTTPxxx =Other error - -#endif - -[Code] - -function FormatURL(URL: AnsiString): AnsiString; -var - Scheme: TReadScheme; - SchemeTxt, Host, Path, Username, Password, Data: AnsiString; - Port: Integer; -begin - ParseURL(URL, Scheme, Host, Path, Data, Username, Password, Port); - case Scheme of - rpHttp: SchemeTxt := 'http'; - rpHttps: SchemeTxt := 'https'; - rpFtp: SchemeTxt := 'ftp'; - end; - Result := SchemeTxt + '://'; - if (Username <> '') or (Password <> '') then - begin - Host := '@' + Host; - if Username <> '' then Result := Result + Username; - if Password <> '' then Result := Result + ':' + Password; - end; - Result := Result + Host + ':' + IntToStr(Port) + Path; - if (Data <> '') and ((Scheme = rpHttp) or (Scheme = rpHttps)) then Result := Result + '?' + Data; -end; - -function FormatSize(Size: LongInt): string; -begin - if Size < 1024 then - Result := Format(ExpandConstant('{cm:DwinsHs_SizeInBytes}'), [Size]) - else if Size < 1048576 then - Result := Format(ExpandConstant('{cm:DwinsHs_SizeInKB}'), [Double(Size)/1024]) - else - Result := Format(ExpandConstant('{cm:DwinsHs_SizeInMB}'), [Double(Size)/1048576]) -end; - -function FormatSpeed(Speed: LongInt): string; -begin - if Speed < 1024 then - Result := Format(ExpandConstant('{cm:DwinsHs_SpeedInBytes}'), [Speed]) - else if Speed < 1048576 then - Result := Format(ExpandConstant('{cm:DwinsHs_SpeedInKB}'), [Double(Speed)/1024]) - else - Result := Format(ExpandConstant('{cm:DwinsHs_SpeedInMB}'), [Double(Speed)/1048576]) -end; - -function FormatTime(Seconds: LongInt): string; -begin - if Seconds >= 3600 then - Result := Format(ExpandConstant('{cm:DwinsHs_TimeInHour}'), [Seconds div 3600, (Seconds mod 3600) div 60, - Seconds mod 60]) - else if Seconds >= 60 then - Result := Format(ExpandConstant('{cm:DwinsHs_TimeInMinute}'), [Seconds div 60, Seconds mod 60]) - else - Result := Format(ExpandConstant('{cm:DwinsHs_TimeInSecond}'), [Seconds]); -end; - -function DecodeDateTimeString(DateTime: string): LongInt; -var - Year, Month, Day, Hour, Minute, Second: Integer; - a, y, m: Integer; -begin - Year := StrToIntDef(Copy(DateTime, 1, 4), 0); - Month := StrToIntDef(Copy(DateTime, 6, 2), 0); - Day := StrToIntDef(Copy(DateTime, 9, 2), 0); - Hour := StrToIntDef(Copy(DateTime, 12, 2), 0); - Minute := StrToIntDef(Copy(DateTime, 15, 2), 0); - Second := StrToIntDef(Copy(DateTime, 18, 2), 0); - a := (14 - Month) div 12; - y := Year + 4800 - a; - m := Month + 12 * a - 3; - Result := (Day + (153 * m + 2) div 5 + 365 * y + y div 4 - y div 100 + y div 400 - 32045 - 2400000) * 86400 - 43200 + - Hour * 3600 + Minute * 60 + Second; -end; - -#ifndef Hs_CreateLabel -#define Hs_CreateLabel -function CreateLabel(OwnerControl: TComponent; Caption: string; Left, Top, Width: Integer; Wrap, - RightAlignment: Boolean): TLabel; -begin - Result := TLabel.Create(OwnerControl); - if OwnerControl = WizardForm then - Result.Parent := WizardForm - else - Result.Parent := TWizardPage(OwnerControl).Surface; - Result.Caption := Caption; - Result.Left := Left; - Result.Top := Top; - if Wrap or RightAlignment then Result.Width := Width; - if RightAlignment then Result.Alignment := taRightJustify; - Result.WordWrap := Wrap; - Result.AutoSize := True; -end; -#endif - -function CreateProgressBar(OwnerControl: TComponent; Left, Top, Width, Height, MinValue, MaxValue, CurValue: Integer): - TNewProgressBar; -begin - Result := TNewProgressBar.Create(OwnerControl); - if OwnerControl = WizardForm then - Result.Parent := WizardForm - else - Result.Parent := TWizardPage(OwnerControl).Surface; - Result.Left := Left; - Result.Top := Top; - Result.Width := Width; - Result.Height := Height; - Result.Min := MinValue; - Result.Max := MaxValue; - Result.Position := CurValue; -end; - -#ifndef Hs_ClickButton -#define Hs_ClickButton - -const - WM_LBUTTONDOWN = 513; - WM_LBUTTONUP = 514; - -procedure ClickNext(); -begin - PostMessage(WizardForm.NextButton.Handle, WM_LBUTTONDOWN,0,0); - PostMessage(WizardForm.NextButton.Handle, WM_LBUTTONUP,0,0); -end; - -procedure ClickCancel(); -begin - PostMessage(WizardForm.CancelButton.Handle, WM_LBUTTONDOWN,0,0); - PostMessage(WizardForm.CancelButton.Handle, WM_LBUTTONUP,0,0); -end; - -#endif - -Const - FILESIZE_QUERY_SERVER = 0; - FILESIZE_UNKNOWN = -1; - FILESIZE_KEEP_FORMER = -2; - -type - TDownloadWizardDefine = record - DownloadingPage: TWizardPage; - TotalProgress, CurrentProgress: TLabel; - DownloadFile, DownloadSpeed, DownloadStatus, DownloadElapsedTime, DownloadRemainingTime: TLabel; - TotalProgressBar, CurrentProgressBar: TNewProgressBar; - PreviousPageId: Integer; - BeginTime, AllFilesSize, DownloadedSize: LongInt; - DownloadError: Boolean; - end; - - TDownloadItem = record - Filename: string; - URL: AnsiString; - Agent: AnsiString; - Method: TReadMethod; - FileSize: LongInt; - RealSize: LongInt; - Required: Boolean; - Downloaded: Boolean; - end; - - TMirrorItem = record - Filename: string; - URL: AnsiString; - Agent: AnsiString; - Method: TReadMethod; - Required: boolean; - end; - -var - DwinsHs_DownloadWizardDefine: TDownloadWizardDefine; - DwinsHs_DownloadsList: array of TDownloadItem; - DwinsHs_MirrorsList: array of TMirrorItem; - -function UpdateDownloadingPage(URL, Agent: AnsiString; Method: TReadMethod; Index, TotalSize, ReadSize, - CurrentSize: LongInt; var ReadStr: AnsiString): Boolean; -var - ElapsedTime: LongInt; -begin - if Index >= 0 then - begin - DwinsHs_DownloadWizardDefine.DownloadStatus.Caption := ExpandConstant('{cm:DwinsHs_Status_Downloading}'); - DwinsHs_DownloadWizardDefine.DownloadStatus.Repaint; - end; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Position := ReadSize; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Repaint; - DwinsHs_DownloadWizardDefine.DownloadedSize := DwinsHs_DownloadWizardDefine.DownloadedSize + CurrentSize; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Position := DwinsHs_DownloadWizardDefine.DownloadedSize; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Repaint; - if TotalSize > 0 then - begin - DwinsHs_DownloadWizardDefine.CurrentProgress.Caption := - Format(ExpandConstant('{cm:DwinsHs_ProgressValue}'), [FormatSize(ReadSize), FormatSize(TotalSize), - ReadSize * 100 / TotalSize]); - DwinsHs_DownloadWizardDefine.CurrentProgress.Repaint; - end; - if DwinsHs_DownloadWizardDefine.AllFilesSize > 0 then - begin - DwinsHs_DownloadWizardDefine.TotalProgress.Caption := - Format(ExpandConstant('{cm:DwinsHs_ProgressValue}'), [FormatSize(DwinsHs_DownloadWizardDefine.DownloadedSize), - FormatSize(DwinsHs_DownloadWizardDefine.AllFilesSize), DwinsHs_DownloadWizardDefine.DownloadedSize * 100 / - DwinsHs_DownloadWizardDefine.AllFilesSize]); - DwinsHs_DownloadWizardDefine.TotalProgress.Repaint; - end; - ElapsedTime := - DecodeDateTimeString(GetDateTimeString('yyyy-mm-dd hh:nn:ss', '-', ':')) - DwinsHs_DownloadWizardDefine.BeginTime; - DwinsHs_DownloadWizardDefine.DownloadElapsedTime.Caption := FormatTime(ElapsedTime); - DwinsHs_DownloadWizardDefine.DownloadElapsedTime.Repaint; - if ElapsedTime > 0 then - DwinsHs_DownloadWizardDefine.DownloadSpeed.Caption := - FormatSpeed(DwinsHs_DownloadWizardDefine.DownloadedSize div ElapsedTime) - else - DwinsHs_DownloadWizardDefine.DownloadSpeed.Caption := ''; - DwinsHs_DownloadWizardDefine.DownloadSpeed.Repaint; - if DwinsHs_DownloadWizardDefine.DownloadedSize > 0 then - DwinsHs_DownloadWizardDefine.DownloadRemainingTime.Caption := - FormatTime((DwinsHs_DownloadWizardDefine.AllFilesSize - DwinsHs_DownloadWizardDefine.DownloadedSize) * - ElapsedTime / DwinsHs_DownloadWizardDefine.DownloadedSize) - else - DwinsHs_DownloadWizardDefine.DownloadRemainingTime.Caption := ''; - DwinsHs_DownloadWizardDefine.DownloadRemainingTime.Repaint; - Result := DwinsHs_CancelDownload = cdNone; - ReadStr := ''; -end; - -function GetDownloadStateText(State: Integer): string; -var - Text: string; -begin - if State >= 400 then - begin - Text := ExpandConstant('{cm:DwinsHs_Status_HTTPxxx}'); - case State of - 400: Text := ExpandConstant('{cm:DwinsHs_Status_HTTP400}'); - 401: Text := ExpandConstant('{cm:DwinsHs_Status_HTTP401}'); - 404: Text := ExpandConstant('{cm:DwinsHs_Status_HTTP404}'); - 407: Text := ExpandConstant('{cm:DwinsHs_Status_HTTP407}'); - 500: Text := ExpandConstant('{cm:DwinsHs_Status_HTTP500}'); - 502: Text := ExpandConstant('{cm:DwinsHs_Status_HTTP502}'); - 503: Text := ExpandConstant('{cm:DwinsHs_Status_HTTP503}'); - end; - Result := Format(ExpandConstant('{cm:DwinsHs_Status_HTTPError}'), [State, Text]); - end - else - case State of - READ_OK: Result := ExpandConstant('{cm:DwinsHs_Status_DownlaodComplete}'); - CONNECT_ERROR_NETWORK: Result := ExpandConstant('{cm:DwinsHs_Error_Network}'); - CONNECT_ERROR_OFFLINE: Result := ExpandConstant('{cm:DwinsHs_Error_Offline}'); - CONNECT_ERROR_INITIALIZE: Result := ExpandConstant('{cm:DwinsHs_Error_Initialize}'); - CONNECT_ERROR_OPENSESSION: Result := ExpandConstant('{cm:DwinsHs_Error_OpenSession}'); - CONNECT_ERROR_CREATEREQUEST: Result := ExpandConstant('{cm:DwinsHs_Error_CreateRequest}'); - CONNECT_ERROR_SENDREQUEST: Result := ExpandConstant('{cm:DwinsHs_Error_SendRequest}'); - READ_ERROR_DELETEFILE: Result := ExpandConstant('{cm:DwinsHs_Error_DeleteFile}'); - READ_ERROR_SAVEFILE: Result := ExpandConstant('{cm:DwinsHs_Error_SaveFile}'); - READ_ERROR_CANCELED: Result := ExpandConstant('{cm:DwinsHs_Error_Canceled}'); - READ_ERROR_READDATA: Result := ExpandConstant('{cm:DwinsHs_Error_ReadData}'); - end; -end; - -// ===================================================================================================================== - -procedure DwinsHs_AppendRemoteFile(Filename: string; URL, Agent: AnsiString; Method: TReadMethod; FileSize: LongInt); -var - i, c: Integer; - Finded: Boolean; -begin - URL := FormatURL(URL); - Filename := Trim(Filename); - Agent := Trim(Agent); - Finded := False; - c := GetArrayLength(DwinsHs_DownloadsList); - for i := 0 to c - 1 do - begin - if CompareText(DwinsHs_DownloadsList[i].Filename, Filename) = 0 then - begin - Finded := True; - DwinsHs_DownloadsList[i].URL := URL; - DwinsHs_DownloadsList[i].Agent := Agent; - DwinsHs_DownloadsList[i].Method := Method; - DwinsHs_DownloadsList[i].Required := True; - DwinsHs_DownloadsList[i].FileSize := FileSize; - Break; - end; - end; - if not Finded then - begin - SetArrayLength(DwinsHs_DownloadsList, c + 1); - DwinsHs_DownloadsList[c].Filename := Filename; - DwinsHs_DownloadsList[c].URL := URL; - DwinsHs_DownloadsList[c].Agent := Agent; - DwinsHs_DownloadsList[c].Method := Method; - DwinsHs_DownloadsList[c].FileSize := FileSize; - DwinsHs_DownloadsList[c].RealSize := FILESIZE_UNKNOWN; - DwinsHs_DownloadsList[c].Downloaded := False; - DwinsHs_DownloadsList[c].Required := True; - end; -end; - -procedure DwinsHs_AppendMirrorFile(Filename: string; URL, Agent: AnsiString; Method: TReadMethod); -var - i, c: Integer; - Finded: Boolean; -begin - URL := FormatURL(URL); - Filename := Trim(Filename); - Agent := Trim(Agent); - Finded := False; - c := GetArrayLength(DwinsHs_MirrorsList); - for i := 0 to c - 1 do - begin - if (CompareText(DwinsHs_MirrorsList[i].Filename, Filename) = 0) and (DwinsHs_MirrorsList[i].URL = URL) and - (DwinsHs_MirrorsList[i].Agent = Agent) and (DwinsHs_MirrorsList[i].Method = Method) then - begin - Finded := True; - DwinsHs_MirrorsList[i].Required := True; - Break; - end; - end; - if not Finded then - begin - SetArrayLength(DwinsHs_MirrorsList, c + 1); - DwinsHs_MirrorsList[c].Filename := Filename; - DwinsHs_MirrorsList[c].URL := URL; - DwinsHs_MirrorsList[c].Agent := Agent; - DwinsHs_MirrorsList[c].Method := Method; - DwinsHs_MirrorsList[c].Required := True; - end; -end; - -function FindMirror(Filename: string; var URL, Agent: AnsiString; var Method: TReadMethod; - var MirrorID: Integer): Boolean; -var - i, c: Integer; -begin - Result := False; - c := GetArrayLength(DwinsHs_MirrorsList); - for i := MirrorID + 1 to c - 1 do - begin - if (CompareText(DwinsHs_MirrorsList[i].Filename, Filename) = 0) and DwinsHs_MirrorsList[i].Required then - begin - URL := DwinsHs_MirrorsList[i].URL; - Agent := DwinsHs_MirrorsList[i].Agent; - Method := DwinsHs_MirrorsList[i].Method; - MirrorID := i; - Result := True; - Break; - end; - end; -end; - -#ifdef DwinsHs_Use_RemoveRemoteFile -function DwinsHs_RemoveRemoteFile(Filename: string; Delete: Boolean): Boolean; -var - i: Integer; -begin - Filename := Trim(Filename); - Result := False; - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do - begin - if (CompareText(DwinsHs_DownloadsList[i].Filename, Filename) = 0) and DwinsHs_DownloadsList[i].Required then - begin - Result := True; - DwinsHs_DownloadsList[i].Required := False; - if Delete then - begin - DwinsHs_DownloadsList[i].RealSize := FILESIZE_UNKNOWN; - DwinsHs_DownloadsList[i].Downloaded := False; - if FileExists(Filename) then DeleteFile(Filename); - end; - Break; - end; - end; - for i := 0 to GetArrayLength(DwinsHs_MirrorsList) - 1 do - if CompareText(DwinsHs_MirrorsList[i].Filename, Filename) = 0 then DwinsHs_MirrorsList[i].Required := False; -end; -#endif - -#ifdef DwinsHs_Use_ResetRemoteFile -function DwinsHs_ResetRemoteFile(Filename: string; FileSize: Longint): Boolean; -var - i: Integer; -begin - Filename := Trim(Filename); - Result := False; - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do - begin - if (CompareText(DwinsHs_DownloadsList[i].Filename, Filename) = 0) and DwinsHs_DownloadsList[i].Required then - begin - Result := True; - if FileSize <> FILESIZE_KEEP_FORMER then DwinsHs_DownloadsList[i].FileSize := FileSize; - DwinsHs_DownloadsList[i].RealSize := FILESIZE_UNKNOWN; - DwinsHs_DownloadsList[i].Downloaded := False; - if FileExists(Filename) then DeleteFile(Filename); - Break; - end; - end; -end; -#endif - -#ifdef DwinsHs_Use_RemoteFilesCount -function DwinsHs_RemoteFilesCount(WaitToDownload: Boolean): Integer; -var - i: Integer; -begin - Result := 0; - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do - begin - if DwinsHs_DownloadsList[i].Required then - begin - Result := Result + 1; - if WaitToDownload and DwinsHs_DownloadsList[i].Downloaded then Result := Result - 1; - end; - end; -end; -#endif - -#ifdef DwinsHs_Use_RemoveAllRemoteFiles -procedure DwinsHs_RemoveAllRemoteFiles(Delete: Boolean); -var - i: Integer; -begin - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do - begin - DwinsHs_DownloadsList[i].Required := False; - if Delete and DwinsHs_DownloadsList[i].Required then - begin - DwinsHs_DownloadsList[i].RealSize := FILESIZE_UNKNOWN; - DwinsHs_DownloadsList[i].Downloaded := False; - if FileExists(DwinsHs_DownloadsList[i].Filename) then DeleteFile(DwinsHs_DownloadsList[i].Filename); - end; - end; - for i := 0 to GetArrayLength(DwinsHs_MirrorsList) - 1 do DwinsHs_MirrorsList[i].Required := False; -end; -#endif - -#ifdef DwinsHs_Use_ResetAllRemoteFiles -procedure DwinsHs_ResetAllRemoteFiles(); -var - i: Integer; -begin - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do - begin - DwinsHs_DownloadsList[i].RealSize := FILESIZE_UNKNOWN; - DwinsHs_DownloadsList[i].Downloaded := False; - if FileExists(DwinsHs_DownloadsList[i].Filename) then DeleteFile(DwinsHs_DownloadsList[i].Filename); - end; -end; -#endif - -#if (Find(FindSection('Files') + 1, 'DwinsHs_Check(', FIND_CONTAINS||FIND_TRIM) > 0) -function DwinsHs_Check(Filename, URL, Agent, Method: string; FileSize: LongInt): Boolean; -var - MethodValue: TReadMethod; -begin - Result := True; - case LowerCase(Trim(Method)) of - 'get': MethodValue := rmGet; - 'post': MethodValue := rmPost; - 'active': MethodValue := rmActive; - 'passive': MethodValue := rmPassive; - end; - DwinsHs_AppendRemoteFile(Filename, URL, Agent, MethodValue, FileSize); -end; -#endif - -procedure DwinsHs_InitializeWizard(AfterId: Integer); -begin - DwinsHs_DownloadWizardDefine.PreviousPageId := AfterId; - DwinsHs_DownloadWizardDefine.DownloadingPage := CreateCustomPage(AfterId, - ExpandConstant('{cm:DwinsHs_PageCaption}'), ExpandConstant('{cm:DwinsHs_PageDescription}')); - DwinsHs_DownloadWizardDefine.TotalProgress := CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, '', - ScaleX(8), ScaleY(16), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, True); - CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, ExpandConstant('{cm:DwinsHs_TotalProgress}'), - ScaleX(8), ScaleY(16), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, False); - DwinsHs_DownloadWizardDefine.TotalProgressBar := CreateProgressBar(DwinsHs_DownloadWizardDefine.DownloadingPage, - ScaleX(8), ScaleY(34), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), ScaleY(16), 0, 0, - 0); - DwinsHs_DownloadWizardDefine.CurrentProgress := CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, '', - ScaleX(8), ScaleY(60), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, True); - CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, ExpandConstant('{cm:DwinsHs_CurrentFile}'), ScaleX(8), - ScaleY(60), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, False); - DwinsHs_DownloadWizardDefine.CurrentProgressBar := CreateProgressBar(DwinsHs_DownloadWizardDefine.DownloadingPage, - ScaleX(8), ScaleY(78), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), ScaleY(16), 0, 0, - 0); - DwinsHs_DownloadWizardDefine.DownloadFile := CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, '', - ScaleX(8), ScaleY(114), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, True); - CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, ExpandConstant('{cm:DwinsHs_File}'), - ScaleX(8), ScaleY(114), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, False); - DwinsHs_DownloadWizardDefine.DownloadSpeed := CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, '', - ScaleX(8), ScaleY(134), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, True); - CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, ExpandConstant('{cm:DwinsHs_Speed}'), ScaleX(8), - ScaleY(134), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, False); - DwinsHs_DownloadWizardDefine.DownloadStatus := CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, '', - ScaleX(8), ScaleY(154), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, True); - CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, ExpandConstant('{cm:DwinsHs_Status}'), - ScaleX(8), ScaleY(154), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, False); - DwinsHs_DownloadWizardDefine.DownloadElapsedTime := CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, '', - ScaleX(8), ScaleY(174), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, True); - CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, ExpandConstant('{cm:DwinsHs_ElapsedTime}'), - ScaleX(8), ScaleY(174), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, False); - DwinsHs_DownloadWizardDefine.DownloadRemainingTime := CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, '', - ScaleX(8), ScaleY(194), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, True); - CreateLabel(DwinsHs_DownloadWizardDefine.DownloadingPage, ExpandConstant('{cm:DwinsHs_RemainingTime}'), - ScaleX(8), ScaleY(194), DwinsHs_DownloadWizardDefine.DownloadingPage.SurfaceWidth - ScaleX(16), False, False); - SetArrayLength(DwinsHs_DownloadsList, 0); - DwinsHs_Proxy.Mode := pmDefault; -end; - -type - TBeforeDownload = function (): Boolean; - TAfterDownload = procedure (State: Integer); - -var - DwinsHs_BeforeDownload: TBeforeDownload; - DwinsHs_AfterDownload: TAfterDownload; - -procedure DwinsHs_CurPageChanged(CurPageID: Integer; BeforeDownload: TBeforeDownload; AfterDownload: TAfterDownload); -var - CurURL, CurAgent: AnsiString; - CurMethod: TReadMethod; - CurDownloadedSize: LongInt; - Response: AnsiString; - CurrentSize, Size: LongInt; - i, State, MirrorID: Integer; -begin - DwinsHs_BeforeDownload := BeforeDownload; - DwinsHs_AfterDownload := AfterDownload; - if (CurPageId = DwinsHs_DownloadWizardDefine.PreviousPageId) and (CurPageId = wpPreparing) then - begin - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do DwinsHs_DownloadsList[i].Required := False; - end - else if CurPageId = DwinsHs_DownloadWizardDefine.DownloadingPage.Id then - begin - WizardForm.NextButton.Enabled := False; - WizardForm.NextButton.Caption := ExpandConstant('{cm:DwinsHs_Status_ButtonNext}'); - WizardForm.NextButton.Repaint; - if BeforeDownload <> nil then - begin - if not BeforeDownload() then Exit; - end; - DwinsHs_DownloadWizardDefine.TotalProgress.Caption := ''; - DwinsHs_DownloadWizardDefine.TotalProgress.Repaint; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Position := 0; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Style := npbstMarquee; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Repaint; - DwinsHs_DownloadWizardDefine.CurrentProgress.Caption := ''; - DwinsHs_DownloadWizardDefine.CurrentProgress.Repaint; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Position := 0; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Style := npbstMarquee; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Repaint; - DwinsHs_DownloadWizardDefine.DownloadSpeed.Caption := ''; - DwinsHs_DownloadWizardDefine.DownloadSpeed.Repaint; - DwinsHs_DownloadWizardDefine.DownloadStatus.Caption := ExpandConstant('{cm:DwinsHs_Status_GetFileInformation}'); - DwinsHs_DownloadWizardDefine.DownloadStatus.Font.Color := DwinsHs_DownloadWizardDefine.DownloadFile.Font.Color; - DwinsHs_DownloadWizardDefine.DownloadStatus.Repaint; - DwinsHs_DownloadWizardDefine.DownloadElapsedTime.Caption := FormatTime(0); - DwinsHs_DownloadWizardDefine.DownloadElapsedTime.Repaint; - DwinsHs_DownloadWizardDefine.DownloadRemainingTime.Caption := ''; - DwinsHs_DownloadWizardDefine.DownloadRemainingTime.Repaint; - DwinsHs_ProcessMessages(); - DwinsHs_DownloadWizardDefine.DownloadError := False; - DwinsHs_DownloadWizardDefine.AllFilesSize := 0; - DwinsHs_DownloadWizardDefine.DownloadedSize := 0; - DwinsHs_CancelDownload := cdNone; - State := 0; - DwinsHs_DownloadWizardDefine.BeginTime := DecodeDateTimeString(GetDateTimeString('yyyy-mm-dd hh:nn:ss', '-', ':')); - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do - begin - if DwinsHs_DownloadsList[i].Required then - begin - DwinsHs_DownloadWizardDefine.DownloadFile.Caption := ExtractFileName(DwinsHs_DownloadsList[i].Filename); - DwinsHs_DownloadWizardDefine.DownloadFile.Repaint; - DwinsHs_DownloadsList[i].RealSize := DwinsHs_DownloadsList[i].FileSize; - if DwinsHs_DownloadsList[i].FileSize <= 0 then - begin - CurURL := DwinsHs_DownloadsList[i].URL; - CurAgent := DwinsHs_DownloadsList[i].Agent; - CurMethod := DwinsHs_DownloadsList[i].Method; - MirrorID := -1; - repeat - CurrentSize := DwinsHs_GetRemoteSize(CurURL, CurAgent, CurMethod); - if CurrentSize >= 0 then Break; - if not FindMirror(DwinsHs_DownloadsList[i].Filename, CurURL, CurAgent, CurMethod, MirrorId) then Break; - until false; - if CurrentSize >= 0 then DwinsHs_DownloadsList[i].RealSize := CurrentSize; - end; - DwinsHs_ProcessMessages(); - if DwinsHs_DownloadsList[i].RealSize > 0 then - DwinsHs_DownloadWizardDefine.AllFilesSize := - DwinsHs_DownloadWizardDefine.AllFilesSize + DwinsHs_DownloadsList[i].RealSize; - end; - end; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Max := DwinsHs_DownloadWizardDefine.AllFilesSize; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Style := npbstNormal; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Style := npbstNormal; - DwinsHs_DownloadWizardDefine.DownloadStatus.Font.Color := DwinsHs_DownloadWizardDefine.DownloadFile.Font.Color; - DwinsHs_DownloadWizardDefine.TotalProgressBar.State := npbsNormal; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.State := npbsNormal; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Repaint; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Repaint; - DwinsHs_DownloadWizardDefine.DownloadStatus.Repaint; - DwinsHs_ProcessMessages(); - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do - begin - DwinsHs_ProcessMessages(); - if DwinsHs_DownloadsList[i].Downloaded then - begin - DwinsHs_DownloadWizardDefine.DownloadedSize := - DwinsHs_DownloadWizardDefine.DownloadedSize + DwinsHs_DownloadsList[i].RealSize; - DwinsHs_DownloadWizardDefine.DownloadFile.Caption := ExtractFileName(DwinsHs_DownloadsList[i].Filename); - DwinsHs_DownloadWizardDefine.DownloadFile.Repaint; - DwinsHs_DownloadWizardDefine.DownloadStatus.Caption := ExpandConstant('{cm:DwinsHs_Status_DownlaodComplete}'); - DwinsHs_DownloadWizardDefine.DownloadStatus.Repaint; - UpdateDownloadingPage(DwinsHs_DownloadsList[i].URL, DwinsHs_DownloadsList[i].Agent, - DwinsHs_DownloadsList[i].Method, -1, DwinsHs_DownloadsList[i].RealSize, DwinsHs_DownloadsList[i].RealSize, 0, - Response); - if DwinsHs_CancelDownload <> cdNone then Break; - end - else - begin - DwinsHs_DownloadWizardDefine.DownloadFile.Caption := ExtractFileName(DwinsHs_DownloadsList[i].Filename); - DwinsHs_DownloadWizardDefine.DownloadFile.Repaint; - CurDownloadedSize := DwinsHs_DownloadWizardDefine.DownloadedSize; - CurURL := DwinsHs_DownloadsList[i].URL; - CurAgent := DwinsHs_DownloadsList[i].Agent; - CurMethod := DwinsHs_DownloadsList[i].Method; - MirrorID := -1; - repeat - DwinsHs_DownloadWizardDefine.DownloadedSize := CurDownloadedSize; - DwinsHs_DownloadWizardDefine.DownloadStatus.Caption := ExpandConstant('{cm:DwinsHs_Status_StartingDownload}'); - DwinsHs_DownloadWizardDefine.DownloadStatus.Repaint; - UpdateDownloadingPage(CurURL, CurAgent, CurMethod, -1, DwinsHs_DownloadsList[i].RealSize, 0, 0, Response); - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Max := DwinsHs_DownloadsList[i].RealSize; - State := DwinsHs_ReadRemoteURL(CurURL, CurAgent, CurMethod, Response, Size, DwinsHs_DownloadsList[i].Filename, - @UpdateDownloadingPage); - DwinsHs_DownloadWizardDefine.DownloadStatus.Caption := GetDownloadStateText(State); - DwinsHs_DownloadWizardDefine.DownloadStatus.Repaint; - if DwinsHs_CancelDownload <> cdNone then Break; - if State = READ_OK then Break; - if not FindMirror(DwinsHs_DownloadsList[i].Filename, CurURL, CurAgent, CurMethod, MirrorID) then Break; - until false; - if DwinsHs_CancelDownload <> cdNone then Break; - if State <> READ_OK then Break; - DwinsHs_DownloadsList[i].Downloaded := True; - end; - WizardForm.Repaint; - end; - DwinsHs_DownloadWizardDefine.TotalProgressBar.Repaint; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.Repaint; - case DwinsHs_CancelDownload of - cdNone: - begin - WizardForm.NextButton.Enabled := True; - if State <> READ_OK then - begin - DwinsHs_DownloadWizardDefine.TotalProgressBar.State := npbsError; - DwinsHs_DownloadWizardDefine.DownloadStatus.Font.Color := clRed; - DwinsHs_DownloadWizardDefine.CurrentProgressBar.State := npbsError; - WizardForm.NextButton.Caption := ExpandConstant('{cm:DwinsHs_Status_ButtonRetry}'); - WizardForm.NextButton.Repaint; - DwinsHs_DownloadWizardDefine.DownloadError := True; - if AfterDownload <> nil then AfterDownload(State); - end - else - begin - DwinsHs_DownloadWizardDefine.DownloadStatus.Font.Color := clGreen; - if AfterDownload <> nil then AfterDownload(State); - #ifdef DwinsHs_Auto_Continue - ClickNext(); - #endif - end; - end; - cdBack: ; - cdExit: ClickCancel(); - end; - end; -end; - -procedure DwinsHs_ShouldSkipPage(CurPageID: Integer; var ChangeResult: Boolean); -var - i: Integer; -begin - if CurPageID = DwinsHs_DownloadWizardDefine.DownloadingPage.Id then - begin - ChangeResult := True; - for i := 0 to GetArrayLength(DwinsHs_DownloadsList) - 1 do - begin - if DwinsHs_DownloadsList[i].Required and (not DwinsHs_DownloadsList[i].Downloaded) then - begin - ChangeResult := False; - Break; - end; - end; - end; -end; - -procedure DwinsHs_BackButtonClick(CurPageID: Integer); -begin - if CurPageID = DwinsHs_DownloadWizardDefine.DownloadingPage.Id then DwinsHs_CancelDownload := cdBack; -end; - -procedure DwinsHs_NextButtonClick(CurPageID: Integer; var ChangeResult: Boolean); -begin - if (CurPageID = DwinsHs_DownloadWizardDefine.DownloadingPage.Id) and DwinsHs_DownloadWizardDefine.DownloadError then - begin - ChangeResult := False; - DwinsHs_CurPageChanged(CurPageID, DwinsHs_BeforeDownload, DwinsHs_AfterDownload); - end; -end; - -procedure DwinsHs_CancelButtonClick(CurPageID: Integer; var Cancel, Confirm: Boolean); -begin - if (CurPageId = DwinsHs_DownloadWizardDefine.DownloadingPage.Id) and (DwinsHs_CancelDownload = cdExit) then - Confirm := False; -end; - -#endif diff --git a/distr/iss/make_tess_iss.sh b/distr/iss/make_tess_iss.sh deleted file mode 100755 index f1192f4..0000000 --- a/distr/iss/make_tess_iss.sh +++ /dev/null @@ -1,94 +0,0 @@ -#!/bin/bash - -TESSDATA_DIR="$1" - -if [ -z "$TESSDATA_DIR" ]; then echo "Usage $0 "; exit 0; fi - -TESSDATA_DIR=`readlink -e $TESSDATA_DIR` -OUT_FILE="tessdata.iss" -OUT_FILE=`readlink -m $OUT_FILE` -LANGS_FILE="code2langTr.txt" - -function getLangsOrder { - local FIELD=$1 - local ORDER=`cat $LANGS_FILE | cut -d' ' -f$FIELD | sort` - local FNAMES="" - for i in $ORDER; do - local FNAME=`grep "$i" $LANGS_FILE | cut -d' ' -f1` - if [[ -z "$FNAME" || "${FNAME:0:1}" == "#" ]]; then - continue; - fi - FNAMES=$FNAMES" $FNAME" - done - echo $FNAMES -} - -FILES="[Files]\n" -COMPONENTS="[Components]\nName: \"Languages\"; Description: \"{cm:Languages}\"; Types: custom\n" -MESSAGES_EN="\n[CustomMessages]\nen.Languages=OCR Languages\n" -MESSAGES_RU="\n[CustomMessages]\nru.Languages=Языки распознавания\n" -PREV_LANG="" -CUSTOM_LANGS="eng" - - -function fillIss { - local LANG_FIELD=$1 - local COMPONENT_LANG=$2 - local ONLY_COMPONENTS=$3 - COMPONENTS=$COMPONENTS"\n" - local ORDER=`cat $LANGS_FILE | cut -d' ' -f$LANG_FIELD | sort` - for i in $ORDER; do - local LANG_LINE=$(grep " $i " $LANGS_FILE) - local FNAME=$(echo "$LANG_LINE" | cut -d' ' -f1) - local LANG_EN=$(echo "$LANG_LINE" | cut -d' ' -f2) - local LANG_RU=$(echo "$LANG_LINE" | cut -d' ' -f3) - if [[ -z "$FNAME" || "${FNAME:0:1}" == "#" ]]; then - continue; - fi - - local CUR_LANG_FILES=`find $TESSDATA_DIR -name "$FNAME.*"` - if [ -z "$CUR_LANG_FILES" ]; then - echo "no lang" - continue - fi - - - local COMPONENT_SIZE=0 - for s in `find $TESSDATA_DIR -name "$FNAME.*" -exec wc -c {} \; | cut -d' ' -f1`; do - COMPONENT_SIZE=$(expr $COMPONENT_SIZE + $s) - done - TYPES="" - if [[ $CUSTOM_LANGS =~ $FNAME ]]; then - TYPES="custom" - fi - if [ ! -z "$TYPES" ]; then - TYPES="Types: $TYPES; "; - fi - COMPONENTS=$COMPONENTS"Name: \"Languages\\\\$LANG_EN\"; Description: \"{cm:$LANG_EN}\"; Languages: $COMPONENT_LANG; - $TYPES ExtraDiskSpaceRequired: $COMPONENT_SIZE\n" - - - if $ONLY_COMPONENTS; then - continue; - fi - MESSAGES_EN=$MESSAGES_EN"en.$LANG_EN=$(echo "$LANG_EN" | sed 's/_/ /g')\n" - MESSAGES_RU=$MESSAGES_RU"ru.$LANG_EN=$(echo "$LANG_RU" | sed 's/_/ /g')\n" - - for f in $CUR_LANG_FILES; do - local FNAME=$(basename "$f") - FILES=$FILES"Source: \"{tmp}\\\\$FNAME\"; DestDir: \"{app}\\\\tessdata\"; Components: Languages\\\\$LANG_EN; - Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\\\\$FNAME'), - 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/$FNAME', 'ST_setup', 'Get', 0);\n" - done - done -} -fillIss 2 "en" false -fillIss 3 "ru" true - -echo -e $FILES > $OUT_FILE -echo -e $COMPONENTS >> $OUT_FILE -echo -e $MESSAGES_EN >> $OUT_FILE -echo -e $MESSAGES_RU >> $OUT_FILE -iconv -f utf8 -t cp1251 $OUT_FILE -o $OUT_FILE.1 -mv $OUT_FILE.1 $OUT_FILE - diff --git a/distr/iss/russian.isl b/distr/iss/russian.isl deleted file mode 100644 index 7b164bb..0000000 --- a/distr/iss/russian.isl +++ /dev/null @@ -1,122 +0,0 @@ - -[CustomMessages] -CreateStartupIcon= -Executables= -Libraries= -Translators= -InstallRedist= Visual C++ - -DwinsHs_PageCaption = -DwinsHs_PageDescription =, ... -DwinsHs_TotalProgress = : -DwinsHs_CurrentFile = : -DwinsHs_File =: -DwinsHs_Speed =: -DwinsHs_Status =: -DwinsHs_ElapsedTime = : -DwinsHs_RemainingTime = : - -DwinsHs_Status_GetFileInformation = -DwinsHs_Status_StartingDownload = -DwinsHs_Status_Downloading = -DwinsHs_Status_DownlaodComplete = - -Languages= -Afrikaans= -Albanian= -Amharic= -Ancient_Greek= -Arabic= -Assamese= -Azerbaijani= -Basque= -Belarusian= -Bengali= -Bosnian= -Bulgarian= -Burmese= -Catalan= -Cebuano= -Cherokee= -Chineese_simplified= -Chineese_traditional= -Croatian= -Czech= -Danish= -Dutch= -Dzongkha= -English= -Esperanto= -Estonian= -Finnish= -Frankish= -French= -Galician= -Georgian= -German= -Gujarati= -Haitian= -Hebrew= -Hindi= -Hungarian= -Icelandic= -Indonesian= -Inuktitut= -Irish= -Italian= -Japanese= -Javanese= -Kannada= -Kazakh= -Khmer= -Kirghiz= -Korean= -Kurdish= -Lao= -Latin= -Latvian= -Lithuanian= -Macedonian= -Malay= -Malayalam= -Maltese= -Marathi= -Math= -Middle_English= -Middle_French= -Modern_Greek= -Nepali= -Norwegian= -Oriya= -Panjabi= -Persian= -Polish= -Portuguese= -Pushto= -Romanian= -Russian= -Sanskrit= -Serbian= -Sinhala= -Slovak= -Slovenian= -Spanish= -Swahili= -Swedish= -Syriac= -Tagalog= -Tajik= -Tamil= -Telugu= -Thai= -Tibetan= -Tigrinya= -Turkish= -Uighur= -Ukrainian= -Urdu= -Uzbek= -Vietnamese= -Welsh= -Yiddish= - diff --git a/distr/iss/tessdata.iss b/distr/iss/tessdata.iss deleted file mode 100644 index e953a5a..0000000 --- a/distr/iss/tessdata.iss +++ /dev/null @@ -1,348 +0,0 @@ -[Files] -Source: "{tmp}\afr.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Afrikaans; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\afr.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/afr.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\sqi.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Albanian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\sqi.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/sqi.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\amh.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Amharic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\amh.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/amh.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\grc.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Ancient_Greek; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\grc.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/grc.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ara.cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ara.cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ara.cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\ara.cube.bigrams"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ara.cube.bigrams'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ara.cube.bigrams', 'ST_setup', 'Get', 0); -Source: "{tmp}\ara.cube.word-freq"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ara.cube.word-freq'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ara.cube.word-freq', 'ST_setup', 'Get', 0); -Source: "{tmp}\ara.cube.size"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ara.cube.size'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ara.cube.size', 'ST_setup', 'Get', 0); -Source: "{tmp}\ara.cube.params"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ara.cube.params'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ara.cube.params', 'ST_setup', 'Get', 0); -Source: "{tmp}\ara.cube.fold"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ara.cube.fold'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ara.cube.fold', 'ST_setup', 'Get', 0); -Source: "{tmp}\ara.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ara.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ara.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ara.cube.lm"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ara.cube.lm'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ara.cube.lm', 'ST_setup', 'Get', 0); -Source: "{tmp}\asm.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Assamese; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\asm.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/asm.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\aze.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Azerbaijani; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\aze.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/aze.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\eus.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Basque; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eus.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eus.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\bel.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Belarusian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\bel.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/bel.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ben.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Bengali; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ben.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ben.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\bos.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Bosnian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\bos.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/bos.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\bul.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Bulgarian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\bul.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/bul.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\mya.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Burmese; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\mya.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/mya.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\cat.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Catalan; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\cat.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/cat.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ceb.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Cebuano; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ceb.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ceb.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\chr.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Cherokee; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\chr.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/chr.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\chi_sim.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Chineese_simplified; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\chi_sim.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/chi_sim.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\chi_tra.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Chineese_traditional; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\chi_tra.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/chi_tra.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\hrv.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Croatian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hrv.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hrv.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ces.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Czech; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ces.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ces.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\dan.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Danish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\dan.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/dan.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\nld.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Dutch; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\nld.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/nld.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\dzo.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Dzongkha; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\dzo.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/dzo.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.cube.word-freq"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.cube.word-freq'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.cube.word-freq', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.cube.params"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.cube.params'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.cube.params', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.cube.bigrams"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.cube.bigrams'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.cube.bigrams', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.cube.fold"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.cube.fold'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.cube.fold', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.cube.size"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.cube.size'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.cube.size', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.tesseract_cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.tesseract_cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.tesseract_cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\eng.cube.lm"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\eng.cube.lm'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/eng.cube.lm', 'ST_setup', 'Get', 0); -Source: "{tmp}\epo.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Esperanto; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\epo.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/epo.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\est.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Estonian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\est.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/est.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\fin.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Finnish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fin.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fin.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\frk.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Frankish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\frk.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/frk.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.tesseract_cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.tesseract_cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.tesseract_cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.cube.params"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.cube.params'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.cube.params', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.cube.lm"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.cube.lm'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.cube.lm', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.cube.fold"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.cube.fold'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.cube.fold', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.cube.size"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.cube.size'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.cube.size', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.cube.bigrams"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.cube.bigrams'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.cube.bigrams', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\fra.cube.word-freq"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fra.cube.word-freq'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fra.cube.word-freq', 'ST_setup', 'Get', 0); -Source: "{tmp}\glg.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Galician; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\glg.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/glg.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\kat.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Georgian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\kat.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/kat.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\deu.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\German; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\deu.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/deu.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\guj.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Gujarati; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\guj.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/guj.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\hat.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Haitian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hat.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hat.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\heb.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Hebrew; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\heb.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/heb.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\hin.cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\Hindi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hin.cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hin.cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\hin.cube.lm"; DestDir: "{app}\tessdata"; Components: Languages\Hindi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hin.cube.lm'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hin.cube.lm', 'ST_setup', 'Get', 0); -Source: "{tmp}\hin.tesseract_cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\Hindi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hin.tesseract_cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hin.tesseract_cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\hin.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Hindi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hin.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hin.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\hin.cube.params"; DestDir: "{app}\tessdata"; Components: Languages\Hindi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hin.cube.params'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hin.cube.params', 'ST_setup', 'Get', 0); -Source: "{tmp}\hin.cube.word-freq"; DestDir: "{app}\tessdata"; Components: Languages\Hindi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hin.cube.word-freq'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hin.cube.word-freq', 'ST_setup', 'Get', 0); -Source: "{tmp}\hin.cube.fold"; DestDir: "{app}\tessdata"; Components: Languages\Hindi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hin.cube.fold'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hin.cube.fold', 'ST_setup', 'Get', 0); -Source: "{tmp}\hin.cube.bigrams"; DestDir: "{app}\tessdata"; Components: Languages\Hindi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hin.cube.bigrams'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hin.cube.bigrams', 'ST_setup', 'Get', 0); -Source: "{tmp}\hun.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Hungarian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\hun.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/hun.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\isl.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Icelandic; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\isl.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/isl.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ind.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Indonesian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ind.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ind.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\iku.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Inuktitut; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\iku.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/iku.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\gle.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Irish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\gle.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/gle.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.tesseract_cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.tesseract_cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.tesseract_cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.cube.word-freq"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.cube.word-freq'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.cube.word-freq', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.cube.params"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.cube.params'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.cube.params', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.cube.fold"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.cube.fold'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.cube.fold', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.cube.bigrams"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.cube.bigrams'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.cube.bigrams', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.cube.size"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.cube.size'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.cube.size', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\ita.cube.lm"; DestDir: "{app}\tessdata"; Components: Languages\Italian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ita.cube.lm'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ita.cube.lm', 'ST_setup', 'Get', 0); -Source: "{tmp}\jpn.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Japanese; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\jpn.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/jpn.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\jav.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Javanese; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\jav.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/jav.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\kan.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Kannada; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\kan.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/kan.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\kaz.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Kazakh; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\kaz.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/kaz.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\khm.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Khmer; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\khm.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/khm.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\kir.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Kirghiz; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\kir.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/kir.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\kor.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Korean; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\kor.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/kor.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\kur.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Kurdish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\kur.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/kur.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\lao.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Lao; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\lao.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/lao.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\lat.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Latin; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\lat.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/lat.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\lav.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Latvian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\lav.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/lav.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\lit.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Lithuanian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\lit.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/lit.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\mkd.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Macedonian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\mkd.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/mkd.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\msa.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Malay; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\msa.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/msa.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\mal.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Malayalam; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\mal.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/mal.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\mlt.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Maltese; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\mlt.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/mlt.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\mar.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Marathi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\mar.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/mar.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\equ.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Math; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\equ.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/equ.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\enm.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Middle_English; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\enm.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/enm.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\frm.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Middle_French; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\frm.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/frm.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ell.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Modern_Greek; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ell.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ell.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\nep.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Nepali; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\nep.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/nep.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\nor.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Norwegian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\nor.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/nor.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ori.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Oriya; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ori.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ori.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\pan.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Panjabi; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\pan.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/pan.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\fas.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Persian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\fas.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/fas.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\pol.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Polish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\pol.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/pol.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\por.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Portuguese; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\por.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/por.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\pus.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Pushto; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\pus.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/pus.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ron.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Romanian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ron.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ron.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\rus.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Russian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\rus.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/rus.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\rus.cube.size"; DestDir: "{app}\tessdata"; Components: Languages\Russian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\rus.cube.size'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/rus.cube.size', 'ST_setup', 'Get', 0); -Source: "{tmp}\rus.cube.fold"; DestDir: "{app}\tessdata"; Components: Languages\Russian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\rus.cube.fold'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/rus.cube.fold', 'ST_setup', 'Get', 0); -Source: "{tmp}\rus.cube.lm"; DestDir: "{app}\tessdata"; Components: Languages\Russian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\rus.cube.lm'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/rus.cube.lm', 'ST_setup', 'Get', 0); -Source: "{tmp}\rus.cube.word-freq"; DestDir: "{app}\tessdata"; Components: Languages\Russian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\rus.cube.word-freq'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/rus.cube.word-freq', 'ST_setup', 'Get', 0); -Source: "{tmp}\rus.cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\Russian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\rus.cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/rus.cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\rus.cube.params"; DestDir: "{app}\tessdata"; Components: Languages\Russian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\rus.cube.params'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/rus.cube.params', 'ST_setup', 'Get', 0); -Source: "{tmp}\san.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Sanskrit; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\san.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/san.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\srp.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Serbian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\srp.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/srp.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\sin.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Sinhala; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\sin.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/sin.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\slk.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Slovak; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\slk.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/slk.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\slv.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Slovenian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\slv.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/slv.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\spa.cube.word-freq"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\spa.cube.word-freq'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/spa.cube.word-freq', 'ST_setup', 'Get', 0); -Source: "{tmp}\spa.cube.lm"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\spa.cube.lm'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/spa.cube.lm', 'ST_setup', 'Get', 0); -Source: "{tmp}\spa.cube.fold"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\spa.cube.fold'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/spa.cube.fold', 'ST_setup', 'Get', 0); -Source: "{tmp}\spa.cube.size"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\spa.cube.size'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/spa.cube.size', 'ST_setup', 'Get', 0); -Source: "{tmp}\spa.cube.bigrams"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\spa.cube.bigrams'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/spa.cube.bigrams', 'ST_setup', 'Get', 0); -Source: "{tmp}\spa.cube.nn"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\spa.cube.nn'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/spa.cube.nn', 'ST_setup', 'Get', 0); -Source: "{tmp}\spa.cube.params"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\spa.cube.params'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/spa.cube.params', 'ST_setup', 'Get', 0); -Source: "{tmp}\spa.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\spa.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/spa.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\swa.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Swahili; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\swa.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/swa.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\swe.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Swedish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\swe.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/swe.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\syr.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Syriac; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\syr.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/syr.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\tgl.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Tagalog; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\tgl.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/tgl.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\tgk.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Tajik; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\tgk.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/tgk.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\tam.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Tamil; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\tam.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/tam.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\tel.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Telugu; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\tel.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/tel.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\tha.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Thai; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\tha.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/tha.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\bod.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Tibetan; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\bod.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/bod.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\tir.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Tigrinya; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\tir.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/tir.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\tur.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Turkish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\tur.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/tur.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\uig.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Uighur; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\uig.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/uig.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\ukr.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Ukrainian; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\ukr.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/ukr.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\urd.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Urdu; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\urd.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/urd.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\uzb.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Uzbek; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\uzb.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/uzb.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\vie.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Vietnamese; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\vie.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/vie.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\cym.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Welsh; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\cym.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/cym.traineddata', 'ST_setup', 'Get', 0); -Source: "{tmp}\yid.traineddata"; DestDir: "{app}\tessdata"; Components: Languages\Yiddish; Flags: external; Check: DwinsHs_Check(ExpandConstant('{tmp}\yid.traineddata'), 'https://github.com/tesseract-ocr/tessdata/raw/3.04.00/yid.traineddata', 'ST_setup', 'Get', 0); - -[Components] -Name: "Languages"; Description: "{cm:Languages}"; Types: custom - -Name: "Languages\Afrikaans"; Description: "{cm:Afrikaans}"; Languages: en; ExtraDiskSpaceRequired: 5198548 -Name: "Languages\Albanian"; Description: "{cm:Albanian}"; Languages: en; ExtraDiskSpaceRequired: 6587325 -Name: "Languages\Amharic"; Description: "{cm:Amharic}"; Languages: en; ExtraDiskSpaceRequired: 2953500 -Name: "Languages\Ancient_Greek"; Description: "{cm:Ancient_Greek}"; Languages: en; ExtraDiskSpaceRequired: 5182527 -Name: "Languages\Arabic"; Description: "{cm:Arabic}"; Languages: en; ExtraDiskSpaceRequired: 28534834 -Name: "Languages\Assamese"; Description: "{cm:Assamese}"; Languages: en; ExtraDiskSpaceRequired: 15827072 -Name: "Languages\Azerbaijani"; Description: "{cm:Azerbaijani}"; Languages: en; ExtraDiskSpaceRequired: 6615244 -Name: "Languages\Basque"; Description: "{cm:Basque}"; Languages: en; ExtraDiskSpaceRequired: 4969647 -Name: "Languages\Belarusian"; Description: "{cm:Belarusian}"; Languages: en; ExtraDiskSpaceRequired: 6822594 -Name: "Languages\Bengali"; Description: "{cm:Bengali}"; Languages: en; ExtraDiskSpaceRequired: 15552533 -Name: "Languages\Bosnian"; Description: "{cm:Bosnian}"; Languages: en; ExtraDiskSpaceRequired: 5432328 -Name: "Languages\Bulgarian"; Description: "{cm:Bulgarian}"; Languages: en; ExtraDiskSpaceRequired: 6026234 -Name: "Languages\Burmese"; Description: "{cm:Burmese}"; Languages: en; ExtraDiskSpaceRequired: 69770179 -Name: "Languages\Catalan"; Description: "{cm:Catalan}"; Languages: en; ExtraDiskSpaceRequired: 5356190 -Name: "Languages\Cebuano"; Description: "{cm:Cebuano}"; Languages: en; ExtraDiskSpaceRequired: 1686752 -Name: "Languages\Cherokee"; Description: "{cm:Cherokee}"; Languages: en; ExtraDiskSpaceRequired: 1083194 -Name: "Languages\Chineese_simplified"; Description: "{cm:Chineese_simplified}"; Languages: en; ExtraDiskSpaceRequired: 42089623 -Name: "Languages\Chineese_traditional"; Description: "{cm:Chineese_traditional}"; Languages: en; ExtraDiskSpaceRequired: 56692327 -Name: "Languages\Croatian"; Description: "{cm:Croatian}"; Languages: en; ExtraDiskSpaceRequired: 9135966 -Name: "Languages\Czech"; Description: "{cm:Czech}"; Languages: en; ExtraDiskSpaceRequired: 11896327 -Name: "Languages\Danish"; Description: "{cm:Danish}"; Languages: en; ExtraDiskSpaceRequired: 7340575 -Name: "Languages\Dutch"; Description: "{cm:Dutch}"; Languages: en; ExtraDiskSpaceRequired: 17098919 -Name: "Languages\Dzongkha"; Description: "{cm:Dzongkha}"; Languages: en; ExtraDiskSpaceRequired: 3310882 -Name: "Languages\English"; Description: "{cm:English}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 38371506 -Name: "Languages\Esperanto"; Description: "{cm:Esperanto}"; Languages: en; ExtraDiskSpaceRequired: 6602178 -Name: "Languages\Estonian"; Description: "{cm:Estonian}"; Languages: en; ExtraDiskSpaceRequired: 9644486 -Name: "Languages\Finnish"; Description: "{cm:Finnish}"; Languages: en; ExtraDiskSpaceRequired: 13274908 -Name: "Languages\Frankish"; Description: "{cm:Frankish}"; Languages: en; ExtraDiskSpaceRequired: 16451109 -Name: "Languages\French"; Description: "{cm:French}"; Languages: en; ExtraDiskSpaceRequired: 37350210 -Name: "Languages\Galician"; Description: "{cm:Galician}"; Languages: en; ExtraDiskSpaceRequired: 5520499 -Name: "Languages\Georgian"; Description: "{cm:Georgian}"; Languages: en; ExtraDiskSpaceRequired: 6219735 -Name: "Languages\German"; Description: "{cm:German}"; Languages: en; ExtraDiskSpaceRequired: 13367187 -Name: "Languages\Gujarati"; Description: "{cm:Gujarati}"; Languages: en; ExtraDiskSpaceRequired: 10622356 -Name: "Languages\Haitian"; Description: "{cm:Haitian}"; Languages: en; ExtraDiskSpaceRequired: 1349947 -Name: "Languages\Hebrew"; Description: "{cm:Hebrew}"; Languages: en; ExtraDiskSpaceRequired: 4339016 -Name: "Languages\Hindi"; Description: "{cm:Hindi}"; Languages: en; ExtraDiskSpaceRequired: 22717250 -Name: "Languages\Hungarian"; Description: "{cm:Hungarian}"; Languages: en; ExtraDiskSpaceRequired: 12213770 -Name: "Languages\Icelandic"; Description: "{cm:Icelandic}"; Languages: en; ExtraDiskSpaceRequired: 6098683 -Name: "Languages\Indonesian"; Description: "{cm:Indonesian}"; Languages: en; ExtraDiskSpaceRequired: 6503178 -Name: "Languages\Inuktitut"; Description: "{cm:Inuktitut}"; Languages: en; ExtraDiskSpaceRequired: 995246 -Name: "Languages\Irish"; Description: "{cm:Irish}"; Languages: en; ExtraDiskSpaceRequired: 3482557 -Name: "Languages\Italian"; Description: "{cm:Italian}"; Languages: en; ExtraDiskSpaceRequired: 32720949 -Name: "Languages\Japanese"; Description: "{cm:Japanese}"; Languages: en; ExtraDiskSpaceRequired: 33072615 -Name: "Languages\Javanese"; Description: "{cm:Javanese}"; Languages: en; ExtraDiskSpaceRequired: 4404351 -Name: "Languages\Kannada"; Description: "{cm:Kannada}"; Languages: en; ExtraDiskSpaceRequired: 35657050 -Name: "Languages\Kazakh"; Description: "{cm:Kazakh}"; Languages: en; ExtraDiskSpaceRequired: 4529022 -Name: "Languages\Khmer"; Description: "{cm:Khmer}"; Languages: en; ExtraDiskSpaceRequired: 48851416 -Name: "Languages\Kirghiz"; Description: "{cm:Kirghiz}"; Languages: en; ExtraDiskSpaceRequired: 5502225 -Name: "Languages\Korean"; Description: "{cm:Korean}"; Languages: en; ExtraDiskSpaceRequired: 13309831 -Name: "Languages\Kurdish"; Description: "{cm:Kurdish}"; Languages: en; ExtraDiskSpaceRequired: 2020502 -Name: "Languages\Lao"; Description: "{cm:Lao}"; Languages: en; ExtraDiskSpaceRequired: 21118927 -Name: "Languages\Latin"; Description: "{cm:Latin}"; Languages: en; ExtraDiskSpaceRequired: 6028030 -Name: "Languages\Latvian"; Description: "{cm:Latvian}"; Languages: en; ExtraDiskSpaceRequired: 7802105 -Name: "Languages\Lithuanian"; Description: "{cm:Lithuanian}"; Languages: en; ExtraDiskSpaceRequired: 8916163 -Name: "Languages\Macedonian"; Description: "{cm:Macedonian}"; Languages: en; ExtraDiskSpaceRequired: 3837583 -Name: "Languages\Malay"; Description: "{cm:Malay}"; Languages: en; ExtraDiskSpaceRequired: 6495742 -Name: "Languages\Malayalam"; Description: "{cm:Malayalam}"; Languages: en; ExtraDiskSpaceRequired: 8786470 -Name: "Languages\Maltese"; Description: "{cm:Maltese}"; Languages: en; ExtraDiskSpaceRequired: 5118233 -Name: "Languages\Marathi"; Description: "{cm:Marathi}"; Languages: en; ExtraDiskSpaceRequired: 14237379 -Name: "Languages\Math"; Description: "{cm:Math}"; Languages: en; ExtraDiskSpaceRequired: 2251826 -Name: "Languages\Middle_English"; Description: "{cm:Middle_English}"; Languages: en; ExtraDiskSpaceRequired: 2105888 -Name: "Languages\Middle_French"; Description: "{cm:Middle_French}"; Languages: en; ExtraDiskSpaceRequired: 15831815 -Name: "Languages\Modern_Greek"; Description: "{cm:Modern_Greek}"; Languages: en; ExtraDiskSpaceRequired: 5422512 -Name: "Languages\Nepali"; Description: "{cm:Nepali}"; Languages: en; ExtraDiskSpaceRequired: 15862542 -Name: "Languages\Norwegian"; Description: "{cm:Norwegian}"; Languages: en; ExtraDiskSpaceRequired: 8262167 -Name: "Languages\Oriya"; Description: "{cm:Oriya}"; Languages: en; ExtraDiskSpaceRequired: 7900659 -Name: "Languages\Panjabi"; Description: "{cm:Panjabi}"; Languages: en; ExtraDiskSpaceRequired: 10212006 -Name: "Languages\Persian"; Description: "{cm:Persian}"; Languages: en; ExtraDiskSpaceRequired: 4803733 -Name: "Languages\Polish"; Description: "{cm:Polish}"; Languages: en; ExtraDiskSpaceRequired: 13918058 -Name: "Languages\Portuguese"; Description: "{cm:Portuguese}"; Languages: en; ExtraDiskSpaceRequired: 12914622 -Name: "Languages\Pushto"; Description: "{cm:Pushto}"; Languages: en; ExtraDiskSpaceRequired: 2493826 -Name: "Languages\Romanian"; Description: "{cm:Romanian}"; Languages: en; ExtraDiskSpaceRequired: 7957608 -Name: "Languages\Russian"; Description: "{cm:Russian}"; Languages: en; ExtraDiskSpaceRequired: 39371802 -Name: "Languages\Sanskrit"; Description: "{cm:Sanskrit}"; Languages: en; ExtraDiskSpaceRequired: 22747749 -Name: "Languages\Serbian"; Description: "{cm:Serbian}"; Languages: en; ExtraDiskSpaceRequired: 4611681 -Name: "Languages\Sinhala"; Description: "{cm:Sinhala}"; Languages: en; ExtraDiskSpaceRequired: 6793740 -Name: "Languages\Slovak"; Description: "{cm:Slovak}"; Languages: en; ExtraDiskSpaceRequired: 9126966 -Name: "Languages\Slovenian"; Description: "{cm:Slovenian}"; Languages: en; ExtraDiskSpaceRequired: 6824064 -Name: "Languages\Spanish"; Description: "{cm:Spanish}"; Languages: en; ExtraDiskSpaceRequired: 39171233 -Name: "Languages\Swahili"; Description: "{cm:Swahili}"; Languages: en; ExtraDiskSpaceRequired: 3861506 -Name: "Languages\Swedish"; Description: "{cm:Swedish}"; Languages: en; ExtraDiskSpaceRequired: 9460295 -Name: "Languages\Syriac"; Description: "{cm:Syriac}"; Languages: en; ExtraDiskSpaceRequired: 2734020 -Name: "Languages\Tagalog"; Description: "{cm:Tagalog}"; Languages: en; ExtraDiskSpaceRequired: 4114554 -Name: "Languages\Tajik"; Description: "{cm:Tajik}"; Languages: en; ExtraDiskSpaceRequired: 1119022 -Name: "Languages\Tamil"; Description: "{cm:Tamil}"; Languages: en; ExtraDiskSpaceRequired: 5118600 -Name: "Languages\Telugu"; Description: "{cm:Telugu}"; Languages: en; ExtraDiskSpaceRequired: 39318860 -Name: "Languages\Thai"; Description: "{cm:Thai}"; Languages: en; ExtraDiskSpaceRequired: 13565168 -Name: "Languages\Tibetan"; Description: "{cm:Tibetan}"; Languages: en; ExtraDiskSpaceRequired: 25231676 -Name: "Languages\Tigrinya"; Description: "{cm:Tigrinya}"; Languages: en; ExtraDiskSpaceRequired: 1806235 -Name: "Languages\Turkish"; Description: "{cm:Turkish}"; Languages: en; ExtraDiskSpaceRequired: 14069931 -Name: "Languages\Uighur"; Description: "{cm:Uighur}"; Languages: en; ExtraDiskSpaceRequired: 2017575 -Name: "Languages\Ukrainian"; Description: "{cm:Ukrainian}"; Languages: en; ExtraDiskSpaceRequired: 8043189 -Name: "Languages\Urdu"; Description: "{cm:Urdu}"; Languages: en; ExtraDiskSpaceRequired: 4825658 -Name: "Languages\Uzbek"; Description: "{cm:Uzbek}"; Languages: en; ExtraDiskSpaceRequired: 4286554 -Name: "Languages\Vietnamese"; Description: "{cm:Vietnamese}"; Languages: en; ExtraDiskSpaceRequired: 6096118 -Name: "Languages\Welsh"; Description: "{cm:Welsh}"; Languages: en; ExtraDiskSpaceRequired: 3789352 -Name: "Languages\Yiddish"; Description: "{cm:Yiddish}"; Languages: en; ExtraDiskSpaceRequired: 4238718 - -Name: "Languages\Azerbaijani"; Description: "{cm:Azerbaijani}"; Languages: ru; ExtraDiskSpaceRequired: 6615244 -Name: "Languages\Albanian"; Description: "{cm:Albanian}"; Languages: ru; ExtraDiskSpaceRequired: 6587325 -Name: "Languages\Amharic"; Description: "{cm:Amharic}"; Languages: ru; ExtraDiskSpaceRequired: 2953500 -Name: "Languages\English"; Description: "{cm:English}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 38371506 -Name: "Languages\Arabic"; Description: "{cm:Arabic}"; Languages: ru; ExtraDiskSpaceRequired: 28534834 -Name: "Languages\Assamese"; Description: "{cm:Assamese}"; Languages: ru; ExtraDiskSpaceRequired: 15827072 -Name: "Languages\Afrikaans"; Description: "{cm:Afrikaans}"; Languages: ru; ExtraDiskSpaceRequired: 5198548 -Name: "Languages\Basque"; Description: "{cm:Basque}"; Languages: ru; ExtraDiskSpaceRequired: 4969647 -Name: "Languages\Belarusian"; Description: "{cm:Belarusian}"; Languages: ru; ExtraDiskSpaceRequired: 6822594 -Name: "Languages\Bengali"; Description: "{cm:Bengali}"; Languages: ru; ExtraDiskSpaceRequired: 15552533 -Name: "Languages\Burmese"; Description: "{cm:Burmese}"; Languages: ru; ExtraDiskSpaceRequired: 69770179 -Name: "Languages\Bulgarian"; Description: "{cm:Bulgarian}"; Languages: ru; ExtraDiskSpaceRequired: 6026234 -Name: "Languages\Bosnian"; Description: "{cm:Bosnian}"; Languages: ru; ExtraDiskSpaceRequired: 5432328 -Name: "Languages\Welsh"; Description: "{cm:Welsh}"; Languages: ru; ExtraDiskSpaceRequired: 3789352 -Name: "Languages\Hungarian"; Description: "{cm:Hungarian}"; Languages: ru; ExtraDiskSpaceRequired: 12213770 -Name: "Languages\Vietnamese"; Description: "{cm:Vietnamese}"; Languages: ru; ExtraDiskSpaceRequired: 6096118 -Name: "Languages\Haitian"; Description: "{cm:Haitian}"; Languages: ru; ExtraDiskSpaceRequired: 1349947 -Name: "Languages\Galician"; Description: "{cm:Galician}"; Languages: ru; ExtraDiskSpaceRequired: 5520499 -Name: "Languages\Dutch"; Description: "{cm:Dutch}"; Languages: ru; ExtraDiskSpaceRequired: 17098919 -Name: "Languages\Georgian"; Description: "{cm:Georgian}"; Languages: ru; ExtraDiskSpaceRequired: 6219735 -Name: "Languages\Gujarati"; Description: "{cm:Gujarati}"; Languages: ru; ExtraDiskSpaceRequired: 10622356 -Name: "Languages\Danish"; Description: "{cm:Danish}"; Languages: ru; ExtraDiskSpaceRequired: 7340575 -Name: "Languages\Dzongkha"; Description: "{cm:Dzongkha}"; Languages: ru; ExtraDiskSpaceRequired: 3310882 -Name: "Languages\Ancient_Greek"; Description: "{cm:Ancient_Greek}"; Languages: ru; ExtraDiskSpaceRequired: 5182527 -Name: "Languages\Hebrew"; Description: "{cm:Hebrew}"; Languages: ru; ExtraDiskSpaceRequired: 4339016 -Name: "Languages\Yiddish"; Description: "{cm:Yiddish}"; Languages: ru; ExtraDiskSpaceRequired: 4238718 -Name: "Languages\Indonesian"; Description: "{cm:Indonesian}"; Languages: ru; ExtraDiskSpaceRequired: 6503178 -Name: "Languages\Inuktitut"; Description: "{cm:Inuktitut}"; Languages: ru; ExtraDiskSpaceRequired: 995246 -Name: "Languages\Irish"; Description: "{cm:Irish}"; Languages: ru; ExtraDiskSpaceRequired: 3482557 -Name: "Languages\Icelandic"; Description: "{cm:Icelandic}"; Languages: ru; ExtraDiskSpaceRequired: 6098683 -Name: "Languages\Spanish"; Description: "{cm:Spanish}"; Languages: ru; ExtraDiskSpaceRequired: 39171233 -Name: "Languages\Italian"; Description: "{cm:Italian}"; Languages: ru; ExtraDiskSpaceRequired: 32720949 -Name: "Languages\Kazakh"; Description: "{cm:Kazakh}"; Languages: ru; ExtraDiskSpaceRequired: 4529022 -Name: "Languages\Kannada"; Description: "{cm:Kannada}"; Languages: ru; ExtraDiskSpaceRequired: 35657050 -Name: "Languages\Catalan"; Description: "{cm:Catalan}"; Languages: ru; ExtraDiskSpaceRequired: 5356190 -Name: "Languages\Cebuano"; Description: "{cm:Cebuano}"; Languages: ru; ExtraDiskSpaceRequired: 1686752 -Name: "Languages\Kirghiz"; Description: "{cm:Kirghiz}"; Languages: ru; ExtraDiskSpaceRequired: 5502225 -Name: "Languages\Chineese_traditional"; Description: "{cm:Chineese_traditional}"; Languages: ru; ExtraDiskSpaceRequired: 56692327 -Name: "Languages\Chineese_simplified"; Description: "{cm:Chineese_simplified}"; Languages: ru; ExtraDiskSpaceRequired: 42089623 -Name: "Languages\Korean"; Description: "{cm:Korean}"; Languages: ru; ExtraDiskSpaceRequired: 13309831 -Name: "Languages\Kurdish"; Description: "{cm:Kurdish}"; Languages: ru; ExtraDiskSpaceRequired: 2020502 -Name: "Languages\Khmer"; Description: "{cm:Khmer}"; Languages: ru; ExtraDiskSpaceRequired: 48851416 -Name: "Languages\Lao"; Description: "{cm:Lao}"; Languages: ru; ExtraDiskSpaceRequired: 21118927 -Name: "Languages\Latin"; Description: "{cm:Latin}"; Languages: ru; ExtraDiskSpaceRequired: 6028030 -Name: "Languages\Latvian"; Description: "{cm:Latvian}"; Languages: ru; ExtraDiskSpaceRequired: 7802105 -Name: "Languages\Lithuanian"; Description: "{cm:Lithuanian}"; Languages: ru; ExtraDiskSpaceRequired: 8916163 -Name: "Languages\Macedonian"; Description: "{cm:Macedonian}"; Languages: ru; ExtraDiskSpaceRequired: 3837583 -Name: "Languages\Malay"; Description: "{cm:Malay}"; Languages: ru; ExtraDiskSpaceRequired: 6495742 -Name: "Languages\Malayalam"; Description: "{cm:Malayalam}"; Languages: ru; ExtraDiskSpaceRequired: 8786470 -Name: "Languages\Maltese"; Description: "{cm:Maltese}"; Languages: ru; ExtraDiskSpaceRequired: 5118233 -Name: "Languages\Marathi"; Description: "{cm:Marathi}"; Languages: ru; ExtraDiskSpaceRequired: 14237379 -Name: "Languages\Math"; Description: "{cm:Math}"; Languages: ru; ExtraDiskSpaceRequired: 2251826 -Name: "Languages\German"; Description: "{cm:German}"; Languages: ru; ExtraDiskSpaceRequired: 13367187 -Name: "Languages\Nepali"; Description: "{cm:Nepali}"; Languages: ru; ExtraDiskSpaceRequired: 15862542 -Name: "Languages\Modern_Greek"; Description: "{cm:Modern_Greek}"; Languages: ru; ExtraDiskSpaceRequired: 5422512 -Name: "Languages\Norwegian"; Description: "{cm:Norwegian}"; Languages: ru; ExtraDiskSpaceRequired: 8262167 -Name: "Languages\Oriya"; Description: "{cm:Oriya}"; Languages: ru; ExtraDiskSpaceRequired: 7900659 -Name: "Languages\Panjabi"; Description: "{cm:Panjabi}"; Languages: ru; ExtraDiskSpaceRequired: 10212006 -Name: "Languages\Persian"; Description: "{cm:Persian}"; Languages: ru; ExtraDiskSpaceRequired: 4803733 -Name: "Languages\Polish"; Description: "{cm:Polish}"; Languages: ru; ExtraDiskSpaceRequired: 13918058 -Name: "Languages\Portuguese"; Description: "{cm:Portuguese}"; Languages: ru; ExtraDiskSpaceRequired: 12914622 -Name: "Languages\Pushto"; Description: "{cm:Pushto}"; Languages: ru; ExtraDiskSpaceRequired: 2493826 -Name: "Languages\Romanian"; Description: "{cm:Romanian}"; Languages: ru; ExtraDiskSpaceRequired: 7957608 -Name: "Languages\Russian"; Description: "{cm:Russian}"; Languages: ru; ExtraDiskSpaceRequired: 39371802 -Name: "Languages\Sanskrit"; Description: "{cm:Sanskrit}"; Languages: ru; ExtraDiskSpaceRequired: 22747749 -Name: "Languages\Serbian"; Description: "{cm:Serbian}"; Languages: ru; ExtraDiskSpaceRequired: 4611681 -Name: "Languages\Sinhala"; Description: "{cm:Sinhala}"; Languages: ru; ExtraDiskSpaceRequired: 6793740 -Name: "Languages\Syriac"; Description: "{cm:Syriac}"; Languages: ru; ExtraDiskSpaceRequired: 2734020 -Name: "Languages\Slovak"; Description: "{cm:Slovak}"; Languages: ru; ExtraDiskSpaceRequired: 9126966 -Name: "Languages\Slovenian"; Description: "{cm:Slovenian}"; Languages: ru; ExtraDiskSpaceRequired: 6824064 -Name: "Languages\Middle_English"; Description: "{cm:Middle_English}"; Languages: ru; ExtraDiskSpaceRequired: 2105888 -Name: "Languages\Middle_French"; Description: "{cm:Middle_French}"; Languages: ru; ExtraDiskSpaceRequired: 15831815 -Name: "Languages\Swahili"; Description: "{cm:Swahili}"; Languages: ru; ExtraDiskSpaceRequired: 3861506 -Name: "Languages\Tagalog"; Description: "{cm:Tagalog}"; Languages: ru; ExtraDiskSpaceRequired: 4114554 -Name: "Languages\Tajik"; Description: "{cm:Tajik}"; Languages: ru; ExtraDiskSpaceRequired: 1119022 -Name: "Languages\Thai"; Description: "{cm:Thai}"; Languages: ru; ExtraDiskSpaceRequired: 13565168 -Name: "Languages\Tamil"; Description: "{cm:Tamil}"; Languages: ru; ExtraDiskSpaceRequired: 5118600 -Name: "Languages\Telugu"; Description: "{cm:Telugu}"; Languages: ru; ExtraDiskSpaceRequired: 39318860 -Name: "Languages\Tibetan"; Description: "{cm:Tibetan}"; Languages: ru; ExtraDiskSpaceRequired: 25231676 -Name: "Languages\Tigrinya"; Description: "{cm:Tigrinya}"; Languages: ru; ExtraDiskSpaceRequired: 1806235 -Name: "Languages\Turkish"; Description: "{cm:Turkish}"; Languages: ru; ExtraDiskSpaceRequired: 14069931 -Name: "Languages\Uzbek"; Description: "{cm:Uzbek}"; Languages: ru; ExtraDiskSpaceRequired: 4286554 -Name: "Languages\Uighur"; Description: "{cm:Uighur}"; Languages: ru; ExtraDiskSpaceRequired: 2017575 -Name: "Languages\Ukrainian"; Description: "{cm:Ukrainian}"; Languages: ru; ExtraDiskSpaceRequired: 8043189 -Name: "Languages\Urdu"; Description: "{cm:Urdu}"; Languages: ru; ExtraDiskSpaceRequired: 4825658 -Name: "Languages\Finnish"; Description: "{cm:Finnish}"; Languages: ru; ExtraDiskSpaceRequired: 13274908 -Name: "Languages\Frankish"; Description: "{cm:Frankish}"; Languages: ru; ExtraDiskSpaceRequired: 16451109 -Name: "Languages\French"; Description: "{cm:French}"; Languages: ru; ExtraDiskSpaceRequired: 37350210 -Name: "Languages\Hindi"; Description: "{cm:Hindi}"; Languages: ru; ExtraDiskSpaceRequired: 22717250 -Name: "Languages\Croatian"; Description: "{cm:Croatian}"; Languages: ru; ExtraDiskSpaceRequired: 9135966 -Name: "Languages\Cherokee"; Description: "{cm:Cherokee}"; Languages: ru; ExtraDiskSpaceRequired: 1083194 -Name: "Languages\Czech"; Description: "{cm:Czech}"; Languages: ru; ExtraDiskSpaceRequired: 11896327 -Name: "Languages\Swedish"; Description: "{cm:Swedish}"; Languages: ru; ExtraDiskSpaceRequired: 9460295 -Name: "Languages\Esperanto"; Description: "{cm:Esperanto}"; Languages: ru; ExtraDiskSpaceRequired: 6602178 -Name: "Languages\Estonian"; Description: "{cm:Estonian}"; Languages: ru; ExtraDiskSpaceRequired: 9644486 -Name: "Languages\Javanese"; Description: "{cm:Javanese}"; Languages: ru; ExtraDiskSpaceRequired: 4404351 -Name: "Languages\Japanese"; Description: "{cm:Japanese}"; Languages: ru; ExtraDiskSpaceRequired: 33072615 diff --git a/distr/iss/tessdataBuiltin.iss b/distr/iss/tessdataBuiltin.iss deleted file mode 100644 index 9bf156c..0000000 --- a/distr/iss/tessdataBuiltin.iss +++ /dev/null @@ -1,30 +0,0 @@ -[Files] -Source: "tessdata\ara.*"; DestDir: "{app}\tessdata"; Components: Languages\Arabic; Flags: ignoreversion; -Source: "tessdata\chi_sim.*"; DestDir: "{app}\tessdata"; Components: Languages\Chineese_simplified; Flags: ignoreversion; -Source: "tessdata\eng.*"; DestDir: "{app}\tessdata"; Components: Languages\English; Flags: ignoreversion; -Source: "tessdata\fra.*"; DestDir: "{app}\tessdata"; Components: Languages\French; Flags: ignoreversion; -Source: "tessdata\deu.*"; DestDir: "{app}\tessdata"; Components: Languages\German; Flags: ignoreversion; -Source: "tessdata\jpn.*"; DestDir: "{app}\tessdata"; Components: Languages\Japanese; Flags: ignoreversion; -Source: "tessdata\rus.*"; DestDir: "{app}\tessdata"; Components: Languages\Russian; Flags: ignoreversion; -Source: "tessdata\spa.*"; DestDir: "{app}\tessdata"; Components: Languages\Spanish; Flags: ignoreversion; - -[Components] -Name: "Languages"; Description: "{cm:Languages}"; Types: custom - -Name: "Languages\Arabic"; Description: "{cm:Arabic}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 28534834 -Name: "Languages\Chineese_simplified"; Description: "{cm:Chineese_simplified}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 42089623 -Name: "Languages\English"; Description: "{cm:English}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 38371506 -Name: "Languages\French"; Description: "{cm:French}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 37350210 -Name: "Languages\German"; Description: "{cm:German}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 13367187 -Name: "Languages\Japanese"; Description: "{cm:Japanese}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 33072615 -Name: "Languages\Russian"; Description: "{cm:Russian}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 39371802 -Name: "Languages\Spanish"; Description: "{cm:Spanish}"; Languages: en; Types: custom; ExtraDiskSpaceRequired: 39171233 - -Name: "Languages\English"; Description: "{cm:English}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 38371506 -Name: "Languages\Arabic"; Description: "{cm:Arabic}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 28534834 -Name: "Languages\Spanish"; Description: "{cm:Spanish}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 39171233 -Name: "Languages\Chineese_simplified"; Description: "{cm:Chineese_simplified}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 42089623 -Name: "Languages\German"; Description: "{cm:German}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 13367187 -Name: "Languages\Russian"; Description: "{cm:Russian}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 39371802 -Name: "Languages\French"; Description: "{cm:French}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 37350210 -Name: "Languages\Japanese"; Description: "{cm:Japanese}"; Languages: ru; Types: custom; ExtraDiskSpaceRequired: 33072615 diff --git a/scripts/get_deps.sh b/scripts/get_deps.sh deleted file mode 100755 index d2b0eaf..0000000 --- a/scripts/get_deps.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/bash - -source ./options.sh $@ - -echo "Downloading dependencies" -wget -O $DOWNLOAD_DIR/leptonica.tar.gz http://www.leptonica.com/source/leptonica-1.72.tar.gz -wget -O $DOWNLOAD_DIR/tesseract.tar.gz https://github.com/tesseract-ocr/tesseract/archive/3.04.00.tar.gz - diff --git a/scripts/get_tessdata.sh b/scripts/get_tessdata.sh deleted file mode 100755 index fd20a03..0000000 --- a/scripts/get_tessdata.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -source ./options.sh $@ - -echo "Downloading and extracting tessdata" -wget -O $DOWNLOAD_DIR/tessdata.tar.gz https://github.com/tesseract-ocr/tessdata/archive/3.04.00.tar.gz -EXTRACT_DIR=$DOWNLOAD_DIR/tessdata -CLEAN=true -cleanupDirInNeeded $EXTRACT_DIR -tar zxf $DOWNLOAD_DIR/tessdata.tar.gz -C $EXTRACT_DIR -EXTRACTED=`ls $EXTRACT_DIR | grep tess` -mv $EXTRACT_DIR/$EXTRACTED/* $EXTRACT_DIR -rm -r $EXTRACT_DIR/$EXTRACTED - diff --git a/scripts/install_deps.sh b/scripts/install_deps.sh deleted file mode 100755 index 1480183..0000000 --- a/scripts/install_deps.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash - -sudo apt-get update -q -sudo apt-get -y install libxcb-util0-dev fakeroot libtesseract-dev libleptonica-dev qt5-qmake libqt5webkit5-dev libqt5x11extras5-dev qttools5-dev-tools g++ -#sudo apt-get -y install tesseract-ocr-eng #for testing diff --git a/scripts/make_all.sh b/scripts/make_all.sh deleted file mode 100755 index f325033..0000000 --- a/scripts/make_all.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash - -source ./options.sh $@ -#cleanupDirInNeeded $WORK_DIR - -echo "Running all scripts for $PLATFORM" -#./install_deps $@ -#./get_tessdata.sh $@ -#./get_deps.sh $@ -#./make_deps.sh $@ -./make_app.sh $@ -if [ "$PLATFORM" == "linux" ]; then - ./make_deb.sh $@ -fi -if [ "$PLATFORM" == "mingw" ]; then - ./make_iss.sh $@ -fi -./make_sf.sh $@ -echo "All scripts successfully run" diff --git a/scripts/make_app.sh b/scripts/make_app.sh deleted file mode 100755 index afaede9..0000000 --- a/scripts/make_app.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -source ./options.sh $@ - -cleanupDirInNeeded $APP_DIR - -cd $APP_DIR -echo "Building app" -$QT_LRELEASE $QT_CHOOSER $SRC_DIR/ScreenTranslator.pro -$QMAKE $QT_CHOOSER "CONFIG-=debug_and_release" "CONFIG+=release" $SRC_DIR -make $JOBS - diff --git a/scripts/make_deb.sh b/scripts/make_deb.sh deleted file mode 100755 index c46fadd..0000000 --- a/scripts/make_deb.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/bin/bash - -source ./options.sh $@ - -U_VER="15.04" - -for arg in ${@}; do - case "$arg" in - "15.10" ) U_VER=$arg;; - esac -done - - -cleanupDirInNeeded $DEB_DIR - -cp -r $SRC_DISTR_DIR/deb/* $DEB_DIR -INSTALL_DIR=/opt/ScreenTranslator - -function makeChangelog { -local FOUND=false -local CHANGELOG="screen-translator ($VERSION) stable; urgency=medium\n\n" -while read line; do - if [[ $line =~ [0-9]+\.[0-9]+\.[0-9]+: ]]; then #version info - if [ "$line" == "$VERSION:" ]; then - FOUND=true - continue - elif [ $FOUND == true ]; then - break; - fi - fi - if [ $FOUND == true ]; then - CHANGELOG="$CHANGELOG$line\n\n" - fi -done < $SRC_DISTR_DIR/Changelog_en.txt -CHANGELOG="$CHANGELOG--Gres `date -R`\n\n" -echo $CHANGELOG -} - -echo "Making deb" -cp $SRC_DIR/LICENSE.md $DEB_DIR/DEBIAN/copyright -mkdir -p $DEB_DIR/usr/share/pixmaps/ -cp $SRC_DIR/images/STIconBlue.png $DEB_DIR/usr/share/pixmaps/ScreenTranslator.png -mkdir -p $DEB_DIR/$INSTALL_DIR/ -cp $APP_DIR/ScreenTranslator $DEB_DIR/$INSTALL_DIR/ScreenTranslator -$STRIP -s $DEB_DIR/$INSTALL_DIR/ScreenTranslator -cp -r $SRC_DIR/translators $DEB_DIR/$INSTALL_DIR/translators - -VERSION=`grep "versionString" $SRC_DIR/version.json | cut -d'"' -f4` -sed "s/Version:.*\+/Version: $VERSION/" -i $DEB_DIR/DEBIAN/control -sed "s/Version=.*\+/Version=$VERSION/" -i $DEB_DIR/usr/share/applications/ScreenTranslator.desktop -SIZE=$(expr `du -bs $DEB_DIR | cut -f1` / 1024) -sed "s/Installed-Size:.*\+/Installed-Size: $SIZE/" -i $DEB_DIR/DEBIAN/control -echo -e $(makeChangelog) > $DEB_DIR/DEBIAN/changelog -if [ "$U_VER" == "15.10" ]; then - sed "s/libtesseract3/libtesseract3v5/" -i $DEB_DIR/DEBIAN/control -fi - -fakeroot dpkg-deb --build $DEB_DIR $WORK_DIR/screen-translator-$VERSION-$U_VER.deb - diff --git a/scripts/make_deps.sh b/scripts/make_deps.sh deleted file mode 100755 index d824999..0000000 --- a/scripts/make_deps.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash - -source ./options.sh $@ - -BUILD_LEPT=false -BUILD_TESS=false - -for arg in ${@}; do - case "$arg" in - "tess" ) BUILD_TESS=true;; - "lept" ) BUILD_LEPT=true;; - esac -done - -if ! $BUILD_LEPT && ! $BUILD_TESS ; then - BUILD_LEPT=true - BUILD_TESS=true -fi - -cleanupDirInNeeded $DEPS_DIR - - -if $BUILD_LEPT ; then - echo "Building Leptonica" - tar zxf $DOWNLOAD_DIR/leptonica.tar.gz -C $DEPS_DIR - LEPT_DIR=`ls $DEPS_DIR | grep lept` - pushd . - cd $DEPS_DIR/$LEPT_DIR - $CFLAGS ./configure --prefix=$DEPS_DIR --disable-programs "$HOST_ATTR" - make $JOBS - make install - popd -fi - -if $BUILD_TESS ; then - echo "Building Tesseract" - tar zxf $DOWNLOAD_DIR/tesseract.tar.gz -C $DEPS_DIR - TESS_DIR=`ls $DEPS_DIR | grep tess` - pushd . - cd $DEPS_DIR/$TESS_DIR - sed 's/vs2008/vs2010/g' -i ccutil/Makefile.in - sed 's/Windows\.h/windows\.h/g' -i opencl/openclwrapper.cpp - LIBLEPT_HEADERSDIR=$DEPS_DIR/include LIBS=-L$DEPS_DIR/lib ./configure --prefix=$DEPS_DIR --disable-tessdata-prefix "$HOST_ATTR" - make $JOBS - make install - popd -fi - -if [ $PLATFORM == 'mingw' ]; then - find $DEPS_DIR -name '*.dll' -exec cp {} $DEPS_DIR/lib \; -fi - -echo "Done" - diff --git a/scripts/make_iss.sh b/scripts/make_iss.sh deleted file mode 100755 index fee4ce9..0000000 --- a/scripts/make_iss.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/bash - -source ./options.sh $@ - -cleanupDirInNeeded $ISS_DIR - -cp -r $SRC_DISTR_DIR/iss/* $ISS_DIR -CONTENT_DIR=$ISS_DIR/content -mkdir -p $CONTENT_DIR - -echo "Making ISS" -TESSDATA_DIR="$DOWNLOAD_DIR/tessdata" -$(cd $ISS_DIR && ./make_tess_iss.sh $TESSDATA_DIR out="$ISS_DIR/tessdata.iss") - -#setup -VERSION=`grep "versionString" $SRC_DIR/version.json | cut -d'"' -f4` -sed "s/#define MyAppVersion.*$/#define MyAppVersion \"$VERSION\"/" -i $ISS_DIR/InnoSetup.iss -cp $SRC_DIR/images/icon.ico $ISS_DIR/icon.ico -cp $SRC_DIR/LICENSE.md $ISS_DIR/LICENSE_en.md -cp $SRC_DISTR_DIR/Changelog_en.txt $ISS_DIR/Changelog_en.txt -cp $SRC_DISTR_DIR/Changelog_ru.txt $ISS_DIR/Changelog_ru.txt - -#app -cp $APP_DIR/ScreenTranslator.exe $CONTENT_DIR/ScreenTranslator.exe -cp -r $SRC_DIR/translators $CONTENT_DIR/translators - -#libs -QT_LIBS="Qt5WebKitWidgets Qt5Widgets Qt5WebKit Qt5Gui Qt5Network Qt5Core Qt5Sensors Qt5Positioning Qt5PrintSupport -Qt5OpenGL Qt5Sql Qt5Quick Qt5Qml Qt5WebChannel Qt5Multimedia Qt5MultimediaWidgets" -for i in $QT_LIBS; do - cp -d $QT_LIB_DIR/$i.dll $CONTENT_DIR -done - -mkdir -p $CONTENT_DIR/platforms -cp -d $QT_LIB_DIR/../plugins/platforms/qwindows.dll $CONTENT_DIR/platforms - -MINGW_LIBS="libgcc_s_sjlj-1 libstdc++-6 icuin55 icuuc55 icudt55 libwinpthread-1 ssleay32 libeay32" -for i in $MINGW_LIBS; do - cp -d $MINGW_DIR/lib/$i.dll $CONTENT_DIR -done - -cp -d $DEPS_DIR/lib/liblept*.dll $CONTENT_DIR -cp -d $DEPS_DIR/lib/libtesseract*.dll $CONTENT_DIR - -find $CONTENT_DIR -name '*.exe' -exec $STRIP -s {} \; -find $CONTENT_DIR -name '*.dll' -exec $STRIP -s {} \; - -cd $ISS_DIR -wine "C:\Program Files\Inno Setup 5\iscc.exe" "InnoSetup.iss" diff --git a/scripts/make_sf.sh b/scripts/make_sf.sh deleted file mode 100755 index 53f3096..0000000 --- a/scripts/make_sf.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash - -source ./options.sh $@ - -cleanupDirInNeeded $SF_DIR - -echo "Making SF" -function format { - local FILE=$1 - sed "s/\(Changes\)/#\1/g" -i $FILE - sed "s/\(Изменения\)/#\1/g" -i $FILE - sed "s/\([0-9]\+\.[0-9]\+\.[0-9]\+:\)/##\1/g" -i $FILE - sed "s/+\s/* /g" -i $FILE - sed "s/-\s/* /g" -i $FILE -} -cp -f $SRC_DISTR_DIR/Changelog_en.txt $SF_DIR/readme.md -format $SF_DIR/readme.md -cp -f $SRC_DISTR_DIR/Changelog_ru.txt $SF_DIR/readme_ru.md -iconv -f cp1251 -t utf8 $SF_DIR/readme_ru.md -o $SF_DIR/readme_ru.md.u -mv $SF_DIR/readme_ru.md.u $SF_DIR/readme_ru.md -format $SF_DIR/readme_ru.md diff --git a/scripts/options.sh b/scripts/options.sh deleted file mode 100755 index 2bb1144..0000000 --- a/scripts/options.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/bin/bash - -set -e - -PLATFORM=linux -CLEAN=false -JOBS="" -QT_CHOOSER="-qt=qt5" -QMAKE=qmake -QT_LRELEASE=lrelease -QT_LIB_DIR=/usr/lib/x86_64-linux-gnu -STRIP=strip - -for arg in ${@}; do - case "$arg" in - "linux" ) PLATFORM=linux;; - "mingw" ) PLATFORM=mingw;; - "clean" ) CLEAN=true;; - "-j"* ) JOBS=$arg;; - *"qmake" ) QMAKE=$arg - QT_LRELEASE=`readlink -e $(dirname $arg)/lrelease` - QT_LIB_DIR=`readlink -e $(dirname $arg)/../lib` - QT_CHOOSER="" - ;; - esac -done - -WORK_DIR=../../build/$PLATFORM -MINGW_DIR=/opt/mingw-4.9.3/mingw-w64-i686 -if [ "$PLATFORM" == "mingw" ]; then - QT_LIB_DIR=`readlink -e $QT_LIB_DIR/../bin` - HOST=i686-w64-mingw32 - HOST_ATTR="--host=$HOST" - STRIP=$HOST-strip - export PATH="$MINGW_DIR/bin:$PATH" - COMPILERS="CC=\"${HOST}-gcc\" AR=\"${HOST}-ar\" RANLIB=\"${HOST}-ranlib\"" -fi - -WORK_DIR=`readlink -m $WORK_DIR` -DEPS_DIR=`readlink -m $WORK_DIR/deps` -APP_DIR=`readlink -m $WORK_DIR/app` -DEB_DIR=`readlink -m $WORK_DIR/deb` -ISS_DIR=`readlink -m $WORK_DIR/iss` -SF_DIR=`readlink -m $WORK_DIR/sf` -DOWNLOAD_DIR=`readlink -m ../../` -SRC_DIR=`readlink -e ..` -SRC_DISTR_DIR=$SRC_DIR/distr - -mkdir -p $WORK_DIR - -function cleanupDirInNeeded { - local DIR=$1 - if [[ "$CLEAN" == "true" && -d "$DIR" ]]; then - rm -rf $DIR - fi - mkdir -p $DIR -} - diff --git a/scripts/win/build.bat b/scripts/win/build.bat deleted file mode 100644 index 38f4bca..0000000 --- a/scripts/win/build.bat +++ /dev/null @@ -1,61 +0,0 @@ -@echo off - -set SELF_PATH=%~dp0 -call %SELF_PATH%\env.bat - - -::build -rmdir /q /s build -set ROOT=%SELF_PATH%\..\.. -lrelease %ROOT%\ScreenTranslator.pro -mkdir build -cd build -qmake INCLUDEPATH+=%cd%\..\installed\include LIBS+=-L%cd%\..\installed\bin LIBS+=-L%cd%\..\installed\lib %ROOT% -nmake -cd .. -if %errorlevel% neq 0 exit /b %errorlevel% - - -::pack -rmdir /q /s iss -mkdir iss -copy /Y %ROOT%\distr\iss\* iss -copy /Y %ROOT%\distr\Changelog_en.txt iss\ -copy /Y %ROOT%\distr\Changelog_ru.txt iss\ -copy /Y %ROOT%\LICENSE.md iss\LICENSE_en.md -copy /Y %ROOT%\images\icon.ico iss\icon.ico - -mkdir iss\content -copy /Y build\release\ScreenTranslator.exe iss\content\ScreenTranslator.exe -copy /Y installed\bin\*.dll iss\content -copy /Y c:\OpenSSL-Win32\bin\libeay32.dll iss\content -copy /Y c:\OpenSSL-Win32\bin\ssleay32.dll iss\content -mkdir iss\content\translations -copy /Y %ROOT%\translations\*.qm iss\content\translations -mkdir iss\content\translators -copy /Y %ROOT%\translators\* iss\content\translators - -windeployqt --release iss\content\ScreenTranslator.exe - -for /f "delims=" %%i in ('findstr versionString %ROOT%\version.json') do set VERSION_LINE=%%i -set UNQUOTED=%VERSION_LINE:"='% -for /f "tokens=4 delims='" %%i in ("%UNQUOTED%") do set VERSION=%%i -echo #define MyAppVersion "%VERSION%" > iss\defines.iss - - - -cd iss -iscc.exe InnoSetup.iss -cd .. - - -if "%WITH_TESSDATA%" == "" goto end - -mkdir iss\tessdata -copy /Y download\tessdata\* iss\tessdata - -cd iss -iscc.exe InnoSetupWithTessdata.iss -cd .. - -:end \ No newline at end of file diff --git a/scripts/win/deploy_sf.bat b/scripts/win/deploy_sf.bat deleted file mode 100644 index 685406a..0000000 --- a/scripts/win/deploy_sf.bat +++ /dev/null @@ -1,33 +0,0 @@ -@echo off - -set PATH=c:\Program Files (x86)\WinSCP\;%PATH% - -set SELF_PATH=%~dp0 -set ROOT=%SELF_PATH%\..\.. - - -for /f "delims=" %%i in ('findstr versionString %ROOT%\version.json') do set VERSION_LINE=%%i -set UNQUOTED=%VERSION_LINE:"='% -for /f "tokens=4 delims='" %%i in ("%UNQUOTED%") do set VERSION=%%i - -for /f "delims=" %%i in ('dir /b screen-translator-online*.exe') do set online=%%i -for /f "delims=" %%i in ('dir /b screen-translator-offline*.exe') do set offline=%%i - - -winscp.com /keygen %SELF_PATH%\sf_key /output=key.ppk -set folder="/home/frs/project/screen-translator/bin/v%VERSION%" -set bin_folder="/home/frs/project/screen-translator/bin" -winscp.com /command "open sftp://onemoregres@frs.sourceforge.net/ -privatekey=key.ppk -hostkey=*" ^ - "mkdir %folder%" ^ - "put %online% %folder%/%online%" ^ - "put %offline% %folder%/%offline%" ^ - "put %ROOT%\distr\Changelog_ru.txt %bin_folder%/readme_ru.md" ^ - "put %ROOT%\distr\Changelog_en.txt %bin_folder%/readme.md" ^ - "exit" - - -set url="https://sourceforge.net/projects/screen-translator/files/bin/v%VERSION%/%online%" -curl --insecure -H "Accept: application/json" -X PUT -d "default=windows" -d "api_key=%sf_api%" %url% - -set url="https://sourceforge.net/projects/screen-translator/files/bin/v%VERSION%/%offline%" -curl --insecure -H "Accept: application/json" -X PUT -d "default=windows" -d "api_key=%sf_api%" %url% diff --git a/scripts/win/env.bat b/scripts/win/env.bat deleted file mode 100644 index 61722ad..0000000 --- a/scripts/win/env.bat +++ /dev/null @@ -1,19 +0,0 @@ -@echo off - -if "%ARCH%" == "" set ARCH=x86 - -if /i %ARCH% == x86 goto x86 -if /i %ARCH% == x64 goto x64 -goto end - -:x64 -call "c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" amd64 -set PATH=c:\Qt\5.5\msvc2013_64\bin\;c:\Program Files (x86)\NSIS\;C:\Program Files (x86)\Inno Setup 5;C:\Program Files\CMake\bin;%PATH% -goto end - -:x86 -call "c:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86 -set PATH=c:\Qt\5.5\msvc2013\bin\;c:\Program Files (x86)\NSIS\;C:\Program Files (x86)\Inno Setup 5;C:\Program Files\CMake\bin;%PATH% -goto end - -:end diff --git a/scripts/win/prepare.bat b/scripts/win/prepare.bat deleted file mode 100644 index 40b96b3..0000000 --- a/scripts/win/prepare.bat +++ /dev/null @@ -1,111 +0,0 @@ -@echo off - -set SELF_PATH=%~dp0 -call %SELF_PATH%\env.bat - -rem choco install curl cmake - -mkdir download - -if "%WITH_TESSDATA%" == "" goto libs -echo "Downloading tessdata" -mkdir download\tessdata -cd download\tessdata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/ara.cube.bigrams -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/ara.cube.fold -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/ara.cube.lm -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/ara.cube.nn -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/ara.cube.params -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/ara.cube.size -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/ara.cube.word-freq -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/ara.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/chi_sim.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/deu.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.cube.bigrams -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.cube.fold -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.cube.lm -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.cube.nn -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.cube.params -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.cube.size -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.cube.word-freq -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.tesseract_cube.nn -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/eng.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.cube.bigrams -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.cube.fold -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.cube.lm -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.cube.nn -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.cube.params -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.cube.size -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.cube.word-freq -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.tesseract_cube.nn -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/fra.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/frk.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/frm.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/jpn.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/rus.cube.fold -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/rus.cube.lm -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/rus.cube.nn -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/rus.cube.params -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/rus.cube.size -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/rus.cube.word-freq -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/rus.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa.cube.bigrams -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa.cube.fold -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa.cube.lm -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa.cube.nn -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa.cube.params -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa.cube.size -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa.cube.word-freq -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa.traineddata -curl -fsSLk -O https://github.com/tesseract-Ocr/tessdata/raw/3.04.00/spa_old.traineddata -cd ..\.. -:libs - - -if "%CLEAR_CACHE%" == "" goto build-libs -echo "Clearing cache" -rmdir /s /q leptonica -rmdir /s /q leptonica-build -rmdir /s /q tesseract -rmdir /s /q leptonica-build -rmdir /s /q installed -:build-libs - - -if exist installed\bin\tesseract*.dll goto end - -echo "Downloading dependencies" -if not exist download\leptonica.zip ( - curl -fsSLk -o download\leptonica.zip https://github.com/DanBloomberg/leptonica/archive/1.74.4.zip -) -if not exist download\tesseract.zip ( - curl -fsSLk -o download\tesseract.zip https://github.com/tesseract-Ocr/tesseract/archive/3.05.01.zip -) - - -echo "Building dependencies" -unzip -qq download\leptonica.zip -move leptonica* leptonica -mkdir leptonica-build -cd leptonica-build -cmake -DCMAKE_BUILD_TYPE=Release -DTARGET_CPU=%ARCH% -DCMAKE_INSTALL_PREFIX=..\installed ..\leptonica -cmake --build . --config Release -cmake --build . --config Release --target install -cd .. -copy /y /b installed\lib\leptonica*.lib installed\lib\lept.lib -if %errorlevel% neq 0 exit /b %errorlevel% - - -unzip -qq download\tesseract.zip -move tesseract* tesseract -mkdir tesseract-build -cd tesseract-build -cmake -DCMAKE_BUILD_TYPE=Release -DTARGET_CPU=%ARCH% -DCMAKE_INSTALL_PREFIX=..\installed -DCMAKE_PREFIX_PATH=..\installed ..\tesseract -cmake --build . --config Release -cmake --build . --config Release --target install -cd .. -copy /y /b installed\lib\tesseract*.lib installed\lib\tesseract.lib -if %errorlevel% neq 0 exit /b %errorlevel% - -:end - diff --git a/scripts/win/sf_key.av b/scripts/win/sf_key.av deleted file mode 100644 index dd403111bd053c7f6614688de3f5e0cba1cf7e05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3248 zcmV;h3{UgjY~*)-f6F5Y!ywSbWqAUDq=ia{EP7BiaPDo7DxnIM%Q3uQVXXA}js=su zsgWatH9X7--7%g<{E(|fEdrbAk9~kF*H%5_4B-byIqkESYx3S$``^mXwsBWIoVac2 znXWq({oXC7y&MOle690w=#ev7p&pZ4@hmvb3z0Y8vbWO5Ev|;}g4N=Aqmpb2Kt(5y z>9N+_G#iVemExzK{|1v{&n&*!H51?BUEAFX`RX_qE*h(A<#>TXH3c@*x2Q1$N#mOp7d<5vW zaxSC^d$sR634572q^>ajOfr2U``bK1qe@Xyw3@JjBY5vIxiZsfE;M#sGBU-LnGSrp z+AI2~5OY-cK6eMYKwlE$Sj^U?G z^aj^}&>YVa;r9-);FN?nN35AH852%(@d|Ce{os)14O?u4Zs>iYqbtm z^%1$+F7|4}^V5~u>TqSR{P`cI2;}Pwlp5KyR2;-aU4QZIITu z=a;`Vbh+tH$Jh6V)I^B$FdVS1 z;Z@d+9>7t`%+s&44)ZHI+T)Afz4{7MU(ePZ(5RP}D~Soz0f2chRjf}IgD&#W!@I>Y zO|fNF=9+==9VGs4U1svW3P&kc;aD41GED}=c&l-F48AR-4y3j;pVlY&G0&LrH(g5B z{}|uf32(JEKui_b(QnB5qcrcA>xmf>@}u)|w^&8ndtA~MfaG~cbio*Jehn}v%~x3i zFM+_fmolI%)t@tu^ zfAv_s$F%XlG{IAZ5iAiz9&w0}c%TnugVJYW74@-`L}a2B1f%VR)8q@waKU9nGdTg0 z7EjdUJ~Yzsz`~vuvw%XV!YkSaNLx~e3>w(rQ2By#ASIlzcBvOH3NNmTHu-4cO(fj$ zIxc{?U8_|tYepY!%)J#^B9x+x$8wAmN)BFmwUoJPz!cmkD{)GZ>cidezs+rbn;cI# z`tu}75cT&Rcq;Dl8B+%?LU0q5XXz5Sdb_ETCHM$#XI}YP#FNgT5{eHs_FvYtTswAK zrSl?LAsM1p$ zIqy$`x#~>-5w@IITg~0|g4XAY#HA;_^gzfD1t5IERKUy&XkDZ!P45y3M;%(~=*=0W zq$1iOm}1wbuV5vvVV!*f~L&q`Gs1R{JULObn2*VW7c#|}$U2lLNmwdMCXC@GOTM^vD;n9d))g*WR1Ws*YA=6MKXPzpW5i?2 zNvb4!s;W3hEd_Znp=`@6q@kHlvz+5q{@!>oXfb)wR_XHd<4W#62zOb3kLIRY^8ej)qdpNWIR3a zOV&oDSQ;2%Dhr_J6sg!sQ~FcULzJEMzm&0cjapnVOKu*>*bD=qAse0R zV9_7hRpiMIVXp8eN6K)Td`T1n@d}~D2lT%ClQOQx3NJVhS0 z9^7Q-w*^|&Ve-V|F{w1DEE#YUeg75%qF(7DB_n)J1@PCNF9OsjN<_-vvzb5TTf zEJTfn5wxRJ^bGencm2H#I*7)lhU)D@O-p4BD_N4ukmt@z^vM= zb=eF@=|3}Bj~HTEq5!8khzY>>j`&mqd{=_K!ov6#n8o>W%cJeez;5i?tgidsViO^D zqR`d(?L&vi=i{3F_(Zfo(k9z1g&b(;5Ksl+aBcU1=v!Acc{WMshIy{mNG*0xo0?MU zI4dJvIH0Q`*kxR|H4mRR`CHw9RIU7CR9S&A-4|sj`T8t`6H&ub+{4|L4fT}tz4gCw z;TfqJko|%kAZT_OiviI^#c#O)SLY;}MY zpQ?`&8uzrV83C9Aor$&z^V-N5IV5;bXkeHpN-mfXDmi~K0j~bQWY24!AstLKdZW#^=+NUw0EdpBG8(0n43B3h*Alj< zYAYL=N5~I$IHhDwREmAaekW-z0Fd!1X=YWGq*ZMiMh{BimJl%*<{?4hdHg5pb{YKa zWM!8{n=R%+uUeN>k`^elwKY(+yRjIpsYyRvkeJV27Rn@CvKA3wpJ}UxUu7ZW2D)iFRALI=iOZOTw?QksWsGw4CY><5)(k zchND{JX8V;pbz>dytyt_h|9h1p>wwdaqdOZvR9)8T{%6@tqr9_-t@E)=y$^f#U?;l z@(h{CsVHW@k3=bhhf@W@w%D~xT0N|*sKE6!sL@%; z7On_bMFR@#?ym|6bw~<}xo?S+xsV3gFoZ7ffvb;PYS|wMy${*ks!t3K)k z><Vk%<;*zA<`JQ7i;82cUx@c z*p^qeFnE;|e7+AiKZW_UZ&W~)%Qp_j&4ks@h7R3SW*f1DM#?6Z{(&TToU%1ZN2O=N z*7}&nMprqE*K6CnXF6Sfwze-rEWjyOSuA(URW=d3P%E2i7IoI)M|7VDC?;dof+>Yc zIT9zVyQMei8!&Te-~`zK_KzVG0G|%}4k)3iT7qtVpnZoCgsLco4OHHjPuCFd&6-1! z=RtA3ikI>j=A@$2*r_?z1(g90^mUmZdwdg$RoB`Q(-MTzMn{QPKMWxFF*42qnXfjV ix>ehJN+Syfwqh9s2`%@j|9dtu;-vjCD^W1SI0nre7*5~- diff --git a/translations/translation_en.ts b/translations/translation_en.ts deleted file mode 100644 index f5290ac..0000000 --- a/translations/translation_en.ts +++ /dev/null @@ -1,1474 +0,0 @@ - - - - - GoogleWebTranslator - - Неверные парметры для перевода. - Wrong translation parameters. - - - - Manager - - - Захват - Capture - - - Перевод - Translation - - - Повторить - Repeat - - - Скопировать - Copy - - - - Повторить захват - Retry capture - - - - - - Результат - Result - - - - Показать - Show - - - - В буфер - To clipboard - - - - Настройки - Settings - - - - - О программе - About - - - - Выход - Exit - - - - Failed to register global shortcuts: -%1 - Failed to register global shortcuts: -%1 - - - - Не найден подходящий язык распознавания. - Failed to find selected recognition language. - - - - Программа для распознавания текста на экране. -Создана с использованием Qt, tesseract-ocr, Google Translate. -Автор: Gres (translator@gres.biz) -Версия: %1 от %2 %3 - Screen text recognition and translation program. \n Uses Qt, tesseract-ocr, Google Translate. \n Author: Gres (translator@gres.biz) \n Version: %1 from %2 %3 - - - - - -Подсказки. -Клик по иконке в трее: -* левой кнопкой - отобразить последний результат -* средней кнопкой - скопировать последний результат в буфер обмена -* двойной клик - повторный захват последнего экрана - -Захвата изображения при зажатых кнопках: -* Ctrl - не выходить из режима захвата -* Alt - выполнить перевод, если в настройках он выключен (и наоборот, не выполнять, если включен) - - - -Tips. -Tray icon click: -* left button - show last result -* middle button - copy last result to clipboard -* double click - repeat last screen capture - -Key modifiers what capturing : -* Ctrl - do not exit from capture mode -* Alt - make translation if it is disabled in settings (or do not make, if it is enabled) - - - - - Последний результат был скопирован в буфер обмена. - Last result has been copied to clipboard. - - - - Правка - Correction - - - - Исправьте распознанный текст - Correct recognized text - - - Программа для распознавания текста на экране. -Создана с использованием Qt, tesseract-ocr, Google Translate. -Автор: Gres (translator@gres.biz) - Screen text recognition and translation program. \n Uses Qt, tesseract-ocr, Google Translate. \n Author: Gres (translator@gres.biz) - - - Последний перевод был скопирован в буфер обмена. - Last translation has been copied to the clipboard. - - - - Ошибка - Error - - - - QObject - - - - Afrikaans - Afrikaans - - - - - Albanian - Albanian - - - - - Arabic - Arabic - - - - Armenian - Armenian - - - - - Azerbaijani - Azerbaijani - - - - - Basque - Basque - - - - - Belarusian - Belarusian - - - - - Bulgarian - Bulgarian - - - - - Catalan - Catalan - - - - - Chinese (Simplified) - Chinese (Simplified) - - - - - Chinese (Traditional) - Chinese (Traditional) - - - - - Croatian - Croatian - - - - - Czech - Czech - - - - - Danish - Danish - - - - - Dutch - Dutch - - - - - English - English - - - - - Estonian - Estonian - - - - Filipino - Filipino - - - - - Finnish - Finnish - - - - - French - French - - - - - Galician - Galician - - - - - Georgian - Georgian - - - - - German - German - - - - - Greek - Greek - - - - Haitian Creole - Haitian Creole - - - - - Hebrew - Hebrew - - - - - Hindi - Hindi - - - - - Hungarian - Hungarian - - - - - Icelandic - Icelandic - - - - - Indonesian - Indonesian - - - - - Irish - Irish - - - - - Italian - Italian - - - - - Japanese - Japanese - - - - - Korean - Korean - - - - - Latvian - Latvian - - - - - Lithuanian - Lithuanian - - - - - Macedonian - Macedonian - - - - - Malay - Malay - - - - - Maltese - Maltese - - - - - Norwegian - Norwegian - - - - - Persian - Persian - - - - - Polish - Polish - - - - - Portuguese - Portuguese - - - - - Romanian - Romanian - - - - - Russian - Russian - - - - - Serbian - Serbian - - - - Slovak - Slovak - - - - - Slovenian - Slovenian - - - - - Spanish - Spanish - - - - - Swahili - Swahili - - - - - Swedish - Swedish - - - - - Thai - Thai - - - - - Turkish - Turkish - - - - - Ukrainian - Ukrainian - - - - - Urdu - Urdu - - - - - Vietnamese - Vietnamese - - - - - Welsh - Welsh - - - - - Yiddish - Yiddish - - - - Ancient Greek - Ancient Greek - - - - Esperanto alternative - - - - - Tagalog - Tagalog - - - - Telugu - Telugu - - - - Tamil - Tamil - - - - Slovakian - Slovakian - - - - Malayalam - Malayalam - - - - Kannada - Kannada - - - - Cherokee - Cherokee - - - - Middle French (ca. 1400-1600) - Middle French - - - - Frankish - Frankish - - - - Math / equation - Math / equation - - - - Esperanto - Esperanto - - - - Middle English (1100-1500) - Middle English - - - - Bengali - Bengali - - - - Amharic - Amharic - - - - Assamese - Assamese - - - - Tibetan - Tibetan - - - - Bosnian - Bosnian - - - - Cebuano - Cebuano - - - - Dzongkha - Dzongkha - - - - Gujarati - Gujarati - - - - Haitian - Haitian - - - - Inuktitut - Inuktitut - - - - Javanese - Javanese - - - - Kazakh - Kazakh - - - - Khmer - Khmer - - - - Kirghiz - Kirghiz - - - - Kurdish - Kurdish - - - - Lao - Lao - - - - Latin - Latin - - - - Marathi - Marathi - - - - Burmese - Burmese - - - - Nepali - Nepali - - - - Oriya - Oriya - - - - Panjabi - Panjabi - - - - Pushto - Pushto - - - - Sanskrit - Sanskrit - - - - Sinhala - Sinhala - - - - Syriac - Syriac - - - - Tajik - Tajik - - - - Tigrinya - Tigrinya - - - - Uighur - Uighur - - - - Uzbek - Uzbek - - - - Recognizer - - - Неверные параметры для OCR - Wrong parameters for OCR - - - - Ошибка инициализации OCR: %1 - OCR initialization error: %1 - - - - Текст не распознан. - Failed to recognize text. - - - - ResultDialog - - - Результат - Result - - - - Распознать другой язык - Recognize another language - - - - Перевести на другой язык - Translate to another language - - - - Скопировать в буфер - Copy to clipboard - - - - Скопировать рисунок в буфер - Copy image to clibpoard - - - - Исправить распознанный текст - Correct recognized text - - - - SelectionDialog - - - Dialog - Selection - - - - Поменять язык текста и перевода - Swap recognition/translation languages - - - - SettingsEditor - - - Настройки - Settings - - - - Общее - General - - - - Горячие клавиши - Hotkeys - - - - <html><head/><body><p>Сочетание клавиш для перехода в режим захвата.</p></body></html> - <html><head/><body><p>Keys combination to enter capture mode.</p></body></html> - - - - Захватить - Capture - - - - <html><head/><body><p>Сочетание клавиш для перехода в режим захвата, но с использованием последнего использованного, а не текущего, изображения.</p></body></html> - <html><head/><body><p>Keys combination to enter capture mode, but with last used image instead of current.</p></body></html> - - - - Захватить повторно - Repeat capture - - - - <html><head/><body><p>Сочетание клавиш для повторного отображения последнего результата.</p></body></html> - <html><head/><body><p>Keys combination to show last result again.</p></body></html> - - - - Показать - Show - - - - <html><head/><body><p>Сочетание клавиш для копирования последнего результата в буфер обмена.</p></body></html> - <html><head/><body><p>Keys combination to copy last result to clipboard.</p></body></html> - - - - Скопировать - Copy - - - Повторить - Repeat - - - - Распознавание - Recognition - - - <html><head/><body><p>Необходимо для распознавания.</p><p>Скачивается отсюда: <a href="https://code.google.com/p/tesseract-ocr/downloads/list"><span style=" text-decoration: underline; color:#0000ff;">https://code.google.com/p/tesseract-ocr/downloads/list</span></a></p></body></html> - <html><head/><body><p>Required for recognition.</p><p>Can me downloaded from there: <a href="https://code.google.com/p/tesseract-ocr/downloads/list"><span style=" text-decoration: underline; color:#0000ff;">https://code.google.com/p/tesseract-ocr/downloads/list</span></a></p></body></html> - - - - - Путь к tessdata - Tessdata path - - - - ... - ... - - - - <html><head/><body><p>Заполняется на основании содержания tessdata</p></body></html> - <html><head/><body><p>Values depend on tessdata contents</p></body></html> - - - - Язык распознавания - Recognition language - - - <html><head/><body><p>Масштабирование изображения для улучшения распознания. Больше - лучше (до определенных пределов), но медленнее.</p></body></html> - <html><head/><body><p>Image scaling for better recognition. More is better (reasonable), but slower.</p></body></html> - - - - Увеличение масштаба - Scale factor - - - - Вывод результата - Result representation - - - - Трей - Tray - - - - Окно - Window - - - - Прокси - Proxy - - - - Тип: - Type: - - - - Пользователь: - User: - - - - Адрес: - Host: - - - - Пароль: - Password: - - - - Порт: - Port: - - - - Сохранять пароль (небезопасно) - Save password (unsafe) - - - - Обновление - Updates - - - - Проверять обновления: - Check interval: - - - - Проверить - Check now - - - - <html><head/><body><p>Необходимо для распознавания.</p><p>Скачивается отсюда: <a href="https://github.com/tesseract-ocr/tessdata"><span style=" text-decoration: underline; color:#7593bc;">https://github.com/tesseract-ocr/tessdata</span></a></p><p>&quot;./&quot; означает, что папка &quot;tessdata&quot; находится в одной директории с исполняемым файлом программы.</p></body></html> - <html><head/><body><p>Required for recognition.</p><p>Can me downloaded from there: <a href="https://github.com/tesseract-ocr/tessdata"><span style=" text-decoration: underline; color:#7593bc;">https://github.com/tesseract-ocr/tessdata</span></a></p><p>&quot;./&quot; means that .&quot;tessdata&quot; is in the same folder as program's binary</p></body></html> - - - - <html><head/><body><p>Масштабирование изображения для улучшения распознания. Больше - лучше (до определенных пределов), но медленнее и потребляет больше памяти.</p><p>Рекомендуемые значения от 5 до 10.</p></body></html> - <html><head/><body><p>Image scaling can improve recognition results. More is better (up to reasonable limits), but slower and consumes more memory.</p><p>Recommended values are between 5 and 10.</p></body></html> - - - - <html><head/><body><p>Символы, регулярно распознаваемые с ошибками. При обнаружении будут заменены на указанные.</p></body></html> - <html><head/><body><p>Symbols to replace in recognition results. Allows to avoid repeating errors.</p></body></html> - - - - Исправления: - Substitutions: - - - - Язык - Language - - - - Исходный текст - Source - - - - Исправление - Target - - - - Перевод - Translation - - - - <html><head/><body><p>Необходимо ли переводить (вкл) распознанный текст.</p></body></html> - <html><head/><body><p>If enabled - recognized text will be translated. Only recognize otherwise.</p></body></html> - - - - Переводить текст - Translate text - - - - <html><head/><body><p>Отображает окно переводчика. Следует использовать только для разработки переводчиков.</p></body></html> - <html><head/><body><p>Displays translator's window. Should me used only for new translators development.</p></body></html> - - - - Режим отладки - Debug mode - - - - Игнорировать ошибки SSL - Ignore SSL errors - - - - Принудительно менять переводчики - Force rotate translators - - - - <html><head/><body><p>Максимальное время, которое может быть затрачено на перевод, чтобы он не считался &quot;зависшим&quot;.</p></body></html> - <html><head/><body><p>Max time of translation process.</p></body></html> - - - - Максимальное время перевода: - Max translation time: - - - - <html><head/><body><p>Язык, на который осуществляется перевод.</p></body></html> - <html><head/><body><p>Translated text language.</p></body></html> - - - - Язык результата: - Translation language: - - - - Переводчики: - Translators: - - - - сек. - secs. - - - - <html><head/><body><p>Отображены в порядке убывания приоритета.</p></body></html> - <html><head/><body><p>Sorted by priority descending.</p></body></html> - - - Язык результата - Result language - - - Afrikaans - Afrikaans - - - Albanian - Albanian - - - Arabic - Arabic - - - Armenian - Armenian - - - Azerbaijani - Azerbaijani - - - Basque - Basque - - - Belarusian - Belarusian - - - Bulgarian - Bulgarian - - - Catalan - Catalan - - - Chinese (Simplified) - Chinese (Simplified) - - - Chinese (Traditional) - Chinese (Traditional) - - - Croatian - Croatian - - - Czech - Czech - - - Danish - Danish - - - Dutch - Dutch - - - English - English - - - Estonian - Estonian - - - Filipino - Filipino - - - Finnish - Finnish - - - French - French - - - Galician - Galician - - - Georgian - Georgian - - - German - German - - - Greek - Greek - - - Haitian Creole - Haitian Creole - - - Hebrew - Hebrew - - - Hindi - Hindi - - - Hungarian - Hungarian - - - Icelandic - Icelandic - - - Indonesian - Indonesian - - - Irish - Irish - - - Italian - Italian - - - Japanese - Japanese - - - Korean - Korean - - - Latvian - Latvian - - - Lithuanian - Lithuanian - - - Macedonian - Macedonian - - - Malay - Malay - - - Maltese - Maltese - - - Norwegian - Norwegian - - - Persian - Persian - - - Polish - Polish - - - Portuguese - Portuguese - - - Romanian - Romanian - - - Russian - Russian - - - Serbian - Serbian - - - Slovak - Slovak - - - Slovenian - Slovenian - - - Spanish - Spanish - - - Swahili - Swahili - - - Swedish - Swedish - - - Thai - Thai - - - Turkish - Turkish - - - Ukrainian - Ukrainian - - - Urdu - Urdu - - - Vietnamese - Vietnamese - - - Welsh - Welsh - - - Yiddish - Yiddish - - - Ancient Greek - Ancient Greek - - - Tagalog - Tagalog - - - Telugu - Telugu - - - Tamil - Tamil - - - Slovakian - Slovakian - - - Malayalam - Malayalam - - - Kannada - Kannada - - - Cherokee - Cherokee - - - Middle French (ca. 1400-1600) - Middle French (ca. 1400-1600) - - - Frankish - Frankish - - - Math / equation - Math / equation - - - Esperanto - Esperanto - - - Middle English (1100-1500) - Middle English (1100-1500) - - - Bengali - Bengali - - - - Никогда - Never - - - - Ежедневно - Daily - - - - Еженедельно - Weekly - - - - Ежемесячно - Monthly - - - - Нет - None - - - - SOCKS 5 - SOCKS 5 - - - - HTTP - HTTP - - - - Translator - - Неверные парметры для перевода. - Wrong translation parameters. - - - Ошибка альтернативного перевода текста: %1 - Failed to translate with alternative method: %1 - - - Ошибка перевода: %1 - Translation error: %1 - - - Ошибка разбора перевода: %1 (%2) - Translation parsing error: %1 (%2) - - - - Updater - - - Ошибка определения текущей версии. Обновление недоступно. - Current version check error. Updates disabled. - - - - Ошибка загрузки информации для обновления. - Update load error. - - - - Доступно обновлений: %1. - - Updates available: %1. - - - - - Несовместимых обновлений: %1. -Выполните обновление вручную. - Incompatible updates: %1. -Perform manual update. - - - - Недоступных для записи директорий: %1. -%2 -Измените права доступа и повторите попытку или выполните обновление вручную. - Inaccessible dirs (no write access): %1. -%2 -Change dirs permissions and try again or perform manual update. - - - - Обновить? - Update? - - - - - Обновление - Update - - - - Ошибка обновления файла (%1). - File update error (%1). - - - - Обновление завершено. Для активации некоторых компонентов может потребоваться перезапуск. - Update finished. Some components may require restart to work. - - - - Ошибка обновления файла с текущей версией. - Failed to update current version file. - - - - WebTranslator - - - Перевод отменен по таймауту. - Translation timed out. - - - - Ошибка загрузки страницы (%1) для перевода. - Page (%1) load failed. - - - - Нет сценариев для перевода. Измените настройки. - Not found any translators. Change settings. - - - diff --git a/translations/translation_ru.ts b/translations/translation_ru.ts deleted file mode 100644 index 8bfe56b..0000000 --- a/translations/translation_ru.ts +++ /dev/null @@ -1,1483 +0,0 @@ - - - - - GoogleWebTranslator - - Неверные парметры для перевода. - Неверные парметры для перевода. - - - - Manager - - - Захват - Захват - - - Перевод - Перевод - - - Повторить - Повторить - - - Скопировать - Скопировать - - - - Повторить захват - Повторить захват - - - - - - Результат - Результат - - - - Показать - Показать - - - - В буфер - В буфер - - - - Настройки - Настройки - - - - - О программе - О программе - - - - Выход - Выход - - - - Failed to register global shortcuts: -%1 - Ошибка регистрации глобальных горячих клавиш: -%1 - - - - Не найден подходящий язык распознавания. - Не найден подходящий язык распознавания. - - - - Программа для распознавания текста на экране. -Создана с использованием Qt, tesseract-ocr, Google Translate. -Автор: Gres (translator@gres.biz) -Версия: %1 от %2 %3 - Программа для распознавания текста на экране. -Создана с использованием Qt, tesseract-ocr, Google Translate. -Автор: Gres (translator@gres.biz) -Версия: %1 от %2 %3 - - - - - -Подсказки. -Клик по иконке в трее: -* левой кнопкой - отобразить последний результат -* средней кнопкой - скопировать последний результат в буфер обмена -* двойной клик - повторный захват последнего экрана - -Захвата изображения при зажатых кнопках: -* Ctrl - не выходить из режима захвата -* Alt - выполнить перевод, если в настройках он выключен (и наоборот, не выполнять, если включен) - - - -Подсказки. -Клик по иконке в трее: -* левой кнопкой - отобразить последний результат -* средней кнопкой - скопировать последний результат в буфер обмена -* двойной клик - повторный захват последнего экрана - -Захват изображения при зажатых кнопках: -* Ctrl - не выходить из режима захвата -* Alt - выполнить перевод, если в настройках он выключен (и наоборот, не выполнять, если включен) - - - - - Последний результат был скопирован в буфер обмена. - Последний результат был скопирован в буфер обмена. - - - - Правка - Правка - - - - Исправьте распознанный текст - Исправьте распознанный текст - - - Программа для распознавания текста на экране. -Создана с использованием Qt, tesseract-ocr, Google Translate. -Автор: Gres (translator@gres.biz) - Программа для распознавания текста на экране. -Создана с использованием Qt, tesseract-ocr, Google Translate. -Автор: Gres (translator@gres.biz) - - - Последний перевод был скопирован в буфер обмена. - Последний перевод был скопирован в буфер обмена. - - - - Ошибка - Ошибка - - - - QObject - - - - Afrikaans - Африкаанс - - - - - Albanian - Албанский - - - - - Arabic - Арабский - - - - Armenian - Армянский - - - - - Azerbaijani - Азербайджанский - - - - - Basque - Басков - - - - - Belarusian - Белорусский - - - - - Bulgarian - Болгарский - - - - - Catalan - Каталонский - - - - - Chinese (Simplified) - Китайский (упрощенный) - - - - - Chinese (Traditional) - Китайский (традиционный) - - - - - Croatian - Хорватский - - - - - Czech - Чешский - - - - - Danish - Датский - - - - - Dutch - Голландский - - - - - English - Английский - - - - - Estonian - Эстонский - - - - Filipino - Филиппинский - - - - - Finnish - Финский - - - - - French - Французский - - - - - Galician - Галицкий - - - - - Georgian - Грузинский - - - - - German - Немецкий - - - - - Greek - Греческий - - - - Haitian Creole - Гаитянский креольский - - - - - Hebrew - Иврит - - - - - Hindi - Хинди - - - - - Hungarian - Венгерский - - - - - Icelandic - Исландский - - - - - Indonesian - Индонезийский - - - - - Irish - Ирландский - - - - - Italian - Итальянский - - - - - Japanese - Японский - - - - - Korean - Корейский - - - - - Latvian - Латвийский - - - - - Lithuanian - Литовский - - - - - Macedonian - Македонский - - - - - Malay - Малайский - - - - - Maltese - Мальтийский - - - - - Norwegian - Норвежский - - - - - Persian - Персидский - - - - - Polish - Польский - - - - - Portuguese - Португальский - - - - - Romanian - Румынский - - - - - Russian - Русский - - - - - Serbian - Сербский - - - - Slovak - Словацкий - - - - - Slovenian - Словенский - - - - - Spanish - Испанский - - - - - Swahili - Суахили - - - - - Swedish - Шведский - - - - - Thai - Тайский - - - - - Turkish - Турецкий - - - - - Ukrainian - Украинский - - - - - Urdu - Урду - - - - - Vietnamese - Вьетнамский - - - - - Welsh - Валлийский - - - - - Yiddish - Идиш - - - - Ancient Greek - Древнегреческий - - - - Esperanto alternative - Эсперанто альтернативный - - - - Tagalog - Тагальский - - - - Telugu - Телугу - - - - Tamil - Тамил - - - - Slovakian - Словацкий - - - - Malayalam - Малаялам - - - - Kannada - Каннада - - - - Cherokee - Чероки - - - - Middle French (ca. 1400-1600) - Средневековый Французский - - - - Frankish - Франкский - - - - Math / equation - Математика/уравнение - - - - Esperanto - Эсперанто - - - - Middle English (1100-1500) - Средневековый Английский - - - - Bengali - Бенгальский - - - - Amharic - Амхарский - - - - Assamese - Ассамский - - - - Tibetan - Тибетский - - - - Bosnian - Боснийский - - - - Cebuano - Кебуано - - - - Dzongkha - Джонгха - - - - Gujarati - Гуджарати - - - - Haitian - Гаити - - - - Inuktitut - Инуктитут - - - - Javanese - Яванский - - - - Kazakh - Казахский - - - - Khmer - Кхмерский - - - - Kirghiz - Киргизский - - - - Kurdish - Курдский - - - - Lao - Лао - - - - Latin - Латинский - - - - Marathi - Маратхи - - - - Burmese - Бирманский - - - - Nepali - Непальский - - - - Oriya - Ория - - - - Panjabi - Панджаби - - - - Pushto - Пушту - - - - Sanskrit - Санскрит - - - - Sinhala - Сингальский - - - - Syriac - Сирийский - - - - Tajik - Таджикский - - - - Tigrinya - Тиграи - - - - Uighur - Уйгурский - - - - Uzbek - Узбекский - - - - Recognizer - - - Неверные параметры для OCR - Неверные параметры для OCR - - - - Ошибка инициализации OCR: %1 - Ошибка инициализации OCR: %1 - - - - Текст не распознан. - Текст не распознан. - - - - ResultDialog - - - Результат - Результат - - - - Распознать другой язык - Распознать другой язык - - - - Перевести на другой язык - Перевести на другой язык - - - - Скопировать в буфер - Скопировать в буфер - - - - Скопировать рисунок в буфер - Скопировать рисунок в буфер - - - - Исправить распознанный текст - Исправить распознанный текст - - - - SelectionDialog - - - Dialog - Выбор - - - - Поменять язык текста и перевода - Поменять язык текста и перевода - - - - SettingsEditor - - - Настройки - Настройки - - - - Общее - Общее - - - - Горячие клавиши - Горячие клавиши - - - - <html><head/><body><p>Сочетание клавиш для перехода в режим захвата.</p></body></html> - <html><head/><body><p>Сочетание клавиш для перехода в режим захвата.</p></body></html> - - - - Захватить - Захватить - - - - <html><head/><body><p>Сочетание клавиш для перехода в режим захвата, но с использованием последнего использованного, а не текущего, изображения.</p></body></html> - <html><head/><body><p>Сочетание клавиш для перехода в режим захвата, но с использованием последнего использованного, а не текущего, изображения.</p></body></html> - - - - Захватить повторно - Захватить повторно - - - - <html><head/><body><p>Сочетание клавиш для повторного отображения последнего результата.</p></body></html> - <html><head/><body><p>Сочетание клавиш для повторного отображения последнего результата.</p></body></html> - - - - Показать - Показать - - - - <html><head/><body><p>Сочетание клавиш для копирования последнего результата в буфер обмена.</p></body></html> - <html><head/><body><p>Сочетание клавиш для копирования последнего результата в буфер обмена.</p></body></html> - - - - Скопировать - Скопировать - - - Повторить - Повторить - - - - Распознавание - Распознавание - - - <html><head/><body><p>Необходимо для распознавания.</p><p>Скачивается отсюда: <a href="https://code.google.com/p/tesseract-ocr/downloads/list"><span style=" text-decoration: underline; color:#0000ff;">https://code.google.com/p/tesseract-ocr/downloads/list</span></a></p></body></html> - <html><head/><body><p>Необходимо для распознавания.</p><p>Скачивается отсюда: <a href="https://code.google.com/p/tesseract-ocr/downloads/list"><span style=" text-decoration: underline; color:#0000ff;">https://code.google.com/p/tesseract-ocr/downloads/list</span></a></p></body></html> - - - - - Путь к tessdata - Путь к tessdata - - - - ... - ... - - - - <html><head/><body><p>Заполняется на основании содержания tessdata</p></body></html> - <html><head/><body><p>Заполняется на основании содержания tessdata</p></body></html> - - - - Язык распознавания - Язык распознавания - - - <html><head/><body><p>Масштабирование изображения для улучшения распознания. Больше - лучше (до определенных пределов), но медленнее.</p></body></html> - <html><head/><body><p>Масштабирование изображения для улучшения распознания. Больше - лучше (до определенных пределов), но медленнее.</p></body></html> - - - - Увеличение масштаба - Увеличение масштаба - - - - Вывод результата - Вывод результата - - - - Трей - Трей - - - - Окно - Окно - - - - Прокси - Прокси - - - - Тип: - Тип: - - - - Пользователь: - Пользователь: - - - - Адрес: - Адрес: - - - - Пароль: - Пароль: - - - - Порт: - Порт: - - - - Сохранять пароль (небезопасно) - Сохранять пароль (небезопасно) - - - - Обновление - Обновление - - - - Проверять обновления: - Проверять обновления: - - - - Проверить - Проверить - - - - <html><head/><body><p>Необходимо для распознавания.</p><p>Скачивается отсюда: <a href="https://github.com/tesseract-ocr/tessdata"><span style=" text-decoration: underline; color:#7593bc;">https://github.com/tesseract-ocr/tessdata</span></a></p><p>&quot;./&quot; означает, что папка &quot;tessdata&quot; находится в одной директории с исполняемым файлом программы.</p></body></html> - <html><head/><body><p>Необходимо для распознавания.</p><p>Скачивается отсюда: <a href="https://github.com/tesseract-ocr/tessdata"><span style=" text-decoration: underline; color:#7593bc;">https://github.com/tesseract-ocr/tessdata</span></a></p><p>&quot;./&quot; означает, что папка &quot;tessdata&quot; находится в одной директории с исполняемым файлом программы.</p></body></html> - - - - <html><head/><body><p>Масштабирование изображения для улучшения распознания. Больше - лучше (до определенных пределов), но медленнее и потребляет больше памяти.</p><p>Рекомендуемые значения от 5 до 10.</p></body></html> - <html><head/><body><p>Масштабирование изображения для улучшения распознания. Больше - лучше (до определенных пределов), но медленнее и потребляет больше памяти.</p><p>Рекомендуемые значения от 5 до 10.</p></body></html> - - - - <html><head/><body><p>Символы, регулярно распознаваемые с ошибками. При обнаружении будут заменены на указанные.</p></body></html> - <html><head/><body><p>Символы, регулярно распознаваемые с ошибками. При обнаружении будут заменены на указанные.</p></body></html> - - - - Исправления: - Исправления: - - - - Язык - Язык - - - - Исходный текст - Исходный текст - - - - Исправление - Исправление - - - - Перевод - Перевод - - - - <html><head/><body><p>Необходимо ли переводить (вкл) распознанный текст.</p></body></html> - <html><head/><body><p>Необходимо ли переводить (вкл) распознанный текст.</p></body></html> - - - - Переводить текст - Переводить текст - - - - <html><head/><body><p>Отображает окно переводчика. Следует использовать только для разработки переводчиков.</p></body></html> - <html><head/><body><p>Отображает окно переводчика. Следует использовать только для разработки переводчиков.</p></body></html> - - - - Режим отладки - Режим отладки - - - - Игнорировать ошибки SSL - Игнорировать ошибки SSL - - - - Принудительно менять переводчики - Принудительно менять переводчики - - - - <html><head/><body><p>Максимальное время, которое может быть затрачено на перевод, чтобы он не считался &quot;зависшим&quot;.</p></body></html> - <html><head/><body><p>Максимальное время, которое может быть затрачено на перевод, чтобы он не считался &quot;зависшим&quot;.</p></body></html> - - - - Максимальное время перевода: - Максимальное время перевода: - - - - <html><head/><body><p>Язык, на который осуществляется перевод.</p></body></html> - <html><head/><body><p>Язык, на который осуществляется перевод.</p></body></html> - - - - Язык результата: - Язык результата: - - - - Переводчики: - Переводчики: - - - - сек. - сек. - - - - <html><head/><body><p>Отображены в порядке убывания приоритета.</p></body></html> - <html><head/><body><p>Отображены в порядке убывания приоритета.</p></body></html> - - - Язык результата - Язык результата - - - Afrikaans - Африкаанс - - - Albanian - Албанский - - - Arabic - Арабский - - - Armenian - Армянский - - - Azerbaijani - Азербайджанский - - - Basque - Басков - - - Belarusian - Белорусский - - - Bulgarian - Болгарский - - - Catalan - Каталонский - - - Chinese (Simplified) - Китайский (упрощенный) - - - Chinese (Traditional) - Китайский (традиционный) - - - Croatian - Хорватский - - - Czech - Чешский - - - Danish - Датский - - - Dutch - Голландский - - - English - Английский - - - Estonian - Эстонский - - - Filipino - Филиппинский - - - Finnish - Финский - - - French - Французский - - - Galician - Галицкий - - - Georgian - Грузинский - - - German - Немецкий - - - Greek - Греческий - - - Haitian Creole - Гаитянский креольский - - - Hebrew - Иврит - - - Hindi - Хинди - - - Hungarian - Венгерский - - - Icelandic - Исландский - - - Indonesian - Индонезийский - - - Irish - Ирландский - - - Italian - Итальянский - - - Japanese - Японский - - - Korean - Корейский - - - Latvian - Латвийский - - - Lithuanian - Литовский - - - Macedonian - Македонский - - - Malay - Малайский - - - Maltese - Мальтийский - - - Norwegian - Норвежский - - - Persian - Персидский - - - Polish - Польский - - - Portuguese - Португальский - - - Romanian - Румынский - - - Russian - Русский - - - Serbian - Сербский - - - Slovak - Словацкий - - - Slovenian - Словенский - - - Spanish - Испанский - - - Swahili - Суахили - - - Swedish - Шведский - - - Thai - Тайский - - - Turkish - Турецкий - - - Ukrainian - Украинский - - - Urdu - Урду - - - Vietnamese - Вьетнамский - - - Welsh - Валлийский - - - Yiddish - Идиш - - - Ancient Greek - Древнегреческий - - - Esperanto alternative - Эсперанто альтернативный - - - Tagalog - Тагальский - - - Telugu - Телугу - - - Tamil - Тамил - - - Slovakian - Словацкий - - - Malayalam - Малаялам - - - Kannada - Каннада - - - Cherokee - Чероки - - - Middle French (ca. 1400-1600) - Средневековый Французский (ок.1400-1600) - - - Frankish - Франкский - - - Math / equation - Математика/уравнение - - - Esperanto - Эсперанто - - - Middle English (1100-1500) - Средневековый Английский (1100-1500) - - - Bengali - Бенгальский - - - - Никогда - Никогда - - - - Ежедневно - Ежедневно - - - - Еженедельно - Еженедельно - - - - Ежемесячно - Ежемесячно - - - - Нет - Нет - - - - SOCKS 5 - SOCKS 5 - - - - HTTP - HTTP - - - - Translator - - Неверные парметры для перевода. - Неверные парметры для перевода. - - - Ошибка альтернативного перевода текста: %1 - Ошибка альтернативного перевода текста: %1 - - - Ошибка перевода: %1 - Ошибка перевода: %1 - - - Ошибка разбора перевода: %1 (%2) - Ошибка разбора перевода: %1 (%2) - - - - Updater - - - Ошибка определения текущей версии. Обновление недоступно. - Ошибка определения текущей версии. Обновление недоступно. - - - - Ошибка загрузки информации для обновления. - Ошибка загрузки информации для обновления. - - - - Доступно обновлений: %1. - - Доступно обновлений: %1. - - - - - Несовместимых обновлений: %1. -Выполните обновление вручную. - Несовместимых обновлений: %1. -Выполните обновление вручную. - - - - Недоступных для записи директорий: %1. -%2 -Измените права доступа и повторите попытку или выполните обновление вручную. - Недоступных для записи директорий: %1. -%2 -Измените права доступа и повторите попытку или выполните обновление вручную. - - - - Обновить? - Обновить? - - - - - Обновление - Обновление - - - - Ошибка обновления файла (%1). - Ошибка обновления файла (%1). - - - - Обновление завершено. Для активации некоторых компонентов может потребоваться перезапуск. - Обновление завершено. Для активации некоторых компонентов может потребоваться перезапуск. - - - - Ошибка обновления файла с текущей версией. - Ошибка обновления файла с текущей версией. - - - - WebTranslator - - - Перевод отменен по таймауту. - Перевод отменен по таймауту. - - - - Ошибка загрузки страницы (%1) для перевода. - Ошибка загрузки страницы (%1) для перевода. - - - - Нет сценариев для перевода. Измените настройки. - Нет сценариев для перевода. Измените настройки. - - -