Компонент Home Assistant, добавляющий Jinja2 фильтр для работы с числительными. Хорошо подходит в дополнение к моему второму компоненту YandexStation.
Внимание: Если вы пользовались компонентом ранее - название функции изменилось!
Устанавливается через HACS.
Настраивается в configuration.yaml
:
morph_numbers:
Используется как дополнительный фильтр в шаблонах.
Полезно при отправке в Телеграм
{{ 24|format(morph='градус', as_text=false) }} => 24 градуса
Полезно для TTS. Яндекс и Google допускают ошибки при произнесении числительных.
{{ 2|format(morph='просроченная задача') }} => две просроченные задачи
{{ 2000435|format(morph='') }} => два миллиона четыреста тридцать пять
Старт занял {{ states('sensor.start_time')|round|format(morph='секунду') }}
{{ 1|format(morph='градус') }}
{{ 1|format(morph='задача') }}
{{ 1|format(morph='дерево') }}
{{ 2000435|format(morph='синее облако') }}
{{ 2|format(morph='запланированная задача', as_text=false) }}
{{ 5|format(morph='просроченная задача', as_text=false) }}
{{ 123|format(morph='') }}
{{ 0|format(morph='градус') }}
{{ -2|format(morph='градус') }}
script:
morph_numbers_test:
sequence:
- service: persistent_notification.create
data_template:
message: Старт занял {{ states('sensor.start_time')|round|format(morph='секунду') }}