summaryrefslogtreecommitdiffstats
path: root/ChangeLog
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2011-11-23 10:46:32 -0800
committerKaz Kylheku <kaz@kylheku.com>2011-11-23 10:46:32 -0800
commitc1202a71a068c13a17b69348a6d7736b8855be0c (patch)
treeeb2121adb2e75b6d2a0838d152a8c5b6c161ac1f /ChangeLog
parente1174f5ea6ff0a51738830e10a92819135a22b32 (diff)
downloadtxr-c1202a71a068c13a17b69348a6d7736b8855be0c.tar.gz
txr-c1202a71a068c13a17b69348a6d7736b8855be0c.tar.bz2
txr-c1202a71a068c13a17b69348a6d7736b8855be0c.zip
Semantics change. If a variable is followed by a mixture
of text and regular expressions, that whole mixture is considered to follow the variable and used for matching. The earlier semantics change whereby a single unescaped space denotes the regular expression / +/ broke the simple case @a word. It caused the @a to be followed not by the text " word" but by just the regular expression element. With this change @a word means that a is followed by the regex / +/ and "word". * match.c (text_s): New symbol variable. (h_text): New function. (syms_init): Initialize new symbol variable. (dir_tables_init): Hook h_text into horizontal directives table. * match.h (text_s): Declared. * parser.y (text, texts): New nonterminals. (elem): TEXT, SPACE and regex are now handled under texts grammar production. All texts are run together and produce an item which looks like (text items ...). * txr.1, RELNOTES: Updated. * txr.c (remove_hash_bang_line): Updated to find #! buried in (text ...) syntax.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog32
1 files changed, 32 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index ad2864d0..e51f06ba 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,35 @@
+2011-11-23 Kaz Kylheku <kaz@kylheku.com>
+
+ Semantics change. If a variable is followed by a mixture
+ of text and regular expressions, that whole mixture is
+ considered to follow the variable and used for matching.
+
+ The earlier semantics change whereby a single unescaped
+ space denotes the regular expression / +/ broke the
+ simple case @a word. It caused the @a to be followed
+ not by the text " word" but by just the regular expression
+ element.
+
+ With this change @a word means that a is followed by
+ the regex / +/ and "word".
+
+ * match.c (text_s): New symbol variable.
+ (h_text): New function.
+ (syms_init): Initialize new symbol variable.
+ (dir_tables_init): Hook h_text into horizontal directives table.
+
+ * match.h (text_s): Declared.
+
+ * parser.y (text, texts): New nonterminals.
+ (elem): TEXT, SPACE and regex are now handled under texts
+ grammar production. All texts are run together and produce
+ an item which looks like (text items ...).
+
+ * txr.1, RELNOTES: Updated.
+
+ * txr.c (remove_hash_bang_line): Updated to find #! buried
+ in (text ...) syntax.
+
2011-11-22 Kaz Kylheku <kaz@kylheku.com>
* configure: Fix environ test case for C++.