xmldirlisting

Project Information

                           _     _ _      _ _     _   _
           __  ___ __ ___ | | __| (_)_ __| (_)___| |_(_)_ __   __ _
           \ \/ / '_ ` _ \| |/ _` | | '__| | / __| __| | '_ \ / _` |
            >  <| | | | | | | (_| | | |  | | \__ \ |_| | | | | (_| |
           /_/\_\_| |_| |_|_|\__,_|_|_|  |_|_|___/\__|_|_| |_|\__, |
--------------------------------------------------------------|___/-------------



 What Exactly Does xmldirlisting?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 The xmldirlisting project allows you to easily generate an XML file which
 contains the directory listing of the current working directory.  The scripts
 travels downwards the whole directory tree recursively and gathers information
 about the files and directories.  The resulting XML tree can be manipulated and
 processed with other tools.  There are also example files included, which are
 showing how to create a HTML directory listing with the help of an XSLT
 stylesheet processor (will be discussed later).

 Please note, that the script needs a Python 3 interpreter installed.  Most
 distributions are shipping Python 2 interpreters, but they optionally provide
 also the newer ones.  Because the script was written with the Python 3 syntax
 in mind, another interpreter would probably fail.  So if your interpreter
 complains about syntax errors, check your interpreters' version at first.


 What's the License for this Project?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 Copyright (C) 2010  Stefan Haller <haliner AT googlemail DOT com>

 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 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.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.


 What's Included?
~~~~~~~~~~~~~~~~~~

 * xmldirlisting:
                  Python 3 script, produces XML dirlisting

 * dirlisting.*:
                  Example files for use with an XML/XSLT processor.


 How Should I Install the Script?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 There are no special needs --- you might even not install the xmldirlisting
 script and instead run it within the source distribution.  But most likely you
 want to install it in some way into your system.  Use the setup.py script for
 doing this job.


 How to Invoke?
~~~~~~~~~~~~~~~~

 The script will generate the directory listing for current working directory,
 so you probably want to change your working directory first.  Executing the
 script will make it print the xml data to it's standard output.

 Example usage:

   ./xmldirlisting >dirlisting.xml


 How Can I Further Process the XML file?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 One example usage is the creation of an HTML dirlisting, which gives access
 to all files of a directory.  The example files included in the source
 distribution are exactly doing this.  You need an XSLT processor like
 xmlstarlet, Xalan or other similar tools, if you want to use the example files.

 Example usage:

   ./xmldirlisting >dirlisting.xml
   xmlstarlet tr dirlisting.xslt dirlisting.xml >index.html

 The file `index.html' will now contain a full hyperlinked HTML directory
 listing including all subdirectories.  It uses HTML, CSS, JavaScript and of
 course XSLT for generating the HTML file.  Extending the template file might be
 a good start for your own solution, which satisfies your needs.


 How Can I Contact the Developer?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

 Stefan Haller <haliner AT googlemail DOT com>
 Project's homepage:  https://launchpad.net/xmldirlisting
 (Including answer contact, bug tracker and much more.)

Download

Please note that there are multiple version of each download available. The *.tar.gz tarball contains the original and unmodified files. In the *.zip files the line endings are converted to the Windows style.

http://dl.dropbox.com/u/1996083/Projects/index.html (See directory “dirlisting.py”.)

Example Page

Have a look at the download page to see an example page generated with this script. The page is automatically created with the current development version of the dirlisting.py script.

Git-Repository

git clone 'http://dl.dropbox.com/u/1996083/Projects/git/xmldirlisting.git'

Launchpad Integration

This project uses Launchpad for project hosting and management. Launchpad offers a project overview, an answer contact, a bug tracker, a translation framework and much more. Visit the project's Launchpad homepage at: https://launchpad.net/xmldirlisting

Changelog

2011-06-05  Stefan Haller  <haliner AT googlemail DOT com>

  Version 0.5:
  * dirlisting.xslt: XSLT stylesheet outputs XHTML doctype now.


2011-02-26  Stefan Haller  <haliner AT googlemail DOT com>

  Version 0.4:
  * dirlisting.py: Renamed to "xmldirlisting".
  * xmldirlisting: Completely rewritten. Now outputs an XML directory listing.
  * dirlisting.css, dirlisting.js, dirlisting.xslt, dirlisting.dtd: Added
    example files for xml transformation with an xslt processor.
  * README: Wrote readme file which should explain the basic usage.


2010-05-26  Stefan Haller  <haliner AT googlemail DOT com>

  Version 0.3:
  * dirlisting.py: Parameter "--disable-javascript" added.


2010-05-15  Stefan Haller  <haliner AT googlemail DOT com>

  Version 0.2:
  * dirlisting.py: Completely rewritten. Requires Python 2.x!
    Uses OptParse interface. CSS stylesheet and Javascript separated.


2010-03-05  Stefan Haller  <haliner AT googlemail DOT com>

  Version 0.1:
  * Initial release.

Current State of Development

This project is under “semiactive” development. Personally I need the script daily and if something doesn’t behave well, I’ll fix it. New feature are implemented when they are required. If you have any suggestions or you’ve found any bugs, feel free to contact me!

Parts of this page have been generated automatically. Last update: Mon, 06 Jun 2011 22:37:25 +0200