aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Neukirchen <chneukirchen@gmail.com>2016-08-04 19:12:20 +0200
committerChristian Neukirchen <chneukirchen@gmail.com>2016-08-04 19:12:20 +0200
commit26f694c91d04edeb374a53fad60d63a87c0bf065 (patch)
tree716e884d33b634671196ee37d83dc2d9d6e0f508
parentf628a10ff6c8e359036984c0a37a9cd1d3784914 (diff)
downloadmblaze-26f694c91d04edeb374a53fad60d63a87c0bf065.tar.gz
mscan: support \n and \t
-rw-r--r--mscan.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/mscan.c b/mscan.c
index 4023910..bf93d05 100644
--- a/mscan.c
+++ b/mscan.c
@@ -248,6 +248,7 @@ oneline(char *file)
nomsg:
flag1 = flag2 = flag3 = ' ';
*fromdec = 0;
+ flags = "";
snprintf(subjdec, sizeof subjdec, "\\_ %s", file);
lineno = 0;
}
@@ -256,6 +257,17 @@ nomsg:
char *f;
for (f = fflag; *f; f++) {
+ if (*f == '\\') {
+ f++;
+ switch (*f) {
+ case 'n': putchar('\n'); wleft = cols; break;
+ case 't': putchar('\t'); wleft -= (8 - wleft % 8); break;
+ default:
+ putchar('\\'); wleft--;
+ putchar(*f); wleft--;
+ }
+ continue;
+ }
if (*f != '%') {
putchar(*f);
wleft--;
@@ -277,7 +289,7 @@ nomsg:
if (!*f)
break;
- switch(*f) {
+ switch (*f) {
case '%':
putchar('%');
wleft--;