1) Newline in -e after s/// was eaten as "whitespace before flags"
2) \\ needs to be passed through to regex to avoid "trailing \" error and
"\\n" is not a newline.
// Check escaped end delimiter before printf style escapes.
if (from[1] == d) from++;
- else if (from[1]!='\\') {
+ else if (from[1]=='\\') *(to++) = *(from++);
+ else {
char c = unescape(from[1]);
if (c) {
for (line++; *line; line++) {
long l;
- if (isspace(*line)) continue;
+ if (isspace(*line) && *line != '\n') continue;
if (0 <= (l = stridx("igp", *line))) corwin->sflags |= 1<<l;
else if (!(corwin->sflags>>3) && 0<(l = strtol(line, &line, 10))) {