Function: lua-ts-inferior-lua
lua-ts-inferior-lua is an autoloaded, interactive and byte-compiled
function defined in lua-ts-mode.el.gz.
Signature
(lua-ts-inferior-lua)
Documentation
Run a Lua interpreter in an inferior process.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/lua-ts-mode.el.gz
;;;###autoload
(defun lua-ts-inferior-lua ()
"Run a Lua interpreter in an inferior process."
(interactive)
(if (not lua-ts-inferior-program)
(user-error "You must set `lua-ts-inferior-program' to use this command")
(unless (comint-check-proc lua-ts-inferior-buffer)
(apply #'make-comint-in-buffer
(string-replace "*" "" lua-ts-inferior-buffer)
lua-ts-inferior-buffer
lua-ts-inferior-program
lua-ts-inferior-startfile
lua-ts-inferior-options)
(when lua-ts-inferior-history
(set-process-sentinel (get-buffer-process lua-ts-inferior-buffer)
'lua-ts-inferior--write-history))
(with-current-buffer lua-ts-inferior-buffer
(setq-local comint-input-ignoredups t
comint-input-ring-file-name lua-ts-inferior-history
comint-prompt-read-only t
comint-prompt-regexp (rx bol
(literal lua-ts-inferior-prompt)
(1+ space)))
(comint-read-input-ring t)
(add-hook 'comint-preoutput-filter-functions
(lambda (string)
(if (equal string (concat lua-ts-inferior-prompt-continue " "))
string
(concat
;; Filter out the extra prompt characters that
;; accumulate in the output when sending regions
;; to the inferior process.
(replace-regexp-in-string
(rx bol
(* (literal lua-ts-inferior-prompt)
(? (literal lua-ts-inferior-prompt))
(1+ space))
(group (* nonl)))
"\\1" string)
;; Re-add the prompt for the next line.
lua-ts-inferior-prompt " ")))
nil t)))
(select-window (display-buffer lua-ts-inferior-buffer
'((display-buffer-reuse-window
display-buffer-pop-up-window)
(reusable-frames . t))))
(get-buffer-process (current-buffer))))