国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開發(fā) > 綜合 > 正文

CKEditor 4.4.1 添加代碼高亮顯示插件功能教程【使用官方推薦Code Snippet插件】

2024-07-21 02:54:17
字體:
供稿:網(wǎng)友

本文實(shí)例講述了CKEditor 4.4.1 添加代碼高亮顯示插件功能。分享給大家供大家參考,具體如下:

隨著CKEditor4.4.1的發(fā)布,以前一直困擾的代碼高亮問題終于完美的得到解決,在CKEditor4.4中官方發(fā)布了Code Snippet這個(gè)代碼片段的插件,終于可以完美的內(nèi)嵌使用代碼高亮了,以前都是使用網(wǎng)友自己開發(fā)的代碼高亮插件。下面就來介紹如何使用Code Snippet這個(gè)代碼高亮插件。本文還介紹了CKEditor中如何安裝Code Snippet插件。

新版本附加信息

  1. CKEditor 4.4的更新詳情:http://ckeditor.com/whatsnew
  2. CKEditor 官方對(duì)代碼高亮插件Code Snippet的文檔:https://docs.ckeditor.com/#!/guide/dev_codesnippet
  3. Code Snippet的下載地址:http://ckeditor.com/addon/codesnippet

Code Snippet簡(jiǎn)介

Code Snippet是CKEditor4.4.1的新插件,主要提供添加代碼片段高亮顯示的功能。另外注意一點(diǎn)的是,Code Snippet只是作為CKEditor的插件,真正實(shí)現(xiàn)代碼高亮的是highlight.js這個(gè)代碼高亮JS庫(kù)。

Code Snippet只是將highlight.js作為默認(rèn)的高亮庫(kù),由于highlight.js已經(jīng)集成在Code Snippet中,所以我們?cè)谑褂肅KEditor時(shí)候是不需要另外再引用highlight.js這個(gè)庫(kù)。(點(diǎn)擊這里查看highlight.js的官方網(wǎng)站)。

以前的CKEditor版本由于沒有比較好的代碼高亮插件,都是自己自定義插件,當(dāng)時(shí)用的是SyntaxHighlighter這個(gè)代碼高亮庫(kù)。大家也可網(wǎng)上搜下SyntaxHighlighter的資料

如何安裝Code Snippet?添加代碼片段高亮插件的具體步驟

添加Code Snippet的方法很簡(jiǎn)單,不過由于版本兼容問題,目前官網(wǎng)上這個(gè)插件對(duì)4.4兼容最好,其他兼容則未進(jìn)行測(cè)試,所以使用這個(gè)插件最好是將CKEditor升級(jí)到4.4.1。

如果已經(jīng)熟悉CKEditor的插件機(jī)制,那么我們只要到官網(wǎng)上將Code Snippet下載下來(下載地址見文章頂部),將里面的整個(gè)文件夾解壓到ckeditor文件夾下的plugins文件夾內(nèi)。

CKEditor,代碼高亮,插件

然后設(shè)置下ckeditor的config.js配置文件,將插件添加進(jìn)去即可,代碼如下(這里只設(shè)置了一個(gè)插件屬性,其他屬性可根據(jù)需要設(shè)置):

CKEDITOR.editorConfig = function (config) {  //添加插件,多個(gè)插件用逗號(hào)隔開  config.extraPlugins = 'codesnippet';  //使用zenburn的代碼高亮風(fēng)格樣式 PS:zenburn效果就是黑色背景  //如果不設(shè)置著默認(rèn)風(fēng)格為default  config.codeSnippet_theme = 'zenburn';}

也可以在編輯器初始化的使用下面代碼添加高亮插件:

CKEDITOR.replace('文本框ID',{extraPlugins: 'codesnippet',codeSnippet_theme: 'zenburn'});

這里有一點(diǎn)需要注意,如果按照上面添加插件的步驟而出現(xiàn)下面這兩個(gè)錯(cuò)誤:

  1. CKEDITOR.resourceManager.load] Resource name "widget" was not found at"http://localhost:16577/Scripts/ckeditor/plugins/widget/plugin.js?t=
  2. [CKEDITOR.resourceManager.load] Resource name "lineutils" was not found at "http://localhost:16577/Scripts/ckeditor/plug

這是因?yàn)橄螺d的CKEditor缺少widget和lineutils插件,到官網(wǎng)將這兩個(gè)插件下載下來,只要將這兩個(gè)插件解壓到ckeditor文件夾下的plugins文件夾內(nèi)就可以了。一般是先出現(xiàn)第一個(gè)widget插件無法找到的錯(cuò)誤,添加了widget插件后才會(huì)出現(xiàn)第二個(gè)找不到lineutils插件的錯(cuò)誤,可見Code Snippet需要依靠這兩個(gè)插件。這兩個(gè)插件的下載地址如下:

  1. http://ckeditor.com/addon/widget
  2. http://ckeditor.com/addon/lineutils

還有最簡(jiǎn)單的方式,首先打開Code Snippet下載地址,將插件添加到自定義CKEditor編輯器

CKEditor,代碼高亮,插件

然后進(jìn)入自定義CKEditor編輯器頁(yè)面,這里可以看到已經(jīng)將代碼高亮插件集成到CKEditor里面了,最后點(diǎn)擊下載就可以了,當(dāng)然這里有很多自定義UI和插件,可以選擇自己需要的插件和喜歡的編輯器界面。

CKEditor,代碼高亮,插件

這樣就完美的添加上了代碼片段高亮插件了。

如何讓代碼片段在普通頁(yè)面上顯示高亮?

我們會(huì)發(fā)現(xiàn),雖然在編輯器中添加的代碼片段有高亮效果,但是將編輯器里的代碼片段放到頁(yè)面中卻沒有高亮的效果。這是因?yàn)榫庉嬈鞯牟寮呀?jīng)默認(rèn)集成了highlight.js這個(gè)代碼高亮庫(kù),所以我們要在頁(yè)面上顯示高亮就得重新引用和添加highlight.js庫(kù)。

我們先看下編輯器中的高亮代碼:

<pre><code class="language-html"><!DOCTYPE html><html lang="en" xmlns="http://www.w3.org/1999/xhtml"><head>  <meta charset="utf-8" />  <title>測(cè)試頁(yè)面</title></head><body><div>代碼片段高亮效果</div></body></html></code></pre>

可以看到 高亮的效果主要是根據(jù)<pre>標(biāo)簽和 <code class="language-html">這兩個(gè)標(biāo)簽來顯示的,其中l(wèi)anguage-html表示的顯示高亮語(yǔ)言為HTML。highlight.js就是根據(jù)這兩個(gè)標(biāo)簽來顯示高亮效果。

我們首先要將highlight.js下載下來(下載地址,可以選擇要高亮的編程語(yǔ)言種類),然后在需要代碼高亮的頁(yè)面添加下面的代碼:

<!--開頭這里的樣式為默認(rèn)的風(fēng)格,可以根據(jù)自己的喜好更換風(fēng)格--><!--我的高亮效果是zenburn--><link rel="stylesheet" href="styles/default.css" rel="external nofollow" ><script src="highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script>

要注意更改css樣式和JS的引用地址,地址以自己網(wǎng)站中highlight.js的存放地址為準(zhǔn)。另外高亮庫(kù)默認(rèn)使用的是default.css的高亮風(fēng)格,這里是highlightjs的各種代碼高亮風(fēng)格的顯示效果,大家可以到上面測(cè)試選擇自己喜歡的高亮風(fēng)格:http://highlightjs.org/static/test.html。highlightjs的具體使用方法可以看官網(wǎng)的文檔:http://highlightjs.org/usage/。

到這里就可以完整的將代碼片段進(jìn)行高亮顯示了。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到編輯器頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 卓资县| 延津县| 蒲江县| 顺平县| 连州市| 成武县| 嘉义县| 江永县| 同心县| 泊头市| 阳高县| 三原县| 合水县| 江油市| 察隅县| 利川市| 龙江县| 从江县| 灵武市| 紫金县| 肥乡县| 泰安市| 平安县| 沈阳市| 镇巴县| 丰顺县| 瑞金市| 宜宾县| 乡城县| 宝兴县| 梧州市| 英超| 武威市| 红河县| 上林县| 宁安市| 商都县| 尖扎县| 壤塘县| 宁明县| 阜阳市|