My favorites | Sign in
Project Logo
                
Search
for
Updated Dec 05, 2007 by Karl.Norby
Labels: Featured, Phase-Design, Phase-Requirements
Overview  

Introduction

I wrote this set of scripts after I was given the task of maintaining a fairly old website. I wanted a way to write shell scripts to make broad changes to site, using other tools such as tidy, but I couldn't find any program that would, so I wrote my own. Following the UNIX philosophy of programs, every tool is meant to do a very small and specific task so that they can be pieced together to do something more complex. Most of the commands use xpath on some level, but there is no absolute standard to way these are meant to work.

Design

Everything is written in python, and almost everything uses the lxml library. Every tool has a similar design. There is a function by the same name as file, and then a main function which parses argv. It is meant to possible to import xmltools in python and use the same basic API, although I haven't bothered to do that yet.

Naming

All the scripts are given a name of the form 'xmlTools.toolname'. The idea behind this scheme is to make it easy to see all available tools with tab completion and to represent the connected nature of them all.


Sign in to add a comment
Hosted by Google Code