docs.js
[gnome.introspection-doc-generator] / docs.js
diff --git a/docs.js b/docs.js
index 88c56c8..c0b6f26 100644 (file)
--- a/docs.js
+++ b/docs.js
@@ -51,9 +51,10 @@ File.list(__script_path__ + '/templates/').forEach(function(f) {
         continue;
     }
     langs.push({
-         cls_template       : new Template(__script_path__ + '/templates/' + f + '/class.html'),
-         cls_ix_template    : new Template(__script_path__ + '/templates/' + f + '/class_ix.html'),
-         reference_template : new Template(__script_path__ + '/templates/' + f + '/references.html'),
+        name : f,
+        cls_template       : new Template(__script_path__ + '/templates/' + f + '/class.html'),
+        cls_ix_template    : new Template(__script_path__ + '/templates/' + f + '/class_ix.html'),
+        reference_template : new Template(__script_path__ + '/templates/' + f + '/references.html'),
     });
 });
 
@@ -77,6 +78,7 @@ ns_list.forEach(function(ns_name)
    
     var ns = Introspect.ns(ns_name);
     
+    // gir goes in top level...
     if (File.exists(ns.gir_file)) {
         File.copyFile(ns.gir_file, outputdir + '/'+ ns.gir_filename, Gio.FileCopyFlags.OVERWRITE);
     }
@@ -84,11 +86,14 @@ ns_list.forEach(function(ns_name)
     
     ns['left_bar'] = cls_ix_template.process(ns);
 
-    // namespace template
-    Gio.simple_write(outputdir + '/'+ ns_name +  '.html', cls_template.process(ns));
-    
-    // left bar index of elements in namespace...
-    Gio.simple_write(outputdir + '/_ix_'+ ns_name +  '.shtml', cls_ix_template.process(ns));
+    langs.forEach(function(lang) {
+        // namespace template
+        Gio.simple_write(outputdir + '/'+ lang.name+ '/' +ns_name +  '.html', lang.cls_template.process(ns));
+        
+        // left bar index of elements in namespace...
+        Gio.simple_write(outputdir + '/'+ lang.name + '/_ix_'+ ns_name +  '.shtml', lang.cls_ix_template.process(ns));
+            
+    });
      
     
     var actions = {
@@ -103,17 +108,16 @@ ns_list.forEach(function(ns_name)
         // we flag GLib as a GObject lib...
         idx[i]= ns_name == 'GLib' ? 1 : ns[i].length ;
         ns[i].forEach( function(n) {
-            
-            
-            Gio.simple_write(outputdir + '/'+ ns_name + '.' + n + '.html', 
-                cls_template.process(
-                    XObject.extend(
-                        Introspect.factory(actions[i], ns_name, n),
-                        { 'left_bar' :ns['left_bar'] }
-                    )
+            var odata = XObject.extend(
+                    Introspect.factory(actions[i], ns_name, n),
+                    { 'left_bar' :ns['left_bar'] }
+                )
+            langs.forEach(function(lang) {
+                    
+                Gio.simple_write(outputdir +  '/'+ lang.name + '/' + ns_name + '.' + n + '.html', 
+                    lang.cls_template.process(odata)
                 )
-            )
-                       
+            });
             console.log(ns_name + '.' +n);
         }); 
     }