Предпросмотр Markdown
Конфиденциально — файл не сохраняется
383 символа · 20 строк
Как это работает
Напишите или вставьте
Или перетащите файл .md. Предпросмотр обновляется по мере ввода.
Посмотрите, как это будет выглядеть
Таблицы, списки задач, зачёркивание, сноски и блоки кода с цветами — вариант GitHub, а не простой CommonMark.
Заберите результат
Скопируйте HTML или сохраните автономную страницу, которая откроется где угодно и правильно распечатается.
Какой Markdown и зачем очищать HTML
Markdown — это семейство, а не одна спецификация, и здесь используется общепринятый набор GitHub-flavoured Markdown: заголовки, выделение, списки, ссылки, изображения, цитаты, таблицы, блоки кода с подсветкой синтаксиса, списки задач, зачёркивание, сноски и автоматические ссылки. Именно так пишут почти все, и именно это будет в README. Более экзотические диалекты и специальные плагины отдельных сайтов — блоки-предупреждения, шорткоды, шаблоны — не поддерживаются, поэтому в документе, написанном для конкретного генератора, часть синтаксиса может отобразиться как есть.
HTML отображается, но сначала очищается, и в этом стоит разобраться. Markdown намеренно допускает HTML внутри себя, а значит, Markdown-файл откуда угодно может содержать тег script, встроенный обработчик событий, iframe или ссылку javascript:. Если отобразить это как есть, в вашем сеансе выполнится чужой код — просто потому, что вы вставили чужой README, чтобы его посмотреть. Всё исполняемое удаляется до показа, так что оформление сохраняется, а код — нет.
Это общий урок, а не особенность этой страницы. Любая система, которая отображает Markdown от пользователей, — поле комментария, вики, тикет в поддержку — отображает пользовательский HTML, если не очищает его, и именно так эту проблему и упускают из виду: «это же просто Markdown». Преобразование Markdown не является границей безопасности; ею является очистка.
Вы видите предпросмотр содержимого, а не какого-то конкретного сайта. GitHub, GitLab и генераторы документации применяют свои таблицы стилей, якоря заголовков и расширения, поэтому один и тот же файл выглядит в каждом по-своему, — здесь показана структура, в которой они все сходятся. Инструмент сам ничего не скачивает, поэтому изображения по веб-адресу загрузятся, только если это позволяет их сервер, а относительные пути к файлам в репозитории не разрешаются вовсе.
Если нужно другое
README, который вы сейчас пишете, смотрите там, где он будет жить. Собственный редактор GitHub показывает предпросмотр с точным отображением, расширениями и якорями, а GitHub CLI — gh markdown-preview — делает то же локально на том же движке. Для документации у самого генератора (MkDocs, Docusaurus, Hugo) есть предпросмотр с живой перезагрузкой, где видны настоящие стили и навигация — то, что увидит читатель.
Для редактирования, а не проверки, удобнее редактор Markdown с панелью живого предпросмотра — Obsidian, Typora, VS Code со встроенным предпросмотром: он обновляется по мере ввода, а файл остаётся на месте, и не нужно каждый раз вставлять текст на страницу. Эта страница — для чтения чужого Markdown или быстрого взгляда на то, что вам прислали.
Частые вопросы
Мой документ где-нибудь сохраняется?
Нет. Ничего не сохраняется и не хранится, а после загрузки страницы всё работает даже с выключенным Wi-Fi. Заметки, черновики и внутренняя документация — как раз то, что люди вставляют в предпросмотр, не задумываясь.
Какой это вариант Markdown?
GitHub-flavoured, потому что сегодня на практике «Markdown» означает именно его. Таблицы, списки задач, зачёркивание, автоссылки, сноски и блоки кода с подсветкой синтаксиса — всё работает. В простом предпросмотре CommonMark ничего этого нет, поэтому README, который хорошо выглядит на GitHub, там выглядит сломанным.
Можно ли использовать HTML?
Да, и перед показом он очищается. Markdown допускает HTML, и этот предпросмотр его отображает, но всё, что может запустить скрипт, сначала удаляется, потому что вставка чужого README никогда не должна выполнять чужой код. Оформление, ссылки и изображения сохраняются.
Подсвечиваются ли блоки кода?
Да, с определением языка — для тех языков, которые ожидаешь увидеть в README, тем же подсветчиком, что используют рендеры в стиле GitHub. Укажите язык сразу после открывающих ```, и код будет раскрашен соответственно.
Можно ли сделать из этого PDF?
Именно это делает наш инструмент [Markdown в PDF](markdown-to-pdf) — с правильными разрывами страниц и типографикой. Эта страница для чтения и проверки, а та — для создания документа.
А изображения в моём Markdown?
Изображения по веб-адресу загружаются как обычно. Изображения по относительному пути — "" — прочитать нельзя, потому что у веб-страницы нет доступа к папке, в которой лежит ваш файл. Вместо них показывается заглушка с именем недостающего файла, а не значок битой картинки.
Полезно знать: HTML внутри Markdown отображается, но сначала очищается: скрипты, обработчики событий и всё, что может выполниться, удаляются, поэтому вставленный чужой README не сможет запустить чужой код. GitHub-flavoured Markdown поддерживается; более экзотические диалекты и специальные плагины — нет.
Разместите этот инструмент на своём сайте
Бесплатно для любого блога, страницы класса или справочной статьи. Вставьте один фрагмент кода — и посетители смогут пользоваться инструментом прямо на вашей странице.
Похожие инструменты
Markdown в PDF
Markdown в красиво свёрстанный PDF
Просмотр CSV
CSV без искажений от Excel
Просмотр XML
XML в виде сворачиваемого дерева
Счётчик слов
Слова, предложения и время чтения
Счётчик символов
Символы, байты и что на самом деле считает ваш лимит
Сравнить тексты
Что именно изменилось между двумя версиями