Содержание статьи
Язык разметки Markdown сейчас весьма популярен: существуют десятки веб-сервисов, позволяющих легко разбавлять строго текстовые мысли картинками, таблицами, списками и прочими аксессуарами, и примерно столько же редакторов для настольных операционных систем — Windows, Mac OS, Linux/UNIX. За примерами использования Markdown можно вообще никуда не ходить — все без исключения статьи для «Хакера» авторы пишут именно в этой разметке. Сегодня мы выясним, как обстоят дела на этом фронте у повелителей зеленых роботов со сладкими именами.
Говорит и показывает Wiki
Markdown — облегченный язык разметки, созданный с целью написания максимально читабельного и удобного для правки текста, но пригодного для преобразования в языки для продвинутых публикаций (HTML, Rich Text и другие). Первоначально создан в 2004 году Джоном Грубером и Аароном Шварцем. Многие идеи языка были позаимствованы из существующих соглашений по разметке текста в электронных письмах.
Синтаксис языка построен на использовании специальных символов, благодаря которым введенный текст автоматически преобразуется в дальнейшем в заголовок, цитату, нумерованный или произвольный список, ссылку, картинку и прочее.
Например:
# Заголовок первого уровня (H1)
## Заголовок второго уровня (H2)
*данный текст будет набран курсивом*
**полужирное начертание**
На рис. 1 приведен пример исходного текста (слева) и после обработки синтаксиса Markdown (справа). Это так называемый базовый синтаксис, которым и будем тестировать наших участников.
В идеале хотелось бы, чтобы текст в мобильной версии выглядел примерно так же.
Подготовка эксперимента
В качестве помощника возьмем 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 смотрится отлично.
Есть проблемы и в логике приложения — так, при нажатии кнопки «Назад» в окне настроек (к слову, состоящем ровно из одного сомнительного пункта) приложение завершает свою работу. Непонятно почему, никакой проверки орфографии нет (напомню — она встроена в систему по умолчанию). С облачной синхронизацией дела обстоят не лучше: она имеется только в платной версии и только в режиме чтения, то есть ты можешь открыть файл для редактирования из Dropbox, но вот сохранить его будь любезен в памяти устройства. Отдельно стоит отметить периодические глюки и аварийное завершение работы с потерей текста.
А как обстоят дела с синтаксисом Markdown? Имеется поддержка разнообразных стилей текста и заголовков, вставка списков, ссылок и даже картинок, но последние зачем-то масштабируются по ширине страницы. BananaText — единственный из рассмотренных редакторов, позволяющий вставлять в текст таблицы. Код и выделенные слова обрамляются рамками с фоном, а вот у цитат отсутствует полоска слева. Теперь о грустном: чтобы посмотреть отформатированный текст, необходимо вернуться (!) на главный экран, где присутствует область предпросмотра с неубираемым боковым меню. Да, с таким интерфейсом начинаешь уважать даже vi.
Вердикт: приложение французских разработчиков выполнено крайне небрежно, из-за чего юзабилити находится явно ниже ватерлинии, а значит, плывем дальше.
P. S. Приложение снова упало, похоронив половину написанного выше.
MarkupNotes
Ссылка: http://bit.ly/2brBc3k
Версия: 2.0
Цена: бесплатно
Следующим рассмотрим редактор от немецких разработчиков — MarkupNotes. Приложение абсолютно бесплатно и не содержит рекламных баннеров, что приятно. Интерфейс не локализован, но поддержка русского языка при проверке орфографии присутствует — слова с ошибками подчеркиваются, предлагается замена по словарю. К сожалению, так же как и в предыдущем случае, невозможно задать размер шрифта и межстрочный интервал, более того — в режиме редактирования жестко выбрана цветовая схема с белыми буквами на черном фоне, что, на мой взгляд, должно быть опционально. Все новые файлы программа складывает на карту памяти в отдельную папку (в настройках можно указать свою), создавая при этом общее оглавление. К моему сожалению, кнопка «Сохранить» закрывает редактор и переключает режим на просмотр отформатированного текста (похоже, авторы никогда не работали с большими и сложными в плане графики текстами).
Поддержка Markdown удовлетворительная: учитываются все уровни заголовков, распознается различное начертание текста, есть возможность вставлять цитаты и ссылки, а также нумерованные и ненумерованные списки. Также распознается управляющий символ `, позволяющий выделить нужные слова (термины) в тексте. Огорчает только то, что ни код, ни термины не обрамляются рамками — меняется только шрифт, а у цитат отсутствует серая полоска с левой стороны. Картинки можно вставлять как локальные (с указанием полного пути или без), так и расположенные в интернете.
Поддержка облачных сервисов отсутствует. Документом можно только поделиться (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
.
В режиме редактирования имеются кнопки для быстрой вставки картинок, цитат, списков и ссылок. Для периодического сохранения изменений авторы предлагают синхронизацию с помощью своего сервиса (хм... начинает просыпаться внутренний параноик) с обязательной регистрацией. Понятно, что в этом случае ожидать работы с другими облачными сервисами не стоит.
Хорошо продумана функция экспорта готового текста: помимо ожидаемого HTML и MD, на выходе можно получить документ в виде изображения формата PNG.
Вердикт: по части Markdown все прекрасно, но хромает юзабилити (чего только стоит банальный поворот экрана). Если приспособиться к интерфейсу — работать можно, хотя чувство, что сейчас приложение аварийно завершится, сильно мешает.
Writer Plus
Ссылка: http://bit.ly/1ZFOzvg
Версия: 1.42
Цена: бесплатно
Следующим в очереди за наградой стоит редактор с незатейливым именем Writer Plus. Интерфейс, выполненный в стиле Material Design, полностью локализован, имеется проверка орфографии по правилам русского языка. Размер шрифта при наборе текста установить нельзя, тем не менее он вполне подходит для комфортной работы (используется шрифт с засечками). Кнопка «Сохранить» по-прежнему отсутствует (видимо, это какой-то тренд), и все изменения сохраняются по окончании правки или при использовании клавиатурного сочетания Control + S
(уже что-то).
При тестировании обнаружилось некоторое неудобство — отсутствовала опция выбора файла: пришлось вручную копировать тестовый файл непосредственно в папку с программой, после чего он ожидаемо появился в главном меню. Ставим минус за юзабилити. С поддержкой Markdown тоже не все в порядке — поддерживаются только различные уровни заголовков (H1, H2, H3) да стили текста (курсив и/или жирный). Ни картинку, ни цитату, ни код, ни даже ссылку вставить не удалось.
Облачная синхронизация отсутствует (правда, автор все же предлагает поставить дополнительное приложение для работы с Google Диском). Есть возможность поделиться (Share) готовым текстом, но, как уже отмечалось, это опция мобильной системы, а не конкретного приложения.
Вердикт: приложение представляет собой неплохой текстовый редактор (не в последнюю очередь из-за удачно подобранного шрифта), но наш тест, к сожалению, провалило.
iA Writer
Ссылка: http://bit.ly/2bodAta
Версия: 1.3.9
Цена: бесплатно
Мода добавлять префикс i к названию продукта, видимо, еще долго будет бередить умы разработчиков мобильных приложений и маркетологов. Посмотрим, поможет ли эта буква с точкой немецкому редактору iA Writer.
После первого запуска приложения открывается небольшая справка, в которой авторы благодарят некоего пользователя за перевод интерфейса на русский язык. Лучше бы они этого не делали — локализация просто отвратительная! Мало того что слова при склонении образуют причудливые языковые конструкции — понять отдельные термины невозможно в принципе. Например, «Частное» означает выбор памяти планшета для создания нового файла, вместо традиционного меню «Правка» указано «Изменить», вместо «Опции просмотра» сбивающий с толку «Просмотр» и так далее.
Вообще, навигация построена на череде экранов (на манер горизонтальной карусели): «Настройка -> Выбор файла -> Редактирование -> Предпросмотр -> Экспорт». Решение, прямо скажем, удачное, но вот реализация сильно хромает — кнопка «Назад» часто делает то, чего от нее совсем не ждешь: вместо возврата на предыдущий экран внезапно завершает работу приложения.
Наконец-то можно задать размер шрифта по желанию, а вот проверку орфографии активировать так и не удалось, так же как и найти кнопку быстрого сохранения изменений в тексте — только с переключением на другой экран.
С синтаксисом Markdown почти все в порядке — тест успешно пройден. «Почти» относится к цитатам, которые не отделяются от основного текста отступами и серой полосой, а отличаются только размером и начертанием шрифта. При вставке картинок необходимо использовать полные пути. В режиме предпросмотра предлагаются различные шаблоны форматирования текста. Правда, большинство из них игнорирует разметку Markdown, если она относится к словам из русских букв (привет, 2000-е).
Во время набора этого текста слово «ссылки» непостижимым образом превратилось в нечто (!) — можешь полюбоваться на рис. 7. Любая попытка исправить это безобразие ни к чему не приводила — повторное открытие документа лишь множило эти ритуальные кракозябры.
iA Writer — первое приложение в обзоре с полноценной облачной синхронизацией через Google Диск и Dropbox (чтение и запись документов). На этом фоне несколько удивительно устроено взаимодействие с локальными файлами — их нельзя... открыть, можно только создать новый документ (подсунуть файл также не получилось, потому что рабочей папки нет). Единственный выход — запустить редактирование кликом на конкретном файле с помощью стороннего файлового менеджера и выбрать рассматриваемое приложение в качестве редактора.
Вердикт: хорошая поддержка синтаксиса Markdown и облачная синхронизация — несомненные плюсы, кривая локализация и отсутствие проверки орфографии — минусы. Если последние некритичны, пользоваться можно (только не пиши это дьявольское слово «ссылки»!).
MarkDrop
Ссылка: http://bit.ly/2bpng5X
Версия: 1.1.1
Цена: бесплатно
По аскетичности редактор MarkDrop даст фору даже такому адепту простоты, как рассмотренный ранее BananaText. Весь интерфейс состоит из двух пунктов меню и кнопки создания нового документа, то есть никакой локализации как бы и не требуется. Отсюда сразу же возникает сложность с открытием тестового файла, так как, собственно, открыть его нечем — диалог выбора файла попросту отсутствует. Как и в случае с iA Writer, загружаем наш файл с помощью стороннего файлового менеджера.
Интерфейс радует наличием сразу двух панелей — исходного редактора и области предпросмотра готового текста. В нижней части расположены кнопки быстрой вставки заголовков, списков, стилей текста и цитат, а вот места для кнопки «Сохранить», как всегда, не нашлось. Проверка орфографии имеется, словарь тоже.
Выбрать место для сохранения нового файла нельзя, рабочей папки как таковой не существует — все файлы программа складывает в свой каталог (Android/data/net.keepzero.markdrop/files/
). Никакого экспорта не предусмотрено, дескать, доставай труды своей работы сам, если сможешь. Жирный минус в юзабилити.
Может быть, поддержка Markdown уверенно перевесит все минусы? Увы, даже здесь есть к чему придраться. Как ты сам видишь на скриншоте, с заголовком, ненумерованным списком и начертанием текста все в порядке, так же как и со ссылкой, а вот все остальное — печаль. Цитата распознается, но так слабо выделяется, что убери > — и разницы не почувствуешь. Та же история и с кодом: обрамляющая рамка отсутствует, и все сливается в единый текст. Отдельные термины тоже не обрамляются, но, по крайней мере, визуально выделяются шрифтом. Изображение вставить мне так и не удалось: то ли приложение не поддерживает такую возможность, то ли картинка не той системы :).
Облачная синхронизация, как ни странно, поддерживается, но только для сторонников Dropbox.
Вердикт: приложение можно было бы порекомендовать к употреблению тем, кто работает с текстами исключительно через Dropbox, но посредственная поддержка синтаксиса Markdown убивает даже и этот кейс использования. Одним словом — следующий!
Takedown: A Markdown Editor
Ссылка: http://bit.ly/2bq4dLr
Версия: 1.0.1
Цена: бесплатно
Takedown: A Markdown Editor, пожалуй, самый недружелюбный редактор из всех рассмотренных. Для начала у него, как и у некоторых коллег, нет опции открытия и сохранения файлов. Более того, запустив тестовый образец из внешнего файлового менеджера, получаем... аварийное завершение приложения (та же картина и с любым другим файлом). На этом можно было бы и закончить обзор, однако дадим приложению еще один шанс.
В системе Android есть буфер обмена: скопируем в него тестовый образец и вставим в новый документ — этот вариант сработал, можно оценивать результат.
Поддержка Markdown визуально неплоха, но, к примеру, заставить картинку отображаться так и не удалось (ни смена формата на PNG, ни манипуляции с путем файла не помогли). Все остальные элементы форматируются нормально, и даже у цитат есть полоска слева, а код и термины обрамляются рамкой и фоном.
Приложение не работает с облачными сервисами, но позволяет передать готовую заметку с помощью меню Share. Рабочей папки нет, все новые документы программа усиленно прячет в своих недрах, создавая на главном экране вереницу Material-карточек. Кстати, чтобы начать работу с сохраненным ранее документом, нужно сделать на соответствующей ему карточке свайп, так как простое нажатие открывает лишь окно предпросмотра (неочевидное решение).
Минималистский интерфейс общается с пользователем только на английском языке, но проверяет орфографию и на русском.
Вердикт: приложение подходит для написания скорее небольших заметок, нежели серьезных текстов.
Notal
Ссылка: http://bit.ly/2bf8Gxu
Версия: 1.3.3
Цена: бесплатно
Последний участник нашего марафона — Notal. Приложение не русифицировано, но орфографию проверяет исправно. Размер шрифта можно задать в настройках, однако это касается только режима предпросмотра. В режиме редактирования наконец-то появилась нормальная кнопка «Сохранить», которая выполняет ровно одну функцию — сохраняет изменения и не завершает работу с документом. Межстрочный интервал не отрегулируешь, зато можно выбрать светлую или темную тему оформления.
Опции выбора файла для открытия и сохранения нет, так же как и рабочей папки — все документы сохраняются где-то внутри каталога приложения. Вначале никак не удавалось открыть тестовый файл, так как программа не регистрирует себя в качестве текстового редактора и не маячит в списке при клике на файл. Впрочем, потом все же была найдена соответствующая опция в настройках — непонятно только, почему она выключена по умолчанию.
Поддержка Markdown находится на среднем уровне — отображается все, кроме картинок. Режим предпросмотра активизируется кнопкой на панели действий или же на главном экране приложения. Кстати, в окне предпросмотра имеется какой-то косяк в элементах GUI — две панели с заголовком и две кнопки «Назад» со стрелками (рис. 10).
Облачные сервисы 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 рассматривается как крайний случай, когда синхронизации нет, а текст в облаке получить все-таки хочется.