Forum Programmation.python [Résolu] Ivre, il tente d'écrire dans un pipe en python

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
7
2
jan.
2022

Salut les gens !

Le pilote Linux de mon clavier Corsair (CKB-Next) me permet de changer la couleur de l'éclairage des touches, avec une commande shell du type

echo "rgb ff0000ff" > /tmp/ckbpipe000

Du coup, je tente de faire la même chose en Python, dans un premier temps pour m'amuser, avec l'espoir de me faire plus tard peut-être une coloration dynamique des touches sous Blender, pour repérer les différents raccourcis clavier disponibles suivant le contexte (un peu gadget, mais ça m'amuse).

Je tente ce bout de code :

import os

pipe = os.open("/tmp/ckbpipe000", os.O_RDWR)
string = "rgb FF0000FF"

os.write(pipe, string)

os.close(pipe)

La sentence est implacable :

Traceback (most recent call last):
  File "/home/vince/Documents/Dev/ckbanim/main.py", line 6, in <module>
    os.write(pipe, string)
TypeError: a bytes-like object is required, not 'str'

Alors je continue à chercher, j'essaye différents moyen d'encoder ma chaine en bytes, rien ne marche, je trouve quelques exemples qui me semble très complexes pour un tâche plutôt simple. Je n'arrive pas à les mettre en oeuvre.

Je dois me rendre à l'évidence, écrire dans un pipe en python me semble au dessus de mes compétences actuelles.

Donc si quelqu'un connais un moyen simple de faire ça, un p'tit coup de pouce serait bienvenu. Merci d'avance =D

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.