nitls: document projects
[nit.git] / src / nitls.nit
index e50d40c..c94dbe2 100644 (file)
@@ -88,6 +88,24 @@ class ProjTree
        end
 end
 
+class AlphaEntityComparator
+       super Comparator
+       fun nameof(a: COMPARED): String
+       do
+               if a isa MGroup then
+                       return a.name
+               else if a isa ModulePath then
+                       return a.name
+               else
+                       abort
+               end
+       end
+       redef fun compare(a,b)
+       do
+               return nameof(a) <=> nameof(b)
+       end
+end
+
 var tc = new ToolContext
 
 var opt_keep = new OptionBool("Ignore errors and files that are not a Nit source file", "-k", "--keep")
@@ -169,7 +187,7 @@ if opt_tree.value then
                        end
                end
        end
-       ot.sort_with(new CachedAlphaComparator)
+       ot.sort_with(new AlphaEntityComparator)
        ot.write_to(stdout)
 end
 
@@ -197,10 +215,19 @@ if opt_project.value then
                if opt_paths.value then
                        list.add(path)
                else
+                       var d = ""
+                       var md = p.mdoc_or_fallback
+                       if md != null then
+                               if tc.opt_no_color.value then
+                                       d = ": {md.content.first}"
+                               else
+                                       d = ": {md.content.first.green}"
+                               end
+                       end
                        if tc.opt_no_color.value then
-                               list.add("{p.name} ({path})")
+                               list.add("{p.name}{d} ({path})")
                        else
-                               list.add("{p.name} ({path.yellow})")
+                               list.add("{p.name}{d} ({path.yellow})")
                        end
                end
        end