​#encoding #haskell

* UTF8 et Bytestring en Haskell
:PROPERTIES:
:CUSTOM_ID: utf8-et-bytestring-en-haskell
:END:
(From @Melissa on discord #haskell-beginners)

Un =Text= (et String) correspondent à une séquence de /codepoint/
unicode. Ils sont des nombres avec une propriété. Par exemple U+0065 est
=e= (LATIN SMALL LETTER e). Le problème est qu'un fichier ne contient
que des octets. Il faut donc les traduire, ce sont des encodages.

UTF-8 est le plus populaire. Il a pour propriété que tous les caractères
ASCII tiennent sur un octets qui est exactement leur représentation
ASCII. Pour les autres, ils peuvent prendre plusieurs octets. Par
exemple, =é= correspond à 195 162 (donc 2 octets).

* Écrire des caractères sous Linux
:PROPERTIES:
:CUSTOM_ID: écrire-des-caractères-sous-linux
:END:
Activer ibus et définir un raccourci dans "Emoji" -> "Unicode set
point". Ex: Ctrl-Shift-U Puis l'utiliser et taper 2245 (pour U+2245) et
faire "espace". On aura un signe approximatif.