Quando ho iniziato a lavorare con JMP, ho letto un post che suggeriva di archiviare tutte le mie demo in un'unica cartella chiamata "$DEMOS" . Credo che l'autore fosse @Jordan_Hiller , ma non riesco a trovare la fonte.
Comunque, questo consiglio è stato ottimo. Salvo ogni demo con il nome degli argomenti inclusi in questa cartella (ad esempio, "DOE, Functional Data.jrn"). Uso anche il markdown per digitare le note per la maggior parte delle demo, che salvo come file .JSL con lo stesso nome di base.
Passiamo allo strumento: ho creato un semplice strumento che esamina tutti i file nella cartella $DEMOS/ e consente di filtrare e aprire rapidamente una demo specifica. Ci sono altre funzionalità, ma questo è l'obiettivo principale.
Perché è importante: l'utilizzo più frequente è quando, durante una demo, un cliente menziona qualcosa di imprevisto e so di averlo già presentato in precedenza. Posso premere Alt-Ctrl-Maiusc-D, digitare parole chiave e aprire la demo desiderata in pochi secondi. Guarda la GIF qui sotto:

Cos'altro fa?
- Verrà inoltre aperto il file di note associato per la modifica oppure verrà creato il codice HTML dal markdown contenuto nel file di note.
- Affinché il markdown funzioni, è necessario installare la libreria Python Markdown. Le istruzioni per farlo si trovano nella sezione commenti in cima allo script.
- Il triangolo rosso ha alcuni strumenti/opzioni extra:
- Seleziona alcune demo dall'elenco, quindi scegli "Date per la selezione" per vedere quale è la più recente. Questo è utile quando creo demo e riciclo contenuti, ma voglio riciclare i contenuti più recenti.
- L'opzione "Mostra tutti i file" modifica l'elenco mostrando tutto il contenuto della cartella $DEMOS. Questo è utile se voglio aprire un file .jmpflow o .jmpdoe salvato nella cartella $DEMOS.
- "Show Script Building Blocks" modifica l'elenco in un elenco di file .JSL presenti nella cartella $DEMOS/Scripts/. Salvo i blocchi di script con lo stesso schema di denominazione delle demo. Ad esempio, se sono al telefono e qualcuno mi chiede come effettuare una connessione alla porta COM (e so di averlo già fatto), posso passare ai blocchi di script, digitare "COM" e aprire un esempio.
- Apri cartella demo apre la cartella $DEMOS.
- "Ottieni tutto il testo del diario demo" estrae tutto il testo da tutti i diari nella cartella $DEMOS, quindi seleziona e nasconde/esclude tutto ciò che non è una casella di modifica testo. Questa opzione è utile quando preparo una demo e so di aver già creato qualcosa che voglio copiare, ma non ricordo il titolo del diario. In questo modo, posso cercare e/o creare sottoinsiemi nella tabella che si apre e trovare tutte le volte in cui ho menzionato "Screening delle risposte" in un diario demo (sono 30).
- L'opzione "Archivia una copia..." crea una copia del diario nella cartella $DEMOS/Archive. È utile quando voglio aggiornare un diario ma conservare anche la versione precedente.
- Modifica script modifica il file script.
Come usarlo:
- Salva lo strumento Demo Library List nella cartella $DOCUMENTS/My Scripts/ (oppure salvalo ovunque e modifica la riga 18 nello script).
- Se non l'hai già fatto, crea una variabile di percorso per la tua cartella demos con qualcosa come: Set Path Variable ("DEMOS", "$DOCUMENTS/Demos/")
- Usa Visualizza > Personalizza > Menu e barre degli strumenti per aggiungere un comando personalizzato che esegua lo script Demo Library List Tool dove lo hai salvato e assegnagli una scorciatoia da tastiera. Io uso Alt-Ctrl-Maiusc-D.
- Per eseguirlo, basta premere la scorciatoia da tastiera, selezionare la casella di testo in alto e iniziare a digitare.
Spero che altri lo trovino utile. Sarò lieto di apportare aggiornamenti se necessario. Fatemi sapere cosa ne pensate.
Jed
Ciao @Jed_Campbell ,
È davvero utile, lo proverò al più presto!
Grazie,
Ben
Ottima idea, grazie per aver condiviso lo script! La mia directory DEMOS utilizza delle sottocartelle, quindi ho modificato:
lstFiles = Files In Directory( demo_location ); //Does not look in subfolders
A:
lstFiles = Files In Directory( demo_location, recursive( 1 ) ); // "recursive(n)" opens files down to the n'th subfolder level.