]> git.eshelyaron.com Git - emacs.git/commit
Switch term.el to lexical binding, and clean up code a bit
authorNoam Postavsky <npostavs@gmail.com>
Thu, 18 Jan 2018 13:22:47 +0000 (08:22 -0500)
committerNoam Postavsky <npostavs@gmail.com>
Fri, 19 Jan 2018 03:25:35 +0000 (22:25 -0500)
commit47019a521f774fbd13441e178a6a82c9989b9912
treeaa36a88fe09995b83b18ca615d7e7df78690fc27
parent256bd99a8bfae91a3c91ae20166af45918d1e986
Switch term.el to lexical binding, and clean up code a bit

* lisp/term.el (term-terminal-state): Remove.
(term-do-line-wrapping): New variable, equivalent to state 1.
(term-terminal-previous-parameter, term-terminal-parameter)
(term-terminal-more-parameters)
(term-terminal-previous-parameter-2)
(term-terminal-previous-parameter-3)
(term-terminal-previous-parameter-4): Remove.
(term-move-to-column): New function, for absolute column movement.
(term-control-seq-regexp, term-control-seq-prefix-regexp): New
constants.
(term-emulate-terminal, term-pager-discard): Use them via string-match
instead of implementing a state machine in elisp.  Handle all
unprocessed input via term-terminal-undecoded-bytes (this solves
Bug#17231).
(term-handle-ansi-escape): Take a list of escape sequence parameters
as an argument, rather than via dynamic variables.
(term-erase-in-display): Consult the argument, not the dynamically
bound term-terminal-parameter (which happened to be the same as the
argument up until now).
lisp/term.el