Как я уже писал, что из-за неудобства онлайнового редактора Blogspot'а я перешел на использование Wiki на Google Code для написания и хранения постов. То есть я пишу пост, используя язык разметки Wiki, отлаживанию разметку, заливаю картинки и т.д., а затем просто конвертирую wiki-файл с помощью скрипта на php
в html. Фишка тут в том, что скрипт должен учитывать некоторые "особенности" Blogspot'а необходимость убирать разделители строки после блочных тэгов типа blockquote
, pre
, списков и т.д., чтобы не появлялись ненужные отступы. В результате выходной html становится практически нечитаемым.
Удобство же wiki-разметки в том, что исходник поста выглядит красиво и пригоден для последующего редактирования.
Но в таком подходе цикл работы над постом несколько длинноват: редактор, push через Mercurial на Google Code, просмотр как выглядит на Wiki, затем прогон через скрипт, и если все хорошо, то "cut-paste" в онлайн-редактор Blogspot и финальный отсмотр там. А если обнаруживаются шероховатости, что цикл повторяется сначала. И еще меня раздражал сам скрипт корявый и непонятный.
Хотелось чего-нибудь легкого и более менее WYSIWYG.
Порыскав в сети на наткнулся на wiki2html. И это оказалось то, что нужно. Я немного подкорячил это под свой формат wiki-разметки и, в итоге получилось это: онлайновый редактор с препросмотром для подготовки постов в Blogspot.
Теперь цикл такой: набиваешь пост в этом редакторе, а он автоматически отображает preview по мере набора вместе с html
ем. Затем cut-paste html
-я в Blogspot, и с большой вероятностью форматирование должно выглядеть как задумано.
Ни разу не претендую на возможные странности моего диалекта Wiki. Желающие могут изменить под себя, ибо форматировщик крайне простой.
Редактор состоит из одного файла wiki2html.html. Его можно просто сохранить локально и поиграться.
Под занавес привожу поддерживаемые команды wiki-разметки (таблиц пока нет).
Ссылки и картинки
[http://example.com/test]
ссылка: http://example.com/test
[http://example.com/test ссылка с текстом]
ссылка с текстом
[http://github.com http://github.com/images/icons/public.png]
картинка со ссылкой
[http://github.com/images/icons/public.png]
картинка
[http://github.com/images/icons/public.png картинка по ссылке]
картинка по ссылке
Текст
'''bold'''
bold
''italic''
italic
@@[http://google.com]@@
экранирование любой wiki-разметки
моно`ширин`ный текст
моноширин
ный текст
Заголовки
= Заголовок1 =
== Заголовок2 ==
=== Заголовок3 ===
==== Заголовок4 ====
===== Заголовок5 =====
Цитирование
Цитата начинается с двух пробелов.
Разделитель
---
Ненумерованный список
Код:
* это
** ненумерованный
* список
Как выглядит:
- это
- ненумерованный
- список
Нумерованный список
Код:
# это
## нумерованный
# список
Как выглядит:
- это
- нумерованный
- список
Исходники
Код:
{{{
#include <io.h>
int main() {
int a = 1;
return a;
}
}}}
Как выглядит:
#include <io.h>
int main() {
int a = 1;
return a;
}
Видео
[http://www.youtube.com/watch?v=FrufJFBSoQY]
Собственно, этот пост я подготовил по описанной технологии. Можно посмотреть как его исходник выглядит в wiki-формате.
Посты по теме: