summaryrefslogtreecommitdiff
path: root/input.c
diff options
context:
space:
mode:
authortgoodwin <tgoodwin>1998-02-11 14:04:49 +0000
committerToby Goodwin <toby@paccrat.org>2015-05-16 21:23:02 +0100
commit37d2cf03f1f15f57432d3d4fb0c3c451438afdb0 (patch)
tree08c497ec516bf3012d8d209674b1f3da0d853e8e /input.c
parent034adee7e777b3f841eebed9fe827689721847c9 (diff)
fix prompting for readline
Diffstat (limited to 'input.c')
-rw-r--r--input.c20
1 files changed, 17 insertions, 3 deletions
diff --git a/input.c b/input.c
index 4524638..d8f19c1 100644
--- a/input.c
+++ b/input.c
@@ -280,10 +280,11 @@ extern Node *doit(bool execit) {
}
if ((s = varlookup("prompt")) != NULL) {
#if READLINE
- prompt = s->w;
-#else
- fprint(2, "%s", s->w);
+ if (istack->fd == 0)
+ prompt = s->w;
+ else
#endif
+ fprint(2, "%s", s->w);
prompt2 = (s->n == NULL ? "" : s->n->w);
}
}
@@ -361,3 +362,16 @@ extern void closefds() {
i->fd = -1;
}
}
+
+extern void print_prompt2() {
+ lineno++;
+ if (interactive) {
+#if READLINE
+ if (istack->fd == 0)
+ prompt = prompt2;
+ else
+#endif
+ fprint(2, "%s", prompt2);
+ }
+}
+