Диагностика ошибок в Maruku
-
10 октября 2008 17:45
-
Комментарии

Ещё об одном интересном моменте работы с Maruku я хочу вам рассказать. Касается он информации об ошибках и их диагностики.
Информация об ошибках в Maruku, на мой скромный взгляд, сделана очень даже неплохо. Если она включена (а она включена по умолчанию), то в консоли вы можете увидеть диагностические сообщения:
___________________________________________________________________________
| Maruku tells you:
+---------------------------------------------------------------------------
| Unclosed span (waiting for ["**"])
| ---------------------------------------------------------------------------
| **aaaEOF
| -----|----------------------------------------------------------------------
| +--- Byte 5
| Shown bytes [0 to 5] of 5:
| >**aaa
|
| At line 2
| text |**aaa|
|
|
| Elements read in span:
|
| Current string:
| "aaa"
+---------------------------------------------------------------------------
!/usr/lib/ruby/gems/1.8/gems/maruku-0.5.9/lib/maruku/errors_management.rb:49:in `maruku_error'
!/usr/lib/ruby/gems/1.8/gems/maruku-0.5.9/lib/maruku/input/parse_span_better.rb:210:in `read_span'
!/usr/lib/ruby/gems/1.8/gems/maruku-0.5.9/lib/maruku/input/parse_span_better.rb:418:in `read_strong'
!/usr/lib/ruby/gems/1.8/gems/maruku-0.5.9/lib/maruku/input/parse_span_better.rb:175:in `read_span'
!/usr/lib/ruby/gems/1.8/gems/maruku-0.5.9/lib/maruku/input/parse_span_better.rb:46:in `parse_span_better'
\___________________________________________________________________________
Как видите я попытался вести слово “aaa” и не закрыл sapn-тег (не поставил в конце символы **)
Если такое поведение вас не устраивает, то вы можете выбрать один из трёх вариантов
| Значение | Описание |
|---|---|
| :ignore | Не выводить диагностические сообщения |
| :warning | Выводить диагностические сообщения (пример я привёл выше) |
| :raise | Генерировать исключение при ошибке |
И передать его в качестве аргумента в конструктор класса Maruku
maruku = Maruku.new(text, :on_error => :raise)
Либо установить его в хеше с настройками по умолчанию
MaRuKu::Globals[:on_error] = :ignore
Довольно удобно на мой взгляд. На этом пока всё.
Тэги: Maruku
Будь всегда в курсе последних новостей блога подписавшись на новости
в формате RSS. Присоединяйся!
в формате RSS. Присоединяйся!
* * *
Добавить новый комментарий
Вы можете использовать следующие BBCode теги в комментариях:
| BBCode тег | Результат |
|---|---|
| [b]Жирный текст[/b] | Жирный текст |
| [i]Курсив[/i] | Курсив |
| [u]Подчёркнутый текст[/u] | Подчёркнутый текст |
| [url]http://example.com[/url] | http://example.com |
| [url=http://example.com]Example[/url] | Example |
|
[code]for message in @messages puts message.name end[/code] |
|
|
[quote] IE6 must die! [/quote] |
IE6 must die! |

