2012-11-26 39 views
2

我最终要做的是实现一些简单的代码高亮器(/语法高亮器),因为在ckEditor中没有可用的东西。出于这个原因,我正在考虑通过以下方式单击所选文本更改来添加新按钮(或修改其中一个现有按钮): 1-获取单色空间字体以保留源代码中的缩进(例如“Courier新“) 2 - 字体颜色更改为蓝色在ckeditor wysiwyg我们如何改变块引用按钮的动作

由于我不知道如何添加新按钮,我正在考虑使用其中一个现有按钮(例如块引用按钮)来执行此项任务。

补充说明: 由我只注意到的方式使CKEDITOR 4是出过:ckeditor 4 其中插件是定制过:ckeditor 4 builder

回答

1

你可以考虑下面的插件我在匆忙从头开始创建(这不是一个完整的解决方案,但它显示了正确的方向):

​​

要运行它,提取Google Prettify库为lib目录prettify插入。然后尝试以下HTML并使用工具栏中的按钮来美化pre

<textarea cols="80" id="editor1" name="editor1" rows="10"> 
<pre>function insertResources(editor) { 
    var outerHead = CKEDITOR.document.getHead(), 
     innerHead = editor.document.getHead(), 
     path = CKEDITOR.plugins.getPath('prettify'); 
</pre> 

<p>Foo:</p> 

<pre>outerHead.append(CKEDITOR.document.createElement('script', { 
     attributes: { 
      type: 'text/javascript', 
      async: 'true', 
      src: path + 'lib/prettify.js' 
     } 
    }));</pre> 

<p>Bar:</p> 

<pre>innerHead.append(CKEDITOR.document.createElement('link', { 
     attributes: { 
      rel: 'stylesheet', 
      href: path + 'lib/prettify.css' 
     } 
    })); 
}</pre> 
</textarea> 
<script> 

    CKEDITOR.replace('editor1', { 
     extraPlugins: 'prettify', 
     toolbar: [ 
      [ 'Source', '-', 'NewPage', 'Preview', '-', 'Templates' ], 
      [ 'Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-', 'Undo', 'Redo' ], 
      [ 'Bold', 'Italic' ], 
      '/', 
      [ 'Prettify'] 
     ] 
    }); 

</script> 
1

所见即所得的编辑器生成的一个HTML标记或编码的HTML回到你的存储格式,让我们说的引号,可能会产生在后面的代码:

<blockquote> … </blockquote> 

(然而,这从一个编辑器到另一个变化)

最简单的方法是找出它在后台生成的标记并将CSS样式应用到其中。

//.CSS 
blockquote{ 
//Styles here… 
} 

希望它有帮助。

-1

我刚刚发现这个超级简单的解决方案:

  1. 在CKEditor的根打开contents.css

  2. 添加以下内容:

    块引用{ 颜色:蓝色; font-family:“Courier New”, Courier, monospace; }

+1

没有帮助!原来它会被渲染成不同的样子! –

1

不知道什么是完整的使用情况,但这里是我的,它结束了一个custom plugin

  1. 我希望能够通过一个对话窗口中插入代码片段到CKEditor的(不知道你为什么喜欢blockquote元素)
  2. 我想有这些代码片段莫名其妙视觉标记CKEditor的,我也没在意具有CKEditor的
  3. 真正的语法高亮最后,保存后的续ent,我想将真正的语法格式应用于插入的元素,而不用花费太多的工作。我用prettify

随意检查插件并修改它以满足您的需求。

+0

我想要一个这样的语法高亮这里:http://www.question2answer.org/qa/?qa=blob&qa_blobid=14850463595885004827,但对于ckEditor –

相关问题