下载鸥 > 网站下载 > 开发教程 > 帝国CMS

ckeditor高亮插件codesnippet怎样配置默认语言为php/html?

271 2021-03-08 10:53:05

收藏
ckeditor是帝国cms的默认编辑器,可安装高亮插件codesnippet。其效果比较美观大方。在前面的文章中,我们介绍了帝国cms7.5后台编辑器插入代码显示高亮与行号插件codesnippet,本文不再赘述。而是谈怎样将codesnippet默认语言设置为php/html?
ckeditor高亮插件codesnippet怎样配置默认语言为php/html?
codesnippet是没有设置默认语言的,官方文档并不友好,鸥哥在配置时就很吐血,各位看官可以体验一下。
// Create a new plugin which registers a custom code highlighter
// based on customEngine in order to replace the one that comes
// with the Code Snippet plugin.
CKEDITOR.plugins.add( 'myCustomHighlighter', {
    afterInit: function( editor ) {
        // Create a new instance of the highlighter.
        var myHighlighter = new CKEDITOR.plugins.codesnippet.highlighter( {
            init: function( ready ) {
                // Asynchronous code to load resources and libraries for customEngine.
                customEngine.loadResources( function() {
                    // Let the editor know that everything is ready.
                    ready();
                } );
            },
            highlighter: function( code, language, callback ) {
                // Let the customEngine highlight the code.
                customEngine.highlight( code, language, function() {
                    callback( highlightedCode );
                } );
            }
        } );

        // Check how it performs.
        myHighlighter.highlight( 'foo()', 'javascript', function( highlightedCode ) {
            console.log( highlightedCode ); // -> <span class="pretty">foo()</span>
        } );

        // From now on, myHighlighter will be used as a Code Snippet
        // highlighter, overwriting the default engine.
        editor.plugins.codesnippet.setHighlighter( myHighlighter );
    }
} );

文档其实很详细,甚至每一句都有注释,每一句的功能都写得清清楚楚,一看就很专业。

只是,看完之后还是懵啊,写的再多,没写清楚哪里改,最简单的,给个demo,分分钟改完就可以了吧。

没有。

测试了一晚上,这也不对那也不对。

请允许我发牢骚,因为如果你有这个需求,这是我一晚上排查测试了几十个文件、看了几十页文档,最后,活生生测试出来的,免费送给你了。

官方文档很详细,但啥用没有。也许是鸥哥没找对方法?

效果最终还是实现了,ckeditor高亮插件codesnippet配置默认语言为php/html也没有问题,但修改路径比较一言难尽。

本以为是

/e/admin/ecmseditor/infoeditor/plugins/codesnippet/plugin.js
官方文档也一直引导改这个 ↑。

结果人家在
/e/admin/ecmseditor/infoeditor/plugins/codesnippet/dialogs/codesnippet.js

在45行(默认文档45行),下方代码第六行,加入default:'html',就实现默认了。
{
id: 'lang',
type: 'select',
label: lang.language,
items: langSelectItems,
default:'html',
setup: function( widget ) {
	if ( widget.ready && widget.data.lang )
	this.setValue( widget.data.lang );

	// The only way to have an empty select value in Firefox is
	// to set a negative selectedIndex.
	if ( CKEDITOR.env.gecko && ( !widget.data.lang || !widget.ready ) )
	this.getInputElement().$.selectedIndex = -1;
},
	commit: function( widget ) {
		widget.setData( 'lang', this.getValue() );
	}
},
dialog目录?是框架都这样玩吗?还是国外都这样玩?

这,是鸥哥不够专业吗?

本文地址:https://xzo.com.cn/develop/empire/678.html

有帮助,很赞!

信息来源:下载鸥
导出教程 下载word版教程
发表评论 共有条评论
关于帝国CMS


帝国cms是一款功能极为强大的cms程序,性能强悍、安全性高,可轻松支持10万数据,高级开发人员可制作出能容纳千万数据量的网站,是国内最出色的开源cms程序之一,推荐企业用户使用

当前最新版本为7.5,8.0版本即将上线,新版本的核心优化点在于多终端的适配。

推荐帝国CMS开发教程
帝国CMS创建新栏目乱码怎么办?
帝国CMS创建新栏目乱码怎么办?

经常会有用户朋友反馈说新建的栏目页面怎么不对,或者说新建栏目怎么乱码了?总...

15 669
帝国CMS点击指定图片放大功能怎么做(jQuery)
帝国CMS点击指定图片放大功能怎么做(jQuery)

对于存在大图的站点而言,不能将图片放大无疑是一种功能上的缺陷。那么,帝国CM...

8 1270
帝国cms安装报错fatal error:require():Failed opening required ../class/EmpireCMS_version.php(include_path=.
帝国cms安装报错fatal error:require():Failed opening required ../class/EmpireCMS_version.php(include_path=.

帝国CMS安装报错 fatal error:require():Failed opening required ../clas...

1 572
帝国cms删除文章时不删除该文章所属的附件
帝国cms删除文章时不删除该文章所属的附件

帝国cms删除文章时往往非常彻底,不仅删除了数据库里的文章信息、生成的页面,...

0 366
Wordpress转为帝国cms将会出现的问题
Wordpress转为帝国cms将会出现的问题

帝国cms和Wordpress是完全不同的程序,其设计理念有着天壤之别。转换肯定会存...

3 589
帝国cms灵动标签日期用英文显示的方法
帝国cms灵动标签日期用英文显示的方法

我们知道,帝国cms的日期可以根据需要调用问多种格式,如x年x月x日、年-月-日、...

0 269
帝国cms彩色tag标签样式分享
帝国cms彩色tag标签样式分享

帝国cms标签列表如果做死板的展示可能不大好看,如果能增加一些色彩,无疑会让...

0 344
帝国cms判断图片是否带域名,无域名则补全域名
帝国cms判断图片是否带域名,无域名则补全域名

那么,我们要怎样在图片路径不完善的时候正常在手机端显示图片呢?...

0 341
随机帝国CMS开发教程
帝国cms结合项提示您来自的链接不存在是什么原因?
帝国cms结合项提示您来自的链接不存在是什么原因?

帝国cms结合项是做筛选功能的利器,但很多人在开发时会收到报错,提示您来自的...

1 240
360提示帝国cms存在跨站脚本攻击漏洞是什么原因?
360提示帝国cms存在跨站脚本攻击漏洞是什么原因?

绑定了360网站监测系统的二开网站有可能会遇到如下的漏洞提示:存在高危的跨...

1 316
帝国CMS实际发布时间、最后修改时间有何区别如何调用?
帝国CMS实际发布时间、最后修改时间有何区别如何调用?

如果你研究过帝国cms的数据表,会发现帝国cms存在3个时间,分别是truetime、las...

1 288
帝国cms怎样自动将标题设置为图片alt、title属性?
帝国cms怎样自动将标题设置为图片alt、title属性?

帝国cms添加图片的alt、title属性并不方便,总是要点来点去。尤其是当我们发...

0 463
帝国cms怎样去除列表页显示此栏目暂无任何新增信息
帝国cms怎样去除列表页显示此栏目暂无任何新增信息

帝国cms列表页没有信息的时候默认会显示“此栏目暂无任何新增信息”,看着十...

1 324
帝国cms编辑器怎样将codesnippet语言里的html、php提前?
帝国cms编辑器怎样将codesnippet语言里的html、php提前?

在前面的文章中,我们介绍了codesnippet,让我们的网站展示代码可以更加优雅。...

3 339
帝国cms调用全站最新评论并显示评论人相关信息
帝国cms调用全站最新评论并显示评论人相关信息

帝国cms灵动标签非常强大,我们无需修改任何源码,就可以实现调用全站最新评论,...

3 357
帝国cms留言板提示gb is close怎么办?
帝国cms留言板提示gb is close怎么办?

帝国cms有些功能如留言板默认是关闭的,此时进入留言页面,左上角就会提示gb is...

1 237
客服QQ:341553759
点击咨询 常见问题 >
官方交流群:90432500
点击加入