Вот мой код:
Код: Выделить всё
from textual import work
from textual.app import App
from textual.widgets import Log
from rich.style import Style
class BrokenLog(App[None]):
CSS = "Log { border: solid $accent; }"
def compose(self):
yield Log()
async def on_mount(self):
self.query_one(Log).write_lines(
(Style(color="red") if i % 2 else Style(color="green")).render(f"line {i}")
for i in range(100)
)
BrokenLog().run()

Я подозреваю, что ширина линий будет вычисляться без управляющих последовательностей, но я не знаю, как указать виджету журнала, чтобы он учитывал их.
Я Я делаю что-то не так? Есть ли другой способ рисовать линии в окне журнала разного цвета?
Я использую textual=0.46.0 и rich=13.7.0 с Python 3.11.4
Подробнее здесь: https://stackoverflow.com/questions/777 ... yled-colou
Мобильная версия