Сохранен 113
https://2ch.su/b/res/328800330.html
К сожалению, значительная часть сохранённых до 2024 г. изображений и видео была потеряна (подробности случившегося). Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

С помощью нейрокала делаю нативный клиент двача для Win32, чтобы читать двач без браузера. Оверчан

 Аноним OP 16/01/26 Птн 08:58:59 #1 №328800330 
devenvUeEtWBA6O0.png
devenvJ4TRMWqPOj.png
С помощью нейрокала делаю нативный клиент двача для Win32, чтобы читать двач без браузера.

Оверчан панель слева собирает нулевую с выбранных досок. Т.е. тематика не останется без ответа.
Хочу добавить подписку на свои посты, чтобы приходило уведомление когда отвечают на пост.

Поломайте разметку пж всякими эмодзями и залго
Аноним OP 16/01/26 Птн 08:59:55 #2 №328800350 
image.png
Прикол
Аноним OP 16/01/26 Птн 09:11:31 #3 №328800545 
image.png
image.png
>>328800350
То было Skia рендерер. Вот GDI

Skia это пиздец. По дефолту не экспортируется skparagraph.dll.lib, пришлось что-то там патчить в исходниках чтобы он экспортировал символы dllки чтобы я мог её подключить её для рендеринга текста в постах с переносом.
Потом я долго дебажил краш в SkString, не понимал в чём дело думал патч кривой. Оказалось разница ABI. Помогло пересобрать всю skia с овверайдом флага /MDd, типа
gn gen --args="чё-то там extra_cflags_cc=[ \"/MDd\" ] extra_cflags=[ \"/MDd\" ]
но это какой-то грубый костыль. Нужно лезть в систему сборки и смотреть что там не собирается в MDd, что должно.
Аноним OP 16/01/26 Птн 09:14:20 #4 №328800601 
image.png
Ну светлая тема. Выбирается в настройках
Аноним OP 16/01/26 Птн 09:16:41 #5 №328800631 
>>328800350
>>328800545
Только щас заметил что фон поста и страницы перепутан местами в разных рендерерах.
Аноним 16/01/26 Птн 09:18:17 #6 №328800654 
>>328800330 (OP)
Ну и как тебе ВАЙБ КОДИНГ
Аноним 16/01/26 Птн 09:21:41 #7 №328800730 
>>328800330 (OP)
А как отвечать
Добавь тему буричан
Добавь избранное
Добавь скрытие
sage[mailto:sage] Аноним 16/01/26 Птн 09:23:09 #8 №328800749 
image.png
>>328800330 (OP)
>посты не посередине
как найти нищеброда с микронетбуком
что ты, что хач на админе никак не могут понять что перманентно косить глаза влево не есть гуд для чтения
Аноним OP 16/01/26 Птн 09:26:35 #9 №328800816 
>>328800654
Прикольно. Чувствую себя инвалидом как на костылях, только без мозга. Нейронки умнее в последнее время стали, где-то с GPT 5. До этого часто горела жопа от того что вместо правок начинала весь код переписывать заново с галлюцинациями.

Думаю вайбкодить с нуля ничего не понимая это больно. Нужно иметь какой-то опыт и представление в том стеке который спрашиваешь, чтобы критически оценивать ответы. Если спрошу про какой-нибудь Ruby она может написать хуйню и я даже не пойму потому что не разбираюсь.
Аноним OP 16/01/26 Птн 09:35:50 #10 №328800996 
image.png
>>328800730
> А как отвечать
До этого ещё не доходил, пока только читать. В голове уже предвкушаю проблемы с капчей, походу с пасскодом только. Лол. Но я посмотрю как это делает дашчан.

> Добавь тему буричан
> Добавь избранное
Даже свои закреплённые треды из тематики сверху на нулевой оверчана, чтобы было легче следить за ними.
> Добавь скрытие
В общем это всё можно, делается легче чем ответы.

Пока две будущие главные проблемы это ответы и выделение текста для цитаты. Выделение текста придётся переизобретать с нуля, it's over. У меня есть демка где я переизобретал блокнот с реализацией текстового, там где-то 4к строк и лагает жутко.

>>328800749
Короч была идейка сделать как в ворде направляющие чтобы двигать посты.
Аноним 16/01/26 Птн 09:40:27 #11 №328801087 
T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝T̴̝̆h̸̩͠e̶̯͒ ̶͙̈́q̵͜͠ŭ̴͚ȉ̴̝c̶̟̿k̸͈͝ ̸͚̈́b̸̤̈́r̶͈͗o̴͉͋w̵̫͠n̸̰̾ ̸̠̃f̵̩́o̴͉̾x̶͉̾ ̸͉̃j̶̎ͅȕ̷͉m̸̪̀p̴͈̎s̶̨͐ ̴̟̈́o̴͉͋v̸͓͝e̷̗̽r̵̖̍ ̶̦̂t̴̞̚h̵̻͝e̵̟̐ ̴̰͆l̷̺͝a̵̟͘z̴͈͝ỹ̵̥ ̵̧̾d̷̗̄ō̶̖g̵͕͝
Аноним 16/01/26 Птн 09:41:23 #12 №328801108 
& < > " ' / \
Аноним 16/01/26 Птн 09:42:10 #13 №328801127 
Normal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal tNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal trmal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Rermal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Rermal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Rermal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Rhis textNormal text Reverse this textNormal text Reverse this textNormal text Reverse this textNormal text Re
Аноним 16/01/26 Птн 09:43:01 #14 №328801147 
1768545780662.gif
1768545780666.gif
>>328800330 (OP)
Иди нахуй клоун ебаный 🤮🤮🤮🤮🤮🤮🤮🤢🤢🤢🤢🤢
Аноним 16/01/26 Птн 09:43:18 #15 №328801152 
🧩_ZALGO_H̵̟͌ĕ̴͈l̸͎͋l̶͈͛o_W̵͈̾ȍ̶͉r̶͈̃l̵͈̾d__REVERSED_TEXT_Loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_Word_&_"'<>_测试_🚀_!@#$%^&*()_+
Аноним 16/01/26 Птн 09:45:25 #16 №328801192 
🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🏃🏾♂️🏃🏻♀️👩👩👧👦👨❤️💋👨🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🌡️🧬🧪🪄🩺🪜🪝🪀🪁🪕🪗🪘🪙🪠🪤🪚🪛🪜🍎🍐🍊🍋🍌🍉🍇🍓🧹🧺🧼🪣🧴🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷🫠🫡🫥🫤🫨🫷
Аноним OP 16/01/26 Птн 09:45:25 #17 №328801193 
image.png
>>328801087
>>328801108
>>328801127
Хм... Неплохо
Аноним 16/01/26 Птн 09:48:19 #18 №328801259 
\n" } ]; t=setTimeout(alert(1),0); // \
sage[mailto:sage] Аноним 16/01/26 Птн 09:48:28 #19 №328801262 
>>328800330 (OP)
> С помощью нейрокала
Иди на хуй, говно тупое.
Ещё не стыдно
Аноним 16/01/26 Птн 09:49:10 #20 №328801275 
\n\n\n
\n
\n ываываыва \n
\n
Аноним 16/01/26 Птн 09:49:31 #21 №328801283 
\u202E ываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываываыва
Аноним OP 16/01/26 Птн 09:52:48 #22 №328801377 
image.png
image.png
image.png
image.png
>>328801152
Победитель. Skia рендерер обосрался.

GDI не крашится, но не умеет в цветные эмодзи (это походу дополнительно нужно что-то изобретать и рендерить эмодзи как картинки) или использовать DirectWrite как хром, но сомневаюсь что получится подружить именно с GDI не прибегая с Direct2D или к DirectX там. Надо посмотреть.

Ещё нашёл багулину, почему-то цвет текста эмодзи не красится.
Аноним OP 16/01/26 Птн 09:54:31 #23 №328801424 
>>328801262
Похуй. Я это делаю по фану потому что интересно дрочиться со всякой хуйней.
Аноним 16/01/26 Птн 09:55:42 #24 №328801456 
image.png
>>328801377
ураааааа хоть чегото я стою в этой жизни
Аноним 16/01/26 Птн 09:57:43 #25 №328801506 
16678497576510.mp4
>>328800330 (OP)
Респект.
Сам сейчас учу плюсы, чтобы написать матрикс-клиент.
Какие подводные вообще по плюсам и десктоп-разработке назовешь?
Аноним 16/01/26 Птн 09:59:37 #26 №328801554 
>>328800330 (OP)
Чому не на Qt
Аноним 16/01/26 Птн 10:00:36 #27 №328801573 
image.png
>>328801377
ОООООО ОП 1337 ИЛИТКА ПО НОМЕРУ ПОСТА
Аноним OP 16/01/26 Птн 10:09:52 #28 №328801791 
>>328801506
> Какие подводные вообще по плюсам и десктоп-разработке назовешь?
Нужно следить за временем жизни объектов.
Ебля с хедерами.
Если ошибка в мета-шаблонах то это вообще пиздец, долго читать что компилятор хочет.

Тут был C++ тред, наверно ещё в каталоге висит. Там в целом обосрали всё что можно.
Но это цена за эффективность. Ощущается что примерно делает приложение на лоулевеле - оно прямо выполняется без посредников, без интерпретаторов, виртуальных машин и сборщиков мусора. И что можно всё, всё зависит от того насколько прямые руки. Это просто прикольное чувство.
Аноним OP 16/01/26 Птн 10:16:34 #29 №328801958 
>>328801554
Не нравится( Мне WinAPI ближе
Аноним OP 16/01/26 Птн 10:27:21 #30 №328802253 
Сохраню JSON этого треда и буду гнать как тест-кейс в мокер API
Аноним OP 16/01/26 Птн 10:38:01 #31 №328802547 
>>328801506
А, ещё больное место отсутствие пакетного менеджера библиотек.
Ну типа есть у CMake Fetch, есть vcpkg, а в линуксе есть *-dev пакеты. Но всё равно нет какого-то универсального подхода.

Я же зависимости которые мне нужны собираю из исходников, заранее настроенным .bat скриптом. Но это такое отчаянное решение.
Аноним OP 16/01/26 Птн 11:00:56 #32 №328803368 
17444752633460.png
В WinAPI каждый виджет будь то кнопка или текстовое поле - это объект окна в ядре ОС, так же как и окна верхнего уровня.

Я хотел придержаться такого же принципа и начал с регистрации класса окна которое рендерит один пост. Поэтому назвал решение студии ib-postcontrol
Заполонив тред дочерними окнами по производительности понял, что сделал какую-то хуйню.

Переписал в одно окно представления, которое эффективно рендерит посты с клиппингом. Если пост находится за экраном оно его даже не пытается рисовать. Вычисление разметки тоже разбито на MVC, чтобы не высчитывать размеры постов каждую отрисовку. Контроллер пересчитывает прямоугольники когда это необходимо, представление просто рендерит в них.

Хз, если есть анон что шарит побольше меня может что-нибудь посоветовать.
Аноним 16/01/26 Птн 11:12:40 #33 №328803732 
>>328801791
>>328802547
Шаришь, вижу.
А если, допустим, писать калькулятор, то как быть с переполнением диапазонов допустимых значений в числовых переменных?
На пистоне можно просто сделать num = input.get() какой-нибудь.
А на крестах как присвоение любого числа должно происходить?
Аноним OP 16/01/26 Птн 11:33:33 #34 №328804339 
longdivisionFmgssED6r7.png
>>328803732
Какую-то логику с std::numeric_limits писать

Если нужны очень очень большие числа можешь же свой составной тип данных написать и логику к нему методами и перегрузкой операторов.
Аноним OP 16/01/26 Птн 11:48:20 #35 №328804823 
image.png
Чё-то орнул с раста
Аноним 16/01/26 Птн 11:55:31 #36 №328805079 
>>328800330 (OP)

А не проще было юзерскрипт написать? Все также, с помощью нейронки.
Аноним OP 16/01/26 Птн 12:03:07 #37 №328805320 
>>328805079
Так такое есть же уже.
Главная фича - хотелось бы чтобы приложение висело в трее и показывало уведомления с ответами на свои посты. Может и юзерскрипт такое может, не знаю.
И очень огромная оптимизация по возможности. Браузеру нужно прочитать DOM, CSS. Страницы жрут много памяти. Мы забыли как в нулевых были планки памяти по 128, 256, 512МБ и ничего, всё работало.
Аноним 16/01/26 Птн 12:05:34 #38 №328805396 
17580999704191.jpg
>>328800330 (OP)
Нейронка делает только фунции, или архитектуру тоже?
Тесты нейронкой делал?
Сталкивался ли с банами со стороны сервера?
Какой user-agent ставишь?

Сколько времени влил?

>И очень огромная оптимизация по возможности. Браузеру нужно прочитать DOM, CSS. Страницы жрут много памяти. Мы забыли как в нулевых были планки памяти по 128, 256, 512МБ и ничего, всё работало.
Вообще респект таким посонам.
Аноним 16/01/26 Птн 12:26:24 #39 №328806074 
Оп, еще вопрос.
Есть ли смысл в IDE на плюсах, в чем пишешь? Пока ковыряю основы на саблайме и думаю, имеет ли смысл по ide на каждый язык ставить.
Аноним 16/01/26 Птн 12:28:18 #40 №328806145 
>>328805320
Жду когда нейронки смогут оптимизировать говнокод которые писали десятилетия
Аноним 16/01/26 Птн 12:40:50 #41 №328806559 
>>328805320
> показывало уведомления с ответами на свои посты

Виолентмонки по кд сыпет уведомления на уровне винды. Как минимум web extension умеет в нативные уведомления. Юзерскрипт вероятно тоже.

>И очень огромная оптимизация по возможности.

Одна открытая вкладка для работы с бордой наверняка жрет очень мало. Если завернуть это в webextension то вероятно не нужно будет и вкладку держать в памяти.
Аноним OP 16/01/26 Птн 12:46:05 #42 №328806722 
>>328805396
> Нейронка делает только фунции, или архитектуру тоже?
Только функции. По архитектуре если в общем посоветоваться как лучше описав ситуацию, сами они делать что-то сложное обсираются. Если агент так вообще может всё сломать.
> Тесты нейронкой делал?
Тут тестов пока нет. В крайнем случае тесты пишу если не удаётся отловить баг.
> Сталкивался ли с банами со стороны сервера?
Ещё нет. Я же ничего не пощу, кеширую превьюхи и соблюдаю рейт лимит ставя запросы к API в очередь. В /abu/ тред с API.
> Какой user-agent ставишь?
Кастомный, типа "dvacher/1.0"
> Сколько времени влил?
Меньше недели где-то. Блин, нейронка очень ускоряет. Без неё я бы уже запнулся на какой-нибудь хуйне и опустил руки.

>>328806074
> Есть ли смысл в IDE на плюсах
Обязательно. Ещё всякие плагины инструменты. Есть задачи по рефактору от переименования символа по всех местах его использования, до извлечения методов из объявления класса в .cpp. Я кодил в VIM и руками заебёшся это делать.
> , в чем пишешь?
Как видно на скриншотах, Visual Studio 2026. Офф IDE от майкрософта по моему лучше всего подходит для разработки под винду и отладчик замечательный. Под другие задачи может есть полезнее CLion там, для Qt QtCreator.
Аноним 16/01/26 Птн 12:56:05 #43 №328807051 
>>328806722
Спасибо. Удачи тебе с проектом.
Аноним OP 16/01/26 Птн 13:02:58 #44 №328807293 
16346274398240.png
>>328806559
Для меня javascript тёмный лес. Я байтоёб байтослесарь, меня трясёт от динамически-типизированных языков
Аноним 16/01/26 Птн 13:08:21 #45 №328807471 
>>328800330 (OP)
В winui бы ещё хоть как-то смотрелось.
Какая же всё-таки свинда убогая.
Аноним OP 16/01/26 Птн 13:25:33 #46 №328808050 
>>328807471
Да впизду. Тоже так думал, что надо идти в ногу со временем. Попробовал я этот ваш WinUI 3
Visual Studio требует 11 винду и не показывает какой-то там дизайнер. Я не буду перекатываться.

Ещё не нравится мне этот XAML. Слои абстрации на абстракции, элементы располагаются в DOM со стилями как в браузере. Охуеть. Хуже только Electron приложения.
Очередной провальный фреймворк от майкрософта, как и WinForms, WPF, UWP.
Когда я был нищим ребёнком с древним компом всё это блоатварное говно тормозило. Теперь у меня ПТСР. WinAPI форева.

Для красоты на самом деле ничего не мешает взять контекст композитора DWM и рендерить очень красивую UIшку туда. Была на просторах интернета демка с вращающимся цветным кубом в DWM но я к сожалению больше её найти не могу.
Аноним 16/01/26 Птн 13:34:04 #47 №328808337 
Ну и как тебе замещение программистов искусственным интеллектом? Сингулярность уже чувствуешь?
Аноним 16/01/26 Птн 13:37:27 #48 №328808452 
>>328808050
> Очередной провальный фреймворк от майкрософта, как и WinForms, WPF, UWP.
Да, но оно хотя бы выглядит относительно презентабельно из коробки.
> Для красоты на самом деле ничего не мешает взять контекст композитора DWM и рендерить очень красивую UIшку туда.
Давай не будем кривить душой, без норм дизайнера своими силами оно все равно получится дай бог на "приемлемо".
Может у тебя конечно и выдающийся талант к таким вещам и я по себе сужу.
Аноним 16/01/26 Птн 13:50:46 #49 №328808908 
>>328807293
>Я байтоёб байтослесарь
>запряг нейронку писать код

Вы, сударь, позер обыкновенный.

>меня трясёт от динамически-типизированных языков

Причина тряски? Есть TypeScript, Haxe, Dart, и наверняка еще с десяток способов унять эту тряску. Нейронка в помощь.
Аноним 16/01/26 Птн 13:52:34 #50 №328808965 
>>328808050
> Была на просторах интернета демка с вращающимся цветным кубом в DWM но я к сожалению больше её найти не могу.

Попроси нейронку написать.
Аноним 16/01/26 Птн 14:00:17 #51 №328809177 
а просто парсинг всей хуйни и спользовать utf-8 это секретная магия?
Аноним 16/01/26 Птн 14:03:27 #52 №328809268 
Судя по треду, человек выбрал путь настоящего самурая — писать нативный GUI на C++ под Win32 в 2026 году. Учитывая его фокус на "оптимизации" и "низком потреблении памяти" (как в нулевых), вот технические советы, которые спасут его проект от превращения в неподдерживаемый хаос:

### 1. Работа с данными (Критично)
Самая главная ошибка, которую он может совершить — это парсить HTML страницы.
Совет: Использовать только JSON API. У Абу (владельца двача) есть Makaba API.
Вместо скачивания `res/12345.html` и попыток выдрать оттуда посты регулярками (что медленно и ломается при смене верстки), нужно дергать `.json` эндпоинты.
* Пример: список постов треда берется через `/makaba/mobile.fcgi?task=get_thread&board=b&thread=12345&num=XXX` (где `num` — номер последнего полученного поста). Это решает его задачу "уведомлений в трее" без скачивания всей страницы заново — сервер отдаст только новые посты. [github](https://github.com/4chan/4chan-API/issues/64)
* Это сэкономит мегабайты трафика и CPU, так как JSON парсится моментально по сравнению с DOM-деревом HTML.

### 2. Рендеринг текста и верстки (Самое сложное)
В треде он спрашивает про архитектуру. Главная проблема нативных клиентов имиджборд — это отрисовка разметки постов (жирный, курсив, спойлеры, ссылки, цитаты) внутри нативного контрола.
* Ловушка: Пытаться рисовать всё через стандартные `GDI` функции (`TextOut`, `DrawText`) вручную, вычисляя координаты каждого слова. Это ад.
* Решение 1 (Хардкорное Native): Использовать Rich Edit Control (`RichEdit20W` или `50W`). Он умеет RTF-подобную стилизацию, ссылки и даже вставку картинок через OLE-интерфейсы. Это нативно, быстро и ест мало памяти.
* Решение 2 (Компромисс): Использовать легковесный HTML-движок *без* браузера, например LiteHTML или Sciter. Они рисуют HTML на GDI/Direct2D поверхностности, но не тянут за собой весь движок Chromium/WebKit. Это даст гибкость верстки при нативной производительности. [news.ycombinator](https://news.ycombinator.com/item?id=24302553)

### 3. Оптимизация списков (Virtual List View)
Автор жалуется на потребление памяти браузерами. Чтобы Win32 клиент не сожрал всё сам при открытии треда на 1000 постов с картинками:
* Совет: Обязательно использовать Virtual List View (`LVS_OWNERDATA`).
* В этом режиме контрол списка не хранит данные, а просто спрашивает у программы: "что мне нарисовать в строке №5 видимой области?".
* Это позволяет держать в списке хоть миллион постов, потребляя память только под те 10-20, что сейчас на экране. Без этого стандартный `ListView` (или `ListBox`) умрет на больших тредах. [virtualdub](https://www.virtualdub.org/blog2/entry_273.html)

### 4. Работа с сетью и картинками
* Сеть: Если он хочет "тру-натив", пусть берет WinHTTP или WinINet (встроены в Windows, не нужно тащить `libcurl`). Для JSON — библиотека `nlohmann/json` (стандарт де-факто в C++).
* Картинки: Для декодирования JPEG/PNG/WebP использовать WIC (Windows Imaging Component). Это встроенный в Windows API, который использует аппаратное ускорение и не требует внешних библиотек типа `libpng` или `stb_image`.

### 5. Ответы на его вопросы из треда
* "Нейронка делает архитектуру?" — Нет. LLM (как ChatGPT/Claude) ужасно справляются с визуальной версткой в Win32 (координаты, rects, message loop). Логику (парсинг JSON) они напишут, а вот GUI придется делать головой, иначе будет кривой Франкенштейн.
* "IDE": Писать на C++ в Sublime Text без IntelliSense — это мазохизм. Пусть ставит Visual Studio Community 2022. Это лучший отладчик под Windows. Отладка сообщений окна (`WM_PAINT`, `WM_SIZE`) без нормального дебаггера невозможна.

Итог: Если он хочет реально быстрый и легкий клиент, архитектура должна быть такой:
`WinHTTP` (сеть) -> `JSON Parser` -> Структуры данных в памяти (std::vector) -> `Virtual List View` (отображение) -> `Direct2D/WIC` (отрисовка картинок).
Аноним 16/01/26 Птн 14:06:14 #53 №328809367 
>>328809268
про сублайм нейронка промахнулась, но насчет рендера html он прав, и насчет апишки тоже.
Аноним OP 16/01/26 Птн 14:07:23 #54 №328809409 
7bd7d1f5badf834505a6788e668bcb18.jpg
>>328808337
Нет. Я чувствую что тупой инвалид и мне дали костыли.
Те вопросы над нахождением ответа которых нужно было тратить часы ломания головы, чтения документации, поиска в гугле и задавания вопросов на форумах ща решаются вопросом нейронке. Ну как и во всём остальном.

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

И я не знаю что там должно произойти для сингулярности, наверное AGI, потому что современным нейронкам не хватает человеческого common sense. Блять, я даже не знаю как это описать. Что в каких-то вопросах всё правильно делает, а в каких-то пакостит и в упор не видит и не хочет решать проблему будто троллит. Всё просто предобученый текстовый трансформер, ощущается не более как "следующее поколение гугления", как если бы на абсолютно каждый вопрос находился бы примерно правильный ответ на стаковерфлоу с кодом.

Но я агентами не пользуюсь, только чатом. Они-то могут шариться по директории. Но у меня нет доступа к супернейронкам вроде клода потому что там или платное, или телефон зарубежный просят суки. Я пробовал только openai codex и google jules и они мне просто насрали в код всё сломав.

Явно ещё не время чтобы оно всё делало за меня без ошибок, а я бы просто откинулся на кресле сложив руки за голову. Я был бы на самом деле очень рад.
Аноним 16/01/26 Птн 14:10:12 #55 №328809493 
{BCB85622-98AB-4BCA-B180-0E8395F07914}.png
{3B9B4B74-1ECA-4F9F-BCC5-95626B7A65DB}.png
оп извращенец
Аноним 16/01/26 Птн 14:13:40 #56 №328809595 
>>328800330 (OP)
Уже придумали chan. Да и нах ты на сях делаешь
Аноним 16/01/26 Птн 14:21:31 #57 №328809822 
17598268824800.jpg
>>328806722
>Я кодил в VIM и руками заебёшся это делать
Тришиттер помнеш?
Аноним OP 16/01/26 Птн 14:28:45 #58 №328810070 
1648521660703.gif
>>328809268
> Самая главная ошибка, которую он может совершить — это парсить HTML страницы.
> Совет: Использовать только JSON API. У Абу (владельца двача) есть Makaba API.
Всё так. Там и клаудфлара не пустит наверное. Парсить HTML имеет смысл если расширять для поддержки других борд, у которых нет API. Опять же, как делает дашчан.
> Решение 1 (Хардкорное Native): Использовать Rich Edit Control (`RichEdit20W` или `50W`). Он умеет RTF-подобную стилизацию, ссылки и даже вставку картинок через OLE-интерфейсы. Это нативно, быстро и ест мало памяти.
В пизду. Это говно элемент из WordPad.
> Решение 2 (Компромисс): Использовать легковесный HTML-движок без браузера, например LiteHTML или Sciter. Они рисуют HTML на GDI/Direct2D поверхностности, но не тянут за собой весь движок Chromium/WebKit.
Ну... Опять же переизобретение браузера. Зачем мне писать браузер, если я хочу отойти от браузера. Поймал себя на мысли когда делал лейаут постов всё в Box`ы запихнуть и рекурсивно рендерить. Можно. Можно взять библиотеку clay или что-то подобное. Но я думаю если и сделать это, как альтернативу способа рендеринга которую можно выбрать.
> * Ловушка: Пытаться рисовать всё через стандартные `GDI` функции (`TextOut`, `DrawText`) вручную, вычисляя координаты каждого слова. Это ад.
Да да я. Сначала вычисляется GetTextExtentPoint32W и размер переводится в прямоугольник. Затем прямоугольник сдвигается через OffsetRect и сохраняется в объекте потом на рендер. Для поста на дваче этого вполне достаточно, тут нет какой-то сложной динамической разметки, разве что в тематике в закреплённых постах.

> Совет: Обязательно использовать Virtual List View (`LVS_OWNERDATA`).
Вот это он вообще нахуй сгаллюцинировал и придумал. Не существует никакого "Virtual List View". Есть стандартный контрол ListView в comctl32.dll который рендерит файлы в эксплорере, но он там по большей части захардкожен и его нельзя нормально расширить или изменить, даже выставить разную высоту для каждого элемента. Что лучше с нуля свой написать.

> ### 4. Работа с сетью и картинками
Если он хочет "тру-натив", пусть берет WinHTTP или WinINet (встроены в Windows, не нужно тащить `libcurl`). Для JSON — библиотека `nlohmann/json` (стандарт де-факто в C++).
> Для декодирования JPEG/PNG/WebP использовать WIC (Windows Imaging Component)
Правда. И nlohmann-json лучшая библиотека для JSON. Разве что WinHTTP мне не нравится, планирую отречься на boost::asio и beast.

> Direct2D
Вот это интересно шишак дымит. Надо сделать рендерер Direct2D.
Аноним 16/01/26 Птн 14:33:58 #59 №328810237 
>>328810070
Так html можно отрендерить не как браузер, он тебе же написал что это просто считай канвас. Легче канваса и удобнее пока ничего нет
Аноним 16/01/26 Птн 14:38:44 #60 №328810413 
>>328800330 (OP)
н̶̢̧̧̢̢̧̢̨̧̢̧̡̧̡̡̢̛̛̛̛͖̳̘̟̜̘͍͙̭̫̹̳͔͈͓̺̫̖͙̮̝̼̫̣̼̮̼̮̰͔̟̱͇̬͇̥̗̼̬̻͎͎̯̩͚̱̗͓̙͔͙̻̱̱̠̰̯̩̯͚͇͇̗̜̩̼̙̤͎̳̻̰̥̼̺͙̩̞͈̜̦̮̰͙̻͉̯̼̼̱̗̤͕̱͓̪͈̖̥̳͕͇̙͔̙̞͔̲̝͉͉͖͉̲̣͎̮̙̪̳̠̫̤͍̖̣̒̽̇̆͛̂̐̍̆̽̒̈́̀̋̄͒̀̈́͆́́̂̌̏̄̋̌͂̎̔̽́͑̐̅̍͌̀̑͑͊͗̽̽̄̎̓̽̇͊̓͌̑͒́̈̏͛̆͑̐͒͂͛͗̅͐̾̆͂̽͐͋͋̂̌̍̓̐̃̒̈̀̓̾̑̋͋̈͑̋̾͂̍̈́͑͗̑͒̀̈̍̀̽̃̾́̋̆͌̾͊͆̾̉̀̾͊̆̄̂̕̚̚̕̕̕͘̕̕͜͜͜͜͜͝͝͝͝͝͝͠͝͝͝ͅͅу̸̨̢̧̢̢̢̢̛̛̛̛̲̭͉̤͚̘̣̞̹͔̮͍̮̱̙̠̮̯͍͇͎͍̰͇̞̲̥͕̰̱͖̗͓̠̥̲͕͕̩̮͚̣̣́̏̆̅́̈́̀̋̀̄̀̇̍̃̃͆̀̐̃̔̊͌́͊̆̆̾͒̏̀̑̌̏͂̆̽̐̔͒̎̀͂̏̎̆̈́̃̓͌̇͑͋̑́́́͗͆͒͌̅̐͑̌̀͋͑̾́͒̾̀̒̽̌͗͂͗̊̌̀́͌͌̐́̓̊͑͗̇́́̈́̍́͗̿͒̿͐̕̕̕͘̕̕͘̕͜͜͝͠͠͝͠͝͝͠͠͝͝͝͝ͅͅ ̵̢̢̢̨̧̨̡̢̧̛̛̛̛̛̰̮̱̟͈̥̝̝̪̬͎̩͓͓͈̦̩̫̩̩̰͓͓̟̼̜̘͍̫̱̙̮̱̖̝̜̟̣̼̯͉̘̻̮̖͖̖̭̘̹̪̲̗̲̖̯͍̞̘̝̱̪͖̹̦̻̗̭̘̍͗́͑̆̋́͛̈́͒͐̿̉̅̌̽̿̽̐̄̄̐̾̃͐̓͌͌̂̌̏͊̽̂̑͛͛̍͐͋͛͑̿͐̒̿̒̽́̏́̍̔̋͌̅̀̆̈̇͗͗̉͛̈́̆̔͊͛̄̉͆͑̒̈́͆̋͗̿͐͆̈́̓́̑̏͛̾́̈̈́̈͑̄̇͒̍̎͆͛̊̈́̐̋̀̀͐̌̍̈͑̓͛͗̑̅͋̂̉̔̀͐̀̀͊̌́́͌̊̾̍̈́̎̅͗͂̽͂̔̃́̅̅̽̉̈́̀̾̀̐̀͒̉̌͐̔̃̉̍͒͋̌̔̎͘̕̕͘̕̚͘̕̚̚͘͜͜͜͝͝͝͝͝͠͝͝͝͝͝͠͝н̵̨̨̡̢̡̧̡̢̨̨̛̛̛̛̛̛̛̝͈̰͍̺͉̤̯̜̦̘͙̰̺̙͈̤̣̠͖̻̖̱̝͎͍͎̮̜̦͚̞̬̘̠͙̜͎̣̜̫̯͍͈͚̥̬̱̟͕̘̲͚͕̲̻͎͇̝̝̞̼̹̣̮̥̳͓̣̹̩̦̮̙̫͔͔̝̫̲̬̳̖͕̰̪̫̜̖͍̪̦̪̜̰̜͚̪͉̰̱̮̦̦̘̥̪͚̻̼̠͚͖̦̝̫̱͍͇̱͍̟̦͍̪͚̝̫̘͓͎̮̩̠͉̳͇̗̹̜͔͖̬̜̬͕̳͖͍̖̪̫͙̞̙͛͋̃̈́͋̆̈́̉̈͑̽̀̊̂͑̏͌̓̋̑̊͐̂̐̈́̓̌̋͋̓̂̌̎̆̿̎͗̒͋̄̉͑͊̈́̿̐́̂͗͗̀̌̆̐́̌́͑̽́͑͊̊͌̍̓̇͆̾̄̓͑͗̌̏͋̌̓̆̌̋͌̑̐̀̓̈́̾͒̔̔̿̆͋͌̈̊̀͒̓̌̽͗̂́̂̒̊̕̕̚̚̚͜͜͜͠͝͠͝͠͝͠͝͝ͅͅͅа̷̨̢̡̧̢̧̧̨̢̛̛̛̛͇̘̩͍̠̹̖̖͉̦̼̘̦̣̯̮̖͕̙̝̞̝̻͚͕̦̹̻͉̮̩͔̫̙͓̤͈̲̞̗̘̻̝̭̥̦̖̰͈̪͙̬͇̼̩͖̙̟̘͕̟̖̮̘͈̰̞̥̭̠͕̳͇̩̠̩͚͙͈̬͚͔̘͈̯̣̦̪͈͇̄̿̀̇̇̈́̎̆͑̈́̌̔̾̿̄̇̿͂̀̐̋̉̒̒̉̍̈́̆̑̍̅̎̇͐͊̈́̊̐̈́̇͛̓̑̀̔͗͐̍̓̅͐͆̀̔͛̐̆͒̂͑̉͆̄͗͗̊̓̆̈́͐̎̌̀͌̈́̔̋̽̄́̿̏́̄̌͂͑͋̿̈́͐̄̊̌̑̅̈́͑́̒͆̓̓̑̔̓͗̇̀̌̍͑́̓̐͗̑̈̅̈́̎̓̆̀́́̊̿͋̀̋͛̑̊̐̃̏̊͒̒̂̿̀̃̆́͊̽͂̅͒̽́̌͒͐̈́̈́̓͑̆̃͑̑̿̀͘͘̚̕̕̕̚̚͘͘̚̚̕͘̕̚͘͜͠͝͝͝͝͝͠͝͠͝͝͠͝͝͝͝ͅͅ спасибо Абу

Абу благословил этот пост.
Аноним OP 16/01/26 Птн 14:53:11 #61 №328810969 
sentaku.jpg
>>328809493
Да мне и не надо рендерить html... Только спарсить текст поста из json на токены, типа где ссылка на ответ, где гринтекст, где форматирование

Вот эта вот разметка поста она вся одинаковая для всех постов. Только посчитать прямоугольники - где имя с датой, где превьюшки, где текст, где ответы к посту. Этого хватит.
Переизобретать браузер и рендерить какую-то сложную динамическую разметку не нужно.

>>328809493
С чего взяли что любитель DOM лейаутов. Какой браузерный движок.
На старую винду 98, XP когда приложения писали никто не думал окна в html/xml DOM лейауте делать. Даже сложный софт по типу автокада.
Это придумали когда начали писать приложения на электроне.
Про текстбоксы с utf не понял. Не, с utf всё нормально, это ограничения отрисовки текста через GDI DrawText. WinAPI слишком старое что не может рисовать разноцветные глифы шрифта как в эмодзях, поэтому выбирается чёрно-белый вариант эмодзи. Точно такое же было в хроме на XP и на Win7 вроде.
Аноним 16/01/26 Птн 15:05:24 #62 №328811408 
>>328810969
А нахрена тебе цветные эмодзи
Аноним OP 16/01/26 Птн 15:08:27 #63 №328811502 
>>328810237
Да, для отрисовки тела текста поста можно как вариант. Там парсится html с ссылками на посты и всеми тегами форматирования. Надо поэксперементировать.

>>328811408
Чтобы было красиво.
Аноним 16/01/26 Птн 15:14:24 #64 №328811675 
>>328809409
Спасибо за развернутый ответ
Аноним 16/01/26 Птн 15:15:04 #65 №328811690 
>>328811502
любой браузер старается организовать свой набор эмодзи. Сделай свой.
Аноним OP 16/01/26 Птн 15:16:04 #66 №328811715 
>>328810969
at first it like
> Да мне и не надо рендерить html...
but then
> Да, для отрисовки тела текста поста можно как вариант. Там парсится html с ссылками на посты и всеми тегами форматирования. Надо поэксперементировать.
Блять, сам себе спротиворечил. Я имел в виду всю страницу двача в html рендерить нет смысла, для этого есть браузер. И использовать целый HTML движок для текста поста тоже overkill.
Короче, всё делается если есть много свободного времени и желания. А потом замеряется бенчмарками что работает лучше.
Аноним OP 16/01/26 Птн 15:23:53 #67 №328811960 
>>328811690
Это видимо и придётся. АХАХАХ, а что если рисовать подобранные колобки из пака пека-фейсов

Но эмодзей просто миллиард видов. Проще взять twemoji. И так же разбивать текст на токены - рендерить текст до эмодзи, рисовать картинку twemoji, рендерить следующий текст. Думаю эту проблему если не так, то как-то более красиво уже решали. Или рисовать через то, что может. FreeType2 наверно.
Аноним 16/01/26 Птн 15:26:02 #68 №328812023 
>>328811960
открой перплексити и попробуй там спросить
Аноним OP 16/01/26 Птн 15:50:10 #69 №328812787 
>>328812023
Да это в целом решаемо. Эмодзя такой же глиф шрифта, просто цветной. Там где-то в недрах его так же нужно растрировать чтобы отобразить на экране. И если где-то в настройках приложения выбрано "Метод отрисовки текста: GDI", а GDI в цветные эмодзи не может - рисовать иъ чем-нибудь другим отдельно, другим методом отрисовки текста. В крайнем случае как я описал - открыть шрифт Segoe что-то там, отрендерить атлас с нужными глифами и помещать картинки на экран.

> перплексити
Точно. Столько нейросетей появилось, я всё openai пользуюсь. Ещё z.ai. Хз, регаться надо, не впечатляет пока. Всё что встречал или тупее openai, или умнее но трясёт бабки буквально paywall.
Аноним OP 16/01/26 Птн 16:01:52 #70 №328813137 
>>328809822
А, нет. Я не помню уже что я использовал. Какие-то language серверы.
Как я ни пытался превратить Vim в IDE ничего хорошего из этого не получалось, потому что плагины работали в одном потоке с редактором и всё тормозило. Многопоточность уже завезли потом.
Аноним 16/01/26 Птн 16:24:40 #71 №328813726 
>>328800330 (OP)
оп, давай свяжемся? хочу релизнуть твоё творение в стим
Аноним OP 16/01/26 Птн 16:26:00 #72 №328813768 
>>328809595
Хз что такое chan. Из всего что знаю есть только мобильные приложения под андроид и ios.
Аноним 16/01/26 Птн 16:28:29 #73 №328813849 
>>328813137
Ты там что ли всю библиотеку мира что ли редактировал параллельно вычисляя простые числа? Что за плагины такие? Я емаксом пользуюсь, тут мультитреда нет и не будет если чо, а он гуишку ещё отрисовывает. В виме кстати вроде его тоже так и нет. Ну ладно, не хочешь - как хочешь.
Аноним 16/01/26 Птн 16:28:55 #74 №328813864 
>>328813849
>что ли всю библиотеку мира что ли
упс
Аноним OP 16/01/26 Птн 16:34:15 #75 №328814026 
16526884757880.png
>>328813726
Так я и сам могу. Нахуа только...

>>328813849
Нет. Пользовался VIM не от хорошей жизни на двухъядерном i5-460
Аноним 16/01/26 Птн 16:35:33 #76 №328814062 
>>328814026
>Нахуа только
чтобы увековечить... пынимаешь?
Аноним OP 16/01/26 Птн 16:38:32 #77 №328814148 
>>328813849
> Что за плагины такие?
Да рили не помню уже. Какое-то дерево commander что-то там, автокомплит и подсветка ошибок вроде IntelliSense, только через clangd сервер. Не понравилось что вим зависал намертво пока что-то обрабатывается.
Аноним OP 16/01/26 Птн 16:42:59 #78 №328814279 
Но я до сих пор им пользуюсь чтобы редактировать текст и конфиги из терминала в msys2 или по ssh. Только как обычным текстовым редактором, без плагинов.
Аноним 16/01/26 Птн 16:45:21 #79 №328814340 
image
хм
Аноним OP 16/01/26 Птн 17:00:43 #80 №328814891 
image.png
>>328814340
Пока нет возможности открывать картинки.
Там нужно жёстко зарефакторить хуйню с событиями мыши.

Далее с картинками понятно как быть, вписать в центр вида ограничив по высоте ширине, зумить на колесо.
Для видео ещё и плеер колхозить с ffmpeg... А это значит мнопоток - декодер видео, декодер аудио, продюсер и консьюмер декодированого аудио в аудиобуфер WASAPI и вся их синхронизация. Вот это жопа.
Аноним 16/01/26 Птн 17:04:32 #81 №328814996 
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
width="400" height="300" viewBox="0 0 400 300">
<script type="text/javascript">
<![CDATA[
alert(1);
]]>
</script>
<image x="50" y="50" width="300" height="200"
xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAFUlEQVR42mP8/58BQwgd6GJk5GAAAHyfAgXWvYwZAAAAAElFTkSuQmCC" />
<rect x="10" y="10" width="380" height="280"
fill="none" stroke="black" stroke-width="2" />

</svg>
Аноним 16/01/26 Птн 17:06:30 #82 №328815055 
>>328814996
><script type="text/javascript">
><![CDATA[
>alert(1);
>]]>
></script>
чел ты... у него не отработает этот говняк
Аноним OP 16/01/26 Птн 17:13:20 #83 №328815261 
>>328814891
Я пробовал написать видеоплеер отдельно. Звук начинает пердеть и отставать.
А когда закрываешь видео там багулина была, что после закрытия видео, поток с декодером почему-то не сразу получает сигнал и декодер продолжает декодировать кадры и семплы звука в очередь в RAM. Так память ещё росла лесенкой в несколько гигабут, потом до него всё-таки доходит, он останавливается и всё высвобождает.
Скорее всего надо ограничить размер в очереди, чтобы декодер ждал пока очередь освободится, перед тем как декодировать далее.
Аноним OP 16/01/26 Птн 17:31:43 #84 №328815870 
ib-postcontrolNoG8EWpe8D.png
ib-postcontrolFrSziUoHP8.png
>>328814996
>>328815055
Да(

Макаба экранирует html символы в &lt; &lg; и прочее. Которые я обратно расшифровываю чтобы отрисовать, второй раз ничего не процессируется.
Если теги не экранированы как в прикреплённом посте в /soc/, они просто игнорируются оставляя содержимое. Не игнорируется <a> с post-reply-link
Чё с этим делать пока не знаю. Но видимо подрубать HTML рендерер для текста поста, но как-то парсить и применять CSS я не намерен. Или забить и просто удалять теги по типу <style> и <script> вместе с содержимым, пытаясь сделать пост скучным без стилей

Сломать парсер, нужно чтобы сырая неэкранированная разметка была поёбаной, типа <<a> или незакрытый тег.
Точно, вот для этого надо юнит тесты написать и проверить всё возможное.

Иначе не знаю как. Может конечно есть какие-то хитрые юникод символы которые обманывают std::basic_string::length() или wcslen но это была бы серьёзная дыра в рантайме C++.
Аноним OP 16/01/26 Птн 17:41:33 #85 №328816198 
>>328815870
Опять же, что там в дашчане и айчане. Я не пользуюсь просто.
Аноним 16/01/26 Птн 17:43:52 #86 №328816266 
>>328800330 (OP)
Что такое вин32???
Аноним 16/01/26 Птн 17:52:28 #87 №328816519 
>>328800330 (OP)
>Win32
ебанулся все еще на десятке сидят такая 32...
Аноним OP 16/01/26 Птн 17:54:47 #88 №328816590 
>>328816266
Windows API самый низший слой програмного интерфейса, на котором приложение может общаться с ОС виндовс. Создавать окна и отрисовывать себя.
Меньше слоёв абстракций - меньше боттлнека и быстрее приложение. Например uTorrent 1.8.2, Notepad++ или 7zip они написаны с использованием Win32 API напрямую.
Аноним 16/01/26 Птн 17:57:43 #89 №328816656 
>>328816590
Когда в очередной раз капча изменится твоя програмка слетит нахуй.
Алсо в твоей програмке нужно учесть всю эту современную разметку то есть посути почти сделать браузер. И уже есть решение этой задачи - тупо использовать электрон...
Аноним OP 16/01/26 Птн 18:04:41 #90 №328816843 
>>328816656
Щито поделать... Мы не ищем легких путей
[mailto:Sage] Аноним 16/01/26 Птн 18:05:59 #91 №328816879 
>>328816266
Хуйня для анальных рабов Микрософта с которой как я слышал сейчас бегут пользователи из-за охуения требований и анальных зондов МС
Аноним 16/01/26 Птн 18:07:53 #92 №328816929 
ОП хуй ты же в курсе, что как только этой хуетой кто-то кроме тебя будет пользоваться, то сразу в твоём кривом говне найдут RCE и заразят всех ебанатов, кто скачал эту хуйню и просматривал двач
Аноним 16/01/26 Птн 18:11:34 #93 №328817022 
>>328800330 (OP)
А зачем?
Аноним 16/01/26 Птн 18:13:05 #94 №328817059 
>>328816929
>заразят всех ебанатов, кто скачал эту хуйню
ты еблан? в данном случае надо прогрзуить тред или пост со специально оформленным текстом, а других векторов атаки и нет
Аноним OP 16/01/26 Птн 18:16:39 #95 №328817154 
>>328816929
Я знаю. У меня и нет никаких планов выпускать бинарник в люди, пока код не будет протестирован миллиард раз фазерами и санитайзерами.
Аноним 16/01/26 Птн 18:18:10 #96 №328817200 
>>328817059
> и просматривал двач
Ты совсем денерат слепой?
Аноним OP 16/01/26 Птн 18:20:36 #97 №328817275 
image.png
>>328808908
> TypeScript
Это не настоящая статическая типизация, это транспиляция в динамически-типизированный язык
Аноним 16/01/26 Птн 18:21:29 #98 №328817300 
>>328800330 (OP)
cачик ебанат
Аноним 16/01/26 Птн 18:23:51 #99 №328817358 
>>328800330 (OP)
Как будто у нас мало приложений, которые представляют из себя браузер, но только для одного единственного сайта. Это прям как мои родители, которые в нулевых создавали ярлыки для каждого сайта на рабочем столе, а современная деградация дошла до того, что это превратилось в отдельное приложение для каждого сайта.
Аноним 16/01/26 Птн 18:27:32 #100 №328817449 
>>328800330 (OP)
А нахуя?
Аноним 16/01/26 Птн 18:34:45 #101 №328817652 
Screenshot 2026-01-16 at 18-33-32 b - С помощью нейрокала делаю нативный клиент двача для Win32 чтобы читать двач без браузера. Оверчан.png
>>328801192
>🫨
Где под десятку взять фонты или хз что, чтобы все отображались в браузере?
Аноним 16/01/26 Птн 18:41:55 #102 №328817853 
>>328800330 (OP)
сначала подумал, что ты заставил нейронку отыгрывать двач, подумал, что прикольно
Аноним 16/01/26 Птн 18:46:04 #103 №328817959 
>>328817652
>Где под десятку взять фонты или хз что, чтобы все отображались в браузере?
поставить одинарку
Аноним 16/01/26 Птн 20:23:07 #104 №328820945 
>>328817959
>поставить одинарку
Ради пары значков говносмайлов? Ты поехавший?
Аноним 16/01/26 Птн 20:31:56 #105 №328821232 
<div style="background:url('javascript:while(true){}')">.</div>
<!-- Или через тег: -->
<marquee loop="999999999">Бесконечный скролл</marquee>
Аноним 16/01/26 Птн 20:40:12 #106 №328821494 
1768584262375123.mp4
>>328800330 (OP)
Ты дурачок? В мс маркете uwp нативный клиент с поддержкой пуш уведомлений давно лежит.
Аноним 16/01/26 Птн 20:42:25 #107 №328821563 
>>328800330 (OP)
Планируешь в гитхаб заливать?
Аноним 16/01/26 Птн 20:55:27 #108 №328821979 
11869953.jpg
>>328801192
Забавно, только mozilla отображает здесь все смайлы. А вот хром с оперой 1/3 не понимают.
Аноним 16/01/26 Птн 21:07:55 #109 №328822343 
Как там vs ? всё ещё лагает при каждом пуке? у тебя я так понял, какая то новая
Аноним OP 16/01/26 Птн 21:08:08 #110 №328822346 
>>328821563
Возможно. Пока ещё рано, слишком сыро и ничего нет кроме отображения постов и сбора/сортировки тредов. Читать можно, но всё равно ещё не очень удобно как минимум без открытия картинок и видео, есть что добавлять.
Когда-нибудь в будущем может создам ещё тред, если будут какие-то успехи, не станет похуй и не забью.
Аноним OP 16/01/26 Птн 21:34:45 #111 №328822719 
>>328822343
2026. Копайлот бесполезный добавили с агентом с ограниченым количеством токенов.
Хз, как комп для игр собрал перестало лагать. Не могу оценить объективно.
Аноним 16/01/26 Птн 22:36:36 #112 №328824242 
image.png
>>328800330 (OP)
А она скрытнопосты видит?
Аноним 16/01/26 Птн 22:40:21 #113 №328824344 
А постить как?
comments powered by Disqus