Наконец-то я использовал менее «изящный» способ решения этой проблемы.На случай, если кто-то еще столкнется с этой проблемой.
Я создал новый метод следующим образом:
def unescape(content)
content.gsub!(/("|'|&|<|>)/) do
case $1
when """
'"'
when "'"
"'"
when "&"
"&"
when "<"
"<"
when ">"
">"
end
end
end
Как правило, этот метод просто делает unescape.
Перед выполнениемCodeRay.scan ($ 2, $ 1) .div (по умолчанию), я использовал метод unescape для удаления $ 2, тогда все идет хорошо.
Если кто-то знает лучший способ, пожалуйста, сообщите мне.