<?xml version="1.0" encoding="utf-8"?>
<feed xml:lang="en" xmlns="http://www.w3.org/2005/Atom"><title>Recent changes to wiki</title><link href="https://sourceforge.net/p/dktools/wiki/" rel="alternate"/><link href="https://sourceforge.net/p/dktools/wiki/feed.atom" rel="self"/><id>https://sourceforge.net/p/dktools/wiki/</id><updated>2026-03-28T21:42:14.185000Z</updated><subtitle>Recent changes to wiki</subtitle><entry><title>Prepare Virtual Machine modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/Prepare%2520Virtual%2520Machine/" rel="alternate"/><published>2026-03-28T21:42:14.185000Z</published><updated>2026-03-28T21:42:14.185000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.net3bf49e035416580f571db0fd8e3fa81b27408980</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v28
+++ v29
@@ -132,7 +132,7 @@
 ~~~

 **Download sources**
-Download the dklivesys-trixie-1.0.23.tar.gz archive into the Downloads directory.
+Download the dklivesys-trixie-1.0.24.tar.gz archive into the Downloads directory.
 The downloads are available from the DK tools project page at SourceForge. In the “Files” area change into the “dklivesys” directory. From the subdirectory indicating the most recent version retrieve the dklivesys-_debianversion_-_version_.tar.gz archive.

 **Unpack sources**
@@ -140,27 +140,27 @@

 ~~~shell
 cd ~/Downloads
-tar xzf dklivesys-trixie-1.0.23.tar.gz
-~~~
-
-Replace “1.0.23” by the version number of your downloaded file if necessary.
+tar xzf dklivesys-trixie-1.0.24.tar.gz
+~~~
+
+Replace “1.0.24” by the version number of your downloaded file if necessary.

 You can now either install the software into a subdirectory below /usr/local or build packages to install.

-Installation to /usr/local/dklivesys-1.0.23 allows you to modify the dklivesys scripts if necessary. So this installation is recommended for those planning to contribute to the project. Probably some extra action is required to have the man pages available.
+Installation to /usr/local/dklivesys-1.0.24 allows you to modify the dklivesys scripts if necessary. So this installation is recommended for those planning to contribute to the project. Probably some extra action is required to have the man pages available.

 Installation via package management is recommended for those “just using” dklivesys but not planning to modify the scripts.

-###    Choice 1: Installation to /usr/local/dklivesys-1.0.23
+###    Choice 1: Installation to /usr/local/dklivesys-1.0.24

 **Installation**
 As **root** in the **virtual** machine run

 ~~~shell
-mkdir -p /usr/local/dklivesys-1.0.23
-cd ~user/Downloads/dklivesys-1.0.23
+mkdir -p /usr/local/dklivesys-1.0.24
+cd ~user/Downloads/dklivesys-1.0.24
 sbin/dklivesys-pkg-common
-./configure --prefix=/usr/local/dklivesys-1.0.23
+./configure --prefix=/usr/local/dklivesys-1.0.24
 make
 make install
 ~~~
@@ -170,7 +170,7 @@

 ~~~shell
 :
-DKLIVESYSVERS="1.0.23"
+DKLIVESYSVERS="1.0.24"
 if [ -d /usr/local/dklivesys-${DKLIVESYSVERS}/sbin -a "X"`id -u` = "X0" ]
 then
   export PATH="/usr/local/dklivesys-${DKLIVESYSVERS}/sbin:${PATH}"
@@ -184,7 +184,7 @@
 ~~~

 Finally log off and back on in the **virtual machine** as root and check the PATH.
-For root, PATH should contain the /usr/local/dlivesys-1.0.23/sbin directory now.
+For root, PATH should contain the /usr/local/dlivesys-1.0.24/sbin directory now.

 ###    Choice 2: Installation as package

@@ -193,8 +193,8 @@

 ~~~shell
 cd ~/Downloads
-cp dklivesys-trixie-1.0.23.tar.gz dklivesys-1.0.23.tar.gz
-cd ~/Downloads/dklivesys-1.0.23
+cp dklivesys-trixie-1.0.24.tar.gz dklivesys-1.0.24.tar.gz
+cd ~/Downloads/dklivesys-1.0.24
 scripts/debian-build-deb
 ~~~

@@ -203,7 +203,7 @@

 ~~~shell
 cd ~user/Downloads
-dpkg -i dklivesys_1.0.23-1_all.deb
+dpkg -i dklivesys_1.0.24-1_all.deb
 ~~~

 ---
&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>Installation via RPM packages modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/Installation%2520via%2520RPM%2520packages/" rel="alternate"/><published>2026-03-28T21:41:30.163000Z</published><updated>2026-03-28T21:41:30.163000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.net2a38b30df6be9496462938068d6310b38d35d905</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v13
+++ v14
@@ -24,17 +24,17 @@
 [ -d Downloads ] || ( mkdir Downloads ; chmod 755 Downloads )
 ~~~

-Place the dktools-&lt;i&gt;4.39.1&lt;/i&gt;.tar.gz file in the “Downloads” directory.
+Place the dktools-&lt;i&gt;4.40.0&lt;/i&gt;.tar.gz file in the “Downloads” directory.

 ####   Unpack archive

 ~~~shell
 cd
 cd Downloads
-tar xzf dktools-4.39.1.tar.gz
-~~~
-
-We now have a new “dktools-&lt;i&gt;4.39.1&lt;/i&gt;” directory.
+tar xzf dktools-4.40.0.tar.gz
+~~~
+
+We now have a new “dktools-&lt;i&gt;4.40.0&lt;/i&gt;” directory.

 ####   Enable EPEL repository

@@ -76,7 +76,7 @@
 As root install the required packages including developer and packager tools and build dependencies:

 ~~~shell
-cd ~user/Downloads/dktools-4.39.1
+cd ~user/Downloads/dktools-4.40.0
 sudo scripts/oracle-linux/rpm-prepare
 ~~~

@@ -99,14 +99,14 @@

 ~~~shell
 cd ~user/rpmbuild/RPMS/x86_64
-~user/Downloads/dktools-4.39.1/config/rpmbuild/el8-install-dktools
+~user/Downloads/dktools-4.40.0/config/rpmbuild/el8-install-dktools
 ~~~

 To install the command line interface programs only:

 ~~~shell
 cd ~user/rpmbuild/RPMS/x86_64
-~user/Downloads/dktools-4.39.1/config/rpmbuild/el8-install-cli
+~user/Downloads/dktools-4.40.0/config/rpmbuild/el8-install-cli
 ~~~

 ####   Uninstall DK tools completely
@@ -264,24 +264,24 @@
 [ -d Downloads ] || ( mkdir Downloads ; chmod 755 Downloads )
 ~~~

-Place the dktools-&lt;i&gt;4.39.1&lt;/i&gt;.tar.gz file in the “Downloads” directory.
+Place the dktools-&lt;i&gt;4.40.0&lt;/i&gt;.tar.gz file in the “Downloads” directory.

 ####   Unpack archive

 ~~~shell
 cd
 cd Downloads
-tar xzf dktools-4.39.1.tar.gz
-~~~
-
-We now have a new “dktools-&lt;i&gt;4.39.1&lt;/i&gt;” directory.
+tar xzf dktools-4.40.0.tar.gz
+~~~
+
+We now have a new “dktools-&lt;i&gt;4.40.0&lt;/i&gt;” directory.

 ####   Install required packages

 As **root** install the required packages including developer and packager tools and build dependencies:

 ~~~shell
-cd ~user/Downloads/dktools-4.39.1
+cd ~user/Downloads/dktools-4.40.0
 scripts/fedora/rpm-prepare
 ~~~

@@ -304,14 +304,14 @@

 ~~~shell
 cd ~user/rpmbuild/RPMS/x86_64
-~user/Downloads/dktools-4.39.1/config/rpmbuild/fedora-install-dktools
+~user/Downloads/dktools-4.40.0/config/rpmbuild/fedora-install-dktools
 ~~~

 To install the command line interface programs only:

 ~~~shell
 cd ~user/rpmbuild/RPMS/x86_64
-~user/Downloads/dktools-4.39.1/config/rpmbuild/fedora-install-cli
+~user/Downloads/dktools-4.40.0/config/rpmbuild/fedora-install-cli
 ~~~

 ####   Uninstall DK tools completely
&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>Installation via DEB packages modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/Installation%2520via%2520DEB%2520packages/" rel="alternate"/><published>2026-03-28T21:41:00.259000Z</published><updated>2026-03-28T21:41:00.259000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.netfb6a6d30bea651234b7adf8303f27d4bf8909668</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v19
+++ v20
@@ -23,14 +23,14 @@
 [ -d Downloads ] || ( mkdir Downloads ; chmod 755 Downloads )
 ~~~

-Place the dktools-&lt;i&gt;4.39.0&lt;/i&gt;.tar.gz file in the “Downloads” directory.
+Place the dktools-&lt;i&gt;4.40.0&lt;/i&gt;.tar.gz file in the “Downloads” directory.

 ###    Unpack archive

 ~~~shell
 cd
 cd Downloads
-tar xzf dktools-4.39.0.tar.gz
+tar xzf dktools-4.40.0.tar.gz
 ~~~

 ###    Install required packages
@@ -38,7 +38,7 @@
 As **root** install the required packages including developer and packager tools and build dependencies:

 ~~~shell
-cd ~user/Downloads/dktools-4.39.0
+cd ~user/Downloads/dktools-4.40.0
 scripts/debian/deb-prepare
 ~~~

@@ -168,7 +168,7 @@

 ~~~shell
 cd
-cd Downloads/dktools-4.39.0
+cd Downloads/dktools-4.40.0
 scripts/debian/deb-build
 ~~~

@@ -214,9 +214,9 @@
 As **root** run:

 ~~~shell
-mkdir -p /var/www/html/debian13/dktools
-chmod 755 /var/www/html/debian13
-chmod 755 /var/www/html/debian13/dktools
+mkdir -p /var/www/html/debian@DEBIANVERSNO@/dktools
+chmod 755 /var/www/html/debian@DEBIANVERSNO@
+chmod 755 /var/www/html/debian@DEBIANVERSNO@/dktools
 ~~~

 ###    Modify Apache configuration
@@ -232,7 +232,7 @@
 section add a section:

 ~~~apache
-&amp;lt;directory var="" www="" html="" debian13=""&amp;gt;
+&amp;lt;directory var="" www="" html="" debian@debianversno@=""&amp;gt;
         Options All Indexes FollowSymLinks
 &amp;lt;/directory&amp;gt;
 ~~~
@@ -246,7 +246,7 @@
 ###    Create repository

 ~~~shell
-cd /var/www/html/debian13/dktools
+cd /var/www/html/debian@DEBIANVERSNO@/dktools
 rsync -rlptDv --delete ~user/Downloads/dktools-debian-pkg/repo/ .
 ~~~

@@ -255,8 +255,8 @@
 Before placing upgraded versions of the packages in the repository you must delete the existing content of the repository directory.

 ~~~shell
-rm -fr /var/www/html/debian13/dktools/*
-cd /var/www/html/debian13/dktools
+rm -fr /var/www/html/debian@DEBIANVERSNO@/dktools/*
+cd /var/www/html/debian@DEBIANVERSNO@/dktools
 rsync -rlptDv --delete ~user/Downloads/dktools-debian-pkg/repo/ .
 ~~~

@@ -267,8 +267,8 @@

 ~~~debcontrol
 Types: deb
-URIs: http://192.0.2.1/debian13/dktools/
-Suites: trixie
+URIs: http://192.0.2.1/debian@DEBIANVERSNO@/dktools/
+Suites: @DEBIANVCODE@
 Components: main
 Signed-By: /etc/apt/keyrings/dktools.gpg
 ~~~
&amp;lt;/directory&amp;gt;&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>Executable setup for Windows modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/Executable%2520setup%2520for%2520Windows/" rel="alternate"/><published>2026-03-28T21:40:27.927000Z</published><updated>2026-03-28T21:40:27.927000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.nete267b3dc266a98e534b89fbef56f7a529276e3bd</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v18
+++ v19
@@ -22,7 +22,7 @@

 The installation procedure depends on the installer type of the executable setup, available types are:

-* MingW64+NSIS installer&lt;br/&gt;File names follow the dktools-_x_._y_._z_-WINDOWS-_VERSION_-mingw64-nsis.exe schema.&lt;br/&gt; dktools-4.39.2-WINDOWS-7-mingw64-nsis.exe means at least Windows 7 is required to run the software, the software runs on more recent Windows versions too.&lt;br/&gt; &lt;br/&gt;
+* MingW64+NSIS installer&lt;br/&gt;File names follow the dktools-_x_._y_._z_-WINDOWS-_VERSION_-mingw64-nsis.exe schema.&lt;br/&gt; dktools-4.40.0-WINDOWS-7-mingw64-nsis.exe means at least Windows 7 is required to run the software, the software runs on more recent Windows versions too.&lt;br/&gt; &lt;br/&gt;

 * VStudio+InnoSetup installer&lt;br/&gt;File names follow the dktools-win64-_x_._y_._z_.exe schema.

 Releases before 4.35.0 used VStudio+InnoSetup installers, 4.35.0 and above use MingW64+NSIS installers.
@@ -51,7 +51,7 @@
 To perform an installation with minimum interaction, run:

 ~~~shell
-dktools-4.39.2-WINDOWS-10-mingw64-nsis.exe /S /D=C:\P\Kr
+dktools-4.40.0-WINDOWS-10-mingw64-nsis.exe /S /D=C:\P\Kr
 ~~~

 The /D=C:\P\Kr  parameter is optional, it selects a non-standard installation directory.
&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>Build executable setup for Windows on Linux modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/Build%2520executable%2520setup%2520for%2520Windows%2520on%2520Linux/" rel="alternate"/><published>2026-03-28T21:39:51.382000Z</published><updated>2026-03-28T21:39:51.382000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.nete4b0f3f1d5738c217b02a183197e4a94ebc281ab</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v8
+++ v9
@@ -9,7 +9,7 @@
 
 

-#  Build executable setup for Windows on Debian 13 (Trixie)
+#  Build executable setup for Windows on Debian 12 (Bookworm)

 ## Simple procedure on Debian

@@ -21,7 +21,7 @@

 ~~~shell
 cd ~/Downloads
-tar xzf dktools-4.39.1.tar.gz
+tar xzf dktools-4.40.0.tar.gz
 ~~~

 ###    Prepare to build
@@ -29,7 +29,7 @@
 As **root** install the developer packages required:

 ~~~shell
-cd ~user/Downloads/dktools-4.39.1
+cd ~user/Downloads/dktools-4.40.0
 scripts/debian/mingw64-prepare
 ~~~

@@ -38,11 +38,11 @@
 As **unprivileged user** run:

 ~~~shell
-cd ~user/Downloads/dktools-4.39.1
+cd ~user/Downloads/dktools-4.40.0
 scripts/debian/mingw64-build
 ~~~

-You should end up with a file dktools-4.39.1-WINDOWS-10-mingw64-nsis.exe and a file dktools-4.39.1-mingw64.zip in the parent of the current directory.
+You should end up with a file dktools-4.40.0-WINDOWS-10-mingw64-nsis.exe and a file dktools-4.40.0-mingw64.zip in the parent of the current directory.

 ## Simple procedure on Fedora

@@ -54,7 +54,7 @@

 ~~~shell
 cd ~/Downloads
-tar xzf dktools-4.39.1.tar.gz
+tar xzf dktools-4.40.0.tar.gz
 ~~~

 ###    Prepare to build
@@ -62,7 +62,7 @@
 As **root** install the developer packages required:

 ~~~shell
-cd ~user/Downloads/dktools-4.39.1
+cd ~user/Downloads/dktools-4.40.0
 scripts/fedora/mingw64-prepare
 ~~~

@@ -71,11 +71,11 @@
 As **unprivileged user** run:

 ~~~shell
-cd ~user/Downloads/dktools-4.39.1
+cd ~user/Downloads/dktools-4.40.0
 scripts/fedora/mingw64-build
 ~~~

-You should end up with a file dktools-4.39.1-WINDOWS-10-mingw64-nsis.exe and a file dktools-4.39.1-mingw64.zip in the parent of the current directory.
+You should end up with a file dktools-4.40.0-WINDOWS-10-mingw64-nsis.exe and a file dktools-4.40.0-mingw64.zip in the parent of the current directory.

 ## Used directories and files

@@ -84,15 +84,15 @@


 * ~user/Downloads/dktools-dep&lt;br/&gt;is used to store the source archives of required libraries.

-* ${DIR}/dktools-4.39.1-depsrc&lt;br/&gt;contains the unpacked source archives of the required libraries.
+* ${DIR}/dktools-4.40.0-depsrc&lt;br/&gt;contains the unpacked source archives of the required libraries.

-* ${DIR}/dktools-4.39.1-mingw&lt;br/&gt;is the build root.
+* ${DIR}/dktools-4.40.0-mingw&lt;br/&gt;is the build root.

-* ${DIR}/dktools-4.39.1-mingw.zip&lt;br/&gt;is an archive containing the software but no installation routine.
+* ${DIR}/dktools-4.40.0-mingw.zip&lt;br/&gt;is an archive containing the software but no installation routine.

-* ${DIR}/dktools-4.39.1.nsi&lt;br/&gt;is the nsis control file to build the installer.
+* ${DIR}/dktools-4.40.0.nsi&lt;br/&gt;is the nsis control file to build the installer.

-* ${DIR}/dktools-4.39.1-WINDOWS-&lt;i&gt;version&lt;/i&gt;-mingw64-nsis.exe&lt;br/&gt;is the executable installer.
+* ${DIR}/dktools-4.40.0-WINDOWS-&lt;i&gt;version&lt;/i&gt;-mingw64-nsis.exe&lt;br/&gt;is the executable installer.

 ## Process optimization

&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>Build executable setup for Windows on Windows modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/Build%2520executable%2520setup%2520for%2520Windows%2520on%2520Windows/" rel="alternate"/><published>2026-03-28T21:39:06.499000Z</published><updated>2026-03-28T21:39:06.499000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.net0ce6936e4914f584474adcee3193cc9205641a68</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v17
+++ v18
@@ -43,15 +43,15 @@

 to build the programs and create an executable installer.
 On success you have a dktools-_x_._y_._z_-WINDOWS-_version_-mingw64-nsis.exe file.
-Typically the files are created to be used on Windows 7 and above.
-
-To build executables using all possible features from Windows 10, run
-
-~~~
-scripts/debian/mingw64-build 10
-~~~
-
-instead to build a dktools-_x_._y_._z_-WINDOWS-10-mingw64-nsis.exe file.
+Typically the files are created to be used on Windows 10 and above.
+
+To build executables using only features from Windows 7, run
+
+~~~
+scripts/debian/mingw64-build 7
+~~~
+
+instead to build a dktools-_x_._y_._z_-WINDOWS-7-mingw64-nsis.exe file.

 ---

@@ -84,15 +84,15 @@

 to build the programs and create an executable installer.
 On success you have a dktools-_x_._y_._z_-WINDOWS-_version_-mingw64-nsis.exe file.
-Typically the files are created to be used on Windows 7 and above.
-
-To build executables using all possible features from Windows 10, run
-
-~~~
-scripts/fedora/mingw64-build 10
-~~~
-
-instead to build a dktools-_x_._y_._z_-WINDOWS-10-mingw64-nsis.exe file.
+Typically the files are created to be used on Windows 10 and above.
+
+To build executables using only features from Windows 7, run
+
+~~~
+scripts/fedora/mingw64-build 7
+~~~
+
+instead to build a dktools-_x_._y_._z_-WINDOWS-7-mingw64-nsis.exe file.

 ---

@@ -529,7 +529,7 @@
 Open makefile.msc in your favourite text editor.

 Remove the following line (or put it into a comment):
-~~~
+~~~text
 !include &amp;lt;win32.mak&amp;gt;
 ~~~

@@ -728,7 +728,7 @@
 Variable|Purpose|Type|Values
 --------|-------|----|-------
 TARGET\_CPU|Platform to build for|String|x64 or x86.
-WINDOWS|Windows version to build executables for|String|One from: 10 8.1 8 7. Default: 7.
+WINDOWS|Windows version to build executables for|String|One from: 10 8.1 8 7. Default: 10.
 RUNTIME\_LIBS|C runtime library type|String|static or dynamic.
 BUILD|Build type|String|release or debug.
 ZLIB&lt;br/&gt;BZIP2&lt;br/&gt;LIBPNG&lt;br/&gt;LIBJPEG&lt;br/&gt;LIBTIFF&lt;br/&gt;OPENSSL&lt;br/&gt;WXWIDGETS|Library presence|Boolean|yes or no.
&amp;lt;/win32.mak&amp;gt;&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>dkcpre manual modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/dkcpre%2520manual/" rel="alternate"/><published>2026-03-28T21:37:54.079000Z</published><updated>2026-03-28T21:37:54.079000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.nete3ed05f07406c04c822fa4ceea05cc5dc98db5be</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v7
+++ v8
@@ -3,6 +3,7 @@
 
 &lt;a href="../dkcpre/" title="dkcpre — Debugging and tracing preprocessor for C / C++"&gt;← Previous&lt;/a&gt;
 &lt;a href="../Home/" title="Home"&gt;↑ Home&lt;/a&gt;
+&lt;a href="../Home/#programs" title="Programs list"&gt;↑ Programs&lt;/a&gt;
 &lt;a href="../dkwxwiz/" title="dkwxwiz — Start new wxWidgets + libdk4 project"&gt;→ Next&lt;/a&gt;
 
 
@@ -60,8 +61,8 @@
 -s&lt;br/&gt;--debug‑stdout|Debug output going to standard output.
 -t&lt;br/&gt;--timestamp|Add timestamp to trace messages
 -k&lt;br/&gt;--trace‑keyword|Add "trace" keyword to each trace message
--w&lt;br/&gt;--windows‑wide‑char|Prepare debug output to switch between normal and wide characters. _Note:_ For trace messages containing %!xc or %!xs special placeholders this option produces 19 output lines instead of the usual 9 lines. You should use this option only if you plan to compile the sources on a Windows computer.
--p&lt;br/&gt;--portable‑output|Portable code for writing debug message. Implies -w. _Warning:_ For trace messages containing %!xc or %!xs special placeholders this option produces 69 output lines instead of the usual 9 lines. You should use this option only if you plan to run "dkcpre -d" on one computer but do the compilation on another computer.
+-w&lt;br/&gt;--windows‑wide‑char|Prepare debug output to switch between normal and wide characters.&lt;br/&gt;_Note:_ For trace messages containing %!xc or %!xs special placeholders this option produces 19 output lines instead of the usual 9 lines. You should use this option only if you plan to compile the sources on a Windows computer.
+-p&lt;br/&gt;--portable‑output|Portable code for writing debug message. Implies -w.&lt;br/&gt;_Warning:_ For trace messages containing %!xc or %!xs special placeholders this option produces 69 output lines instead of the usual 9 lines. You should use this option only if you plan to run "dkcpre -d" on one computer but do the compilation on another computer.
 -l&lt;br/&gt;--line‑numbers|Write "#line …" directives in C output files.
 -m&lt;br/&gt;--make|Make mode: rebuild output files only if necessary.
 -b _width_&lt;br/&gt;--box‑width=_width_|Integer, box width for comment boxes.
@@ -124,7 +125,7 @@

 ###    The module section

-The contents of the module section is transferred to the \*.c, \*.cpp, \*.m or \*.java.
+The contents of the module section is transferred to the \*.c, \*.cpp, \*.m or \*.java file.

 If copyright owner, year or license type are specfied in the %%options section comments are generated automatically in the output file.

@@ -132,7 +133,7 @@

 Special command|purpose
 ---------------|-------
-$!trace‑include|Converted into "#include &amp;lt;dk3trace.h&amp;gt;" in debug mode or to an empty line in release mode.
+$!trace‑include|Converted into "#include &amp;lt;dk4trace.h&amp;gt;" in debug mode or to an empty line in release mode.
 $!trace‑init _file_|Start debug output (opens the output file) in debug mode. Mostly used at the start of the main() function.
 $!trace‑end|End debug output (closes the output file) in debug mode. Mostly used at the end of the main() function immediately before exit().
 $\*&lt;br/&gt;… contents …&lt;br/&gt;$\*|Comment box for the contents.
@@ -141,6 +142,8 @@
 $!pipe _command_&lt;br/&gt;$!| _command_|Execute the specified command and add command output to the output file.
 $!string‑table _arguments_|Produce a string array in the output file and optionally a string table file. Finished by a $!end line. Lines started by "#" are comment lines. The arguments list is a comma-separated list of _key_=_value_ pairs. The following key names are available:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;file=&lt;/b&gt;&lt;i&gt;filename&lt;/i&gt;&lt;br/&gt;Name of string table output file to produce.&lt;/li&gt;&lt;li&gt;&lt;b&gt;prefix=&lt;/b&gt;&lt;i&gt;prefix&lt;/i&gt;&lt;br/&gt;Prefix for string literals, a typical value is "L" to produce something like L"my text".&lt;/li&gt;&lt;li&gt;&lt;b&gt;macro=&lt;/b&gt;&lt;i&gt;macro&lt;/i&gt;&lt;br/&gt;Macro for string literals, typical values are "wxT" or "dkT" to produce something like wxT("my text") or dkT("my text").&lt;/li&gt;&lt;/ul&gt;
 $!string‑table‑file _arguments_|Read string table file and produce string array. The arguments list is a comma-separated list of _key_=_value_ pairs. The following key names are available:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;file=&lt;/b&gt;&lt;i&gt;filename&lt;/i&gt;&lt;br/&gt;Name of string table file to read, required.&lt;/li&gt;&lt;li&gt;&lt;b&gt;prefix=&lt;/b&gt;&lt;i&gt;prefix&lt;/i&gt;&lt;br/&gt;Prefix for string literals, a typical value is "L" to produce something like L"my text".&lt;/li&gt;&lt;li&gt;&lt;b&gt;macro=&lt;/b&gt;&lt;i&gt;macro&lt;/i&gt;&lt;br/&gt;Macro for string literals, typical values are "wxT" or "dkT" to produce something like wxT("my text") or dkT("my text").&lt;/li&gt;&lt;/ul&gt;
+$!string‑and‑id _arguments_|Create array of structs consisting of a text and a numeric identifier. The arguments list is a comma-separated list of _key_=_value_ pairs. The following key names are available:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;macro=&lt;/b&gt;&lt;i&gt;macroname&lt;/i&gt;&lt;br/&gt;Macro for string literals, typical values are "wxT" or "dkT" to produce something like wxT("my text") or dkT("my text").&lt;/li&gt;&lt;li&gt;&lt;b&gt;prefix=&lt;/b&gt;&lt;i&gt;prefixname&lt;/i&gt;&lt;br/&gt;Prefix for string literals, a typical value is "L" to produce something like L"my text".&lt;/li&gt;&lt;li&gt;&lt;b&gt;case-sensitive=&lt;/b&gt;&lt;i&gt;boolean&lt;/i&gt;&lt;br/&gt;Boolean flag for case-sensitive or case-insensitive sort order.&lt;/li&gt;&lt;/ul&gt;&lt;br/&gt;Arrays created by this special command can be used with the dk4str\_keyword\_index() function.
+$!abbr‑and‑id _arguments_|Create array of structs consisting of a text and a numeric identifier. The arguments list is a comma-separated list of _key_=_value_ pairs. The following key names are available:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;macro=&lt;/b&gt;&lt;i&gt;macroname&lt;/i&gt;&lt;br/&gt;Macro for string literals, typical values are "wxT" or "dkT" to produce something like wxT("my text") or dkT("my text").&lt;/li&gt;&lt;li&gt;&lt;b&gt;prefix=&lt;/b&gt;&lt;i&gt;prefixname&lt;/i&gt;&lt;br/&gt;Prefix for string literals, a typical value is "L" to produce something like L"my text".&lt;/li&gt;&lt;li&gt;&lt;b&gt;case-sensitive=&lt;/b&gt;&lt;i&gt;boolean&lt;/i&gt;&lt;br/&gt;Boolean flag for case-sensitive or case-insensitive sort order.&lt;/li&gt;&lt;li&gt;&lt;b&gt;special=&lt;/b&gt;&lt;i&gt;character&lt;/i&gt;&lt;br/&gt;Special character to mark position from where abbreviations are allowed.&lt;/li&gt;&lt;/ul&gt;&lt;br/&gt;Arrays created by this special command can be used with the dk4str\_keyword\_abbr\_index() function.
 $!text _arguments_|Produce a string array in the output file and optionally a text file. Finished by a $!end line. Lines started by "#" are comment lines. The arguments list is a comma-separated list of _key_=_value_ pairs. The following key names are available:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;file=&lt;/b&gt;&lt;i&gt;filename&lt;/i&gt;&lt;br/&gt;Name of string table output file to produce.&lt;/li&gt;&lt;li&gt;&lt;b&gt;prefix=&lt;/b&gt;&lt;i&gt;prefix&lt;/i&gt;&lt;br/&gt;Prefix for string literals, a typical value is "L" to produce something like L"my text".&lt;/li&gt;&lt;li&gt;&lt;b&gt;macro=&lt;/b&gt;&lt;i&gt;macro&lt;/i&gt;&lt;br/&gt;Macro for string literals, typical values are "wxT" or "dkT" to produce something like wxT("my text") or dkT("my text").&lt;/li&gt;&lt;li&gt;&lt;b&gt;preprocessor&lt;/b&gt;&lt;br/&gt;Flag: Lines started by "#" in column 0 are preprocessor lines and must be transferred literally. Use a backslash to escape "#" when text lines started by "#" are needed.&lt;br/&gt;Without this flag lines started by "#" in column 0 are considered to be text lines.&lt;/li&gt;&lt;/ul&gt;
 $!string _arguments_|Produce one long string consisting of several pieces. Finished by a $!end line. The arguments list is a comma-separated list of _key_=_value_ pairs. The following key names are available:&lt;br/&gt;&lt;ul&gt;&lt;li&gt;&lt;b&gt;newlines&lt;/b&gt;&lt;br/&gt;Add newline at the end of each text piece.&lt;/li&gt;&lt;li&gt;&lt;b&gt;prefix=&lt;/b&gt;&lt;i&gt;prefix&lt;/i&gt;&lt;br/&gt;Prefix for string literals, a typical value is "L" to produce something like L"my text".&lt;/li&gt;&lt;li&gt;&lt;b&gt;macro=&lt;/b&gt;&lt;i&gt;macro&lt;/i&gt;&lt;br/&gt;Macro for string literals, typical values are "wxT" or "dkT" to produce something like wxT("my text") or dkT("my text").&lt;/li&gt;&lt;li&gt;&lt;b&gt;preprocessor&lt;/b&gt;&lt;br/&gt;Flag: Lines started by "#" in column 0 are preprocessor lines and must be transferred literally. Use a backslash to escape "#" when text lines started by "#" are needed.&lt;br/&gt;Without this flag lines started by "#" in column 0 are considered to be text lines.&lt;/li&gt;&lt;/ul&gt;
 $!binary‑file _filename_|Insert file contents in decimal notation.
@@ -3478,7 +3481,7 @@

 ####   Makefile rule

-~~~
+~~~makefile
 TESTIDENTOBJ=   test-ident.o dk3trace.o

 test-ident:     $(TESTIDENTOBJ)
@@ -3488,7 +3491,7 @@

 ####   Build and test the program (release mode)

-~~~
+~~~sh
 dkcpre -l test-ident.ctr
 make test-ident
 ./test-ident
@@ -3993,6 +3996,7 @@
 
 &lt;a href="../dkcpre/" title="dkcpre — Debugging and tracing preprocessor for C / C++"&gt;← Previous&lt;/a&gt;
 &lt;a href="../Home/" title="Home"&gt;↑ Home&lt;/a&gt;
+&lt;a href="../Home/#programs" title="Programs list"&gt;↑ Programs&lt;/a&gt;
 &lt;a href="../dkwxwiz/" title="dkwxwiz — Start new wxWidgets + libdk4 project"&gt;→ Next&lt;/a&gt;
 
 
&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>htmlbook manual modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/htmlbook%2520manual/" rel="alternate"/><published>2026-03-28T21:37:08.229000Z</published><updated>2026-03-28T21:37:08.229000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.net0e754c1ee39c9187940419c55ec774571e434f8f</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v8
+++ v9
@@ -874,7 +874,7 @@

 Here is a starting point:

-~~~
+~~~makefile
 TEXTFILES := $(wildcard *.txt)
 HBTFILES  := $(wildcard *.hbt)
 PRJFILES  := $(wildcard *.prj)
@@ -1035,7 +1035,7 @@
 ###    How do I convert \*.fig files automatically using GNU make?

 Change your GNUmakefile to:
-~~~
+~~~makefile
 FIGPNGRES=96

 TEXTFILES := $(wildcard *.txt)
@@ -1092,7 +1092,7 @@
 ###    How do I convert \*.gp files automatically using GNU make?

 Extend your GNUmakefile to:
-~~~
+~~~makefile
 FIGPNGRES=96

 TEXTFILES := $(wildcard *.txt)
@@ -1403,7 +1403,7 @@
 ###    How do I convert the \*.tex files automatically using GNU make?

 Extend your GNUmakefile to:
-~~~
+~~~makefile
 FIGPNGRES=96

 TEXTFILES := $(wildcard *.txt)
&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>dkwxwiz manual modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/dkwxwiz%2520manual/" rel="alternate"/><published>2026-03-28T21:36:29.445000Z</published><updated>2026-03-28T21:36:29.445000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.net6d7a29a1e5a31238c6f7cdd440a17b520cdbe51e</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -3,6 +3,7 @@
 
 &lt;a href="../dkwxwiz/" title="dkwxwiz — Start new wxWidgets + libdk4 project"&gt;← Previous&lt;/a&gt;
 &lt;a href="../Home/" title="Home"&gt;↑ Home&lt;/a&gt;
+&lt;a href="../Home/#programs" title="Programs list"&gt;↑ Programs&lt;/a&gt;
 &lt;a href="../wxdkhtb/" title="wxdkhtb — View HTB help file"&gt;→ Next&lt;/a&gt;
 
 
@@ -177,7 +178,7 @@

 In a cmd.exe window set up the paths for Visual Studio and/or platform SDK and run:

-~~~
+~~~sh
 dkcpre -l
 nmake -f makefile.vc
 ~~~
@@ -226,6 +227,7 @@
 
 &lt;a href="../dkwxwiz/" title="dkwxwiz — Start new wxWidgets + libdk4 project"&gt;← Previous&lt;/a&gt;
 &lt;a href="../Home/" title="Home"&gt;↑ Home&lt;/a&gt;
+&lt;a href="../Home/#programs" title="Programs list"&gt;↑ Programs&lt;/a&gt;
 &lt;a href="../wxdkhtb/" title="wxdkhtb — View HTB help file"&gt;→ Next&lt;/a&gt;
 
 
&lt;/pre&gt;
&lt;/div&gt;</summary></entry><entry><title>Your Contribution modified by Dirk Krause</title><link href="https://sourceforge.net/p/dktools/wiki/Your%2520Contribution/" rel="alternate"/><published>2026-03-28T21:35:09.825000Z</published><updated>2026-03-28T21:35:09.825000Z</updated><author><name>Dirk Krause</name><uri>https://sourceforge.net/u/kraused/</uri></author><id>https://sourceforge.net8369490c3c24814897b9ebb337f358802850630b</id><summary type="html">&lt;div class="markdown_content"&gt;&lt;pre&gt;--- v3
+++ v4
@@ -65,6 +65,19 @@
 B1 t=\textpm{} m=\pm{} p=textcomp
 ~~~

+Items within a line are separated by space. Items are key=value pairs.
+The following keys can be used:
+
+Key|Value
+:-:|:------
+t|Representation of character in text mode.
+m|Representation of character in math mode.
+b|Representation of character in both text and math mode.
+e|List of usable and unusable encodings, comma-separated.
+p|Required LaTeX package name.
+
+The list of possible encodings can contain “ot1”, “t1”, “t4”, and “t5”. An exclamation mark before the list excludes the listed encodings.
+
 ###    How to send the files

 Please use the [SourceForge project page for the DK tools project](http://sourceforge.net/projects/dktools) to send contributions. Create a bug report / feature request and attach the file.
&lt;/pre&gt;
&lt;/div&gt;</summary></entry></feed>