Почему конвертация из Google Docs в Markdown в Discourse работает так хорошо?

Мне часто приходится конвертировать Google Docs в Markdown для работы. Вместо того чтобы устанавливать слегка подозрительное расширение или скачивать файл в формате .odt и запускать pandoc для конвертации в .md, я часто просто копирую и вставляю содержимое прямо в обсуждение на Discourse — и вуаля.

Каждый раз это самый плавный переход в Markdown. То же самое происходит с таблицами: когда я копирую информацию, структурированную в виде таблицы, она автоматически оборачивается в Markdown-таблицу.

Как это работает?

Я начал изучать исходный код, но JS-библиотеки немного выше моего уровня. Я спрашиваю, потому что если это решение, которое можно использовать в других проектах с открытым исходным кодом (первым в списке: Joplin).

Любые советы или рекомендации по навигации по коду будут очень кстати.

50 лайков

Это результат тяжелой работы @vinothkannan! :flexed_biceps:

51 лайк

Мы создали собственный JS-модуль для преобразования HTML в Markdown в /app/assets/javascripts/discourse/app/lib/to-markdown.js. Спасибо за высокую оценку.

55 лайков

Полностью согласен! Я не раз был удивлён, копируя документы из Google Docs, которые мы создавали, в вики-страницы Discourse. Спасибо @vinothkannans!

8 лайков

Немного в стороне от остальной части вашего поста… Я где-то читал, что можно получить лучшие результаты, если экспортировать в .docx, а затем конвертировать это в Markdown через pandoc. И для меня это работает отлично (хотя я не пробовал экспортировать в .odt и конвертировать это в Markdown).

Но в следующий раз, когда мне понадобится конвертировать из Google Docs в Markdown, я обязательно попробую «Конвертер Discourse» :slight_smile:

4 лайка