在RTE中保留空格以用于预标记和代码标记

时间:2012-11-01 06:27:54

标签: typo3 rte

我希望通过<pre>和/或<code>代码显示代码,这样可以正常使用。第一次保存时会保存空白区域并在前端正确显示。但是,在后端重新加载内容时,编辑器会显示没有附加空格的代码。再次保存会丢弃整个代码格式。

我认为有一些设置,但直到现在我找不到任何东西。有关于此的任何提示吗?

对于代码突出显示,我使用的是GeshiLibvjrtecodesnippets扩展程序。

修改:

抱歉,错过了配置。涉及基本rtehtmlarea,目前为v4.7.5,没有特定于TCA的更改,因为它是来自TYPO3的标准文本内容元素的标准bodytext字段(通过css_styled_content显示)。

RTE的PageTS如下所示:

RTE.default.hidePStyleItems := removeFromList(pre)
RTE.default.proc {
  allowTags := addToList(pre)
  entryHTMLparser_db.allowTags < RTE.default.proc.allowTags

  overruleMode = tx_vjrtecodesnippets,ts_css,cleanenc
  allowTags := addToList(code)
  allowTagsOutside := addToList(code)

  entryHTMLparser_db {
    allowTags < RTE.default.proc.allowTags
    allowTagsOutside < RTE.default.proc.allowTagsOutside
  }

  HTMLparser_rte {
    allowTags < RTE.default.proc.allowTags
    allowTagsOutside < RTE.default.proc.allowTagsOutside
  }
}

Edit2:我们已经发布了TYPO3扩展news_blog,它正是这样做的。

2 个答案:

答案 0 :(得分:1)

我想写一个评论,但一个简短的答案与复杂的猜测可能同样好:

  • 我在自己的网站上查看了<code>代码正常。空格 在bodytext字段中存储为&nbsp;,因此会保留 保存并重新打开时。
  • 您是否尝试删除该行
    RTE.default.hidePStyleItems := removeFromList(pre)
  • 根据manual<code>仅支持vjrtecodesnippets个代码。你真的需要两个标签来进行语法高亮吗?
  • 此外,您是否尝试更改过如下的PageTS以启用<pre>?:

-

RTE.default.proc {
  allowTagsOutside := addToList(code,pre)
}

修改
我找到了一个相关的TypoScript snippet,这对您的案例可能是值得注意的。请尝试进行以下调整:

在模板设置部分:

lib.parseFunc.allowTags := addToList(code,pre)
lib.parseFunc_RTE.allowTags := addToList(code,pre)

在PAGE TSconfig中:

RTE.default.proc {
  allowTags := addToList(code,pre)
  allowTagsOutside := addToList(code,pre)
  overruleMode = tx_vjrtecodesnippets,ts_css,cleanenc

  // CONTENT TO DATABASE
  HTMLparser_rte {
    allowTags < RTE.default.proc.allowTags
    allowTagsOutside < RTE.default.proc.allowTagsOutside
  }

  // Entry HTML parser
  entryHTMLparser_db {
    allowTags < RTE.default.proc.allowTags
    allowTagsOutside < RTE.default.proc.allowTagsOutside
  }
}

答案 1 :(得分:1)

这适用于typo3 7.4

    RTE.default.proc {
    allowTags := addToList(pre)

    HTMLparser_rte {
        allowTags < RTE.default.proc.allowTags
    }

    entryHTMLparser_db {
        allowTags < RTE.default.proc.allowTags
    }
}

肯定你也可以添加更多用“,”

分隔的标签名称

有关typoscript结帐的RTE的更多设置。 https://docs.typo3.org/typo3cms/CoreApiReference/6.2/Rte/Transformations/Tsconfig/Index.html