Als ich bei JMP anfing, las ich einen Beitrag, in dem vorgeschlagen wurde, alle meine Demos in einem einzigen Ordner namens „$DEMOS“ zu speichern. Ich glaube, @Jordan_Hiller war der Autor, aber ich kann die Quelle nicht finden.
Dieser Tipp war jedenfalls super. Ich speichere jede Demo unter dem Namen der Themen in diesem Ordner (z. B. „DOE, Functional Data.jrn“). Ich verwende außerdem Markdown, um Notizen für die meisten Demos zu schreiben, die ich als JSL-Dateien mit demselben Basisdateinamen speichere.
Zum Tool: Ich habe ein einfaches Tool entwickelt, das alle Dateien im Ordner $DEMOS/ anzeigt und das schnelle Filtern und Öffnen einer bestimmten Demo ermöglicht. Es gibt noch einige weitere Funktionen, aber das ist der Schwerpunkt.
Warum es wichtig ist: Besonders nützlich ist es, wenn ein Kunde während einer Demo etwas Unvorhergesehenes erwähnt und ich weiß, dass ich es bereits präsentiert habe. Ich kann Alt-Strg-Umschalt-D drücken, Schlüsselwörter eingeben und die gewünschte Demo in wenigen Sekunden öffnen. Siehe das GIF unten:

Was macht es sonst noch?
- Außerdem wird die zugehörige Notizdatei zum Bearbeiten geöffnet oder HTML aus dem in der Notizdatei enthaltenen Markdown erstellt.
- Damit Markdown funktioniert, müssen Sie die Python-Markdown-Bibliothek installieren. Anweisungen dazu finden Sie im Kommentarbereich oben im Skript.
- Das rote Dreieck verfügt über einige zusätzliche Tools/Optionen:
- Wählen Sie einige Demos in der Liste aus und klicken Sie dann auf „Datum für ausgewählte Demos“, um die aktuellsten Demos anzuzeigen. Dies ist nützlich, wenn ich Demos erstelle und Inhalte wiederverwende, aber die aktuellsten Inhalte verwenden möchte.
- Die Option „Alle Dateien anzeigen“ ändert die Liste so, dass alle Dateien im Ordner „$DEMOS“ angezeigt werden. Dies ist nützlich, wenn ich eine gespeicherte .jmpflow- oder .jmpdoe-Datei im Ordner „$DEMOS“ öffnen möchte.
- „Skriptbausteine anzeigen“ ändert die Liste in eine Liste von JSL-Dateien aus dem Ordner $DEMOS/Scripts/. Ich speichere Skriptbausteine mit demselben Namensschema wie Demos. Wenn ich beispielsweise telefoniere und jemand fragt, wie man eine COM-Port-Verbindung herstellt (und ich weiß, dass ich das schon einmal gemacht habe), kann ich zu den Skriptbausteinen wechseln, „COM“ eingeben und ein Beispiel öffnen.
- „Demo-Ordner öffnen“ öffnet den Ordner $DEMOS.
- „Alle Demo-Journaltexte abrufen“ greift auf den gesamten Text aller Journale im Ordner $DEMOS zu und wählt anschließend alles aus, was kein Textfeld ist, und blendet/schließt es aus. Dies ist nützlich, wenn ich eine Demo vorbereite und weiß, dass ich zuvor etwas erstellt habe, das ich kopieren möchte, mir aber den Journaltitel nicht mehr einprägen kann. Auf diese Weise kann ich die angezeigte Tabelle durchsuchen und/oder unterteilen und jedes Mal finden, wenn ich „Antwort-Screening“ in einem Demo-Journal erwähnt habe (es sind 30).
- Die Option „Kopie archivieren…“ erstellt eine Kopie des Journals im Ordner $DEMOS/Archive. Dies ist nützlich, wenn ich ein Journal aktualisieren, aber gleichzeitig die alte Version behalten möchte.
- „Skript bearbeiten“ bearbeitet die Skriptdatei.
So verwenden Sie es:
- Speichern Sie das Demo Library List-Tool in Ihrem Ordner $DOCUMENTS/My Scripts/ (oder speichern Sie es an einem beliebigen Ort und ändern Sie Zeile 18 im Skript).
- Wenn Sie dies noch nicht getan haben, erstellen Sie eine Pfadvariable zu Ihrem Demos-Ordner mit etwas wie: Set Path Variable ("DEMOS", "$DOCUMENTS/Demos/")
- Über Ansicht > Anpassen > Menüs und Symbolleisten können Sie einen benutzerdefinierten Befehl hinzufügen, der das Skript des Demo Library List Tools an dem von Ihnen gespeicherten Speicherort ausführt. Geben Sie ihm eine Tastenkombination. Ich verwende Alt-Strg-Umschalt-D.
- Zum Ausführen drücken Sie einfach die Tastenkombination, wählen das Textfeld oben aus und beginnen mit der Eingabe.
Ich hoffe, andere finden dies hilfreich. Gerne aktualisiere ich die Inhalte bei Bedarf. Teilen Sie mir Ihre Meinung mit.
Jed
Hallo @Jed_Campbell ,
Das ist wirklich nützlich, ich werde es so schnell wie möglich ausprobieren!
Danke,
Ben
Das ist eine tolle Idee, danke fürs Teilen des Skripts! Mein DEMOS-Verzeichnis verwendet Unterordner, daher habe ich Folgendes geändert:
lstFiles = Files In Directory( demo_location ); //Does not look in subfolders
Zu:
lstFiles = Files In Directory( demo_location, recursive( 1 ) ); // "recursive(n)" opens files down to the n'th subfolder level.