<feed xmlns='http://www.w3.org/2005/Atom'>
<title>sciteco/debian/control, branch libxcurses</title>
<subtitle>Scintilla-based Text Editor and COrrector</subtitle>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/'/>
<entry>
<title>bumped minimum GCC version to v8.1</title>
<updated>2025-08-26T14:42:52+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-08-26T14:42:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=f525d8f09ec0e60effe70623a19c700a3a202db0'/>
<id>f525d8f09ec0e60effe70623a19c700a3a202db0</id>
<content type='text'>
Scintilla v5.5.7 officially requires at least GCC v9, but if it's
only the charconv header that's required from newer releases, v8.1
will probably do as well. We assume so until proven wrong.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Scintilla v5.5.7 officially requires at least GCC v9, but if it's
only the charconv header that's required from newer releases, v8.1
will probably do as well. We assume so until proven wrong.
</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>Debian: explicitly depend on a C compiler as well</title>
<updated>2025-08-14T12:56:27+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-08-14T12:56:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=635ff6ecb2a172003ec614cade4cb1c683bb968e'/>
<id>635ff6ecb2a172003ec614cade4cb1c683bb968e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>added tutorial document, which is automatically loaded on the first invocation</title>
<updated>2025-03-31T00:23:06+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-03-31T00:23:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=6afa02a161493c646e64fb6afca13de7d33fd699'/>
<id>6afa02a161493c646e64fb6afca13de7d33fd699</id>
<content type='text'>
* This is rendered with ms, so we now need the entire groff on Debian.
  This is not a big deal as it just adds a few kilobytes of build-time dependencies.
  Most platforms do not allow installation of some "groff-base" package anyway
  and always draw in the entire package.
* sciteco.tmac has been extended to disable page breaks on ms.
* The tutorial is installed like any other woman page and can be invoked
  interactively with ?tutorial$.
* It is optimized to be still usable on a plain 80x24 terminal.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* This is rendered with ms, so we now need the entire groff on Debian.
  This is not a big deal as it just adds a few kilobytes of build-time dependencies.
  Most platforms do not allow installation of some "groff-base" package anyway
  and always draw in the entire package.
* sciteco.tmac has been extended to disable page breaks on ms.
* The tutorial is installed like any other woman page and can be invoked
  interactively with ?tutorial$.
* It is optimized to be still usable on a plain 80x24 terminal.
</pre>
</div>
</content>
</entry>
<entry>
<title>rename sample.teco_ini to fallback.teco_ini and mung it by default</title>
<updated>2025-03-03T20:35:04+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2025-03-02T22:44:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=1b907dae072f2aa93d75d8c056a9bd02555a17f8'/>
<id>1b907dae072f2aa93d75d8c056a9bd02555a17f8</id>
<content type='text'>
* After installation, SciTECO will therefore start into a more userfriendly mode
  even if the user does not create a custom ~/.teco_ini.
  It is hoped that this will scare away less of new users, who
  are not willing to read through all of the documentation.
  Still, users are warned in the absence of ~/.teco_ini.
  This warning however, might not be immediately visible, especially
  not when running gsciteco without an attached console.
  (This will change once I redo the UI and allow a number of messages
  to be queued in the message area.)
* Theoretically, you could also just extend fallback.teco_ini from ~/.teco_ini,
  but that would require installing it into $SCITECOPATH.
* Since the fallback profile will now be munged automatically
  on a wide range of systems, we set up xclip only when detecting X11
  ($DISPLAY is non-empty).
  E.g. when running under Wayland or the Linux console, you still won't
  get the clipboard registers, which is probably better than having the
  clipboard operations fail once you try to use them.
* xclip is now "suggested" on Debian/Ubuntu.
  Unfortunately we cannot pull it in only in the presence of X11.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* After installation, SciTECO will therefore start into a more userfriendly mode
  even if the user does not create a custom ~/.teco_ini.
  It is hoped that this will scare away less of new users, who
  are not willing to read through all of the documentation.
  Still, users are warned in the absence of ~/.teco_ini.
  This warning however, might not be immediately visible, especially
  not when running gsciteco without an attached console.
  (This will change once I redo the UI and allow a number of messages
  to be queued in the message area.)
* Theoretically, you could also just extend fallback.teco_ini from ~/.teco_ini,
  but that would require installing it into $SCITECOPATH.
* Since the fallback profile will now be munged automatically
  on a wide range of systems, we set up xclip only when detecting X11
  ($DISPLAY is non-empty).
  E.g. when running under Wayland or the Linux console, you still won't
  get the clipboard registers, which is probably better than having the
  clipboard operations fail once you try to use them.
* xclip is now "suggested" on Debian/Ubuntu.
  Unfortunately we cannot pull it in only in the presence of X11.
</pre>
</div>
</content>
</entry>
<entry>
<title>Debian: disabled parallel builds when running the test suite</title>
<updated>2024-12-28T01:01:18+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2024-12-28T00:58:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=9f9b31685d612731c2b3064beb9fa149f4b6e76a'/>
<id>9f9b31685d612731c2b3064beb9fa149f4b6e76a</id>
<content type='text'>
* Hopefully makes the log easier to read in case of failures.
  There may still be 2 runs concurrently since we build Curses and Gtk in parallel.
* Updated homepage.
* Ubuntu plucky builds are failing.
  See https://launchpadlibrarian.net/765999455/buildlog_ubuntu-plucky-amd64.sciteco_2.3.0-0ppa1~plucky1_BUILDING.txt.gz
  This may have been a spurious failure due to xvfb-run.
  It may be less likely with --no-parallel.
  Theoretically we could bump the Debian package version in order to test that,
  but the PPA is practically not used by anybody anyway.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Hopefully makes the log easier to read in case of failures.
  There may still be 2 runs concurrently since we build Curses and Gtk in parallel.
* Updated homepage.
* Ubuntu plucky builds are failing.
  See https://launchpadlibrarian.net/765999455/buildlog_ubuntu-plucky-amd64.sciteco_2.3.0-0ppa1~plucky1_BUILDING.txt.gz
  This may have been a spurious failure due to xvfb-run.
  It may be less likely with --no-parallel.
  Theoretically we could bump the Debian package version in order to test that,
  but the PPA is practically not used by anybody anyway.
</pre>
</div>
</content>
</entry>
<entry>
<title>prefer libncursesw (widechar variant) (refs #5)</title>
<updated>2024-09-09T16:17:03+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2024-08-28T12:03:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=f79a6f65acde9753ea65887e0e0d4bc7f76ff52b'/>
<id>f79a6f65acde9753ea65887e0e0d4bc7f76ff52b</id>
<content type='text'>
* Some platforms like Ubuntu actually ship widechar and non-widechar versions
  of ncurses with different pkg-config files.
  Other platforms like FreeBSD will ship an "ncursesw" and "ncurses" pkg-config file
  but both point to the same wide-char library anyway.
* Currently we are not using wide-char APIs to ensure maximum compatibility even with
  embedded systems where ncurses might be built without widechar support.
  But in order to handle Unicode correctly, we still need to link against the widechar version
  of ncurses (if available).
* Compilation on platforms without a widechar ncurses is now handled by the common
  AC_CHECK_LIB() fallback (which might actually find a widechar version anyway if it just
  didn't install the pkg-config file).
  If necessary, we could also check for the "ncurses" package if "ncursesw" is not found.
* This fixes Unicode display and input on Ubuntu.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Some platforms like Ubuntu actually ship widechar and non-widechar versions
  of ncurses with different pkg-config files.
  Other platforms like FreeBSD will ship an "ncursesw" and "ncurses" pkg-config file
  but both point to the same wide-char library anyway.
* Currently we are not using wide-char APIs to ensure maximum compatibility even with
  embedded systems where ncurses might be built without widechar support.
  But in order to handle Unicode correctly, we still need to link against the widechar version
  of ncurses (if available).
* Compilation on platforms without a widechar ncurses is now handled by the common
  AC_CHECK_LIB() fallback (which might actually find a widechar version anyway if it just
  didn't install the pkg-config file).
  If necessary, we could also check for the "ncurses" package if "ncursesw" is not found.
* This fixes Unicode display and input on Ubuntu.
</pre>
</div>
</content>
</entry>
<entry>
<title>Debian: updated/modernized config files</title>
<updated>2023-06-20T14:40:54+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2023-06-20T03:03:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=fe9e438e3302b4078e18f1591eb81296da104d1a'/>
<id>fe9e438e3302b4078e18f1591eb81296da104d1a</id>
<content type='text'>
* This resolves must lintian warnings and errors.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* This resolves must lintian warnings and errors.
</pre>
</div>
</content>
</entry>
<entry>
<title>fixed Debian packages: don't use curly brace expansions as they are not portable</title>
<updated>2021-10-12T07:43:35+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2021-10-12T07:06:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=da1a6507a826acbdfc2f492027efe0c48cc790b6'/>
<id>da1a6507a826acbdfc2f492027efe0c48cc790b6</id>
<content type='text'>
* fixed some Debian lintian warnings
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* fixed some Debian lintian warnings
</pre>
</div>
</content>
</entry>
<entry>
<title>upgraded to Scintilla 5.1.3 and Scinterm 3.1</title>
<updated>2021-10-11T05:02:05+00:00</updated>
<author>
<name>Robin Haberkorn</name>
<email>robin.haberkorn@googlemail.com</email>
</author>
<published>2021-10-11T05:02:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.fmsbw.de/sciteco/commit/?id=6e67f5a682ff46d69888fec61b94bf45cec46721'/>
<id>6e67f5a682ff46d69888fec61b94bf45cec46721</id>
<content type='text'>
* Previous Scintilla version was 3.6.4 and Scinterm was 1.7 (with lots of custom patches).
  All of the patches are now either irrelevant or have been merged upstream.
* Since Scintilla 5 requires C++17, this increases the minimum GCC version at least
  to 5.0. We may actually require even newer versions.
* I could not upgrade the scintilla-mirror (which was imported from Mercurial),
  so the old sciteco-dev branch was renamed to sciteco-dev-pre-v2.0.0,
  master was deleted and I reimported the entire Scintilla repo using
  git-remote-hg.
  This means that scintilla-mirror now contains two entirely separate trees.
  But it is still possible to clone old SciTECO repos.
* The strategy/workflow of maintaining hotfix branches on scintilla-mirror has been changed.
  Instead of having one sciteco-dev branch that is rebased onto new Scintilla upstream
  releases and tagging SciTECO releases in scintilla-mirror (to keep the commits referenced),
  we now create a branch for every Scintilla version we are based on (eg. sciteco-rel-5-1-3).
  This branch is never rebased or deleted. Therefore, we are guaranteed to be able to
  clone arbitrary SciTECO repo commits - not only releases.
  Releases no longer have to be tagged in scintilla-mirror.
  On the downside, fixup commits may accumulate in these new branches.
  They can only be squashed once a new branch for a new Scintilla release is created
  (e.g. by cherry-picking followed by rebase).
* Scinterm does no longer have to reside in the Scintilla subdirectory,
  so we added it as a regular submodule.
  There are no more recursive submodules.
  The Scinterm build system has not been improved at all, but we use
  a trick based on VPATH to build Scinterm in scintilla/bin/.
* Scinterm is now in Git and we reference the upstream repo for the
  time being.
  We might mirror it and apply the same branching workflow as with Scintilla
  if necessary.
  The scinterm-mirror repository still exists but has not been touched.
  We will also have to rewrite its master branch as it was a non-reproducible
  Mercurial import.
* Scinterm now also comes with patches for Scintilla which we simply applied
  on our sciteco-rel-5-1-3 branch.
* Scintilla 5 outsourced its lexers into the Lexilla project.
  We added it as yet another submodule.
* All submodules have been moved into contrib/.
* The Scintilla API for setting lexers has consequently changed.
  We now have to call SCI_SETILEXER(0, CreateLexer(name)).
  As I did not want to introduce a separate command for setting lexers,
  &lt;ES&gt; has been extended to allow setting lexers by name with the SCI_SETILEXER
  message which effectively replaces SCI_SETLEXERLANGUAGE.
* The lexer macros (SCLEX_...) no longer serve any purpose - they weren't used
  in the SciTECO standard library anyway - and have consequently been removed
  from symbols-scilexer.c.
  The style macros from SciLexer.h (SCE_...) are theoretically still useful - even
  though they are not used by our current color schemes - and have therefore been
  retained. They can be specified as wParam in &lt;ES&gt;.
* &lt;ES&gt; no longer allows symbolic constants for lParam.
  This never made any sense since all supported symbols were always wParam.
* Scinterm supports new native cursor modes.
  They are not used for the time being and the previous CARETSTYLE_BLOCK_AFTER
  caret style is configured by default.
  It makes no sense to enable native cursor modes now since the
  command line should have a native cursor but is not yet a Scintilla view.
* The Scintilla upgrade performed much worse than before,
  so some optimizations will be necessary.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Previous Scintilla version was 3.6.4 and Scinterm was 1.7 (with lots of custom patches).
  All of the patches are now either irrelevant or have been merged upstream.
* Since Scintilla 5 requires C++17, this increases the minimum GCC version at least
  to 5.0. We may actually require even newer versions.
* I could not upgrade the scintilla-mirror (which was imported from Mercurial),
  so the old sciteco-dev branch was renamed to sciteco-dev-pre-v2.0.0,
  master was deleted and I reimported the entire Scintilla repo using
  git-remote-hg.
  This means that scintilla-mirror now contains two entirely separate trees.
  But it is still possible to clone old SciTECO repos.
* The strategy/workflow of maintaining hotfix branches on scintilla-mirror has been changed.
  Instead of having one sciteco-dev branch that is rebased onto new Scintilla upstream
  releases and tagging SciTECO releases in scintilla-mirror (to keep the commits referenced),
  we now create a branch for every Scintilla version we are based on (eg. sciteco-rel-5-1-3).
  This branch is never rebased or deleted. Therefore, we are guaranteed to be able to
  clone arbitrary SciTECO repo commits - not only releases.
  Releases no longer have to be tagged in scintilla-mirror.
  On the downside, fixup commits may accumulate in these new branches.
  They can only be squashed once a new branch for a new Scintilla release is created
  (e.g. by cherry-picking followed by rebase).
* Scinterm does no longer have to reside in the Scintilla subdirectory,
  so we added it as a regular submodule.
  There are no more recursive submodules.
  The Scinterm build system has not been improved at all, but we use
  a trick based on VPATH to build Scinterm in scintilla/bin/.
* Scinterm is now in Git and we reference the upstream repo for the
  time being.
  We might mirror it and apply the same branching workflow as with Scintilla
  if necessary.
  The scinterm-mirror repository still exists but has not been touched.
  We will also have to rewrite its master branch as it was a non-reproducible
  Mercurial import.
* Scinterm now also comes with patches for Scintilla which we simply applied
  on our sciteco-rel-5-1-3 branch.
* Scintilla 5 outsourced its lexers into the Lexilla project.
  We added it as yet another submodule.
* All submodules have been moved into contrib/.
* The Scintilla API for setting lexers has consequently changed.
  We now have to call SCI_SETILEXER(0, CreateLexer(name)).
  As I did not want to introduce a separate command for setting lexers,
  &lt;ES&gt; has been extended to allow setting lexers by name with the SCI_SETILEXER
  message which effectively replaces SCI_SETLEXERLANGUAGE.
* The lexer macros (SCLEX_...) no longer serve any purpose - they weren't used
  in the SciTECO standard library anyway - and have consequently been removed
  from symbols-scilexer.c.
  The style macros from SciLexer.h (SCE_...) are theoretically still useful - even
  though they are not used by our current color schemes - and have therefore been
  retained. They can be specified as wParam in &lt;ES&gt;.
* &lt;ES&gt; no longer allows symbolic constants for lParam.
  This never made any sense since all supported symbols were always wParam.
* Scinterm supports new native cursor modes.
  They are not used for the time being and the previous CARETSTYLE_BLOCK_AFTER
  caret style is configured by default.
  It makes no sense to enable native cursor modes now since the
  command line should have a native cursor but is not yet a Scintilla view.
* The Scintilla upgrade performed much worse than before,
  so some optimizations will be necessary.
</pre>
</div>
</content>
</entry>
</feed>
