From 483df43d844109bae304643e62665a5d7f61cfe3 Mon Sep 17 00:00:00 2001 From: Daylin Morgan Date: Wed, 15 Jun 2022 13:06:30 -0500 Subject: [PATCH] refactor: change theme defining --- assets/logo.svg | 12 +- assets/themes/cat-frappe.svg | 689 +++++++++++++++++++++++++++++ assets/themes/cat-latte.svg | 689 +++++++++++++++++++++++++++++ assets/themes/cat-macchiato.svg | 689 +++++++++++++++++++++++++++++ assets/themes/cat-mocha.svg | 689 +++++++++++++++++++++++++++++ assets/themes/cat_frappe.svg | 135 ------ assets/themes/cat_latte.svg | 135 ------ assets/themes/cat_macchiato.svg | 135 ------ assets/themes/cat_mocha.svg | 135 ------ assets/themes/dimmed_monokai.svg | 714 ++++++++++++++++++++++++++---- assets/themes/dracula.svg | 688 +++++++++++++++++++++++++++++ assets/themes/monokai.svg | 711 ++++++++++++++++++++++++++---- assets/themes/night-owlish.svg | 685 +++++++++++++++++++++++++++++ assets/themes/night_owlish.svg | 135 ------ assets/themes/rich-default.svg | 716 +++++++++++++++++++++++++++---- assets/themes/rich_default.svg | 135 ------ assets/yartsu.svg | 110 +++-- docs/themes.md | 49 ++- scripts/catppuccin-colors | 13 +- scripts/theme-showcase-gen | 17 +- yartsu/cli.py | 2 +- yartsu/themes.py | 300 ++++++------- 22 files changed, 6280 insertions(+), 1303 deletions(-) create mode 100644 assets/themes/cat-frappe.svg create mode 100644 assets/themes/cat-latte.svg create mode 100644 assets/themes/cat-macchiato.svg create mode 100644 assets/themes/cat-mocha.svg delete mode 100644 assets/themes/cat_frappe.svg delete mode 100644 assets/themes/cat_latte.svg delete mode 100644 assets/themes/cat_macchiato.svg delete mode 100644 assets/themes/cat_mocha.svg create mode 100644 assets/themes/dracula.svg create mode 100644 assets/themes/night-owlish.svg delete mode 100644 assets/themes/night_owlish.svg delete mode 100644 assets/themes/rich_default.svg diff --git a/assets/logo.svg b/assets/logo.svg index 1be7c6b..8b158c2 100644 --- a/assets/logo.svg +++ b/assets/logo.svg @@ -1,37 +1,31 @@ - @@ -119,7 +112,6 @@ - yartsu diff --git a/assets/themes/cat-frappe.svg b/assets/themes/cat-frappe.svg new file mode 100644 index 0000000..b99d82e --- /dev/null +++ b/assets/themes/cat-frappe.svg @@ -0,0 +1,689 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + yartsu --theme cat-frappe --demo + + + + + + + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + + + + + diff --git a/assets/themes/cat-latte.svg b/assets/themes/cat-latte.svg new file mode 100644 index 0000000..b400dba --- /dev/null +++ b/assets/themes/cat-latte.svg @@ -0,0 +1,689 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + yartsu --theme cat-latte --demo + + + + + + + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + + + + + diff --git a/assets/themes/cat-macchiato.svg b/assets/themes/cat-macchiato.svg new file mode 100644 index 0000000..6b0980d --- /dev/null +++ b/assets/themes/cat-macchiato.svg @@ -0,0 +1,689 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + yartsu --theme cat-macchiato --demo + + + + + + + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + + + + + diff --git a/assets/themes/cat-mocha.svg b/assets/themes/cat-mocha.svg new file mode 100644 index 0000000..b582266 --- /dev/null +++ b/assets/themes/cat-mocha.svg @@ -0,0 +1,689 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + yartsu --theme cat-mocha --demo + + + + + + + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + + + + + diff --git a/assets/themes/cat_frappe.svg b/assets/themes/cat_frappe.svg deleted file mode 100644 index 48d08c1..0000000 --- a/assets/themes/cat_frappe.svg +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - yartsu --theme cat_frappe - - - - - - - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes - - - - diff --git a/assets/themes/cat_latte.svg b/assets/themes/cat_latte.svg deleted file mode 100644 index b4d1ab2..0000000 --- a/assets/themes/cat_latte.svg +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - yartsu --theme cat_latte - - - - - - - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes - - - - diff --git a/assets/themes/cat_macchiato.svg b/assets/themes/cat_macchiato.svg deleted file mode 100644 index c117083..0000000 --- a/assets/themes/cat_macchiato.svg +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - yartsu --theme cat_macchiato - - - - - - - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes - - - - diff --git a/assets/themes/cat_mocha.svg b/assets/themes/cat_mocha.svg deleted file mode 100644 index 5cffeaa..0000000 --- a/assets/themes/cat_mocha.svg +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - yartsu --theme cat_mocha - - - - - - - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes - - - - diff --git a/assets/themes/dimmed_monokai.svg b/assets/themes/dimmed_monokai.svg index 4534f14..19cfbc0 100644 --- a/assets/themes/dimmed_monokai.svg +++ b/assets/themes/dimmed_monokai.svg @@ -1,134 +1,688 @@ - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - yartsu --theme dimmed_monokai + yartsu --theme dimmed_monokai --demo - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + diff --git a/assets/themes/dracula.svg b/assets/themes/dracula.svg new file mode 100644 index 0000000..6c81ebf --- /dev/null +++ b/assets/themes/dracula.svg @@ -0,0 +1,688 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + yartsu --theme dracula --demo + + + + + + + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + + + + + diff --git a/assets/themes/monokai.svg b/assets/themes/monokai.svg index 953ae62..790c60a 100644 --- a/assets/themes/monokai.svg +++ b/assets/themes/monokai.svg @@ -1,134 +1,685 @@ - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - yartsu --theme monokai + yartsu --theme monokai --demo - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + diff --git a/assets/themes/night-owlish.svg b/assets/themes/night-owlish.svg new file mode 100644 index 0000000..8c0fed6 --- /dev/null +++ b/assets/themes/night-owlish.svg @@ -0,0 +1,685 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + yartsu --theme night-owlish --demo + + + + + + + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + + + + + diff --git a/assets/themes/night_owlish.svg b/assets/themes/night_owlish.svg deleted file mode 100644 index 1b501d8..0000000 --- a/assets/themes/night_owlish.svg +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - yartsu --theme night_owlish - - - - - - - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes - - - - diff --git a/assets/themes/rich-default.svg b/assets/themes/rich-default.svg index 1fd8e93..ac49bf8 100644 --- a/assets/themes/rich-default.svg +++ b/assets/themes/rich-default.svg @@ -1,134 +1,688 @@ - + - - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - yartsu --theme rich-default + yartsu --theme rich-default --demo - - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes + + + + +                                                      Rich features                                                       + +   Colors   ✓ 4-bit color +✓ 8-bit color +✓ Truecolor (16.7 million) +✓ Dumb terminals +✓ Automatic color conversion + +   Styles   All ansi styles: bolddimitalicunderlinestrikethroughreverse, and even blink.                    + +    Text    Word wrap text. Justify leftcenterright or full.                                                      + +Lorem ipsum dolor sit      Lorem ipsum dolor sit       Lorem ipsum dolor sitLoremipsumdolorsit +amet, consectetur            amet, consectetur             amet, consecteturamet,consectetur +adipiscing elit. Quisque adipiscing elit. Quisque   adipiscing elit. Quisqueadipiscingelit.Quisque +in metus sed sapien         in metus sed sapien          in metus sed sapieninmetussedsapien +ultricies pretium a at    ultricies pretium a at      ultricies pretium a atultriciespretiumaat +justo. Maecenas luctus    justo. Maecenas luctus      justo. Maecenas luctusjusto.Maecenasluctus +velit et auctor maximus. velit et auctor maximus.   velit et auctor maximus.velit et auctor maximus. + +   Asian    🇨🇳  该库支持中文,日文和韩文文本!                                                                        +  language  🇯🇵  ライブラリは中国語、日本語、韓国語のテキストをサポートしています                                      +  support   🇰🇷  이 라이브러리는 중국어, 일본어 및 한국어 텍스트를 지원합니다                                          + +   Markup   Rich supports a simple bbcode-like markup for colorstyle, and emoji! 👍 🍎 🐜 🐻 🥖 🚌                  + +   Tables   DateTitleProduction BudgetBox Office +───────────────────────────────────────────────────────────────────────────────────────── +Dec 20, 2019Star Wars: The Rise of Skywalker        $275,000,000  $375,126,118 +May 25, 2018Solo: A Star Wars Story                 $275,000,000  $393,151,347 +Dec 15, 2017Star Wars Ep. VIII: The Last Jedi       $262,000,000$1,332,539,889 +May 19, 1999Star Wars Ep. IThe phantom Menace     $115,000,000$1,027,044,677 + +   Syntax    1 defiter_last(values:Iterable[T])->Iterable[{ +highlighting 2 │   """Iterate and generate a tuple with a flag│   'foo'[ +     &       3 │   iter_values=iter(values)│   │   3.1427, +   pretty    4 │   try:│   │   ( +  printing   5 │   │   previous_value=next(iter_values)│   │   │   'Paul Atreides', + 6 │   exceptStopIteration:│   │   │   'Vladimir Harkonnen', + 7 │   │   return│   │   │   'Thufir Hawat' + 8 │   forvalueiniter_values:│   │   ) + 9 │   │   yieldFalse,previous_value│   ], +10 │   │   previous_value=value│   'atomic'(FalseTrueNone) +11 │   yieldTrue,previous_value} + +  Markdown  # Markdown╔═════════════════════════════════════════════════╗ +Markdown +Supports much of the *markdown* __syntax__!╚═════════════════════════════════════════════════╝ + +- HeadersSupports much of the markdownsyntax! +- Basic formatting: **bold**, *italic*, `code` +- Block quotes • Headers +- Lists, and more... • Basic formatting: bolditaliccode + • Block quotes + • Lists, and more... + +   +more!   Progress bars, columns, styled logging handler, tracebacks, etc...                                        + diff --git a/assets/themes/rich_default.svg b/assets/themes/rich_default.svg deleted file mode 100644 index 8988891..0000000 --- a/assets/themes/rich_default.svg +++ /dev/null @@ -1,135 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - yartsu --theme rich_default - - - - - - - - - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes - - - - diff --git a/assets/yartsu.svg b/assets/yartsu.svg index f1d21ab..7e45a93 100644 --- a/assets/yartsu.svg +++ b/assets/yartsu.svg @@ -1,134 +1,126 @@ - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - yartsu --help + yartsu --help - + - - usage: - -    ls --color=always | yartsu [options] -OR -    yartsu [options] -- ls --color -OR -    ls --color=always > ls.txt; yartsu -i ls.txt - -convert terminal output to svg - -options: --h--help           show this help message and exit --V--version        show program's version number and exit --i--input INPUT    input file [default: stdin] --o--output OUTPUT  output svg file [default: capture.svg] --t--title TITLE    title for terminal window --w--width WIDTH    width of svg ---theme THEME        theme to use for highlighting [default: cat_mocha] ---list-themes        list available themes + + usage: + +    ls --color=always | yartsu [options] +OR +    yartsu [options] -- ls --color +OR +    ls --color=always > ls.txt; yartsu -i ls.txt + +convert terminal output to svg + +options: +-h--help           show this help message and exit +-V--version        show program's version number and exit +-i--input INPUT    input file [default: stdin] +-o--output OUTPUT  output svg file [default: capture.svg] +-t--title TITLE    title for terminal window +-w--width WIDTH    width of svg +--theme THEME        theme to use for highlighting [default: cat-mocha] +--list-themes        list available themes diff --git a/docs/themes.md b/docs/themes.md index fb8a5d6..1adc33a 100644 --- a/docs/themes.md +++ b/docs/themes.md @@ -1,26 +1,51 @@ +
+ # Themes + Available themes: +- [cat-mocha](#cat-mocha) +- [cat-frappe](#cat-frappe) +- [cat-macchiato](#cat-macchiato) +- [cat-latte](#cat-latte) +- [dracula](#dracula) +- [monokai](#monokai) +- [dimmed_monokai](#dimmedmonokai) +- [night-owlish](#night-owlish) +- [rich-default](#rich-default) -## cat_mocha -![cat_mocha](../assets/themes/cat_mocha.svg) -## cat_frappe -![cat_frappe](../assets/themes/cat_frappe.svg) +## cat-mocha +![cat-mocha](../assets/themes/cat-mocha.svg) +

(back to top)

-## cat_macchiato -![cat_macchiato](../assets/themes/cat_macchiato.svg) +## cat-frappe +![cat-frappe](../assets/themes/cat-frappe.svg) +

(back to top)

-## cat_latte -![cat_latte](../assets/themes/cat_latte.svg) +## cat-macchiato +![cat-macchiato](../assets/themes/cat-macchiato.svg) +

(back to top)

+ +## cat-latte +![cat-latte](../assets/themes/cat-latte.svg) +

(back to top)

+ +## dracula +![dracula](../assets/themes/dracula.svg) +

(back to top)

## monokai ![monokai](../assets/themes/monokai.svg) +

(back to top)

## dimmed_monokai ![dimmed_monokai](../assets/themes/dimmed_monokai.svg) +

(back to top)

-## night_owlish -![night_owlish](../assets/themes/night_owlish.svg) +## night-owlish +![night-owlish](../assets/themes/night-owlish.svg) +

(back to top)

-## rich_default -![rich_default](../assets/themes/rich_default.svg) +## rich-default +![rich-default](../assets/themes/rich-default.svg) +

(back to top)

diff --git a/scripts/catppuccin-colors b/scripts/catppuccin-colors index a50c374..eb79124 100755 --- a/scripts/catppuccin-colors +++ b/scripts/catppuccin-colors @@ -42,7 +42,8 @@ bright_colors=( make-palette() { - echo "cat_${1} = Theme(" + echo "Theme(" + echo " name = \"cat-$1\"," echo " background = $(get-color $1 base)," echo " foreground = $(get-color $1 text)," echo " colors = Colors(" @@ -56,15 +57,7 @@ make-palette() { echo " $color = ${bright_colors[$color]}," done echo " )," - echo ")" - - echo "CAT_${1^^} = TerminalTheme( - cat_${1}.background, - cat_${1}.foreground, - cat_${1}.colors, - cat_${1}.bright_colors, - )" - + echo ")," } for palette in "$@"; do diff --git a/scripts/theme-showcase-gen b/scripts/theme-showcase-gen index d01976c..ae2faad 100755 --- a/scripts/theme-showcase-gen +++ b/scripts/theme-showcase-gen @@ -4,17 +4,32 @@ THEME_MD="./docs/themes.md" themes=$(yartsu --list-themes | tail -n +2 | awk '{print $2}') +newline() { + echo >>"$THEME_MD" +} + mkdir -p ./assets/themes +rm -f ./assets/themes/* rm -f $THEME_MD +echo '
' >>$THEME_MD +newline echo "# Themes" >>$THEME_MD +newline +echo " Available themes:" >>$THEME_MD + +for theme in $themes; do + echo "- [$theme](#$(echo $theme | sed s'/_//'))" >>$THEME_MD +done echo >>$THEME_MD + for theme in $themes; do url="assets/themes/${theme}.svg" echo >>$THEME_MD echo "## $theme" >>$THEME_MD echo "![$theme](../$url)" >>$THEME_MD - yartsu --theme $theme -o $url -t "yartsu --theme ${theme}" -- yartsu -h + echo '

(back to top)

' >>$THEME_MD + yartsu --theme $theme -o $url --demo -t "yartsu --theme ${theme} --demo" done echo "finished." diff --git a/yartsu/cli.py b/yartsu/cli.py index 8a8bf1b..f119631 100644 --- a/yartsu/cli.py +++ b/yartsu/cli.py @@ -15,7 +15,7 @@ from .argparse import ArgumentParser from .term import term from .themes import THEMES -DEFAULT_THEME = os.getenv("YARTSU_THEME", "cat_mocha") +DEFAULT_THEME = os.getenv("YARTSU_THEME", "cat-mocha") def get_args() -> Namespace: diff --git a/yartsu/themes.py b/yartsu/themes.py index fd39f26..5ae9e8d 100644 --- a/yartsu/themes.py +++ b/yartsu/themes.py @@ -10,169 +10,151 @@ from rich.terminal_theme import ( ) Colors = namedtuple("Colors", "black, red, green, yellow, blue, magenta, cyan, white") -Theme = namedtuple("Theme", "background, foreground, colors, bright_colors") +Theme = namedtuple("Theme", "name background, foreground, colors, bright_colors") -dracula = Theme( - background=parse_rgb_hex('282a36'), - foreground=parse_rgb_hex('f8f8f2'), - colors=Colors( - black=parse_rgb_hex('21222c'), - cyan=parse_rgb_hex('8be9fd'), - yellow=parse_rgb_hex('f1fa8c'), - blue=parse_rgb_hex('bd93f9'), - red=parse_rgb_hex('ff5555'), - green=parse_rgb_hex('50fa7b'), - magenta=parse_rgb_hex('ff79c6'), - white=parse_rgb_hex('f8f8f2'), +THEME_DEFINITIONS = [ + Theme( + name="cat-mocha", + background=(30, 30, 46), + foreground=(198, 208, 245), + colors=Colors( + black=(179, 188, 223), + cyan=(148, 226, 213), + yellow=(249, 226, 175), + blue=(135, 176, 249), + red=(243, 139, 168), + white=(86, 89, 112), + green=(166, 227, 161), + magenta=(245, 194, 231), + ), + bright_colors=Colors( + black=(161, 168, 201), + cyan=(148, 226, 213), + yellow=(249, 226, 175), + blue=(135, 176, 249), + red=(243, 139, 168), + white=(67, 70, 90), + green=(166, 227, 161), + magenta=(245, 194, 231), + ), ), - bright_colors=Colors( - black=parse_rgb_hex('6272a4'), - cyan=parse_rgb_hex('a4ffff'), - red=parse_rgb_hex('ff6e6e'), - yellow=parse_rgb_hex('ffffa5'), - blue=parse_rgb_hex('d6acff'), - green=parse_rgb_hex('69ff94'), - magenta=parse_rgb_hex('ff92df'), - white=parse_rgb_hex('ffffff'), + Theme( + name="cat-frappe", + background=(48, 52, 70), + foreground=(198, 206, 239), + colors=Colors( + black=(179, 188, 223), + cyan=(148, 226, 213), + yellow=(249, 226, 175), + blue=(135, 176, 249), + red=(243, 139, 168), + white=(86, 89, 112), + green=(166, 227, 161), + magenta=(245, 194, 231), + ), + bright_colors=Colors( + black=(161, 168, 201), + cyan=(148, 226, 213), + yellow=(249, 226, 175), + blue=(135, 176, 249), + red=(243, 139, 168), + white=(67, 70, 90), + green=(166, 227, 161), + magenta=(245, 194, 231), + ), ), -) + Theme( + name="cat-macchiato", + background=(36, 39, 58), + foreground=(197, 207, 245), + colors=Colors( + black=(179, 188, 223), + cyan=(148, 226, 213), + yellow=(249, 226, 175), + blue=(135, 176, 249), + red=(243, 139, 168), + white=(86, 89, 112), + green=(166, 227, 161), + magenta=(245, 194, 231), + ), + bright_colors=Colors( + black=(161, 168, 201), + cyan=(148, 226, 213), + yellow=(249, 226, 175), + blue=(135, 176, 249), + red=(243, 139, 168), + white=(67, 70, 90), + green=(166, 227, 161), + magenta=(245, 194, 231), + ), + ), + Theme( + name="cat-latte", + background=(239, 241, 245), + foreground=(76, 79, 105), + colors=Colors( + black=(179, 188, 223), + cyan=(148, 226, 213), + yellow=(249, 226, 175), + blue=(135, 176, 249), + red=(243, 139, 168), + white=(86, 89, 112), + green=(166, 227, 161), + magenta=(245, 194, 231), + ), + bright_colors=Colors( + black=(161, 168, 201), + cyan=(148, 226, 213), + yellow=(249, 226, 175), + blue=(135, 176, 249), + red=(243, 139, 168), + white=(67, 70, 90), + green=(166, 227, 161), + magenta=(245, 194, 231), + ), + ), + Theme( + name="dracula", + background=parse_rgb_hex("282a36"), + foreground=parse_rgb_hex("f8f8f2"), + colors=Colors( + black=parse_rgb_hex("21222c"), + cyan=parse_rgb_hex("8be9fd"), + yellow=parse_rgb_hex("f1fa8c"), + blue=parse_rgb_hex("bd93f9"), + red=parse_rgb_hex("ff5555"), + green=parse_rgb_hex("50fa7b"), + magenta=parse_rgb_hex("ff79c6"), + white=parse_rgb_hex("f8f8f2"), + ), + bright_colors=Colors( + black=parse_rgb_hex("6272a4"), + cyan=parse_rgb_hex("a4ffff"), + red=parse_rgb_hex("ff6e6e"), + yellow=parse_rgb_hex("ffffa5"), + blue=parse_rgb_hex("d6acff"), + green=parse_rgb_hex("69ff94"), + magenta=parse_rgb_hex("ff92df"), + white=parse_rgb_hex("ffffff"), + ), + ), +] -DRACULA = TerminalTheme( - dracula.background, - dracula.foreground, - dracula.colors, - dracula.bright_colors, -) - -cat_mocha = Theme( - background=(30, 30, 46), - foreground=(198, 208, 245), - colors=Colors( - black=(179, 188, 223), - cyan=(148, 226, 213), - yellow=(249, 226, 175), - blue=(135, 176, 249), - red=(243, 139, 168), - white=(86, 89, 112), - green=(166, 227, 161), - magenta=(245, 194, 231), - ), - bright_colors=Colors( - black=(161, 168, 201), - cyan=(148, 226, 213), - yellow=(249, 226, 175), - blue=(135, 176, 249), - red=(243, 139, 168), - white=(67, 70, 90), - green=(166, 227, 161), - magenta=(245, 194, 231), - ), -) -CAT_MOCHA = TerminalTheme( - cat_mocha.background, - cat_mocha.foreground, - cat_mocha.colors, - cat_mocha.bright_colors, -) -cat_frappe = Theme( - background=(48, 52, 70), - foreground=(198, 206, 239), - colors=Colors( - black=(179, 188, 223), - cyan=(148, 226, 213), - yellow=(249, 226, 175), - blue=(135, 176, 249), - red=(243, 139, 168), - white=(86, 89, 112), - green=(166, 227, 161), - magenta=(245, 194, 231), - ), - bright_colors=Colors( - black=(161, 168, 201), - cyan=(148, 226, 213), - yellow=(249, 226, 175), - blue=(135, 176, 249), - red=(243, 139, 168), - white=(67, 70, 90), - green=(166, 227, 161), - magenta=(245, 194, 231), - ), -) -CAT_FRAPPE = TerminalTheme( - cat_frappe.background, - cat_frappe.foreground, - cat_frappe.colors, - cat_frappe.bright_colors, -) -cat_macchiato = Theme( - background=(36, 39, 58), - foreground=(197, 207, 245), - colors=Colors( - black=(179, 188, 223), - cyan=(148, 226, 213), - yellow=(249, 226, 175), - blue=(135, 176, 249), - red=(243, 139, 168), - white=(86, 89, 112), - green=(166, 227, 161), - magenta=(245, 194, 231), - ), - bright_colors=Colors( - black=(161, 168, 201), - cyan=(148, 226, 213), - yellow=(249, 226, 175), - blue=(135, 176, 249), - red=(243, 139, 168), - white=(67, 70, 90), - green=(166, 227, 161), - magenta=(245, 194, 231), - ), -) -CAT_MACCHIATO = TerminalTheme( - cat_macchiato.background, - cat_macchiato.foreground, - cat_macchiato.colors, - cat_macchiato.bright_colors, -) -cat_latte = Theme( - background=(239, 241, 245), - foreground=(76, 79, 105), - colors=Colors( - black=(179, 188, 223), - cyan=(148, 226, 213), - yellow=(249, 226, 175), - blue=(135, 176, 249), - red=(243, 139, 168), - white=(86, 89, 112), - green=(166, 227, 161), - magenta=(245, 194, 231), - ), - bright_colors=Colors( - black=(161, 168, 201), - cyan=(148, 226, 213), - yellow=(249, 226, 175), - blue=(135, 176, 249), - red=(243, 139, 168), - white=(67, 70, 90), - green=(166, 227, 161), - magenta=(245, 194, 231), - ), -) -CAT_LATTE = TerminalTheme( - cat_latte.background, - cat_latte.foreground, - cat_latte.colors, - cat_latte.bright_colors, -) THEMES = { - "cat_mocha": CAT_MOCHA, - "cat_frappe": CAT_FRAPPE, - "cat_macchiato": CAT_MACCHIATO, - "cat_latte": CAT_LATTE, - "dracula": DRACULA, - "monokai": MONOKAI, - "dimmed_monokai": DIMMED_MONOKAI, - "night_owlish": NIGHT_OWLISH, - "rich_default": SVG_EXPORT_THEME, + **{ + theme.name: TerminalTheme( + theme.background, + theme.foreground, + theme.colors, + theme.bright_colors, + ) + for theme in THEME_DEFINITIONS + }, + **{ + "monokai": MONOKAI, + "dimmed_monokai": DIMMED_MONOKAI, + "night-owlish": NIGHT_OWLISH, + "rich-default": SVG_EXPORT_THEME, + }, }