UTF16 в lua

Столкнулись с проблемой в использовании Far? Здесь можно получить помощь.
Post Reply
User avatar
sicvolo
Posts: 119
Joined: Tue 05 Feb, 2008 01:47

UTF16 в lua

Post by sicvolo » Sun 22 Oct, 2017 09:10

FAR 3.0 4455 под wine. Пускаю команду в строке с русскими символами echo haha-хаха > x или даже bash -c "echo haha-хаха > x" всё пучком, нормальный файл UTF8, но когда пускаю lua:os.execute("echo haha-хаха > x") получаю "haha" в ASCII/UTF8 а остальное каким-то бредом - A53F 44F8 A53F 44F8.
В wine вижу что строка входит как "haha-\x0445\x0430\x0445\x0430", т.е. какой-то микс UTF8 и UTF16
Не могу понять кто виноват - Wine, LuaFAR или Far. Где копать, подскажите?
ФАРева

Shmuel
Posts: 5437
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 19 times
Been thanked: 172 times

UTF16 в lua

Post by Shmuel » Sun 22 Oct, 2017 09:23

Вместо os.execute попробуйте win.system.

User avatar
sicvolo
Posts: 119
Joined: Tue 05 Feb, 2008 01:47

UTF16 в lua

Post by sicvolo » Mon 23 Oct, 2017 01:16

И win.system, и io.popen дают на выходе "haha-????"
ФАРева

Shmuel
Posts: 5437
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 19 times
Been thanked: 172 times

UTF16 в lua

Post by Shmuel » Mon 23 Oct, 2017 05:39

У меня (Windows 7) win.system на вашем примере даёт правильный результат. Файл получается в OEM кодировке (866).

Post Reply

Return to “Нужна помощь”