Motywy

repartee używa ciągów formatujących kompatybilnych z irssi z obsługą kolorów 24-bitowych.

Pliki motywów

Motywy to pliki TOML przechowywane w ~/.repartee/themes/. Ustaw aktywny motyw w konfiguracji:

[general]
theme = "mytheme"

Załaduje to ~/.repartee/themes/mytheme.theme.

Struktura motywu

Plik motywu składa się z dwóch sekcji: colors i abstracts.

[colors]
bg = "1a1b26"
bg_alt = "24283b"
fg = "a9b1d6"
fg_alt = "565f89"
highlight = "e0af68"
nick_self = "7aa2f7"
timestamp = "565f89"
separator = "3b4261"

[abstracts]
line_start = "{timestamp $Z}{sb_background}"
timestamp = "%Z565f89$*"
own_msg = "{ownmsgnick $0}$1"
pubmsg = "{pubmsgnick $0}$1"
date_separator = "%Z3b4261─── $* ───"
backlog_end = "%Z565f89─── End of backlog ($* lines) ───"

Kolory

Sekcja [colors] definiuje wartości hex RGB (bez #) dla elementów interfejsu:

KluczOpis
bgGłówny kolor tła
bg_altAlternatywne tło (pasek tematu, pasek statusu)
fgGłówny kolor tekstu
fg_altPrzytłumiony kolor tekstu
highlightKolor podświetlenia/wzmianki
nick_selfKolor Twojego nicka
timestampKolor znacznika czasu
separatorKolor obramowania/separatora

Abstrakcje

Abstrakcje to nazwane szablony ciągów formatujących, które mogą się wzajemnie odwoływać. Kontrolują sposób renderowania każdego elementu interfejsu -- od linii wiadomości po pasek statusu.

Zobacz Ciągi formatujące poniżej, aby poznać pełną składnię ciągów formatujących.

Wbudowane motywy

repartee dostarcza dwa wbudowane motywy automatycznie instalowane w ~/.repartee/themes/:

  • default -- ciemna paleta kolorów inspirowana Tokyo Night
  • spring -- bogata paleta kolorystyczna z dostosowanymi abstrakcjami dla zdarzeń, listy nicków i paska statusu

Możesz przełączać motywy w locie za pomocą /set general.theme spring (lub przez /wizard) oraz /reload.


Ciągi formatujące

repartee implementuje pełny silnik ciągów formatujących kompatybilny z irssi z rozszerzeniami dla kolorów 24-bitowych.

Kody kolorów

24-bitowy kolor pierwszego planu: %Z + RRGGBB

%Z7aa2f7Hello    → "Hello" in blue (#7aa2f7)

24-bitowy kolor tła: %z + RRGGBB

%z1a1b26%Za9b1d6Text    → Light text on dark background

Jednoliterowe kody irssi: %X

KodKolor
%k / %KCzarny / Ciemnoszary
%r / %RCzerwony / Jasnoczerwony
%g / %GZielony / Jasnozielony
%y / %YŻółty / Jasnożółty
%b / %BNiebieski / Jasnoniebieski
%m / %MMagenta / Jasna magenta
%c / %CCyjan / Jasny cyjan
%w / %WBiały / Jasny biały

Kody stylu

KodEfekt
%_Pogrubienie
%/Kursywa
%-Przekreślenie
%UPodkreślenie
%n / %NResetuj wszystkie formatowania

Abstrakcje: {name args}

Abstrakcje to nazwane szablony, które rozwijają się rekurencyjnie:

[abstracts]
sb_background = "%z24283b"
timestamp = "%Z565f89$*"
line_start = "{timestamp $Z}{sb_background}"

Użycie w innej abstrakcji: {timestamp 12:34} rozwija $* do 12:34.

Podstawianie zmiennych

SkładniaZnaczenie
$0 - $9Argument pozycyjny
$*Wszystkie argumenty połączone
$[N]0Argument wypełniony/obcięty do N znaków

Przykład: $[8]0 wypełnia argument 0 do 8 znaków (domyślnie wyrównany do prawej).

Znaki sterujące mIRC

repartee parsuje również znaki sterujące w stylu mIRC w przychodzących wiadomościach:

ZnakHexEfekt
Pogrubienie\x02Przełącz pogrubienie
Kolor\x03Kod koloru mIRC (fg,bg)
Kolor hex\x04Kod koloru hex
Reset\x0FResetuj wszystkie formatowania
Odwrócenie\x16Zamień fg/bg
Kursywa\x1DPrzełącz kursywę
Przekreślenie\x1EPrzełącz przekreślenie
Podkreślenie\x1FPrzełącz podkreślenie

Głębokość abstrakcji

Abstrakcje mogą odwoływać się do innych abstrakcji do 10 poziomów głębokości, aby zapobiec nieskończonej rekurencji.