MSCAN(1)

πŸ’Œ MSCAN(1) β€” the manual page, but make it a group chat πŸ’Œ

okay bestie, sit down, hydrate, because we're about to talk about mscan, the icon, the moment, the little one-liner machine that lives in your General Commands Manual and makes your mailbox look cute. ✨


πŸŽ€ NAME πŸŽ€

mscan β€” bestie's job is literally generating one-line message summaries. that's it. that's the whole personality. πŸ’…


🌸 SYNOPSIS 🌸

mscan [-I] [-n] [-v] [-f format] msgs ...

yes she takes flags, yes she takes msgs ..., and no you don't get to skip the msgs conversation (unless you do, see below 🫢).


πŸ¦‹ DESCRIPTION πŸ¦‹

so mscan prints one line per message. a little summary. a lil snack. one line, every message. no cap. (and if you're sitting there like "wait what even is the message argument syntax", that's a whole other page β€” go read mmsg(7), it's right there in SEE ALSO, i gotchu.)

If you don't hand her any msgs at all? She's not gonna sulk. She'll read filenames from the standard input instead β€” OR, if you're using her interactively, she'll scan the mails in the current sequence. main character energy honestly.

By default, when used interactively, mscan will spawn a pager on its output. yes, a whole pager, because she wants you to actually READ the thing. how do you control that behaviour? scroll down to ENVIRONMENT bestie, i promise it's there. πŸ‘‘

The default format is this lil string right here:

%c%u%r %-3n %10d %17f %t %2i%s

which is giving, and which means: for each message, mscan prints the relevant flags, the sequence number (if that applies to you), the date, the originator, and the subject of the message β€” possibly indented, because we're fancy like that. πŸ’–

and!! you can set a default mscan format in your very own mblaze-profile(5). personalized. iconic.

The options are as follows (buckle up, there's a list and i respect every single entry):

  • -I β€” Force ISO date output, even for %d. yes, even then. no exceptions. periodt.
  • -n β€” Only print message numbers. (or filenames, if the message isn't in the current sequence β€” she's not gonna pretend she knows the number, okay?)
  • -v β€” Print how many messages were scanned, to standard error. verbose queen. πŸ“Š
  • -f format β€” Format according to the string format, inspired by printf(3). this is the big one.

✨ the format codes (the -f format menu, aka the good stuff) ✨

heads up: wd overrides the default width. that's the rule. πŸ’…
  • \n β€” Newline. a whole line break, we love her.
  • \t β€” Tab. for the spacing girlies.
  • %% β€” A plain %. she said escape me.
  • %[wd]b β€” Human-readable size of the message, in kilobytes.
  • %c β€” A > on the current message, otherwise a blank.
  • %[wd]d β€” Adaptive date of the message. and here's the tea: when wd is greater or equal to 19, the timestamp is shown in dottime format (https://dotti.me/).
  • %[wd]D β€” ISO date of the message (year, month, day). when wd is greater or equal to 16, the hour-minute timestamp also shows up. when wd is greater or equal to 19, seconds join the party too. ⏰
  • %[wd]f β€” The From: β€” or To:, if the message is from us. mutuals only.
  • %[wd]F β€” The maildir folder the message resides in. she knows where she lives. 🏠
  • %[wd]i β€” wd spaces per indentation depth in the thread tree. (wd default: 1.) the tree must be visually correct or we riot.
  • %[wd]I β€” The Message-ID: of the message. the real name, the legal name.
  • %M β€” The raw maildir flags of the message. no wd here, just raw.
  • %[wd]n β€” The number of the message in the current sequence.
  • %r β€” A - on a replied-to message, or a : on a forwarded message, or a blank. history.
  • %[wd]R β€” The filename of the message.
  • %[wd]s β€” The subject of the message (defaults to remaining width). we take up space, respectfully.
  • %[wd]S β€” The subject of the message (defaults to remaining width), with leading Re:, Fwd: etc. stripped. clean. fresh. πŸ’…
  • %t β€” A > if you are in To:, a + if you are in Cc:, a : if you are in Resent-To:, or a blank.
  • %u β€” An * on a flagged message, a . on an unseen message, an x on a trashed message, or a blank.

🏷️ MESSAGE FLAGS 🏷️

the whole vibe check, decoded:

  • > β€” The current message
  • . β€” An unseen message
  • x β€” A trashed message
  • * β€” A flagged message
  • - β€” A replied-to message

πŸ’¬ SUBJECT FLAGS πŸ’¬

you, personally, in the header:

  • > β€” You are in To:
  • + β€” You are in Cc:
  • : β€” You are in Resent-To:

🌈 ENVIRONMENT 🌈

  • MBLAZE_PAGER β€” Any non-empty value of the environment variable MBLAZE_PAGER is used instead of the standard pagination program, specified in PAGER. and when it's empty, or set to cat? no pager is spawned. she just dumps it. no filter, no drama. 😌

πŸ’€ EXIT STATUS πŸ’€

The mscan utility exits 0 on success, and >0 if an error occurs. that's the whole story. if it's not 0, something went wrong and she's telling you about it. fr fr.


πŸ”— SEE ALSO πŸ”—

go read them. iykyk. πŸ“š


πŸ‘‘ AUTHORS πŸ‘‘

Leah Neukirchen <leah@vuxu.org> β€” the legend. we stan. 🫢


πŸ“ LICENSE πŸ“

mscan is in the public domain.

To the extent possible under law, the creator of this work has waived all copyright and related or neighboring rights to this work.

http://creativecommons.org/publicdomain/zero/1.0/


and that's the page bestie!! this lil slice of Debian energy is dated January 2, 2020, and that's the whole manual from top to bottom. go forth and summarize your mail. mwah. πŸ’–βœ¨πŸŽ€πŸ¦‹