summaryrefslogtreecommitdiffstats
path: root/wp-includes/class-wp-text-diff-renderer-inline.php
diff options
context:
space:
mode:
Diffstat (limited to 'wp-includes/class-wp-text-diff-renderer-inline.php')
-rw-r--r--wp-includes/class-wp-text-diff-renderer-inline.php33
1 files changed, 33 insertions, 0 deletions
diff --git a/wp-includes/class-wp-text-diff-renderer-inline.php b/wp-includes/class-wp-text-diff-renderer-inline.php
new file mode 100644
index 0000000..f3e4f6b
--- /dev/null
+++ b/wp-includes/class-wp-text-diff-renderer-inline.php
@@ -0,0 +1,33 @@
+<?php
+/**
+ * Diff API: WP_Text_Diff_Renderer_inline class
+ *
+ * @package WordPress
+ * @subpackage Diff
+ * @since 4.7.0
+ */
+
+/**
+ * Better word splitting than the PEAR package provides.
+ *
+ * @since 2.6.0
+ * @uses Text_Diff_Renderer_inline Extends
+ */
+#[AllowDynamicProperties]
+class WP_Text_Diff_Renderer_inline extends Text_Diff_Renderer_inline {
+
+ /**
+ * @ignore
+ * @since 2.6.0
+ *
+ * @param string $string
+ * @param string $newlineEscape
+ * @return string
+ */
+ public function _splitOnWords( $string, $newlineEscape = "\n" ) { // phpcs:ignore Universal.NamingConventions.NoReservedKeywordParameterNames.stringFound
+ $string = str_replace( "\0", '', $string );
+ $words = preg_split( '/([^\w])/u', $string, -1, PREG_SPLIT_DELIM_CAPTURE );
+ $words = str_replace( "\n", $newlineEscape, $words );
+ return $words;
+ }
+}