<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sciteco/doc/Makefile.am, branch v2.5.2</title>
<subtitle>Scintilla-based Text Editor and COrrector</subtitle>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/'/>
<entry>
<title>fixup bcba0ef4486eb9baec3cd4d17250b91e1c8a7f79: fixed failures when building in doc/</title>
<updated>2026-01-01T19:02:42+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>rhaberkorn@fmsbw.de</email>
</author>
<published>2026-01-01T19:02:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=3f711b83a851fd3247df1c7d2a19b3519e73fad7'/>
<id>3f711b83a851fd3247df1c7d2a19b3519e73fad7</id>
<content type='text'>
* When fixing up hash-bang lines, `::FS` returns a status integer, which was returned by the process
* also avoid expanding Make variables into TECO code - better pass it as a command-line argument
* should also fix OBS builds
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* When fixing up hash-bang lines, `::FS` returns a status integer, which was returned by the process
* also avoid expanding Make variables into TECO code - better pass it as a command-line argument
* should also fix OBS builds
</pre>
</div>
</content>
</entry>
<entry>
<title>no longer touch installed files at install-time</title>
<updated>2025-12-31T19:55:47+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>rhaberkorn@fmsbw.de</email>
</author>
<published>2025-12-31T15:55:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=bcba0ef4486eb9baec3cd4d17250b91e1c8a7f79'/>
<id>bcba0ef4486eb9baec3cd4d17250b91e1c8a7f79</id>
<content type='text'>
* hash-bang lines in grosciteco.tes and tedoc.tes are fixed up
  at build time instead of install-time (via install-exec-hook).
* This will hopefully resolve problems with the FreeBSD port,
  since Poudriere installs the package as non-root but with BINMODE=555.
  The alternative would have been to set BINMODE=755 in the port which may not
  be acceptible by the official port committer.
  Anyway, I decided to go out of the way of any conflicts.
  See also https://bugs.freebsd.org/bugzilla/show_bug.cgi?format=multiple&amp;id=283601
* On the downside, this will break install-path overrides at install-time
  (e.g. `make install bindir=...`).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* hash-bang lines in grosciteco.tes and tedoc.tes are fixed up
  at build time instead of install-time (via install-exec-hook).
* This will hopefully resolve problems with the FreeBSD port,
  since Poudriere installs the package as non-root but with BINMODE=555.
  The alternative would have been to set BINMODE=755 in the port which may not
  be acceptible by the official port committer.
  Anyway, I decided to go out of the way of any conflicts.
  See also https://bugs.freebsd.org/bugzilla/show_bug.cgi?format=multiple&amp;id=283601
* On the downside, this will break install-path overrides at install-time
  (e.g. `make install bindir=...`).
</pre>
</div>
</content>
</entry>
<entry>
<title>avoid GNU Make grouped targets and templates to build womanpages</title>
<updated>2025-11-18T19:30:29+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>rhaberkorn@fmsbw.de</email>
</author>
<published>2025-11-18T19:16:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=03496e976dbb492c4f58db1a82ca6351ea937fc4'/>
<id>03496e976dbb492c4f58db1a82ca6351ea937fc4</id>
<content type='text'>
* grosciteco.tes generates two output files.
  First this was modeled with `%.woman %.woman.tec : ...`, but it creates independant rules
  which could result in superfluous builds and broke parallel builds.
  Then I tried grouped targets (`%.woman %.woman.tec &amp;: ...`) which were supposed to solve the
  problem cleanly. However they turned out to be buggy with pattern rules,
  so I used templates instead.
  Unfortunately grouped targets turned out to be unreliable in general and that broke
  some older platforms, resulting in broken .woman.tec files.
* The same can be achieved by declaring .woman files the main artifact and
  having an empty rule like `%.woman.tec : %.woman;`.
  If anything draws in .woman.tec, it will still execute the rule only once.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* grosciteco.tes generates two output files.
  First this was modeled with `%.woman %.woman.tec : ...`, but it creates independant rules
  which could result in superfluous builds and broke parallel builds.
  Then I tried grouped targets (`%.woman %.woman.tec &amp;: ...`) which were supposed to solve the
  problem cleanly. However they turned out to be buggy with pattern rules,
  so I used templates instead.
  Unfortunately grouped targets turned out to be unreliable in general and that broke
  some older platforms, resulting in broken .woman.tec files.
* The same can be achieved by declaring .woman files the main artifact and
  having an empty rule like `%.woman.tec : %.woman;`.
  If anything draws in .woman.tec, it will still execute the rule only once.
</pre>
</div>
</content>
</entry>
<entry>
<title>build woman-pages via templates since pattern rules with grouped targets appear to be broken in some versions of GNU Make</title>
<updated>2025-09-02T17:01:55+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-09-02T17:01:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=6fe7e32268c0b7d1cbe6a1480a99b8b24f122b55'/>
<id>6fe7e32268c0b7d1cbe6a1480a99b8b24f122b55</id>
<content type='text'>
Hopefully fixes the Mac OS CI and nightly builds.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Hopefully fixes the Mac OS CI and nightly builds.
</pre>
</div>
</content>
</entry>
<entry>
<title>fixed parallel builds of the woman pages</title>
<updated>2025-09-02T14:54:42+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-09-02T14:54:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=bf852d8bbfc2422994757b4dbce21edc12238eb1'/>
<id>bf852d8bbfc2422994757b4dbce21edc12238eb1</id>
<content type='text'>
* There were two rules with independent targets, which could
  result in `.woman.tec` files to actually contain plain text.
  Practically all parallel builds were affected, among other
  things OBS-built packages where tutorial.woman.tec would
  usually be broken.
* Now use the `&amp;:` syntax for grouped targets.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* There were two rules with independent targets, which could
  result in `.woman.tec` files to actually contain plain text.
  Practically all parallel builds were affected, among other
  things OBS-built packages where tutorial.woman.tec would
  usually be broken.
* Now use the `&amp;:` syntax for grouped targets.
</pre>
</div>
</content>
</entry>
<entry>
<title>support Groff v1.19.2 as still used by default on NetBSD 10</title>
<updated>2025-08-21T23:54:09+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-08-20T07:33:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=ed651bf96f558fd6514d8301c813a175a8a1c51b'/>
<id>ed651bf96f558fd6514d8301c813a175a8a1c51b</id>
<content type='text'>
* They have a newer version in pkgsrc, but it's not even available
  as a binary package on the arm6.
* Has some glitches, e.g. does accept the ASCII 27 in tutorial.ms,
  but it's probably not worth to work around.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* They have a newer version in pkgsrc, but it's not even available
  as a binary package on the arm6.
* Has some glitches, e.g. does accept the ASCII 27 in tutorial.ms,
  but it's probably not worth to work around.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix up hash-bang lines only of the scripts really installed by the current `make install` invocation</title>
<updated>2025-08-14T12:20:37+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-08-14T12:20:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=6399cfcfa2ddc8f94247b01b61cedf36d44e8b11'/>
<id>6399cfcfa2ddc8f94247b01b61cedf36d44e8b11</id>
<content type='text'>
* The previous way of fixing up all `*.tes` scripts had the disadvantage
  of touching unrelated scripts or grosciteco/tedoc of a previous invocation.
  E.g. installing a Gtk build after the ncurses build would overwrite all hash-bang
  lines of the curses-version scripts as well with gsciteco.
* This caused problems with the RPM package where both variants were
  installed into the same buildroot and introduced a dependency from sciteco-curses
  to sciteco-gtk.
  This is worked around in sciteco.spec with a manual sed call.
* It would be better to get rid of the install-exec-hook altogether
  as it causes problems with FreeBSD/Poudriere (FIXME).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* The previous way of fixing up all `*.tes` scripts had the disadvantage
  of touching unrelated scripts or grosciteco/tedoc of a previous invocation.
  E.g. installing a Gtk build after the ncurses build would overwrite all hash-bang
  lines of the curses-version scripts as well with gsciteco.
* This caused problems with the RPM package where both variants were
  installed into the same buildroot and introduced a dependency from sciteco-curses
  to sciteco-gtk.
  This is worked around in sciteco.spec with a manual sed call.
* It would be better to get rid of the install-exec-hook altogether
  as it causes problems with FreeBSD/Poudriere (FIXME).
</pre>
</div>
</content>
</entry>
<entry>
<title>don't install the standalone scripts from lib/ as actual scripts: should fix CI and nightlies</title>
<updated>2025-08-08T10:39:12+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-08-08T10:39:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=7dd6ac742880bd0b2eca2c31f2e7dc19598e2d94'/>
<id>7dd6ac742880bd0b2eca2c31f2e7dc19598e2d94</id>
<content type='text'>
* They would get the --program-prefix.
* If they aren't installed as real scripts, there is no point in fixing up their
  hash-bang lines.
* The hash-bang line fix won't work on Windows anyway, so they are now disabled for
  grosciteco and tedoc as well.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* They would get the --program-prefix.
* If they aren't installed as real scripts, there is no point in fixing up their
  hash-bang lines.
* The hash-bang line fix won't work on Windows anyway, so they are now disabled for
  grosciteco and tedoc as well.
</pre>
</div>
</content>
</entry>
<entry>
<title>command-line arguments are no longer passed via the unnamed buffer, but via special Q-registers ^Ax</title>
<updated>2025-08-06T13:46:37+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-08-06T13:46:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=280cb9da39fc7b5357f6071926d511394f6d0152'/>
<id>280cb9da39fc7b5357f6071926d511394f6d0152</id>
<content type='text'>
* The unnamed buffer is also used for reading from --stdin, so you couldn't practically combine
  --stdin with passing command-line arguments to macros.
* The old approach of passing command-line arguments via lines in the
  unnamed buffer was flawed anyway as it wouldn't work with filenames containing LF.
  This is just a very ancient feature, written when there weren't even long Q-reg names in SciTECO.
* You can now e.g. pipe into SciTECO and edit what was read interactively, e.g. `dmesg | sciteco -i`.
  You can practically use SciTECO as a pager.
* htbl.tes is now a command-line filter (uses -qio).
* grosciteco.tes reads Troff intermediate code from stdin, so we no longer need
  "*.intermediate" temporary files.
* added a getopt.tes test case to the testsuite.
* This change unfortunately breaks most macros accepting command-line arguments,
  even if they used getopt.tes.
  It also requires updating ~/.teco_ini - see fallback.teco_ini.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* The unnamed buffer is also used for reading from --stdin, so you couldn't practically combine
  --stdin with passing command-line arguments to macros.
* The old approach of passing command-line arguments via lines in the
  unnamed buffer was flawed anyway as it wouldn't work with filenames containing LF.
  This is just a very ancient feature, written when there weren't even long Q-reg names in SciTECO.
* You can now e.g. pipe into SciTECO and edit what was read interactively, e.g. `dmesg | sciteco -i`.
  You can practically use SciTECO as a pager.
* htbl.tes is now a command-line filter (uses -qio).
* grosciteco.tes reads Troff intermediate code from stdin, so we no longer need
  "*.intermediate" temporary files.
* added a getopt.tes test case to the testsuite.
* This change unfortunately breaks most macros accepting command-line arguments,
  even if they used getopt.tes.
  It also requires updating ~/.teco_ini - see fallback.teco_ini.
</pre>
</div>
</content>
</entry>
<entry>
<title>simplified the htbl.tes preprocessor and the SUBST_MACRO using new --quiet, --stdin and --stdout options</title>
<updated>2025-08-03T15:01:34+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-08-03T14:56:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=c5510d684e4879ab9a5295b4a1981888a4268627'/>
<id>c5510d684e4879ab9a5295b4a1981888a4268627</id>
<content type='text'>
* htbl.tes now reads from stdin and writes to stdout.
  Allows avoiding temporary `*.htbl` files
* grosciteco.tes still cannot be simplified since --stdin cannot be combined with
  passing command-line arguments (FIXME).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* htbl.tes now reads from stdin and writes to stdout.
  Allows avoiding temporary `*.htbl` files
* grosciteco.tes still cannot be simplified since --stdin cannot be combined with
  passing command-line arguments (FIXME).
</pre>
</div>
</content>
</entry>
</feed>
