Сохраните пробелы с помощью Rails, Datamapper и Coderay (О, да и Haml тоже)

Я пытаюсь показать выделенный синтаксис кода C в приложении ruby. Coderay выглядел как решение де-факто, так как я не делаю ничего особенного со стилем.

Следующий код дает мне выделенный код в div, но без начальных пробелов. (Пробелы присутствуют в БД при просмотре с помощью Sequel Pro)

Код сохраняется в обычном текстовом столбце:

class Project
  include DataMapper::Resource

  property :id,     Serial
  property :name,   String,   :required => true
  property code,    Text
end

И представление отображается в хамле через:

~ CodeRay.scan(@project.code, :c).div(:css => :class).html_safe

РЕДАКТИРОВАТЬ

Смотрите решение ниже, это было из-за сброса шаблона HTML5 CSS

1 ответ

Решение

Я путц, весь пример кода правильный, это был шаблон html5 css, удаляющий пробелы. В частности:

pre {  padding: 15px;  white-space: pre;  white-space: pre-wrap;  white-space: pre-line;  word-wrap: break-word; }

отбрасывание пробела: предварительная линия; исправляет это

Другие вопросы по тегам