diff --git a/src/ScriptEditor/ui/OptionsModal.tsx b/src/ScriptEditor/ui/OptionsModal.tsx
index 55ff9bd54..a4a3bbacb 100644
--- a/src/ScriptEditor/ui/OptionsModal.tsx
+++ b/src/ScriptEditor/ui/OptionsModal.tsx
@@ -45,7 +45,9 @@ export function OptionsModal(props: IProps): React.ReactElement {
-
+
+
+
diff --git a/src/ScriptEditor/ui/themes.ts b/src/ScriptEditor/ui/themes.ts
index 982498113..3e8300997 100644
--- a/src/ScriptEditor/ui/themes.ts
+++ b/src/ScriptEditor/ui/themes.ts
@@ -63,4 +63,159 @@ export async function loadThemes(monaco: { editor: any }): Promise {
"editor.selectionHighlightBorder": "#222218",
},
});
+
+ monaco.editor.defineTheme("solarish-dark", {
+ base: "vs-dark",
+ inherit: true,
+ rules: [
+ {
+ background: "002b36",
+ token: "",
+ },
+ {
+ foreground: "586e75",
+ token: "comment",
+ },
+ {
+ foreground: "00afaf",
+ token: "string",
+ },
+ {
+ token: "number",
+ foreground: "00afaf",
+ },
+ {
+ token: "otherkeyvars",
+ foreground: "268bd2",
+ },
+ {
+ foreground: "268bd2",
+ token: "function",
+ },
+ {
+ foreground: "859900",
+ token: "keyword",
+ },
+ {
+ token: "storage.type.function.js",
+ foreground: "cb4b16",
+ },
+ {
+ token: "ns",
+ foreground: "cb4b16",
+ },
+ {
+ token: "netscriptfunction",
+ foreground: "268bd2",
+ },
+ {
+ token: "otherkeywords",
+ foreground: "268bd2",
+ },
+ {
+ token: "type.identifier.js",
+ foreground: "b58900",
+ },
+ {
+ token: "delimiter.square.js",
+ foreground: "0087ff",
+ },
+ {
+ token: "delimiter.bracket.js",
+ foreground: "0087ff",
+ },
+ {
+ token: "this",
+ foreground: "cb4b16",
+ },
+ ],
+ colors: {
+ "editor.foreground": "#839496",
+ "editor.background": "#002b36",
+ "editor.selectionBackground": "#073642",
+ "editor.lineHighlightBackground": "#073642",
+ "editorCursor.foreground": "#819090",
+ "editorWhitespace.foreground": "#073642",
+ "editorIndentGuide.activeBackground": "#9D550FB0",
+ "editor.selectionHighlightBorder": "#222218",
+ },
+ });
+
+ monaco.editor.defineTheme("solarish-light", {
+ base: "vs",
+ inherit: true,
+ rules: [
+ {
+ foreground: "657b83",
+ background: "fdf6e3",
+ token: "",
+ },
+ {
+ foreground: "586e75",
+ token: "comment",
+ },
+ {
+ foreground: "2aa198",
+ token: "string",
+ },
+ {
+ token: "number",
+ foreground: "2aa198",
+ },
+ {
+ token: "otherkeyvars",
+ foreground: "268bd2",
+ },
+ {
+ foreground: "268bd2",
+ token: "function",
+ },
+ {
+ foreground: "859900",
+ token: "keyword",
+ },
+ {
+ token: "storage.type.function.js",
+ foreground: "bc4b16",
+ },
+ {
+ token: "ns",
+ foreground: "cb4b16",
+ },
+ {
+ token: "netscriptfunction",
+ foreground: "268bd2",
+ },
+ {
+ token: "otherkeywords",
+ foreground: "268bd2",
+ },
+ {
+ token: "type.identifier.js",
+ foreground: "b58900",
+ },
+ {
+ token: "delimiter.square.js",
+ foreground: "0087ff",
+ },
+ {
+ token: "delimiter.bracket.js",
+ foreground: "0087ff",
+ },
+ {
+ token: "this",
+ foreground: "cb4b16",
+ },
+ ],
+ colors: {
+ "editor.foreground": "#657b83",
+ "editor.background": "#fdf6e3",
+ "editor.selectionBackground": "#eee8d5",
+ "editor.lineHighlightBackground": "#eee8d5",
+ "editorCursor.foreground": "#657b83",
+ "editorWhitespace.foreground": "#eee8d5",
+ "editorIndentGuide.activeBackground": "#eee8d5",
+ "editor.selectionHighlightBorder": "#073642",
+ },
+ });
}