summaryrefslogtreecommitdiff
path: root/Src/lex.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/lex.c')
-rw-r--r--Src/lex.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/Src/lex.c b/Src/lex.c
index 1eb0bc7d7..6b9e94289 100644
--- a/Src/lex.c
+++ b/Src/lex.c
@@ -1871,6 +1871,25 @@ zshlex_raw_back(void)
lexbuf_raw.len--;
}
+/**/
+char *
+zshlex_raw_mark(int offset)
+{
+ if (!lex_add_raw)
+ return NULL;
+ return lexbuf_raw.ptr + offset;
+}
+
+/**/
+void
+zshlex_raw_back_to_mark(char *mark)
+{
+ if (!lex_add_raw)
+ return;
+ lexbuf_raw.len -= lexbuf_raw.ptr - mark;
+ lexbuf_raw.ptr = mark;
+}
+
/*
* Skip (...) for command-style substitutions: $(...), <(...), >(...)
*