diff --git a/CHANGELOG.md b/CHANGELOG.md index 511e1782e6..3dc683673b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/). +## [Unreleased] + +### Added + +- Added Rosé Pine themes https://github.com/Textualize/textual/pull/6277 + ## [6.8.0] - 2025-12-07 ### Added diff --git a/src/textual/theme.py b/src/textual/theme.py index af36369b8f..e6a1f0a735 100644 --- a/src/textual/theme.py +++ b/src/textual/theme.py @@ -283,6 +283,81 @@ def to_color_system(self) -> ColorSystem: "footer-description-foreground": "#fdf6e3", }, ), + "rose-pine": Theme( + name="rose-pine", + primary="#c4a7e7", + secondary="#31748f", + warning="#f6c177", + error="#eb6f92", + success="#9ccfd8", + accent="#ebbcba", + foreground="#e0def4", + background="#191724", + surface="#1f1d2e", + panel="#26233a", + dark=True, + variables={ + "input-cursor-foreground": "#524f67", + "input-cursor-background": "#21202e", + "input-selection-background": "#403d52", + "border": "#524f67", + "border-blurred": "#6e6a86", + "footer-background": "#26233a", + "block-cursor-foreground": "#524f67", + "block-cursor-text-style": "none", + "button-color-foreground": "#403d52", + }, + ), + "rose-pine-moon": Theme( + name="rose-pine-moon", + primary="#c4a7e7", + secondary="#3e8fb0", + warning="#f6c177", + error="#eb6f92", + success="#9ccfd8", + accent="#ea9a97", + foreground="#e0def4", + background="#232136", + surface="#2a273f", + panel="#393552", + dark=True, + variables={ + "input-cursor-foreground": "#56526e", + "input-cursor-background": "#2a283e", + "input-selection-background": "#44415a", + "border": "#56526e", + "border-blurred": "#6e6a86", + "footer-background": "#393552", + "block-cursor-foreground": "#56526e", + "block-cursor-text-style": "none", + "button-color-foreground": "#44415a", + }, + ), + "rose-pine-dawn": Theme( + name="rose-pine-dawn", + primary="#907aa9", + secondary="#286983", + warning="#ea9d34", + error="#b4637a", + success="#56949f", + accent="#d7827e", + foreground="#575279", + background="#faf4ed", + surface="#fffaf3", + panel="#f2e9e1", + dark=False, + variables={ + "input-cursor-foreground": "#cecacd", + "input-cursor-background": "#f4ede8", + "input-selection-background": "#dfdad9", + "border": "#cecacd", + "border-blurred": "#9893a5", + "footer-background": "#f2e9e1", + "block-cursor-foreground": "#cecacd", + "block-cursor-text-style": "none", + "button-color-foreground": "#dfdad9", + }, + ), }