* New LangFile.nsh macro LANGFILE_INCLUDE_WITHDEFAULT to load language file with defaults being obtained from a default file. This replaces the LANGFILE_DEFAULT setting and makes it easier to use LangFile.nsh for multiple sets of languages file without having to care about the different LANGFILE_DEFAULT settings.
* Allow LangFile.nsh to be included multiple times. git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@5577 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
0d820475ae
commit
f655226380
3 changed files with 48 additions and 42 deletions
|
@ -37,21 +37,8 @@ Localization
|
||||||
|
|
||||||
LoadLanguageFile "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nlf"
|
LoadLanguageFile "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nlf"
|
||||||
|
|
||||||
;Set default language file for MUI and backup user setting
|
|
||||||
!ifdef LANGFILE_DEFAULT
|
|
||||||
!define MUI_LANGFILE_DEFAULT_TEMP "${LANGFILE_DEFAULT}"
|
|
||||||
!undef LANGFILE_DEFAULT
|
|
||||||
!endif
|
|
||||||
!define LANGFILE_DEFAULT "${NSISDIR}\Contrib\Language files\English.nsh"
|
|
||||||
|
|
||||||
;Include language file
|
;Include language file
|
||||||
!insertmacro LANGFILE_INCLUDE "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nsh"
|
!insertmacro LANGFILE_INCLUDE_WITHDEFAULT "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nsh" "${NSISDIR}\Contrib\Language files\English.nsh"
|
||||||
|
|
||||||
;Restore user setting for default language file
|
|
||||||
!undef LANGFILE_DEFAULT
|
|
||||||
!ifdef MUI_LANGFILE_DEFAULT_TEMP
|
|
||||||
!define LANGFILE_DEFAULT "${MUI_LANGFILE_DEFAULT}"
|
|
||||||
!endif
|
|
||||||
|
|
||||||
;Add language to list of languages for selection dialog
|
;Add language to list of languages for selection dialog
|
||||||
!ifndef MUI_LANGDLL_LANGUAGES
|
!ifndef MUI_LANGDLL_LANGUAGES
|
||||||
|
|
|
@ -2077,21 +2077,8 @@ Var MUI_TEMP2
|
||||||
|
|
||||||
LoadLanguageFile "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nlf"
|
LoadLanguageFile "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nlf"
|
||||||
|
|
||||||
;Set default language file for MUI and backup user setting
|
|
||||||
!ifdef LANGFILE_DEFAULT
|
|
||||||
!define MUI_LANGFILE_DEFAULT_TEMP "${LANGFILE_DEFAULT}"
|
|
||||||
!undef LANGFILE_DEFAULT
|
|
||||||
!endif
|
|
||||||
!define LANGFILE_DEFAULT "${NSISDIR}\Contrib\Language files\English.nsh"
|
|
||||||
|
|
||||||
;Include language file
|
;Include language file
|
||||||
!insertmacro LANGFILE_INCLUDE "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nsh"
|
!insertmacro LANGFILE_INCLUDE_WITHDEFAULT "${NSISDIR}\Contrib\Language files\${LANGUAGE}.nsh" "${NSISDIR}\Contrib\Language files\English.nsh"
|
||||||
|
|
||||||
;Restore user setting for default language file
|
|
||||||
!undef LANGFILE_DEFAULT
|
|
||||||
!ifdef MUI_LANGFILE_DEFAULT_TEMP
|
|
||||||
!define LANGFILE_DEFAULT "${MUI_LANGFILE_DEFAULT}"
|
|
||||||
!endif
|
|
||||||
|
|
||||||
;Add language to list of languages for selection dialog
|
;Add language to list of languages for selection dialog
|
||||||
!ifndef MUI_LANGDLL_LANGUAGES
|
!ifndef MUI_LANGDLL_LANGUAGES
|
||||||
|
|
|
@ -2,16 +2,32 @@
|
||||||
|
|
||||||
LangFile.nsh
|
LangFile.nsh
|
||||||
|
|
||||||
Header file to create langauge file that can be
|
Header file to create langauge files that can be
|
||||||
included with a single command.
|
included with a single command.
|
||||||
|
|
||||||
When LANGFILE_DEFAULT is set, missing strings will
|
|
||||||
automatically be loaded from a default file.
|
|
||||||
|
|
||||||
Copyright Š 2008 Joost Verburg
|
Copyright Š 2008 Joost Verburg
|
||||||
|
|
||||||
|
* Either LANGFILE_INCLUDE or LANGFILE_INCLUDE_WITHDEFAULT
|
||||||
|
can be called from the script to include a language
|
||||||
|
file.
|
||||||
|
|
||||||
|
- LANGFILE_INCLUDE takes the language file name as parameter.
|
||||||
|
- LANGFILE_INCLUDE_WITHDEFAULT takes as additional second
|
||||||
|
parameter the default language file to load missing strings
|
||||||
|
from.
|
||||||
|
|
||||||
|
* A language file start with:
|
||||||
|
!insertmacro LANGFILE_EXT "English"
|
||||||
|
using the same name as the standard NSIS language file.
|
||||||
|
|
||||||
|
* Language strings in the language file have the format:
|
||||||
|
${LangFileString} LANGSTRING_NAME "Text"
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
!ifndef LANGFILE_INCLUDED
|
||||||
|
!define LANGFILE_INCLUDED
|
||||||
|
|
||||||
!macro LANGFILE_INCLUDE FILENAME
|
!macro LANGFILE_INCLUDE FILENAME
|
||||||
|
|
||||||
;Called from script: include a langauge file
|
;Called from script: include a langauge file
|
||||||
|
@ -26,23 +42,37 @@ Copyright
|
||||||
!include "${FILENAME}"
|
!include "${FILENAME}"
|
||||||
!undef LANGFILE_SETNAMES
|
!undef LANGFILE_SETNAMES
|
||||||
|
|
||||||
;Include default language for missing strings
|
|
||||||
|
|
||||||
!ifdef LANGFILE_DEFAULT
|
|
||||||
!include "${LANGFILE_DEFAULT}"
|
|
||||||
!endif
|
|
||||||
|
|
||||||
;Create language strings
|
;Create language strings
|
||||||
|
|
||||||
!undef LangFileString
|
!undef LangFileString
|
||||||
!define LangFileString "!insertmacro LANGFILE_LANGSTRING"
|
!define LangFileString "!insertmacro LANGFILE_LANGSTRING"
|
||||||
|
!include "${FILENAME}"
|
||||||
|
|
||||||
!ifdef LANGFILE_DEFAULT
|
!macroend
|
||||||
!include "${LANGFILE_DEFAULT}"
|
|
||||||
!else
|
!macro LANGFILE_INCLUDE_WITHDEFAULT FILENAME FILENAME_DEFAULT
|
||||||
!include "${FILENAME}"
|
|
||||||
|
;Called from script: include a langauge file
|
||||||
|
;Obtains missing strings from a default file
|
||||||
|
|
||||||
|
!ifdef LangFileString
|
||||||
|
!undef LangFileString
|
||||||
!endif
|
!endif
|
||||||
|
|
||||||
|
!define LangFileString "!insertmacro LANGFILE_SETSTRING"
|
||||||
|
|
||||||
|
!define LANGFILE_SETNAMES
|
||||||
|
!include "${FILENAME}"
|
||||||
|
!undef LANGFILE_SETNAMES
|
||||||
|
|
||||||
|
;Include default language for missing strings
|
||||||
|
!include "${FILENAME_DEFAULT}"
|
||||||
|
|
||||||
|
;Create language strings
|
||||||
|
!undef LangFileString
|
||||||
|
!define LangFileString "!insertmacro LANGFILE_LANGSTRING"
|
||||||
|
!include "${FILENAME_DEFAULT}"
|
||||||
|
|
||||||
!macroend
|
!macroend
|
||||||
|
|
||||||
!macro LANGFILE IDNAME NAME
|
!macro LANGFILE IDNAME NAME
|
||||||
|
@ -99,3 +129,5 @@ Copyright
|
||||||
!undef "${NAME}"
|
!undef "${NAME}"
|
||||||
|
|
||||||
!macroend
|
!macroend
|
||||||
|
|
||||||
|
!endif
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue