[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: fonction C ou C++ pour detecter la fin de ligne en UTF8 et/ou l'encodage



Le 19/08/2025 à 13:16, Basile Starynkevitch a écrit :
Bonjour la liste

Dans le moteur d'inférences en C++ RefPerSys dont le code est libre sur github (notamment son fichier cppgen_rps.cc du commit 6b64a4c6ff)
j'utilise la bibliothèque GNU libunistring (notamment dans Rps_PayloadCplusplusGen::emit_as_cplusplus_comment)

J'y génère du code C++ à la volée (reprenant des idées de https://arxiv.org/abs/1109.0779 ...) et je tiens à générer du C++ le plus lexicalement et syntaxiquement correct possible.

LA bibliothèque GNU libunistring fournit les fonctions pour determiner où, dane une chaine UTF8, peut se terminer une ligne.

Si j'ai bien compris c'est le rôle de la fonction u8_possible_linebreaks qui prend un argument encoding.

https://www.gnu.org/software/libunistring/manual/libunistring.html#unilbrk_002eh

Et plus généralement je cherche des exemples de logiciels libres récents générant du code C++23 syntaxiquement correct.
https://github.com/bstarynk/bismon ne compte pas, même si j'y avais contribué

Librement

NB Je cherche aussi à rejoindre un consortium HorizonEurope ou ANR qui pourrait soutenir et contribuer à refpersys.org


Bonjour Basile,

je ne suis pas très fringant intellectuellement aujourd'hui et j'ai un peu de mal à comprendre quelle est précisément ta question alors sois patient avec moi :-)
Et, rappel: je ne développe plus depuis des lustres

Je n'ai fait que jeter un oeil ma ma compréhension (correcte ou non...) de cette fonction serait plutôt que son but est, dans le cadre du formattage de colonnes de texte d'une certaine largeur à partir d'une chaîne brute, où insérer des retours chariot pour réaliser correctement ce formatage. Ce qui nécessite de passer en paramètre d'entrée à cette fonction l'encodage utilisé pour la chaîne. Donc ce ne peut pas servir à determiner l'encodage

Tout ça sous réserve que je ne raconte pas des bêtises, bien sûr



Reply to: