
В настоящее время на просторах интернета можно найти множество приложений для заметок и планирования. Большая их часть – проприетарные старички, вроде Evernote, Nimbus Notes, Notion и т.д. Но будем честны, не все из них прошли проверку временем. Добавление ненужных функций стало основной целью для развития подобных сервисов, но при этом присутствует полное игнорирование фидбека пользователей, а также хоть какая-нибудь работа над оптимизацией.
Более того, главной проблемой таких сервисов является использование проприетарных форматов или заметок “в базе данных”. В будущем это может привести к тому, что пользователь без конкретного софта, не сможет получить доступ к своим данным.
В мире open-source, напротив, за многие годы появились достойные аналоги. Среди них есть как оффлайновые редакторы, вроде Typora, Mark Text или Notable, так и онлайн-редакторы с функцией синхронизации, вроде Joplin и Obsidian. Чем же они хороши на фоне своих “больших братьев”?
Markdown как символ свободы

Все уважающие себя открытые заметочники берут за основу markdown – удобный и практически общепринятый способ разметки текста. У него есть как сильные, так и слабые стороны:
+ | – |
Универсальность (документы с разметкой markdown представляют из себя обычные текстовые документы) | Строгий синтаксис (необходимость заучивать служебные символы или пользоваться шпаргалкой) |
Конвертируемость (готовые документы можно конвертировать практически в любой текстовый формат) | Ограниченное форматирование (нет поддержки выбора шрифтов, цветого выделения и пр.) |
В идеале, несмотря на свои минусы, пользователь может компенсировать их самостоятельно. Например, можно избавить себя от необходимости заучивать синтаксис при помощи редакторов с поддержкой WYSIWYG, а ограничения в форматировании частично закрываются различными расширениями. Из главного же, как не крути, остаётся универсальность – именно та черта, по которой многие используют документы с данной разметкой.
В первую очередь, даже в отсутствии рендера документа, всё равно возможно правильно прочитать текст со всеми заголовками, абзацами и форматированием даже через 30-40 лет.
Во вторых, с файлами *.md нет привязки к какому-то конкретному облачному хранилищу. Можно записать “электронный блокнот” на обычный диск или флешку. А для облачного хранилища выбрать либо проприетарные варианты, либо остановиться на чём-то вроде Nextcloud.
В третьих, пользователь не привязан к конкретному редактору. Если что-то перестанет поддерживаться через 5-10 лет, всегда можно найти что-то из огромного числа альтернатив. Проще говоря, если в мире исчезнут практически все проприетарные и открытые редакторы, но останется обычный блокнот, вы сможете прочитать и извлечь все нужные данные.
Базовый синтаксис
Чтобы начать работу с markdown, необходимо знать лишь несколько простых примеров синтаксиса. Разберём их подробнее.
Заголовки
Заголовки в markdown обозначаются символом #
перед текстом. В зависимости от количества символов, меняется уровень заголовка:
# Заголовок первого уровня
## Заголовок второго уровня
### Заголовок третьего уровня
#### Заголовок четвёртого уровня
##### Заголовок пятого уровня
###### Заголовок шестого уровня
Чтобы заголовки работали, после символа всегда необходим пробел. Также для лучшей читаемости в тексте, советуется оставлять пустые строки перед заголовком и после заголовка.
Абзацы
Абзацы в markdown создаются при помощи разделителя – пустой строки.
Это первый абзац текста.
Это второй абзац текста.
Не рекомендуется оставлять дополнительные пробелы в начале абзаца, чтобы избежать ошибок в отображении текста.
Цитаты
Для создания цитат используется символ >
перед абзацем:
> Это первый абзац цитируемого текста.
При этом цитирование может состоять из нескольких абзацев, разделённых пустой строкой с символом >
:
> Это первый абзац цитируемого текста.
>
> Это второй абзац цитируемого текста.
Сами же цитаты способны перенимать другие элементы синтаксиса, такие как заголовки, списки и форматирование текста.
Списки
Для разметки неупорядоченных списков используются символы *
или -
. После каждого такого символа необходимо ставить пробел:
* Пункт 1
* Пункт 2
Для вложенных пунктов необходимо отступить от начала строки четырьмя пробелами:
* Пункт 1
* Пункт 1.1
* Пункт 1.2
* Пункт 2
Для нумерованных списков синтаксис сохраняется, но символы заменяются цифрами с точками:
1. Пункт 1
1. Вложенный пункт 1
2. Вложенный пункт 2
2. Пункт 2
При этом порядок цифр не обязателен, но первый пункт всегда должен начинаться с 1.
Блок с кодом
Существует 2 правильных способа вставки кода.
Классический. Перед вставкой кода необходимо сделать отступ в виде по крайней мере четырёх пробелов или одного Tab.
<html>
<head>
</head>
</html>
GitHub-Flavored Markdown. Намного более удобный способ, поддерживаемый большинством редакторов. Чтобы вставить блок при помощи данного способа необходимо вставить три апострофа ```
до и после кода. А для подсветки кода внутри блока можно дополнительно указать язык исходного кода.
```html
<html>
<head>
</head>
</html>
```
Картинки
Для добавления картинок в текст используются следующие элементы синтаксиса:
- Символ
!
- Alt-текст внутри
[ ]
- Ссылка или путь к картинке внутри
( )
Полностью это выглядит так:

Акцентирование текста
Для акцентирования текста markdown предлагает синтаксис с полужирным и курсивным выделением.
Текст или слова, заключённые между двойными символами **
будут выделены полужирным шрифтом.
**Полужирный текст**
Текст или слова, заключенные между одинарным символом * будут выделены курсивом.
*Курсивный текст*
Чтобы объединить оба способа акцентирования, используйте тройной символ ***
.
***Акцент***
Обратите внимание, что пробелов между символами и текстом нет. Это важно для правильного отображения форматирования.
Встраиваемый (inline) код
Если вы хотите вставить в текст часть кода и вам не требуется полноценный блок для этого, можно воспользоваться апострофами в формате:
Используйте команду `make`
Ссылки
Ссылки в markdown оформляются по аналогии с картинками. Чтобы вставить ссылку в текст, необходимо выделить нужную часть текста [ ]
и следом без пробела вставить ссылку внутри ( )
.
Вы можете скачать мою книгу [здесь](https://coolbook.xyz/book.fb2)
Расширения Markdown, стоит ли использовать?

Как вы могли убедиться, базовый набор синтаксиса не так уж и сложен в использовании. Его вполне достаточно для того, чтобы составлять заметки и форматировать их в удобочитаемый формат. Но что делать, если вам необходимы дополнительные возможности? Например, если вы составляете документацию для своего проекта или подготавливаете файлы для статического веб-сайта. Выход есть! При помощи HTML вставок (так называемых хуков) можно заметно приукрасить текст.
Вот лишь малый перечень того, что могут предложить расширения:
- Цветной текст
- Подписи к картинкам
- Таблицы
- Admonitions (блоки внимания)
- Специальные символы
У всего вышеперечисленного есть только один заметный минус – не все редакторы способны отобразить у себя подобный синтаксис. Но это не значит, что важная часть текста будет утеряна. Даже если вы откроете документ блокнотом, в рамках html-тегов будет сохранена вся необходимая информация.
Так как markdown не должен ограничивать пользователя на фоне прочих WYSIWYG редакторов, пользоваться хуками не только можно, но и в некоторых ситуациях нужно.
Если вам интересна эта тема, советую обратиться к сайту Markdown Guide. Здесь можно найти как правильные практики использования синтаксиса, так и перечень доступных редакторов.
А нужен ли Markdown в принципе?
Люди, привыкшие к кнопкам форматирования текста на панели Word, Google Docs или Evernote, как правило обходят markdown стороной. Однако сам по себе markdown может дать намного большую гибкость, если рассматривать текстовые документы в разрезе долговечности и универсальности.
Нужен ли markdown конкретно вам? Трудно сказать. Если вы писатель или журналист – ответ однозначно да. Также данный формат может оказаться полезным для студентов или программистов благодаря математическим возможностям и поддержке диаграмм (при помощи расширений). Если же вы сильно привязаны к проприетарным форматам Microsoft Office, markdown покажется вам примитивным инструментом.
Автор: Владислав Лищенко / HomeHosted.ru