@ProCxx

Страница 1274 из 2477
Friedrich
03.09.2017
14:36:01
Он должен испытать невыносимые муки, мнятно?

И больше чтобы так не делал!

Friedrich
03.09.2017
14:36:57
ага. с win просто - WriteConsoleA ascii/oem, WriteConsoleW ucs16 (aka utf16)
Вот ты написал предложение, и уже стало нифига не просто :) ASCII/OEM (а ещё ведь есть 65001), разница между UCS2 и UTF16 :)

Google
Ioann V
03.09.2017
14:37:38
Тогда такой вопрос, есть у меня ЮТФ 8 кодировочка в строке, и я ее хочу не вывести а нарисовать

Friedrich
03.09.2017
14:37:39
Ну то есть WriteConsoleA — это ANSI, OEM или UTF-8. Поди догадайся.

Ioann V
03.09.2017
14:37:46
Как узнать какой символ мне рисовать ?

Friedrich
03.09.2017
14:38:00
Кстати!

Vladislav
03.09.2017
14:38:04
по факту в винде нет utf16, ucs2 как сабсет

Ioann V
03.09.2017
14:38:11
А как к нему обратиться ?

Vladislav
03.09.2017
14:38:29
Ioann V
03.09.2017
14:38:29
Я допустим рисую с помощью openGl

Friedrich
03.09.2017
14:38:40
Как узнать какой символ мне рисовать ?
...кстати, шрифтовый рендер может знать не только про символы, но и про всякие лигатуры (когда несколько рядом стоящих символов рисуются как один).

А как к нему обратиться ?
Зависит от ОС, от DE, от используемого графического тулкита.

Если ты всё делаешь сам, то фигачь парсер шрифтового формата, и там как-нибудь векторно рисуй потом.

Google
Ioann V
03.09.2017
14:39:26
Аааа, эта инфа в шрифте хоронится

Friedrich
03.09.2017
14:39:29
Но я бы никому тут не советовал таким заниматься, конечно.

Ioann V
03.09.2017
14:39:34
тогда норма, да - все четко вобще

Ну опеджль не умеет в шрифты

Friedrich
03.09.2017
14:39:48
Я рисую шрифты сам. И это невыносимые страдания.

Ioann V
03.09.2017
14:39:51
и вулкан тоже как следствие

Vladislav
03.09.2017
14:40:05
Ну то есть WriteConsoleA — это ANSI, OEM или UTF-8. Поди догадайся.
вообще. писали, что в win10 консоль стала шоколадной c нормальной поддержкой utf8+ и всеми делами. был бы colinux жив, можно было бы заюзать

Ioann V
03.09.2017
14:40:07
Я рисую шрифты сам. И это невыносимые страдания.
А почему ? Там ведь просто кубические сплайны внутри

Friedrich
03.09.2017
14:40:15
При том, что я ещё использую библиотечные шрифты и рендер, а сам только загоняю это в SVG.

А почему ? Там ведь просто кубические сплайны внутри
Делаю библиотеку для векторного рендеринга LaTeX-формул на одном оффтопном языке.

Matwey
03.09.2017
14:41:09
Ioann V
03.09.2017
14:41:27
Невыносимые страдания это на вулкане настройку делать :) И потом вспоминать время от времени почему ты сделал так а не иначе. А все остальное, это чистая матеша. Теже шрифты - это просто простые сплайны, без самопересечений, кстати

Matwey
03.09.2017
14:41:49
Расскажи.
Я точно не помню синегальский это был язык или нет, поэтому не буду обманывать.

Friedrich
03.09.2017
14:42:57
вообще. писали, что в win10 консоль стала шоколадной c нормальной поддержкой utf8+ и всеми делами. был бы colinux жив, можно было бы заюзать
Я расскажу тебе. 1. Дефолтовая консоль осталась примерно в той же жопе, в какой была. Старые приложения, если они не работали, так и не заработают. 2. Добавили поддержку ANSI-кодов (можно каким-то флагом бинарника включить, вроде) — это работает. 3. В «Windows Subsystem for Linux», вроде как, работает UTF-8. Во всяком случае, я никаких существенных проблем не заметил. Эта подсистема пишет в ту же консоль, но реализация IO там сделана довольно хитро (что для пользовательского кода прозрачно).

Friedrich
03.09.2017
14:45:05
ConEmu эту проблему решает. Во всяком случае, опять же, я давненько не встречал проблем.

Vladislav
03.09.2017
14:45:06
вплане консоль ансовая vs u**

Антон
03.09.2017
14:47:52
А еще в windows wchar_t это шорт, когда везде он инт

Ioann V
03.09.2017
14:48:07
Хорошо, когда есть с кем поболтать по душенькам :)

Google
Ioann V
03.09.2017
14:51:41
везде это не верно, т.к есть места где он может занимать и 8 бит

Friedrich
03.09.2017
14:51:41
Я вот почти наверняка видал контроллеры, на которых это алиас для char.

Vladislav
03.09.2017
14:51:55
w == wide

Ioann V
03.09.2017
14:52:21
v == vendetta

Friedrich
03.09.2017
14:52:39
http://icu-project.org/docs/papers/unicode_wchar_t.html > may be 8, 16, or 32 bits wide (on modern machines), signed or unsigned

Friedrich
03.09.2017
14:53:19
Иногда 8 бит это уже шире, чем поддерживает твой character set :)

Friedrich
03.09.2017
14:54:18
ок. например?
Говорю же, на контроллерах всяких может быть запросто.

Им нафиг не упало париться ещё и с юникодом и кодировками, и потому делают самый простой вариант кодирования.

Friedrich
03.09.2017
14:54:57
Не понял вопрос.

Да, были платформы, на которых регистры были не восьмибитовыми, но как это относится к source character set?

Ты можешь задефайнить, что у тебя charset — это 7-битный ANSI. И тогда восьмой бит действительно будет запасным :)

Vladislav
03.09.2017
14:55:50
на каких контроллерах char (не asm reg) может быть меньше 8 бит? мне любопытно

таких не знаю

charset != typeof char

Friedrich
03.09.2017
14:56:18
На очень-очень старых. Там в древности были варианты и с 6, и с 9 битами, если не путаю.

Google
Friedrich
03.09.2017
14:56:36
На современных, скорее всего, такой дичи нет уже очень давно.

Vladislav
03.09.2017
14:56:47
на них си было? если да, то что было с размером sizeof(char)

Friedrich
03.09.2017
14:56:56
Ещё были какие-то платформы с 16-битными чарами.

Vladislav
03.09.2017
14:57:23
больше может быть, ты говорил про меньше, нет?

Friedrich
03.09.2017
14:57:36
Да, говорил.

Admin
ERROR: S client not available

Friedrich
03.09.2017
14:58:31
есть даже с 64бит
Прям 64-битный char? Серьёзно?

на них си было? если да, то что было с размером sizeof(char)
Вон там конкретные примеры приводят: https://stackoverflow.com/questions/2098149/what-platforms-have-something-other-than-8-bit-char

На PDP-10 и каких-то мейнфреймах были 7- и 6-битные чары.

Антон
03.09.2017
15:02:00
Friedrich
03.09.2017
15:02:30
glibc
glibc имеет альтернативы даже в пределах Linux.

glibc — это ну вообще не «везде».

Антон
03.09.2017
15:03:18
ну много где

Friedrich
03.09.2017
15:03:33
Если честно, мне как раз 32-битные wchar_t кажутся более маргинальными.

Потому, что в POSIX-совместимых программах я их ни разу не видел, да и само устройство POSIX-совместимых ОС не очень-то поощряет их использование.

Все добрые дела там можно делать с помощью ввода-вывода на char. Для wchar_t места почти не находится.

Ну то есть да, там они 32 бита, но ими всё равно почти никто не пользуется, так что (почти) всем пофиг.

Антон
03.09.2017
15:08:40
Google
Friedrich
03.09.2017
15:12:34
Так раскрой им глаза!
Выше же обсудили. На самом деле UTF-16LE — это одна из возможных кодировок юникода. Не единственная, и, пожалуй, даже не самая часто используемая.

Vladislav
03.09.2017
15:13:55
Ivan
03.09.2017
16:02:03
Спасибо еще раз большое всем за помощь, я сильно продвинулся с таким кодом.

Ilia
03.09.2017
16:37:42
Да ладно, 3 дня на месте топтались

Ivan
03.09.2017
16:39:30
Да ладно, 3 дня на месте топтались
Ну благо я более менее себе представляют что все должно быть либо в одном типе данных либо уже сами потоки форматируются для вывода, вообще интересно, в питоне честно говоря такого драйва не испытываю, ну да работает вау и просто гуглишь.

Для регулярных выражений лучше boost использовать или что встроенное есть?

Ilia
03.09.2017
16:41:05
Std

Он уже в std

Ivan
03.09.2017
16:41:34
а <regex>

Ilia
03.09.2017
16:41:43
Ага

Только в GCC кажется до сих пор нет

Так что аккуратнее

fox.cpp
03.09.2017
16:42:50
есть же

Ilia
03.09.2017
16:43:15
Но Бустово это Мэддока,и это хорошо

есть же
Последний раз тв GCC. Было подстава, как я туда смотрел

Pavel
03.09.2017
18:20:13
В 4.8, который в этом долбаном центосе шестом, регексп работает странно

Страница 1274 из 2477