Uschi Renziehausen: oder Projektverwaltung: Verszeichnisstruktur to Text oder HTML

Hallo liebe Leute,

ich bin oft gezwungen, die Struktur umfangreicherer Websites so zu erläutern, daß auch diejenigen, die sich nicht täglich mit HTML und Konsorten oder gar Projektstrukturen beschäftigen, eigene Aktualisierungen vornehmen können.

Mein sehnlichster Wunsch ist ein Tool, daß es schafft, mir in möglichst strukturierter Form Verzeichnisbäume (Win32) und die daranhängenden Dateinamen in Text (am liebsten HTML, aber egal) verwandelt, den ich dann hinterher nur noch mit Erläuterungen versehen muß. So eine Art annotierter Sitemap halt.

Jibbet so was? Kennt einer von euch solche Software und hat damit schon rumgespielt?

Liebe Grüße, Uschi

  1. Hallo Uschi,

    es gibt genügend cgi-skripts, die verzeichnisse und unterverzeichnisse durchsuchen, und aus dem ganzen eine html-sitemap zu basteln, wenn du also perl, php o.ä hast, sollte es kein problem seín, z.B.:
    http://www.hotscripts.com/Detailed/1503.html (Perl)
    Ansonsten gibt es noch sehr viel mehr Skripte, die einen webbasierten *Explorer* (yeah!) implementieren, wenn Du Dir sowas in der Sprache Deiner Wahl anschaust, sollte es kein Problem sein, daraus ein Sitemap-Tool zu stricken.

    Viele Grüße
    hyperion

  2. Hi Uschi!

    Hier eine quick&dirty *.hta:
    Also den Source in ein textfile kopieren - den path ändern und dann als "folder.hta" abspeichern und mit doppelklick starten (wie'n SB ;-) - sollte für deine zwecke reichen...

    <html>
    <title>Folder 1.0</title>
    <!-- Folder 1.0 201000                                                     -->
    <!-- idea and development by Roman Pfarrhofer, r.pfarrhofer@happy-snack.at -->
    <HTA:APPLICATION ID=Folder" BORDER="normal" BORDERSTYLE="normal" CAPTION="yes" MAXIMIZEBUTTON="yes" MINIMIZEBUTTON="yes" SHOWINTASKBAR="yes" SINGLEINSTANCE="no" SYSMENU="yes" WINDOWSTATE="maximize" VERSION="1.0" STATUSBAR="YES">
    <body>
    <textarea id="tocopy" onkeypress="alert(window.event.keyCode)"></textarea>
    <script>
    // Achtung: Nie einen Backslash verwenden und ohne slash am schluß!
    path = "d:/temp";

    subfolder = new Array();
    fso = new ActiveXObject("Scripting.FileSystemObject");
    lenpath=path.length+1;
    function folder(x) {
    var f = fso.GetFolder(x);
    var sf = new Enumerator(f.SubFolders);
    subfolder+="<ul>";
    for(; !sf.atEnd(); sf.moveNext()) {
      subfolder+='<li><a href="'+String(sf.item()).substr(lenpath,String(sf.item()).length)+'/">'+String(sf.item()).substr(lenpath,String(sf.item()).length)+'/</li>';
      folder(sf.item());
      }
      subfolder+="</ul>";
    }
    folder(path);
    document.getElementById("tocopy").value=subfolder.split(String.fromCharCode(92)).join("/").toLowerCase();
    </script>
    </body>
    </html>

    CU Roman

    1. Hi Uschi!

      aber jetzt sollte es gehen...

      <html>
      <title>Folder 1.0</title>
      <!-- Folder 1.0 201000                                                     -->
      <!-- idea and development by Roman Pfarrhofer, r.pfarrhofer@happy-snack.at -->
      <HTA:APPLICATION ID=Folder" BORDER="normal" BORDERSTYLE="normal" CAPTION="yes" MAXIMIZEBUTTON="yes" MINIMIZEBUTTON="yes" SHOWINTASKBAR="yes" SINGLEINSTANCE="no" SYSMENU="yes" WINDOWSTATE="maximize" VERSION="1.0" STATUSBAR="YES">
      <body>
      <textarea id="tocopy"></textarea>
      <script>
      // Achtung: Nie einen Backslash verwenden und ohne slash am schluß!
      path = "d:/temp";

      subfolder = new Array();
      fso = new ActiveXObject("Scripting.FileSystemObject");
      lenpath=path.length+1;
      function folder(x) {
      var f = fso.GetFolder(x);
      var sf = new Enumerator(f.SubFolders);
      subfolder+="<ul>";
      for(; !sf.atEnd(); sf.moveNext()) {
        subfolder+='<li><a href="'+String(sf.item()).substr(lenpath,String(sf.item()).length)+'/">'+String(sf.item()).substr(lenpath,String(sf.item()).length)+'/</li>';
        folder(sf.item());
        }
        subfolder+="</ul>";
      }
      folder(path);
      document.getElementById("tocopy").value=subfolder.split(String.fromCharCode(92)).join("/").toLowerCase();
      </script>
      </body>
      </html>

      CU Roman

  3. Hi!

    Auf Uschis bitte hin, habe ich das skript noch so geändert, daß die ausgabe alle files beinhaltet:

    <html>
    <title>Folder 2.0</title>
    <!-- Folder 2.0 211000                                                     -->
    <!-- idea and development by Roman Pfarrhofer, r.pfarrhofer@happy-snack.at -->
    <HTA:APPLICATION ID=Folder" BORDER="normal" BORDERSTYLE="normal" CAPTION="yes" MAXIMIZEBUTTON="yes" MINIMIZEBUTTON="yes" SHOWINTASKBAR="yes" SINGLEINSTANCE="no" SYSMENU="yes" WINDOWSTATE="maximize" VERSION="1.0" STATUSBAR="YES">
    <body>
    <textarea id="tocopy"></textarea>
    <script>
    // Achtung: Nie einen Backslash verwenden und ohne slash am schluß!
    path = "d:/temp";

    subfolder = new Array();
    fso = new ActiveXObject("Scripting.FileSystemObject");
    lenpath=path.length+1;
    function folder(x) {
    var f = fso.GetFolder(x);
    var sf = new Enumerator(f.SubFolders);
    var sfn = new Enumerator(f.Files);
    subfolder+="<ul>";
    for(; !sf.atEnd(); sf.moveNext()) {
      subfolder+='<li><a href="'+String(sf.item()).substr(lenpath,String(sf.item()).length)+'/">'+String(sf.item()).substr(lenpath,String(sf.item()).length)+'/</li>';
      folder(sf.item());
      }
      for(; !sfn.atEnd(); sfn.moveNext()) {
        if (String(sfn.item())) {
         subfolder+='<li><a href="'+String(sfn.item()).substr(lenpath,String(sfn.item()).length)+'">'+String(sfn.item()).substr(lenpath,String(sfn.item()).length)+'</li>';
       }
    }
      subfolder+="</ul>";
    }
    folder(path);
    document.getElementById("tocopy").value=subfolder.split(String.fromCharCode(92)).join("/").toLowerCase();
    </script>
    </body>
    </html>

    Viel Spaß Uschi

    Roman