Index: tools/gformat.py
===================================================================
--- tools/gformat.py	(revision 10566)
+++ tools/gformat.py	(revision 10567)
@@ -1046,15 +1046,19 @@
 
 def usage():
-  print """Usage: %s <standalone [port] |test [test arguments]|static|dns>
-Examples:
-\tdns [outputdir]              =  Generate BIND compliant zone files in dns.
-\tstandalone                   =  Run configurator webserver [default port=8000]
-\twind-export                  =  Generate SQL import scripts for WIND database
+  print """Usage: %(prog)s <argument>
+Argument:
+\tstandalone [port]            =  Run configurator webserver [8000]
+\tdns [outputdir]              =  Generate BIND compliant zone files in dns [./dns]
 \tfull-export                  =  Generate yaml export script for heatmap.
-\tstatic [./static]            =  Generate all config files and store on disk
-\t                                with format ./static/%%NODE%%/%%FILE%%
-\ttest CNodeRick dnsmasq.conf  =  Receive output of CGI script
-\t                                for arguments CNodeRick/dnsmasq.conf
-\tlist <all|nodes|proxies>     =  List systems which marked up.
+\tstatic [outputdir]           =  Generate all config files and store on disk
+\t                                with format ./<outputdir>/%%NODE%%/%%FILE%% [./static]
+\ttest <node> <file>           =  Receive output of CGI script.
+\tlist <status> <items>        =  List systems which have certain status
+
+Arguments:
+\t<node>    = NodeName (example: HybridRick)
+\t<file>    = %(files)s
+\t<status>  = all|up|down|planned
+\t<items>   = systems|nodes|proxies
 
 NOTE FOR DEVELOPERS; you can test your changes like this:
@@ -1065,5 +1069,5 @@
   VIEW differences and VERIFY all are OK:
   $ diff -urI 'Generated' -r /tmp/pre /tmp/post
-"""
+""" % { 'prog' : sys.argv[0], 'files'  : '|'.join(files) }
   exit(0)
 
@@ -1222,9 +1226,11 @@
         store_yaml(datadump)
     elif sys.argv[1] == "list":
-      if sys.argv[2] == "nodes":
+      if len(sys.argv) < 4 or not sys.argv[2] in ["up", "down", "planned", "all"]:
+        usage()
+      if sys.argv[3] == "nodes":
         systems = get_nodelist()
-      elif sys.argv[2] == "proxies":
+      elif sys.argv[3] == "proxies":
         systems = get_proxylist()
-      elif sys.argv[2] == "all":
+      elif sys.argv[3] == "systems":
         systems = get_hostlist()
       else:
@@ -1232,5 +1238,7 @@
       for system in systems:
        datadump = get_yaml(system)
-       if datadump['status'] == "up":
+       if sys.argv[2] == "all":
+         print system
+       elif datadump['status'] == sys.argv[2]:
          print system
     elif sys.argv[1] == "create":
