From c66087838886d5921ffd8b5b1e57e0a09528e4b8 Mon Sep 17 00:00:00 2001 From: Nicolas Hart Date: Sun, 27 Aug 2017 00:04:21 +0200 Subject: [PATCH] better entry txt export using html2text --- composer.json | 3 ++- src/Wallabag/CoreBundle/Helper/EntriesExport.php | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index e609af40..fa0a4a39 100644 --- a/composer.json +++ b/composer.json @@ -84,7 +84,8 @@ "symfony/dom-crawler": "^3.1", "friendsofsymfony/jsrouting-bundle": "^1.6", "bdunogier/guzzle-site-authenticator": "^1.0.0@dev", - "defuse/php-encryption": "^2.1" + "defuse/php-encryption": "^2.1", + "html2text/html2text": "^4.1" }, "require-dev": { "doctrine/doctrine-fixtures-bundle": "~2.2", diff --git a/src/Wallabag/CoreBundle/Helper/EntriesExport.php b/src/Wallabag/CoreBundle/Helper/EntriesExport.php index de259e7f..838b9734 100644 --- a/src/Wallabag/CoreBundle/Helper/EntriesExport.php +++ b/src/Wallabag/CoreBundle/Helper/EntriesExport.php @@ -2,6 +2,7 @@ namespace Wallabag\CoreBundle\Helper; +use Html2Text\Html2Text; use JMS\Serializer\SerializationContext; use JMS\Serializer\SerializerBuilder; use PHPePub\Core\EPub; @@ -408,7 +409,8 @@ class EntriesExport $bar = str_repeat('=', 100); foreach ($this->entries as $entry) { $content .= "\n\n" . $bar . "\n\n" . $entry->getTitle() . "\n\n" . $bar . "\n\n"; - $content .= trim(preg_replace('/\s+/S', ' ', strip_tags($entry->getContent()))) . "\n\n"; + $html = new Html2Text($entry->getContent(), ['do_links' => 'none', 'width' => 100]); + $content .= $html->getText(); } return Response::create( -- 2.41.0