nikalexxx

Description
Александр Николаичев.Программирую фронтенд инфраструктуры Яндекса, рисую и люблю математику.
https://nikalexxx.github.io
Advertising
We recommend to visit
HAYZON
HAYZON
5,850,658 @hayzonn

لا اله الا الله محمد رسول الله

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
Мои каналы: @mazzafam

Last updated 1 month ago

Architec.Ton is a ecosystem on the TON chain with non-custodial wallet, swap, apps catalog and launchpad.

Main app: @architec_ton_bot
Our Chat: @architec_ton
EU Channel: @architecton_eu
Twitter: x.com/architec_ton
Support: @architecton_support

Last updated 1 month ago

Канал для поиска исполнителей для разных задач и организации мини конкурсов

Last updated 1 month, 2 weeks ago

2 months, 1 week ago
Закончил большой пласт работ по записи …

Закончил большой пласт работ по записи книг для своего книжного формата на языке разметки bbm 🎉

Начинаю выпускать по главам книгу "Языки и исчисления" https://nikalexxx.github.io/?/books/vereshagin-shen-firstord

Можно посмотреть исходники — https://github.com/nikalexxx/nikalexxx.github.io/blob/master/data/books/data/vereshagin-shen-firstord/1/1/text.bbm

Из нового — добавил таблицы и доработал счётчики (их любят в книгах, как и обычные числовые счётчики, так и римскими числами например). Таблицы было добавлять нетривиально, так как они плохо ведут себя со скроллом, пришлось добавлять обёрток из дивов. Плюс таблицы ПЛОХО СКРОЛЛЯТСЯ внутри элемента с justify\-content: center, поэтому его надо сбрасывать (обрезается начало таблицы).
Пикантные подробности css в исходниках https://github.com/bookbox-format/bookbox/blob/master/typescript-packages/view-html/src/htmlBook.css#L778

Остальные главы пойдут бодрее, мне осталось только обточить технику кастомных элементов (например theorem и proof).

Как закончу полировать язык разметки bbm, обновлю доку https://bookbox-format.github.io

2 months, 2 weeks ago
nikalexxx
2 months, 2 weeks ago
nikalexxx
2 months, 2 weeks ago

В деревне Бердюково

Бросаясь ледяной крупой,
Сегодня вышел март из тени.
В печи трещат в жару поленья,
Рождая белый дым густой.

Шершаво треснет береста
С поленницы второго ряда.
Дошли до клетки, скоро надо
Телегу в пять кубов достать.

На боровок закину ноги,
Грея крестец о кирпичи.
С палатьев край листа торчит,
На нём цепочка тавтологий.

Ищу в горнушке мой платок,
Случайно нож роняю с грядки.
По кухне запах идёт сладкий:
Ватрушкой занят весь шесток.

Ждут очереди колобушки,
Пока порубленные щи
Томятся в чугуне. Тащить
Пришлось из подпола избушки.

Рубили щи мы в сентябре,
В корыте тяпкой измельча.
Сейчас запас уже почат,
Осталось банок двадцать две.

Слезаю с печи, ужарел.
Внизу с окна крестню видать.
Люди галашатся (штук пять)
У чипыжей на свой манер.

Там каждый затмевал другого:
То деревенский дурачок,
То попандопало, то старичок,
То прощелыга, то пузатый боров.

Ждут автолавку в понедельник,
А я махну в полоски наши.
Наевшись запеченной каши,
Ищу под веник можжевельник.

Конечно есть на чердаке
Берёзовый, есть и дубовый.
Ломали за старухой, новый
Же будет хвойный, в кипятке.

И в мае снова мы пойдём,
Как только восстановим лавы
После разлива речки малой.
Одним веселым майским днём

Вприпрыжку будем на лугу
Бежать с шаранками вокруг.
Здесь исключён любой испуг,
В сумках с собой по пирогу.

А дело разве в пирогах?
Уж точно нет, в загибах дело!
Смотрел на небо — багровело,
Моей деревни был закат.

Все слова здесь — настоящие! Эти слова частично местные регионализмы, частично просто используемые в сельской местности. Если этот пост соберёт суммарно 50 реакций, то я выложу словарь для всех непонятных слов.

2 months, 2 weeks ago
nikalexxx
2 months, 2 weeks ago
Почти закончил первый параграф. С новым …

Почти закончил первый параграф. С новым языком разметки bbm многое пришлось решать с нуля 🏋.

Например кастомные элементы. В "Языках и исчислениях" активно использовались кастомные tex команды, например чтобы обозначать теоремы и доказательства.

Я решил это так: ввёл пространство имён def, где можно объявлять свои элементы. В отличие от external элементов, которые реализуются уже в рантайме, def это по сути макросы, чтобы собрать из стандартных элементов нужное.

На второй картинке можно увидеть, что элемент def:proof просто обрамляет доказательство в треугольники (частый приём в математических книгах, иногда ещё в конце доказательства квадрат).

Пока это я сделал на typescript, но планирую сделать декларативно прямо на языке bbm.

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

2 months, 3 weeks ago
Напоминаю, что прямо сейчас идёт Yandex …

Напоминаю, что прямо сейчас идёт Yandex Cup, чемпионат по программированию, который мы вместе с коллегами Яндексоидами готовим для вас

https://yandex.ru/cup/frontend

Успейте принять участие до 20 октября. В треке фронтенда на первом этапе попробуйте в числе прочих решить мою задачку "Бамбуковые палочки". Если наберете полный балл (пока никому не удалось с понедельника), напишите.

Я всё это время с начала недели сижу в дежурном чате и отсматриваю новые решения. Некоторые участники смогли меня удивить, решая способами, которые я и сам не предполагал 😱. Возможно и вы удивите😉

2 months, 3 weeks ago
Как обычно, всё чуть затянулось. Неделю …

https://marketplace.visualstudio.com/items?itemName=bookbox-format.bookbox-markup-language

Как обычно, всё чуть затянулось. Неделю отвлекся от разработки расширения. Но наконец оно готово!

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

Сейчас наконец дошли руки начать писать именно в файлах bbm первую главу книги "Языки и исчисления", буду выпускать как я и говорил ранее по главе за раз.

3 months, 1 week ago
nikalexxx
3 months, 1 week ago
Расширение для vscode почти готово, завтра …

Расширение для vscode почти готово, завтра опубликую.

На первой картинке фрагмент файла для грамматики textmate. Его я писал вручную, так как там были сложности с автоматической генерацией.

Во-первых, популярных конверторов из antlr4 в textmate нет. Во-вторых, не факт что есть однозначное соответствие, по крайней мере я это не доказывал.

Я придумал примерный алгоритм перевода грамматик, по сути исполнил его вручную. Если коротко, все последовательности терминалов надо свернуть в регулярку, а последовательность нетерминалов постепенно срезать с двух концов при помощи begin и end.

На второй картинке пример файла text.bbm с подсветкой. Контент взят из доки yt https://ytsaurus.tech/docs/ru/user-guide/dynamic-tables/dyn-query-language#obrashenie-k-kontejneram

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

We recommend to visit
HAYZON
HAYZON
5,850,658 @hayzonn

لا اله الا الله محمد رسول الله

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
Мои каналы: @mazzafam

Last updated 1 month ago

Architec.Ton is a ecosystem on the TON chain with non-custodial wallet, swap, apps catalog and launchpad.

Main app: @architec_ton_bot
Our Chat: @architec_ton
EU Channel: @architecton_eu
Twitter: x.com/architec_ton
Support: @architecton_support

Last updated 1 month ago

Канал для поиска исполнителей для разных задач и организации мини конкурсов

Last updated 1 month, 2 weeks ago