Size: a a a

2021 May 05

С

Слава in rust_offtopic
Просто весь спор в том, что дескать надо поток байт в stdout перекодировать, и питон по умолчанию открывает файлы в кодировке консоли
источник

EG

Emmanuel Goldstein in rust_offtopic
Делов-то
То, что >&- его не закрывает не значит, что его закрыть нельзя
источник

EG

Emmanuel Goldstein in rust_offtopic
Не «надо», а «Rust это делает»
источник

С

Слава in rust_offtopic
Надо, надо. Вот откуда заранее известно, какая там кодировка?
источник

EG

Emmanuel Goldstein in rust_offtopic
Rust тоже не знает, он просто предполагает UTF-16.
источник

С

Слава in rust_offtopic
Для того специальный системный вызов поди имеется, чтобы кодировку определить
источник

EG

Emmanuel Goldstein in rust_offtopic
Причём это не настраивается.
источник

С

Слава in rust_offtopic
Ох блин, ещё один недостаток Rust. Хорошо что я на дотнете пишу.
источник

С

Слава in rust_offtopic
Хотя помнится у Шуклина однажды возник вопрос, как можно сделать асинхронную запись в консоль
источник

П

Пух in rust_offtopic
Локаль это хорошо :D
источник

П

Пух in rust_offtopic
воркер с каналом? Не, можно канеш и from_raw_fd, но там же каша
источник

EG

Emmanuel Goldstein in rust_offtopic
А вот Python делает соответствующий системный вызов, и использует для всех файлов (включая стандартные потоки) системную кодировку.
источник

С

Слава in rust_offtopic
Не надо никакого воркера, я бы взял обычный TextWriter, подсунул ему FileStream от stdout и через него писал. Ну разумеется, если кто-то параллельно будет вызывать Console.Write, то будет каша
источник

EG

Emmanuel Goldstein in rust_offtopic
Ты можешь сделать from_raw_fd() и получить «файл», соответствующий консоли
источник

EG

Emmanuel Goldstein in rust_offtopic
В линуксе, во всяком случае
источник

П

Пух in rust_offtopic
TextWriter под капотом синхронит запись? #авотврастеможноибезtextwriter
источник

С

Слава in rust_offtopic
Это оболочка над байтовым потоком, которая принимает строки и перекодирует их в нужные байты. У неё есть WriteAsync, который и делает асинхронную запись
источник

EG

Emmanuel Goldstein in rust_offtopic
2077 год. Вышел Half-Life 3, Сталкер 2, а в Cyberpunk дофиксили все баги.
источник

EG

Emmanuel Goldstein in rust_offtopic
В Windows по прежнему дублированы все API, потому что Microsoft не смогли в UTF-8.
источник

П

Пух in rust_offtopic
И UTF до сих пор галочкой в настройках включается?
источник