Skip to content

Commit 45f1851

Browse files
fix: adding fix for newline after < in german gmails
1 parent a2c9fb9 commit 45f1851

3 files changed

Lines changed: 27 additions & 4 deletions

File tree

lib/regex.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,13 @@ class RegexList {
3434
/^-*\s*(On\s.+\s.+\n?wrote:{0,1})\s{0,1}-*$/m, // On DATE, NAME <EMAIL> wrote:
3535
/^-*\s*(Le\s.+\s.+\n?écrit\s?:{0,1})\s{0,1}-*$/m, // Le DATE, NAME <EMAIL> a écrit :
3636
/^-*\s*(El\s.+\s.+\n?escribió:{0,1})\s{0,1}-*$/m, // El DATE, NAME <EMAIL> escribió:
37-
/^-*\s*(Il\s.+\s.+\n?scritto:{0,1})\s{0,1}-*$/m, // Il DATE, NAME <EMAIL> ha scritto:
38-
/^-*\s*(Em\s.+\s.+\n?escreveu:{0,1})\s{0,1}-*$/m, // Em DATE, NAME <EMAIL> ha escreveu:
39-
/^\s*(Am\s.+\s)\n?\n?schrieb.+\s?(\[|<).+(\]|>):$/m, // Am DATE schrieb NAME <EMAIL>:
37+
/^-*\s*(Il\s.+\s.+\n?scritto:{0,1})\s{0,1}-*$/m, // Il DATE, NAME <EMAIL> ha scritto:
38+
/^-*\s*(Em\s.+\s.+\n?escreveu:{0,1})\s{0,1}-*$/m, // Em DATE, NAME <EMAIL> ha escreveu:
4039
/^\s*(Op\s[\s\S]+?\n?schreef[\s\S]+:)$/m, // Il DATE, schreef NAME <EMAIL>:
4140
/^\s*((W\sdniu|Dnia)\s[\s\S]+?(pisze|napisał(\(a\))?):)$/mu, // W dniu DATE, NAME <EMAIL> pisze|napisał:
4241
/^\s*(Den\s.+\s\n?skrev\s.+:)$/m, // Den DATE skrev NAME <EMAIL>:
4342
/^\s*(pe\s.+\s.+\n?kirjoitti:)$/m, // pe DATE NAME <EMAIL> kirjoitti:
44-
/^\s*(Am\s.+\sum\s.+\s\n?schrieb\s.+:)$/m, // Am DATE um TIME schrieb NAME:
43+
/^\s*(Am\s.+\s\n?\n?schrieb.+\s?((\[|<)\n?.+(\]|>))?):$/m, // Am DATE schrieb NAME <EMAIL>: OR Am DATE um TIME schrieb NAME <EMAIL>: (with optional newline after <)
4544
/^\s*(ср\,\s.+\n?г\. в\s.+,\s.+[\[|<].+[\]|>]:)$/m, // ср, DATE г. в TIME, NAME <EMAIL>:
4645
/^([\s\S]+)$/m, // > 在 DATE, TIME, NAME 写道:
4746
/^(20[0-9]{2}\..+\s:)$/m, // DATE TIME NAME 작성:
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
Fusce bibendum, quam hendrerit sagittis tempor, dui turpis tempus erat, pharetra sodales ante sem sit amet metus.
2+
Nulla malesuada, orci non vulputate lobortis, massa felis pharetra ex, convallis consectetur ex libero eget ante.
3+
Nam vel turpis posuere, rhoncus ligula in, venenatis orci. Duis interdum venenatis ex a rutrum.
4+
Duis ut libero eu lectus consequat consequat ut vel lorem. Vestibulum convallis lectus urna,
5+
et mollis ligula rutrum quis. Fusce sed odio id arcu varius aliquet nec nec nibh.
6+
7+
Am Fr., 28. Nov. 2025 um 15:57 Uhr schrieb Test Mailer <
8+
testing@testing.com>:
9+
10+
> Test
11+
> Respond
12+
> <https://tracking.fake.company/wf/open?upn=23f98s9v8dgvusadf8gvhj92834trh982kPaN-2Bzz2b2l67UT96AH2NcL0wRl3s-2BKsQIu0komyhpMwWHavdLtWB0qPad224t2BEF-2Fkxlasdbvasdbvasdfbasdfv 2Bscvasdfgvasdfg333-6785674351uDlO-2BvbD8rsFaei8jRo0-2BxBRNGl9-2BPpnkPQ6twZMlUlAivCMpPM3116GPX5hl90xoINZv5a1SE5cqVYN4zjyJ4xNJXtKwXP36yUpvTGk1D-2FJd-2F7gihrcC3tUNIwlwvp5qrd1jAj2R-2BIgVqrUPSCjPyu-2BTNJe2uJ6789fsdfsdef423234343-2B3-2FyNSl-2Fp20lDXiZgCmg5xjrqdeuSGGc-2BW-2B5Qf7u-2BFrVBz8WaEvldRKMZ0pFqkxIgk7W3O4F2I8cLZBekLW12d5S8-3D>
13+
>

test/test.js

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -456,6 +456,17 @@ export function test_email_gmail(test) {
456456
test.done();
457457
}
458458

459+
export function test_email_gmail_split_line_german(test) {
460+
let email = get_email("email_gmail_split_line_from_german");
461+
462+
let fragments = email.getFragments();
463+
464+
test.equal(COMMON_FIRST_FRAGMENT, fragments[0].toString().trim());
465+
test.equal(2, fragments.length);
466+
467+
test.done();
468+
}
469+
459470
export function text_email_reply_header(test) {
460471
let email = get_email("email_reply_header");
461472

0 commit comments

Comments
 (0)