Browse Source

Merge branch 'mergehelp' into darkhelp

Martijn Laan 1 year ago
parent
commit
ba8e642ac5

+ 0 - 7
.github/workflows/build.yml

@@ -53,7 +53,6 @@ jobs:
           "set DELPHIXEROOT=$env:DELPHIXEROOT" | Out-File -NoNewline -Encoding ascii compilesettings.bat
           "set DELPHIXEROOT=$env:DELPHIXEROOT" | Out-File -NoNewline -Encoding ascii ISHelp\ISHelpGen\compilesettings.bat
           "set HHCEXE=%ProgramFiles(x86)%\HTML Help Workshop\hhc.exe" | Out-File -NoNewline -Encoding ascii ISHelp\compilesettings.bat
-          "set HHCEXE=%ProgramFiles(x86)%\HTML Help Workshop\hhc.exe" | Out-File -NoNewline -Encoding ascii ISPPHelp\compilesettings.bat
           .\build.bat
       - name: Clean up temporary files
         if: always()
@@ -63,7 +62,6 @@ jobs:
         run: |
           copy license.txt Files
           copy license.txt Output
-          copy license.txt ISPPHelp/Staging
           copy license.txt ISHelp/Staging
       - name: upload Files
         uses: actions/upload-artifact@v3
@@ -75,11 +73,6 @@ jobs:
         with:
           name: Output
           path: Output
-      - name: upload ISPPHelp
-        uses: actions/upload-artifact@v3
-        with:
-          name: ISPPHelp
-          path: ISPPHelp/Staging
       - name: upload ISHelp
         uses: actions/upload-artifact@v3
         with:

+ 1 - 1
Components/ScintEdit.pas

@@ -1831,7 +1831,7 @@ begin
   var MainSel := MainSelection;
   SetSelectionCaretPosition(MainSel, Pos);
   SetSelectionAnchorPosition(MainSel, Pos);
-  { Finally call Editor::SetLastXChosen and scroll caret into review, also just
+  { Finally call Editor::SetLastXChosen and scroll caret into view, also just
     like SCI_REPLACESEL }
   ChooseCaretX;
   ScrollCaretIntoView;

+ 9 - 23
ISHelp/ISHelpGen/ISHelpGen.dpr

@@ -13,7 +13,7 @@ uses
   UIsxclassesParser in 'UIsxclassesParser.pas';
 
 const
-  Version = '1.14';
+  Version = '1.15';
 
   XMLFileVersion = '1';
 
@@ -71,7 +71,6 @@ type
 
 var
   SourceDir, OutputDir, Postfix: String;
-  ISPP: Boolean;
   Keywords, DefinedTopics, TargetTopics, SetupDirectives: TStringList;
   TopicsGenerated: Integer = 0;
   CurrentTopicName: String;
@@ -672,11 +671,6 @@ var
       Node := Node.NextSibling;
     end;
     SL.Add('</ul>');
-    if not ISPP and (ParentNode = ContentsNode) then begin
-      { Don't put next 2 lines on 1 line or hhc will hang... }
-      SL.Add('<object type="text/sitemap">');
-      SL.Add('<param name="Merge" value="ispp' + Postfix + '.chm::\hh_generated_contents.hhc"></object>');
-    end;
   end;
 
 begin
@@ -965,11 +959,9 @@ procedure Go;
 var
   I: Integer;
 begin
-  if not ISPP then begin
-    TransformFile('isxfunc.xml', 'isxfunc.xsl', 'isxfunc_generated.xml');
-    GenerateIsxClassesFile;
-  end else
-    TransformFile('ispp.xml', 'ispp.xsl', 'ispp_generated.xml');
+  TransformFile('isxfunc.xml', 'isxfunc.xsl', 'isxfunc_generated.xml');
+  GenerateIsxClassesFile;
+  TransformFile('ispp.xml', 'ispp.xsl', 'ispp_generated.xml');
 
   Keywords := TStringList.Create;
   Keywords.Duplicates := dupAccept;
@@ -982,13 +974,11 @@ begin
   SetupDirectives.Duplicates := dupError;
   SetupDirectives.Sorted := True;
   try
-    if not ISPP then begin
-      DoDoc('isetup.xml');
-      DoDoc('isx.xml');
-      DoDoc('isxfunc_generated.xml');
-      DoDoc('isxclasses_generated.xml');
-    end else
-      DoDoc('ispp_generated.xml');
+    DoDoc('isetup.xml');
+    DoDoc('isx.xml');
+    DoDoc('isxfunc_generated.xml');
+    DoDoc('isxclasses_generated.xml');
+    DoDoc('ispp_generated.xml');
 
     CheckForNonexistentTargetTopics;
 
@@ -1022,10 +1012,6 @@ begin
     Postfix := ParamStr(2);
     OutputDir := SourceDir + 'Staging' + Postfix + '\';
 
-    ISPP := FileExists(SourceDir + 'ispp.xml');
-    if ISPP then
-      Writeln('Running in ISPP mode');
-
     OleCheck(CoInitialize(nil));  { for MSXML }
 
     StartTime := GetTickCount;

+ 0 - 12
ISHelp/Staging-dark/hh_isppredirect.xhtm

@@ -1,12 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!-- Note: This file is used by Compil32's TCompileForm.HISPPDocClick -->
-<!-- Note: This file has an "xhtm" extension so that the Search tab will ignore it -->
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta http-equiv="Refresh" content="0; url=ms-its:ispp-dark.chm::/topic_isppoverview.htm" />
-<title>ISPP Redirect Page</title>
-</head>
-<body>
-</body>
-</html>

+ 0 - 6
ISHelp/Staging-dark/hh_project.hhp

@@ -15,11 +15,5 @@ Title=Inno Setup Help
 $global_ismain=,"hh_generated_contents.hhc","hh_generated_index.hhk",,,,,,,0x22520,,0x300e,,,,,,,,0
 
 
-[FILES]
-hh_isppredirect.xhtm
-
-[MERGE FILES]
-ispp-dark.chm
-
 [INFOTYPES]
 

+ 0 - 12
ISHelp/Staging/hh_isppredirect.xhtm

@@ -1,12 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!-- Note: This file is used by Compil32's TCompileForm.HISPPDocClick -->
-<!-- Note: This file has an "xhtm" extension so that the Search tab will ignore it -->
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta http-equiv="Refresh" content="0; url=ms-its:ispp.chm::/topic_isppoverview.htm" />
-<title>ISPP Redirect Page</title>
-</head>
-<body>
-</body>
-</html>

+ 0 - 6
ISHelp/Staging/hh_project.hhp

@@ -15,11 +15,5 @@ Title=Inno Setup Help
 $global_ismain=,"hh_generated_contents.hhc","hh_generated_index.hhk",,,,,,,0x22520,,0x300e,,,,,,,,0
 
 
-[FILES]
-hh_isppredirect.xhtm
-
-[MERGE FILES]
-ispp.chm
-
 [INFOTYPES]
 

+ 1 - 1
ISHelp/compile.bat

@@ -28,7 +28,7 @@ rem -------------------------------------------------------------------------
 
 echo Synching dark files:
 echo.
-call synch-darkfiles.bat
+call synch-darkfiles.bat nopause
 if errorlevel 1 goto failed
 
 call :generate_help

+ 24 - 1
ISHelp/isetup.xml

@@ -56,6 +56,19 @@
     <contentstopic title="Using COM Automation objects" topic="scriptautomation" />
     <contentstopic title="Debugging" topic="scriptdebug" />
   </contentsheading>
+  <contentsheading title="Inno Setup Preprocessor">
+    <contentstopic title="Introduction" topic="isppoverview" />
+    <contentstopic title="Directives Reference" topic="directives" />
+    <contentstopic title="Support Functions Reference" topic="funcs" />
+    <contentstopic title="User Defined Functions" topic="macros" />
+    <contentstopic title="Expression Syntax" topic="expressions" />
+    <contentstopic title="Predefined Variables" topic="predefinedvars" />
+    <contentstopic title="Line Spanning" topic="linespan" />
+    <contentstopic title="Visibility of Identifiers" topic="visibility" />
+    <contentstopic title="Example Script" topic="example" />
+    <contentstopic title="ISPPBuiltins.iss" topic="builtinsiss" />
+    <contentstopic title="Extended Command Line Compiler" topic="isppcc" />
+  </contentsheading>
   <contentsheading title="Other Information">
     <contentstopic title="Support Inno Setup" topic="donate" />
     <contentstopic title="Unicode Inno Setup" topic="unicode" />
@@ -3377,12 +3390,22 @@ Filename: "{win}\MYPROG.INI"; Section: "InstallSettings"; Key: "InstallPath"; St
 
 <p>As shown in the example above, filenames that include spaces must be enclosed in quotes.</p>
 
-<p>Valid options are: "/O-" to disable output (overriding any <tt>Output</tt> setting in the script), "/O+" to enable output (overriding any <tt>Output</tt> setting in the script), "/O" to specify an output path (overriding any <tt>OutputDir</tt> setting in the script), "/F" to specify an output filename (overriding any <tt>OutputBaseFilename</tt> setting in the script), "/S" to specify a Sign Tool (any Sign Tools configured using the Compiler IDE will be specified automatically), "/Q[p]" for quiet compile (print only error messages, "p" will show progress info), and "/?" to show a help screen.</p>
+<p>Valid options are:</p>
 
 <indent>
+<table>
+<tr><td>/O(+|-)</td><td>Enable or disable output (overrides <tt>Output</tt>)</td></tr>
+<tr><td>/O&lt;path&gt;</td><td>Output files to specified path (overrides <tt>OutputDir</tt>)</td></tr>
+<tr><td>/F&lt;filename&gt;</td><td>Specifies an output filename (overrides <tt>OutputBaseFilename</tt>)</td></tr>
+<tr><td>/S&lt;name&gt;=&lt;command></td><td>Sets a SignTool with the specified name and command (any Sign Tools configured using the Compiler IDE will be specified automatically)</td></tr>
+<tr><td>/Q</td><td>Quiet compile (print error messages only)</td></tr>
+<tr><td>/Qp</td><td>Enable quiet compile while still displaying progress</td></tr>
+</table>
 <example>iscc /Qp /O"My Output" /F"MyProgram-1.0" /Sbyparam=$p "c:\isetup\samples\my script.iss"</example>
 </indent>
 
+<p>Also see <link topic="isppcc">Inno Setup Preprocessor: Command Line Compiler</link> for additional options.</p>
+
 <p>ISCC will return an exit code of 0 if the compile was successful, 1 if the command line parameters were invalid or an internal error occurred, or 2 if the compile failed.</p>
 </li>
 

+ 0 - 0
ISPPHelp/ispp.dtd → ISHelp/ispp.dtd


+ 13 - 13
ISPPHelp/ispp.xml → ISHelp/ispp.xml

@@ -37,7 +37,7 @@
 		<title>Introduction</title>
 		<description header="no">
 			<p>The main purpose of Inno Setup Preprocessor (ISPP) is to automate compile-time tasks and avoid repetition in your scripts. For example, you can declare a compile-time ISPP variable &dash; containing your application name, for instance &dash; and then use its value in several places of your script. If for some reason you need to change the name of your application, you'll have to change it only once in your script. Without ISPP, you would need to change all occurrences of your application name throughout the script.</p>
-			<p>Another example of using ISPP would be gathering version information from your application at compile-time by reading the version info of an EXE file, and using it in your <extlink href="ms-its:isetup.chm::/topic_setup_appvername.htm">AppVerName</extlink> [Setup] section directive or anywhere else. Without ISPP, you would have to modify your script each time the version of your application changes.</p>
+			<p>Another example of using ISPP would be gathering version information from your application at compile-time by reading the version info of an EXE file, and using it in your <link href="setup_appvername">AppVerName</link> [Setup] section directive or anywhere else. Without ISPP, you would have to modify your script each time the version of your application changes.</p>
 			<p>ISPP can even scan your source folder and generate script lines for the found files. Without ISPP, you would have to manually maintain the list of files.</p>
 			<p>Conditional in- and exclusion of portions of script is also possible by using ISPP: you can create one single script for different versions/levels of your applications (for example, trial versus fully functional). Without ISPP, you would need multiple scripts.</p>
 			<p>Finally, ISPP makes it possible to split long lines using a line spanning symbol.</p>
@@ -690,7 +690,7 @@ The first group of options (<tt>option</tt>) controls the general options, while
 		<topic id="funcs">
 			<title>Support Functions Reference</title>
 			<description header="no">
-				<p>There are a number of built-in support functions which you can use to perform compile-time actions and/or change your script. For example the following uses ISPP function <link href="GetVersionNumbersString">GetVersionNumbersString</link> to read version info from an EXE and uses the return value of the function to set the <extlink href="ms-its:isetup.chm::/topic_setup_appvername.htm">AppVerName</extlink> [Setup] section directive using ISPP directive &emit;:</p>
+				<p>There are a number of built-in support functions which you can use to perform compile-time actions and/or change your script. For example the following uses ISPP function <link href="GetVersionNumbersString">GetVersionNumbersString</link> to read version info from an EXE and uses the return value of the function to set the <link href="setup_appvername">AppVerName</link> [Setup] section directive using ISPP directive &emit;:</p>
         <pre>
           <line>#define MyAppVer GetVersionNumbersString(AddBackslash(SourcePath) + "MyProg.exe")</line>
           <line></line>
@@ -932,7 +932,7 @@ The first group of options (<tt>option</tt>) controls the general options, while
 					<pre><line><b>str</b> SetupSetting(<b>str</b>)</line></pre>
 				</section>
 				<description>
-					<p>Parses <extlink href="ms-its:isetup.chm::/topic_setupsection.htm">[Setup] section</extlink> in &curtrans; to find the key whose name is specified as function parameter. Function returns the value of that key if it's found, or an empty string otherwise.</p>
+					<p>Parses <link href="setupsection">[Setup] section</link> in &curtrans; to find the key whose name is specified as function parameter. Function returns the value of that key if it's found, or an empty string otherwise.</p>
 				</description>
 			</topic>
 			<topic id="SetSetupSetting">
@@ -2041,18 +2041,18 @@ The first group of options (<tt>option</tt>) controls the general options, while
 			</description>
 		</topic>
 		<topic id="isppcc">
-			<title>Command Line Compiler Execution</title>
+			<title>Command Line Compiler</title>
 			<description header="no">
-				<p>If Inno Setup Preprocessor is installed the console-mode compiler ISCC.exe automatically provides extra parameters to control Inno Setup Preprocessor:</p>
+				<p>The <link href="compilercmdline">console-mode compiler</link> (ISCC.exe) provides extra parameters to control Inno Setup Preprocessor:</p>
 				<table>
-					<tr><td><code>/D&lt;name&gt;[=&lt;value&gt;]</code></td><td>Emulate <code>#define public &lt;name&gt; &lt;value&gt;</code></td></tr>
-					<tr><td><code>/$&lt;letter&gt;(+|-)</code></td><td>Emulate <code>#pragma option -&lt;letter&gt;(+|-)</code></td></tr>
-					<tr><td><code>/P&lt;letter&gt;(+|-)</code></td><td>Emulate <code>#pragma parseroption -&lt;letter&gt;(+|-)</code></td></tr>
-					<tr><td><code>/I&lt;paths&gt;</code></td><td>Emulate <code>#pragma include &lt;paths&gt;</code></td></tr>
-					<tr><td><code>/J&lt;filename&gt;</code></td><td>Emulate <code>#include &lt;filename&gt;</code></td></tr>
-					<tr><td><code>/{#&lt;string&gt;</code></td><td>Emulate <code>#pragma inlinestart &lt;string&gt;</code></td></tr>
-					<tr><td><code>/}&lt;string&gt;</code></td><td>Emulate <code>#pragma inlineend &lt;string&gt;</code></td></tr>
-					<tr><td><code>/V&lt;number&gt;</code></td><td>Emulate <code>#pragma verboselevel &lt;number&gt;</code></td></tr>
+					<tr><td>/D&lt;name&gt;[=&lt;value&gt;]</td><td>Emulate <code>#define public &lt;name&gt; &lt;value&gt;</code></td></tr>
+					<tr><td>/$&lt;letter&gt;(+|-)</td><td>Emulate <code>#pragma option -&lt;letter&gt;(+|-)</code></td></tr>
+					<tr><td>/P&lt;letter&gt;(+|-)</td><td>Emulate <code>#pragma parseroption -&lt;letter&gt;(+|-)</code></td></tr>
+					<tr><td>/I&lt;paths&gt;</td><td>Emulate <code>#pragma include &lt;paths&gt;</code></td></tr>
+					<tr><td>/J&lt;filename&gt;</td><td>Emulate <code>#include &lt;filename&gt;</code></td></tr>
+					<tr><td>/{#&lt;string&gt;</td><td>Emulate <code>#pragma inlinestart &lt;string&gt;</code></td></tr>
+					<tr><td>/}&lt;string&gt;</td><td>Emulate <code>#pragma inlineend &lt;string&gt;</code></td></tr>
+					<tr><td>/V&lt;number&gt;</td><td>Emulate <code>#pragma verboselevel &lt;number&gt;</code></td></tr>
 				</table>
 				<p>Example: <tt>iscc /$c- /Pu+ "/DLicenseFile=Trial License.txt" /Ic:\inc;d:\inc /Jdefines.iss "c:\isetup\samples\my script.iss"</tt></p>
 			</description>

+ 1 - 23
ISPPHelp/ispp.xsl → ISHelp/ispp.xsl

@@ -10,7 +10,7 @@
   <xsl:comment>
     Inno Setup Preprocessor Reference
     Copyright (C) 1997-2024 Jordan Russell
-    Portions Copyright (C) 2000-2020 Martijn Laan
+    Portions Copyright (C) 2000-2024 Martijn Laan
     For conditions of distribution and use, see LICENSE.TXT.
     Portions Copyright (C) 2001-2004 Alex Yackimoff
 
@@ -19,28 +19,6 @@
 
   <ishelp version="1">
 
-  <xsl:comment>Table of contents</xsl:comment>
-
-  <contents>
-    <contentsheading title="Inno Setup Preprocessor">
-      <contentstopic title="Introduction" topic="isppoverview" />
-      <contentstopic title="Directives Reference" topic="directives" />
-      <contentstopic title="Support Functions Reference" topic="funcs" />
-      <contentstopic title="User Defined Functions" topic="macros" />
-      <contentstopic title="Expression Syntax" topic="expressions" />
-      <contentstopic title="Predefined Variables" topic="predefinedvars" />
-      <contentstopic title="Line Spanning" topic="linespan" />
-      <contentsheading title="Other Information">
-        <contentstopic title="Visibility of Identifiers" topic="visibility" />
-        <contentstopic title="Example Script" topic="example" />
-        <contentstopic title="ISPPBuiltins.iss" topic="builtinsiss" />
-        <contentstopic title="Extended Command Line Compiler" topic="isppcc" />
-      </contentsheading>
-    </contentsheading>
-  </contents>
-
-  <xsl:comment>Topics</xsl:comment>
-
   <xsl:apply-templates/>
 
   </ishelp>

+ 0 - 2
ISPPHelp/.gitignore

@@ -1,2 +0,0 @@
-isetup.dtd
-ispp_generated.xml

+ 0 - 17
ISPPHelp/Staging-dark/.gitignore

@@ -1,17 +0,0 @@
-#copied from Staging
-contents-template.htm
-index.htm
-index.php
-#copied from ISHelp
-contents.css
-contents.js
-stoplist.stp
-styles.css
-topic.js
-#generated
-contents.htm
-contentsindex.js
-hh_generated_contents.hhc
-hh_generated_index.hhk
-ispp-dark.chm
-topic_*.htm

+ 0 - 19
ISPPHelp/Staging-dark/hh_project.hhp

@@ -1,19 +0,0 @@
-[OPTIONS]
-Compatibility=1.1 or later
-Compiled file=ispp-dark.chm
-Contents file=hh_generated_contents.hhc
-Default Window=$global_ismain
-Default topic=topic_isppoverview.htm
-Display compile progress=Yes
-Full-text search=Yes
-Full text search stop list file=stoplist.stp
-Index file=hh_generated_index.hhk
-Language=0x409 English (United States)
-Title=Inno Setup Preprocessor Help
-
-[WINDOWS]
-$global_ismain=,"hh_generated_contents.hhc","hh_generated_index.hhk",,,,,,,0x22520,,0x300e,,,,,,,,0
-
-
-[INFOTYPES]
-

+ 0 - 4
ISPPHelp/Staging-dark/images/.gitignore

@@ -1,4 +0,0 @@
-contentsheadclosed.png
-contentsheadopen.png
-contentstopic.png
-extlink.png

+ 0 - 13
ISPPHelp/Staging/.gitignore

@@ -1,13 +0,0 @@
-#copied from ISHelp
-contents.css
-contents.js
-stoplist.stp
-styles.css
-topic.js
-#generated
-contents.htm
-contentsindex.js
-hh_generated_contents.hhc
-hh_generated_index.hhk
-ispp.chm
-topic_*.htm

+ 0 - 37
ISPPHelp/Staging/contents-template.htm

@@ -1,37 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta http-equiv="X-UA-Compatible" content="IE=8" />
-<title>Inno Setup Preprocessor Help Contents</title>
-<!--[if IE 6]><style type="text/css">html{overflow-y:scroll}</style><![endif]-->
-<link rel="stylesheet" type="text/css" href="contents.css" />
-<script type="text/javascript" src="contents.js"></script>
-</head>
-<body onload="init_contents(2);">
-
-<div id="tabbar">
-<table cellspacing="0">
-<tr>
-<td><div style="width: 4px"></div></td>
-<td id="tab-contents" class="selectedtab" onmousedown="select_tab('contents');"><a href="javascript:select_tab('contents');">Contents</a></td>
-<td id="tab-index" class="unselectedtab" onmousedown="select_tab('index');"><a href="javascript:select_tab('index');">Index</a></td>
-<td style="width: 100%">&nbsp;</td>
-</tr>
-</table>
-</div>
-
-<div style="padding: 4px 2px 2px 2px">
-
-<div id="tabbody-contents">
-%CONTENTSTABLES%
-</div>
-
-<div id="tabbody-index" style="display: none">
-<div style="margin-top: 1em; text-align: center; color: GrayText">Loading...</div>
-</div>
-
-</div>
-
-</body>
-</html>

+ 0 - 19
ISPPHelp/Staging/hh_project.hhp

@@ -1,19 +0,0 @@
-[OPTIONS]
-Compatibility=1.1 or later
-Compiled file=ispp.chm
-Contents file=hh_generated_contents.hhc
-Default Window=$global_ismain
-Default topic=topic_isppoverview.htm
-Display compile progress=Yes
-Full-text search=Yes
-Full text search stop list file=stoplist.stp
-Index file=hh_generated_index.hhk
-Language=0x409 English (United States)
-Title=Inno Setup Preprocessor Help
-
-[WINDOWS]
-$global_ismain=,"hh_generated_contents.hhc","hh_generated_index.hhk",,,,,,,0x22520,,0x300e,,,,,,,,0
-
-
-[INFOTYPES]
-

+ 0 - 4
ISPPHelp/Staging/images/.gitignore

@@ -1,4 +0,0 @@
-contentsheadclosed.png
-contentsheadopen.png
-contentstopic.png
-extlink.png

+ 0 - 48
ISPPHelp/Staging/index.htm

@@ -1,48 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
-  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta http-equiv="X-UA-Compatible" content="IE=8" />
-<title>Inno Setup Preprocessor Help</title>
-<script type="text/javascript"><!--
-
-var contentsFrameLoaded = false;
-var bodyFrameLoaded = false;
-
-// When this page is first loaded, trigger_sync_contents() isn't called
-// until both contentsframe.onload and bodyframe.onload have fired
-// (order does not matter). After that, trigger_sync_contents() is
-// called whenever further onload events come in on either frame (as
-// a result of refreshing, clicking a link, or clicking Back/Forward).
-
-function trigger_sync_contents()
-{
-	window.frames["contentsframe"].sync_contents();
-}
-
-function bodyframe_loaded()
-{
-	bodyFrameLoaded = true;
-	if (contentsFrameLoaded) trigger_sync_contents();
-}
-
-function contentsframe_loaded()
-{
-	contentsFrameLoaded = true;
-	if (bodyFrameLoaded) trigger_sync_contents();
-}
-
---></script>
-</head>
-<frameset cols="242, *">
-  <frame name="contentsframe" src="contents.htm" onload="contentsframe_loaded();" />
-  <frame name="bodyframe" src="topic_isppoverview.htm" onload="bodyframe_loaded();" />
-  <noframes>
-    <body>
-      <p>Your browser does not support frames.</p>
-      <p><a href="contents.htm">View the table of contents</a></p>
-    </body>
-  </noframes>
-</frameset>
-</html>

+ 0 - 17
ISPPHelp/Staging/index.php

@@ -1,17 +0,0 @@
-<?php
-
-$topic = @$_GET['topic'];
-if (!preg_match('/^[a-z0-9_\-]+\z/', $topic))
-  $topic = 'isppoverview';
-
-$anchor = '#' . @$_GET['anchor'];
-if (!preg_match('/^#[a-zA-Z0-9_\-.]+\z/', $anchor))
-  $anchor = '';
-
-$text = @file_get_contents('index.htm');
-if (!$text) die('Error reading file');
-
-$text = str_replace('topic_isppoverview.htm', htmlspecialchars("topic_$topic.htm$anchor"), $text);
-echo $text;
-
-?>

+ 0 - 155
ISPPHelp/Staging/styles.css

@@ -1,155 +0,0 @@
-/*
-  Inno Setup
-  Copyright (C) 1997-2010 Jordan Russell
-  Portions by Martijn Laan
-  For conditions of distribution and use, see LICENSE.TXT.
-*/
-
-BODY {
-	font: small arial, sans-serif;
-	margin: 0;
-}
-PRE, TT {
-	font: small "courier new", monospace;
-}
-P, H1, H2, H3, H4, H5, BLOCKQUOTE, PRE, FORM, OL, UL, LI, DL, DD, TABLE, .examplebox, DIV.margined {
-	/* only the end of paragraphs etc. has a margin */
-	margin-top: 0;
-	margin-bottom: 0.6em;
-}
-UL, DD {
-	/* specify both of these for firefox compat. */
-	margin-left: 0;
-	padding-left: 2em;
-}
-TABLE {
-	/* equivalent of cellspacing="0" */
-	border-collapse: collapse;
-}
-TD {
-	/* equivalent of cellpadding="0" */
-	padding: 0;
-	/* note: "baseline" is broken on IE6; it only aligns correctly when there's
-	   a single line of text, and that text is directly inside the <TD> tag
-	   (not inside a <DIV>). otherwise it behaves more like "top".
-           (firefox 1.5 and opera 9 don't have this problem) */
-	vertical-align: baseline;
-}
-A {
-	text-decoration: none;
-}
-A:hover {
-	text-decoration: underline;
-}
-A:link {
-	color: #264b99;
-}
-A:visited {
-	color: #5e85d7;
-}
-A:active {
-	color: #7799dd;
-}
-A.highlighted {
-	background-color: #ffff00;
-	color: black;
-}
-
-.small {
-	/* what we want is an 8pt font. 8pt/10pt = 80%, but on firefox that
-	   actually creates a font smaller than 8pt, so use 82% */
-	font-size: 82%;
-}
-.heading {
-	margin-top: 0.6em;
-	font-size: 120%;
-	font-weight: bold;
-}
-.notopmargin {
-	margin-top: 0;
-}
-.indent {
-	margin-left: 2em;
-}
-PRE.nomargin {
-	margin: 0;
-}
-LI.compact {
-	margin-bottom: 2px;
-}
-
-.topicheading {
-	background: ButtonFace;
-	color: WindowText;
-	padding: 4px 8px;
-	margin: 0;
-	font-size: 120%;
-	font-weight: bold;
-}
-.topicbody {
-	padding: 8px;
-}
-
-.examplebox {
-	background: #f8f8f8;
-	color: black;
-	padding: 4px;
-	border: 1px solid #e0e0e0;
-	/* on IE6, if the content of the box is wider than the page,
-	   the width of the box is increased. on firefox 1.5, by default
-	   the box width stays the same, and the content is drawn outside
-	   the box. that looks ugly. "overflow: auto" tells it to put a
-	   scroll bar on the box when the content is too wide. (IE6
-	   apparently ignores "overflow: auto", at least here.) */
-	overflow: auto;
-}
-.exampleheader {
-	font-size: 82%;
-	font-weight: bold;
-	margin-bottom: 0.6em;
-}
-
-
-DT.paramlist {
-	margin-bottom: 0.6em;
-}
-DD.paramlist {
-	/* give a little extra spacing between items */
-	margin-bottom: 1.2em;
-}
-
-DT.flaglist {
-	font-weight: bold;
-}
-
-TD.cellleft {
-	white-space: nowrap;
-}
-TD.cellright {
-	padding-left: 2em;
-}
-
-TABLE.setuphdr {
-	margin: 0;
-}
-TD.setuphdrl {
-	font-weight: bold;
-	white-space: nowrap;
-}
-TD.setuphdrr {
-	padding-left: 1em;
-}
-
-
-#redirectbox {
-	position: absolute;
-	background: InfoBackground;
-	color: InfoText;
-	padding: 16px 24px;
-	border: 1px solid ThreeDDarkShadow;
-	font-size: 120%;
-	font-weight: bold;
-	        box-shadow: #808080 0 0 12px;
-	   -moz-box-shadow: #808080 0 0 12px;	/* for Firefox 3.6 */
-	-webkit-box-shadow: #808080 0 0 12px;	/* for Chrome 6.0 */
-}

+ 0 - 72
ISPPHelp/compile.bat

@@ -1,72 +0,0 @@
-@echo off
-
-rem  Inno Setup Preprocessor
-rem  Copyright (C) 2001-2004 Alex Yackimoff
-rem  Portions by Martijn Laan
-rem
-rem  Batch file to compile the help file
-
-setlocal
-
-cd /d %~dp0
-
-if exist compilesettings.bat goto compilesettingsfound
-:compilesettingserror
-echo ISPPHelp\compilesettings.bat is missing or incomplete. It needs
-echo to be created with the following lines, adjusted for your system:
-echo.
-echo   set HHCEXE=%%ProgramFiles%%\HTML Help Workshop\hhc.exe   [Path to help compiler]
-goto failed2
-
-:compilesettingsfound
-set HHCEXE=
-call .\compilesettings.bat
-if "%HHCEXE%"=="" goto compilesettingserror
-
-rem -------------------------------------------------------------------------
-
-echo Synching IS files:
-echo.
-call synch-isfiles.bat nopause
-if errorlevel 1 goto failed
-
-echo Synching dark files:
-echo.
-call synch-darkfiles.bat
-if errorlevel 1 goto failed
-
-call :generate_help
-if errorlevel 1 goto failed
-call :generate_help -dark
-if errorlevel 1 goto failed
-
-echo Success!
-exit /b 0
-
-:generate_help
-echo Generating help files using ISHelpGen:
-echo.
-..\ISHelp\ISHelpGen\ISHelpGen.exe . %1
-if errorlevel 1 exit /b 1
-
-echo.
-echo Running HTML Help Compiler (hhc.exe):
-echo.
-del Staging%1\ispp%1.chm
-if exist Staging%1\ispp%1.chm exit /b 1
-"%HHCEXE%" Staging%1\hh_project.hhp
-if %errorlevel% neq 1 exit /b 1
-if not exist Staging%1\ispp%1.chm exit /b 1
-
-rem  HHC leaves behind a temporary file each time it runs...
-if exist "%TEMP%\~hh*.tmp" del /q "%TEMP%\~hh*.tmp"
-
-copy Staging%1\ispp%1.chm ..\Files\ISPP%1.chm
-if not exist ..\Files\ISPP%1.chm exit /b 1
-
-exit /b 0
-
-:failed
-echo *** FAILED ***
-:failed2
-exit /b 1

+ 0 - 15
ISPPHelp/synch-darkfiles.bat

@@ -1,15 +0,0 @@
-@echo off
-
-cd /d %~dp0
-
-echo - Synching files from Staging to Staging-dark
-
-copy Staging\contents-template.htm Staging-dark
-copy Staging\index.htm Staging-dark
-copy Staging\index.php Staging-dark
-
-echo - Synching files done
-
-if "%1"=="nopause" goto :eof
-
-pause

+ 0 - 31
ISPPHelp/synch-isfiles.bat

@@ -1,31 +0,0 @@
-@echo off
-
-cd /d %~dp0
-
-echo - Synching files from ISHelp to ISPPHelp
-
-copy ..\ISHelp\isetup.dtd
-call :synch_files
-call :synch_files -dark
-
-echo - Synching files done
-
-if "%1"=="nopause" goto :eof
-
-pause
-
-exit /b 0
-
-:synch_files
-
-copy ..\ISHelp\Staging%1\contents.css Staging%1
-copy ..\ISHelp\Staging%1\contents.js Staging%1
-copy ..\ISHelp\Staging%1\stoplist.stp Staging%1
-copy ..\ISHelp\Staging%1\styles.css Staging%1
-copy ..\ISHelp\Staging%1\topic.js Staging%1
-copy ..\ISHelp\Staging%1\images\contentsheadclosed.png Staging%1\images
-copy ..\ISHelp\Staging%1\images\contentsheadopen.png Staging%1\images
-copy ..\ISHelp\Staging%1\images\contentstopic.png Staging%1\images
-copy ..\ISHelp\Staging%1\images\extlink.png Staging%1\images
-
-exit /b 0

+ 0 - 2
Projects/Bin/synch-isfiles.bat

@@ -13,8 +13,6 @@ copy ..\..\Files\islzma.dll
 copy ..\..\Files\islzma*.exe
 copy ..\..\Files\ISetup.chm
 copy ..\..\Files\ISetup-dark.chm
-copy ..\..\Files\ISPP.chm
-copy ..\..\Files\ISPP-dark.chm
 
 echo - Synching files done
 

+ 1 - 1
Projects/Src/Compil32/CompForm.dfm

@@ -828,7 +828,7 @@ object CompileForm: TCompileForm
     end
     object HMenu: TMenuItem
       Caption = '&Help'
-      OnClick = HMenuClick
+      OnClick = SimpleMenuClick
       object HDonate: TMenuItem
         Caption = 'D&onate - Thank you!'
         OnClick = HDonateClick

+ 1 - 10
Projects/Src/Compil32/CompForm.pas

@@ -294,7 +294,6 @@ type
     procedure RParametersClick(Sender: TObject);
     procedure POutputListCopyClick(Sender: TObject);
     procedure BStopCompileClick(Sender: TObject);
-    procedure HMenuClick(Sender: TObject);
     procedure EGotoClick(Sender: TObject);
     procedure RTerminateClick(Sender: TObject);
     procedure BMenuClick(Sender: TObject);
@@ -3220,14 +3219,6 @@ begin
     PChar(Format('/select,"%s"', [FCompiledExe])), PChar(Dir), SW_SHOWNORMAL);
 end;
 
-procedure TCompileForm.HMenuClick(Sender: TObject);
-begin
-  HISPPDoc.Visible := NewFileExists(GetISPPHelpFile);
-  HISPPSep.Visible := HISPPDoc.Visible;
-
-  ApplyMenuBitmaps(Sender as TMenuItem);
-end;
-
 procedure TCompileForm.HShortcutsDocClick(Sender: TObject);
 begin
   if Assigned(HtmlHelp) then
@@ -3272,7 +3263,7 @@ end;
 procedure TCompileForm.HISPPDocClick(Sender: TObject);
 begin
   if Assigned(HtmlHelp) then
-    HtmlHelp(GetDesktopWindow, PChar(GetISHelpFile + '::/hh_isppredirect.xhtm'), HH_DISPLAY_TOPIC, 0);
+    HtmlHelp(GetDesktopWindow, PChar(GetISHelpFile), HH_DISPLAY_TOPIC, Cardinal(PChar('topic_isppoverview.htm')));
 end;
 
 procedure TCompileForm.HDonateClick(Sender: TObject);

+ 0 - 6
Projects/Src/Compil32/CompFunc.pas

@@ -67,7 +67,6 @@ procedure AddLines(const ListBox: TListBox; const S: String; const AObject: TObj
 procedure SetLowPriority(ALowPriority: Boolean; var SavePriorityClass: DWORD);
 procedure SetHelpFilesDark(const Dark: Boolean);
 function GetISHelpFile: String;
-function GetISPPHelpFile: String;
 function FindOptionsToSearchOptions(const FindOptions: TFindOptions): TScintFindOptions;
 procedure StartAddRemovePrograms;
 function GetSourcePath(const AFilename: String): String;
@@ -718,11 +717,6 @@ begin
   Result := Format('%sisetup%s.chm', [PathExtractPath(NewParamStr(0)), IfThen(HelpFilesDark, '-dark', '')]);
 end;
 
-function GetISPPHelpFile: String;
-begin
-  Result := Format('%sispp%s.chm', [PathExtractPath(NewParamStr(0)), IfThen(HelpFilesDark, '-dark', '')]);
-end;
-
 function FindOptionsToSearchOptions(const FindOptions: TFindOptions): TScintFindOptions;
 begin
   Result := [];

+ 0 - 8
README.md

@@ -79,11 +79,6 @@ Getting Started
    instructions. The former batch file cannot be used with the
    Community Edition, open Projects\Projects.groupproj instead.
 
-   To just compile the Inno Setup Preprocessor help file and its web version run
-   **ISHelp\ISHelpGen\compile.bat** and **ISPPHelp\compile.bat** and
-   follow the instructions. The former batch file cannot be used with the
-   Community Edition, open Projects\Projects.groupproj instead.
-
 
 Component Installation
 ----------------------
@@ -159,9 +154,6 @@ How do the projects link together?
   all units used by the Compiler IDE only. Check the .dpr files of the
   projects for unit usage details.
 
-- The ISPP help file uses various copies of other Inno Setup files. To synch
-  these run **ISPPHelp\synch-isfiles.bat**.
-
 
 Source code tips
 ----------------

+ 0 - 10
build-ce.bat

@@ -11,7 +11,6 @@ rem  Calls setup-sign.bat if it exists, else creates setup.exe without signing
 rem
 rem  This batch files does the following things:
 rem  -Ask the user to compile Inno Setup and ISHelpGen after clearing output first
-rem  -Compile ISPP*.chm
 rem  -Compile ISetup*.chm
 rem  -Create Inno Setup installer
 rem
@@ -53,15 +52,6 @@ call :waitforfile ishelp\ishelpgen\ishelpgen.exe
 echo Found all, waiting 2 seconds more...
 timeout /t 2 /nobreak >nul
 
-cd ispphelp
-if errorlevel 1 goto failed
-call .\compile.bat
-if errorlevel 1 goto failed
-cd ..
-if errorlevel 1 goto failed
-echo Compiling ISPP*.chm done
-pause
-
 cd ishelp
 if errorlevel 1 goto failed
 call .\compile.bat

+ 0 - 10
build.bat

@@ -11,7 +11,6 @@ rem  Calls setup-sign.bat if it exists, else creates setup.exe without signing
 rem
 rem  This batch files does the following things:
 rem  -Compile ISHelpGen
-rem  -Compile ISPP*.chm
 rem  -Compile ISetup*.chm
 rem  -Compile Inno Setup
 rem  -Create Inno Setup installer
@@ -39,15 +38,6 @@ if errorlevel 1 goto failed
 echo Compiling ISHelpGen done
 pause
 
-cd ispphelp
-if errorlevel 1 goto failed
-call .\compile.bat
-if errorlevel 1 goto failed
-cd ..
-if errorlevel 1 goto failed
-echo Compiling ISPP*.chm done
-pause
-
 cd ishelp
 if errorlevel 1 goto failed
 call .\compile.bat

+ 1 - 2
setup.iss

@@ -89,6 +89,7 @@ Name: fileassoc; Description: "{cm:AssocFileExtension,Inno Setup,.iss}"; Check:
 ; Remove old ISPP files
 Type: files; Name: "{app}\ISCmplr.dls"
 Type: files; Name: "{app}\Builtins.iss"
+Type: files; Name: "{app}\ISPP.chm"
 ; Remove desktop icon if needed
 Type: files; Name: {autodesktop}\Inno Setup Compiler.lnk; Tasks: not desktopicon; Check: not PortableCheck
 ; Remove old FAQ file
@@ -185,8 +186,6 @@ Source: "Examples\MyDll\C#\MyDll.sln"; DestDir: "{app}\Examples\MyDll\C#"; Flags
 Source: "Examples\MyDll\C#\packages.config"; DestDir: "{app}\Examples\MyDll\C#"; Flags: ignoreversion touch
 Source: "Examples\MyDll\C#\Properties\AssemblyInfo.cs"; DestDir: "{app}\Examples\MyDll\C#\Properties"; Flags: ignoreversion touch
 Source: "Examples\MyDll\Delphi\MyDll.dpr"; DestDir: "{app}\Examples\MyDll\Delphi"; Flags: ignoreversion touch
-Source: "files\ISPP.chm"; DestDir: "{app}"; Flags: ignoreversion touch
-Source: "files\ISPP-dark.chm"; DestDir: "{app}"; Flags: ignoreversion touch
 #ifndef isppdll
   #define isppdll "ispp.dll"
 #endif

+ 3 - 2
whatsnew.htm

@@ -69,7 +69,6 @@ For conditions of distribution and use, see <a href="files/is/license.txt">LICEN
 </ul>
 <p>Other changes:</p>
 <ul>
-  <li>Added dark mode versions of the help files.</li>
   <li>Shortcuts Alt+Left and Alt+Right now always navigate back and forward even if Visual Studio-style menu shortcuts have been activated.<br />Because of this Alt+Right can no longer be used to initiate auto complete, instead the existing Ctrl+Space or Ctrl+I alternatives must be used.</li>
   <li>Moved the list of recently opened files into a new <i>Open Recent</i> submenu of the <i>Files</i> menu.</li>
   <li>Added shortcuts to select a tab (Ctrl+1 through Ctrl+9).</li>
@@ -79,7 +78,9 @@ For conditions of distribution and use, see <a href="files/is/license.txt">LICEN
   <li>Pascal Scripting change: Added new <tt>ExecAndCaptureOutput</tt> support function to execute a program or batch file and capture its <i>stdout</i> and <i>stderr</i> output.</li>
   <li>Fixed an issue when the <i>Auto indent mode</i> and <i>Allow cursor to move beyond end of lines</i> options are both enabled.</li>  
   <li>Pascal Scripting change: documented support functions <tt>VarArrayGet</tt> and <tt>VarArraySet</tt> which were already available but not documented.</li>
-  <li>Various tweaks and documentation improvements.</li>
+  <li>The Inno Setup Preprocessor documentation has been merged into the main documentation instead of being separate.</li>
+  <li>Added a dark mode version of the documentation, automatically used by the Compiler IDE if a dark theme is chosen.</li>
+  <li>Various tweaks and other documentation improvements.</li>
 </ul>
 
 <p>Contributions via <a href="https://github.com/jrsoftware/issrc" target="_blank">GitHub</a>: Thanks to Sergii Leonov, John Stevenson, and jogo- for their contributions!</p>