mime 0.3.0

Shared MIME-info Database specification implementation


To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:


This package provides sub packages which can be used individually:

mime:mimedatabase - A minimal D application.

mime:mimetest - A minimal D application.

Mime

Shared MIME-info database specification implementation in D programming language. Shared MIME-info database helps to determine media type of file by its name or contents.

Build Status Coverage Status

Generating documentation

Ddoc:

dub build --build=docs

Ddox:

dub build --build=ddox

Examples

MimeDatabase

Run to detect mime types of files.

dub run mime:mimedatabase -- detect README.md source .gitignore lib/libmime.a examples/mimedatabase/bin/mimedatabase /var/run/acpid.socket dub.json

Automated mime path detection works only on Freedesktop platforms. On other systmes or for testing purposes it's possible to use mimepath option to set alternate path to mime/ subfolder. E.g. on Windows with KDE installed it would be:

dub run mime:mimedatabase -- --mimepath=C:\ProgramData\KDE\share\mime detect README.md source .gitignore lib/mime.lib examples/mimedatabase/bin/mimedatabase.exe dub.json

Run to print info about MIME types:

dub run mime:mimedatabase -- info application/pdf application/x-executable image/png text/plain text/html text/xml

Run to resolve aliases:

dub run mime:mimedatabase -- resolve application/wwf application/x-pdf application/pgp text/rtf text/xml

MimeTest

Run to test if this library is capable of parsing your local shared MIME-info database:

dub run mime:mimetest

As with mimedatabase example you may specify paths to mime folder(s) via command line:

dub run mime:mimetest -- --mimepath=C:\ProgramData\KDE\share\mime

Features

Implemented features

  • Reading and using mime.cache files to match file names against glob patterns, match file contents against magic rules, resolve aliases and find mime type parents.
  • Reading various shared MIME-info database files in mime/ subfolder, e.g. globs2, magic and others.

Missing features

  • Reading MIME types from mime/packages sources and mime/MEDIA folders (requires xml library).
  • Determining MIME type by XMLnamespace if document is xml (requires streaming xml library).
  • treemagic support.
Authors:
  • Roman Chistokhodov
Sub packages:
mime:mimedatabase, mime:mimetest
Dependencies:
none
Versions:
0.5.2 2020-Sep-29
0.5.1 2018-Oct-20
0.5.0 2018-Oct-10
0.4.3 2018-May-04
0.4.2 2016-Sep-26
Show all 17 versions
Download Stats:
  • 0 downloads today

  • 0 downloads this week

  • 0 downloads this month

  • 345 downloads total

Score:
0.8
Short URL:
mime.dub.pm