Conversion Anglais/Français Jour de la semaine

J’ai réussi à améliorer la lecture et la contraction du code:

Pour expliquer:
Je créé toujours des variables contenant l’écriture française. J’ajoute cette fois-ci le mois pour etre plus polyvalent
(Vous noterez que j’ai commencé la table mois avec une valeur vide, car je ne sais pas gerer le mois 0…):

{% set mois = ["","Janvier","Fevrier","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Decembre"] %}
{% set jours = ["Lundi","Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"] %}

Je réduis un peu mon code à une variable device pour la compréhension (mon but à moi est d’avoir le datetime du dernier changement d’état d’une liste de device, mais cela fonctionne avec un seul device):

{% set device = ([
states.binary_sensor.porte_001.last_changed,
states.binary_sensor.porte_002.last_changed,
states.binary_sensor.porte_003.last_changed,
states.binary_sensor.porte_004.last_changed,
states.binary_sensor.porte_005.last_changed
]|max) %}

Et je fais référence à mes deux tables à l’aide du chiffre du jour de la semaine, et du numéro du mois pour avoir une date complètement française et configurable comme on le veut:

{{ jours[device.weekday()] }}:
me donne le jour en Français en lieu est place de {{ device.strftime("%A") }}:

{{ device.day }} ou {{ device.strftime("%d") }}:
me donneront le chiffre du jour dans le mois.

{{ mois[device.month]}}:
me donnera le mois en Français en lieu est place de {{ device.strftime("%B") }}:

{{ as_local(device).strftime("%H:%M") }}:
me donne l’heure et les minutes, en forçant la localisation de l’heure (pour gérer le décalage été/hiver)

Pour résumer:

{% set mois = ["","Janvier", "Fevrier","Mars","Avril","Mai","Juin","Juillet","Aout","Septembre","Octobre","Novembre","Decembre"] %}
{% set jours = ["Lundi", "Mardi","Mercredi","Jeudi","Vendredi","Samedi","Dimanche"] %}
{% set device = ([
  states.binary_sensor.porte_001.last_changed,
  states.binary_sensor.porte_002.last_changed,
  states.binary_sensor.porte_003.last_changed,
  states.binary_sensor.porte_004.last_changed,
  states.binary_sensor.porte_005.last_changed
]|max) %}
Le {{ jours[device.weekday()] }} {{ device.day }} {{ mois[device.month]}} à {{ as_local(device).strftime("%Hh%M") }}

Me retourne dans mon sensor :

image

3 « J'aime »