What is MIME type "application/x-troff"?
A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.
application/x-troff is a MIME type for documents written in the troff markup language. These files contain plain text mixed with formatting commands that need processing by text layout engines.
This format is used mainly on Unix-like systems. It enables text to be converted into formatted manuals and documentation by tools like roff, nroff, and groff.
- Unix manual pages generated for command-line help and system documentation
- Input for typesetting programs that produce formatted output for printing or terminal display
- Maintaining legacy documentation with rich text formatting instructions
Files associated with this MIME type include those with extensions such as MAN, MS, TR, T, ME, and ROFF.
The MIME type tells compatible applications how to process these files, ensuring that text is properly formatted before display. For more details, see the discussion on troff at Wikipedia.
Associated file extensions
.man, .ms, .tr, .t, .me, .roff
Usage Examples
HTTP Header
When serving content with this MIME type, set the Content-Type header:
Content-Type: application/x-troff
HTML
In HTML, you can specify the MIME type in various elements:
<a href="file.dat" type="application/x-troff">Download file</a>
Server-side (Node.js)
Setting the Content-Type header in Node.js:
const http = require('http');
http.createServer((req, res) => {
res.setHeader('Content-Type', 'application/x-troff');
res.end('Content here');
}).listen(3000);
Associated file extensions
.man, .ms, .tr, .t, .me, .roff
FAQs
What is the application/x-troff MIME type used for?
This MIME type is used for documents written in the troff typesetting language, most commonly found as Unix manual pages (man pages). Files sent with this type contain plain text mixed with formatting macros that must be processed by tools like groff or nroff to be readable.
How do I open a file with the .man or .roff extension?
On Linux or macOS, you can view these files using the terminal command man ./filename. On Windows, since the files are text-based, you can open them in any code editor like Notepad++ or VS Code to view the source content, though it will show formatting codes rather than the final layout.
Do web browsers render application/x-troff files?
No, modern browsers like Chrome, Firefox, and Edge do not have built-in engines to render troff formatting. If a web server delivers a file as application/x-troff, the browser will usually trigger a file download instead of displaying the content.
How do I configure Apache to serve troff files correctly?
To ensure your Apache server sends the correct headers, add the following line to your .htaccess or configuration file: AddType application/x-troff .man .tr .roff .me. This associates the relevant extensions with the MIME type.
How can I convert application/x-troff files to PDF or HTML?
You can use the GNU groff utility to convert these files. For example, use the command groff -man -Tpdf input.man > output.pdf to generate a PDF, or switch the flag to -Thtml to create a web-viewable version.
What does the "x-" prefix indicate in this MIME type?
The x- prefix stands for "experimental" or "extension," indicating that application/x-troff is a non-standard subtype not originally registered with the IANA. Despite this, it is the de facto standard for serving troff and man page files on the web.
Why does my file look like garbled text with dots at the start of lines?
You are likely viewing the raw source code of a .man or .roff file. The lines starting with dots (e.g., .TH, .SH) are macros that tell the layout engine how to format headers and paragraphs; you need a viewer like man or groff to see the formatted output.
General FAQ
What is a MIME type?
A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.
MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.
MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.
How do I find the MIME type for a file?
You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.
Why are multiple MIME types listed for one extension?
Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.