mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-25 10:58:52 +00:00
Sync the 1.3.x and 1.4.x versions of the Windows installer.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@10063 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
9a2894288d
commit
f7cbb7fecd
@ -16,6 +16,7 @@
|
||||
|
||||
!insertmacro LYX_DEFFUNC `ReadDownloadValues`
|
||||
!insertmacro LYX_DEFFUNC `EnableBrowseControls`
|
||||
!insertmacro LYX_DEFFUNC `SearchRegistry`
|
||||
!insertmacro LYX_DEFFUNC `DownloadEnter`
|
||||
!insertmacro LYX_DEFFUNC `DownloadLeave`
|
||||
|
||||
@ -133,12 +134,65 @@
|
||||
!macroend
|
||||
|
||||
|
||||
!macro DownloadEnter_Private ExePath RegistryKey RegistrySubKey RemoveFromPath AddtoPath Required DownloadLabel HomeLabel PageHeader PageDescription
|
||||
!define skipBackupLbl "skipBackup_${__LINE__}"
|
||||
!macro SearchRegistry_Private ExePath RegistryKey RegistrySubKey RemoveFromPath AddtoPath
|
||||
|
||||
StrCpy ${ExePath} ""
|
||||
ReadRegStr ${ExePath} HKLM "${RegistryKey}" "${RegistrySubKey}"
|
||||
${if} ${ExePath} == ""
|
||||
ReadRegStr ${ExePath} HKLM "${RegistryKey}" "${RegistrySubKey}"
|
||||
${if} ${ExePath} != ""
|
||||
${StrRep} "${ExePath}" "${ExePath}" "${RemoveFromPath}" ""
|
||||
StrCpy ${ExePath} "${ExePath}${AddtoPath}"
|
||||
${endif}
|
||||
${endif}
|
||||
|
||||
!macroend
|
||||
|
||||
|
||||
!macro LYX_FUNCTION_SearchRegistry
|
||||
!insertmacro LYX_FUNC `SearchRegistry`
|
||||
|
||||
; The stack contains:
|
||||
; TOP
|
||||
; ExePath
|
||||
; RegistryKey
|
||||
; RegistrySubKey
|
||||
; RemoveFromPath
|
||||
; AddtoPath
|
||||
|
||||
; After this point:
|
||||
; $0 = ExePath
|
||||
; $1 = RegistryKey
|
||||
; $2 = RegistrySubKey
|
||||
; $3 = RemoveFromPath
|
||||
; $4 = AddtoPath
|
||||
|
||||
Exch $0
|
||||
Exch
|
||||
Exch $1
|
||||
Exch 2
|
||||
Exch $2
|
||||
Exch 3
|
||||
Exch $3
|
||||
Exch 4
|
||||
Exch $4
|
||||
|
||||
; Use a macro simply to make life understandable.
|
||||
!insertmacro SearchRegistry_Private "$0" "$1" "$2" "$3" "$4"
|
||||
|
||||
; Return output to user.
|
||||
Exch $4
|
||||
Exch 4
|
||||
Exch $3
|
||||
Exch 3
|
||||
Exch $2
|
||||
Exch 2
|
||||
Exch $1
|
||||
Exch
|
||||
Exch $0
|
||||
FunctionEnd
|
||||
!macroend
|
||||
|
||||
|
||||
!macro DownloadEnter_Private ExePath Required DownloadLabel HomeLabel PageHeader PageDescription
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 1" "Text" ""
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 2" "Text" "$(DownloadPageField2)"
|
||||
|
||||
@ -155,18 +209,17 @@
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 3" "Text" "${DownloadLabel}"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 4" "Text" "${HomeLabel}"
|
||||
|
||||
|
||||
${if} ${ExePath} == ""
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 3" "State" "1"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 4" "State" "0"
|
||||
!insertmacro MUI_INSTALLOPTIONS_READ $0 "ioDownload.ini" "Field 5" "Flags"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 5" "Flags" $0|DISABLED
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 5" "Flags" PATH_MUST_EXIST|DISABLED
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 5" "State" ""
|
||||
${else}
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 3" "State" "0"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 4" "State" "1"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 5" "Flags" PATH_MUST_EXIST
|
||||
|
||||
${StrRep} "${ExePath}" "${ExePath}" "${RemoveFromPath}" ""
|
||||
StrCpy ${ExePath} "${ExePath}${AddtoPath}"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioDownload.ini" "Field 5" "State" "${ExePath}"
|
||||
${endif}
|
||||
|
||||
@ -174,7 +227,6 @@
|
||||
|
||||
!insertmacro MUI_HEADER_TEXT "${PageHeader}" "${PageDescription}"
|
||||
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "ioDownload.ini"
|
||||
!undef skipBackupLbl
|
||||
!macroend
|
||||
|
||||
|
||||
@ -184,10 +236,6 @@
|
||||
; The stack contains:
|
||||
; TOP
|
||||
; ExePath
|
||||
; RegistryKey
|
||||
; RegistrySubKey
|
||||
; RemoveFromPath
|
||||
; AddtoPath
|
||||
; Required
|
||||
; DownloadLabel
|
||||
; HomeLabel
|
||||
@ -196,15 +244,11 @@
|
||||
|
||||
; After this point:
|
||||
; $0 = ExePath
|
||||
; $1 = RegistryKey
|
||||
; $2 = RegistrySubKey
|
||||
; $3 = RemoveFromPath
|
||||
; $4 = AddtoPath
|
||||
; $5 = Required
|
||||
; $6 = DownloadLabel
|
||||
; $7 = HomeLabel
|
||||
; $8 = PageHeader
|
||||
; $9 = PageDescription
|
||||
; $1 = Required
|
||||
; $2 = DownloadLabel
|
||||
; $3 = HomeLabel
|
||||
; $4 = PageHeader
|
||||
; $5 = PageDescription
|
||||
|
||||
Exch $0
|
||||
Exch
|
||||
@ -217,27 +261,11 @@
|
||||
Exch $4
|
||||
Exch 5
|
||||
Exch $5
|
||||
Exch 6
|
||||
Exch $6
|
||||
Exch 7
|
||||
Exch $7
|
||||
Exch 8
|
||||
Exch $8
|
||||
Exch 9
|
||||
Exch $9
|
||||
|
||||
; Use a macro simply to make life understandable.
|
||||
!insertmacro DownloadEnter_Private "$0" "$1" "$2" "$3" "$4" "$5" "$6" "$7" "$8" "$9"
|
||||
!insertmacro DownloadEnter_Private "$0" "$1" "$2" "$3" "$4" "$5"
|
||||
|
||||
; Return output to user.
|
||||
Exch $9
|
||||
Exch 9
|
||||
Exch $8
|
||||
Exch 8
|
||||
Exch $7
|
||||
Exch 7
|
||||
Exch $6
|
||||
Exch 6
|
||||
Exch $5
|
||||
Exch 5
|
||||
Exch $4
|
||||
@ -254,7 +282,6 @@
|
||||
|
||||
|
||||
!macro DownloadLeave_Private DoNotRequire Download FolderPath URL EnterFolder ExeName InvalidFolder
|
||||
!define skipBackupLbl "skipBackup_${__LINE__}"
|
||||
!insertmacro MUI_INSTALLOPTIONS_READ $0 "ioDownload.ini" "Settings" "State"
|
||||
|
||||
StrCmp $0 0 go_on ; Next button?
|
||||
@ -271,7 +298,8 @@ go_on:
|
||||
StrCpy ${FolderPath} ""
|
||||
ExecShell open "${URL}"
|
||||
${else}
|
||||
${StrTrim} ${FolderPath}
|
||||
${StrTrim} ${FolderPath} ${FolderPath}
|
||||
${StrRTrimChar} ${FolderPath} ${FolderPath} '\'
|
||||
|
||||
${if} ${FolderPath} == ""
|
||||
MessageBox MB_OK "${EnterFolder}"
|
||||
@ -280,8 +308,9 @@ go_on:
|
||||
|
||||
${if} ${FileExists} "${FolderPath}"
|
||||
${StrRep} ${FolderPath} ${FolderPath} "${ExeName}" ""
|
||||
${StrRTrimChar} ${FolderPath} ${FolderPath} '\'
|
||||
|
||||
${if} ${FileExists} "${FolderPath}${ExeName}"
|
||||
${if} ${FileExists} "${FolderPath}\${ExeName}"
|
||||
${else}
|
||||
MessageBox MB_OK "${InvalidFolder}"
|
||||
Abort
|
||||
@ -291,7 +320,6 @@ go_on:
|
||||
Abort
|
||||
${endif}
|
||||
${endif}
|
||||
!undef skipBackupLbl
|
||||
!macroend
|
||||
|
||||
|
||||
@ -370,17 +398,32 @@ go_on:
|
||||
!macroend
|
||||
|
||||
|
||||
!macro LYX_FUNCTION_DownloadEnter_Call ExePath RegistryKey RegistrySubKey RemoveFromPath AddtoPath Required DownloadLabel HomeLabel PageHeader PageDescription
|
||||
Push `${PageDescription}`
|
||||
Push `${PageHeader}`
|
||||
Push `${HomeLabel}`
|
||||
Push `${DownloadLabel}`
|
||||
Push `${Required}`
|
||||
!macro LYX_FUNCTION_SearchRegistry_Call ExePath RegistryKey RegistrySubKey RemoveFromPath AddtoPath
|
||||
Push `${AddtoPath}`
|
||||
Push `${RemoveFromPath}`
|
||||
Push `${RegistrySubKey}`
|
||||
Push `${RegistryKey}`
|
||||
Push `${ExePath}`
|
||||
|
||||
Call SearchRegistry
|
||||
; Empty the stack of all the stuff we've just added.
|
||||
; We're not interested in most of it, so just fill $0 repeatedly.
|
||||
|
||||
Pop `${ExePath}`
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
!macroend
|
||||
|
||||
|
||||
!macro LYX_FUNCTION_DownloadEnter_Call ExePath Required DownloadLabel HomeLabel PageHeader PageDescription
|
||||
Push `${PageDescription}`
|
||||
Push `${PageHeader}`
|
||||
Push `${HomeLabel}`
|
||||
Push `${DownloadLabel}`
|
||||
Push `${Required}`
|
||||
Push `${ExePath}`
|
||||
Call DownloadEnter
|
||||
; Empty the stack of all the stuff we've just added.
|
||||
; We're not interested in keeping it, so just fill $0 repeatedly.
|
||||
@ -390,10 +433,6 @@ go_on:
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
Pop `$0`
|
||||
!macroend
|
||||
|
||||
|
||||
|
@ -39,4 +39,3 @@ Left=5
|
||||
Right=-1
|
||||
Top=47
|
||||
Bottom=58
|
||||
Flags=PATH_MUST_EXIST
|
@ -1,16 +1,9 @@
|
||||
[Settings]
|
||||
NumFields=2
|
||||
NumFields=1
|
||||
|
||||
[Field 1]
|
||||
Type=Label
|
||||
Left=5
|
||||
Right=-1
|
||||
Top=0
|
||||
Bottom=20
|
||||
|
||||
[Field 2]
|
||||
Type=Label
|
||||
Left=5
|
||||
Right=-1
|
||||
Top=21
|
||||
Bottom=60
|
||||
|
@ -58,10 +58,15 @@ InstallDir "$PROGRAMFILES\${PRODUCT_NAME}"
|
||||
|
||||
; Declare used functions
|
||||
${StrLoc}
|
||||
${StrNSISToIO}
|
||||
${StrRep}
|
||||
${StrTrim}
|
||||
${StrLTrim}
|
||||
${StrRTrim}
|
||||
${StrRTrimChar}
|
||||
${ReadDownloadValues}
|
||||
${EnableBrowseControls}
|
||||
${SearchRegistry}
|
||||
${DownloadEnter}
|
||||
${DownloadLeave}
|
||||
|
||||
@ -165,6 +170,7 @@ Page custom SummariseDownloads SummariseDownloads_LeaveFunction
|
||||
!insertmacro MUI_LANGUAGE "Spanish"
|
||||
!insertmacro MUI_LANGUAGE "French"
|
||||
!insertmacro MUI_LANGUAGE "Dutch"
|
||||
!insertmacro MUI_LANGUAGE "Swedish"
|
||||
|
||||
!include "lyx_languages\english.nsh"
|
||||
!include "lyx_languages\danish.nsh"
|
||||
@ -172,6 +178,7 @@ Page custom SummariseDownloads SummariseDownloads_LeaveFunction
|
||||
!include "lyx_languages\french.nsh"
|
||||
!include "lyx_languages\german.nsh"
|
||||
!include "lyx_languages\spanish.nsh"
|
||||
!include "lyx_languages\swedish.nsh"
|
||||
|
||||
LicenseData "$(LyXLicenseData)"
|
||||
|
||||
@ -303,15 +310,19 @@ Function .onInit
|
||||
!undef READ_ONLY
|
||||
${endif}
|
||||
|
||||
Call SearchMinSYS
|
||||
Call SearchPython
|
||||
Call SearchMiKTeX
|
||||
Call SearchPerl
|
||||
Call SearchGhostscript
|
||||
Call SearchImageMagick
|
||||
|
||||
ClearErrors
|
||||
FunctionEnd
|
||||
|
||||
;--------------------------------
|
||||
|
||||
Function DownloadMinSYS
|
||||
StrCpy $MinSYSPath ""
|
||||
StrCpy $DownloadMinSYS "0"
|
||||
|
||||
Function SearchMinSYS
|
||||
; Search the registry for the MinSYS uninstaller.
|
||||
; If successful, put its location in $2.
|
||||
StrCpy $3 "Software\Microsoft\Windows\CurrentVersion\Uninstall"
|
||||
@ -334,9 +345,19 @@ Function DownloadMinSYS
|
||||
Goto loop
|
||||
done:
|
||||
|
||||
${SearchRegistry} \
|
||||
$MinSYSPath \
|
||||
"$2" \
|
||||
"Inno Setup: App Path" \
|
||||
"" \
|
||||
"\bin"
|
||||
FunctionEnd
|
||||
|
||||
Function DownloadMinSYS
|
||||
StrCpy $DownloadMinSYS "0"
|
||||
|
||||
${DownloadEnter} \
|
||||
$MinSYSPath "$2" "Inno Setup: App Path" \
|
||||
"" "\bin" \
|
||||
$MinSYSPath \
|
||||
0 \
|
||||
"$(MinSYSDownloadLabel)" \
|
||||
"$(MinSYSFolderLabel)" \
|
||||
@ -351,19 +372,26 @@ Function DownloadMinSYS_LeaveFunction
|
||||
$MinSYSPath \
|
||||
"http://sourceforge.net/project/showfiles.php?group_id=2435&package_id=82721&release_id=158803" \
|
||||
"$(EnterMinSYSFolder)" \
|
||||
"\sh.exe" \
|
||||
"sh.exe" \
|
||||
"$(InvalidMinSYSFolder)"
|
||||
FunctionEnd
|
||||
|
||||
;--------------------------------
|
||||
|
||||
Function SearchPython
|
||||
${SearchRegistry} \
|
||||
$PythonPath \
|
||||
"Software\Microsoft\Windows\CurrentVersion\App Paths\Python.exe" \
|
||||
"" \
|
||||
"\Python.exe" \
|
||||
""
|
||||
FunctionEnd
|
||||
|
||||
Function DownloadPython
|
||||
StrCpy $PythonPath ""
|
||||
StrCpy $DownloadPython "0"
|
||||
|
||||
${DownloadEnter} \
|
||||
$PythonPath "Software\Microsoft\Windows\CurrentVersion\App Paths\Python.exe" "" \
|
||||
"\Python.exe" "" \
|
||||
$PythonPath \
|
||||
0 \
|
||||
"$(PythonDownloadLabel)" \
|
||||
"$(PythonFolderLabel)" \
|
||||
@ -378,20 +406,27 @@ Function DownloadPython_LeaveFunction
|
||||
$PythonPath \
|
||||
"http://www.python.org/download/" \
|
||||
"$(EnterPythonFolder)" \
|
||||
"\Python.exe" \
|
||||
"Python.exe" \
|
||||
"$(InvalidPythonFolder)"
|
||||
FunctionEnd
|
||||
|
||||
;--------------------------------
|
||||
|
||||
Function SearchMiKTeX
|
||||
${SearchRegistry} \
|
||||
$MiKTeXPath \
|
||||
"Software\MiK\MiKTeX\CurrentVersion\MiKTeX" \
|
||||
"Install Root" \
|
||||
"" \
|
||||
"\miktex\bin"
|
||||
FunctionEnd
|
||||
|
||||
Function DownloadMiKTeX
|
||||
StrCpy $DoNotRequireMiKTeX "1"
|
||||
StrCpy $MiKTeXPath ""
|
||||
StrCpy $DownloadMiKTeX "0"
|
||||
|
||||
${DownloadEnter} \
|
||||
$MiKTeXPath "Software\MiK\MiKTeX\CurrentVersion\MiKTeX" "Install Root" \
|
||||
"" "\miktex\bin" \
|
||||
$MiKTeXPath \
|
||||
1 \
|
||||
"$(MiKTeXDownloadLabel)" \
|
||||
"$(MiKTeXFolderLabel)" \
|
||||
@ -406,20 +441,27 @@ Function DownloadMiKTeX_LeaveFunction
|
||||
$MiKTeXPath \
|
||||
"http://www.miktex.org/setup.html" \
|
||||
"$(EnterMiKTeXFolder)" \
|
||||
"\latex.exe" \
|
||||
"latex.exe" \
|
||||
"$(InvalidMiKTeXFolder)"
|
||||
FunctionEnd
|
||||
|
||||
;--------------------------------
|
||||
|
||||
Function SearchPerl
|
||||
${SearchRegistry} \
|
||||
$PerlPath \
|
||||
"Software\Perl" \
|
||||
BinDir \
|
||||
"\perl.exe" \
|
||||
""
|
||||
FunctionEnd
|
||||
|
||||
Function DownloadPerl
|
||||
StrCpy $DoNotRequirePerl "1"
|
||||
StrCpy $PerlPath ""
|
||||
StrCpy $DownloadPerl "1"
|
||||
|
||||
${DownloadEnter} \
|
||||
$PerlPath "Software\Perl" BinDir \
|
||||
"\perl.exe" "" \
|
||||
$PerlPath \
|
||||
1 \
|
||||
"$(PerlDownloadLabel)" \
|
||||
"$(PerlFolderLabel)" \
|
||||
@ -434,15 +476,31 @@ Function DownloadPerl_LeaveFunction
|
||||
$PerlPath \
|
||||
"http://www.activestate.com/Products/ActivePerl/" \
|
||||
"$(EnterPerlFolder)" \
|
||||
"\perl.exe" \
|
||||
"perl.exe" \
|
||||
"$(InvalidPerlFolder)"
|
||||
FunctionEnd
|
||||
|
||||
;--------------------------------
|
||||
|
||||
Function SearchGhostscript
|
||||
; Find which version of ghostscript, if any, is installed.
|
||||
EnumRegKey $1 HKLM "Software\AFPL Ghostscript" 0
|
||||
${if} $1 != ""
|
||||
StrCpy $0 "Software\AFPL Ghostscript\$1"
|
||||
${else}
|
||||
StrCpy $0 ""
|
||||
${endif}
|
||||
|
||||
${SearchRegistry} \
|
||||
$GhostscriptPath \
|
||||
"$0" \
|
||||
"GS_DLL" \
|
||||
"\gsdll32.dll" \
|
||||
""
|
||||
FunctionEnd
|
||||
|
||||
Function DownloadGhostscript
|
||||
StrCpy $DoNotRequireGhostscript "1"
|
||||
StrCpy $GhostscriptPath ""
|
||||
StrCpy $DownloadGhostscript "0"
|
||||
|
||||
; Find which version of ghostscript, if any, is installed.
|
||||
@ -454,8 +512,7 @@ Function DownloadGhostscript
|
||||
${endif}
|
||||
|
||||
${DownloadEnter} \
|
||||
$GhostscriptPath "$0" "GS_DLL" \
|
||||
"\gsdll32.dll" "" \
|
||||
$GhostscriptPath \
|
||||
1 \
|
||||
"$(GhostscriptDownloadLabel)" \
|
||||
"$(GhostscriptFolderLabel)" \
|
||||
@ -470,20 +527,27 @@ Function DownloadGhostscript_LeaveFunction
|
||||
$GhostscriptPath \
|
||||
"http://www.cs.wisc.edu/~ghost/doc/AFPL/index.htm" \
|
||||
"$(EnterGhostscriptFolder)" \
|
||||
"\gswin32c.exe" \
|
||||
"gswin32c.exe" \
|
||||
"$(InvalidGhostscriptFolder)"
|
||||
FunctionEnd
|
||||
|
||||
;--------------------------------
|
||||
|
||||
Function SearchImageMagick
|
||||
${SearchRegistry} \
|
||||
$ImageMagickPath \
|
||||
"Software\ImageMagick\Current" \
|
||||
"BinPath" \
|
||||
"" \
|
||||
""
|
||||
FunctionEnd
|
||||
|
||||
Function DownloadImageMagick
|
||||
StrCpy $DoNotRequireImageMagick "1"
|
||||
StrCpy $ImageMagickPath ""
|
||||
StrCpy $DownloadImageMagick "0"
|
||||
|
||||
${DownloadEnter} \
|
||||
$ImageMagickPath "Software\ImageMagick\Current" "BinPath" \
|
||||
"" "" \
|
||||
$ImageMagickPath \
|
||||
1 \
|
||||
"$(ImageMagickDownloadLabel)" \
|
||||
"$(ImageMagickFolderLabel)" \
|
||||
@ -498,7 +562,7 @@ Function DownloadImageMagick_LeaveFunction
|
||||
$ImageMagickPath \
|
||||
"http://www.imagemagick.org/script/binary-releases.php" \
|
||||
"$(EnterImageMagickFolder)" \
|
||||
"\convert.exe" \
|
||||
"convert.exe" \
|
||||
"$(InvalidImageMagickFolder)"
|
||||
FunctionEnd
|
||||
|
||||
@ -536,10 +600,10 @@ Function SummariseDownloads
|
||||
|
||||
${if} "$DoNotInstallLyX" == 1
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSummary.ini" "Field 1" "Text" "$(SummaryPleaseInstall)"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSummary.ini" "Field 2" "Text" ""
|
||||
${else}
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSummary.ini" "Field 1" "Text" "$(SummaryPathPrefix)"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSummary.ini" "Field 2" "Text" "$PathPrefix"
|
||||
${StrNSISToIO} $0 '$PathPrefix'
|
||||
StrCpy $0 "$(SummaryPathPrefix)\r\n\r\n$0"
|
||||
!insertmacro MUI_INSTALLOPTIONS_WRITE "ioSummary.ini" "Field 1" "Text" "$0"
|
||||
${endif}
|
||||
|
||||
!insertmacro MUI_HEADER_TEXT "$(SummaryTitle)" ""
|
||||
|
@ -12,10 +12,10 @@ LangString SecAllUsersTitle "${LYX_LANG}" "F
|
||||
LangString SecFileAssocTitle "${LYX_LANG}" "Dateizuordnungen"
|
||||
LangString SecDesktopTitle "${LYX_LANG}" "Desktopsymbol"
|
||||
|
||||
LangString SecCoreDescription "${LYX_LANG}" "Die ${PRODUCT_NAME} Datei."
|
||||
LangString SecCoreDescription "${LYX_LANG}" "Das Programm ${PRODUCT_NAME}."
|
||||
LangString SecAllUsersDescription "${LYX_LANG}" "Für alle Nutzer oder nur für den aktuellen Nutzer installieren. (Dazu werden Administratorrechte benötigt.)"
|
||||
LangString SecFileAssocDescription "${LYX_LANG}" "Vernüpfung zwischen ${PRODUCT_NAME} und der .lyx Dateiendung."
|
||||
LangString SecDesktopDescription "${LYX_LANG}" "Ein ${PRODUCT_NAME} Symbol auf dem Desktop."
|
||||
LangString SecDesktopDescription "${LYX_LANG}" "Verknüpfung zu ${PRODUCT_NAME} auf dem Desktop."
|
||||
|
||||
LangString ModifyingConfigureFailed "${LYX_LANG}" "Der 'path_prefix' (Liste mit Programmpfaden) konnte nicht im Konfigurationsskript gesetzt werden."
|
||||
LangString RunConfigureFailed "${LYX_LANG}" "Konnte das Konfigurationsskript nicht ausführen."
|
||||
@ -33,7 +33,7 @@ LangString MinSYSDownloadLabel "${LYX_LANG}" "&MinSYS herunterladen"
|
||||
LangString MinSYSFolderLabel "${LYX_LANG}" "&Ordner der die Datei sh.exe enthält"
|
||||
|
||||
LangString PythonHeader "${LYX_LANG}" "Python"
|
||||
LangString PythonDescription "${LYX_LANG}" "Ein Interpreter der Skriptspreche Python (www.python.org) ist notwendig damit ${PRODUCT_NAME} Skripte ausführen kann."
|
||||
LangString PythonDescription "${LYX_LANG}" "Ein Interpreter der Skriptsprache Python (www.python.org) ist notwendig damit ${PRODUCT_NAME} Skripte ausführen kann."
|
||||
LangString EnterPythonFolder "${LYX_LANG}" "Geben sie den Pfad zur Datei python.exe an."
|
||||
LangString InvalidPythonFolder "${LYX_LANG}" "Kann die Datei python.exe nicht finden."
|
||||
LangString PythonDownloadLabel "${LYX_LANG}" "&Python herunterladen"
|
||||
@ -61,7 +61,7 @@ LangString ImageMagickDownloadLabel "${LYX_LANG}" "&ImageMagic herunterladen"
|
||||
LangString ImageMagickFolderLabel "${LYX_LANG}" "&Ordner der die Datei convert.exe enthält"
|
||||
|
||||
LangString GhostscriptHeader "${LYX_LANG}" "Ghostscript"
|
||||
LangString GhostscriptDescription "${LYX_LANG}" "Ghostscript (http://www.cs.wisc.edu/~ghost/) wird für PDF- und PostScript-Grafikendateien benötigt."
|
||||
LangString GhostscriptDescription "${LYX_LANG}" "Ghostscript (http://www.cs.wisc.edu/~ghost/) wird für PDF- und PostScript-Grafikdateien benötigt."
|
||||
LangString EnterGhostscriptFolder "${LYX_LANG}" "Geben sie den Pfad zur Datei gswin32c.exe an."
|
||||
LangString InvalidGhostscriptFolder "${LYX_LANG}" "Kann die Datei gswin32c.exe nicht finden."
|
||||
LangString GhostscriptDownloadLabel "${LYX_LANG}" "&Ghostscript herunterladen"
|
||||
|
@ -0,0 +1,91 @@
|
||||
!ifndef _LYX_LANGUAGES_SWEDISH_NSH_
|
||||
!define _LYX_LANGUAGES_SWEDISH_NSH_
|
||||
|
||||
!ifdef LYX_LANG
|
||||
!undef LYX_LANG
|
||||
!endif
|
||||
!define LYX_LANG ${LANG_SWEDISH}
|
||||
|
||||
!define SwedishInputFolderPath "Var god mata in sökvägen till katalogen som innehåller"
|
||||
!define SwedishUnableToFind "Kan inte hitta"
|
||||
!define SwedishDownload "&Ladda ner"
|
||||
!define SwedishFolderContaining "&Katalog innehållande"
|
||||
|
||||
LicenseLangString LyXLicenseData ${LYX_LANG} "${PRODUCT_LICENSE_FILE}"
|
||||
|
||||
LangString SecAllUsersTitle "${LYX_LANG}" "Installera för alla användare?"
|
||||
LangString SecFileAssocTitle "${LYX_LANG}" "Filassociationer"
|
||||
LangString SecDesktopTitle "${LYX_LANG}" "Skrivbordsikon"
|
||||
|
||||
LangString SecCoreDescription "${LYX_LANG}" "${PRODUCT_NAME}-filer."
|
||||
LangString SecAllUsersDescription "${LYX_LANG}" "Installera för alla användare, eller enbart för den aktuella användare. (Kräver administratörsrättigheter.)"
|
||||
LangString SecFileAssocDescription "${LYX_LANG}" "Skapa en association mellan programmet och filtilläget .lyx."
|
||||
LangString SecDesktopDescription "${LYX_LANG}" "En ${PRODUCT_NAME}ikon på skrivbordet."
|
||||
|
||||
LangString ModifyingConfigureFailed "${LYX_LANG}" "Misslyckades med att sätta 'path_prefix' i konfigurationsskriptet"
|
||||
LangString RunConfigureFailed "${LYX_LANG}" "Misslyckades med att köra konfigurationsskriptet"
|
||||
|
||||
LangString FinishPageMessage "${LYX_LANG}" "Gratulerar! LyX har installerats framgångsrikt."
|
||||
LangString FinishPageRun "${LYX_LANG}" "Kör LyX"
|
||||
|
||||
LangString DownloadPageField2 "${LYX_LANG}" "Installera &ej"
|
||||
|
||||
LangString MinSYSHeader "${LYX_LANG}" "MinSYS"
|
||||
LangString MinSYSDescription "${LYX_LANG}" "MinSYS är en minimal UNIX-liknande skriptmiljö (www.mingw.org/msys.shtml) som ${PRODUCT_NAME} behöver för att använda ett flertal skript."
|
||||
LangString EnterMinSYSFolder "${LYX_LANG}" "${SwedishInputFolderPath} sh.exe"
|
||||
LangString InvalidMinSYSFolder "${LYX_LANG}" "${SwedishUnableToFind} sh.exe"
|
||||
LangString MinSYSDownloadLabel "${LYX_LANG}" "${SwedishDownload} MinSYS"
|
||||
LangString MinSYSFolderLabel "${LYX_LANG}" "${SwedishFolderContaining} sh.exe"
|
||||
|
||||
LangString PythonHeader "${LYX_LANG}" "Python"
|
||||
LangString PythonDescription "${LYX_LANG}" "Skriptspråket Python (www.python.org) bör installeras, annars kan inte ${PRODUCT_NAME} använda ett flertal skript."
|
||||
LangString EnterPythonFolder "${LYX_LANG}" "${SwedishInputFolderPath} Python.exe"
|
||||
LangString InvalidPythonFolder "${LYX_LANG}" "${SwedishUnableToFind} Python.exe"
|
||||
LangString PythonDownloadLabel "${LYX_LANG}" "${SwedishDownload} Python"
|
||||
LangString PythonFolderLabel "${LYX_LANG}" "${SwedishFolderContaining} Python.exe"
|
||||
|
||||
LangString MiKTeXHeader "${LYX_LANG}" "MiKTeX"
|
||||
LangString MiKTeXDescription "${LYX_LANG}" "MiKTeX (www.miktex.org) aktuell (nyligen uppdaterad) implementation av TeX för Windows."
|
||||
LangString EnterMiKTeXFolder "${LYX_LANG}" "${SwedishInputFolderPath} latex.exe"
|
||||
LangString InvalidMiKTeXFolder "${LYX_LANG}" "${SwedishUnableToFind} latex.exe"
|
||||
LangString MiKTeXDownloadLabel "${LYX_LANG}" "${SwedishDownload} MiKTeX"
|
||||
LangString MiKTeXFolderLabel "${LYX_LANG}" "${SwedishFolderContaining} latex.exe"
|
||||
|
||||
LangString PerlHeader "${LYX_LANG}" "Perl"
|
||||
LangString PerlDescription "${LYX_LANG}" "Om du räknar med att använda reLyX för att konvertera LaTeX-dokument till LyX-dokument, måste du installera Perl (www.perl.com)."
|
||||
LangString EnterPerlFolder "${LYX_LANG}" "${SwedishInputFolderPath} Perl.exe"
|
||||
LangString InvalidPerlFolder "${LYX_LANG}" "${SwedishUnableToFind} Perl.exe"
|
||||
LangString PerlDownloadLabel "${LYX_LANG}" "${SwedishDownload} Perl"
|
||||
LangString PerlFolderLabel "${LYX_LANG}" "${SwedishFolderContaining} perl.exe"
|
||||
|
||||
LangString ImageMagickHeader "${LYX_LANG}" "ImageMagick"
|
||||
LangString ImageMagickDescription "${LYX_LANG}" "Verktygen i paketet ImageMagick (www.imagemagick.org/script/index.php) kan användas av LyX för att konvertera mellan de flesta grafikformat."
|
||||
LangString EnterImageMagickFolder "${LYX_LANG}" "${SwedishInputFolderPath} convert.exe"
|
||||
LangString InvalidImageMagickFolder "${LYX_LANG}" "${SwedishUnableToFind} convert.exe"
|
||||
LangString ImageMagickDownloadLabel "${LYX_LANG}" "${SwedishDownload} ImageMagick"
|
||||
LangString ImageMagickFolderLabel "${LYX_LANG}" "${SwedishFolderContaining} convert.exe"
|
||||
|
||||
LangString GhostscriptHeader "${LYX_LANG}" "Ghostscript"
|
||||
LangString GhostscriptDescription "${LYX_LANG}" "Ghostscript (http://www.cs.wisc.edu/~ghost/) används till att konvertera bilder till/från PostScript."
|
||||
LangString EnterGhostscriptFolder "${LYX_LANG}" "${SwedishInputFolderPath} gswin32c.exe"
|
||||
LangString InvalidGhostscriptFolder "${LYX_LANG}" "${SwedishUnableToFind} gswin32c.exe"
|
||||
LangString GhostscriptDownloadLabel "${LYX_LANG}" "${SwedishDownload} Ghostscript"
|
||||
LangString GhostscriptFolderLabel "${LYX_LANG}" "${SwedishFolderContaining} gswin32c.exe"
|
||||
|
||||
LangString SummaryTitle "${LYX_LANG}" "Mjukvarusammanfattning"
|
||||
LangString SummaryPleaseInstall "${LYX_LANG}" "Var god installera först dina nedladdade filer och kör sedan LyXs installationsprogram igen."
|
||||
LangString SummaryPathPrefix "${LYX_LANG}" "En 'path_prefix'-sträng kommer att läggas till i filen 'lyxrc.defaults' innehållande följande:"
|
||||
|
||||
LangString UnNotInRegistryLabel "${LYX_LANG}" "${SwedishUnableToFind} $(^Name) i registret\r$\nGenvägar på skrivbordet och i startmeny kommer inte att tas bort."
|
||||
LangString UnNotAdminLabel "${LYX_LANG}" "Tyvärr! Du måste ha administratörsrättigheter för\r$\natt avinstallera $(^Name)."
|
||||
LangString UnReallyRemoveLabel "${LYX_LANG}" "Är du säker på att du verkligen vill fullständigt avinstallera $(^Name) och alla dess komponenter?"
|
||||
LangString UnRemoveSuccessLabel "${LYX_LANG}" "$(^Name) har framgångsrikt avinstallerats från din dator."
|
||||
|
||||
!undef SwedishInputFolderPath
|
||||
!undef SwedishUnableToFind
|
||||
!undef SwedishDownload
|
||||
!undef SwedishFolderContaining
|
||||
|
||||
!undef LYX_LANG
|
||||
|
||||
!endif ; _LYX_LANGUAGES_SWEDISH_NSH_
|
@ -290,7 +290,9 @@ void __declspec(dllexport) run_configure(HWND hwndParent, int string_size, char
|
||||
return;
|
||||
}
|
||||
|
||||
std::string const command = std::string("start /WAIT /B sh.exe ") + configure_file;
|
||||
// Even "start /WAIT /B sh.exe configure" returns
|
||||
// before the script is done, so just invoke "sh" directly.
|
||||
std::string const command = std::string("sh.exe ") + configure_file;
|
||||
if (system(command.c_str()) != 0) {
|
||||
pushstring("-1");
|
||||
return;
|
||||
|
@ -3,10 +3,13 @@
|
||||
|
||||
!include "lyxfunc.nsh"
|
||||
|
||||
!insertmacro LYX_DEFFUNC `StrLTrim`
|
||||
!insertmacro LYX_DEFFUNC `StrRTrim`
|
||||
!insertmacro LYX_DEFFUNC `StrTrim`
|
||||
!insertmacro LYX_DEFFUNC `StrRTrimChar`
|
||||
|
||||
!macro LYX_FUNCTION_StrTrim
|
||||
!insertmacro LYX_FUNC `StrTrim`
|
||||
!macro LYX_FUNCTION_StrLTrim
|
||||
!insertmacro LYX_FUNC `StrLTrim`
|
||||
|
||||
; After this point:
|
||||
; $0 = String (input)
|
||||
@ -22,12 +25,35 @@ Loop:
|
||||
StrCmp "$1" "$\r" TrimLeft
|
||||
StrCmp "$1" "$\n" TrimLeft
|
||||
StrCmp "$1" " " TrimLeft ; this is a tab.
|
||||
GoTo Loop2
|
||||
GoTo Done
|
||||
TrimLeft:
|
||||
StrCpy $0 "$0" "" 1
|
||||
Goto Loop
|
||||
|
||||
Loop2:
|
||||
Done:
|
||||
Pop $1
|
||||
Exch $0
|
||||
FunctionEnd
|
||||
!macroend
|
||||
|
||||
!macro LYX_FUNCTION_StrLTrim_Call Output Input
|
||||
Push `${Input}`
|
||||
Call StrLTrim
|
||||
Pop `${Output}`
|
||||
!macroend
|
||||
|
||||
!macro LYX_FUNCTION_StrRTrim
|
||||
!insertmacro LYX_FUNC `StrRTrim`
|
||||
|
||||
; After this point:
|
||||
; $0 = String (input)
|
||||
; $1 = Temp (temp)
|
||||
|
||||
; Get input from user
|
||||
Exch $0
|
||||
Push $1
|
||||
|
||||
Loop:
|
||||
StrCpy $1 "$0" 1 -1
|
||||
StrCmp "$1" " " TrimRight
|
||||
StrCmp "$1" "$\r" TrimRight
|
||||
@ -36,7 +62,7 @@ Loop2:
|
||||
GoTo Done
|
||||
TrimRight:
|
||||
StrCpy $0 "$0" -1
|
||||
Goto Loop2
|
||||
Goto Loop
|
||||
|
||||
Done:
|
||||
Pop $1
|
||||
@ -44,10 +70,58 @@ Done:
|
||||
FunctionEnd
|
||||
!macroend
|
||||
|
||||
!macro LYX_FUNCTION_StrTrim_Call String
|
||||
Push `${String}`
|
||||
!macro LYX_FUNCTION_StrRTrim_Call Output Input
|
||||
Push `${Input}`
|
||||
Call StrRTrim
|
||||
Pop `${Output}`
|
||||
!macroend
|
||||
|
||||
!macro LYX_FUNCTION_StrTrim
|
||||
!insertmacro LYX_FUNC `StrTrim`
|
||||
Call StrLTrim
|
||||
Call StrRTrim
|
||||
FunctionEnd
|
||||
!macroend
|
||||
|
||||
!macro LYX_FUNCTION_StrTrim_Call Output Input
|
||||
Push `${Input}`
|
||||
Call StrTrim
|
||||
Pop `${String}`
|
||||
Pop `${Output}`
|
||||
!macroend
|
||||
|
||||
!macro LYX_FUNCTION_StrRTrimChar
|
||||
!insertmacro LYX_FUNC `StrRTrimChar`
|
||||
|
||||
; After this point:
|
||||
; $0 = Input
|
||||
; $1 = Char
|
||||
; $2 = Temp
|
||||
|
||||
; Get input from user
|
||||
Exch $0
|
||||
Exch
|
||||
Exch $1
|
||||
Push $2
|
||||
|
||||
StrCpy $2 "$0" 1 -1
|
||||
|
||||
StrCmp "$2" "$1" TrimRight
|
||||
GoTo Done
|
||||
TrimRight:
|
||||
StrCpy $0 "$0" -1
|
||||
|
||||
Done:
|
||||
Pop $2
|
||||
Pop $1
|
||||
Exch $0
|
||||
FunctionEnd
|
||||
!macroend
|
||||
|
||||
!macro LYX_FUNCTION_StrRTrimChar_Call Output Input Char
|
||||
Push `${Char}`
|
||||
Push `${Input}`
|
||||
Call StrRTrimChar
|
||||
Pop `${Output}`
|
||||
!macroend
|
||||
|
||||
!endif ; _STRTRIM_NSH_
|
||||
|
Loading…
Reference in New Issue
Block a user