]> git.0d.be Git - chloro.git/commitdiff
strip punctuation from plain text dump
authorFrédéric Péters <fpeters@0d.be>
Thu, 21 Jul 2022 21:42:35 +0000 (23:42 +0200)
committerFrédéric Péters <fpeters@0d.be>
Thu, 21 Jul 2022 21:43:16 +0000 (23:43 +0200)
chloro/phyll/models.py

index b72bfc509d33e445b12daa1a42093799cc4f3ea3..80acf9b40da68fd782b4294bdaeec59ce0c1fa08 100644 (file)
@@ -15,6 +15,7 @@
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
 import html
+import re
 
 from django.db import models, transaction
 from django.utils.html import strip_tags
@@ -47,5 +48,7 @@ class Note(models.Model):
 
     def save(self, *args, **kwargs):
         if kwargs.get('update_fields') is None or 'plain_text' in kwargs.get('update_fields'):
-            self.plain_text = html.unescape(strip_tags(self.text))
+            self.plain_text = re.sub(
+                r"[’'\"«»,;:\. ]", ' ', html.unescape(strip_tags(self.text)).replace('’', ' ')
+            )
         return super().save(*args, **kwargs)