24 января 2013 г.

Blogger пост из Emacs? Markdown + Googlecl script

Побаловался с googlecl. Умудрился случайно наделать множество постов, состоящих всего лишь из одного слова в своем читальном блоге. Сейчас вроде бы все исправил. Постараюсь подобное предотвращать в будущем. Но главное — проверил, что googlecl работает. Далее хочу обсудить варианты публикации сообщений из Emacs.

Ранее для написания заметок я использовал muse-mode. Каждая muse-заметка экспортировалась в html. А далее я ручками копировал в форму Блоггера нужный контент. Долго я пользовался именно этой схемой. Muse в какой-то момент перестал удовлетворять моим требованиям. Были у него некоторые проблемы со вложенными списками и вставками кода. А всякие списки я ой как люблю. Это наверное последствия долгого использования org-mode. Ну а потом я вообще перестал что-либо публиковать в сети.

Также когда-то я пробовал наладить google интерфейс, который шел в поставке с emacsspeak. Но безуспешно. Интересно в каком состоянии он сейчас? Давно не слышал.

Теперь я собираюсь изобрести новый велосипед. В его основе Markdown и Googlecl. Собственно смысл в том, чтобы написать мини скрипт на bash, который переведет md-файл в html (python-markdown). При этом он должен вырезать избыточные поля. Например, заголовок, который в блоггере в отдельное поле вводится. Далее отправить это добро в googlecl, который успешно опубликует новую заметку с правильным заголовком и тегами в нужном месте. То есть из Emacs надо будет дернуть этот скриптик и собственно все.

Как вариант можно написать полностью тоже самое на elisp, но хочется простой возможности публиковать файлы из консоли. Также я пока не совсем понимаю, как настроить раскраску кода при конвертировании md в html, но думаю с этим больших проблем не должно быть.

Как вам такая схема? Не слишком ли я заворачиваю? Сейчас буду реализовывать это добро.

7 комментариев:

iv_vl комментирует...

Для себя выбрал Jekyll, пишу в Org-Mode, тексты сами, без моего участия, переводится в HTML с помощью расширения org-ruby. Раскраску можно делать или Pygments, или CodeRay.

Bregor комментирует...

Так в той же org-mode раскраска вроде из коробки:

#+BEGIN_SRC ruby
class Foo
def initialize(opts = {})
@opts = opts
end
end
#+END_SRC

Minoru комментирует...

Для конвертирования markdown в html можно использовать pandoc, он умеет раскрашивать код с помощью pygments (правда, делает это через стили, так что придётся к шаблон блога прописать пару дополнительных классов).

Ilya Zonov комментирует...

Несколько комментариев почему не использую org-mode для текстов. Данным отличным расширением для emacs я пользуюсь каждый день, но для меня это прежде всего инструмент для ведения GTD списков. Он более чем справляется с этой задачей. И насколько знаю изначально и был создан только для ведения списков с возможностью экспорта. Сейчас же org похож на здоровый комбайн, который наверное умеет делать почти все. В общем менять свое представление о нем, как об отличном оутлайнере я не хочу. По крайней мере на данный момент.

Markdown же был создан для работы с текстами. С минимальной но достаточной разметкой. На данный момент он популярен. Собственно это и существенная простота меня в нем привлекает.

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

iv_vl комментирует...

Org-mode хорош (1) для удобного ведения заметок; (2) конвертации их в PDF (например, для печати); (3) публикации в вебе в виде HTML. Если цели (1) и (2) не преследуются, то Markdown, возможно, подойдет лучше. Он заточен под разметку текста, в то время как Org-mode - под удобную работу с текстом.

Ilya Zonov комментирует...

iv_vl, спасибо за комментарии. На данный момент пока разделю данные задачи: Gtd TODO списки (org-mode) и тексты для блогов (markdown).

Видимо можно сказать, что org-mode это некая более сложная система, которая включает в себя язык разметки аналогичный markdown. Тот существенный функционал, который несет в себе org-mode, для моих текстов не нужен. Поэтому повторюсь: я выбирая для текстов - Markdown.

Практика покажет насколько это для меня удобно. Если, что-то не сложиться, то обязательно напишу еще пару постов на эту тему, возможно уже в org-mode.

Анонимный комментирует...

я писал о разметке в своём блоге просто и понятно http://plutov.by/post/markdown_php