Improve whitespace display in mod/babel

- Add a couple more result panels for Markdown input
- Remove \x28/\x29 parentheses encoding
- Convert remaining double quotes
This commit is contained in:
Hypolite Petovan 2018-09-16 09:07:17 -04:00
parent 96ed7525b7
commit 87c425e388
1 changed files with 25 additions and 12 deletions

View File

@ -6,8 +6,10 @@
use Friendica\Content\Text; use Friendica\Content\Text;
use Friendica\Core\L10n; use Friendica\Core\L10n;
function visible_lf($s) function visible_whitespace($s)
{ {
$s = str_replace(' ', ' ', $s);
return str_replace("\n", '<br />', $s); return str_replace("\n", '<br />', $s);
} }
@ -20,19 +22,19 @@ function babel_content()
$bbcode = trim($_REQUEST['text']); $bbcode = trim($_REQUEST['text']);
$results[] = [ $results[] = [
'title' => L10n::t('Source input'), 'title' => L10n::t('Source input'),
'content' => visible_lf($bbcode) 'content' => visible_whitespace($bbcode)
]; ];
$plain = Text\BBCode::toPlaintext($bbcode, false); $plain = Text\BBCode::toPlaintext($bbcode, false);
$results[] = [ $results[] = [
'title' => L10n::t('BBCode::toPlaintext'), 'title' => L10n::t('BBCode::toPlaintext'),
'content' => visible_lf($plain) 'content' => visible_whitespace($plain)
]; ];
$html = Text\BBCode::convert($bbcode); $html = Text\BBCode::convert($bbcode);
$results[] = [ $results[] = [
'title' => L10n::t("BBCode::convert \x28raw HTML\x29"), 'title' => L10n::t('BBCode::convert (raw HTML)'),
'content' => htmlspecialchars($html) 'content' => visible_whitespace(htmlspecialchars($html))
]; ];
$results[] = [ $results[] = [
@ -43,13 +45,13 @@ function babel_content()
$bbcode2 = Text\HTML::toBBCode($html); $bbcode2 = Text\HTML::toBBCode($html);
$results[] = [ $results[] = [
'title' => L10n::t('BBCode::convert => HTML::toBBCode'), 'title' => L10n::t('BBCode::convert => HTML::toBBCode'),
'content' => visible_lf($bbcode2) 'content' => visible_whitespace($bbcode2)
]; ];
$markdown = Text\BBCode::toMarkdown($bbcode); $markdown = Text\BBCode::toMarkdown($bbcode);
$results[] = [ $results[] = [
'title' => L10n::t('BBCode::toMarkdown'), 'title' => L10n::t('BBCode::toMarkdown'),
'content' => visible_lf($markdown) 'content' => visible_whitespace($markdown)
]; ];
$html2 = Text\Markdown::convert($markdown); $html2 = Text\Markdown::convert($markdown);
@ -61,22 +63,33 @@ function babel_content()
$bbcode3 = Text\Markdown::toBBCode($markdown); $bbcode3 = Text\Markdown::toBBCode($markdown);
$results[] = [ $results[] = [
'title' => L10n::t('BBCode::toMarkdown => Markdown::toBBCode'), 'title' => L10n::t('BBCode::toMarkdown => Markdown::toBBCode'),
'content' => visible_lf($bbcode3) 'content' => visible_whitespace($bbcode3)
]; ];
$bbcode4 = Text\HTML::toBBCode($html2); $bbcode4 = Text\HTML::toBBCode($html2);
$results[] = [ $results[] = [
'title' => L10n::t('BBCode::toMarkdown => Markdown::convert => HTML::toBBCode'), 'title' => L10n::t('BBCode::toMarkdown => Markdown::convert => HTML::toBBCode'),
'content' => visible_lf($bbcode4) 'content' => visible_whitespace($bbcode4)
]; ];
break; break;
case 'markdown': case 'markdown':
$markdown = trim($_REQUEST['text']); $markdown = trim($_REQUEST['text']);
$results[] = [ $results[] = [
'title' => L10n::t('Source input \x28Diaspora format\x29'), 'title' => L10n::t('Source input (Diaspora format)'),
'content' => '<pre>' . $markdown . '</pre>' 'content' => '<pre>' . $markdown . '</pre>'
]; ];
$html = Text\Markdown::convert($markdown);
$results[] = [
'title' => L10n::t('Markdown::convert (raw HTML)'),
'content' => htmlspecialchars($html)
];
$results[] = [
'title' => L10n::t('Markdown::convert'),
'content' => $html
];
$bbcode = Text\Markdown::toBBCode($markdown); $bbcode = Text\Markdown::toBBCode($markdown);
$results[] = [ $results[] = [
'title' => L10n::t('Markdown::toBBCode'), 'title' => L10n::t('Markdown::toBBCode'),
@ -86,7 +99,7 @@ function babel_content()
case 'html' : case 'html' :
$html = trim($_REQUEST['text']); $html = trim($_REQUEST['text']);
$results[] = [ $results[] = [
'title' => L10n::t("Raw HTML input"), 'title' => L10n::t('Raw HTML input'),
'content' => htmlspecialchars($html) 'content' => htmlspecialchars($html)
]; ];
@ -98,7 +111,7 @@ function babel_content()
$bbcode = Text\HTML::toBBCode($html); $bbcode = Text\HTML::toBBCode($html);
$results[] = [ $results[] = [
'title' => L10n::t('HTML::toBBCode'), 'title' => L10n::t('HTML::toBBCode'),
'content' => visible_lf($bbcode) 'content' => visible_whitespace($bbcode)
]; ];
$text = Text\HTML::toPlaintext($html); $text = Text\HTML::toPlaintext($html);