MIMENCODE(1)

πŸ“¦ version 2.7.19, in opensuse-leap 16.0

πŸ’Œ mimencode(1) β€” or, like, the general commands manual entry bestie πŸ’Œ

Okay so first things first: this whole page lives in the General Commands Manual, and the program is mimencode. It's also installed under the name mmencode β€” same program, two names, iconic twin behaviour. 🫢


✨ SYNOPSIS ✨

mimencode[-u] [-b] [-q] [-p] [file name] [-o outputfile]

πŸŽ€ DESCRIPTION πŸŽ€

So mimencode literally just converts a byte stream into β€” or out of β€” one of the standard mail encoding formats defined by MIME, which is the proposed standard for internet multimedia mail formats. And like, why do we even need this? Because binary data cannot be sent through the mail, periodt. 😭

The encodings that mimencode understands are preferable to using the uuencode/uudecode programs for mail, in several respects that were important to the authors of MIME. Slay.

By default, mimencode reads standard input and sends a "base64" encoded version of the input to standard output. That's the whole default vibe. ✨

The (really not necessary) "-b" option tells mimencode to use the "base64" encoding.

The "-q" option tells mimencode to use the "quoted-printable" encoding instead of base64.

The "-u" option tells mimencode to decode the standard input rather than encode it.

The "-p" option tells mimencode to translate decoded CRLF sequences into the local newline convention during decoding, and to do the reverse during encoding. Lowkey important: this option is only meaningful when -b (base64 encoding) is in effect.

If a file name argument is given, input is read from that file rather than from standard input.

The "-o" option β€” which must be followed by a file name β€” sends output to the named file rather than to standard output.


🌸 RATIONALE 🌸

Mimencode is intended to be a replacement for uuencode for mail and news use. The reason is simple: uuencode doesn't work very well in a number of circumstances and ways. πŸ’€

In particular:

  • uuencode uses characters that don't translate well across all mail gateways (particularly ASCII <-> EBCDIC gateways).
  • Also, uuencode is not standard β€” there are several variants floating around, encoding and decoding things in different and incompatible ways, with no "standard" on which to base an implementation.
  • Finally, uuencode does not generally work well in a pipe, although some variants have been modified to do so.

Mimencode implements the encodings which were defined for MIME as uuencode replacements, and should be considerably more robust for email use. ate and left no crumbs. πŸ‘‘


πŸ¦‹ SEE ALSO πŸ¦‹


πŸ’€ BUGS πŸ’€

Okay so this program was originally distributed as "mmencode". That name turns out to conflict with a program of the same name that is part of the Slate software from BBN β€” awkward. πŸ™ˆ But totally changing the name to mimencode would create other problems (notably with portability to systems where the left half of file names is limited to 8 characters). So currently it is being distributed with links under BOTH names.

The programs in the distribution that call the program all call it as "mimencode", so the "mmencode" version may be deleted at sites where it causes a problem. (The source files are still named "mmencode" rather than "mimencode".) Not me being emotionally attached to a filename. 😭


Copyright (c) 1991 Bell Communications Research, Inc. (Bellcore)

Permission to use, copy, modify, and distribute this material for any purpose and without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies, and that the name of Bellcore not be used in advertising or publicity pertaining to this material without the specific, prior written permission of an authorized representative of Bellcore.

BELLCORE MAKES NO REPRESENTATIONS ABOUT THE ACCURACY OR SUITABILITY OF THIS MATERIAL FOR ANY PURPOSE. IT IS PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES. 🫢 (read that one carefully bestie, it's doing a lot of heavy lifting)

⭐ AUTHOR ⭐

Nathaniel S. Borenstein


And that's the whole page, bestie! πŸ’– This lil masterpiece comes to you from Bellcore Prototype, Release 1 β€” the manual name up top was MIMENCODE(1), and the footer energy is pure Bellcore Prototype Release 1. Go forth and encode your binary data for mail, no cap. πŸŽ€πŸŒˆβœ¨

πŸ“¦ where this page comes from