mirror of
https://github.com/koloideal/Argenta.git
synced 2026-06-10 18:15:28 +03:00
docs
This commit is contained in:
@@ -0,0 +1,11 @@
|
|||||||
|
from argenta import App
|
||||||
|
|
||||||
|
def custom_print_function(text: str) -> None:
|
||||||
|
"""Простая пользовательская функция вывода с префиксом."""
|
||||||
|
print(f"Префикс: {text}")
|
||||||
|
|
||||||
|
app = App(
|
||||||
|
initial_message="My App",
|
||||||
|
override_system_messages=True,
|
||||||
|
print_func=custom_print_function,
|
||||||
|
)
|
||||||
@@ -3,7 +3,7 @@
|
|||||||
Стандартное форматирование
|
Стандартное форматирование
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
По умолчанию в ``Argenta`` используется библиотека ``rich`` для вывода текстовых сообщений с расширенным форматированием в консоли. ``rich`` позволяет применять цвета, стили (жирный, курсив, подчеркнутый), составлять таблицы, выделять синтаксис кода и многое другое, что значительно улучшает визуальное восприятие текста.
|
По умолчанию в ``Argenta`` используется библиотека ``rich`` для вывода текста с расширенным форматированием в консоли. ``rich`` позволяет применять цвета, стили (жирный, курсив, подчеркнутый), составлять таблицы, выделять синтаксис кода и многое другое, что значительно улучшает визуальное восприятие текста.
|
||||||
|
|
||||||
Вывод системных сообщений производится с помощью метода ``print`` объекта ``Console`` из библиотеки ``rich``, который обладает интерфейсом, совместимым со встроенной функцией ``print``.
|
Вывод системных сообщений производится с помощью метода ``print`` объекта ``Console`` из библиотеки ``rich``, который обладает интерфейсом, совместимым со встроенной функцией ``print``.
|
||||||
|
|
||||||
@@ -12,46 +12,32 @@
|
|||||||
Управление стандартным форматированием
|
Управление стандартным форматированием
|
||||||
--------------------------------------
|
--------------------------------------
|
||||||
|
|
||||||
При создании экземпляра класса ``App`` предусмотрен параметр ``overridesystemmessages`` типа ``bool`` (по умолчанию ``False``), который позволяет включать или отключать стандартное форматирование системных сообщений.
|
При создании экземпляра класса ``App`` предусмотрен параметр ``override_system_messages`` типа ``bool`` (по умолчанию ``False``), который позволяет включать или отключать стандартное форматирование системных сообщений.
|
||||||
|
|
||||||
Если установить этот флаг в ``True``, стандартное форматирование, применяемое по умолчанию (например, стилизация текста и ASCII-арт), будет отключено, и системные сообщения будут выводиться в "сыром" виде, без дополнительных стилей.
|
Если установить этот флаг в ``True``, стандартное форматирование, применяемое по умолчанию (например, стилизация текста и ASCII-арт), будет отключено, и системные сообщения будут выводиться в "сыром" виде, без дополнительных стилей.
|
||||||
|
|
||||||
|
-----
|
||||||
|
|
||||||
Приветственное и прощальное сообщения
|
Приветственное и прощальное сообщения
|
||||||
--------------------------------------
|
--------------------------------------
|
||||||
|
|
||||||
Приветственное (``initialmessage``) и прощальное (``farewellmessage``) сообщения по умолчанию формируются как ASCII-графика с помощью библиотеки ``art``. В частности, используется функция ``text2art``, которая преобразует обычный текст в стилизованное ASCII-арт изображение.
|
Приветственное (``initial_message``) и прощальное (``farewell_message``) сообщения по умолчанию формируются как ASCII-графика с помощью библиотеки ``art``. В частности, используется функция ``text2art``, которая преобразует обычный текст в стилизованное ASCII-арт изображение.
|
||||||
|
|
||||||
.. warning::
|
.. warning::
|
||||||
Библиотека ``art`` ориентирована на работу с ASCII-символами и **не поддерживает корректный вывод кириллицы**. Это приводит к искажению или некорректному отображению символов русского и других кириллических алфавитов. Если ваше приветственное сообщение содержит кириллицу, рекомендуется отключить стандартное форматирование с помощью ``overridesystemmessages=True`` или использовать только латинские символы.
|
Библиотека ``art`` ориентирована на работу с ASCII-символами и **не поддерживает корректный вывод кириллицы**. Это приводит к искажению или некорректному отображению символов русского и других кириллических алфавитов. Если ваше приветственное сообщение содержит кириллицу, рекомендуется отключить стандартное форматирование с помощью ``override_system_messages=True`` или использовать только латинские символы.
|
||||||
|
|
||||||
|
-----
|
||||||
|
|
||||||
Кастомизация вывода
|
Кастомизация вывода
|
||||||
-------------------
|
-------------------
|
||||||
|
|
||||||
Для полной замены логики вывода сообщений в конструкторе ``App`` доступен параметр ``printfunc``.
|
Для полной замены логики вывода сообщений в конструкторе ``App`` доступен параметр ``print_func``.
|
||||||
|
|
||||||
* **printfunc**: ``Printer`` (Callable)
|
* **print_func**: ``Printer`` - Протокол ``Printer`` соответствует ``Callable[[str], None]``.
|
||||||
Этот параметр позволяет передать любую вызываемую сущность (например, функцию), которая будет использоваться для вывода всех системных сообщений. По умолчанию это обертка вокруг ``rich.console.Console().print``. Вы можете передать сюда свою функцию, чтобы, например, логировать вывод в файл или отправлять его по сети.
|
Этот параметр позволяет передать любую вызываемую сущность (например, функцию или лямбду), которая будет использоваться для вывода всех системных сообщений. По умолчанию это обертка вокруг ``rich.console.Console().print``. Вы можете передать сюда свою функцию, чтобы, например, логировать вывод в файл или отправлять его по сети.
|
||||||
|
|
||||||
Пример использования
|
Пример использования
|
||||||
--------------------
|
--------------------
|
||||||
|
|
||||||
.. code-block:: python
|
.. literalinclude:: ../code_snippets/overriding_format_example_sample.py
|
||||||
|
:language: python
|
||||||
from argenta import App
|
|
||||||
|
|
||||||
def custom_print_function(text: str) -> None:
|
|
||||||
"""Простая пользовательская функция вывода с префиксом."""
|
|
||||||
print(f"MOЙ ВЫВОД: {text}")
|
|
||||||
|
|
||||||
# Инициализация приложения с отключенным форматированием по умолчанию
|
|
||||||
# и собственной функцией вывода.
|
|
||||||
app = App(
|
|
||||||
initialmessage="Moe Prilojenie",
|
|
||||||
overridesystemmessages=True,
|
|
||||||
printfunc=custom_print_function,
|
|
||||||
)
|
|
||||||
|
|
||||||
# При запуске `initialmessage` будет выведено через `custom_print_function`
|
|
||||||
# без преобразования в ASCII-арт и без стилей `rich`.
|
|
||||||
# app.run()
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user