feat: add xterm and Monokai Pro themes, set xterm as default
- Add classic xterm theme with VGA colors and black background - Add Monokai Pro theme (standard variant) - Rename old monokai to ristretto (Monokai Pro Ristretto) - Fix ristretto colors to match official palette - Set xterm as default theme - Bump version to 0.6.0
This commit is contained in:
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
[tool.poetry]
|
[tool.poetry]
|
||||||
name = "textual-webterm"
|
name = "textual-webterm"
|
||||||
version = "0.5.8"
|
version = "0.6.0"
|
||||||
description = "Serve terminal sessions over the web"
|
description = "Serve terminal sessions over the web"
|
||||||
authors = ["Will McGugan <will@textualize.io>"]
|
authors = ["Will McGugan <will@textualize.io>"]
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -16,7 +16,31 @@ const DEFAULT_FONT_FAMILY =
|
|||||||
|
|
||||||
/** Predefined terminal themes */
|
/** Predefined terminal themes */
|
||||||
const THEMES: Record<string, ITheme> = {
|
const THEMES: Record<string, ITheme> = {
|
||||||
// Monokai Pro Ristretto - default theme
|
// Classic xterm - default theme (VGA colors, pure black background)
|
||||||
|
xterm: {
|
||||||
|
background: "#000000",
|
||||||
|
foreground: "#e5e5e5",
|
||||||
|
cursor: "#e5e5e5",
|
||||||
|
cursorAccent: "#000000",
|
||||||
|
selection: "#4d4d4d",
|
||||||
|
black: "#000000",
|
||||||
|
red: "#cd0000",
|
||||||
|
green: "#00cd00",
|
||||||
|
yellow: "#cdcd00",
|
||||||
|
blue: "#0000cd",
|
||||||
|
magenta: "#cd00cd",
|
||||||
|
cyan: "#00cdcd",
|
||||||
|
white: "#e5e5e5",
|
||||||
|
brightBlack: "#4d4d4d",
|
||||||
|
brightRed: "#ff0000",
|
||||||
|
brightGreen: "#00ff00",
|
||||||
|
brightYellow: "#ffff00",
|
||||||
|
brightBlue: "#0000ff",
|
||||||
|
brightMagenta: "#ff00ff",
|
||||||
|
brightCyan: "#00ffff",
|
||||||
|
brightWhite: "#ffffff",
|
||||||
|
},
|
||||||
|
// Monokai Pro
|
||||||
monokai: {
|
monokai: {
|
||||||
background: "#2d2a2e",
|
background: "#2d2a2e",
|
||||||
foreground: "#fcfcfa",
|
foreground: "#fcfcfa",
|
||||||
@@ -40,6 +64,30 @@ const THEMES: Record<string, ITheme> = {
|
|||||||
brightCyan: "#78dce8",
|
brightCyan: "#78dce8",
|
||||||
brightWhite: "#fcfcfa",
|
brightWhite: "#fcfcfa",
|
||||||
},
|
},
|
||||||
|
// Monokai Pro Ristretto (warmer variant)
|
||||||
|
ristretto: {
|
||||||
|
background: "#2d2525",
|
||||||
|
foreground: "#fff1f3",
|
||||||
|
cursor: "#fff1f3",
|
||||||
|
cursorAccent: "#2d2525",
|
||||||
|
selection: "#403838",
|
||||||
|
black: "#2c2525",
|
||||||
|
red: "#fd6883",
|
||||||
|
green: "#adda78",
|
||||||
|
yellow: "#f9cc6c",
|
||||||
|
blue: "#f38d70",
|
||||||
|
magenta: "#a8a9eb",
|
||||||
|
cyan: "#85dacc",
|
||||||
|
white: "#f9f8f5",
|
||||||
|
brightBlack: "#655761",
|
||||||
|
brightRed: "#fd6883",
|
||||||
|
brightGreen: "#adda78",
|
||||||
|
brightYellow: "#f9cc6c",
|
||||||
|
brightBlue: "#f38d70",
|
||||||
|
brightMagenta: "#a8a9eb",
|
||||||
|
brightCyan: "#85dacc",
|
||||||
|
brightWhite: "#f9f8f5",
|
||||||
|
},
|
||||||
// Dark themes
|
// Dark themes
|
||||||
dark: {
|
dark: {
|
||||||
background: "#1e1e1e",
|
background: "#1e1e1e",
|
||||||
@@ -335,7 +383,7 @@ class WebTerminal {
|
|||||||
scrollback: config.scrollback ?? 1000,
|
scrollback: config.scrollback ?? 1000,
|
||||||
cursorBlink: true,
|
cursorBlink: true,
|
||||||
cursorStyle: "block",
|
cursorStyle: "block",
|
||||||
theme: config.theme ?? THEMES.monokai,
|
theme: config.theme ?? THEMES.xterm,
|
||||||
wasmPath,
|
wasmPath,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user