Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

MDEZ++: A Lightweight Markdown Editor Built in 40 Hours

Описание и применение

MDEZ++ – быстрый Markdown‑редактор, созданный за 40 часов, использующий Qt и C++20. Он рендерит Markdown в реальном времени, поддерживает HTML и обычные текстовые файлы, и распространяется через Flathub, AppImage, Windows и WebAssembly.

Задача

Develop a fast, lightweight Markdown editor that renders live without embedding a heavy browser engine, while supporting multiple file types and cross‑platform distribution.

Результат

In 40 hours, the author built a fully functional, cross‑platform Markdown editor that renders live, supports multiple file types, and is distributed via Flathub, AppImage, Windows installer, and WebAssembly.

Рабочий процесс

  • 1. Set up a Qt C++20 project with two panes for editing and rendering.
  • 2. Implement live Markdown rendering using Qt’s Markdown engine, adding custom regexes to style blockquotes and code blocks.
  • 3. Add a Format menu with buttons and shortcuts to insert Markdown syntax without manual typing.
  • 4. Implement tabbed editing with automatic naming and deletion handling.
  • 5. Add file operations (Open, Save, Save All, Export to HTML) and a Settings menu for autosave, font sizes, line endings, and wrapping.
  • 6. Handle link clicks by opening URLs in the system browser with safety checks for malformed links.
  • 7. Resolve permission issues and prepare a Flathub manifest, CI/CD workflow, and AppImage build scripts.
  • 8. Test on Linux, Windows, and WebAssembly environments, adjusting for platform‑specific quirks.
  • 9. Publish the project on GitHub and Flathub.
  • 10. Update README with detailed features, installation, keyboard shortcuts, and menu tree documentation.

Доказательства

I had to find unique solutions to some problems that traditionally can never be solved without embedding a resource‑expensive, bulky Chromium instance into the rendering side, which would completely defeat the purpose of the project.

Источник

I solved those issues with unique, complex regexes. While brittle, they still seem to work.

Источник

I had to work with permission issues for a while, especially while getting it ready for Flathub.

Источник

The GitHub Actions CI/CD Workflow. It’s 164 lines long.

Источник

  • Дата записи: 2026-11-02T19:29:01.122Z