Line breaks in monthly reminder emails

I don't think I've seen this discussed before although it's hard to search for, so maybe it has been and I just can't find it.
My monthly reminder texts (cronpass.txt) are heavily customized. The only line breaks in the cronpass.txt file are at the ends of paragraphs, etc.
When the reminders go out, they wrap around 70 characters on the desktop, which is fine. It looks as if Mailman has inserted a hard line break there.
On my phone (Gmail app), they wrap at 70 characters horizontally, but on a narrower vertical screen, it's pretty ugly, because of the hard line break at 70 characters:
This is a reminder, sent out once a month, about your discussion list subscriptions at the XXXXXXXXXX (xxx.xxxxxx.xxx) website.
You can visit https://xxx.xxxxxx.xxx/xxxxxxxxx to change your subscription settings for any list. You will need to login to the website first using the "Sign in" link at the top right of any page. Be sure that you login as the user whose email address matches your list subscription.
The only solution I can think of is to insert hard breaks in cronpass.txt around the 50-character mark but I'm hoping there's a better way. (I know, upgrade to Mailman 3. It's slowly working its way up the to-do list.)
This is Mailman 2.1.38 on cPanel.
--
Russell Clemings <russell@clemings.com>

On 12/1/22 15:37, Russell Clemings wrote:
If you have the ability to patch Mailman's cron/mailpasswds, this will do it. ``` --- old/cron/mailpasswds 2018-06-17 23:47:34 +0000 +++ new/cron/mailpasswds 2022-12-01 23:51:14 +0000 @@ -203,7 +203,7 @@ 'useraddr': addr, 'exreq' : sitereq, 'owner' : siteowner, - }, lang=poplang) + }, lang=poplang, raw=True) # Coerce everything to Unicode text = tounicode(text, enc) table = [tounicode(_t, enc) for _t in table] ``` Otherwise, I think inserting hard returns is it. -- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

I do, and as luck would have it I already have some modifications on that file, so I'll give it a try. On Thu, Dec 1, 2022 at 3:56 PM Mark Sapiro <mark@msapiro.net> wrote:
-- =============================================== Russell Clemings <russell@clemings.com> ===============================================

Once I've applied the patch, is there a way to test the monthly reminder, i.e. by sending myself a copy?
Re: format=flowed -- I'm lazy, so I'll avoid the harder option.
On Thu, Dec 1, 2022 at 10:47 PM Stephen J. Turnbull < stephenjturnbull@gmail.com> wrote:
--
Russell Clemings <russell@clemings.com>

On 12/2/22 15:47, Russell Clemings wrote:
Once I've applied the patch, is there a way to test the monthly reminder, i.e. by sending myself a copy?
Not without patching. There is a -l/--listname option to limit to a list or, if repeated, lists, but no option to limit to a single user. You could make a patched version of cron/mailpasswds like this ``` --- old/cron/mailpasswds 2018-06-17 23:47:34 +0000 +++ new/cron/mailpasswds 2022-12-03 00:27:46 +0000 @@ -166,6 +166,8 @@ # Now that we've collected user information for this host, send each # user the password reminder. for addr in userinfo.keys(): + if addr != 'rclemings@gmail.com': + continue # If the person is on more than one list, it is possible that they # have different preferred languages, and there's no good way to # know which one they want their password reminder in. Pick the ``` and then run that as the Mailman user to send a reminder to only rclemings@gmail.com. -- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

On 12/2/22 5:33 PM, Mark Sapiro wrote:
There is a -l/--listname option to limit to a list or, if repeated, lists, but no option to limit to a single user.
Sounds like a reason to (temporarily) create a new list with yourself as the only subscriber and test things.
-- Grant. . . . unix || die

On 12/1/22 11:45 PM, Stephen J. Turnbull wrote:
Possibly more flexible (but harder to implement and dependent on user MUAs) would be to use format=flowed in Content-Type.
+10 for format=flowed
IMHO format=flowed is not hard to implement and it produces responsive emails which wrap to whatever the window width is.
-- Grant. . . . unix || die

On 12/1/22 15:37, Russell Clemings wrote:
If you have the ability to patch Mailman's cron/mailpasswds, this will do it. ``` --- old/cron/mailpasswds 2018-06-17 23:47:34 +0000 +++ new/cron/mailpasswds 2022-12-01 23:51:14 +0000 @@ -203,7 +203,7 @@ 'useraddr': addr, 'exreq' : sitereq, 'owner' : siteowner, - }, lang=poplang) + }, lang=poplang, raw=True) # Coerce everything to Unicode text = tounicode(text, enc) table = [tounicode(_t, enc) for _t in table] ``` Otherwise, I think inserting hard returns is it. -- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

I do, and as luck would have it I already have some modifications on that file, so I'll give it a try. On Thu, Dec 1, 2022 at 3:56 PM Mark Sapiro <mark@msapiro.net> wrote:
-- =============================================== Russell Clemings <russell@clemings.com> ===============================================

Once I've applied the patch, is there a way to test the monthly reminder, i.e. by sending myself a copy?
Re: format=flowed -- I'm lazy, so I'll avoid the harder option.
On Thu, Dec 1, 2022 at 10:47 PM Stephen J. Turnbull < stephenjturnbull@gmail.com> wrote:
--
Russell Clemings <russell@clemings.com>

On 12/2/22 15:47, Russell Clemings wrote:
Once I've applied the patch, is there a way to test the monthly reminder, i.e. by sending myself a copy?
Not without patching. There is a -l/--listname option to limit to a list or, if repeated, lists, but no option to limit to a single user. You could make a patched version of cron/mailpasswds like this ``` --- old/cron/mailpasswds 2018-06-17 23:47:34 +0000 +++ new/cron/mailpasswds 2022-12-03 00:27:46 +0000 @@ -166,6 +166,8 @@ # Now that we've collected user information for this host, send each # user the password reminder. for addr in userinfo.keys(): + if addr != 'rclemings@gmail.com': + continue # If the person is on more than one list, it is possible that they # have different preferred languages, and there's no good way to # know which one they want their password reminder in. Pick the ``` and then run that as the Mailman user to send a reminder to only rclemings@gmail.com. -- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

On 12/2/22 5:33 PM, Mark Sapiro wrote:
There is a -l/--listname option to limit to a list or, if repeated, lists, but no option to limit to a single user.
Sounds like a reason to (temporarily) create a new list with yourself as the only subscriber and test things.
-- Grant. . . . unix || die

On 12/1/22 11:45 PM, Stephen J. Turnbull wrote:
Possibly more flexible (but harder to implement and dependent on user MUAs) would be to use format=flowed in Content-Type.
+10 for format=flowed
IMHO format=flowed is not hard to implement and it produces responsive emails which wrap to whatever the window width is.
-- Grant. . . . unix || die
participants (4)
-
Grant Taylor
-
Mark Sapiro
-
Russell Clemings
-
Stephen J. Turnbull