summaryrefslogtreecommitdiffstats
path: root/lib.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2016-01-12 06:38:11 -0800
committerKaz Kylheku <kaz@kylheku.com>2016-01-12 06:38:11 -0800
commite8a6a7a53407fd4c4adc37e8013baf9bc2e4d553 (patch)
tree856f86bb483d7aec190f9ea5422261c6639da221 /lib.c
parentd8b8365eb2f40cf3bad1815c349faa6e0b5aab93 (diff)
downloadtxr-e8a6a7a53407fd4c4adc37e8013baf9bc2e4d553.tar.gz
txr-e8a6a7a53407fd4c4adc37e8013baf9bc2e4d553.tar.bz2
txr-e8a6a7a53407fd4c4adc37e8013baf9bc2e4d553.zip
Print control chars in regexes using \x.
* lib.c (out_str_char): Static function becomes extern. * lib.h (out_str_char): Declared. * regex.c (puts_clear_flag, putc_clear_flag): New static functions. (print_class_char): Take semicolon flag argument. Use out_str_char to render characters not escaped locally. Clear the semicolon flag. (paren_print_rec): Take semicolon flag argument, and pass it down. Clear it when printing parentheses. (print_rec): Take semicolon flag argument, and pass down to lower level functions. Use putc_clear_flag and puts_clear_flag instead of put_string and put_char. Use out_str_char for char object not esaped locally. (regex_print): define semi_flag and pass it down to print_rec.
Diffstat (limited to 'lib.c')
-rw-r--r--lib.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib.c b/lib.c
index d6952482..9fb50a10 100644
--- a/lib.c
+++ b/lib.c
@@ -8264,7 +8264,7 @@ static val simple_qref_args_p(val args, val pos)
}
}
-static void out_str_char(wchar_t ch, val out, int *semi_flag)
+void out_str_char(wchar_t ch, val out, int *semi_flag)
{
if (*semi_flag && iswxdigit(ch))
put_char(chr(';'), out);