diff --git a/config/install/filter.format.code.yml b/config/install/filter.format.code.yml index 7f5d72877ffce3a6dbde4616eee19ad7b2dd55f8..4d955b4a39f4d1e0ce9026c3878f430fc9d62898 100644 --- a/config/install/filter.format.code.yml +++ b/config/install/filter.format.code.yml @@ -3,3 +3,11 @@ status: true name: Code format: code weight: 0 +filters: + normalize_newline: + id: normalize_newline + provider: mail_template + status: true + weight: 10 + settings: { } + \ No newline at end of file diff --git a/src/Plugin/Filter/NormalizeNewline.php b/src/Plugin/Filter/NormalizeNewline.php new file mode 100644 index 0000000000000000000000000000000000000000..a90500711b85d4d4a9d5ba0f0a6fb65ef8179979 --- /dev/null +++ b/src/Plugin/Filter/NormalizeNewline.php @@ -0,0 +1,22 @@ +<?php +namespace Drupal\mail_template\Plugin\Filter; + +use Drupal\filter\FilterProcessResult; +use Drupal\filter\Plugin\FilterBase; + +/** + * @Filter( + * id = "normalize_newline", + * title = @Translation("Normalize Newline"), + * description = @Translation("Normalize newlines!"), + * type = Drupal\filter\Plugin\FilterInterface::TYPE_MARKUP_LANGUAGE, + * ) + */ + +class NormalizeNewline extends FilterBase { + public function process($text, $langcode) { + $new_text = str_replace(["\r\n", "\r"], "\n", $text); + return new FilterProcessResult($new_text); + } +} +