From e5884ab2166ab5a03294baa54601b8785e6d9727 Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Fri, 6 Dec 2024 17:20:52 +0300 Subject: support the ::S anchored search (string comparison) command (and ::FD, ::FR, ::FS as well) * The colon modifier can now occur 2 times. Specifying `@` more than once or `:` more than twice is an error now. * Commands do not check for excess colon modifiers - almost every command would have to check it. Instead, a double colon will simply behave like a single colon on most commands. * All search commands inherit the anchored semantics, but it's not very useful in some combinations like -::S, ::N or ::FK. That's why the `::` variants are not documented everywhere. * The lexer.checkheader macro could be simplified and should also be faster now, speeding up startup. Eventually this macro can be made superfluous, e.g. by using 1:FB or 0,1^Q::S. --- tests/testsuite.at | 1 + 1 file changed, 1 insertion(+) (limited to 'tests') diff --git a/tests/testsuite.at b/tests/testsuite.at index 0bb0c08..00861dc 100644 --- a/tests/testsuite.at +++ b/tests/testsuite.at @@ -119,6 +119,7 @@ AT_CHECK([$SCITECO -e "@I/^Q\05/ J @:S/^Q^Q^Q\05/\"F(0/0)'"], 0, ignore, ignore) AT_CHECK([$SCITECO -e "@I/XXX/J -^X @:S/xxx/\"S(0/0)'"], 0, ignore, ignore) # Search mode should be local to the macro frame. AT_CHECK([$SCITECO -e "-^X @^Um{^X} Mm-0\"N(0/0)'"], 0, ignore, ignore) +AT_CHECK([$SCITECO -e "@I/XYZ/ J ::@S/X/\"F(0/0)' H::@S/Z/\"S(0/0)'"], 0, ignore, ignore) AT_CLEANUP AT_SETUP([Search and insertion ranges]) -- cgit v1.2.3