有什么可以在 Rails 中设计具有语法突出显示和内联图像附件的博客文章的宝石吗?

问题描述 投票:0回答:4

我正在尝试用 Ruby on Rails 制作个人博客。我想设计带有语法突出显示的个人post以及内联多个图像附件。我尝试过使用回形针使用

ckeditor
gem,但语法突出显示不适用于 redcarpetpygments.rb

我正在寻找类似于this的博客文章。请帮忙!!

ruby-on-rails syntax-highlighting blogs
4个回答
3
投票

我喜欢使用 prismjs 进行语法高亮 -> http://prismjs.com

当我学习 Rails 引擎并将 prismjs 用于多个 Rails 应用程序时,为了方便起见,我将 prismjs 打包到 rubygem 中(突出显示)。

要在rails中设置prismjs,请将

gem 'highlighting'
添加到您的gemfile中。

接下来,在 application.js 中添加

//= require prism
//= require prism-[language]
,如下所示:

//= require turbolink
//= require prism 
//= require prism-[language]

将 [语言] 替换为语言名称。例如:

prism-ruby
prism-coffeescript

在 application.css 中,添加

*= require prism-[theme]
或使用默认
*= require prism

*= require prism 

还有各种其他主题可供选择。例如

*= require prism-tomorrow
*= require prism-twilight

要在您的视图中使用它们,请执行以下操作:

<pre>
<code class="language-ruby">
   <!-- type any ruby code you like --> 
</code>
</pre>

2
投票

Obtvse,一个受 Svbtle 启发的开源博客引擎,几乎完全可以满足您的需求。

它使用 Coderay 进行语法高亮,这是一个纯 ruby 库,不依赖于 javascript,并使用 Markdown(通过 Kramdown)来编辑帖子,而不是像 CKEDITOR 这样的所见即所得解决方案,恕我直言,这是一个更明智的选择 -特别是对于技术倾向的人。

基于后端的语法突出显示与 RSS 阅读器配合得很好,而不是基于 JavaScript 的解决方案。

您可以使用该应用程序并根据您的要求进行自定义,或者查看实现并使用它来构建您自己的解决方案。

或者,如果您特别倾向于使用 CKEditor,您可能想看看 这个插件,它将 CKEditor 与 CodeMirror 集成在一起,这是在 javascript 中进行代码编辑和突出显示的最流行的解决方案之一。要显示代码片段,您还可以在只读模式下使用 CodeMirror,如本手册中所述。这将确保您在编辑以及帖子视图页面中获得完全相同的语法突出显示。


0
投票

语法高亮通常通过 javascript 完成,例如通过 highlight.js

对于程序员的个人博客,还有更专业的解决方案,例如

jekyll
(为 github 页面提供支持)


-1
投票

真的,你的博客好多了,所以感谢分享更多有关宝石首饰的信息 继续分享 访问此处:Goodstone 珠宝

© www.soinside.com 2019 - 2024. All rights reserved.