Преобразование средних сообщений в уценку для вашего блога
Как быстро экспортировать статьи Medium в свой блог
Если вы, как и я, начали вести блог на Medium, но также хотите создать свой собственный веб-сайт для отображения своих статей, вам понадобится способ переноса статей с Medium на язык Markdown. Markdown - это легкий язык, предназначенный для преобразования в HTML для Интернета, и есть несколько инструментов, которые позволяют перейти от существующих статей Medium к Markdown для блога.
(Если у вас еще нет блога, следуйте этому руководству, чтобы создать собственный веб-сайт за пять минут, используя страницы Jekyll и GitHub.)
Инструменты от среднего до Markdown
Существует как расширение Chrome, так и инструмент командной строки для переноса ваших сообщений на Medium в Markdown. К сожалению, я обнаружил, что расширение Chrome ненадежно, и если оно действительно работает, оно вызывает ряд ошибок форматирования, которые необходимо исправить.
Если вы можете заставить расширение Chrome работать и вам неудобно работать в командной строке, то это, вероятно, лучший выбор для вас. Однако я обнаружил, что инструмент командной строки лучше подходит для моего использования, потому что он работает каждый раз и требует меньшего количества повторных настроек текста после запуска.
Использование Medium-to-Markdown в командной строке
Пакет средней до уценки написан на Javascript, что означает, что вам потребуется node
для запуска и npm
для установки пакета. Если вы работаете в Windows, используйте эту страницу для установки обоих (это займет около 3 минут). Затем установите пакет с помощью npm install medium-to-markdown
. Фактический сценарий, который вам нужно будет запустить, доступен здесь и также показан ниже.
Для запуска сохраните сценарий как medium-to-markdown.js
, измените "<medium post url">
на адрес опубликованного сообщения и введите node medium-to-markdown.js
в командной строке (убедившись, что сценарий находится в вашем каталоге.
Это выведет весь пост как Markdown в вашу консоль. Чтобы перенаправить вывод в файл, вы можете ввести node medium-to-markdown.js >> file.md
. Если вы используете GitHub Pages + Jekyll для своего блога, вам нужно сохранить файл md
в каталоге _posts/
репозитория как date-title.md
. Например, мой последний почтовый файл - _posts/2018-09-16-Five-Minutes-to-Your-Own-Website.md
. После преобразования статьи в файл Markdown с правильным именем ее можно опубликовать, отправив репозиторий на GitHub.
Лично мне этот процесс переименования файла вручную показался утомительным, поэтому я написал сценарий Python, который принимает URL-адрес опубликованного сообщения Medium вместе с датой, вызывает сценарий преобразования medium-to-markdown.js
с URL-адресом и сохраняет полученную уценку в правильном файле. имя. Сценарий можно найти здесь, а использование командной строки - ниже:
В целом, запуск сценария занимает 15 секунд, а обновление веб-сайта - около 5 минут! Зайдите в свой блог, чтобы увидеть визуализированную статью.
Решения общих проблем
И расширение Chrome, и инструмент командной строки создают незначительные проблемы в Markdown, которые вам необходимо исправить. Я все редактирую в Онлайн-редакторе прозы, и мне нравится открывать редактор и исходную статью на Medium рядом. (Я также часто использую инструменты разработки Chrome - щелчок правой кнопкой мыши и inspect
- в моем блоге, чтобы настроить CSS и сразу увидите изменения.)
Ниже приведены некоторые из замеченных мною проблем и способы их устранения. Я предполагаю, что вы работаете с GitHub Pages и Jekyll для своего блога (следуйте этому руководству, чтобы начать работу), хотя эти советы могут работать с другими фреймворками. Эти решения не являются исчерпывающими, поэтому, если у вас возникнут другие проблемы, дайте мне знать в комментариях или в Twitter.
Подписи к изображениям
Как вы можете видеть выше, при преобразовании по умолчанию в Markdown подписи к изображениям отображаются с выравниванием по левому краю под изображением. Чтобы центрировать подписи, добавьте следующее в ваш styles.scss
файл (в корневой каталог репозитория):
// Captions for images img + em { font-style: italic; font-weight: 600; margin-bottom: 20px; margin-top: 8px; display: block; text-align: center; font-size: 14px; color: black; }
Затем в самой Markdown измените текст заголовка с отображаемого по умолчанию сверху вниз. Убедитесь, что заголовок находится в отдельной строке:
Подпись теперь будет по центру под изображением.
Если вам не нравится этот стиль, измените CSS, указанный выше.
Изображения бок о бок
Для рендеринга изображений бок о бок в разметке вы можете использовать таблицу из двух столбцов.
Я обнаружил, что вам нужно включить заголовки, иначе таблица отображается неправильно. Есть пара других вариантов, но таблица работает хорошо.
Вот пустой код таблицы, поэтому просто замените image_link
и header
:
Header Left | Header Right :--------:|:-------: ![](image_link) | ![](image_link)
Блоки кода
Если вы много пишете о программировании, то хотите, чтобы ваш код выглядел великолепно! К счастью, в отличие от Medium, вы можете использовать подсветку синтаксиса, чтобы блоки кода появлялись в вашем блоге. Jekyll изначально поддерживает выделение румян, у которого есть множество стилей на выбор (просмотреть их здесь).
В Markdown для статьи окружайте блоки кода обратными кавычками и укажите язык для выделения:
```python from sklearn.ensemble import RandomForestClassifier # Create the model with 100 trees model = RandomForestClassifier(n_estimators=100, bootstrap = True, max_features = 'sqrt') # Fit on training data model.fit(train, train_labels) ```
Подсветка синтаксиса по умолчанию выглядит так:
При использовании настраиваемой темы выделение выглядит следующим образом:
Чтобы установить собственную тему кода, обратитесь к этой статье или, если вам нравится мой вид, вы можете скопировать и вставить мою таблицу стилей кода code-highlighting.scss
(ссылка) в свой _sass/
каталог. Затем измените строку в style.scss
, которая читает @import “highlights”
на @import “code-highlighting"
(это должно быть ближе к низу), чтобы вместо этого импортировать новый стиль.
GitHub Gists
Еще одна распространенная часть моих сообщений на Medium - это GitHub gists. Чтобы правильно отобразить их в ваших сообщениях, начните с перехода к исходной статье среднего уровня, щелкните правой кнопкой мыши на Gist и выберите inspect frame
.
Откроется страница с непонятным кодом. Однако все, что вам нужно сделать, это скопировать то, что находится между тегами <script>
, как показано ниже:
Просто скопируйте и вставьте эту строку в Markdown, как показано ниже, и она будет правильно отображена в вашем блоге.
Конечно, как и любой другой элемент на вашем веб-сайте, вы можете стилизовать блок с помощью CSS, как вам нравится!
Выдержки из сообщений
По умолчанию Jekyll будет показывать только первый абзац вашего сообщения на главной странице вашего блога с кнопкой «Подробнее» для доступа к остальным. Если у вас есть изображение вверху вашего сообщения, это все, что будет отображаться.
Чтобы расширить отрывок, добавьте в _config.yaml
следующую строку:
# Specifies end of excerpt excerpt_separator: <!--more-->
Затем поместите <!--more-->
tag в уценку поста там, где вы хотите, чтобы отрывок заканчивался.
Дополнительные соображения
Есть еще множество вариантов, которые я еще не изучал. Если вы хотите сделать что-то в своем блоге, есть шанс, что это можно сделать. Например, вы можете добавлять комментарии ко всем своим сообщениям, создав учетную запись Disqus и добавив ее в свой _config.yaml
файл (руководство здесь). Если у вас много сообщений и вы хотите ограничить их количество на одной странице, вы также можете указать это, используя pagination
в файле конфигурации (инструкции).
Создание веб-сайта - это увлекательно, потому что вы можете сделать его так, как хотите! Хотя большинству людей это может показаться не удивительным, я все же ценю, когда я делаю незначительное обновление своего сайта и могу видеть изменения в Интернете так, как я задумал. Вы не можете себе представить, как я был воодушевлен, когда наконец-то на моей странице «О нас» запустился живой редактор кода! В конце концов, да, создание веб-сайта - это возможность показать себя миру, но это также и гордость за то, что вы создали.
Выводы
Перейти от существующей статьи Medium к Markdown можно быстро с помощью инструмента командной строки. Есть несколько незначительных ошибок, которые необходимо исправить после преобразования в Markdown, но это также дает вам возможность настроить публикацию именно так, как вы хотите.
Если вы все еще не знаете, что делать, загляните в мой репозиторий веб-сайта, чтобы узнать, сможете ли вы найти там решение, или свяжитесь со мной. Более того, если вы найдете что-то интересное, что вы можете сделать с блогом Jekyll, я буду рад услышать об этом. А теперь иди и начни писать.
Как всегда, приветствую комментарии и конструктивную критику. Со мной можно связаться в Twitter @koehrsen_will или через мой сайт willk.online