Как применить подсветку синтаксиса к строке ActiveAdmin? - PullRequest
0 голосов
/ 27 марта 2020

Я храню код Ruby в базе данных, поэтому, если администратору необходимо настроить логи кода c, они используют ActiveAdmin для внесения изменений. Мое приложение написано таким образом, чтобы загружать и вызывать этот код из базы данных.

Моя проблема сейчас заключается в том, что текст, отображаемый на странице показа пользовательского интерфейса ActiveAdmin, не очень читаемый код, поскольку он не является моноширинным или синтаксическим. подсвечен. Как я могу применить подсветку синтаксиса к этой конкретной строке?

Вы бы использовали гем Rouge? Если да, можете ли вы обернуть свой код или вам нужно обезьяна-патч ActiveAdmin? Какие еще существуют решения?

ActiveAdmin.register Model do
  show do |model|
    attributes_table do
      row :name
      row :logic # render this logic text as Ruby code
      row :created_at
      row :updated_at
    end
  end
end

enter image description here

1 Ответ

1 голос
/ 28 марта 2020

Вы можете использовать синтаксис Arbe , чтобы обернуть его в тег pre или code:

ActiveAdmin.register Model do
  show do |model|
    attributes_table do
      row :name
      row :logic, do |logic|
        pre( code(model.logic, class: 'lang-ruby') )
      end
      row :created_at
      row :updated_at
    end
  end
end

Вы также можете использовать тег code вместо pre они просто немного отличаются. В любом случае более серьезную настройку следует выполнить с CSS.

Примечание автора оригинала: оберните блок code с pre при использовании выделения . js.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...