Re: month September

2023-09-17 Thread Francesco Ariis
Il 18 settembre 2023 alle 06:57 Kevin J. McCarthy ha scritto:
> $index_format by default uses the %{} expando: %{%b %d}.  This uses the
> locale setting but you can prefix it with a ! to use C, e.g. %{!%b %d}.
> 
> $date_format is used for the %d and %D expandos in $index_format, and the %D
> expando in $folder_format.

Super clear, many thanks for the explanation Kevin, it is really
nice to have developers explaining stuff in the mailing list
—F



Re: month September

2023-09-17 Thread Kevin J. McCarthy

On Sun, Sep 17, 2023 at 11:27:34PM +0200, Francesco Ariis wrote:

There you have it.

I wonder whether the ignored `!` in date_format is a bug or me 
misreading the man page (Mutt 2.2.9). I will wait for a developer’s 
reply before filing an issue


$index_format by default uses the %{} expando: %{%b %d}.  This uses the 
locale setting but you can prefix it with a ! to use C, e.g. %{!%b %d}.


$date_format is used for the %d and %D expandos in $index_format, and 
the %D expando in $folder_format.


--
Kevin J. McCarthy
GPG Fingerprint: 8975 A9B3 3AA3 7910 385C  5308 ADEF 7684 8031 6BDA


signature.asc
Description: PGP signature


Re: month September

2023-09-17 Thread Francesco Ariis
Il 17 settembre 2023 alle 23:19 Matthias Apitz ha scritto:
> $ echo $LANG
> es_ES.UTF-8
> $ date "+%b"
> sept.
> $ LANG=C date "+%b"
> Sep
> $

There you have it.

I wonder whether the ignored `!` in date_format is a bug or me
misreading the man page (Mutt 2.2.9). I will wait for a developer’s
reply before filing an issue
—F



Re: month September

2023-09-17 Thread Matthias Apitz
El día domingo, septiembre 17, 2023 a las 11:12:23p. m. +0200, Francesco Ariis 
escribió:

> `date_format` is passed to `strftime`. Mine is:
> 
> date_format="!%a, %b %d, %Y at %I:%M:%S%p %Z"
> # A bang should mean “C (US English) locale,
> # but on mine it is still Italian.
> 
> `date "+%b"` returns `set` here, what about on your machine?

$ echo $LANG
es_ES.UTF-8
$ date "+%b"
sept.
$ LANG=C date "+%b"
Sep
$

Thanks

matthias
-- 
Matthias Apitz, ✉ g...@unixarea.de, http://www.unixarea.de/ +49-176-38902045
Public GnuPG key: http://www.unixarea.de/key.pub

Stoppt die Bundeswehr nicht erst vor Stalingrad! Schluss mit Waffenlieferungen
an die Ukraine und Schluss mit der Aufrüstung!
Stop the German Army already before Stalingrad! End the delivery of weapons
to Ukraine!


Re: month September

2023-09-17 Thread Francesco Ariis
Hello Matthias,

Il 17 settembre 2023 alle 21:27 Matthias Apitz ha scritto:
> Why the actual month September is abbreviated with 4 letters in the index:
> 
>6 may. 28 Simsondoktor Mü (2,5K) Re: Defekte Schwalbe  
> 
>7 jul. 05 Matthias Apitz  (2,1K) buscando un libro: Las siete vidas de 
> Tanja Nijmei
>8 jul. 05 Mail Delivery S (4,6K) Rejected: buscando un libro: Las 
> siete vidas de Ta
>9 ago. 07 portal@elster.d (3,9K) Mein ELSTER: Anpassung der 
> Speicherfrist bei besti
>   10 ago. 18 Dave Cramer (5,5K) Re: Looking for PostgreSQL Tuning 
> Workshop Present
>   11 sept. 07 Matthias Apitz  (1,2M) Re: Status Versicherungsverlauf / 
> SFR
>   13 sept. 10 Matthias Apitz  (3,5K) Fwd: Shipping Parity Investment 
> Opportunity  

`date_format` is passed to `strftime`. Mine is:

date_format="!%a, %b %d, %Y at %I:%M:%S%p %Z"
# A bang should mean “C (US English) locale,
# but on mine it is still Italian.

`date "+%b"` returns `set` here, what about on your machine?
—F



month September

2023-09-17 Thread Matthias Apitz
Why the actual month September is abbreviated with 4 letters in the index:

   6 may. 28 Simsondoktor Mü (2,5K) Re: Defekte Schwalbe
  
   7 jul. 05 Matthias Apitz  (2,1K) buscando un libro: Las siete vidas de 
Tanja Nijmei
   8 jul. 05 Mail Delivery S (4,6K) Rejected: buscando un libro: Las siete 
vidas de Ta
   9 ago. 07 portal@elster.d (3,9K) Mein ELSTER: Anpassung der 
Speicherfrist bei besti
  10 ago. 18 Dave Cramer (5,5K) Re: Looking for PostgreSQL Tuning 
Workshop Present
  11 sept. 07 Matthias Apitz  (1,2M) Re: Status Versicherungsverlauf / SFR  
  
  13 sept. 10 Matthias Apitz  (3,5K) Fwd: Shipping Parity Investment 
Opportunity  

Thanks

matthias

-- 
Matthias Apitz, ✉ g...@unixarea.de, http://www.unixarea.de/ +49-176-38902045
Public GnuPG key: http://www.unixarea.de/key.pub

Stoppt die Bundeswehr nicht erst vor Stalingrad! Schluss mit Waffenlieferungen
an die Ukraine und Schluss mit der Aufrüstung!
Stop the German Army already before Stalingrad! End the delivery of weapons
to Ukraine!


Re: [OT-ish] Want command line program to selectively delete emails

2023-09-17 Thread Sean Greenslade
On Mon, Aug 07, 2023 at 01:57:04AM +1000, Nemo Thorx wrote:
> Quoting Ed Blackman from 04 Aug (a Friday in 2023) at 1434 hours...
> > Any suggestions for a command line program to select emails for
> > deletion based on command line options?  I specifically want one that
> > can remove emails that were received more than X days ago, but can
> > also express "but don't delete if they're flagged".
> 
> 
> 
> > I could call mutt (see, kinda OT!) with "-e" to tag, delete, sync, and
> > quit, but that seems fiddly and heavyweight.
> 
> But if it's being run from cron overnight or something, are you ever
> going to notice? 
> 
> > I could give up on using the message headers to determine the message
> > date, learn how filenames are constructed in Maildir (to read the
> > flags) and use a shell script built around "find".
> 
> I'm reasonably confident that all filenames (before the ':') are only
> convention (I convert an nntp spool to maildir and name them according
> to my own naming convention which everything (well, mutt and dovecot)
> then honours), and mtime is unused by anything and/or not to be trusted. 
> 
> So honetsly, I'd suggest mutt's -e, since it gives you mutt's pattern
> matching which is much more powerful than archivemail (admittedly,
> I only used that for trivial stuff and only many years ago) and likely
> more than anything else available. 
> 
> eg, instead of just "received more than X days ago and not flagged",
> mutt can let you select/ignore whole threads based on those parameters,
> and others alike. eg, I once had archiving setup on a folder-hook thus: 
> 
> folder-hook !(Maildir$|archive|search|mfolder|.r.) 'push 
> "t~m 600- !~(~m -600) !~(~r <32d) !~(~N) !~(~F) 
> !~D^.archivet"'
> 
> To decode that: sort reverse threaded, select all messages after the
> first 600, but not if it's part of a thread within the first 600, not if
> it's in a thread with messages received in the last 32 days, not if it's
> in a thread with messages marked 'New' or 'Flagged', and not if it's
> a message already marked delete. Then save to the archive mailbox and
> established my desired sorting and thread collapse visibility. 
> 
> Basically - I wanted a thread-preserving archiving mechanism, and mutt's
> thread-aware pattern matching gave it to me. (I didn't include sync in
> that setup, preferring at the time to let that occur with mailbox
> closing)
> 
> In a delete scenario as you're seeking, I'd suggest a multi-step process
> which first archives threads you've contributed to - and only then
> deleting old ignorable threads. 
> 
> Sure It's fiddly - which is your argument against using mutt.
> 
> ...But it's powerful - which is my argument for using mutt!
> 
> Aside - I used folder-hook before because I didn't know of the "-e"
> option, and I stopped using it because I found I was often using mutt as
> a mailbox debug tool, and this was just getting in the way. I can see
> myself going down the rabbithole and reimplementing my old archiver now
> (where "now" is "sometime in the next few months, maybe" :)

Another very late reply to this thread, but I happen to have implemented
almost exactly the concept you're describing. It's a python3 script that
deletes whole threads that meet the criteria:
- All messages are markes as read
- No messages in the thread are unread
- No messages in the thread are flagged (starred)
- All messages in the thread are older than N days

It's been several years since I've looked at this code (which in my mind
is a good thing, since that means it hasn't broken), so definitely give
it a read-over to see if it's suitable for your purposes. In my case, I
run it directly on the mail server via a systemd service and timer.

https://seangreenslade.com/source-code/scripts/list-thread-pruner/listthreadpruner-v0.1.py

Happy to answer any questions about the code if anyone is curious or
wants to use it.

--Sean