10 октября 2012 г.

Markdown и markup

Статья про Markdown в журнале "Хакер" за сентябрь 2012
Внезапно у меня на работе случился праздник - День насильственного отказа от Интернета. Не скажу что имеются люди, которых бы такой "праздник" порадовал, кроме того передо мной маячила прекрасная перспектива остаться вообще без свободного доступа к сети (вот здесь "свободный" я подразумеваю "бесплатный"), поэтому я вернулся к очень традиционному способу получению информации - чтению журналов. Электронных журналов, конечно же, зачем портить бумагу ради информации которая устареет через несколько месяцев? Читая не самый свежий и не самый лучший в мире, но вероятно все еще популярный журнал компьютерной тематики, я натолкнулся на статью про язык разметки текстов Markdown (забавная игра слов: markup language - язык разметки). Статья на Wikipedia не такая веселая как статья в журнале, поэтому неплохо что об этом языке появилась статья именно в "хакерском" журнале.

Научиться синтаксису можно за 5 минут
Смысл концепции Markdown можно понять просто взглянув на вышеприведенную схему. Грубо говоря: пишем текст - получаем красивый HTML без особых усилий (запомнить использование служебных символов не трудно).
Выглядит все это прекрасно, лаконично и логично, но я не разделяю восторгов по поводу этой концепции. Постараюсь объяснить почему лично мне Markdown пока не нужен. Я сталкиваюсь с написанием текстов в основном при написании постов в блог и при работе с социальными сетями (в основном Twitter). И если в 140 символах трудно оценить всю прелесть Markdown (зато для Tumblr он подходит замечательно), то для полноценного блоггинга он представляет собой прекрасный инструмент. К сожалению, это не совсем так. Я использую платформу Blogspot и она уже имеет встроенный редактор WYSIWIG-редактор, причем это не самый плохой редактор.

Использование онлайн-редактора текстов имеет массу преимуществ:
  • введенный текст сохраняется в облачном хранилище. Я могу работать над текстом за ноутбуком, прервать работу и открыть пост для редактирования за другим компьютером. Мне не нужно хранить тексты на своем компьютере и заморачиваться с их переносом и сохранением. Здесь есть и главный минус - у пользователя может не оказаться доступа к Интернету. Имеются онлайн-редакторы с поддержкой Markdown и сохранением в "облаке".
  • WYSIWIG означает что я сразу вижу текст в том виде, в каком его увидит пользователь. Лично для меня удобство редактирования не так важно (я могу редактировать и HTML), но все таки большинство пользователей предпочитает именно WYSIWIG-редакторы. Здесь есть минус технологии - для полноценной работы такого редактора желательно иметь полноценный браузер с поддержкой всех стандартов и новых технологий, Markdown же предлагает пользователю писать "голый" текст и затем каким-либо образом преобразовывать его в HTML с помощью скрипта. Писать текст на Markdown можно в любом самом примитивном редакторе, в том числе на мобильных платформах (на смартфонах и планшетах).
  • У меня периодически возникает необходимость в загрузке картинок, а для этого используется онлайновое хранилище изображений Picasa. Работа с ней в редакторе Blogger реализована очень просто. При использовании Markdown придется озаботиться загрузкой картинок для блога заранее - теряется удобство и мобильность работы.
  • При работе с Markdown написать текст недостаточно. Затем его надо "перегнать" в HTML с помощью скрипта или целой программы (такие программы и скрипты есть под самые разные платформы). Но при написании поста в Blogger используется масса другой информации: теги, расписание, изменение ссылки, описание для поисковых систем и другие функции, которые предоставляет блоггинг-платформа.
  • Обычно я не использую сложное форматирование с несколькими подзаголовками. Текст с несколькими абзацами, простой список, выделение жирным или курсивом и несколько картинок - вот и весь пост в блог. Возможно именно мне Markdown подходит отлично, но зачем мне "лишняя сущность", если имеющиеся инструменты выполняют свои задачи на отлично? Задумаю писать мемуары без картинок, вот тогда и выберу этот простой язык разметки.
Теоретические markdown можно подружить с кем угодно, даже с Blogger, написав специальный скрипт, который будет считывать мета-информацию из файла и с помощью API Blogger, или к примеру через e-mail, посылать текст поста в блог. Но к чему такие сложности, если можно просто зайти в Blogger и написать свой пост, выкладывая одновременно иллюстрации, вставляя видео и при необходимости используя  HTML-редактор? Хотя как задачка для практикующего программиста неплоха. Можно попробовать написать плагин для великолепного редактора Sublime Text 2 (там используется не менее замечательный язык программирования Python).

Только не подумайте что Markdown по большому счету бесполезен - вовсе нет! Это прекрасная вещь, которая с успехом может использоваться на форумах. Лично меня тошнит от встроенных неповоротливых редакторов с массой ненужных функцией (кроме того часть этих функций еще и не работают в определенных браузерах). Markdown это настоящее спасение для пользователей смартфонов и планшетов, которым по понятным причинам не подойдут эти самые редакторы. Не секрет что написание текстов на мобильных устройствах это мучение и даже такая тривиальная задача как выделение слова может стать весьма трудной задачей. Кроме того есть определенный круг "писателей" которые практикуют Zen writing (редакторы, которые направлены только на написание текста, с абсолютным минимумом функций, не отвлекающим пользователя от главное задачи - собственно написания текста) - вот они точно в восторге от Markdown!

1 комментарий :

  1. кому интересно,читайте мой блог о программировании,будет познавательно: http://plutov.by/post/markdown_php

    ОтветитьУдалить