emoji

[Nem megoldandó, csak érdekes]

Google calendar > Horde Kronolith költözés.
(mysql) Import query failed ... Incorrect string value ... \xF0\x.....
WTF.

vim export.ics > ott vigyorog az emoji (nem a kódja, maga az emoji).
Mondom OK.
Nyomtam egy grep-et a kódjára: semmi
echo -e "\xf0\x9f\x98\xBB"
terminal-ban ott az emoji
Jelöljük ki! (sikerült)
Ctrl Insert
grep Shift Insert export.ics
és megtalálta...

Na erre nem számítottam.

Hozzászólások

tippre, mysql import elott nem mondtad meg hogy utf8ban beszelsz. a terminal/vim/grep meg beszeli, ezert hasznalja a neveto fejet.

--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!

A mysql szerver/db/tábla/client encoding mire van állítva? Ha nem utf8mb4 (nem, az utf8 nem az, amit igazán keresel!), akkor az ilyen szarmojikkal lehetnek még szívások.

A meglepő nem a mysql volt, hanem a terminál, a vim meg a grep.
A sed viszont nem tudott vele mit kezdeni.

Pedig nem csak a MySQL, modern terminálok, vim, grep tudja az UTF-8-at, de a sed is. Csak sed-nél vagy a terminálnak is eleve UTF-8-módban kell lennie, vagy olyan scriptből kell meghívni, aminek a kódolása UTF-8.

grep-nél meg szükséges az, hogy hexában legyen az Unicode-karakter kódja, és kell a -P kapcsoló is. Mondjuk az tényleg nem lenne rossz, ha frissítenék a grep-et, hogy külön trükközés nélkül is megtalálná UTF-8-as terminálban/scriptből meghívva. Így 2019-ben a tököm akar hexa kódokkal kínlódni, meg a netről kikeresgetni, alapból kéne vinnie.

No keyboard detected... Press F1 to run the SETUP

Igazad van, grep-nél nem kell már kapcsoló. Pont most szoptam ezzel én is. Nálam a gondot az okozta, hogy egy szótárfájlban kerestem, és azt hittem, hogy UTF-8-ban van, közben UTF-16-ban volt. Volt is WTF moment rendesen, hogy miért nem megy a grep UTF-8-as terminálból, meg az iconv bicskája is beletört, akkor láttam, hogy a file parancs UTF-16-ként azonosítja. Nem tudom ki volt az a birka, aki ebben kódolta le, de megdögölhetne.
No keyboard detected... Press F1 to run the SETUP