Язык разметки Markdown сейчас весьма популярен: существуют десятки веб-сервисов, позволяющих легко разбавлять строго текстовые мысли картинками, таблицами, списками и прочими аксессуарами, и примерно столько же редакторов для настольных операционных систем — Windows, Mac OS, Linux/UNIX. За примерами использования Markdown можно вообще никуда не ходить — все без исключения статьи для «Хакера» авторы пишут именно в этой разметке. Сегодня мы выясним, как обстоят дела на этом фронте у повелителей зеленых роботов со сладкими именами.

Говорит и показывает Wiki

Markdown — облегченный язык разметки, созданный с целью написания максимально читабельного и удобного для правки текста, но пригодного для преобразования в языки для продвинутых публикаций (HTML, Rich Text и другие). Первоначально создан в 2004 году Джоном Грубером и Аароном Шварцем. Многие идеи языка были позаимствованы из существующих соглашений по разметке текста в электронных письмах.

Синтаксис языка построен на использовании специальных символов, благодаря которым введенный текст автоматически преобразуется в дальнейшем в заголовок, цитату, нумерованный или произвольный список, ссылку, картинку и прочее.

Например:

# Заголовок первого уровня (H1)
## Заголовок второго уровня (H2)
*данный текст будет набран курсивом*
**полужирное начертание**

На рис. 1 приведен пример исходного текста (слева) и после обработки синтаксиса Markdown (справа). Это так называемый базовый синтаксис, которым и будем тестировать наших участников.

Рис. 1. Просто и наглядно
Рис. 1. Просто и наглядно

В идеале хотелось бы, чтобы текст в мобильной версии выглядел примерно так же.

 

Подготовка эксперимента

В качестве помощника возьмем 10-дюймовый планшет средней ценовой категории и средней же производительности, с уже почтенной ОС Android 4.0.4 на борту. Так как набирать текст, используя экранную клавиатуру, сродни адскому наказанию грешников, я воспользуюсь Bluetooth-клавиатурой, заказанной когда-то на просторах Aliexpress. А чтобы совсем уж сделать работу комфортной, подключу к полноразмерному USB-порту (мегавещь, кстати) мышку. Обзор каждого редактора (помимо теста синтаксиса Markdown) будем подготавливать в нем самом, чтобы на практике ощутить все его достоинства и недостатки.

JPG vs PNG

Рассмотренные редакторы, поддерживающие вставку картинок формата JPG, точно так же работают и с файлами PNG.

 

Методика

Итак, чем же должны обладать претенденты, чтобы надолго поселиться в твоем Android-девайсе? Во-первых, как ни странно, поддержкой синтаксиса Markdown: как правило, мобильные редакторы пасуют при вставке картинок в текст или поддерживают не все возможности языка. Во-вторых, работой с локальными файлами и их синхронизацией с облачными хранилищами, ведь копировать файлы на флешки — прошлый век и моветон. В-третьих, поддержкой русского языка как в интерфейсе, так и в проверке орфографии (отмечу, что последняя уже присутствует в Android из коробки). В-четвертых, должно быть субъективное чувство комфорта при работе с текстом — в конце концов, это просто инструмент, который не должен мешать полету мысли и движению руки.

Лайфхак

Android хорошо умеет работать с внешними клавиатурами, однако переключение языка почему-то так толком и не реализовано. Отсутствует и индикация текущей раскладки. Чтобы ликвидировать эти недочеты, из Google Play можно установить стороннюю экранную клавиатуру, которая, помимо прочего, будет обслуживать и взаимодействие системы с физической. Например, Russian Keyboard имеет наглядную индикацию и предлагает традиционные способы переключения языка: Alt + Shift, Alt + Space или Shift + Space.

 

BananaText / Markdown

Ссылка: http://bit.ly/2bf5KRv
Версия: 0.5.1
Цена: бесплатно (есть платная версия)

Итак, запускаем наш любимый Google Play, вбиваем Markdown в строку поиска и «знакомимся» с нашим первым участником — BananaText / Markdown. Знакомимся в кавычках, потому что с первой попытки этот текст почему-то не сохранился (помнишь, я говорил, что буду писать в самом редакторе, — не соврал ;)). Приложение выполнено в псевдо Material стиле — кроме серой кнопки (Floating Action Button), в окне редактора ничего и нет. В смысле — вообще ничего! И это совсем плохо, так как при работе с текстом очень хочется его периодически сохранять (рефлекс, привитый Microsoft Office), а сделать это можно, только завершив правку нажатием той самой кнопки с возвратом на главный экран, что дико раздражает. Приложение не позволяет установить размер шрифта и межстрочное расстояние — о комфорте для глаз можно забыть, а вместо расово верных переносов слова просто разрываются в произвольном (!) месте.


Забегая вперед, замечу, что при тестировании многих приложений наблюдается странная тенденция, при которой сам редактор текста сделан из рук вон плохо, тогда как отформатированный вариант в Markdown смотрится отлично.
Рис. 2. Серая полоса внизу — рекламный баннер
Рис. 2. Серая полоса внизу — рекламный баннер

Есть проблемы и в логике приложения — так, при нажатии кнопки «Назад» в окне настроек (к слову, состоящем ровно из одного сомнительного пункта) приложение завершает свою работу. Непонятно почему, никакой проверки орфографии нет (напомню — она встроена в систему по умолчанию). С облачной синхронизацией дела обстоят не лучше: она имеется только в платной версии и только в режиме чтения, то есть ты можешь открыть файл для редактирования из Dropbox, но вот сохранить его будь любезен в памяти устройства. Отдельно стоит отметить периодические глюки и аварийное завершение работы с потерей текста.

А как обстоят дела с синтаксисом Markdown? Имеется поддержка разнообразных стилей текста и заголовков, вставка списков, ссылок и даже картинок, но последние зачем-то масштабируются по ширине страницы. BananaText — единственный из рассмотренных редакторов, позволяющий вставлять в текст таблицы. Код и выделенные слова обрамляются рамками с фоном, а вот у цитат отсутствует полоска слева. Теперь о грустном: чтобы посмотреть отформатированный текст, необходимо вернуться (!) на главный экран, где присутствует область предпросмотра с неубираемым боковым меню. Да, с таким интерфейсом начинаешь уважать даже vi.

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

P. S. Приложение снова упало, похоронив половину написанного выше.

 

MarkupNotes

Ссылка: http://bit.ly/2brBc3k
Версия: 2.0
Цена: бесплатно

Следующим рассмотрим редактор от немецких разработчиков — MarkupNotes. Приложение абсолютно бесплатно и не содержит рекламных баннеров, что приятно. Интерфейс не локализован, но поддержка русского языка при проверке орфографии присутствует — слова с ошибками подчеркиваются, предлагается замена по словарю. К сожалению, так же как и в предыдущем случае, невозможно задать размер шрифта и межстрочный интервал, более того — в режиме редактирования жестко выбрана цветовая схема с белыми буквами на черном фоне, что, на мой взгляд, должно быть опционально. Все новые файлы программа складывает на карту памяти в отдельную папку (в настройках можно указать свою), создавая при этом общее оглавление. К моему сожалению, кнопка «Сохранить» закрывает редактор и переключает режим на просмотр отформатированного текста (похоже, авторы никогда не работали с большими и сложными в плане графики текстами).

Поддержка Markdown удовлетворительная: учитываются все уровни заголовков, распознается различное начертание текста, есть возможность вставлять цитаты и ссылки, а также нумерованные и ненумерованные списки. Также распознается управляющий символ `, позволяющий выделить нужные слова (термины) в тексте. Огорчает только то, что ни код, ни термины не обрамляются рамками — меняется только шрифт, а у цитат отсутствует серая полоска с левой стороны. Картинки можно вставлять как локальные (с указанием полного пути или без), так и расположенные в интернете.

Рис. 3. Без рамок текст смотрится аляповато
Рис. 3. Без рамок текст смотрится аляповато

Поддержка облачных сервисов отсутствует. Документом можно только поделиться (Share) с помощью установленных на планшете клиентов (Google Диск, Gmail и прочих), но это целиком и полностью заслуга Android, а не разработчиков приложения. Кроме того, если использовать меню Share, то скопирован будет отформатированный HTML-вариант, а не исходный текстовый файл — учти это.

Вердикт: приложение вполне пригодно для написания текстов, особенно на слабых планшетах с ограниченным объемом памяти, так как размер приложения составляет рекордные 180 Кбайт. Работает оно довольно шустро, но, если тебе нужна полноценная облачная синхронизация, стоит поискать альтернативу.

 

Textie Markdown Editor

Ссылка: http://bit.ly/2b1uxeb
Версия: 1.1.2
Цена: бесплатно

Разработка вьетнамских программистов Textie Markdown Editor отличается своеобразным интерфейсом. Когда файл открываешь, на экране отображается уже отформатированный вариант текста, и понять, как же начать с ним работать, решительно невозможно. Оказывается, нужно сделать свайп влево в области текста, чтобы перейти в режим редактирования. По ощущениям, на экране присутствуют старые добрые табы, только без заголовков и какой-либо индикации, — очень странная и неочевидная реализация. С другой стороны, если чуть довести это решение со свайпом до конца — получится самый удобный, на мой взгляд, вариант переключения «редактор — предпросмотр».

Кроме того, на Android 4 в оформлении приложения используются явно ошибочные цвета: диалог выбора файла рисует черные надписи на темно-сером фоне, да и на скриншоте заметно, как не вписываются кнопки в общую цветовую гамму. Портит впечатление и известная «детская болезнь» некоторых разработчиков — поворот экрана, при котором приложение просто-напросто падает (похоронив под своими обломками все сделанные тобой правки текста).

Интерфейс не русифицирован, но проверка орфографии работает. Выбрать размер шрифта исходного текста, так же как и межстрочный интервал, не представляется возможным (уж не заговор ли это?).

О Markdown, собственно, говорить нечего — тест пройден на самом высоком уровне: форматирование полностью соответствует ожиданиям. Единственная придирка — необходимость указывать полный путь до изображения при вставке, то есть, например, /mnt/sdcard/download/sample.jpg.

Рис. 4. Тест пройден
Рис. 4. Тест пройден

В режиме редактирования имеются кнопки для быстрой вставки картинок, цитат, списков и ссылок. Для периодического сохранения изменений авторы предлагают синхронизацию с помощью своего сервиса (хм... начинает просыпаться внутренний параноик) с обязательной регистрацией. Понятно, что в этом случае ожидать работы с другими облачными сервисами не стоит.

Хорошо продумана функция экспорта готового текста: помимо ожидаемого HTML и MD, на выходе можно получить документ в виде изображения формата PNG.

Вердикт: по части Markdown все прекрасно, но хромает юзабилити (чего только стоит банальный поворот экрана). Если приспособиться к интерфейсу — работать можно, хотя чувство, что сейчас приложение аварийно завершится, сильно мешает.

 

Writer Plus

Ссылка: http://bit.ly/1ZFOzvg
Версия: 1.42
Цена: бесплатно

Следующим в очереди за наградой стоит редактор с незатейливым именем Writer Plus. Интерфейс, выполненный в стиле Material Design, полностью локализован, имеется проверка орфографии по правилам русского языка. Размер шрифта при наборе текста установить нельзя, тем не менее он вполне подходит для комфортной работы (используется шрифт с засечками). Кнопка «Сохранить» по-прежнему отсутствует (видимо, это какой-то тренд), и все изменения сохраняются по окончании правки или при использовании клавиатурного сочетания Control + S (уже что-то).

При тестировании обнаружилось некоторое неудобство — отсутствовала опция выбора файла: пришлось вручную копировать тестовый файл непосредственно в папку с программой, после чего он ожидаемо появился в главном меню. Ставим минус за юзабилити. С поддержкой Markdown тоже не все в порядке — поддерживаются только различные уровни заголовков (H1, H2, H3) да стили текста (курсив и/или жирный). Ни картинку, ни цитату, ни код, ни даже ссылку вставить не удалось.

Рис. 5. Рекурсия статьи
Рис. 5. Рекурсия статьи

Облачная синхронизация отсутствует (правда, автор все же предлагает поставить дополнительное приложение для работы с Google Диском). Есть возможность поделиться (Share) готовым текстом, но, как уже отмечалось, это опция мобильной системы, а не конкретного приложения.

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

 

iA Writer

Ссылка: http://bit.ly/2bodAta
Версия: 1.3.9
Цена: бесплатно

Мода добавлять префикс i к названию продукта, видимо, еще долго будет бередить умы разработчиков мобильных приложений и маркетологов. Посмотрим, поможет ли эта буква с точкой немецкому редактору iA Writer.

После первого запуска приложения открывается небольшая справка, в которой авторы благодарят некоего пользователя за перевод интерфейса на русский язык. Лучше бы они этого не делали — локализация просто отвратительная! Мало того что слова при склонении образуют причудливые языковые конструкции — понять отдельные термины невозможно в принципе. Например, «Частное» означает выбор памяти планшета для создания нового файла, вместо традиционного меню «Правка» указано «Изменить», вместо «Опции просмотра» сбивающий с толку «Просмотр» и так далее.

Вообще, навигация построена на череде экранов (на манер горизонтальной карусели): «Настройка -> Выбор файла -> Редактирование -> Предпросмотр -> Экспорт». Решение, прямо скажем, удачное, но вот реализация сильно хромает — кнопка «Назад» часто делает то, чего от нее совсем не ждешь: вместо возврата на предыдущий экран внезапно завершает работу приложения.

Наконец-то можно задать размер шрифта по желанию, а вот проверку орфографии активировать так и не удалось, так же как и найти кнопку быстрого сохранения изменений в тексте — только с переключением на другой экран.

Рис. 6. йА писатель
Рис. 6. йА писатель

С синтаксисом Markdown почти все в порядке — тест успешно пройден. «Почти» относится к цитатам, которые не отделяются от основного текста отступами и серой полосой, а отличаются только размером и начертанием шрифта. При вставке картинок необходимо использовать полные пути. В режиме предпросмотра предлагаются различные шаблоны форматирования текста. Правда, большинство из них игнорирует разметку Markdown, если она относится к словам из русских букв (привет, 2000-е).

Во время набора этого текста слово «ссылки» непостижимым образом превратилось в нечто (!) — можешь полюбоваться на рис. 7. Любая попытка исправить это безобразие ни к чему не приводила — повторное открытие документа лишь множило эти ритуальные кракозябры.

Рис. 7. WTF?
Рис. 7. WTF?

iA Writer — первое приложение в обзоре с полноценной облачной синхронизацией через Google Диск и Dropbox (чтение и запись документов). На этом фоне несколько удивительно устроено взаимодействие с локальными файлами — их нельзя... открыть, можно только создать новый документ (подсунуть файл также не получилось, потому что рабочей папки нет). Единственный выход — запустить редактирование кликом на конкретном файле с помощью стороннего файлового менеджера и выбрать рассматриваемое приложение в качестве редактора.

Вердикт: хорошая поддержка синтаксиса Markdown и облачная синхронизация — несомненные плюсы, кривая локализация и отсутствие проверки орфографии — минусы. Если последние некритичны, пользоваться можно (только не пиши это дьявольское слово «ссылки»!).

 

MarkDrop

Ссылка: http://bit.ly/2bpng5X
Версия: 1.1.1
Цена: бесплатно

По аскетичности редактор MarkDrop даст фору даже такому адепту простоты, как рассмотренный ранее BananaText. Весь интерфейс состоит из двух пунктов меню и кнопки создания нового документа, то есть никакой локализации как бы и не требуется. Отсюда сразу же возникает сложность с открытием тестового файла, так как, собственно, открыть его нечем — диалог выбора файла попросту отсутствует. Как и в случае с iA Writer, загружаем наш файл с помощью стороннего файлового менеджера.

Интерфейс радует наличием сразу двух панелей — исходного редактора и области предпросмотра готового текста. В нижней части расположены кнопки быстрой вставки заголовков, списков, стилей текста и цитат, а вот места для кнопки «Сохранить», как всегда, не нашлось. Проверка орфографии имеется, словарь тоже.

Выбрать место для сохранения нового файла нельзя, рабочей папки как таковой не существует — все файлы программа складывает в свой каталог (Android/data/net.keepzero.markdrop/files/). Никакого экспорта не предусмотрено, дескать, доставай труды своей работы сам, если сможешь. Жирный минус в юзабилити.

Рис. 8. Двухпанельный интерфейс
Рис. 8. Двухпанельный интерфейс

Может быть, поддержка Markdown уверенно перевесит все минусы? Увы, даже здесь есть к чему придраться. Как ты сам видишь на скриншоте, с заголовком, ненумерованным списком и начертанием текста все в порядке, так же как и со ссылкой, а вот все остальное — печаль. Цитата распознается, но так слабо выделяется, что убери > — и разницы не почувствуешь. Та же история и с кодом: обрамляющая рамка отсутствует, и все сливается в единый текст. Отдельные термины тоже не обрамляются, но, по крайней мере, визуально выделяются шрифтом. Изображение вставить мне так и не удалось: то ли приложение не поддерживает такую возможность, то ли картинка не той системы :).

Облачная синхронизация, как ни странно, поддерживается, но только для сторонников Dropbox.

Вердикт: приложение можно было бы порекомендовать к употреблению тем, кто работает с текстами исключительно через Dropbox, но посредственная поддержка синтаксиса Markdown убивает даже и этот кейс использования. Одним словом — следующий!

 

Takedown: A Markdown Editor

Ссылка: http://bit.ly/2bq4dLr
Версия: 1.0.1
Цена: бесплатно

Takedown: A Markdown Editor, пожалуй, самый недружелюбный редактор из всех рассмотренных. Для начала у него, как и у некоторых коллег, нет опции открытия и сохранения файлов. Более того, запустив тестовый образец из внешнего файлового менеджера, получаем... аварийное завершение приложения (та же картина и с любым другим файлом). На этом можно было бы и закончить обзор, однако дадим приложению еще один шанс.

В системе Android есть буфер обмена: скопируем в него тестовый образец и вставим в новый документ — этот вариант сработал, можно оценивать результат.

Поддержка Markdown визуально неплоха, но, к примеру, заставить картинку отображаться так и не удалось (ни смена формата на PNG, ни манипуляции с путем файла не помогли). Все остальные элементы форматируются нормально, и даже у цитат есть полоска слева, а код и термины обрамляются рамкой и фоном.

Рис. 9. Какая откормленная кнопка!
Рис. 9. Какая откормленная кнопка!

Приложение не работает с облачными сервисами, но позволяет передать готовую заметку с помощью меню Share. Рабочей папки нет, все новые документы программа усиленно прячет в своих недрах, создавая на главном экране вереницу Material-карточек. Кстати, чтобы начать работу с сохраненным ранее документом, нужно сделать на соответствующей ему карточке свайп, так как простое нажатие открывает лишь окно предпросмотра (неочевидное решение).

Минималистский интерфейс общается с пользователем только на английском языке, но проверяет орфографию и на русском.

Вердикт: приложение подходит для написания скорее небольших заметок, нежели серьезных текстов.

 

Notal

Ссылка: http://bit.ly/2bf8Gxu
Версия: 1.3.3
Цена: бесплатно

Последний участник нашего марафона — Notal. Приложение не русифицировано, но орфографию проверяет исправно. Размер шрифта можно задать в настройках, однако это касается только режима предпросмотра. В режиме редактирования наконец-то появилась нормальная кнопка «Сохранить», которая выполняет ровно одну функцию — сохраняет изменения и не завершает работу с документом. Межстрочный интервал не отрегулируешь, зато можно выбрать светлую или темную тему оформления.

Опции выбора файла для открытия и сохранения нет, так же как и рабочей папки — все документы сохраняются где-то внутри каталога приложения. Вначале никак не удавалось открыть тестовый файл, так как программа не регистрирует себя в качестве текстового редактора и не маячит в списке при клике на файл. Впрочем, потом все же была найдена соответствующая опция в настройках — непонятно только, почему она выключена по умолчанию.

Поддержка Markdown находится на среднем уровне — отображается все, кроме картинок. Режим предпросмотра активизируется кнопкой на панели действий или же на главном экране приложения. Кстати, в окне предпросмотра имеется какой-то косяк в элементах GUI — две панели с заголовком и две кнопки «Назад» со стрелками (рис. 10).

Рис. 10. Markdown на фоне двух Action Bar
Рис. 10. Markdown на фоне двух Action Bar

Облачные сервисы Notal неинтересны, а вот поделиться (Share) работой оно способно: можно выбрать как исходный текстовый вариант, так и HTML.

Вердикт: кнопка сохранения — единственный плюс приложения, в остальном редактор смотрится блекло — как в удобстве работы, так и в синтаксисе Markdown.

 

Выводы

В нашем сегодняшнем обзоре однозначного победителя нет: у кого-то хорошо реализована поддержка Markdown, но не хватает облачной синхронизации (Textie Markdown Editor, BananaText), у кого-то наоборот (MarkDrop). Юзабилити также находится на самом разном уровне — где-то все очевидно (BananaText), где-то требуется привыкание и практика (Takedown: A Markdown Editor, MarkDrop).

Условными победителями можно считать приложения Textie Markdown Editor и iA Writer, так как они наиболее близко подошли к выполнению поставленной задачи. От себя не могу не отметить редактор Writer Plus — работать с текстом в нем было наиболее комфортно.

А пока очень хочется собрать всех авторов вместе и... нет, не утопить, а объединить их усилия для создания одного, но качественного приложения.

Share в вопросах и ответах

Опция Share (или «Поделиться») присутствует почти в каждом Android-приложении и работает очень просто. Допустим, мы разработчики и хотим внедрить возможность поделиться текстом. Все, что нужно сделать, — отправить системе специальное намерение (Intent), указав в качестве формата данных plain/text. Тогда все приложения, поддерживающие отправку текста, откликнутся, и на их основе будет сформирован список, который увидит пользователь. Например, если в системе установлен Google Диск, текст можно поместить в облако Google, если клиент Dropbox — в его облако, если настроен Gmail — отправить по почте и так далее. Никакого серьезного кода нам самим писать не нужно.

Понятно, что такая передача однонаправленная, и назвать ее синхронизацией можно только с очень большой натяжкой. Именно поэтому в обзоре эти термины разнесены: Share рассматривается как крайний случай, когда синхронизации нет, а текст в облаке получить все-таки хочется.

Рис. 11. А не послать ли нам...
Рис. 11. А не послать ли нам...

2 комментария

  1. Аватар

    Jeffrey Davis

    13.09.2016 в 11:11

    Дорогая редакция ][, вам так нравится этот Markdown, что вы даже для форума хотели что-то сделать на эту тему, но только вместо этого всё сломали.
    А когда же вы форум всё-таки почините уже?

  2. Аватар

    fagci

    29.07.2019 в 00:20

    Epsilon Notes крутой редактор, как веб-разработчику полезен, и умеет всё.
    https://mikhail-yudin.ru/android/epsilon-notes/

Оставить мнение