naX*_*aXa 9 html wysiwyg freemarker tinymce
我使用TinyMCE 4作为HTML页面的WYSIWYG编辑器.但是当我在TinyMCE中使用FreeMarker标签惯用语时<#if condition>,<#else>当我从"代码视图"(简单的textarea)转到"设计视图"(WYSIWYG)时,它们会被破坏.
例如,如果我在一个简单的textarea中编写HTML(代码视图)
<#if x == 1>
x is 1
<#else>
x is not 1
</#if>
Run Code Online (Sandbox Code Playgroud)
然后切换到编辑器并返回到代码视图,它变为:
<#if x == 1>
x is 1
<#else/>
x is not 1
</#if>
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,FreeMarker标签在切换时会被转义.
Q1:有没有办法配置TinyMCE来处理这些标签,这样当我在编辑器和代码视图之间来回切换时,标记保持一致?
Q2:或者(以不同的方式说同样的事情)TinyMCE是否支持FreeMarker?
到目前为止我尝试了什么?
[#tag]...[/#tag]被TinyMCE视为纯文本.我试图在配置中禁用HTML验证:
verify_html: false,
valid_elements: '*[*]',
Run Code Online (Sandbox Code Playgroud)我认为您必须在自定义freemarker.cache.TemplateLoader实现中对它们进行重新整理,该实现将您的正常TemplateLoader. 当然,如果用户确实键入“<#”或“</#”,则会出现歧义,但我不确定这是否是您的应用程序中的问题。