ckeditor syntaxhighlighter代码高亮插件配置分享

下面是详细的“ckeditor syntaxhighlighter代码高亮插件配置分享”的攻略:

1. 安装 SyntaxHighlighter 插件

首先,我们需要在我们的网站上安装 SyntaxHighlighter 插件。我们可以从其官方网站(http://alexgorbatchev.com),或者从 Github 上(https://github.com/syntaxhighlighter),下载最新版本的插件。

将文件解压后,将 SyntaxHighlighter 文件夹复制到我们网站的 plugins/ 目录下。

2. 引入插件文件

接着,我们需要在网站的 head 标签内引入 SyntaxHighlighter 插件文件。可以使用以下 CDN:

<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.3.1/styles/default.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.3.1/highlight.min.js"></script>

或者使用我们网站上的本地文件:

<link rel="stylesheet" type="text/css" href="/plugins/SyntaxHighlighter/styles/shCore.css">
<link rel="stylesheet" type="text/css" href="/plugins/SyntaxHighlighter/styles/shThemeDefault.css">
<script src="/plugins/SyntaxHighlighter/scripts/shCore.js"></script>
<script src="/plugins/SyntaxHighlighter/scripts/shBrushCpp.js"></script>
<script src="/plugins/SyntaxHighlighter/scripts/shBrushJava.js"></script>
<script src="/plugins/SyntaxHighlighter/scripts/shBrushPython.js"></script>

其中 shBrushCpp.jsshBrushJava.jsshBrushPython.js 是各种编程语言的高亮主题,可以根据自己需要调整。

3. 配置 CKEditor

接着,我们需要使用 CKEditor 的 config.js 文件来引入 SyntaxHighlighter 插件,并对其进行配置。

config.js 文件中添加以下内容:

CKEDITOR.editorConfig = function( config ) {
    // 将 SyntaxHighlighter 插件添加到 CKEditor 中
    config.extraPlugins = 'syntaxhighlighter';
    // 配置 SyntaxHighlighter 插件的选项
    config.syntaxhighlighter =
    {
      'code-class':'hljs',
      'toolbar':'true',
      'brushes': 'cpp;java;python'
    };
    // 其他的 CKEditor 配置选项
    config.toolbar = 'Full';
    config.height = 200;
    config.width = '100%';
};

其中 code-class 指定了用于高亮代码的 CSS 类名,默认为 brushtoolbar 指定了是否启用 CKEditor 的工具条;brushes 指定了支持的编程语言。

4. 在 CKEditor 中使用 SyntaxHighlighter

最后,在我们的 CKEditor 编辑器中,我们可以使用 <pre><code> 标签来包含我们的代码。并添加一个“Brush”类来指定语言。

下面是一个 C++ 代码示例:

<pre class="brush: cpp">
#include <iostream>

int main()
{
    std::cout << "Hello, world!" << std::endl;
    return 0;
}
</pre>

这个示例将会在页面中展示已经高亮的 C++ 代码。

另外,我们还可以使用 CKEditor 提供的 SyntaxHighlight 按钮来快速生成代码高亮的 <pre><code> 标签。

示例代码如下:

<p>
  Please check out the following code:<br>
  <textarea id="code" rows="10" cols="80">
    #include <iostream>

    int main()
    {
        std::cout << "Hello, world!" << std::endl;
        return 0;
    }
  </textarea>
</p>

<script>
    CKEDITOR.replace( 'code', {
      extraPlugins: 'syntaxhighlighter',
      height: 200,
      syntaxHighlighter_autoLoadSyntax: false, // Disable automatic language detection
      syntaxHighlighter_selectionWidget: true, // Enable widget that allow to change language
      syntaxhighlighter:
      {
        'code-class':'hljs',
        'toolbar':'true',
        'brushes': 'cpp;java;python'
      }
    });
</script>

以上就是完整的“ckeditor syntaxhighlighter代码高亮插件配置分享”的攻略,希望对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:ckeditor syntaxhighlighter代码高亮插件配置分享 - Python技术站

(0)
上一篇 2023年6月6日
下一篇 2023年6月6日

相关文章

  • C#使用SqlServer作为日志数据库的设计与实现

    C#使用SqlServer作为日志数据库的设计与实现,可以采用以下步骤: 1. 创建数据库表格 首先在SqlServer中创建一个数据库,并在其中创建一个用于存储日志的表格。例如: create table LogInfo( ID int identity(1,1) primary key, LogContent nvarchar(4000) not nul…

    C# 2023年5月15日
    00
  • 电脑通过IIS访问svc出错无法提供网页怎么解决?

    当电脑通过IIS访问svc时,如果出现无法提供网页的错误,可能是由于多种原因引起的。本文将提供详细的解决方案,包括检查IIS配置、检查服务配置、检查网络连接等。同时,本文还提供两个示例,演示如何解决电脑通过IIS访问svc出错无法提供网页的问题。 检查IIS配置 首先,需要检查IIS配置是否正确。可以按照以下步骤进行检查: 打开IIS管理器,检查应用程序池是…

    C# 2023年5月15日
    00
  • 详解c# Emit技术

    当我们需要在C#中动态生成IL代码时,C# Emit技术就变得非常有用了。本文将详细介绍C# Emit技术,并提供两个示例来帮助您更好地理解它。 C# Emit技术 C# Emit技术是.NET框架提供的一项功能强大的动态代码生成技术。通过它,我们可以使用C#代码动态地生成并编译IL代码,实现很多与程序运行时生成代码有关的场景。 C# Emit技术一般用于以…

    C# 2023年5月15日
    00
  • ADO.NET 读取EXCEL的实现代码((c#))

    下面是关于“ADO.NET 读取EXCEL的实现代码((c#))”的完整攻略。 ADO.NET读取EXCEL实现代码 1. 添加ExcelDataReader和ExcelDataReader.DataSet依赖 在c#项目中使用ExcelDataReader和ExcelDataReader.DataSet两个依赖来解析EXCEL文件,需要通过NuGet Pa…

    C# 2023年5月31日
    00
  • C# Path.GetTempFileName()方法: 获取一个唯一的临时文件名

    Path.GetTempFileName()方法作用及使用方法 C#的Path.GetTempFileName()方法可以返回一个唯一的临时文件名,并创建该文件。此临时文件的路径和文件名是在指定目录(如:%temp%)中由系统自动生成的,以确保每次调用时都必须生成唯一的文件名。 使用方法 Path.GetTempFileName()方法的使用非常简单,只需直…

    C# 2023年4月19日
    00
  • C#字符串String及字符Char的相关方法

    下面就是关于 C# 字符串 String 及字符 Char 相关方法的详细攻略。 字符串 String 字符串简介 C# 中的字符串是一组字符的集合,用双引号引起来的字符序列,在 C# 中被认为是值类型。字符串可以包含任何字符,包括特殊字符、数字和字母。 C# 字符串是不可改变的,也就是说,一旦创建了一个字符串对象,就不可以改变它。 字符串的方法 C# 的 …

    C# 2023年5月15日
    00
  • C#加密算法汇总(推荐)

    C#加密算法汇总(推荐) 简介 本文主要介绍C#语言中常用的加密算法。涉及到的加密算法包括对称加密算法和非对称加密算法。对称加密算法包括DES、AES、RC4等,其中DES和AES已经成为最经典的对称加密算法,RC4算法常被用于数据流加密。非对称加密算法包括RSA和DSA等,其中RSA算法用于数字签名,DSA算法用于数字证书。 DES加密算法 DES加密算法…

    C# 2023年6月6日
    00
  • C#资源释放方法实例分析

    C#资源释放方法实例分析 在使用C#编写程序时,资源释放问题是一个非常重要的问题。如果不恰当地处理资源释放,可能会导致内存泄漏等问题,影响程序性能和稳定性。本文将详细介绍C#中的资源释放方法,以及如何在代码中进行实际应用。 1. 资源释放的方法 C#中的资源释放主要分为两种方式:手动释放和自动释放。 1.1 手动释放 手动释放是指程序员在编写代码时,手动调用…

    C# 2023年5月15日
    00
合作推广
合作推广
分享本页
返回顶部