Size: a a a

2021 May 04

EG

Emmanuel Goldstein in rust_offtopic
А на линуксе Python использует всегда UTF-8, если у тебя локаль нормально настроена.
источник

G

George in rust_offtopic
Если брать [русскую] винду, сколько кодировок одновременно в системе?
cp1251, cp1252, utf-8, utf-16, ещё что-то забыл?
источник

p

polunin.ai in rust_offtopic
windows-xxxx
источник

ИЛ

Иван Лещенко... in rust_offtopic
Это cp и есть вроде
источник

p

polunin.ai in rust_offtopic
Ок
источник

G

George in rust_offtopic
Я про кодировки, которые в разных частях системы встречаются рандомно.
А, да, cmd в cp866 ещё.
источник

EG

Emmanuel Goldstein in rust_offtopic
Python, собственно, делает правильную вещь — под линуксом использует локаль (т. е. UTF-8 на разумной системе), под Windows дёргает GetACP(), чтобы выяснить, какая кодировка скорее всего будет работать в консоли
источник

EG

Emmanuel Goldstein in rust_offtopic
Есть ещё вариант дёргать GetConsoleOutputCP(), но это не будет работать в гуёвых приложениях
источник

EG

Emmanuel Goldstein in rust_offtopic
А то, что под средним Windows в системе нужно использовать по меньшей мере три кодировки — это увы, тут Python ничего сделать не может. Указывай явную.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
в аутпут оно как раз норм печатало
источник

EG

Emmanuel Goldstein in rust_offtopic
Дык потому и печатало, что не предполагало UTF-8, а использовало системную кодировку
источник

EG

Emmanuel Goldstein in rust_offtopic
Для справки: в Rust для того, чтобы вывод в консоль Windows работал, имплементация Write для стандартного IO детектит консоль и перекодирует байтовый поток на лету, предполагая, что он был в UTF-8.
https://github.com/rust-lang/rust/blob/master/library/std/src/sys/windows/stdio.rs#L53
источник

EG

Emmanuel Goldstein in rust_offtopic
Это гораздо больший костыль, чем использовать по умолчанию системную кодировку, ИМХО
источник

EG

Emmanuel Goldstein in rust_offtopic
Это то, что ты получаешь за использование кривой и оверинжинирнутой ОС.
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
чет я не очень понимаю зачем это так сделано
источник

ΑZ

Αλεχ Zhukovsky in rust_offtopic
строки в расте и так ютф8, зачем что-то предполагать?
источник

EG

Emmanuel Goldstein in rust_offtopic
Потому что консоль Windows не жрёт UTF-8.
источник

ИЛ

Иван Лещенко... in rust_offtopic
источник

ИЛ

Иван Лещенко... in rust_offtopic
Две ссылки и обе валидны для 'static
источник

ИЛ

Иван Лещенко... in rust_offtopic
Зачем?
источник