<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sciteco/doc/grosciteco.tes, 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>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>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>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>fixed an asterisk in the &lt;EN&gt; manpage entry</title>
<updated>2025-06-27T14:10:14+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-06-27T14:10:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=06b4da0de1388eb8403d3ad88915c117ab84877f'/>
<id>06b4da0de1388eb8403d3ad88915c117ab84877f</id>
<content type='text'>
* We have to avoid `/*` within comments, so one of the two characters will
  have to use a named glyph.
  \[**] is actually a special symbol, which wasn't noticed until supporting Unicode.
  There is no named glyph for the plain asterisk.
  Thus we now use \[sl] to escape the `/` character.
  `/\c*` might have also worked.
* grosciteco now supports the `sl` glyph.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* We have to avoid `/*` within comments, so one of the two characters will
  have to use a named glyph.
  \[**] is actually a special symbol, which wasn't noticed until supporting Unicode.
  There is no named glyph for the plain asterisk.
  Thus we now use \[sl] to escape the `/` character.
  `/\c*` might have also worked.
* grosciteco now supports the `sl` glyph.
</pre>
</div>
</content>
</entry>
<entry>
<title>&lt;EI&gt; has been repurposed and is the macro file inclusion (indirect file) command now</title>
<updated>2025-05-24T14:22:52+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-05-24T13:24:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=6e3da17a2fae11af9ae00d9b59bd0d752022e16b'/>
<id>6e3da17a2fae11af9ae00d9b59bd0d752022e16b</id>
<content type='text'>
* Improves DEC TECO-11 compatibility.
* &lt;EM&gt; is still supported as a synonym, but considered deprecated and is no longer documented.
  A warning is printed when invoked.
  It can be repurposed at any time in the future.
* `EI$` is not yet supported.
  I am unsure whether this makes any sense.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Improves DEC TECO-11 compatibility.
* &lt;EM&gt; is still supported as a synonym, but considered deprecated and is no longer documented.
  A warning is printed when invoked.
  It can be repurposed at any time in the future.
* `EI$` is not yet supported.
  I am unsure whether this makes any sense.
</pre>
</div>
</content>
</entry>
<entry>
<title>grosciteco: folding in woman pages</title>
<updated>2025-05-02T08:59:05+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-05-01T20:13:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=cb1ef4788be0117f57497299ba008652f62cba24'/>
<id>cb1ef4788be0117f57497299ba008652f62cba24</id>
<content type='text'>
* Support fold level configuration using `.SCITECO_FOLDLEVEL`.
  This sets the current output line as the fold header and all subsequent lines
  with the given fold level (until another `.SCITECO_FOLDLEVEL` instruction
  is encountered).
* This is now done automatically for man's SH and SS macros,
  so the man-page based woman pages provide folding.
* The folding margin is therefore now always enabled in fallback.teco_ini.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Support fold level configuration using `.SCITECO_FOLDLEVEL`.
  This sets the current output line as the fold header and all subsequent lines
  with the given fold level (until another `.SCITECO_FOLDLEVEL` instruction
  is encountered).
* This is now done automatically for man's SH and SS macros,
  so the man-page based woman pages provide folding.
* The folding margin is therefore now always enabled in fallback.teco_ini.
</pre>
</div>
</content>
</entry>
<entry>
<title>fixup: fixed monospace sections in womanpages when lexer.font is not customized (refs #34)</title>
<updated>2025-04-22T23:07:59+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-04-22T23:07:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=01419ac9b5c8961e240feaa9f5d160a633f801ed'/>
<id>01419ac9b5c8961e240feaa9f5d160a633f801ed</id>
<content type='text'>
* In the grosciteco-generated .woman.tec files, the fonts were only
  set on the monospaced styles if lexer.font was set since it was
  undefined by default.
  We'd need a lare IF-ELSE statement to handle that in womanpages
  since woman.tes changes the default font to a variable-width font.
  Just leaving the default font, therefore won't work.
* We now always initialize lexer.font in lexer.tes.
  You no longer have to check for its existance.
* Consequently, you can no longer set lexer.font *before* munging
  lexer.tes because it will be overwritten.
  At least not without additional checks.
  Such a design is not suggested by fallback.teco_ini, though.
* Fixes monospaced sections in the tutorial and other womanpages on Gtk.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* In the grosciteco-generated .woman.tec files, the fonts were only
  set on the monospaced styles if lexer.font was set since it was
  undefined by default.
  We'd need a lare IF-ELSE statement to handle that in womanpages
  since woman.tes changes the default font to a variable-width font.
  Just leaving the default font, therefore won't work.
* We now always initialize lexer.font in lexer.tes.
  You no longer have to check for its existance.
* Consequently, you can no longer set lexer.font *before* munging
  lexer.tes because it will be overwritten.
  At least not without additional checks.
  Such a design is not suggested by fallback.teco_ini, though.
* Fixes monospaced sections in the tutorial and other womanpages on Gtk.
</pre>
</div>
</content>
</entry>
<entry>
<title>Gtk: monospaced sections in womanpages now respect lexer.font and variable-width font is configurable via lexer.woman.font (refs #34)</title>
<updated>2025-04-22T17:50:48+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-04-22T17:50:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=93d3cbd390e65576d0c8740233b0a7569d9bdd89'/>
<id>93d3cbd390e65576d0c8740233b0a7569d9bdd89</id>
<content type='text'>
* grosciteco was just hardcoding "Monospace", regardless of what was configured via lexer.font in ~/.teco_ini
* The variable-width font used for ordinary "womanpage" body texts was hardcoded to "Serif".
  It is now configurable via the lexer.woman.font register.
* There is a difference, though:
  lexer.font has no default value and must therefore be checked everywhere.
  This is so you can set it even before munging lexer.tes.
  lexer.woman.font however has a default (Serif), so it can only be overridden after
  munging lexer.tes.
  Perhaps it would be easier and more consistent to have a default for lexer.font as well.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* grosciteco was just hardcoding "Monospace", regardless of what was configured via lexer.font in ~/.teco_ini
* The variable-width font used for ordinary "womanpage" body texts was hardcoded to "Serif".
  It is now configurable via the lexer.woman.font register.
* There is a difference, though:
  lexer.font has no default value and must therefore be checked everywhere.
  This is so you can set it even before munging lexer.tes.
  lexer.woman.font however has a default (Serif), so it can only be overridden after
  munging lexer.tes.
  Perhaps it would be easier and more consistent to have a default for lexer.font as well.
</pre>
</div>
</content>
</entry>
<entry>
<title>grosciteco: added the `oq` and `cq` glyphs</title>
<updated>2025-03-31T01:05:09+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-03-31T01:05:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=2440499f741447589f2c83dfe34c09e3ad08c9e1'/>
<id>2440499f741447589f2c83dfe34c09e3ad08c9e1</id>
<content type='text'>
This fixes building of the new tutorial.woman on Ubuntu.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This fixes building of the new tutorial.woman on Ubuntu.
</pre>
</div>
</content>
</entry>
<entry>
<title>added `@W`, `@P`, `@V` and `@Y` command variants</title>
<updated>2025-03-29T12:29:34+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-03-29T12:15:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=ca0d7656b606703f1b5b52e59f0b46ca0038477e'/>
<id>ca0d7656b606703f1b5b52e59f0b46ca0038477e</id>
<content type='text'>
* They swap the default order of skipping characters.
  For positive arguments: first non-word chars, then word chars.
* This is especially useful after executing the non-at-modified versions.
  For instance, at the beginning of a word, `@W` jumps to its end.
  `@V` would delete the remainder of the word.
* Since they have to evaluate the at-modifier, which has syntactic
  significance, the command implementations can no longer use
  transition tables, so they are in the switch-statements instead.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* They swap the default order of skipping characters.
  For positive arguments: first non-word chars, then word chars.
* This is especially useful after executing the non-at-modified versions.
  For instance, at the beginning of a word, `@W` jumps to its end.
  `@V` would delete the remainder of the word.
* Since they have to evaluate the at-modifier, which has syntactic
  significance, the command implementations can no longer use
  transition tables, so they are in the switch-statements instead.
</pre>
</div>
</content>
</entry>
</feed>
