The format of Shared MIME Database magic values

Kevin Krammer krammer at kde.org
Fri Dec 13 12:34:53 PST 2013


On Friday, 2013-12-13, 20:11:34, Jerome Leclanche wrote:
> There is a Qt 4 port of this.

And there should also be the original Qt4 based code in the kdelibs 
repository.

Cheers,
Kevin

> As for windows support... I've been down that road, trying to provide
> it. Windows' feature set doesn't even sort of come close; it only
> provides real mime types for a limited set of registered extensions,
> and it doesn't provide any of the very useful features such as
> subclassing, etc. In the end, I gave up and am only providing
> xdg-based mime types. I think Qt made an excellent choice in providing
> the xdg database itself. But if you choose against that, good luck.
> 
> Anyway you can have a look at my python-based mimetype lib. Magic
> matches are implemented on line 192 onwards.
> 
> https://github.com/Adys/python-xdg/blob/master/xdg/mime.py
> 
> J. Leclanche
> 
> 
> On Fri, Dec 13, 2013 at 7:56 PM, Alexander Kamyshnikov
> 
> <axill777 at gmail.com> wrote:
> > Yes, i had. But i decided to write my own implementation because:
> > a) my project is forced to use Qt4 only (clients have very old versions of
> > modified Red Hat with XDG_DATA_DIRS undefined);
> > b) Windows support (through reading registry HKCR/.ext keys) is required;
> > c) I'm very curious :)
> > 
> > You think i'm should look deeply at the qmimedatabase.cpp however?
> > 
> > 
> > 2013/12/13 Jerome Leclanche <adys.wh at gmail.com>
> > 
> >> Have you had a look at the Qt 5 mimetype module?
> >> 
> >> http://qt-project.org/doc/qt-5.0/qtcore/qmimedatabase.html
> >> J. Leclanche
> >> 
> >> 
> >> On Fri, Dec 13, 2013 at 7:35 PM, Alexander Kamyshnikov
> >> 
> >> <axill777 at gmail.com> wrote:
> >> > Hi all!
> >> > I'm developing the implementation of MIME database in C++/Qt for one
> >> > commercial program (requirement managment tool, if one will be
> >> > interested).
> >> > So my question is: the format of magic values to compare file header
> >> > data
> >> > with is not specified exactly in the spec. I mean the magic/match/value
> >> > attribute.
> >> > What exactly mean those magic strings from
> >> > /usr/share/mime/packages/freedesktop.org.xml from my Kubuntu?
> >> > 1) "\1\9"
> >> > 2) "\376\067\0\043"
> >> > 3) "\x8AMNG\x0D\x0A\x1A\x0A"
> >> > Second is looks like octal number in C notation, third - hexadecimal,
> >> > but
> >> > about first i'm not sure. It is just "usual" decimal value?
> >> > What format exactly should use magic values?
> >> > Thanks for your help. WBR, Alexander
> >> > 
> >> > P.S. Spec i'm using living here:
> >> > 
> >> > http://standards.freedesktop.org/shared-mime-info-spec/shared-mime-info
> >> > -spec-latest.html#id2661973 P.S. <match> items can be nested. But i
> >> > can't find yet the clear way to implement their storage
> >> > programmatically. Some kind of tree, or reverse polish notation should
> >> > be used here? nevermind
> >> > 
> >> > _______________________________________________
> >> > xdg mailing list
> >> > xdg at lists.freedesktop.org
> >> > http://lists.freedesktop.org/mailman/listinfo/xdg
> 
> _______________________________________________
> xdg mailing list
> xdg at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/xdg
-- 
Kevin Krammer, KDE developer, xdg-utils developer
KDE user support, developer mentoring
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/xdg/attachments/20131213/5bc12cce/attachment.pgp>


More information about the xdg mailing list