diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2025-08-06 16:46:37 +0300 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2025-08-06 16:46:37 +0300 |
commit | 280cb9da39fc7b5357f6071926d511394f6d0152 (patch) | |
tree | cdca852694fd3e4cc9293c374d16ac69d9be01ea /tests | |
parent | c5510d684e4879ab9a5295b4a1981888a4268627 (diff) | |
download | sciteco-280cb9da39fc7b5357f6071926d511394f6d0152.tar.gz |
command-line arguments are no longer passed via the unnamed buffer, but via special Q-registers ^Ax
* 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.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/testsuite.at | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/tests/testsuite.at b/tests/testsuite.at index e65cc1c..3a2fc2e 100644 --- a/tests/testsuite.at +++ b/tests/testsuite.at @@ -420,14 +420,23 @@ AT_CLEANUP AT_BANNER([Standard library]) +AT_SETUP([Option parser]) +AT_CHECK([[$SCITECO -e "@EI'^EQ[\$SCITECOPATH]/getopt.tes' @^U[optstring]/XY/ M[getopt]-3\"N(0/0)' \ + Q[getopt.X]+1\"N(0/0)' :Q[^A3]-2\"N(0/0)' :Q[^A4]-6\"N(0/0)'" \ + -- -X -- -Y foobar]], 0, ignore, ignore) +AT_CHECK([[$SCITECO -e "@EI'^EQ[\$SCITECOPATH]/getopt.tes' @^U[optstring]/F:z::X/ M[getopt]-4\"N(0/0)' \ + Q[getopt.X]+1\"N(0/0)' :Q[getopt.F]-8\"N(0/0)' :Q[getopt.z]\"N(0/0)'" \ + -- -X -Ffilename -z]], 0, ignore, ignore) +AT_CLEANUP + AT_SETUP([Command line opener]) AT_DATA([data.123], [0123456789 9876543210 ]) -AT_CHECK([[$SCITECO -e "@EI'^EQ[\$SCITECOPATH]/opener.tes' M[opener] -EF .-13\"N(0/0)'" +2,3 data.123]], 0, ignore, ignore) -AT_CHECK([[$SCITECO -e "@EI'^EQ[\$SCITECOPATH]/opener.tes' M[opener] -EF .-11\"N(0/0)'" data.123:2]], 0, ignore, ignore) +AT_CHECK([[$SCITECO -e "@EI'^EQ[\$SCITECOPATH]/opener.tes' M[opener] EF .-13\"N(0/0)'" +2,3 data.123]], 0, ignore, ignore) +AT_CHECK([[$SCITECO -e "@EI'^EQ[\$SCITECOPATH]/opener.tes' M[opener] EF .-11\"N(0/0)'" data.123:2]], 0, ignore, ignore) # `-S` stops processing of special arguments -AT_CHECK([[$SCITECO -e "@EI'^EQ[\$SCITECOPATH]/opener.tes' M[opener] -EF EJ-2\"N(0/0)'" -S +1 data.123]], 0, ignore, ignore) +AT_CHECK([[$SCITECO -e "@EI'^EQ[\$SCITECOPATH]/opener.tes' M[opener] EF EJ-2\"N(0/0)'" -S +1 data.123]], 0, ignore, ignore) AT_CLEANUP AT_BANNER([Regression Tests]) |