Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python.announce > #1152
| Path | csiph.com!usenet.pasdenom.info!weretis.net!feeder1.news.weretis.net!feeder.erje.net!eu.feeder.erje.net!xlned.com!feeder1.xlned.com!newsfeed.xs4all.nl!newsfeed2.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail |
|---|---|
| Return-Path | <phd@phdru.name> |
| X-Original-To | python-announce-list@python.org |
| Delivered-To | python-announce-list@mail.python.org |
| X-Spam-Status | OK 0.000 |
| X-Spam-Evidence | '*H*': 1.00; '*S*': 0.00; 'inspired': 0.05; 'represents': 0.05; 'gpl': 0.07; '1.0.1': 0.09; 'attributes': 0.09; 'git': 0.09; 'newline': 0.09; 'release.': 0.09; 'url:github': 0.09; 'url:software': 0.09; 'values);': 0.09; '0.3.0': 0.16; '0.5.0': 0.16; '0.6.0': 0.16; '1.0.0': 0.16; 'attributes,': 0.16; 'attributes.': 0.16; 'bugs.': 0.16; 'clone': 0.16; 'email addr:phdru.name': 0.16; 'email name:phd': 0.16; 'encoding.': 0.16; 'filesystem': 0.16; 'fuse': 0.16; 'get,': 0.16; 'header:X-Face:1': 0.16; 'minus': 0.16; 'nodes': 0.16; 'numbered': 0.16; 'numbering': 0.16; 'read-only.': 0.16; 'sorting': 0.16; 'subject:XML': 0.16; 'tags.': 0.16; 'to:addr:python-announce- list': 0.16; 'all.': 0.16; 'ignore': 0.16; 'separate': 0.22; 'installation': 0.23; 'header:User-Agent:1': 0.23; 'convenient': 0.24; 'initial': 0.24; 'file.': 0.24; 'sort': 0.25; 'shown': 0.26; 'values': 0.27; 'fixed': 0.29; '(c)': 0.29; 'xml': 0.29; "doesn't": 0.30; 'characters': 0.30; 'skip:g 30': 0.30; 'especially': 0.30; "i'm": 0.30; 'comments': 0.31; 'lines': 0.31; 'download:': 0.31; 'extract': 0.31; 'minor': 0.31; 'name;': 0.31; 'url:mc': 0.31; 'file': 0.32; 'text': 0.33; 'announce': 0.33; 'programmers': 0.33; 'but': 0.35; 'version': 0.36; 'shows': 0.36; 'useful': 0.36; 'charset:us-ascii': 0.36; 'example,': 0.37; 'virtual': 0.37; 'structure': 0.39; 'to:addr:python.org': 0.39; 'helps': 0.61; 'new': 0.61; 'content-disposition:inline': 0.62; 'show': 0.63; 'real': 0.63; 'chance': 0.65; 'license': 0.66; 'header:Reply-To:1': 0.67; 'home': 0.69; 'walk': 0.74; 'distinguish': 0.84; 'reply-to:addr:python.org': 0.84; '2013': 0.98 |
| Date | Mon, 25 Nov 2013 14:06:47 +0100 |
| From | Oleg Broytman <phd@phdru.name> |
| To | Python Announce Mailing List <python-announce-list@python.org> |
| Subject | XML VFS 1.0.1 for Midnight Commander |
| MIME-Version | 1.0 |
| Content-Type | text/plain; charset=us-ascii |
| Content-Disposition | inline |
| X-Attribution | phd |
| X-Face | "4chVP^f8; 3Bi>x"ic0%DuP(ZLyn:; kzQ1njs]5,GRZG<{<\~`|Shxi7|)d|8uO~HFRfyym {[xs@OYG]2Q]0#}0sjJp`1^1+B6]A2+{9fW=S<O7^"hul]^|AGtiI7SkYF-2VD?UH*h_!zuCIf+^F7 c0x8?W,UfhCAx^YY#1ALhvG\2yG}LW:)zw#1;Yajq"hK~S |
| X-Operating-System | Debian GNU/Linux |
| X-Url | http://phdru.name/ |
| Mail-Followup-To | phd@phdru.name, python-list@python.org |
| User-Agent | Mutt/1.5.21 (2010-09-15) |
| X-Mailman-Approved-At | Tue, 26 Nov 2013 09:48:30 +0100 |
| X-BeenThere | python-announce-list@python.org |
| X-Mailman-Version | 2.1.15 |
| Precedence | list |
| Reply-To | python-list@python.org, phd@phdru.name |
| List-Id | Announcement-only list for the Python programming language <python-announce-list.python.org> |
| List-Unsubscribe | <https://mail.python.org/mailman/options/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=unsubscribe> |
| List-Archive | <http://mail.python.org/pipermail/python-announce-list/> |
| List-Post | <mailto:python-announce-list@python.org> |
| List-Help | <mailto:python-announce-list-request@python.org?subject=help> |
| List-Subscribe | <https://mail.python.org/mailman/listinfo/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=subscribe> |
| Approved | python-announce-list@python.org |
| Newsgroups | comp.lang.python.announce |
| Message-ID | <mailman.3221.1385455711.18130.python-announce-list@python.org> (permalink) |
| Lines | 75 |
| NNTP-Posting-Host | 2001:888:2000:d::a6 |
| X-Trace | 1385455711 news.xs4all.nl 15955 [2001:888:2000:d::a6]:58178 |
| X-Complaints-To | abuse@xs4all.nl |
| Xref | csiph.com comp.lang.python.announce:1152 |
Show key headers only | View raw
Hello!
I'm pleased to announce an XML Virtual FileSystem for Midnight Commander
version 1.0.1.
WHAT IS IT
View an XML file in Midnight Commander as a filesystem.
WHAT'S NEW in version 1.0.1 (2013-11-24)
Fixed a few minor bugs.
WHAT'S NEW in version 1.0.0 (2013-11-23)
With lxml.etree-based implementation show only child namespaces
(calculated as combined namespaces minus parent's namespaces).
WHAT'S NEW in version 0.6.0 (2013-11-22)
Refactored _list() and attrs2text() to be completely generic.
WHAT'S NEW in version 0.5.0 (2013-11-19)
Added lxml.etree-based implementation.
WHAT'S NEW in version 0.4.0 (2013-11-19)
Added ElementTree-based implementation.
WHAT'S NEW in version 0.3.0 (2013-11-16)
Initial release. Implementation based on minidom.
WHERE TO GET
Home page: http://phdru.name/Software/mc/xml.html
Download: http://phdru.name/Software/mc/xml
git clone http://git.phdru.name/extfs.d.git
git clone git://git.phdru.name/extfs.d.git
Installation instructions: http://phdru.name/Software/mc/INSTALL.html
The VFS represents tags as directories; the directories are numbered to
distinguish tags with the same name; numbering also helps to sort tags by their
order in XML instead of sorting them by name. Attributes, text nodes and
comments are represented as text files; attributes are shown in a file named
"attributes", attributes are listed in the file as name=value lines (I
deliberately ignore a small chance of newline characters in values); names and
values are reencoded to the console encoding. Text nodes and comments are
collected in a file named "text", stripped and reencoded. The filesystem is
read-only.
Implementation based on minidom doesn't understand namespaces, it just shows
them among other attributes. ElementTree-based implementation doesn't show
namespaces at all. Implementation based on lxml.etree shows namespaces in a
separate file "namespaces".
It is useful to have a top-down view on an XML structure but it's especially
convenient to extract text values from tags. One can get, for example, a
base64-encoded image - just walk down the VFS to the tag's directory and copy
its text file to a real file.
The VFS was inspired by a FUSE xmlfs: https://github.com/halhen/xmlfs
AUTHOR
Oleg Broytman <phd@phdru.name>
COPYRIGHT
Copyright (C) 2013 PhiloSoft Design
LICENSE
GPL
Oleg.
--
Oleg Broytman http://phdru.name/ phd@phdru.name
Programmers don't die, they just GOSUB without RETURN.
Back to comp.lang.python.announce | Previous | Next | Find similar | Unroll thread
XML VFS 1.0.1 for Midnight Commander Oleg Broytman <phd@phdru.name> - 2013-11-25 14:06 +0100
csiph-web