From 834fb266e9b3b9bea1a5218eaf92b1d4fdbb1fd0 Mon Sep 17 00:00:00 2001
From: neon443 <69979447+neon443@users.noreply.github.com>
Date: Sun, 29 Jun 2025 09:59:53 +0100
Subject: [PATCH] theme picker ui is pretty now added a bunch of builtin htemes
applytheme takes a theme added builtin themes enum added decodeloacltheme
func added builtinthemes array property selectedtheme is now an actual theme
instead of an index its really annoying it doesnt really work rn
---
Resources/themes/0x96f.plist | 1059 +++++++++++++++++
Resources/themes/catppuccinFrappe.plist | 331 ++++++
Resources/themes/catppuccinMocha.plist | 331 ++++++
Resources/themes/defaultTheme.plist | 213 ++++
Resources/themes/dracula.plist | 318 +++++
Resources/themes/gruvboxDark.plist | 357 ++++++
Resources/themes/iTerm2SolarizedDark.plist | 344 ++++++
Resources/themes/iTerm2SolarizedLight.plist | 344 ++++++
Resources/themes/tomorrowNight.plist | 213 ++++
Resources/themes/ubuntu.plist | 213 ++++
Resources/themes/xcodedark.plist | 344 ++++++
Resources/themes/xcodedarkhc.plist | 344 ++++++
Resources/themes/xcodewwdc.plist | 344 ++++++
ShhShell.xcodeproj/project.pbxproj | 60 +
ShhShell/Host/HostsManager.swift | 35 +-
ShhShell/Themes/Theme.swift | 47 +-
.../Views/Terminal/SSHTerminalDelegate.swift | 11 +-
ShhShell/Views/Themes/ThemeManagerView.swift | 134 ++-
ShhShell/Views/Themes/ThemePreview.swift | 20 +-
19 files changed, 4984 insertions(+), 78 deletions(-)
create mode 100644 Resources/themes/0x96f.plist
create mode 100644 Resources/themes/catppuccinFrappe.plist
create mode 100644 Resources/themes/catppuccinMocha.plist
create mode 100644 Resources/themes/defaultTheme.plist
create mode 100644 Resources/themes/dracula.plist
create mode 100644 Resources/themes/gruvboxDark.plist
create mode 100644 Resources/themes/iTerm2SolarizedDark.plist
create mode 100644 Resources/themes/iTerm2SolarizedLight.plist
create mode 100644 Resources/themes/tomorrowNight.plist
create mode 100644 Resources/themes/ubuntu.plist
create mode 100644 Resources/themes/xcodedark.plist
create mode 100644 Resources/themes/xcodedarkhc.plist
create mode 100644 Resources/themes/xcodewwdc.plist
diff --git a/Resources/themes/0x96f.plist b/Resources/themes/0x96f.plist
new file mode 100644
index 0000000..dd9de2d
--- /dev/null
+++ b/Resources/themes/0x96f.plist
@@ -0,0 +1,1059 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15294118225574493
+ Color Space
+ P3
+ Green Component
+ 0.14117647707462311
+ Red Component
+ 0.14901961386203766
+
+ Ansi 0 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15294118225574493
+ Color Space
+ sRGB
+ Green Component
+ 0.14117647707462311
+ Red Component
+ 0.14901961386203766
+
+ Ansi 0 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15294117647058825
+ Color Space
+ P3
+ Green Component
+ 0.14117647058823529
+ Red Component
+ 0.14901960784313725
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.44705882668495178
+ Color Space
+ P3
+ Green Component
+ 0.44705882668495178
+ Red Component
+ 1
+
+ Ansi 1 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.44705882668495178
+ Color Space
+ sRGB
+ Green Component
+ 0.44705882668495178
+ Red Component
+ 1
+
+ Ansi 1 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.44705882352941179
+ Color Space
+ P3
+ Green Component
+ 0.44705882352941179
+ Red Component
+ 1
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.44705882668495178
+ Color Space
+ P3
+ Green Component
+ 0.89411765336990356
+ Red Component
+ 0.7764706015586853
+
+ Ansi 10 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.3490196168422699
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.73725491762161255
+
+ Ansi 10 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.44705882352941179
+ Color Space
+ P3
+ Green Component
+ 0.89411764705882357
+ Red Component
+ 0.77647058823529413
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.44313725829124451
+ Color Space
+ P3
+ Green Component
+ 0.82352942228317261
+ Red Component
+ 1
+
+ Ansi 11 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.34509804844856262
+ Color Space
+ sRGB
+ Green Component
+ 0.7921568751335144
+ Red Component
+ 1
+
+ Ansi 11 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.44313725490196076
+ Color Space
+ P3
+ Green Component
+ 0.82352941176470584
+ Red Component
+ 1
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.90980392694473267
+ Color Space
+ P3
+ Green Component
+ 0.82352942228317261
+ Red Component
+ 0.39215686917304993
+
+ Ansi 12 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.89411765336990356
+ Color Space
+ sRGB
+ Green Component
+ 0.7921568751335144
+ Red Component
+ 0.28627452254295349
+
+ Ansi 12 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.90980392156862744
+ Color Space
+ P3
+ Green Component
+ 0.82352941176470584
+ Red Component
+ 0.39215686274509803
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.90196079015731812
+ Color Space
+ P3
+ Green Component
+ 0.63921570777893066
+ Red Component
+ 0.68235296010971069
+
+ Ansi 13 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.88627451658248901
+ Color Space
+ sRGB
+ Green Component
+ 0.57647061347961426
+ Red Component
+ 0.62745100259780884
+
+ Ansi 13 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.90196078431372551
+ Color Space
+ P3
+ Green Component
+ 0.63921568627450975
+ Red Component
+ 0.68235294117647061
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.96470588445663452
+ Color Space
+ P3
+ Green Component
+ 0.92156863212585449
+ Red Component
+ 0.729411780834198
+
+ Ansi 14 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.95686274766921997
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.68235296010971069
+
+ Ansi 14 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.96470588235294119
+ Color Space
+ P3
+ Green Component
+ 0.92156862745098034
+ Red Component
+ 0.72941176470588232
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ P3
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Ansi 15 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Ansi 15 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215686274506
+ Color Space
+ P3
+ Green Component
+ 0.9882352941176471
+ Red Component
+ 0.9882352941176471
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.3490196168422699
+ Color Space
+ P3
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.73725491762161255
+
+ Ansi 2 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.3490196168422699
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.73725491762161255
+
+ Ansi 2 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.34901960784313724
+ Color Space
+ P3
+ Green Component
+ 0.87450980392156863
+ Red Component
+ 0.73725490196078436
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.34509804844856262
+ Color Space
+ P3
+ Green Component
+ 0.7921568751335144
+ Red Component
+ 1
+
+ Ansi 3 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.34509804844856262
+ Color Space
+ sRGB
+ Green Component
+ 0.7921568751335144
+ Red Component
+ 1
+
+ Ansi 3 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.34509803921568627
+ Color Space
+ P3
+ Green Component
+ 0.792156862745098
+ Red Component
+ 1
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.89411765336990356
+ Color Space
+ P3
+ Green Component
+ 0.7921568751335144
+ Red Component
+ 0.28627452254295349
+
+ Ansi 4 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.89411765336990356
+ Color Space
+ sRGB
+ Green Component
+ 0.7921568751335144
+ Red Component
+ 0.28627452254295349
+
+ Ansi 4 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.89411764705882357
+ Color Space
+ P3
+ Green Component
+ 0.792156862745098
+ Red Component
+ 0.28627450980392155
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.88627451658248901
+ Color Space
+ P3
+ Green Component
+ 0.57647061347961426
+ Red Component
+ 0.62745100259780884
+
+ Ansi 5 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.88627451658248901
+ Color Space
+ sRGB
+ Green Component
+ 0.57647061347961426
+ Red Component
+ 0.62745100259780884
+
+ Ansi 5 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.88627450980392153
+ Color Space
+ P3
+ Green Component
+ 0.57647058823529407
+ Red Component
+ 0.62745098039215685
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.95686274766921997
+ Color Space
+ P3
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.68235296010971069
+
+ Ansi 6 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.95686274766921997
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.68235296010971069
+
+ Ansi 6 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.95686274509803926
+ Color Space
+ P3
+ Green Component
+ 0.90980392156862744
+ Red Component
+ 0.68235294117647061
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ P3
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Ansi 7 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Ansi 7 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215686274506
+ Color Space
+ P3
+ Green Component
+ 0.9882352941176471
+ Red Component
+ 0.9882352941176471
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.32156863808631897
+ Color Space
+ P3
+ Green Component
+ 0.32941177487373352
+ Red Component
+ 0.32941177487373352
+
+ Ansi 8 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.32156863808631897
+ Color Space
+ sRGB
+ Green Component
+ 0.32941177487373352
+ Red Component
+ 0.32941177487373352
+
+ Ansi 8 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.32156862745098042
+ Color Space
+ P3
+ Green Component
+ 0.32941176470588235
+ Red Component
+ 0.32941176470588235
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.52941179275512695
+ Color Space
+ P3
+ Green Component
+ 0.52941179275512695
+ Red Component
+ 1
+
+ Ansi 9 Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.44705882668495178
+ Color Space
+ sRGB
+ Green Component
+ 0.44705882668495178
+ Red Component
+ 1
+
+ Ansi 9 Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.52941176470588236
+ Color Space
+ P3
+ Green Component
+ 0.52941176470588236
+ Red Component
+ 1
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15205442905426025
+ Color Space
+ P3
+ Green Component
+ 0.14144384860992432
+ Red Component
+ 0.14765799045562744
+
+ Background Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15294118225574493
+ Color Space
+ sRGB
+ Green Component
+ 0.14117647707462311
+ Red Component
+ 0.14901961386203766
+
+ Background Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15294118225574493
+ Color Space
+ sRGB
+ Green Component
+ 0.14117647707462311
+ Red Component
+ 0.14901961386203766
+
+ Badge Color
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.98109716176986694
+ Color Space
+ P3
+ Green Component
+ 0.98823541402816772
+ Red Component
+ 0.98823517560958862
+
+ Badge Color (Dark)
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Badge Color (Light)
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98109716176986694
+ Color Space
+ P3
+ Green Component
+ 0.98823541402816772
+ Red Component
+ 0.98823517560958862
+
+ Bold Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Bold Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98109716176986694
+ Color Space
+ P3
+ Green Component
+ 0.98823541402816772
+ Red Component
+ 0.98823517560958862
+
+ Cursor Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Cursor Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Cursor Guide Color
+
+ Alpha Component
+ 0.25
+ Blue Component
+ 0.99125725030899048
+ Color Space
+ P3
+ Green Component
+ 0.92047786712646484
+ Red Component
+ 0.74862593412399292
+
+ Cursor Guide Color (Dark)
+
+ Alpha Component
+ 0.25
+ Blue Component
+ 0.99125725030899048
+ Color Space
+ P3
+ Green Component
+ 0.92047786712646484
+ Red Component
+ 0.74862593412399292
+
+ Cursor Guide Color (Light)
+
+ Alpha Component
+ 0.25
+ Blue Component
+ 0.99125725030899048
+ Color Space
+ P3
+ Green Component
+ 0.92047786712646484
+ Red Component
+ 0.74862593412399292
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ P3
+ Green Component
+ 0.0
+ Red Component
+ 0.0
+
+ Cursor Text Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.0
+ Red Component
+ 0.0
+
+ Cursor Text Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.0
+ Red Component
+ 0.0
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98109716176986694
+ Color Space
+ P3
+ Green Component
+ 0.98823541402816772
+ Red Component
+ 0.98823517560958862
+
+ Foreground Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Foreground Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7093239426612854
+ Color Space
+ P3
+ Green Component
+ 0.35333043336868286
+ Red Component
+ 0.14513972401618958
+
+ Link Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7093239426612854
+ Color Space
+ P3
+ Green Component
+ 0.35333043336868286
+ Red Component
+ 0.14513972401618958
+
+ Link Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7093239426612854
+ Color Space
+ P3
+ Green Component
+ 0.35333043336868286
+ Red Component
+ 0.14513972401618958
+
+ Match Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ P3
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Match Background Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ P3
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Match Background Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ P3
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15205442905426025
+ Color Space
+ P3
+ Green Component
+ 0.14144384860992432
+ Red Component
+ 0.14765799045562744
+
+ Selected Text Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15294118225574493
+ Color Space
+ sRGB
+ Green Component
+ 0.14117647707462311
+ Red Component
+ 0.14901961386203766
+
+ Selected Text Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15294118225574493
+ Color Space
+ sRGB
+ Green Component
+ 0.14117647707462311
+ Red Component
+ 0.14901961386203766
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98109716176986694
+ Color Space
+ P3
+ Green Component
+ 0.98823541402816772
+ Red Component
+ 0.98823517560958862
+
+ Selection Color (Dark)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+ Selection Color (Light)
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.98039215803146362
+ Color Space
+ sRGB
+ Green Component
+ 0.98823529481887817
+ Red Component
+ 0.98823529481887817
+
+
+
diff --git a/Resources/themes/catppuccinFrappe.plist b/Resources/themes/catppuccinFrappe.plist
new file mode 100644
index 0000000..463d57d
--- /dev/null
+++ b/Resources/themes/catppuccinFrappe.plist
@@ -0,0 +1,331 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.42745098039215684
+ Color Space
+ sRGB
+ Green Component
+ 0.3411764705882353
+ Red Component
+ 0.3176470588235294
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5176470588235295
+ Color Space
+ sRGB
+ Green Component
+ 0.5098039215686274
+ Red Component
+ 0.9058823529411765
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4470588235294118
+ Color Space
+ sRGB
+ Green Component
+ 0.7803921568627451
+ Red Component
+ 0.5568627450980392
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.45098039215686275
+ Color Space
+ sRGB
+ Green Component
+ 0.7294117647058823
+ Red Component
+ 0.8509803921568627
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9411764705882353
+ Color Space
+ sRGB
+ Green Component
+ 0.6196078431372549
+ Red Component
+ 0.4823529411764706
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8588235294117647
+ Color Space
+ sRGB
+ Green Component
+ 0.6431372549019608
+ Red Component
+ 0.9490196078431372
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7098039215686275
+ Color Space
+ sRGB
+ Green Component
+ 0.7490196078431373
+ Red Component
+ 0.35294117647058826
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8862745098039215
+ Color Space
+ sRGB
+ Green Component
+ 0.7490196078431373
+ Red Component
+ 0.7098039215686275
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5372549019607843
+ Color Space
+ sRGB
+ Green Component
+ 0.8196078431372549
+ Red Component
+ 0.6509803921568628
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5647058823529412
+ Color Space
+ sRGB
+ Green Component
+ 0.7843137254901961
+ Red Component
+ 0.8980392156862745
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9333333333333333
+ Color Space
+ sRGB
+ Green Component
+ 0.6666666666666666
+ Red Component
+ 0.5490196078431373
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8941176470588236
+ Color Space
+ sRGB
+ Green Component
+ 0.7215686274509804
+ Red Component
+ 0.9568627450980393
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7450980392156863
+ Color Space
+ sRGB
+ Green Component
+ 0.7843137254901961
+ Red Component
+ 0.5058823529411764
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.807843137254902
+ Color Space
+ sRGB
+ Green Component
+ 0.6784313725490196
+ Red Component
+ 0.6470588235294118
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5019607843137255
+ Color Space
+ sRGB
+ Green Component
+ 0.40784313725490196
+ Red Component
+ 0.3843137254901961
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4470588235294118
+ Color Space
+ sRGB
+ Green Component
+ 0.44313725490196076
+ Red Component
+ 0.9019607843137255
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.27450980392156865
+ Color Space
+ sRGB
+ Green Component
+ 0.20392156862745098
+ Red Component
+ 0.18823529411764706
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9607843137254902
+ Color Space
+ sRGB
+ Green Component
+ 0.8156862745098039
+ Red Component
+ 0.7764705882352941
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8117647058823529
+ Color Space
+ sRGB
+ Green Component
+ 0.8352941176470589
+ Red Component
+ 0.9490196078431372
+
+ Cursor Guide Color
+
+ Alpha Component
+ 0.07
+ Blue Component
+ 0.9607843137254902
+ Color Space
+ sRGB
+ Green Component
+ 0.8156862745098039
+ Red Component
+ 0.7764705882352941
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.27450980392156865
+ Color Space
+ sRGB
+ Green Component
+ 0.20392156862745098
+ Red Component
+ 0.18823529411764706
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9607843137254902
+ Color Space
+ sRGB
+ Green Component
+ 0.8156862745098039
+ Red Component
+ 0.7764705882352941
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8588235294117647
+ Color Space
+ sRGB
+ Green Component
+ 0.8196078431372549
+ Red Component
+ 0.6
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9607843137254902
+ Color Space
+ sRGB
+ Green Component
+ 0.8156862745098039
+ Red Component
+ 0.7764705882352941
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5019607843137255
+ Color Space
+ sRGB
+ Green Component
+ 0.40784313725490196
+ Red Component
+ 0.3843137254901961
+
+
+
diff --git a/Resources/themes/catppuccinMocha.plist b/Resources/themes/catppuccinMocha.plist
new file mode 100644
index 0000000..2947aa3
--- /dev/null
+++ b/Resources/themes/catppuccinMocha.plist
@@ -0,0 +1,331 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.35294117647058826
+ Color Space
+ sRGB
+ Green Component
+ 0.2784313725490196
+ Red Component
+ 0.27058823529411763
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6588235294117647
+ Color Space
+ sRGB
+ Green Component
+ 0.5450980392156862
+ Red Component
+ 0.9529411764705882
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5450980392156862
+ Color Space
+ sRGB
+ Green Component
+ 0.8470588235294118
+ Red Component
+ 0.5372549019607843
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5686274509803921
+ Color Space
+ sRGB
+ Green Component
+ 0.8274509803921568
+ Red Component
+ 0.9215686274509803
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9882352941176471
+ Color Space
+ sRGB
+ Green Component
+ 0.6588235294117647
+ Red Component
+ 0.4549019607843137
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8705882352941177
+ Color Space
+ sRGB
+ Green Component
+ 0.6823529411764706
+ Red Component
+ 0.9490196078431372
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.792156862745098
+ Color Space
+ sRGB
+ Green Component
+ 0.8431372549019608
+ Red Component
+ 0.4196078431372549
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8705882352941177
+ Color Space
+ sRGB
+ Green Component
+ 0.7607843137254902
+ Red Component
+ 0.7294117647058823
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6313725490196078
+ Color Space
+ sRGB
+ Green Component
+ 0.8901960784313725
+ Red Component
+ 0.6509803921568628
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6862745098039216
+ Color Space
+ sRGB
+ Green Component
+ 0.8862745098039215
+ Red Component
+ 0.9764705882352941
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9803921568627451
+ Color Space
+ sRGB
+ Green Component
+ 0.7058823529411765
+ Red Component
+ 0.5372549019607843
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9058823529411765
+ Color Space
+ sRGB
+ Green Component
+ 0.7607843137254902
+ Red Component
+ 0.9607843137254902
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8352941176470589
+ Color Space
+ sRGB
+ Green Component
+ 0.8862745098039215
+ Red Component
+ 0.5803921568627451
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7843137254901961
+ Color Space
+ sRGB
+ Green Component
+ 0.6784313725490196
+ Red Component
+ 0.6509803921568628
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4392156862745098
+ Color Space
+ sRGB
+ Green Component
+ 0.3568627450980392
+ Red Component
+ 0.34509803921568627
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6
+ Color Space
+ sRGB
+ Green Component
+ 0.4666666666666667
+ Red Component
+ 0.9529411764705882
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1803921568627451
+ Color Space
+ sRGB
+ Green Component
+ 0.11764705882352941
+ Red Component
+ 0.11764705882352941
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9568627450980393
+ Color Space
+ sRGB
+ Green Component
+ 0.8392156862745098
+ Red Component
+ 0.803921568627451
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8627450980392157
+ Color Space
+ sRGB
+ Green Component
+ 0.8784313725490196
+ Red Component
+ 0.9607843137254902
+
+ Cursor Guide Color
+
+ Alpha Component
+ 0.07
+ Blue Component
+ 0.9568627450980393
+ Color Space
+ sRGB
+ Green Component
+ 0.8392156862745098
+ Red Component
+ 0.803921568627451
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1803921568627451
+ Color Space
+ sRGB
+ Green Component
+ 0.11764705882352941
+ Red Component
+ 0.11764705882352941
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9568627450980393
+ Color Space
+ sRGB
+ Green Component
+ 0.8392156862745098
+ Red Component
+ 0.803921568627451
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9215686274509803
+ Color Space
+ sRGB
+ Green Component
+ 0.8627450980392157
+ Red Component
+ 0.5372549019607843
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9568627450980393
+ Color Space
+ sRGB
+ Green Component
+ 0.8392156862745098
+ Red Component
+ 0.803921568627451
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4392156862745098
+ Color Space
+ sRGB
+ Green Component
+ 0.3568627450980392
+ Red Component
+ 0.34509803921568627
+
+
+
diff --git a/Resources/themes/defaultTheme.plist b/Resources/themes/defaultTheme.plist
new file mode 100644
index 0000000..98e5f29
--- /dev/null
+++ b/Resources/themes/defaultTheme.plist
@@ -0,0 +1,213 @@
+
+
+
+
+ Ansi 0 Color
+
+ Red Component
+ 0
+ Green Component
+ 0
+ Blue Component
+ 0
+
+ Ansi 1 Color
+
+ Red Component
+ 0.6
+ Green Component
+ 0
+ Blue Component
+ 0.0039215686
+
+ Ansi 2 Color
+
+ Red Component
+ 0
+ Green Component
+ 0.6509803922
+ Blue Component
+ 0.0117647059
+
+ Ansi 3 Color
+
+ Red Component
+ 0.6
+ Green Component
+ 0.6
+ Blue Component
+ 0
+
+ Ansi 4 Color
+
+ Red Component
+ 0.0117647059
+ Green Component
+ 0
+ Blue Component
+ 0.6980392157
+
+ Ansi 5 Color
+
+ Red Component
+ 0.6980392157
+ Green Component
+ 0
+ Blue Component
+ 0.6980392157
+
+ Ansi 6 Color
+
+ Red Component
+ 0
+ Green Component
+ 0.647058823529412
+ Blue Component
+ 0.6980392157
+
+ Ansi 7 Color
+
+ Red Component
+ 0.7490196078
+ Green Component
+ 0.7490196078
+ Blue Component
+ 0.7490196078
+
+ Ansi 8 Color
+
+ Red Component
+ 0.5411764706
+ Green Component
+ 0.537254902
+ Blue Component
+ 0.5411764706
+
+ Ansi 9 Color
+
+ Red Component
+ 0.8980392157
+ Green Component
+ 0
+ Blue Component
+ 0.0039215686
+
+ Ansi 10 Color
+
+ Red Component
+ 0
+ Green Component
+ 0.8470588234999999
+ Blue Component
+ 0
+
+ Ansi 11 Color
+
+ Red Component
+ 0.8980392157
+ Green Component
+ 0.8980392157
+ Blue Component
+ 0
+
+ Ansi 12 Color
+
+ Red Component
+ 0.0274509804
+ Green Component
+ 0
+ Blue Component
+ 0.9960784314
+
+ Ansi 13 Color
+
+ Red Component
+ 0.8980392157
+ Green Component
+ 0
+ Blue Component
+ 0.8980392157
+
+ Ansi 14 Color
+
+ Red Component
+ 0
+ Green Component
+ 0.8980392157
+ Blue Component
+ 0.8980392157
+
+ Ansi 15 Color
+
+ Red Component
+ 0.8980392157
+ Green Component
+ 0.8980392157
+ Blue Component
+ 0.8980392157
+
+ Background Color
+
+ Blue Component
+ 0
+ Green Component
+ 0
+ Red Component
+ 0
+
+ Bold Color
+
+ Blue Component
+ 0.7764705882
+ Green Component
+ 0.7843137255
+ Red Component
+ 0.7725490196
+
+ Cursor Color
+
+ Blue Component
+ 0.5
+ Green Component
+ 0.5
+ Red Component
+ 0.5
+
+ Cursor Text Color
+
+ Blue Component
+ 0.5400015258999999
+ Green Component
+ 0.5400015258999999
+ Red Component
+ 0.5400015258999999
+
+ Foreground Color
+
+ Blue Component
+ 0.5400015258999999
+ Green Component
+ 0.5400015258999999
+ Red Component
+ 0.5400015258999999
+
+ Selected Text Color
+
+ Blue Component
+ 0.5400015258999999
+ Green Component
+ 0.5400015258999999
+ Red Component
+ 0.5400015258999999
+
+ Selection Color
+
+ Blue Component
+ 0.9294117647058824
+ Green Component
+ 0.8666666666666667
+ Red Component
+ 0.8
+
+
+
diff --git a/Resources/themes/dracula.plist b/Resources/themes/dracula.plist
new file mode 100644
index 0000000..65fbc4a
--- /dev/null
+++ b/Resources/themes/dracula.plist
@@ -0,0 +1,318 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.1725
+ Color Space
+ sRGB
+ Green Component
+ 0.1333
+ Red Component
+ 0.1294
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.3333
+ Color Space
+ sRGB
+ Green Component
+ 0.3333
+ Red Component
+ 1.0
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.5804
+ Color Space
+ sRGB
+ Green Component
+ 1.0
+ Red Component
+ 0.4118
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6471
+ Color Space
+ sRGB
+ Green Component
+ 1.0
+ Red Component
+ 1.0
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1.0
+ Color Space
+ sRGB
+ Green Component
+ 0.6745
+ Red Component
+ 0.8392
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.8745
+ Color Space
+ sRGB
+ Green Component
+ 0.5725
+ Red Component
+ 1.0
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1.0
+ Color Space
+ sRGB
+ Green Component
+ 1.0
+ Red Component
+ 0.6431
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1.0
+ Color Space
+ sRGB
+ Green Component
+ 1.0
+ Red Component
+ 1.0
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4824
+ Color Space
+ sRGB
+ Green Component
+ 0.9804
+ Red Component
+ 0.3137
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.549
+ Color Space
+ sRGB
+ Green Component
+ 0.9804
+ Red Component
+ 0.9451
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9765
+ Color Space
+ sRGB
+ Green Component
+ 0.5765
+ Red Component
+ 0.7412
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.7765
+ Color Space
+ sRGB
+ Green Component
+ 0.4745
+ Red Component
+ 1.0
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.9922
+ Color Space
+ sRGB
+ Green Component
+ 0.9137
+ Red Component
+ 0.5451
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.949
+ Color Space
+ sRGB
+ Green Component
+ 0.9725
+ Red Component
+ 0.9725
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.6431
+ Color Space
+ sRGB
+ Green Component
+ 0.4471
+ Red Component
+ 0.3843
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.4314
+ Color Space
+ sRGB
+ Green Component
+ 0.4314
+ Red Component
+ 1.0
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2118
+ Color Space
+ sRGB
+ Green Component
+ 0.1647
+ Red Component
+ 0.1569
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.949
+ Color Space
+ sRGB
+ Green Component
+ 0.9725
+ Red Component
+ 0.9725
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.949
+ Color Space
+ sRGB
+ Green Component
+ 0.9725
+ Red Component
+ 0.9725
+
+ Cursor Guide Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.949
+ Color Space
+ sRGB
+ Green Component
+ 0.9725
+ Red Component
+ 0.9725
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.2118
+ Color Space
+ sRGB
+ Green Component
+ 0.1647
+ Red Component
+ 0.1569
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.949
+ Color Space
+ sRGB
+ Green Component
+ 0.9725
+ Red Component
+ 0.9725
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1.0
+ Color Space
+ sRGB
+ Green Component
+ 1.0
+ Red Component
+ 1.0
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.3529
+ Color Space
+ sRGB
+ Green Component
+ 0.2784
+ Red Component
+ 0.2667
+
+
+
diff --git a/Resources/themes/gruvboxDark.plist b/Resources/themes/gruvboxDark.plist
new file mode 100644
index 0000000..1a18927
--- /dev/null
+++ b/Resources/themes/gruvboxDark.plist
@@ -0,0 +1,357 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15686275064945221
+ Color Space
+ sRGB
+ Green Component
+ 0.15686275064945221
+ Red Component
+ 0.15686275064945221
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.11372549086809158
+ Color Space
+ sRGB
+ Green Component
+ 0.14117647707462311
+ Red Component
+ 0.80000001192092896
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.14901961386203766
+ Color Space
+ sRGB
+ Green Component
+ 0.73333334922790527
+ Red Component
+ 0.72156864404678345
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.18431372940540314
+ Color Space
+ sRGB
+ Green Component
+ 0.74117648601531982
+ Red Component
+ 0.98039215803146362
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.59607845544815063
+ Color Space
+ sRGB
+ Green Component
+ 0.64705884456634521
+ Red Component
+ 0.51372551918029785
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.60784316062927246
+ Color Space
+ sRGB
+ Green Component
+ 0.52549022436141968
+ Red Component
+ 0.82745099067687988
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.48627451062202454
+ Color Space
+ sRGB
+ Green Component
+ 0.75294119119644165
+ Red Component
+ 0.55686277151107788
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.69803923368453979
+ Color Space
+ sRGB
+ Green Component
+ 0.85882353782653809
+ Red Component
+ 0.92156863212585449
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.10196078568696976
+ Color Space
+ sRGB
+ Green Component
+ 0.59215688705444336
+ Red Component
+ 0.59607845544815063
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.12941177189350128
+ Color Space
+ sRGB
+ Green Component
+ 0.60000002384185791
+ Red Component
+ 0.84313726425170898
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.53333336114883423
+ Color Space
+ sRGB
+ Green Component
+ 0.5215686559677124
+ Red Component
+ 0.27058824896812439
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.52549022436141968
+ Color Space
+ sRGB
+ Green Component
+ 0.38431373238563538
+ Red Component
+ 0.69411766529083252
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.41568627953529358
+ Color Space
+ sRGB
+ Green Component
+ 0.61568629741668701
+ Red Component
+ 0.40784314274787903
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.51764708757400513
+ Color Space
+ sRGB
+ Green Component
+ 0.60000002384185791
+ Red Component
+ 0.65882354974746704
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.45490196347236633
+ Color Space
+ sRGB
+ Green Component
+ 0.51372551918029785
+ Red Component
+ 0.57254904508590698
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.20392157137393951
+ Color Space
+ sRGB
+ Green Component
+ 0.28627452254295349
+ Red Component
+ 0.9843137264251709
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15686275064945221
+ Color Space
+ sRGB
+ Green Component
+ 0.15686275064945221
+ Red Component
+ 0.15686275064945221
+
+ Badge Color
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.054908305406570435
+ Color Space
+ sRGB
+ Green Component
+ 0.3646928071975708
+ Red Component
+ 0.83921295404434204
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.69803923368453979
+ Color Space
+ sRGB
+ Green Component
+ 0.85882353782653809
+ Red Component
+ 0.92156863212585449
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.69803923368453979
+ Color Space
+ sRGB
+ Green Component
+ 0.85882353782653809
+ Red Component
+ 0.92156863212585449
+
+ Cursor Guide Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.21176299452781677
+ Color Space
+ sRGB
+ Green Component
+ 0.21960270404815674
+ Red Component
+ 0.23529493808746338
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.15686275064945221
+ Color Space
+ sRGB
+ Green Component
+ 0.15686275064945221
+ Red Component
+ 0.15686275064945221
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.69803923368453979
+ Color Space
+ sRGB
+ Green Component
+ 0.85882353782653809
+ Red Component
+ 0.92156863212585449
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.054908305406570435
+ Color Space
+ sRGB
+ Green Component
+ 0.3646928071975708
+ Red Component
+ 0.83921295404434204
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.69803923368453979
+ Color Space
+ sRGB
+ Green Component
+ 0.85882353782653809
+ Red Component
+ 0.92156863212585449
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.32941177487373352
+ Color Space
+ sRGB
+ Green Component
+ 0.36078432202339172
+ Red Component
+ 0.40000000596046448
+
+ Tab Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.10588235408067703
+ Color Space
+ sRGB
+ Green Component
+ 0.10588235408067703
+ Red Component
+ 0.10588235408067703
+
+
+
diff --git a/Resources/themes/iTerm2SolarizedDark.plist b/Resources/themes/iTerm2SolarizedDark.plist
new file mode 100644
index 0000000..c7e6596
--- /dev/null
+++ b/Resources/themes/iTerm2SolarizedDark.plist
@@ -0,0 +1,344 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.25882354378700256
+ Color Space
+ sRGB
+ Green Component
+ 0.21176470816135406
+ Red Component
+ 0.027450980618596077
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.18431372940540314
+ Color Space
+ sRGB
+ Green Component
+ 0.19607843458652496
+ Red Component
+ 0.86274510622024536
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.45882353186607361
+ Color Space
+ sRGB
+ Green Component
+ 0.43137255311012268
+ Red Component
+ 0.34509804844856262
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.51372551918029785
+ Color Space
+ sRGB
+ Green Component
+ 0.48235294222831726
+ Red Component
+ 0.3960784375667572
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.58823531866073608
+ Color Space
+ sRGB
+ Green Component
+ 0.58039218187332153
+ Red Component
+ 0.51372551918029785
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.76862746477127075
+ Color Space
+ sRGB
+ Green Component
+ 0.44313725829124451
+ Red Component
+ 0.42352941632270813
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.63137257099151611
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 0.57647061347961426
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.89019608497619629
+ Color Space
+ sRGB
+ Green Component
+ 0.96470588445663452
+ Red Component
+ 0.99215686321258545
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.60000002384185791
+ Red Component
+ 0.5215686559677124
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.5372549295425415
+ Red Component
+ 0.70980393886566162
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.82352942228317261
+ Color Space
+ sRGB
+ Green Component
+ 0.54509806632995605
+ Red Component
+ 0.14901961386203766
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.50980395078659058
+ Color Space
+ sRGB
+ Green Component
+ 0.21176470816135406
+ Red Component
+ 0.82745099067687988
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.59607845544815063
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 0.16470588743686676
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.83529412746429443
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.93333333730697632
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.21176470816135406
+ Color Space
+ sRGB
+ Green Component
+ 0.16862745583057404
+ Red Component
+ 0.0
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.086274512112140656
+ Color Space
+ sRGB
+ Green Component
+ 0.29411765933036804
+ Red Component
+ 0.79607844352722168
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.21176470816135406
+ Color Space
+ sRGB
+ Green Component
+ 0.16862745583057404
+ Red Component
+ 0.0
+
+ Badge Color
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.14910030364990234
+ Red Component
+ 1
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.63137257099151611
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 0.57647061347961426
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.58823531866073608
+ Color Space
+ sRGB
+ Green Component
+ 0.58039218187332153
+ Red Component
+ 0.51372551918029785
+
+ Cursor Guide Color
+
+ Alpha Component
+ 0.25
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.92681378126144409
+ Red Component
+ 0.70214027166366577
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.25882354378700256
+ Color Space
+ sRGB
+ Green Component
+ 0.21176470816135406
+ Red Component
+ 0.027450980618596077
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.58823531866073608
+ Color Space
+ sRGB
+ Green Component
+ 0.58039218187332153
+ Red Component
+ 0.51372551918029785
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.73422706127166748
+ Color Space
+ sRGB
+ Green Component
+ 0.35915294289588928
+ Red Component
+ 0.0
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.63137257099151611
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 0.57647061347961426
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.25882354378700256
+ Color Space
+ sRGB
+ Green Component
+ 0.21176470816135406
+ Red Component
+ 0.027450980618596077
+
+
+
diff --git a/Resources/themes/iTerm2SolarizedLight.plist b/Resources/themes/iTerm2SolarizedLight.plist
new file mode 100644
index 0000000..f282799
--- /dev/null
+++ b/Resources/themes/iTerm2SolarizedLight.plist
@@ -0,0 +1,344 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.25882354378700256
+ Color Space
+ sRGB
+ Green Component
+ 0.21176470816135406
+ Red Component
+ 0.027450980618596077
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.18431372940540314
+ Color Space
+ sRGB
+ Green Component
+ 0.19607843458652496
+ Red Component
+ 0.86274510622024536
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.45882353186607361
+ Color Space
+ sRGB
+ Green Component
+ 0.43137255311012268
+ Red Component
+ 0.34509804844856262
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.51372551918029785
+ Color Space
+ sRGB
+ Green Component
+ 0.48235294222831726
+ Red Component
+ 0.3960784375667572
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.58823531866073608
+ Color Space
+ sRGB
+ Green Component
+ 0.58039218187332153
+ Red Component
+ 0.51372551918029785
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.76862746477127075
+ Color Space
+ sRGB
+ Green Component
+ 0.44313725829124451
+ Red Component
+ 0.42352941632270813
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.63137257099151611
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 0.57647061347961426
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.89019608497619629
+ Color Space
+ sRGB
+ Green Component
+ 0.96470588445663452
+ Red Component
+ 0.99215686321258545
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.60000002384185791
+ Red Component
+ 0.5215686559677124
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.5372549295425415
+ Red Component
+ 0.70980393886566162
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.82352942228317261
+ Color Space
+ sRGB
+ Green Component
+ 0.54509806632995605
+ Red Component
+ 0.14901961386203766
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.50980395078659058
+ Color Space
+ sRGB
+ Green Component
+ 0.21176470816135406
+ Red Component
+ 0.82745099067687988
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.59607845544815063
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 0.16470588743686676
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.83529412746429443
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.93333333730697632
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.21176470816135406
+ Color Space
+ sRGB
+ Green Component
+ 0.16862745583057404
+ Red Component
+ 0.0
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.086274512112140656
+ Color Space
+ sRGB
+ Green Component
+ 0.29411765933036804
+ Red Component
+ 0.79607844352722168
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.89019608497619629
+ Color Space
+ sRGB
+ Green Component
+ 0.96470588445663452
+ Red Component
+ 0.99215686321258545
+
+ Badge Color
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.14910030364990234
+ Red Component
+ 1
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.45882353186607361
+ Color Space
+ sRGB
+ Green Component
+ 0.43137255311012268
+ Red Component
+ 0.34509804844856262
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.51372551918029785
+ Color Space
+ sRGB
+ Green Component
+ 0.48235294222831726
+ Red Component
+ 0.3960784375667572
+
+ Cursor Guide Color
+
+ Alpha Component
+ 0.25
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.92681378126144409
+ Red Component
+ 0.70214027166366577
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.83529412746429443
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.93333333730697632
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.51372551918029785
+ Color Space
+ sRGB
+ Green Component
+ 0.48235294222831726
+ Red Component
+ 0.3960784375667572
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.73422706127166748
+ Color Space
+ sRGB
+ Green Component
+ 0.35915294289588928
+ Red Component
+ 0.0
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.45882353186607361
+ Color Space
+ sRGB
+ Green Component
+ 0.43137255311012268
+ Red Component
+ 0.34509804844856262
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.83529412746429443
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.93333333730697632
+
+
+
diff --git a/Resources/themes/tomorrowNight.plist b/Resources/themes/tomorrowNight.plist
new file mode 100644
index 0000000..f98e225
--- /dev/null
+++ b/Resources/themes/tomorrowNight.plist
@@ -0,0 +1,213 @@
+
+
+
+
+ Ansi 0 Color
+
+ Blue Component
+ 0.0
+ Green Component
+ 0.0
+ Red Component
+ 0.0
+
+ Ansi 1 Color
+
+ Blue Component
+ 0.40000000000000002
+ Green Component
+ 0.40000000000000002
+ Red Component
+ 0.80000000000000004
+
+ Ansi 10 Color
+
+ Blue Component
+ 0.40784313729999999
+ Green Component
+ 0.74117647060000003
+ Red Component
+ 0.70980392160000005
+
+ Ansi 11 Color
+
+ Blue Component
+ 0.4549019608
+ Green Component
+ 0.77647058820000003
+ Red Component
+ 0.94117647059999998
+
+ Ansi 12 Color
+
+ Blue Component
+ 0.74509803919999995
+ Green Component
+ 0.63529411759999999
+ Red Component
+ 0.50588235290000005
+
+ Ansi 13 Color
+
+ Blue Component
+ 0.73333333329999995
+ Green Component
+ 0.58039215690000001
+ Red Component
+ 0.69803921570000005
+
+ Ansi 14 Color
+
+ Blue Component
+ 0.71764705880000002
+ Green Component
+ 0.74509803919999995
+ Red Component
+ 0.54117647059999996
+
+ Ansi 15 Color
+
+ Blue Component
+ 0.99999129772186279
+ Green Component
+ 0.99997437000274658
+ Red Component
+ 1
+
+ Ansi 2 Color
+
+ Blue Component
+ 0.40784313725490196
+ Green Component
+ 0.74117647058823533
+ Red Component
+ 0.70980392156862748
+
+ Ansi 3 Color
+
+ Blue Component
+ 0.45490196078431372
+ Green Component
+ 0.77647058823529413
+ Red Component
+ 0.94117647058823528
+
+ Ansi 4 Color
+
+ Blue Component
+ 0.74509803921568629
+ Green Component
+ 0.63529411764705879
+ Red Component
+ 0.50588235294117645
+
+ Ansi 5 Color
+
+ Blue Component
+ 0.73333333333333328
+ Green Component
+ 0.58039215686274503
+ Red Component
+ 0.69803921568627447
+
+ Ansi 6 Color
+
+ Blue Component
+ 0.71764705882352942
+ Green Component
+ 0.74509803921568629
+ Red Component
+ 0.54117647058823526
+
+ Ansi 7 Color
+
+ Blue Component
+ 0.99999129772186279
+ Green Component
+ 0.99997437000274658
+ Red Component
+ 1
+
+ Ansi 8 Color
+
+ Blue Component
+ 0.0
+ Green Component
+ 0.0
+ Red Component
+ 0.0
+
+ Ansi 9 Color
+
+ Blue Component
+ 0.40000000000000002
+ Green Component
+ 0.40000000000000002
+ Red Component
+ 0.80000000000000004
+
+ Background Color
+
+ Blue Component
+ 0.12941177189350128
+ Green Component
+ 0.12156862765550613
+ Red Component
+ 0.11372549086809158
+
+ Bold Color
+
+ Blue Component
+ 0.77647058820000003
+ Green Component
+ 0.7843137255
+ Red Component
+ 0.7725490196
+
+ Cursor Color
+
+ Blue Component
+ 0.77647058820000003
+ Green Component
+ 0.7843137255
+ Red Component
+ 0.7725490196
+
+ Cursor Text Color
+
+ Blue Component
+ 0.12941177189350128
+ Green Component
+ 0.12156862765550613
+ Red Component
+ 0.11372549086809158
+
+ Foreground Color
+
+ Blue Component
+ 0.77647058823529413
+ Green Component
+ 0.78431372549019607
+ Red Component
+ 0.77254901960784317
+
+ Selected Text Color
+
+ Blue Component
+ 0.77647058820000003
+ Green Component
+ 0.7843137255
+ Red Component
+ 0.7725490196
+
+ Selection Color
+
+ Blue Component
+ 0.25490196078431371
+ Green Component
+ 0.23137254901960785
+ Red Component
+ 0.21568627450980393
+
+
+
diff --git a/Resources/themes/ubuntu.plist b/Resources/themes/ubuntu.plist
new file mode 100644
index 0000000..04fc0d1
--- /dev/null
+++ b/Resources/themes/ubuntu.plist
@@ -0,0 +1,213 @@
+
+
+
+
+ Ansi 0 Color
+
+ Blue Component
+ 0.21176470816135406
+ Green Component
+ 0.20392157137393951
+ Red Component
+ 0.18039216101169586
+
+ Ansi 1 Color
+
+ Blue Component
+ 0.0
+ Green Component
+ 0.0
+ Red Component
+ 0.80000001192092896
+
+ Ansi 10 Color
+
+ Blue Component
+ 0.20392157137393951
+ Green Component
+ 0.88627451658248901
+ Red Component
+ 0.54117649793624878
+
+ Ansi 11 Color
+
+ Blue Component
+ 0.30980393290519714
+ Green Component
+ 0.91372549533843994
+ Red Component
+ 0.98823529481887817
+
+ Ansi 12 Color
+
+ Blue Component
+ 0.81176471710205078
+ Green Component
+ 0.62352943420410156
+ Red Component
+ 0.44705882668495178
+
+ Ansi 13 Color
+
+ Blue Component
+ 0.65882354974746704
+ Green Component
+ 0.49803921580314636
+ Red Component
+ 0.67843139171600342
+
+ Ansi 14 Color
+
+ Blue Component
+ 0.88627451658248901
+ Green Component
+ 0.88627451658248901
+ Red Component
+ 0.20392157137393951
+
+ Ansi 15 Color
+
+ Blue Component
+ 0.92549020051956177
+ Green Component
+ 0.93333333730697632
+ Red Component
+ 0.93333333730697632
+
+ Ansi 2 Color
+
+ Blue Component
+ 0.023529412224888802
+ Green Component
+ 0.60392159223556519
+ Red Component
+ 0.30588236451148987
+
+ Ansi 3 Color
+
+ Blue Component
+ 0.0
+ Green Component
+ 0.62745100259780884
+ Red Component
+ 0.76862746477127075
+
+ Ansi 4 Color
+
+ Blue Component
+ 0.64313727617263794
+ Green Component
+ 0.3960784375667572
+ Red Component
+ 0.20392157137393951
+
+ Ansi 5 Color
+
+ Blue Component
+ 0.48235294222831726
+ Green Component
+ 0.31372550129890442
+ Red Component
+ 0.45882353186607361
+
+ Ansi 6 Color
+
+ Blue Component
+ 0.60392159223556519
+ Green Component
+ 0.59607845544815063
+ Red Component
+ 0.023529412224888802
+
+ Ansi 7 Color
+
+ Blue Component
+ 0.81176471710205078
+ Green Component
+ 0.84313726425170898
+ Red Component
+ 0.82745099067687988
+
+ Ansi 8 Color
+
+ Blue Component
+ 0.32549020648002625
+ Green Component
+ 0.34117648005485535
+ Red Component
+ 0.3333333432674408
+
+ Ansi 9 Color
+
+ Blue Component
+ 0.16078431904315948
+ Green Component
+ 0.16078431904315948
+ Red Component
+ 0.93725490570068359
+
+ Background Color
+
+ Blue Component
+ 0.14117647707462311
+ Green Component
+ 0.039215687662363052
+ Red Component
+ 0.18823529779911041
+
+ Bold Color
+
+ Blue Component
+ 0.92549020051956177
+ Green Component
+ 0.93333333730697632
+ Red Component
+ 0.93333333730697632
+
+ Cursor Color
+
+ Blue Component
+ 0.73333334922790527
+ Green Component
+ 0.73333334922790527
+ Red Component
+ 0.73333334922790527
+
+ Cursor Text Color
+
+ Blue Component
+ 1
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Foreground Color
+
+ Blue Component
+ 0.92549020051956177
+ Green Component
+ 0.93333333730697632
+ Red Component
+ 0.93333333730697632
+
+ Selected Text Color
+
+ Blue Component
+ 0.0
+ Green Component
+ 0.0
+ Red Component
+ 0.0
+
+ Selection Color
+
+ Blue Component
+ 1
+ Green Component
+ 0.8353000283241272
+ Red Component
+ 0.70980000495910645
+
+
+
diff --git a/Resources/themes/xcodedark.plist b/Resources/themes/xcodedark.plist
new file mode 100644
index 0000000..66a59c7
--- /dev/null
+++ b/Resources/themes/xcodedark.plist
@@ -0,0 +1,344 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.32549020648002625
+ Color Space
+ sRGB
+ Green Component
+ 0.26666668057441711
+ Red Component
+ 0.25490197539329529
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.43921568989753723
+ Color Space
+ sRGB
+ Green Component
+ 0.5058823823928833
+ Red Component
+ 1
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.89411765336990356
+ Color Space
+ sRGB
+ Green Component
+ 0.94901961088180542
+ Red Component
+ 0.67450982332229614
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.30980393290519714
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 1
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.41960784792900085
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.69803923368453979
+ Color Space
+ sRGB
+ Green Component
+ 0.47843137383460999
+ Red Component
+ 1
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.729411780834198
+ Red Component
+ 0.85490196943283081
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.87843137979507446
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.87450981140136719
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.70196080207824707
+ Color Space
+ sRGB
+ Green Component
+ 0.7607843279838562
+ Red Component
+ 0.47058823704719543
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.48627451062202454
+ Color Space
+ sRGB
+ Green Component
+ 0.78823530673980713
+ Red Component
+ 0.85098040103912354
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.80000001192092896
+ Color Space
+ sRGB
+ Green Component
+ 0.69019609689712524
+ Red Component
+ 0.30588236451148987
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.69803923368453979
+ Color Space
+ sRGB
+ Green Component
+ 0.47843137383460999
+ Red Component
+ 1
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.92156863212585449
+ Color Space
+ sRGB
+ Green Component
+ 0.5058823823928833
+ Red Component
+ 0.69803923368453979
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.87843137979507446
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.87450981140136719
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.59607845544815063
+ Color Space
+ sRGB
+ Green Component
+ 0.54901963472366333
+ Red Component
+ 0.49803921580314636
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.43921568989753723
+ Color Space
+ sRGB
+ Green Component
+ 0.5058823823928833
+ Red Component
+ 1
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.18823529779911041
+ Color Space
+ sRGB
+ Green Component
+ 0.16470588743686676
+ Red Component
+ 0.16078431904315948
+
+ Badge Color
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.1491314172744751
+ Red Component
+ 1
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.87843137979507446
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.87450981140136719
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.87843137979507446
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.87450981140136719
+
+ Cursor Guide Color
+
+ Alpha Component
+ 0.25
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.9268307089805603
+ Red Component
+ 0.70213186740875244
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.18823529779911041
+ Color Space
+ sRGB
+ Green Component
+ 0.16470588743686676
+ Red Component
+ 0.16078431904315948
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.87843137979507446
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.87450981140136719
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.41960784792900085
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.87843137979507446
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.87450981140136719
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.32549020648002625
+ Color Space
+ sRGB
+ Green Component
+ 0.26666668057441711
+ Red Component
+ 0.25490197539329529
+
+
+
diff --git a/Resources/themes/xcodedarkhc.plist b/Resources/themes/xcodedarkhc.plist
new file mode 100644
index 0000000..31b47b0
--- /dev/null
+++ b/Resources/themes/xcodedarkhc.plist
@@ -0,0 +1,344 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.29411765933036804
+ Color Space
+ sRGB
+ Green Component
+ 0.27058824896812439
+ Red Component
+ 0.26274511218070984
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.47843137383460999
+ Color Space
+ sRGB
+ Green Component
+ 0.54117649793624878
+ Red Component
+ 1
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.92156863212585449
+ Color Space
+ sRGB
+ Green Component
+ 0.98039215803146362
+ Red Component
+ 0.69411766529083252
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.30980393290519714
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 1
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.41960784792900085
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.72156864404678345
+ Color Space
+ sRGB
+ Green Component
+ 0.5215686559677124
+ Red Component
+ 1
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.81176471710205078
+ Red Component
+ 0.89803922176361084
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.73725491762161255
+ Color Space
+ sRGB
+ Green Component
+ 0.78823530673980713
+ Red Component
+ 0.51372551918029785
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.40784314274787903
+ Color Space
+ sRGB
+ Green Component
+ 0.7764706015586853
+ Red Component
+ 0.85098040103912354
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.90196079015731812
+ Color Space
+ sRGB
+ Green Component
+ 0.76862746477127075
+ Red Component
+ 0.30588236451148987
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.72156864404678345
+ Color Space
+ sRGB
+ Green Component
+ 0.5215686559677124
+ Red Component
+ 1
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.63137257099151611
+ Red Component
+ 0.80392158031463623
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.56862747669219971
+ Color Space
+ sRGB
+ Green Component
+ 0.5372549295425415
+ Red Component
+ 0.51372551918029785
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.47843137383460999
+ Color Space
+ sRGB
+ Green Component
+ 0.54117649793624878
+ Red Component
+ 1
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.14117647707462311
+ Color Space
+ sRGB
+ Green Component
+ 0.12156862765550613
+ Red Component
+ 0.12156862765550613
+
+ Badge Color
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.1491314172744751
+ Red Component
+ 1
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Cursor Guide Color
+
+ Alpha Component
+ 0.25
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.9268307089805603
+ Red Component
+ 0.70213186740875244
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.14117647707462311
+ Color Space
+ sRGB
+ Green Component
+ 0.12156862765550613
+ Red Component
+ 0.12156862765550613
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.87450981140136719
+ Red Component
+ 0.41960784792900085
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 1
+ Red Component
+ 1
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.29411765933036804
+ Color Space
+ sRGB
+ Green Component
+ 0.27058824896812439
+ Red Component
+ 0.26274511218070984
+
+
+
diff --git a/Resources/themes/xcodewwdc.plist b/Resources/themes/xcodewwdc.plist
new file mode 100644
index 0000000..5cff6c7
--- /dev/null
+++ b/Resources/themes/xcodewwdc.plist
@@ -0,0 +1,344 @@
+
+
+
+
+ Ansi 0 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.36078432202339172
+ Color Space
+ sRGB
+ Green Component
+ 0.30196079611778259
+ Red Component
+ 0.28627452254295349
+
+ Ansi 1 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.22745098173618317
+ Color Space
+ sRGB
+ Green Component
+ 0.21960784494876862
+ Red Component
+ 0.73333334922790527
+
+ Ansi 10 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.43137255311012268
+ Color Space
+ sRGB
+ Green Component
+ 0.7764706015586853
+ Red Component
+ 0.58039218187332153
+
+ Ansi 11 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.364705890417099
+ Color Space
+ sRGB
+ Green Component
+ 0.55686277151107788
+ Red Component
+ 0.82352942228317261
+
+ Ansi 12 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.77254903316497803
+ Color Space
+ sRGB
+ Green Component
+ 0.51764708757400513
+ Red Component
+ 0.53333336114883423
+
+ Ansi 13 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.60000002384185791
+ Color Space
+ sRGB
+ Green Component
+ 0.22352941334247589
+ Red Component
+ 0.71764707565307617
+
+ Ansi 14 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.64313727617263794
+ Color Space
+ sRGB
+ Green Component
+ 0.67058825492858887
+ Red Component
+ 0.0
+
+ Ansi 15 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.92156863212585449
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.90588235855102539
+
+ Ansi 2 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.43137255311012268
+ Color Space
+ sRGB
+ Green Component
+ 0.7764706015586853
+ Red Component
+ 0.58039218187332153
+
+ Ansi 3 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.364705890417099
+ Color Space
+ sRGB
+ Green Component
+ 0.55686277151107788
+ Red Component
+ 0.82352942228317261
+
+ Ansi 4 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.77254903316497803
+ Color Space
+ sRGB
+ Green Component
+ 0.51764708757400513
+ Red Component
+ 0.53333336114883423
+
+ Ansi 5 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.60000002384185791
+ Color Space
+ sRGB
+ Green Component
+ 0.22352941334247589
+ Red Component
+ 0.71764707565307617
+
+ Ansi 6 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.64313727617263794
+ Color Space
+ sRGB
+ Green Component
+ 0.67058825492858887
+ Red Component
+ 0.0
+
+ Ansi 7 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.92156863212585449
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.90588235855102539
+
+ Ansi 8 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.61960786581039429
+ Color Space
+ sRGB
+ Green Component
+ 0.52549022436141968
+ Red Component
+ 0.49803921580314636
+
+ Ansi 9 Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.22745098173618317
+ Color Space
+ sRGB
+ Green Component
+ 0.21960784494876862
+ Red Component
+ 0.73333334922790527
+
+ Background Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.21176470816135406
+ Color Space
+ sRGB
+ Green Component
+ 0.17254902422428131
+ Red Component
+ 0.16078431904315948
+
+ Badge Color
+
+ Alpha Component
+ 0.5
+ Blue Component
+ 0.0
+ Color Space
+ sRGB
+ Green Component
+ 0.1491314172744751
+ Red Component
+ 1
+
+ Bold Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.92156863212585449
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.90588235855102539
+
+ Cursor Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.92156863212585449
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.90588235855102539
+
+ Cursor Guide Color
+
+ Alpha Component
+ 0.25
+ Blue Component
+ 1
+ Color Space
+ sRGB
+ Green Component
+ 0.9268307089805603
+ Red Component
+ 0.70213186740875244
+
+ Cursor Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.21176470816135406
+ Color Space
+ sRGB
+ Green Component
+ 0.17254902422428131
+ Red Component
+ 0.16078431904315948
+
+ Foreground Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.92156863212585449
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.90588235855102539
+
+ Link Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.64313727617263794
+ Color Space
+ sRGB
+ Green Component
+ 0.67058825492858887
+ Red Component
+ 0.0
+
+ Selected Text Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.92156863212585449
+ Color Space
+ sRGB
+ Green Component
+ 0.90980392694473267
+ Red Component
+ 0.90588235855102539
+
+ Selection Color
+
+ Alpha Component
+ 1
+ Blue Component
+ 0.36078432202339172
+ Color Space
+ sRGB
+ Green Component
+ 0.30196079611778259
+ Red Component
+ 0.28627452254295349
+
+
+
diff --git a/ShhShell.xcodeproj/project.pbxproj b/ShhShell.xcodeproj/project.pbxproj
index afa87e8..b3c8b38 100644
--- a/ShhShell.xcodeproj/project.pbxproj
+++ b/ShhShell.xcodeproj/project.pbxproj
@@ -17,6 +17,7 @@
A92538CD2DEE0744007E0A18 /* ShhShellTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A92538CB2DEE0744007E0A18 /* ShhShellTests.swift */; };
A92538D12DEE0745007E0A18 /* ShhShellUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A92538CE2DEE0745007E0A18 /* ShhShellUITests.swift */; };
A92538D22DEE0745007E0A18 /* ShhShellUITestsLaunchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A92538CF2DEE0745007E0A18 /* ShhShellUITestsLaunchTests.swift */; };
+ A92DDDE22E104CB300A87DB2 /* defaultTheme.plist in Resources */ = {isa = PBXBuildFile; fileRef = A92DDDE12E104CB300A87DB2 /* defaultTheme.plist */; };
A93143BE2DF4D0B300FCD5DB /* libpthread.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = A93143BD2DF4D0A700FCD5DB /* libpthread.tbd */; };
A93143C02DF61B3200FCD5DB /* Host.swift in Sources */ = {isa = PBXBuildFile; fileRef = A93143BF2DF61B3200FCD5DB /* Host.swift */; };
A93143C62DF61FE300FCD5DB /* ViewModifiers.swift in Sources */ = {isa = PBXBuildFile; fileRef = A93143C52DF61FE300FCD5DB /* ViewModifiers.swift */; };
@@ -25,6 +26,18 @@
A95FAA552DF4B62900DE2F5A /* LibSSH.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = A95FAA502DF4B62100DE2F5A /* LibSSH.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
A95FAA562DF4B62A00DE2F5A /* openssl.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = A95FAA512DF4B62100DE2F5A /* openssl.xcframework */; };
A95FAA572DF4B62A00DE2F5A /* openssl.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = A95FAA512DF4B62100DE2F5A /* openssl.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
+ A96BE6972E10846B00C0FEE9 /* catppuccinMocha.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE68D2E10846B00C0FEE9 /* catppuccinMocha.plist */; };
+ A96BE6982E10846B00C0FEE9 /* ubuntu.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE6932E10846B00C0FEE9 /* ubuntu.plist */; };
+ A96BE6992E10846B00C0FEE9 /* iTerm2SolarizedDark.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE6902E10846B00C0FEE9 /* iTerm2SolarizedDark.plist */; };
+ A96BE69A2E10846B00C0FEE9 /* xcodedark.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE6942E10846B00C0FEE9 /* xcodedark.plist */; };
+ A96BE69B2E10846B00C0FEE9 /* iTerm2SolarizedLight.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE6912E10846B00C0FEE9 /* iTerm2SolarizedLight.plist */; };
+ A96BE69C2E10846B00C0FEE9 /* 0x96f.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE68B2E10846B00C0FEE9 /* 0x96f.plist */; };
+ A96BE69D2E10846B00C0FEE9 /* gruvboxDark.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE68F2E10846B00C0FEE9 /* gruvboxDark.plist */; };
+ A96BE69E2E10846B00C0FEE9 /* xcodedarkhc.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE6952E10846B00C0FEE9 /* xcodedarkhc.plist */; };
+ A96BE69F2E10846B00C0FEE9 /* tomorrowNight.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE6922E10846B00C0FEE9 /* tomorrowNight.plist */; };
+ A96BE6A02E10846B00C0FEE9 /* dracula.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE68E2E10846B00C0FEE9 /* dracula.plist */; };
+ A96BE6A12E10846B00C0FEE9 /* catppuccinFrappe.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE68C2E10846B00C0FEE9 /* catppuccinFrappe.plist */; };
+ A96BE6A22E10846B00C0FEE9 /* xcodewwdc.plist in Resources */ = {isa = PBXBuildFile; fileRef = A96BE6962E10846B00C0FEE9 /* xcodewwdc.plist */; };
A96C6A8A2E0C0B1100F377FE /* SSHState.swift in Sources */ = {isa = PBXBuildFile; fileRef = A96C6A892E0C0B1100F377FE /* SSHState.swift */; };
A96C6AFE2E0C43B600F377FE /* Keypair.swift in Sources */ = {isa = PBXBuildFile; fileRef = A96C6AFD2E0C43B600F377FE /* Keypair.swift */; };
A96C6B002E0C45FE00F377FE /* KeyDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A96C6AFF2E0C45FE00F377FE /* KeyDetailView.swift */; };
@@ -93,6 +106,7 @@
A92538CB2DEE0744007E0A18 /* ShhShellTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShhShellTests.swift; sourceTree = ""; };
A92538CE2DEE0745007E0A18 /* ShhShellUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShhShellUITests.swift; sourceTree = ""; };
A92538CF2DEE0745007E0A18 /* ShhShellUITestsLaunchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ShhShellUITestsLaunchTests.swift; sourceTree = ""; };
+ A92DDDE12E104CB300A87DB2 /* defaultTheme.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = defaultTheme.plist; sourceTree = ""; };
A93143BD2DF4D0A700FCD5DB /* libpthread.tbd */ = {isa = PBXFileReference; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libpthread.tbd; path = usr/lib/libpthread.tbd; sourceTree = SDKROOT; };
A93143BF2DF61B3200FCD5DB /* Host.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Host.swift; sourceTree = ""; };
A93143C22DF61F5700FCD5DB /* ShhShell.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = ShhShell.entitlements; sourceTree = ""; };
@@ -103,6 +117,18 @@
A95FAA5A2DF4B79900DE2F5A /* ci_post_clone.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = ci_post_clone.sh; sourceTree = ""; };
A95FAA5B2DF4B7A000DE2F5A /* ci_pre_xcodebuild.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = ci_pre_xcodebuild.sh; sourceTree = ""; };
A95FAA5C2DF4B7A300DE2F5A /* ci_prost_xcodebuild.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = ci_prost_xcodebuild.sh; sourceTree = ""; };
+ A96BE68B2E10846B00C0FEE9 /* 0x96f.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = 0x96f.plist; sourceTree = ""; };
+ A96BE68C2E10846B00C0FEE9 /* catppuccinFrappe.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = catppuccinFrappe.plist; sourceTree = ""; };
+ A96BE68D2E10846B00C0FEE9 /* catppuccinMocha.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = catppuccinMocha.plist; sourceTree = ""; };
+ A96BE68E2E10846B00C0FEE9 /* dracula.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = dracula.plist; sourceTree = ""; };
+ A96BE68F2E10846B00C0FEE9 /* gruvboxDark.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = gruvboxDark.plist; sourceTree = ""; };
+ A96BE6902E10846B00C0FEE9 /* iTerm2SolarizedDark.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = iTerm2SolarizedDark.plist; sourceTree = ""; };
+ A96BE6912E10846B00C0FEE9 /* iTerm2SolarizedLight.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = iTerm2SolarizedLight.plist; sourceTree = ""; };
+ A96BE6922E10846B00C0FEE9 /* tomorrowNight.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = tomorrowNight.plist; sourceTree = ""; };
+ A96BE6932E10846B00C0FEE9 /* ubuntu.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = ubuntu.plist; sourceTree = ""; };
+ A96BE6942E10846B00C0FEE9 /* xcodedark.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = xcodedark.plist; sourceTree = ""; };
+ A96BE6952E10846B00C0FEE9 /* xcodedarkhc.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = xcodedarkhc.plist; sourceTree = ""; };
+ A96BE6962E10846B00C0FEE9 /* xcodewwdc.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = xcodewwdc.plist; sourceTree = ""; };
A96C6A892E0C0B1100F377FE /* SSHState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SSHState.swift; sourceTree = ""; };
A96C6AFD2E0C43B600F377FE /* Keypair.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Keypair.swift; sourceTree = ""; };
A96C6AFF2E0C45FE00F377FE /* KeyDetailView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = KeyDetailView.swift; sourceTree = ""; };
@@ -235,11 +261,32 @@
A92538D42DEE0756007E0A18 /* Resources */ = {
isa = PBXGroup;
children = (
+ A92DDDE02E104CA400A87DB2 /* themes */,
A92538C42DEE0742007E0A18 /* Assets.xcassets */,
);
path = Resources;
sourceTree = "";
};
+ A92DDDE02E104CA400A87DB2 /* themes */ = {
+ isa = PBXGroup;
+ children = (
+ A92DDDE12E104CB300A87DB2 /* defaultTheme.plist */,
+ A96BE6942E10846B00C0FEE9 /* xcodedark.plist */,
+ A96BE6952E10846B00C0FEE9 /* xcodedarkhc.plist */,
+ A96BE6962E10846B00C0FEE9 /* xcodewwdc.plist */,
+ A96BE6922E10846B00C0FEE9 /* tomorrowNight.plist */,
+ A96BE68B2E10846B00C0FEE9 /* 0x96f.plist */,
+ A96BE6902E10846B00C0FEE9 /* iTerm2SolarizedDark.plist */,
+ A96BE6912E10846B00C0FEE9 /* iTerm2SolarizedLight.plist */,
+ A96BE68C2E10846B00C0FEE9 /* catppuccinFrappe.plist */,
+ A96BE68D2E10846B00C0FEE9 /* catppuccinMocha.plist */,
+ A96BE68E2E10846B00C0FEE9 /* dracula.plist */,
+ A96BE68F2E10846B00C0FEE9 /* gruvboxDark.plist */,
+ A96BE6932E10846B00C0FEE9 /* ubuntu.plist */,
+ );
+ path = themes;
+ sourceTree = "";
+ };
A93143C12DF61E8500FCD5DB /* SSH */ = {
isa = PBXGroup;
children = (
@@ -454,8 +501,21 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
+ A96BE6972E10846B00C0FEE9 /* catppuccinMocha.plist in Resources */,
+ A96BE6982E10846B00C0FEE9 /* ubuntu.plist in Resources */,
+ A96BE6992E10846B00C0FEE9 /* iTerm2SolarizedDark.plist in Resources */,
+ A96BE69A2E10846B00C0FEE9 /* xcodedark.plist in Resources */,
+ A96BE69B2E10846B00C0FEE9 /* iTerm2SolarizedLight.plist in Resources */,
+ A96BE69C2E10846B00C0FEE9 /* 0x96f.plist in Resources */,
+ A96BE69D2E10846B00C0FEE9 /* gruvboxDark.plist in Resources */,
+ A96BE69E2E10846B00C0FEE9 /* xcodedarkhc.plist in Resources */,
+ A96BE69F2E10846B00C0FEE9 /* tomorrowNight.plist in Resources */,
+ A96BE6A02E10846B00C0FEE9 /* dracula.plist in Resources */,
+ A96BE6A12E10846B00C0FEE9 /* catppuccinFrappe.plist in Resources */,
+ A96BE6A22E10846B00C0FEE9 /* xcodewwdc.plist in Resources */,
A95FAA472DF3884B00DE2F5A /* Config.xcconfig in Resources */,
A92538CA2DEE0742007E0A18 /* Assets.xcassets in Resources */,
+ A92DDDE22E104CB300A87DB2 /* defaultTheme.plist in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
diff --git a/ShhShell/Host/HostsManager.swift b/ShhShell/Host/HostsManager.swift
index 7851a07..cd67afd 100644
--- a/ShhShell/Host/HostsManager.swift
+++ b/ShhShell/Host/HostsManager.swift
@@ -10,18 +10,18 @@ import LocalAuthentication
import SwiftUI
class HostsManager: ObservableObject, @unchecked Sendable {
- private let userDefaults = NSUbiquitousKeyValueStore.default
+ private let userDefaults = UserDefaults.standard
@Published var hosts: [Host] = []
@Published var themes: [Theme] = []
- @Published var selectedThemeIndex: Int = -1
+ @Published var selectedTheme: Theme = Theme.defaultTheme
init() {
loadHosts()
loadThemes()
+ print(selectedTheme == Theme.defaultTheme)
}
-
func loadThemes() {
guard let dataTheme = userDefaults.data(forKey: "themes") else { return }
guard let dataThemeNames = userDefaults.data(forKey: "themeNames") else { return }
@@ -34,6 +34,12 @@ class HostsManager: ObservableObject, @unchecked Sendable {
guard let synthedTheme = Theme.decodeTheme(name: decodedThemeNames[index], data: encoded) else { return }
self.themes.append(synthedTheme)
}
+
+
+ guard let dataSelTheme = userDefaults.data(forKey: "selectedTheme") else { return }
+ guard let decodedSelTheme = Theme.decodeTheme(name: "", data: dataSelTheme) else { return }
+ //name doesnt matter
+ self.selectedTheme = decodedSelTheme
}
func downloadTheme(fromUrl: URL?) {
@@ -50,16 +56,16 @@ class HostsManager: ObservableObject, @unchecked Sendable {
}
func selectTheme(_ selectedTheme: Theme) {
- guard let index = themes.firstIndex(where: { $0 == selectedTheme }) else {
- withAnimation { selectedThemeIndex = -1 }
- return
- }
- withAnimation { selectedThemeIndex = index }
+ withAnimation { self.selectedTheme = selectedTheme }
+ print("selected: \(selectedTheme.name) \(selectedTheme.id)")
+ saveThemes()
}
func isThemeSelected(_ themeInQuestion: Theme) -> Bool {
- guard let index = themes.firstIndex(where: { $0 == themeInQuestion }) else { return false }
- return index == selectedThemeIndex
+ var themeInQWithSameID = themeInQuestion
+ themeInQWithSameID.id = selectedTheme.id
+
+ return themeInQuestion.id == self.selectedTheme.id
}
func renameTheme(_ theme: Theme?, to newName: String) {
@@ -68,7 +74,7 @@ class HostsManager: ObservableObject, @unchecked Sendable {
guard let index = themes.firstIndex(where: {$0.id == theme.id}) else { return }
var newTheme = themes[index]
newTheme.name = newName
- newTheme.id = UUID()
+ newTheme.id = UUID().uuidString
withAnimation { themes[index] = newTheme }
saveThemes()
}
@@ -89,12 +95,19 @@ class HostsManager: ObservableObject, @unchecked Sendable {
func saveThemes() {
let encoder = JSONEncoder()
+ // map the theme to themecodable
guard let encodedThemes = try? encoder.encode(themes.map({$0.themeCodable})) else { return }
+ //map the themes to get their names
guard let encodedThemeNames = try? encoder.encode(themes.map{$0.name}) else { return }
userDefaults.set(encodedThemes, forKey: "themes")
userDefaults.set(encodedThemeNames, forKey: "themeNames")
+
+ guard let encodedSelectedTheme = try? encoder.encode(selectedTheme.themeCodable) else { return }
+ userDefaults.set(encodedSelectedTheme, forKey: "selectedTheme")
userDefaults.synchronize()
+ print(Theme.decodeTheme(name: "", data: userDefaults.data(forKey: "selectedTheme")))
+ print("saved themes")
}
func getHostIndexMatching(_ hostSearchingFor: Host) -> Int? {
diff --git a/ShhShell/Themes/Theme.swift b/ShhShell/Themes/Theme.swift
index ac1c580..6b84ecc 100644
--- a/ShhShell/Themes/Theme.swift
+++ b/ShhShell/Themes/Theme.swift
@@ -10,7 +10,7 @@ import SwiftTerm
import SwiftUI
struct Theme: Hashable, Equatable, Identifiable {
- var id = UUID()
+ var id: String = UUID().uuidString
var name: String
var ansi: [SwiftTerm.Color]
var foreground: SwiftTerm.Color
@@ -23,6 +23,7 @@ struct Theme: Hashable, Equatable, Identifiable {
var themeCodable: ThemeCodable {
return ThemeCodable(
+ name: name,
ansi0: ansi[0].colorCodable,
ansi1: ansi[1].colorCodable,
ansi2: ansi[2].colorCodable,
@@ -50,7 +51,7 @@ struct Theme: Hashable, Equatable, Identifiable {
}
static func decodeTheme(name: String, data: Data?) -> Theme? {
- guard let data else { return nil }
+ guard let data else { fatalError() }
let plistDecoder = PropertyListDecoder()
let jsonDecoder = JSONDecoder()
@@ -58,9 +59,9 @@ struct Theme: Hashable, Equatable, Identifiable {
guard let decoded =
(try? plistDecoder.decode(ThemeCodable.self, from: data)) ??
(try? jsonDecoder.decode(ThemeCodable.self, from: data))
- else { return nil }
- let theme = Theme(
- name: name,
+ else { fatalError() }
+ var theme = Theme(
+ name: decoded.name ?? name,
ansi: decoded.ansi,
foreground: Color(decoded.foreground),
background: Color(decoded.background),
@@ -72,10 +73,46 @@ struct Theme: Hashable, Equatable, Identifiable {
)
return theme
}
+
+ static func decodeLocalTheme(fileName: String) -> Theme? {
+ guard let path = Bundle.main.url(forResource: fileName, withExtension: "plist") else { return nil }
+ let themeName = path.lastPathComponent.replacingOccurrences(of: ".plist", with: "")
+
+ guard let fileContents = try? Data(contentsOf: path) else { return nil }
+
+ guard var theme = Theme.decodeTheme(name: themeName, data: fileContents) else { return nil }
+ theme.name = themeName
+ theme.id = themeName
+ return theme
+ }
+
+ static var defaultTheme: Theme {
+ return decodeLocalTheme(fileName: "defaultTheme")!
+ }
+
+ static var builtinThemes: [Theme] {
+ return ThemesBuiltin.allCases.map({ decodeLocalTheme(fileName: $0.rawValue)! })
+ }
}
+enum ThemesBuiltin: String, CaseIterable, Hashable, Equatable {
+ case defaultTheme = "defaultTheme"
+ case xcodedark = "xcodedark"
+ case xcodedarkhc = "xcodedarkhc"
+ case xcodewwdc = "xcodewwdc"
+ case tomorrowNight = "tomorrowNight"
+ case zeroXNineSixF = "0x96f"
+ case iTerm2SolarizedDark = "iTerm2SolarizedDark"
+ case iTerm2SolarizedLight = "iTerm2SolarizedLight"
+ case catppuccinFrappe = "catppuccinFrappe"
+ case catppuccinMocha = "catppuccinMocha"
+ case dracula = "dracula"
+ case gruvboxDark = "gruvboxDark"
+ case ubuntu = "ubuntu"
+}
struct ThemeCodable: Codable {
+ var name: String?
var ansi0: ColorCodable
var ansi1: ColorCodable
var ansi2: ColorCodable
diff --git a/ShhShell/Views/Terminal/SSHTerminalDelegate.swift b/ShhShell/Views/Terminal/SSHTerminalDelegate.swift
index 2fab01e..406920f 100644
--- a/ShhShell/Views/Terminal/SSHTerminalDelegate.swift
+++ b/ShhShell/Views/Terminal/SSHTerminalDelegate.swift
@@ -19,7 +19,10 @@ final class SSHTerminalDelegate: TerminalView, Sendable, @preconcurrency Termina
self.handler = handler
self.hostsManager = hostsManager
- applyTheme(index: hostsManager.selectedThemeIndex)
+ print(getTerminal().backgroundColor)
+ print(getTerminal().foregroundColor)
+
+ applyTheme(hostsManager.selectedTheme)
DispatchQueue.main.async {
Task {
@@ -52,11 +55,7 @@ final class SSHTerminalDelegate: TerminalView, Sendable, @preconcurrency Termina
}
}
- func applyTheme(index themeIndex: Int) {
- guard themeIndex != -1 else { return }
- guard let hostsManager = hostsManager else { return }
-
- let theme = hostsManager.themes[themeIndex]
+ func applyTheme(_ theme: Theme) {
getTerminal().installPalette(colors: theme.ansi)
getTerminal().foregroundColor = theme.foreground
getTerminal().backgroundColor = theme.background
diff --git a/ShhShell/Views/Themes/ThemeManagerView.swift b/ShhShell/Views/Themes/ThemeManagerView.swift
index caae6dc..1d46e9f 100644
--- a/ShhShell/Views/Themes/ThemeManagerView.swift
+++ b/ShhShell/Views/Themes/ThemeManagerView.swift
@@ -25,69 +25,93 @@ struct ThemeManagerView: View {
)
var body: some View {
- GeometryReader { geo in
- NavigationStack {
- ScrollView(.horizontal) {
- LazyHGrid(rows: [grid, grid], alignment: .center, spacing: 8) {
- ForEach(hostsManager.themes) { theme in
- ThemePreview(theme: theme)
- .scaleEffect(hostsManager.isThemeSelected(theme) ? 1.2 : 1)
- .onTapGesture {
- hostsManager.selectTheme(theme)
- }
- .contextMenu {
- Button() {
- themeToRename = theme
- rename = theme.name
- showRenameAlert.toggle()
- } label: {
- Label("Rename", systemImage: "pencil")
- }
- Button(role: .destructive) {
- hostsManager.deleteTheme(theme)
- } label: {
- Label("Delete", systemImage: "trash")
- }
- }
+ NavigationStack {
+ List {
+ Section("Your Themes") {
+ if hostsManager.themes.isEmpty {
+ VStack(alignment: .leading) {
+ Image(systemName: "paintpalette")
+ .resizable().scaledToFit()
+ .symbolRenderingMode(.multicolor)
+ .frame(width: 50)
+ Text("No themes (yet)")
+ .font(.title)
+ .padding(.vertical, 10)
+ .bold()
+ Text("Tap the Safari icon at the top right to find themes!")
+ Text("Once you find one that you like, copy it's link and enter it here using the link button.")
}
- }
- .animation(.default, value: hostsManager.themes)
- .alert("", isPresented: $showRenameAlert) {
- TextField("", text: $rename)
- Button("OK") {
- hostsManager.renameTheme(themeToRename, to: rename)
- rename = ""
+ } else {
+ ScrollView(.horizontal) {
+ LazyHGrid(rows: [grid, grid], alignment: .center, spacing: 8) {
+ ForEach(hostsManager.themes) { theme in
+ ThemePreview(hostsManager: hostsManager, theme: theme)
+ .contextMenu {
+ Button() {
+ themeToRename = theme
+ rename = theme.name
+ showRenameAlert.toggle()
+ } label: {
+ Label("Rename", systemImage: "pencil")
+ }
+ Button(role: .destructive) {
+ hostsManager.deleteTheme(theme)
+ } label: {
+ Label("Delete", systemImage: "trash")
+ }
+ }
+ }
+ }
+ .animation(.default, value: hostsManager.themes)
+ .alert("", isPresented: $showRenameAlert) {
+ TextField("", text: $rename)
+ Button("OK") {
+ hostsManager.renameTheme(themeToRename, to: rename)
+ rename = ""
+ }
+ }
}
+ .fixedSize(horizontal: false, vertical: true)
+ .scrollIndicators(.hidden)
}
- .padding(.horizontal, 8)
}
- .fixedSize(horizontal: false, vertical: true)
- .scrollIndicators(.hidden)
- .navigationTitle("Themes")
- .alert("Enter URL", isPresented: $showAlert) {
- TextField("", text: $importURL, prompt: Text("URL"))
+
+ Section("Builtin Themes") {
+ ScrollView(.horizontal) {
+ LazyHGrid(rows: [grid, grid], alignment: .center, spacing: 8) {
+ ForEach(Theme.builtinThemes) { theme in
+ ThemePreview(hostsManager: hostsManager, theme: theme)
+ }
+ }
+ }
+ .scrollIndicators(.hidden)
+ .fixedSize(horizontal: false, vertical: true)
+ }
+ }
+ .navigationTitle("Themes")
+ .alert("Enter URL", isPresented: $showAlert) {
+ TextField("", text: $importURL, prompt: Text("URL"))
+ Button() {
+ hostsManager.downloadTheme(fromUrl: URL(string: importURL))
+ importURL = ""
+ } label: {
+ Label("Import", systemImage: "square.and.arrow.down")
+ }
+ Button("Cancel") {}
+ }
+ .toolbar {
+ ToolbarItem() {
Button() {
- hostsManager.downloadTheme(fromUrl: URL(string: importURL))
- importURL = ""
+ UIApplication.shared.open(URL(string: "https://iterm2colorschemes.com")!)
} label: {
- Label("Import", systemImage: "square.and.arrow.down")
+ Label("Open themes site", systemImage: "safari")
}
- Button("Cancel") {}
}
- .toolbar {
- ToolbarItem() {
- Button() {
- UIApplication.shared.open(URL(string: "https://iterm2colorschemes.com")!)
- } label: {
- Label("Open themes site", systemImage: "safari")
- }
- }
- ToolbarItem() {
- Button() {
- showAlert.toggle()
- } label: {
- Label("From URL", systemImage: "link")
- }
+ ToolbarItem() {
+ Button() {
+ showAlert.toggle()
+ } label: {
+ Label("From URL", systemImage: "link")
}
}
}
diff --git a/ShhShell/Views/Themes/ThemePreview.swift b/ShhShell/Views/Themes/ThemePreview.swift
index 99183be..f0f4d68 100644
--- a/ShhShell/Views/Themes/ThemePreview.swift
+++ b/ShhShell/Views/Themes/ThemePreview.swift
@@ -8,12 +8,25 @@
import SwiftUI
struct ThemePreview: View {
+ @ObservedObject var hostsManager: HostsManager
@State var theme: Theme
var body: some View {
ZStack(alignment: .center) {
- RoundedRectangle(cornerRadius: 10)
+ Rectangle()
+ .fill(Color.accentColor)
+
+ Rectangle()
.fill(theme.background.suiColor)
+ .frame(
+ width: hostsManager.isThemeSelected(theme) ? 190 : 200,
+ height: hostsManager.isThemeSelected(theme) ? 80 : 90
+ )
+ .clipShape(
+ RoundedRectangle(
+ cornerRadius: hostsManager.isThemeSelected(theme) ? 5 : 10
+ )
+ )
VStack(alignment: .leading) {
Text(theme.name)
.foregroundStyle(theme.foreground.suiColor)
@@ -37,6 +50,10 @@ struct ThemePreview: View {
.padding(8)
}
.frame(maxWidth: 200, maxHeight: 90)
+ .clipShape(RoundedRectangle(cornerRadius: 10))
+ .onTapGesture {
+ hostsManager.selectTheme(theme)
+ }
}
}
@@ -45,6 +62,7 @@ struct ThemePreview: View {
let data = try! Data(contentsOf: url)
ThemePreview(
+ hostsManager: HostsManager(),
theme: Theme.decodeTheme(name: "theme", data: data)!
)
}