branch: externals/coterm commit 9e3e19b82e5514f6eb7733dad6defdb5bfa36e25 Author: m <> Commit: m <>
Add support for \e[L --- coterm.el | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/coterm.el b/coterm.el index 42919bd..897e63e 100644 --- a/coterm.el +++ b/coterm.el @@ -349,7 +349,28 @@ initialize it sensibly." (if (eolp) (if (eq 1 (car ctl-params)) (dirty)) (funcall proc-filt process - (make-string coterm--t-col ?\s))))))))))))) + (make-string coterm--t-col ?\s))))) + (?L ;; \E[L - insert lines (terminfo: il, il1) + ;; Remove from bottom + (let ((coterm--t-col 0) + end) + (dirty) + (let ((coterm--t-row coterm-t-height) ) + (coterm--t-approximate-pmark pmark) + (setq end (marker-position pmark))) + (let ((coterm--t-row + (max (- coterm-t-height + (car ctl-params)) + coterm--t-row))) + (coterm--t-approximate-pmark pmark) + (delete-region pmark end)) + (dirty) + ;; Insert new lines + (coterm--t-approximate-pmark pmark) + (unless (= pmark (point-max)) + (funcall proc-filt process + (make-string (car ctl-params) ?\n)))) + (dirty)))))))))) (cond ((setq match (string-match coterm-t-control-seq-prefix-regexp