fix #405
This commit is contained in:
@@ -14,7 +14,6 @@ class DText
|
|||||||
str.gsub!(/&/, "&")
|
str.gsub!(/&/, "&")
|
||||||
str.gsub!(/</, "<")
|
str.gsub!(/</, "<")
|
||||||
str.gsub!(/>/, ">")
|
str.gsub!(/>/, ">")
|
||||||
str.gsub!(/(?<!\[)\[spoilers?\](.+?)(?:\[\/?spoilers?\]|$)/m, '<span class="spoiler">\1</span>')
|
|
||||||
str.gsub!(/\n/m, "<br>")
|
str.gsub!(/\n/m, "<br>")
|
||||||
str.gsub!(/\[b\](.+?)\[\/b\]/i, '<strong>\1</strong>')
|
str.gsub!(/\[b\](.+?)\[\/b\]/i, '<strong>\1</strong>')
|
||||||
str.gsub!(/\[i\](.+?)\[\/i\]/i, '<em>\1</em>')
|
str.gsub!(/\[i\](.+?)\[\/i\]/i, '<em>\1</em>')
|
||||||
@@ -122,6 +121,8 @@ class DText
|
|||||||
unless options[:inline]
|
unless options[:inline]
|
||||||
str.gsub!(/\s*\[quote\]\s*/m, "\n\n[quote]\n\n")
|
str.gsub!(/\s*\[quote\]\s*/m, "\n\n[quote]\n\n")
|
||||||
str.gsub!(/\s*\[\/quote\]\s*/m, "\n\n[/quote]\n\n")
|
str.gsub!(/\s*\[\/quote\]\s*/m, "\n\n[/quote]\n\n")
|
||||||
|
str.gsub!(/\s*\[spoilers?\](?!\])\s*/m, "\n\n[spoiler]\n\n")
|
||||||
|
str.gsub!(/\s*\[\/spoilers?\]\s*/m, "\n\n[/spoiler]\n\n")
|
||||||
end
|
end
|
||||||
|
|
||||||
str.gsub!(/(?:\r?\n){3,}/, "\n\n")
|
str.gsub!(/(?:\r?\n){3,}/, "\n\n")
|
||||||
@@ -162,6 +163,16 @@ class DText
|
|||||||
""
|
""
|
||||||
end
|
end
|
||||||
|
|
||||||
|
when /\[spoilers?\](?!\])/
|
||||||
|
stack << "div"
|
||||||
|
'<div class="spoiler">'
|
||||||
|
|
||||||
|
when /\[\/spoilers?\]/
|
||||||
|
if stack.last == "div"
|
||||||
|
stack.pop
|
||||||
|
'</div>'
|
||||||
|
end
|
||||||
|
|
||||||
else
|
else
|
||||||
'<p>' + parse_inline(block) + "</p>"
|
'<p>' + parse_inline(block) + "</p>"
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user