Introduction ------------ This is the "pl" utility for GNUstep. It is a very simple tool which reads, parses, serializes and deserializes property lists. I have noted the conspicuous lack of this tool in GNUstep. It is very useful for verifying whether plists are valid or not. The single utility does the job of the plparse, plser, pldes tools. It also provides something closer to the tool which existed under OPENSTEP/Mach. An example ---------- Suppose I have the following plist in infile.plist: { Key = ( item1, item2, item3 ); } The pl command should be invoked like so: pl < infile.plist This will produce the same plist as above as output, since the plist is valid. If there is an error in the plist as in the following example: { Key = ( item1, item2, item3 <-- missing close paren } When processing this plist you should get an error like the following: Jan 17 23:47:20 pl[1883] No local time zone specified. Jan 17 23:47:20 pl[1883] Using time zone with absolute offset 0. Jan 17 23:47:20 pl[1883] NAME:NSGenericException REASON:unexpected character (wanted ',' or ')') at line 5 Serializing and deserializing ----------------------------- Serializing or deserializing a plist is accomplished by using either the -output or -input command line arguments respectively. It is possible to serialize a plist like the one in the earlier example using the following command: pl < input.plist -output input.serialized You can then read the serialized file by issuing the following command: pl -input input.serialized This command should give you back the original plist. I hope you find it a useful. Thanks, Gregory John Casamento borgheron@mail.yahoo.com