summaryrefslogtreecommitdiffstats
path: root/lisp/init-vterm.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/init-vterm.el')
-rw-r--r--lisp/init-vterm.el18
1 files changed, 12 insertions, 6 deletions
diff --git a/lisp/init-vterm.el b/lisp/init-vterm.el
index f0ebc55..47b0ca6 100644
--- a/lisp/init-vterm.el
+++ b/lisp/init-vterm.el
@@ -2,17 +2,23 @@
;;; Commentary:
;;; Code:
+(defun mpolden/theme-env-var (theme)
+ "Return the environment variable setting given THEME."
+ (concat "VTERM_THEME=" (if (symbolp theme)
+ (symbol-name theme)
+ theme)))
+
(defun mpolden/vterm-change-theme (theme)
"Change the theme in all Vterm buffers to THEME."
- (mapcar (lambda (buf)
- (with-current-buffer buf
- (vterm-send-string (concat "export VTERM_THEME=" theme "\n"))))
- (seq-filter (lambda (buf) (string-prefix-p "vterm: " (buffer-name buf)))
- (buffer-list))))
+ (let ((export-cmd (concat "export " (mpolden/theme-env-var theme) "\n")))
+ (mapcar (lambda (buf) (with-current-buffer buf
+ (vterm-send-string export-cmd)))
+ (seq-filter (lambda (buf) (string-prefix-p "vterm: " (buffer-name buf)))
+ (buffer-list)))))
(defun mpolden/vterm-set-theme (theme)
"Set the default Vterm theme to THEME."
- (let ((new-var (concat "VTERM_THEME=" theme)))
+ (let ((new-var (mpolden/theme-env-var theme)))
(setq vterm-environment
(seq-filter (lambda (var)
(unless (string-prefix-p "VTERM_THEME=" var)))