[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/eat 978aff9166 2/3: Implement terminal parameters
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/eat 978aff9166 2/3: Implement terminal parameters |
Date: |
Fri, 9 Dec 2022 15:58:44 -0500 (EST) |
branch: elpa/eat
commit 978aff91668499354372d5088607c73d3cc080b2
Author: Akib Azmain Turja <akib@disroot.org>
Commit: Akib Azmain Turja <akib@disroot.org>
Implement terminal parameters
* eat.el (eat--t-term): New slot: 'params'.
* eat.el (eat-term-parameter): New function and generalized
variable.
* eat.el (eat-set-term-parameter): New function.
---
eat.el | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/eat.el b/eat.el
index 1a4d1e0d17..d76f7414e7 100644
--- a/eat.el
+++ b/eat.el
@@ -831,7 +831,8 @@ Nil when not in alternative display mode.")
(focus-event-mode nil :documentation "Whether to send focus event.")
(cut-buffers
(1value (make-vector 10 nil))
- :documentation "Cut buffers."))
+ :documentation "Cut buffers.")
+ (params nil :documentation "Hash table of terminal parameters."))
(defvar eat--t-term nil
"The current terminal.
@@ -3157,6 +3158,20 @@ DATA is the selection data encoded in base64."
(eat--t-with-env terminal
(eat--t-reset))))
+(defun eat-term-parameter (terminal parameter)
+ "Return the value of parameter PARAMETER of TERMINAL."
+ (cdr (assq parameter (eat--t-term-params terminal))))
+
+(defun eat-term-set-parameter (terminal parameter value)
+ "Set the value of parameter PARAMETER of TERMINAL to VALUE."
+ (let ((pair (assq parameter (eat--t-term-params terminal))))
+ (if pair
+ (setcdr pair value)
+ (push (cons parameter value) (eat--t-term-params terminal)))))
+
+(gv-define-setter eat-term-parameter (value terminal parameter)
+ `(eat-term-set-parameter ,terminal ,parameter ,value))
+
(defun eat-term-input-function (terminal)
"Return the function used to send input from TERMINAL.