
Marcli: Markdown Терминал
amcured только что Marcli: Markdown Терминал Простой 8 мин 0 Rust * Open source * Кейс Recovery Mode В экосистеме CLI на Rust тихо бушует эпидемия. Симптоматика: справочные тексты, от которых хочется проверить себя на...
<5 — 2026'da uzaya kaç SpaceX Starship fırlatması ulaşacak?
Вот важная новость с фронта ИИ: amcured только что Marcli: Markdown Терминал Простой 8 мин 0 Rust * Open source * Кейс Recovery Mode В экосистеме CLI на Rust тихо бушует эпидемия. Симптоматика: справочные тексты, от которых хочется проверить себя на дальтонизм, сообщения об ошибках, настолько плоские, что их можно подсунуть под дверь, и документация, чья стилистическая выразительность уступает кассовому чеку. При этом любой современный эмулятор терминала поддерживает жирный шрифт, курсив, цвет и Unicode-символы рисования рамок.
Разрыв между тем, что терминал умеет показывать, и тем, что большинство CLI-инструментов соизволяют показывать, по масштабу сопоставим с Гранд-Каньоном и по глубине — с Марианским колодцем безразличия к пользователю. Marcli этот разрыв закрывает. Берёт CommonMark Markdown, отдаёт стилизованный ANSI-вывод для терминала.
Технические детали
Ваши пользователи видят красиво оформленный текст. Вся идея — в одном предложении, и этого ровно достаточно. Marcli terminal outputЧто оно делаетMarcli парсит Markdown через comrak — тот же парсер, что приводит в движение рендеринг на GitHub, — и обходит AST, порождая ANSI escape-последовательности для каждого поддерживаемого элемента.
Подсветка синтаксиса в огороженных блоках кода обеспечивается syntect — те же грамматики, что стоят за Sublime Text. Никакого вызова Pygments, никаких загрузок в рантайме, никаких церемоний конфигурации. Просто работает — концепция, которую остальная экосистема, кажется, считает радикальной.
Один вызов функции:let output = marcli::render("# Hello\n\nSome **bold** text. ", &Default::default()); println! ("{}", output);Это весь публичный API для типичного случая.
Отраслевые последствия
Функция render принимает строку с Markdown и структуру RenderOptions, возвращает String с вшитыми ANSI-последовательностями. Никакого паттерна «строитель» с семнадцатью вызовами по цепочке. Никакого трейта, который нужно реализовать предварительно.
Никакого асинхронного рантайма, затаившегося в дереве зависимостей и ждущего удобного случая сожрать вашу сборку. Поддерживаемые элементыMarcli обрабатывает полную спецификацию CommonMark плюс несколько расширений:Заголовки — h1 отображается жёлтым жирным, h2 — голубым жирным, h3 и ниже — белым жирным. Три уровня визуальной иерархии без единой строчки конфигурации.
Строчное форматирование — жирный, курсив, зачёркнутый и строчный код, каждый со своим стилем ANSI. Маркированные списки — с треугольными маркерами (▸) вместо привычного ASCII-дефиса. Мелочь, но читаемость подскакивает непропорционально.
Событие, по словам экспертов, усилит конкуренцию в сфере ИИ.




