If one symlinks the file command to mimetype it will behave a little more compatible, see ``--file-compat''. Commandline options to specify alternative magic files are not implemented the same because of the conflicting data formats. Also the wording of the descriptions will differ.
For naming switches I followed the manpage of file(1) version 4.02 when possible. They seem to differ completely from the spec in the 'utilities' chapter of IEEE Std 1003.1-2001 (POSIX).
TODO: this method now just returns one match for each method (globs, magic, etc.).
A single '-' won't be considered a seperator between options and filenames anymore, but becomes identical to ``--stdin''. ( You can still use '--' as seperator, but that is not backward compatible with the original file command. ) Also the default becomes to print descriptions instead of mimetypes.
%f for the filename
%d description
%m mime type
Alignment is not available when using this, you need to post-process the output to do that.
To use this option IO::Scalar needs to be installed.
$HOME/.local/share/mime
/usr/local/share/mime
/usr/share/mime
See also the ``XDG Base Directory Specification'' <
The program exits with a non-zero exit value if either the commandline arguments failed, a module it depends on wasn't found or the shared mime-info database wasn't accesable. See File::MimeInfo for more details.
mimetype doesn't provide a switch for looking inside compressed files because it seems to me that this can only be done by un-compressing the file, something that defeats the purpose. On the other hand the option should exist for strict compatibility with file(1). Possibly a subclass should be made for this one day.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.