--- trunk/installer/teraterm.iss 2010/02/20 14:29:36 3792 +++ trunk/installer/teraterm.iss 2011/02/28 15:56:53 4353 @@ -1,6 +1,6 @@ #define AppName "Tera Term" -#define AppVer "4.65" -#define snapshot GetDateTimeString('yyyymmdd_hhnnss', '', ''); +#define AppVer "4.69-RC2" +;#define snapshot GetDateTimeString('yyyymmdd_hhnnss', '', ''); [Setup] AppCopyright=TeraTerm Project @@ -16,7 +16,7 @@ ShowLanguageDialog=yes AllowNoIcons=true UninstallDisplayIcon={app}\ttermpro.exe -AppMutex=TeraTermProAppMutex, TeraTermProMacroAppMutex, TeraTermProKeycodeAppMutex, TeraTermMenuAppMutex, CygTermAppMutex +AppMutex=TeraTermProAppMutex, TeraTermProMacroAppMutex, TeraTermProKeycodeAppMutex, TeraTermMenuAppMutex, CygTermAppMutex, Global\TeraTermProAppMutex, Global\TeraTermProMacroAppMutex, Global\TeraTermProKeycodeAppMutex, Global\TeraTermMenuAppMutex, Global\CygTermAppMutex #ifndef snapshot OutputBaseFilename=teraterm-{#AppVer} #else @@ -64,16 +64,18 @@ Source: release\screencapture.ttl; DestDir: {app}; Components: TeraTerm Source: release\ssh2login.ttl; DestDir: {app}; Components: TeraTerm Source: release\wait_regex.ttl; DestDir: {app}; Components: TeraTerm +Source: release\lang\Default.lng; DestDir: {app}\lang; Components: TeraTerm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify Source: release\lang\Japanese.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly Source: release\lang\German.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly +Source: release\lang\French.lng; DestDir: {app}\lang; Components: TeraTerm; Attribs: readonly; Flags: uninsremovereadonly overwritereadonly Source: ..\ttssh2\ttxssh\Release\ttxssh.dll; DestDir: {app}; Components: TTSSH; Flags: ignoreversion Source: release\ssh_known_hosts; DestDir: {app}; Components: TTSSH; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify Source: ..\cygterm\cygterm.exe; DestDir: {app}; Components: cygterm Source: ..\cygterm\cygterm.cfg; DestDir: {app}; Components: cygterm; Flags: onlyifdoesntexist uninsneveruninstall; Permissions: authusers-modify Source: ..\cygterm\cyglaunch.exe; DestDir: {app}; Components: cygterm Source: ..\cygterm\cygterm+.tar.gz; DestDir: {app}; Components: cygterm -Source: ..\libs\logmett\Setup_LogMeTT_2_9_7.exe; DestDir: {tmp}; Components: LogMeTT; Flags: deleteafterinstall -Source: ..\libs\logmett\Setup_TTLEdit_1_1_5.exe; DestDir: {tmp}; Components: TTLEdit; Flags: deleteafterinstall +Source: ..\libs\logmett\Setup_LogMeTT_2_9_8_1.exe; DestDir: {tmp}; Components: LogMeTT; Flags: deleteafterinstall +Source: ..\libs\logmett\Setup_TTLEditor_1_2_1.exe; DestDir: {tmp}; Components: TTLEdit; Flags: deleteafterinstall Source: ..\ttpmenu\Release\ttpmenu.exe; DestDir: {app}; Components: TeraTerm_Menu; Flags: ignoreversion Source: release\ttmenu_readme-j.txt; DestDir: {app}; Components: TeraTerm_Menu Source: ..\TTProxy\Release\TTXProxy.dll; DestDir: {app}; Components: TTProxy; Flags: ignoreversion @@ -207,7 +209,7 @@ [Run] Filename: {app}\ttermpro.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_teraterm}; Components: TeraTerm Filename: {tmp}\Setup_LogMeTT_2_9_7.exe; Components: LogMeTT -Filename: {tmp}\Setup_TTLEdit_1_1_5.exe; Components: TTLEdit +Filename: {tmp}\Setup_TTLEditor_1_2_1.exe; Components: TTLEdit Filename: {app}\ttpmenu.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_ttmenu}; Components: TeraTerm_Menu Filename: {app}\Collector\Collector.exe; Flags: nowait postinstall skipifsilent unchecked; Description: {cm:launch_collector}; Components: Collector @@ -252,12 +254,14 @@ en.msg_language_none=&English en.msg_language_japanese=&Japanese en.msg_language_german=&German +en.msg_language_french=&French ja.msg_language_caption=言語の選択 ja.msg_language_description=ユーザーインターフェースの言語を選択してください。 ja.msg_language_subcaption=アプリケーションのメニューやダイアログ等の表示言語を選択して、「次へ」をクリックしてください。 ja.msg_language_none=英語(&E) ja.msg_language_japanese=日本語(&J) ja.msg_language_german=ドイツ語(&G) +ja.msg_language_french=フランス語(&F) en.msg_del_confirm=Are you sure that you want to delete %s ? ja.msg_del_confirm=%s を削除しますか? en.msg_uninstall_confirm=It seems a former version is installed. You are recommended to uninstall it previously. Do you uninstall former version ? @@ -330,6 +334,29 @@ end; end; +{ +// If value is not found in INI, returns "" +function GetIniString2(Section:String; Key:String; Filename:String) : String; +var + Default1: String; + Default2: String; + Value1: String; + Value2: String; +begin + Default1 := 'on'; + Default2 := 'off'; + Value1 := GetIniString(Section, Key, Default1, Filename); + Value2 := GetIniString(Section, Key, Default2, Filename); + + if Value1 <> Value2 then + // no value in INI + Result := '' + else + // value in INI + Result := Value1 +end; +} + function GetDefaultIniFilename : String; begin Result := ExpandConstant('{app}') + '\TERATERM.INI'; @@ -337,27 +364,30 @@ procedure SetIniFile(iniFile: String); var - Language : String; - Locale : String; - CodePage : integer; - VTFont : String; - TEKFont : String; - FileDir : String; - TCPPort : integer; + Language : String; + Locale : String; + CodePage : integer; + VTFont : String; + TEKFont : String; + FileDir : String; + TCPPort : integer; + ViewlogEditor : String; begin - Language := GetIniString('Tera Term', 'Language', '', iniFile); - Locale := GetIniString('Tera Term', 'Locale', '', iniFile); - CodePage := GetIniInt('Tera Term', 'CodePage', 0, 0, 0, iniFile); - VTFont := GetIniString('Tera Term', 'VTFont', '', iniFile); - TEKFont := GetIniString('Tera Term', 'TEKFont', '', iniFile); - FileDir := GetIniString('Tera Term', 'FileDir', '', iniFile); + Language := GetIniString('Tera Term', 'Language', '', iniFile); + Locale := GetIniString('Tera Term', 'Locale', '', iniFile); + CodePage := GetIniInt('Tera Term', 'CodePage', 0, 0, 0, iniFile); + VTFont := GetIniString('Tera Term', 'VTFont', '', iniFile); + TEKFont := GetIniString('Tera Term', 'TEKFont', '', iniFile); + FileDir := GetIniString('Tera Term', 'FileDir', '', iniFile); + FileDir := GetIniString('Tera Term', 'FileDir', '', iniFile); + ViewlogEditor := GetIniString('Tera Term', 'ViewlogEditor', '', iniFile); case GetUILanguage and $3FF of $04: // Chinese begin if Length(Language) = 0 then - SetIniString('Tera Term', 'Language', 'Japanese', iniFile); + SetIniString('Tera Term', 'Language', 'UTF-8', iniFile); if Length(Locale) = 0 then SetIniString('Tera Term', 'Locale', 'chs', iniFile); if CodePage = 0 then @@ -412,7 +442,7 @@ if GetUILanguage = $409 then begin // en-US if Length(Language) = 0 then - SetIniString('Tera Term', 'Language', 'Japanese', iniFile); + SetIniString('Tera Term', 'Language', 'UTF-8', iniFile); if Length(Locale) = 0 then SetIniString('Tera Term', 'Locale', 'american', iniFile); if CodePage = 0 then @@ -441,8 +471,10 @@ SetIniString('Tera Term', 'UILanguageFile', 'lang\Japanese.lng', iniFile); 2: SetIniString('Tera Term', 'UILanguageFile', 'lang\German.lng', iniFile); + 3: + SetIniString('Tera Term', 'UILanguageFile', 'lang\French.lng', iniFile); else - SetIniString('Tera Term', 'UILanguageFile', 'lang\English.lng', iniFile); + SetIniString('Tera Term', 'UILanguageFile', 'lang\Default.lng', iniFile); end; if Length(FileDir) = 0 then begin @@ -457,6 +489,11 @@ SetIniInt('Tera Term', 'TCPPort', 23, iniFile); end; + if ViewlogEditor = 'notepad.exe' then begin + ViewlogEditor := ExpandConstant('{win}') + '\' + 'notepad.exe'; + SetIniString('Tera Term', 'ViewlogEditor', ViewlogEditor, iniFile); + end; + end; procedure InitializeWizard; @@ -467,6 +504,7 @@ UILangFilePageNone : String; UILangFilePageJapanese : String; UILangFilePageGerman : String; + UILangFilePageFrench : String; begin UILangFilePageCaption := CustomMessage('msg_language_caption'); UILangFilePageDescription := CustomMessage('msg_language_description'); @@ -474,6 +512,7 @@ UILangFilePageNone := CustomMessage('msg_language_none'); UILangFilePageJapanese := CustomMessage('msg_language_japanese'); UILangFilePageGerman := CustomMessage('msg_language_german'); + UILangFilePageFrench := CustomMessage('msg_language_french'); UILangFilePage := CreateInputOptionPage(wpSelectComponents, UILangFilePageCaption, UILangFilePageDescription, @@ -481,9 +520,11 @@ UILangFilePage.Add(UILangFilePageNone); UILangFilePage.Add(UILangFilePageJapanese); UILangFilePage.Add(UILangFilePageGerman); + UILangFilePage.Add(UILangFilePageFrench); case ActiveLanguage of 'ja': UILangFilePage.SelectedValueIndex := 1; + // 他の言語は最新版に追従していないので、日本語だけ特別扱い else UILangFilePage.SelectedValueIndex := 0; end; @@ -532,13 +573,18 @@ wpSelectComponents: begin - iniFile := GetIniString('Tera Term', 'UILanguageFile', '', GetDefaultIniFilename()); - if iniFile = 'lang\Japanese.lng' then - UILangFilePage.SelectedValueIndex := 1 - else if iniFile = 'lang\German.lng' then - UILangFilePage.SelectedValueIndex := 2 - else - UILangFilePage.SelectedValueIndex := 0; + if FileExists(GetDefaultIniFileName()) then + begin + iniFile := Lowercase(GetIniString('Tera Term', 'UILanguageFile', '', GetDefaultIniFilename())); + if iniFile = 'lang\japanese.lng' then + UILangFilePage.SelectedValueIndex := 1 + else if iniFile = 'lang\german.lng' then + UILangFilePage.SelectedValueIndex := 2 + else if iniFile = 'lang\french.lng' then + UILangFilePage.SelectedValueIndex := 3 + else + UILangFilePage.SelectedValueIndex := 0; + end; end; end; @@ -661,7 +707,7 @@ Name: {app}\copyfont.pif; Type: files Name: {app}\libeay.txt; Type: files -[_ISToolPreCompile] -Name: makechm.bat -; Name: build.bat; Parameters: rebuild -Name: build.bat +[InnoIDE_PreCompile] +;Name: makechm.bat +;Name: build.bat; Parameters: rebuild +;Name: build.bat