ck_editor: Linefeeds added after each save
I already made the experience in TYPO3 7.6.x and now it is also happening in TYPO 8.7.2:
Whenever I save Text in ck_editor an additional line feed <p> </p> is added after
each line. Also is every "<br />"-tag converted into a "<p></p>"-wrapper around the line.
In order to prevent this behaviour I added the following directive to my page tsconfig:
dontConvBRtoParagraph = 1
preserveTables = 1
typolist = 0
which has no effect at all.
I am not in the mood nor do I have the time fiddling around with dozens of possible
ts-optioons and trying to find a solution by trial-and-error. This is so basic - there
should be a straightforward solution (which I did not find so far).
Updated by Jasmina Ließmann about 4 years ago
I can confirm the problem, but only for my special case. I have several custom elements (new CTypes) that can contain IRRE elements. The IRRE element itself has a text field, which should contain an RTE only on a particular CType.
By using a configuration like this, I get duplicate p-tags each time I save the particular CType.
$GLOBALS['TCA']['tt_content']['types']['ce_custom'] = [ 'columnsOverrides' => [ 'tx_domain_model_records' => [ 'config' => [ 'overrideChildTca' => [ 'columns' => [ 'text' => [ 'config' => [ 'enableRichtext' => true, 'richtextConfiguration' => 'default', ], ], ], ], ], ], ], ],
If I activate the RTE for the text field of the IRRE element in general (and not just for the specific CType), the problem does not occur.Tested with:
- TYPO3 CMS 8.7.5-dev
- rte_ckeditor (8.7.5)
- fluid_styled_content (8.7.5)
I don't use Flux or DCE. In normal content elements like 'text' or 'textmedia' the problem does not occur as well.
Updated by Ralf Zimmermann about 4 years ago
I use the columnsOverrides and overrideChildTca TCA feature to enable the RTE on the "description" field of a sys_file_reference.
\TYPO3\CMS\Core\Utility\ArrayUtility::mergeRecursiveWithOverrule( $GLOBALS['TCA']['tt_content'], [ 'types' => [ 'textmedia' => [ 'columnsOverrides' => [ 'assets' => [ 'config' => [ 'overrideChildTca' => [ 'columns' => [ 'description' => [ 'config' => [ 'enableRichtext' => true, 'richtextConfiguration' => 'default' ], ], ], ], ], ], ], ], ], ] );
When saving, the DataHandler does not know what was overwritten by the parent element:
The DataHandler takes the "default" configuration of "$GLOBALS['TCA']['sys_file_reference']['types']['columnsOverrides']['description']['config']" and ignores the "overrideChildTca" configuration from the parent element.
Therefore, "'enableRichtext' => true" is not set and the DataHandler does not execute the required RTE transformations.
Updated by Riccardo De Contardi over 2 years ago
Is this still an issue? I tried to use
- TYPO3 9.5.5
- Ext:news 7.1.0
I followed the following steps:
1) create a sysfolder
2) create a news record
3) tab "content elements" > create a "text" content element
4) write some text in it
So far, I've not experienced that each save adds a line. Is a different test required?
Updated by Benni Mack almost 2 years ago
- Status changed from New to Needs Feedback
Should be fixed with https://review.typo3.org/c/Packages/TYPO3.CMS/+/60902 - right? (applied to 10, 9 and 8 in August 2019 release)
Updated by Kevin Quiatkowski almost 2 years ago
I currently have this bug sometimes in a 9.5.13. Looks like there will be added a <p> </p> every time there is more than one line break between 2 p blocks. With each save there comes an additional line of empty p. Switching to the source view and delete every line break between the p's is a workaround.
Updated by Hugo Laporte almost 2 years ago
- TYPO3 Version changed from 8 to 9
- PHP Version changed from 7.0 to 7.2
I also have this issue with tt_news and gridelements on the ckeditor content field. Every time I save it's adding :
between my paragraphs. Kind of annoying.
Updated by Benni Mack over 1 year ago
- Status changed from New to Needs Feedback
The issue lies in "tt_news". see
the "defaultExtras" section is obsolete since TYPO3 v8 LTS
Updated by Riccardo De Contardi 12 months ago
- Status changed from Needs Feedback to Closed
I think it is safe to close this issue for now (long time without feedback and seems related to a deprecated feature)
If you think that this is the wrong decision, please reopen it or ping me and I'll do
Updated by Daniel Ostmann 9 months ago
I can confirm this issue in TYPO3 9.5.24.
I've configured the sys_file_reference.description to use the RTE (code above: #note-8). After saving the Editor adds
<p> </p> at top and bottom and replaces every linebreak with
<p> </p> as well.
If activate the RTE in the TCA of sys_file_reference directly (no columnsOverrides), it works.
Updated by Ben Robinson 4 months ago
Addendum: I had tried to activate the RTE for selected content elements in the description field of sys_file_reference and encountered the same problem as Ralf Zimmermann, that after saving new paragraphs were created in the RTE.
Afterwards I manually extended sys_file_reference with a new field "bodytext" ...
CREATE TABLE sys_file_reference ( bodytext mediumtext, );
// Configure new fields: $newfields = array( 'bodytext' => array( 'exclude' => 1, 'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.text', 'config' => array( 'type' => 'text', 'cols' => '80', 'rows' => '15', 'wrap' => 'off', 'softref' => 'typolink_tag,images,email[subst],url', 'format' => 'html', 'enableRichtext' => true, 'richtextConfiguration' => 'default' ) ) ); // Add new fields: \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns('sys_file_reference', $newfields);
... and assigned this field to my content element:
$GLOBALS['TCA']['tt_content']['types']['mycontentelement'] = array( 'showitem' => ' --div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general, --palette--;;general, --palette--;;headers, image, ', 'columnsOverrides' => [ 'image' => [ 'config' => [ 'overrideChildTca' => [ 'types' => [ 2 => [ 'showitem' => ' bodytext, --palette--;;basicoverlayPalette,--palette--;;filePalette ', 'columnsOverrides' => [ 'description' => [ 'config' => [ 'placeholder' => '', 'mode' => '', 'enableRichtext' => 1, 'richtextConfiguration' => 'default', ], ], ], ], ], ], ], ], ], );
This worked now. The above TCA example contains both cases:
1. the working new field "bodytext" with RTE
2. the problematic "description" field with RTE, which creates empty lines when saving.