我只是想知道我是否能够用bolt在博客/条目帖子中做代码片段?
我目前正在使用Google Code Prettify来做我的代码片段,但通常Bolt不会让我保存或发布和进入,因为我认为bolt阻止用户在博客帖子中发布某些代码。例如,在发布一些PHP代码片段时,当我将"substr“函数放在Bolt中时,将不会让我保存该条目。
很多其他的代码,我可以把它放进去,但它不让我张贴的某些东西。
有什么办法可以解决这个问题吗?
提前感谢!
附注:使用GitHub‘Gist的方法很好,但我不想使用这种方法。
发布于 2014-09-05 00:29:03
Bolt允许您在contenttypes.yml配置文件中将字段定义为Markdown。
在Markdown字段中,您可以在两组三重反引号内输入代码,如下所示:
```phpsubstr('abcdef',1,3);
或者将其封装在pre标记中:
<pre class="brush: php">
substr('abcdef', 1, 3);
</pre>发布于 2014-09-26 05:40:02
我重用了Bolt中已经存在的CodeMirror javascript库。
在我自己的_footer.twig中,我添加了以下几行:
<link rel="stylesheet" href="{{ paths.app }}view/lib/ckeditor/plugins/codemirror/css/codemirror.min.css">
<script src="{{ paths.app }}view/lib/ckeditor/plugins/codemirror/js/codemirror.min.js"></script>接下来,我在javascripts/app.js中添加了:
$( function() {
$("textarea.code").each( function( i,el ) {
CodeMirror.fromTextArea(el, {
lineNumbers : true
});
});
});现在,当我创建包含一段代码的内容时,我将视图更改为代码,并将代码放在标签之间:
<textarea class="code"">
10 Print "Hello"
20 goto 10
</textarea> 您可以从codeMirror站点添加语法突出显示的js文件,并将这些文件添加到包含的脚本链接中。
总而言之,这给了我语法高亮的代码片段,而不需要提前打印出来。我对文本区构造感到遗憾,但我可以用一个将块转换为文本区块的jQuery部件来替换它。为了方便起见,我让代码是可编辑的,但是CodeMirror的可配置性很强,你可以停止这样做。
注:我刚刚开始使用Bolt,所以可能有更好的方法来解决这个问题。也许我应该创建一个Bolt扩展来做到这一点。
https://stackoverflow.com/questions/25656144
复制相似问题