Объяснение технологий

Легкие языки разметки: именно поэтому вы должны использовать AsciiDoc вместо обычной уценки

Легкие языки разметки: именно поэтому вы должны использовать AsciiDoc вместо обычной уценки

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

Разблокируйте БЕСПЛАТНЫЙ Чит-лист Markdown прямо сейчас!

Это подпишет вас на нашу рассылку

Введите адрес электронной почты

Но Markdown не единственная игра в городе. Существует ряд других так называемых облегченных языков разметки, похожих на Markdown, но с различными наборами функций. Одним из них является Asciidoc . Если вам нравится Markdown, но вы ищете немного больше под капотом, стоит подумать. Вот несколько причин, почему.

Что такое «язык разметки»?

Язык разметки — это набор кодов, который при применении к обычному тексту позволяет добавить одно или несколько из следующих свойств (среди прочих):

  • Определите текст
  • Структурировать текст
  • Опишите макет текста
  • Украсить текст

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

<body> <h1>Introducing HTML</h1> <p>Here is a paragraph in HTML... we know it's a <strong>paragraph</strong> because the surrounding \<p\> tags define it as one.</p> </body> 

Здесь тег <p> указывает, что весь последующий текст, вплоть до закрывающего тега </ p>, является абзацем. В этом смысле он определяет текст как абзац.

Но обратите внимание также на теги <body> … они часто служат для определения макета веб-страницы, например, сколько полей находится на боковой стороне экрана.

А теги <strong> будут украшать слово «абзац» жирным шрифтом, а теги <h1> могут как размечать заголовок (отделять его от окружающего текста), так и определять шрифт большего размера.

Проблема с некоторыми языками разметки (среди них HTML) заключается в том, что ввод этих тегов вручную является очень утомительным делом. И с другими языками, такими как XML , теги и их атрибуты составляют большую часть общего содержимого, чем сам текст! Взгляните на следующий фрагмент DocBook , диалект XML, используемый для создания многих технических публикаций:

теги документооборота Asciidoc

Весь текст фиолетового цвета представляет собой теги, которые вам нужно будет ввести самостоятельно. Первый абзац начинается только в самом низу этой картинки. И если это не будет сделано правильно в соответствии со стандартом DocBook, вы не сможете преобразовать его в красивый PDF-документ, который обычно является конечной целью.

Введите облегченный язык разметки

Если вы хотите воспользоваться преимуществами языков разметки, например, путем публикации HTML-страницы в Интернете или преобразования файла DocBook в PDF, чтобы его можно было распечатать, вам нужно было сделать одну из двух вещей. С одной стороны, вы можете потратить время, изучая эти языки изнутри и снаружи, записывая их вручную, а затем трижды проверяя свою работу. Или вы могли бы инвестировать деньги в инструмент, который управляет сложностью их для вас.

К счастью, некоторые предприимчивые разработчики придумали третий вариант. Они создали новые языки разметки, которые содержали многие (в некоторых случаях большинство или все) функции более тяжелых аналогов, но значительно упростили синтаксис. Эти «легкие» языки включают в себя знакомую Markdown а также Asciidoc, формат Egc в режиме Org и синтаксис Mediawiki.

Легкие языки разметки имеют простой синтаксис

Одним из отличительных признаков этих языков является то, что их «теги» (такие как они) должны быть интуитивно понятными. Давайте посмотрим на предыдущий фрагмент, на этот раз написанный на Asciidoc:

 Introducing Asciidoc -------------------- Where are the *paragraph* tags? We dont need them... Asciidoc is smart enough to realize this is a paragraph! 

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

Каждый имеет один или несколько соответствующих процессоров

У «тяжеловесных» языков разметки обычно есть специальное приложение для их интерпретации. В Интернете ваш браузер и, возможно, веб-сервер превратят код в яркие веб-страницы. Для документов в формате XML это может быть что-то вроде Microsoft Word, который читает и записывает в формате DOCX. (это еще один диалект XML). Таким образом, вам никогда не придется напрямую взаимодействовать с источником этих документов, только симпатичные фасады, которые показывают ваши приложения.

Между тем, документы, написанные на легких языках, читаются человеком в исходной форме (другой арендатор), но только истинные ботаники могут считать их красивыми. Чтобы получить хороший результат, вам нужно использовать процессор . Это приложения, которые будут последовательно проходить через вашу разметку и преобразовывать ее во что-то другое, что выглядит хорошо. Те же самые проекты, которые разрабатывают сам язык, как правило, создают утилиту для его использования. Проект Markdown предлагает Perl-скрипт с тем же именем, а сопутствующая программа Asciidoc написана на Python. Кроме того, другие утилиты преобразования будут включать поддержку некоторых из этих языков. Одним из таких примеров является превосходный Pandoc , который будет использовать Markdown, а также облегченные пометки, реструктурированный текст, Mediawiki и Org-Mode и преобразовывать их в PDF, DOCX, ODT и другие.

Asciidoc уценка Пандок форматы

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

Сравнение уценки и Asciidoc

Формат Asciidoc был создан, чтобы упростить DocBook, один из наиболее распространенных форматов при написании длинных (особенно технических) текстов. Одним из требований к славе является то, что это перевод один на один, то есть для каждого элемента в DocBook есть соответствующее представление в Asciidoc. Ниже мы рассмотрим некоторые плюсы и минусы Asciidoc по сравнению с Markdown.

Asciidoc покрывает надмножество письменных элементов

Целью Markdown с самого начала было создание простого формата для веб-писателей. Таким образом, элементы записи, которые он поддерживает (по крайней мере, оригинальная реализация, см. Ниже), направлены на автоматизацию более трудоемких аспектов написания HTML (списки, например, для которых требуются теги <ol> или <ul> в дополнение к < теги li> для каждого элемента).

сложные форматы уценки asciidoc

Asciidoc также содержит их, но также предлагает более продвинутые элементы DocBook, такие как предупреждения (например, блоки выноски «Примечание:» или «Информация:») и сложные макеты таблиц. Это не значит, что вы должны использовать их все время, но они будут там и доступны, если они вам когда-нибудь понадобятся.

Asciidoc — это единый формат

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

В результате ваш документ может потребовать элементы, которые не все покрыты одним ароматом. Напротив, Asciidoc не страдает от той же фрагментации, что и Markdown в настоящее время.

Asciidoc нацелен на разнообразие издательских стилей

Markdown отлично подходит для быстрого получения сообщения из блога из вашей головы и на страницу. Но из коробки он не создан для структурирования более длительных работ, как книга. Asciidoc предназначен для этого, и одним из примеров являются его функции «включения». Эти операторы позволяют вам включать все содержимое одного файла в другой:

 include::somefile.adoc 

Это мало чем отличается от того, как основные документы работают в текстовых редакторах. Это позволяет, например, составить каждую главу как отдельный файл, а затем «включить» их все в один файл, представляющий книгу. Когда вы обрабатываете этот «книжный файл», результат будет таким, как если бы все главы были записаны непосредственно в этот документ.

Markdown достаточно для большинства пользователей

Уценка охватывает все основы для большей части пользователей. Для тех, кто просто ищет блог или печатает некоторые заметки в текстовом формате, Markdown поддерживает все элементы, которые им понадобятся. Перекрестные ссылки мало что значат для пользователя, который просто хочет создать простую заметку или веб-страницу. Вы могли бы даже использовать Markdown для более длительных работ с простыми макетами, такими как роман « , и объедините их самостоятельно в конце.

Уценка лучше поддерживается

Поскольку Markdown отвечает потребностям более широкого сегмента пользователей, в конечном итоге его лучше поддерживают с точки зрения следующего:

  • Редакторы WYSIWYG (как определено теми, которые по крайней мере предоставляют предварительный просмотр в реальном времени) с большей вероятностью поддерживают Markdown.
  • Онлайн-сервисы, такие как вышеупомянутый Github, с большей вероятностью принимают Markdown напрямую или с помощью дополнений.
  • Хотя такие системы публикации, как генераторы статических сайтов чаще Поддерживать Asciidoc с плагинами, то, что они поддерживают Markdown из коробки, это почти само собой разумеющееся.

Готовы ли вы попробовать Asciidoc?

Хотя Markdown является чем-то де-факто выбором среди облегченных языков разметки, Asciidoc содержит все те же элементы, а затем и некоторые. Дополнительные сведения об Asciidoc требуют некоторого времени для изучения, поскольку они могут лучше подготовить вас к более крупным и сложным письменным проектам.

Что вы думаете? Довольны ли вы простотой Markdown? Или создаете свой собственный рабочий процесс многоканальной публикации с заманчивым Asciidoc? Возможно, вы ненавидите простой текст, и это Слово для вас полностью? Дайте нам знать в комментариях ниже!

Похожие посты
Объяснение технологий

Как работает жесткий диск? [Технология объяснила]

Объяснение технологий

Что такое программное обеспечение с открытым исходным кодом? [MakeUseOf Объясняет]

Объяснение технологий

Разрешения графического дисплея - что означают цифры? [MakeUseOf Объясняет]

Объяснение технологий

Как переформатировать внешний жесткий диск, не теряя на нем все