1 XML Virtual FileSystem for Midnight Commander
5 View an XML file in Midnight Commander as a filesystem.
9 Version 1.1.5 (2015-07-08)
10 Set directories/files date/time to the last modification time of the XML
15 Version 1.1.4 (2015-03-21)
16 Minor documentation update.
18 Version 1.1.3 (2015-03-14)
19 Fix a minor bug in handling namespaces (lxml).
21 Version 1.1.2 (2015-01-10)
22 Changed link to installation instructions.
24 Version 1.1.1 (2014-07-17)
25 Fix a bug in removing excessive namespaces (lxml).
27 Version 1.1.0 (2013-11-26)
28 Show comment(s) before the root element.
30 Version 1.0.0 (2013-11-23)
31 With lxml.etree-based implementation show only child namespaces
32 (calculated as combined namespaces minus parent's namespaces).
34 Version 0.3.0 (2013-11-16)
35 Initial release. Implementation based on minidom.
39 Home page: http://phdru.name/Software/mc/xml.html
40 Download: http://phdru.name/Software/mc/xml
41 git clone http://git.phdru.name/extfs.d.git
42 git clone git://git.phdru.name/extfs.d.git
44 Installation instructions: http://phdru.name/Software/mc/INSTALL.html
47 The VFS represents tags as directories; the directories are numbered to
48 distinguish tags with the same name; numbering also helps to sort tags by their
49 order in XML instead of sorting them by name and prevents name clash when tag
50 names coincide with the names of special files used by XML VFS. Attributes,
51 text nodes and comments are represented as text files; attributes are shown in
52 a file named "attributes", attributes are listed in the file as name=value
53 lines (I deliberately ignore a small chance of newline characters in values);
54 names and values are reencoded to the console encoding. Text nodes and comments
55 are collected in a file named "text", stripped and reencoded. The filesystem is
58 Implementation based on minidom doesn't understand namespaces, it just shows
59 them among other attributes. ElementTree-based implementation doesn't show
60 namespaces at all. Implementation based on lxml.etree shows namespaces in a
61 separate file "namespaces".
63 It is useful to have a top-down view on an XML structure but it's especially
64 convenient to extract text values from tags. One can get, for example, a
65 base64-encoded image - just walk down the VFS to the tag's directory and copy
66 its text file to a real file.
68 The VFS was inspired by a FUSE xmlfs: https://github.com/halhen/xmlfs
72 Oleg Broytman <phd@phdru.name>
75 Copyright (C) 2013-2015 PhiloSoft Design