ckeditor是在杜塞大佬的博客中接触到的,当时主要的技术栈还是Python,而这玩意儿适配也不错,就沿用了,但是随着技术栈逐渐转向Go,不支持Go代码的高亮也就一直很麻烦,如下图所示:
一顿百度谷歌似乎也没有实际的解决方案,于是去服务器上把ckeditor对应的静态文件下载到本地看看情况,找到\ckeditor\ckeditor\plugins\prism\plugin.js,打开文件后其实发现对go实际上是有适配的
但是百度谷歌目前能搜索到的代码编辑相关的文章几乎都不是语言类型选择级别的,几乎都与下面图片中codesnippet配置类似,很明显,我更希望它出现在代码类型选择下拉框中。
再度搜索无果,想起来ckeditor支持查看当前编辑内容的源代码并进行修改,如果真的实际支持Go,那么将源码中对应其他语言的标签修改为“go”是否就可以了?
其实一开始觉得没有看源代码的需求,所以对应按钮是不显示的,先加上
刷新页面就可以正常显示
看下点击后源码什么样子
那么其实就很清晰了,修改class为language-go就行了。看下修改前后对比
// 修改前 language-python
package main
import "fmt"
func main() {
fmt.Println("Go is a great programming language!")
}
// 修改后 language-go
package main
import "fmt"
func main() {
fmt.Println("Go is a great programming language!")
}
明显细节更多了,由于是上班写的,就不到更细致的源码了,后续尝试将Go作为选项加入代码下拉框中去。