aboutsummaryrefslogtreecommitdiff
path: root/vterm.el
diff options
context:
space:
mode:
authorLukas Fürmetz <fuermetz@mailbox.org>2019-01-27 18:17:46 +0100
committerLukas Fürmetz <fuermetz@mailbox.org>2019-01-27 18:34:18 +0100
commit46f222eeef6ae5820c91c3aa4f86d385dd126cbc (patch)
tree6976ae918e5426386e0caf27c84452cd5d57f348 /vterm.el
parent3929a9d573d89365fc68053824045ef654ef1146 (diff)
Adapt color handling to the latest libvtermupdate_libvterm
Diffstat (limited to 'vterm.el')
-rw-r--r--vterm.el125
1 files changed, 99 insertions, 26 deletions
diff --git a/vterm.el b/vterm.el
index 2641d76..2c41d50 100644
--- a/vterm.el
+++ b/vterm.el
@@ -81,52 +81,132 @@ for different shell. "
:type 'hook
:group 'vterm)
+(defface vterm-color-default-fg
+ '((t :foreground "white"))
+ "Foreground of the console."
+ :group 'vterm)
+
+(defface vterm-color-default-bg
+ '((t :background "black"))
+ "Background of the console."
+ :group 'vterm)
-(defface vterm
- '((t :inherit default))
- "Default face to use in Term mode."
+(defface vterm-color-black-fg
+ '((t :foreground "black"))
+ "Face used to render black color code."
:group 'vterm)
-(defface vterm-color-black
- '((t :foreground "black" :background "black"))
+(defface vterm-color-black-bg
+ '((t :background "black"))
"Face used to render black color code."
:group 'vterm)
-(defface vterm-color-red
- '((t :foreground "red3" :background "red3"))
+(defface vterm-color-red-fg
+ '((t :foreground "red3"))
+ "Face used to render red color code."
+ :group 'vterm)
+
+(defface vterm-color-red-bg
+ '((t :background "red3"))
"Face used to render red color code."
:group 'vterm)
-(defface vterm-color-green
- '((t :foreground "green3" :background "green3"))
+(defface vterm-color-green-fg
+ '((t :foreground "green3"))
"Face used to render green color code."
:group 'vterm)
-(defface vterm-color-yellow
- '((t :foreground "yellow3" :background "yellow3"))
+(defface vterm-color-green-bg
+ '((t :background "green3"))
+ "Face used to render green color code."
+ :group 'vterm)
+
+(defface vterm-color-yellow-fg
+ '((t :foreground "yellow3"))
"Face used to render yellow color code."
:group 'vterm)
-(defface vterm-color-blue
- '((t :foreground "blue2" :background "blue2"))
+(defface vterm-color-yellow-bg
+ '((t :background "yellow3"))
+ "Face used to render yellow color code."
+ :group 'vterm)
+
+(defface vterm-color-blue-fg
+ '((t :foreground "blue2"))
"Face used to render blue color code."
:group 'vterm)
-(defface vterm-color-magenta
- '((t :foreground "magenta3" :background "magenta3"))
+(defface vterm-color-blue-bg
+ '((t :background "blue2"))
+ "Face used to render yellow color code."
+ :group 'vterm)
+
+(defface vterm-color-magenta-fg
+ '((t :foreground "magenta3"))
"Face used to render magenta color code."
:group 'vterm)
-(defface vterm-color-cyan
- '((t :foreground "cyan3" :background "cyan3"))
+(defface vterm-color-magenta-bg
+ '((t :foreground "magenta3"))
+ "Face used to render magenta color code."
+ :group 'vterm)
+
+(defface vterm-color-cyan-fg
+ '((t :foreground "cyan3"))
+ "Face used to render cyan color code."
+ :group 'vterm)
+
+(defface vterm-color-cyan-bg
+ '((t :background "cyan3"))
"Face used to render cyan color code."
:group 'vterm)
-(defface vterm-color-white
- '((t :foreground "white" :background "white"))
+(defface vterm-color-white-fg
+ '((t :foreground "white"))
+ "Face used to render white color code."
+ :group 'vterm)
+
+(defface vterm-color-white-bg
+ '((t :background "white"))
"Face used to render white color code."
:group 'vterm)
+(defvar vterm-color-palette-fg [vterm-color-black-fg
+ vterm-color-red-fg
+ vterm-color-green-fg
+ vterm-color-yellow-fg
+ vterm-color-blue-fg
+ vterm-color-magenta-fg
+ vterm-color-cyan-fg
+ vterm-color-white-fg
+ vterm-color-black-fg
+ vterm-color-red-fg
+ vterm-color-green-fg
+ vterm-color-yellow-fg
+ vterm-color-blue-fg
+ vterm-color-magenta-fg
+ vterm-color-cyan-fg
+ vterm-color-white-fg]
+ "Color palette for the foreground.")
+
+(defvar vterm-color-palette-bg [vterm-color-black-bg
+ vterm-color-red-bg
+ vterm-color-green-bg
+ vterm-color-yellow-bg
+ vterm-color-blue-bg
+ vterm-color-magenta-bg
+ vterm-color-cyan-bg
+ vterm-color-white-bg
+ vterm-color-black-bg
+ vterm-color-red-bg
+ vterm-color-green-bg
+ vterm-color-yellow-bg
+ vterm-color-blue-bg
+ vterm-color-magenta-bg
+ vterm-color-cyan-bg
+ vterm-color-white-bg]
+ "Color palette for the background.")
+
(defvar vterm--term nil
"Pointer to Term.")
(make-variable-buffer-local 'vterm--term)
@@ -306,13 +386,6 @@ Feeds the size change to the virtual terminal."
(set-process-window-size vterm--process height width)
(vterm--set-size vterm--term height width))))))
-(defun vterm--face-color-hex (face attr)
- "Return the color of the FACE's ATTR as a hex string."
- (if (< emacs-major-version 26)
- (apply #'color-rgb-to-hex (color-name-to-rgb (face-attribute face attr nil 'default)))
- (apply #'color-rgb-to-hex (append (color-name-to-rgb (face-attribute face attr nil 'default)) '(2)))))
-
-
(defun vterm--delete-lines (line-num count &optional delete-whole-line)
"Delete COUNT lines from LINE-NUM.