如何使用 CKEDITOR 4 配置进行转义?

How can   be escaped as   using CKEDITOR 4 config?

我已经设置了 ckeditor 4,在 config.js 中为 entity 处理

设置了以下覆盖
config.entities_greek = false;
config.entities_latin = false;
config.entities_additional = '#39,#160';    

config.entities_additional 的默认值为 '#39'

当我使用上述配置时,输出编码中断 - 我在输出中得到几个 &undefined; 实体。

这是ckeditor的缺陷吗?似乎有一个解决方法:

config.entities_processNumerical = 'force'; 

但这会产生将所有非 ascii 字符编码为数字实体的不良影响。

我知道您希望通过 config.js 来完成此操作,但如果您还没有找到解决方案,可以这样做(假设一个名为 editor1 的 CKEDITOR 实例):

CKEDITOR.instances.editor1.on('instanceReady', function(evt) {              
    evt.editor.dataProcessor.htmlFilter.addRules({
        text: function(value) {
            return value.replace(/ /g, ' ');
        }
    });
});

您还需要配置中的实体插件:

config.extraPlugins = 'entities';