40tude Dialog - raccolta script
Creare un file di testo contenente la lista dei comandi
Segnare un thread come letto, chiuderlo e passare al prossimo messaggio non letto
Ignorare un thread, chiuderlo e passare al prossimo messaggio non letto
Ignorare un messaggio e passare al prossimo messaggio non letto
Mettere punti temporanei ad un messaggio
Aprire l'help a tutto schermo
Tornare al messaggio "genitore" di un messaggio selezionato
Copiare nella clipboard informazioni sul messaggio selezionato
Copiare nella clipboard il Message-ID del messaggio selezionato
Creare un cestino
Eseguire un altro programma
Aumentare di 1 il punteggio e contrassegnare un messaggio
Cancellare la lista dei contrassegni
Sentire un suono quando arrivano risposte ai propri messaggi
Sentire suoni diversi a seconda che le risposte siano dirette o no
Scaricare automaticamente messaggi e/o email ogni tot minuti
Avviare e fermare i timer
Identificare i messaggi contrassegnati e/o formattare la data
Formattare la data con "(oggi)"
Aggiungere ai messaggi il titolo del brano che si sta ascoltando con Winamp
Aggiungere ai messaggi il titolo del brano che si sta ascoltando con Foobar
Passare col tasto Invio dallo zoom degli header allo zoom del body
Passare col tasto Invio dallo zoom del body allo zoom degli header
Nascondere o visualizzare l'albero delle parti
Visualizzare l'elenco delle risposte ai propri messaggi (PostShow)
Eseguire automaticamente PostShow se ci sono nuove risposte
Inserire una regola di plonk con Expire relativo al giorno corrente
Salvare messaggi in file di testo aventi il Subject come nome
Visualizzare le Face usando ColorFace.exe di Alien321
Visualizzare le Face usando FaceView.exe di Maik Prinz
Visualizzare un'immagine codificata con FidoCAD
Sostituire i caratteri speciali Windows CP-1252 con i loro equivalenti ISO
Inserire una regola di plonk comprendente l'indirizzo email
Creare un file di testo contenente la lista dei comandi
autore: MLC
tipo: Script personali
descrizione:
Salva in un file di testo l'elenco di tutti i comandi presenti in Dialog, nella forma:
Caption: ...................... Category: ...................... Name: ......................
dove "Name:" è il dato che a noi interessa, perché è l'esatto nome che deve comparire come argomento di un comando ADo() all'interno di uno script.
Alla fine del file troverete sotto la categoria "Scripts" anche il nome di ogni vostro script, nella forma Script_NomeScript: i vostri script sono nuovi comandi di Dialog!
avvertenze:
All'interno del codice un commento vi segnala dove inserire il vostro percorso per il file.
Eseguite ogni tanto questo script per tenere aggiornata la lista dei vostri script.
codice: ListaComandi
Segnare un thread come letto, chiuderlo e passare al prossimo messaggio non letto
autore: n.d.
tipo: Script personali
descrizione:
Questo script, associato ad una hotkey (io ho scelto la "V" per "Visto"), è secondo me molto utile durante la navigazione attraverso gli header appena scaricati. Se infatti un argomento non interessa, con il tasto "V" tutto il thread viene chiuso, segnato come letto, e si passa direttamente al successivo messaggio non letto.
avvertenze:
Nessuna.
codice: MarkThrReadCloseSkip
Ignorare un thread, chiuderlo e passare al prossimo messaggio non letto
autore: Antonio 'Gandalf' Favata
tipo: Script personali
descrizione:
Questo script, associato ad una hotkey, ignora tutto il thread e passa direttamente al successivo messaggio non letto.
avvertenze:
Nessuna.
codice: IgnoreAndSkipToNextThread
Ignorare un messaggio e passare al prossimo messaggio non letto
autore: Andreas Loch
tipo: Script personali
descrizione:
Il tasto di default di Dialog per ignorare un messaggio è "I"; se si desidera anche passare automaticamente al successivo messaggio non letto, può essere utile riassegnare la "I" a questo script.
avvertenze:
Nessuna.
codice: IgnoreAndSkipToNextUnreadMessage
Mettere punti temporanei ad un messaggio
autore: MLC
tipo: Script personali
descrizione:
Assegna un punteggio provvisorio al messaggio selezionato, dopo aver chiesto quanti punti si vogliono dare.
Io lo attivo con la hotkey "Shift+P" (per "Punti").
Il punteggio assegnato in questo modo non è permanente, perché non fa parte delle regole di punteggi e azioni, e quindi viene resettato alla prima riapplicazione delle regole.
Può comunque essere utile per evidenziare temporaneamente determinati messaggi.
avvertenze:
Compilate questo script con Ctrl+F9 ed eseguitelo con l'hotkey fuori dallo script editor: infatti lo script fa uso della funzione PostKey(), che all'interno dello script editor viene intercettata in modo diverso.
codice: MettiPunti
Aprire l'help a tutto schermo
autore: RickM
tipo: Script personali
descrizione:
Associandogli un pulsante sulla toolbar e/o una hotkey, apre l'help di Dialog in una finestra a grandezza massima.
avvertenze:
Nessuna.
codice: Showhelp
Tornare al messaggio "genitore" di un messaggio selezionato
autore: MLC
tipo: Script personali
descrizione:
In un thread molto lungo e ramificato è utile poter visualizzare il cosiddetto "parent" (genitore), cioè il messaggio del quale quello selezionato è una risposta.
E' una potenzialità di cui molti ex utenti di Agent sentivano la mancanza.
Associando questo script al tasto "backspace", ricreate esattamente il comportamento di Agent.
avvertenze:
Compilate questo script con Ctrl+F9 ed eseguitelo con l'hotkey fuori dallo script editor: infatti lo script fa uso della funzione PostKey(), che all'interno dello script editor viene intercettata in modo diverso.
codice: GoToParent
Copiare nella clipboard informazioni sul messaggio selezionato
autore: Alain Guerin
tipo: Script personali
descrizione:
Questo script legge le informazioni presenti negli header del messaggio selezionato e copia nella clipboard Message-ID, autore, email e ora dell'invio.
E' utile per citare un altro messaggio quando si risponde a qualcuno, per esempio per aiutarlo a trovare un vecchio post. Per avvertire che la copia nella clipboard è avvenuta con successo, alla fine si sente un beep.
avvertenze:
Nessuna.
codice: GetMessageReference
Copiare nella clipboard il Message-ID del messaggio selezionato
autore: Ho solo semplificato lo script precedente di Alain Guerin.
tipo: Script personali
descrizione:
Quando si cita un messaggio, si riporta il suo Message-ID. Questo script rende l'operazione molto semplice, perché basta selezionare il messaggio e attivare lo script per copiare nella clipboard il Message-ID.
Per avvertire che la copia è avvenuta con successo, alla fine si sente un beep.
avvertenze:
Nessuna.
codice: MessageIDtoClip
Creare un cestino
autore: vari, ultimo contributo da Dirk Straka
tipo: Script personali (dalla versione di Dialog 2.0.14.1(Beta 37) in poi).
descrizione:
In Dialog manca un cestino dove mandare temporaneamente i messaggi che si cancellano. Se si desidera averne uno, per poi svuotarlo successivamente, è possibile crearlo con questo script e un piccolo accorgimento.
avvertenze:
Bisogna prima creare una cartella e denominarla in modo che sia la prima in ordine alfabetico tra tutti i vostri gruppi/cartelle che iniziano con lo stesso carattere. Lo script è fatto per una cartella chiamata !Cestino, perché è probabile che non abbiate altri gruppi/cartelle che iniziano con un punto esclamativo. Se decidete di chiamarla in un altro modo, ricordate di cambiare nello script il terzo Postkey, che attualmente fornisce Shift 1, cioè !.
Poi copiate lo script e compilatelo con Ctrl+F9 (lo script fa uso della funzione PostKey() ). Infine scegliete l'icona del cestino e mettetela sulla toolbar. Eventualmente associategli anche l'hotkey Del se volete evitare la normale cancellazione.
codice: TrashBin
Eseguire un altro programma
autore: n.d.
tipo: Script personali
descrizione:
Questo script permette di lanciare un altro programma dall'interno di Dialog, premendo un pulsante o tramite l'hotkey che gli assegnerete.
avvertenze:
All'interno del codice un commento vi segnala dove inserire il vostro percorso per il file.
codice: Shot
Aumentare di 1 il punteggio e contrassegnare un messaggio
autore: MLC
tipo: Script personali
descrizione:
In Dialog un messaggio può essere contrassegnato per poi tornarvi più tardi usando Shift+Alt+Left o Shift+Alt+Right. E' un peccato però che non vi sia alcun riscontro visivo dei messaggi contrassegnati.
Questo script è un primo passo per ottenere un segno grafico sui messaggi contrassegnati, a patto però che nelle proprie regole di punteggio si assegnino sempre punti pari: infatti esso, oltre a contrassegnare il messaggio, ne aumenta il punteggio di uno, facendolo diventare dispari; poi uno script successivo, OnArticleListPaint, marcherà con un asterisco i messaggi con punteggio dispari.
avvertenze:
Assegnate a questo script una hotkey (per esempio il + del tastierino numerico), poi compilatelo con Ctrl+F9 ed eseguitelo con l'hotkey fuori dallo script editor: infatti lo script fa uso della funzione PostKey(), che all'interno dello script editor viene intercettata in modo diverso.
codice: Add_1_and_Mark
Cancellare la lista dei contrassegni
autore: MLC
tipo: Script personali
descrizione:
Dopo aver passato in rassegna tutti i messaggi contrassegnati, con questo script ne cancelliamo la lista e rimettiamo a posto il loro punteggio.
avvertenze:
Purtroppo l'applicazione del punteggio avviene per il solo newsgroup selezionato, quindi questo script va riapplicato per ogni gruppo in cui avevamo contrassegnato i messaggi.
codice: ClearMarkers
Sentire un suono quando arrivano risposte ai propri messaggi
autore: Marcus Mönnig
tipo: Script eventi
descrizione:
Quando si scaricano nuovi header è bello poter sentire un suono se ci sono risposte ai propri messaggi: questo script dell'autore di Dialog realizza proprio questo.
Ho aggiunto allo script originale una condizione (la parte che inizia con and), per fare in modo che non si senta alcun suono se il messaggio proviene da me (capita molto spesso di rispondere a chi ci ha risposto).
avvertenze:
Leggete attentamente le istruzioni all'interno dello script e modificatelo di conseguenza.
Per inserire questo script scegliete il tab Script eventi, selezionate dalla lista l'evento OnXover e infine copiate e incollate lo script nella pagina a destra.
codice: OnXover
Sentire suoni diversi a seconda che le risposte siano dirette o no
autore: MLC
tipo: Script eventi
descrizione:
Ho modificato ulteriormente lo script precedente, in modo da avere un suono per le risposte proprio dirette a me, e un altro suono per quelle dirette a qualcun altro che mi aveva risposto, e così via...
avvertenze:
Per inserire questo script scegliete il tab Script eventi, selezionate dalla lista l'evento OnXover e infine copiate e incollate lo script nella pagina a destra.
Ricordatevi poi di inserire i vostri dati all'interno dello script nella sezione "Impostazioni". Quindi salvate e compilate.
codice: OnXover
Scaricare automaticamente messaggi e/o email ogni tot minuti
autore: Tarkus
tipo: Script eventi
descrizione:
Se non abbiamo problemi di tempi di connessione e restiamo online a lungo, può essere comodo far sì che Dialog scarichi automaticamente dai nostri server i nuovi messaggi e/o le nuove email a intervalli regolari decisi da noi.
Per ottenerlo si usano i timer, Dialog ce ne fornisce due, e i corrispondenti eventi OnTimer1 e OnTimer2, che contengono le istruzioni che devono essere eseguite ogni volta che scade l'intervallo di tempo stabilito per il timer. I due timer però vanno prima abilitati e forniti di un intervallo a nostra scelta; questo può essere fatto nell'evento OnStartUp, insieme ai comandi per lo scaricamento dei messaggi se quando apriamo Dialog siamo già online.
Se in seguito, continuando a usare Dialog, vi sconnettete dalla rete, vi consiglio di inserire anche gli script Off e On descritti nella prossima sezione per fermare e avviare i timer.
avvertenze:
Nello script OnStartUp mettete gli intervalli di tempo che desiderate per i timer, tenendo presente che sono espressi in millisecondi, quindi 60000 corrisponde ad un minuto.
Per inserire questi script scegliete il tab Script eventi, selezionate successivamente dalla lista gli eventi OnStartUp, OnTimer1 e OnTimer2, infine copiate e incollate i corrispondenti script nella pagina a destra.
codice: OnStartUp, OnTimer1, OnTimer2.
Avviare e fermare i timer
autore: MLC
tipo: Script personali
descrizione:
Tutti coloro che usano lo script precedente per scaricare automaticamente i messaggi si saranno a volte trovati nella situazione di ricevere una serie di "socket error" da Dialog perché si erano disconnessi dalla rete ma i timer erano ancora abilitati e quindi ad intervalli davano i comandi per scaricare i messaggi dal server.
Per evitare questo basta crearsi uno script personale, che ho chiamato Off, per disabilitare i timer, e un altro, On, per riabilitarli quando si è di nuovo connessi.
avvertenze:
Nello script On mettete gli intervalli di tempo che preferite, così come già avevate fatto per l'evento OnStartUp nello script precedente.
Notate che in entrambi ho inserito anche un "beep" per avere una sorta di feedback quando si preme il pulsante assegnato (o, se preferite, l'hotkey).
Identificare i messaggi contrassegnati e/o formattare la data
autore: MLC
tipo: Script eventi
descrizione:
Questo script esegue due compiti diversi (ma potete anche scegliere di tenerne uno solo, cancellando nello script la parte che non vi interessa):
1) mette un asterisco alla sinistra di ogni punteggio dispari (che per noi significa "contrassegnato")
2) trasforma la data nel formato --/--/-- hh.mm , eliminando i secondi.
avvertenze:
Leggete attentamente le istruzioni all'interno dello script e modificatelo di conseguenza.
Per inserire questo script scegliete il tab Script eventi, selezionate dalla lista l'evento OnArticleListPaint e infine copiate e incollate lo script nella pagina a destra.
codice: OnArticleListPaint
Formattare la data con "(oggi)"
autore: Antonio 'Gandalf' Favata
tipo: Script eventi
descrizione:
Invece dello script precedente, se volete formattare la data in un modo molto semplice ma originale, usate questo script che sostituisce "(oggi)" alla data che compare nel pannello degli header se questa coincide con la data corrente. Quindi per esempio al posto di 22/05/04 11.25.48 avremo (oggi) 11.25, se oggi è il 22/05/04.
Notate che vengono anche rimossi i secondi.
All'interno dello script c'è anche l'opzione per invertire l'ordine in cui compaiono data e ora; se si lascia "true" vedrete prima l'ora e poi la data: nel nostro esempio avremo 11.25 (oggi).
avvertenze:
Ricordatevi di inserire il corretto numero per la costante colDate.
La parola "(oggi)" può essere formattata come meglio credete.
Cambiate il valore della costante "invert" in "false" se preferite vedere prima la data e poi l'ora.
Per inserire questo script scegliete il tab Script eventi, selezionate dalla lista l'evento OnArticleListPaint e infine copiate e incollate lo script nella pagina a destra.
codice: OnArticleListPaint
Aggiungere ai messaggi il titolo del brano che si sta ascoltando con Winamp
autore: mkrnic
tipo: Script eventi
descrizione:
Questo script aggiunge il titolo di ciò che si sta ascoltando con Winamp 2.x a un X-header o alla fine del proprio messaggio e/o email.
Dato che lo script viene applicato quando il messaggio viene spedito, se il brano che ascoltavate è finito il suo titolo non verrà più scritto.
avvertenze:
L'autore non garantisce il funzionamento con tutte le versioni Winamp 2.x e i vari Windows.
L'ha testato con Winamp 2.90 e 2.91 in Win2k e WinXP.
E' imperativo disabilitare nelle preferenze di Winamp lo scrolling del titolo nella taskbar.
Non preoccupatevi se compilando vedete dei messaggi di avvertimento: dipendono dalle scelte true/false e non compromettono il funzionamento dello script.
Leggete attentamente le istruzioni all'interno dello script e modificatelo di conseguenza.
Per inserire questo script scegliete il tab Script eventi, selezionate dalla lista l'evento OnBeforeSendingMessage e infine copiate e incollate lo script nella pagina a destra.
codice: OnBeforeSendingMessage per Winamp
Aggiungere ai messaggi il titolo del brano che si sta ascoltando con Foobar
autore: Jernej Simoncic
tipo: Script eventi
descrizione:
Questo script aggiunge a un X-header o alla fine del proprio messaggio (e/o email) ciò che appare sulla barra del titolo di Foobar2000.
Se non state ascoltando nessun brano, lo script non aggiunge niente.
avvertenze:
Foobar2000 permette di cambiare ciò che appare nella sua barra del titolo (in "Preferences - Display - Title formatting"), quindi si può sfruttare questa sua capacità per visualizzare le informazioni come preferiamo.
Leggete attentamente le istruzioni all'interno dello script e modificatelo di conseguenza.
Per inserire questo script scegliete il tab Script eventi, selezionate dalla lista l'evento OnBeforeSendingMessage e infine copiate e incollate lo script nella pagina a destra.
codice: OnBeforeSendingMessage per Foobar2000
Passare col tasto Invio dallo zoom degli header allo zoom del body
autore: MLC e Alan Ford e poi non so
tipo: Script di Windows Message
descrizione:
Se stiamo scorrendo gli header col pannello zoomato, questo script ci permette, premendo Invio, di:
- leggere il messaggio nel pannello del body zoomato se ne abbiamo già scaricato il corpo,
oppure, se non ne abbiamo ancora il corpo:
- scaricare e leggere il corpo del messaggio nel pannello del body zoomato se siamo online,
- marcare il messaggio per scaricarlo più tardi se siamo offline.
avvertenze:
Usatelo insieme allo script successivo per tornare dal pannello del corpo al pannello degli header.
Per inserire questo script, dopo aver scelto il tab Script di Windows Message fate "File - Nuovo script..." (Ctrl+N), poi dalla lista a discesa Controllo scegliete ARTICLELV e dalla lista a discesa Messaggio scegliete WM_KEYDOWN.
Quindi copiate e incollate lo script nella nuova pagina che si sarà creata.
codice: ARTICLELV_WM_KEYDOWN
Passare col tasto Invio dallo zoom del body allo zoom degli header
autore: n.d.
tipo: Script di Windows Message
descrizione:
Va usato in coppia con lo script precedente, per tornare al pannello degli header zoomato usando sempre e solo il tasto Invio.
avvertenze:
Per inserire questo script, dopo aver scelto il tab Script di Windows Message fate "File - Nuovo script..." (Ctrl+N), poi dalla lista a discesa Controllo scegliete BODYEDIT e dalla lista a discesa Messaggio scegliete WM_KEYDOWN.
Quindi copiate e incollate lo script nella nuova pagina che si sarà creata.
codice: BODYEDIT_WM_KEYDOWN
Nascondere o visualizzare l'albero delle parti
autore: Doktor
tipo: Script di Windows Message
descrizione:
Il pannello dell'articolo è composto di tre sezioni: in alto c'è il pannello grigio dove compare l'XFace e altre informazioni, sotto c'è il body dell'articolo a sinistra e l'albero delle parti a destra.
Con questo script possiamo nascondere o visualizzare di nuovo l'albero delle parti, semplicemente facendo un doppio clic sul pannello grigio di sopra.
avvertenze:
Per inserire questo script, dopo aver scelto il tab Script di Windows Message fate "File - Nuovo script..." (Ctrl+N), poi dalla lista a discesa Controllo scegliete BODYHEADERHEADEREDIT e dalla lista a discesa Messaggio scegliete WM_LBUTTONDBLCLK.
Quindi copiate e incollate lo script nella nuova pagina che si sarà creata.
codice: BODYHEADERHEADEREDIT_WM_LBUTTONDBLCLK
Visualizzare l'elenco delle risposte ai propri messaggi (PostShow) - v1.4 (09/Apr/04)
autore: MLC
tipo: Script eventi e Script personali
descrizione:
Con questi due script, OnBeforeSavingMessage e PostShow, si può avere un memo che mostra la lista delle risposte arrivate ai propri messaggi, entro una specificata profondità, cioè: 1 per le risposte dirette, 2 per includere anche le risposte alle risposte dirette, e così via... (la profondità viene indicata anche visualmente da una diversa indentazione).
Naturalmente, per ottenere questo bisogna aver impostato un FQDN unico per i propri messaggi.
Tenete presente che l'identificazione delle risposte si basa sul vostro FQDN e che i vostri messaggi non verranno registrati.
Nella prima riga di ogni nota appare la sua profondità (diversamente indentata secondo la profondità stessa) e il suo numero (tra parentesi quadre). Inoltre ogni nota nel memo contiene i campi che decidete di voler vedere tra i seguenti: From (l'autore della risposta), NG (il newsgroup o la lista dei newsgroup dove appare la risposta), Subject (l'argomento del messaggio), Date (la data e l'ora della risposta) e Message-ID (l'identificativo della risposta). Di default questi campi compaiono tutti.
E' anche possibile specificare per quali newsgroup NON si vuole che le risposte vengano registrate dagli script: questo può essere necessario quando si partecipa a newsgroup ad alto traffico, dove il numero delle risposte è elevatissimo, per non inflazionare il memo con questo tipo di risposte.
Quindi, se il nome di un newsgroup compare nella vostra lista di esclusione, nessuna risposta indirizzata a quel newsgroup (anche in crosspost) verrà registrata.
Inoltre, quando il memo è visualizzato si hanno le seguenti opzioni:
- cancellare tutta la lista (con il pulsante "Reset");
- cancellare una nota (selezionandola con un doppio clic sul suo numero o trascinando il mouse, e premendo poi il pulsante "Canc Nota");
- andare a un messaggio (facendo doppio clic sul suo Message-ID e premendo Ctrl+V e Invio nella finestra seguente);
- tenere la lista (con il pulsante "Continua", o con i tasti Invio o Esc).
Cliccando sul link seguente potete vedere come appare il memo quando si chiama PostShow: screenshot.
Per chiamare lo script PostShow sarà utile creare per esso un pulsante sulla toolbar e/o una hotkey.
Quando non avete ancora ricevuto risposte, eseguire PostShow può produrre due diversi effetti a seconda delle vostre preferenze: un suono a vostra scelta, oppure viene visualizzato il memo vuoto.
Ringrazio Enrico C e daRkSidE per il loro duro lavoro di "beta tester" :-) e poi anche gli altri frequentatori di i.c.s.n. per le loro preziose idee.
Un grande grazie anche a Alien321 che mi ha risolto un problema che avevo quando negli header le References potevano disporsi su più righe.
avvertenze:
Attenzione a non cancellare le note mentre state scaricando i corpi dei messaggi: potreste cancellare le nuove note che lo script sta scrivendo.
Ciascuno dei due script ha bisogno che all'inizio inseriate alcune vostre informazioni: il vostro percorso per il file Post.txt, il vostro FQDN unico, il percorso per i suoni a vostra scelta, se li volete, oppure in mancanza dei suoni se volete che appaia il memo ad avvisarvi che non ci sono risposte.
Inoltre potete, se volete, mettere le vostre preferenze per altri aspetti: la profondità entro cui registrare le risposte (di default è 4), la lista dei newsgroup da escludere (di default è vuota), i campi che volete visualizzare (di default ci sono tutti), i colori, il font, lo stile e la grandezza del font, la grandezza della finestra...
Per farlo, leggete i commenti nella sezione Impostazioni di entrambi gli script.
Il file Post.txt non dovete crearlo voi: se non esiste, lo crea lo script PostShow.
Per inserire lo script OnBeforeSavingMessages, dopo aver scelto il tab Script eventi selezionatelo dalla lista a sinistra, quindi copiate e incollate il codice nella pagina a destra.
Per inserire lo script PostShow, scegliete il tab Script personali, create un nuovo script con questo nome, infine copiate e incollate il codice.
codice: OnBeforeSavingMessage, PostShow
Eseguire automaticamente PostShow se ci sono nuove risposte
autore: MLC
tipo: Script eventi (dalla versione di Dialog 2.0.14.1(Beta 37) in poi).
descrizione:
Se si usa un timer per scaricare automaticamente i messaggi (vedi relativo script) è anche desiderabile poter richiamare automaticamente lo script PostShow quando ci sono nuove risposte ai nostri messaggi.
In questo modo possiamo dedicarci ad altro, anche avere Dialog minimizzato nella taskbar, ma se arrivano risposte c'è una finestra popup che ci avvisa.
Purtroppo non è possibile richiamare PostShow con un timer perché lo script viene eseguito mentre si stanno ancora scaricando i messaggi e quindi non ha ancora fatto a tempo a registrare le eventuali nuove risposte.
Ma Antonio 'Gandalf' Favata su i.c.s.n. ha suggerito la grande idea di integrare PostShow nell'evento OnWorkQueueEmpty, così viene eseguito solo al termine dei "lavori in corso".
Ho pensato allora di aggiungere un controllo sull' "età" del file Post.txt (dove vengono registrate le risposte), in modo che, se il memo non è vuoto, non venga visualizzato inutilmente quando non ci sono risposte nuove.
avvertenze:
Leggete i commenti nella sezione delle costanti e mettete i vostri valori.
Avendo una connessione dialup o dovendo scaricare molti messaggi conviene mettere in numSec un valore di almeno 60 (mettendo 60 il file Post.txt deve avere un' "età" inferiore a un minuto per essere considerato "nuovo"). Se mettete un valore troppo basso, correte il rischio che il file venga considerato "vecchio" e allora il memo non viene visualizzato.
Tenete anche conto che se state scaricando messaggi con allegati molto grossi (per esempio dei file binari) questo script viene eseguito solo al termine dello scaricamento, quindi in queste occasioni vi conviene richiamare PostShow manualmente.
Per inserire lo script scegliete il tab Script eventi e selezionate OnWorkQueueEmpty dalla lista a sinistra, quindi copiate e incollate il codice nella pagina a destra.
codice: OnWorkQueueEmpty
Inserire una regola di plonk con Expire relativo al giorno corrente
autore: MLC
tipo: Script personali
descrizione:
Quando si inserisce un Expire in una regola di plonk esso ha una forma assoluta, del tipo
!markread From "nome_troll" Expire:20040521
dove 20040521 significa 21 maggio 2004.
Non è quindi possibile dire a Dialog "Expire tra 30 giorni" relativamente alla data odierna.
Questo script riesce in qualche modo a "relativizzare" l'Expire, trasformando automaticamente il tempo (in mesi) di Expire che vogliamo nella forma assoluta voluta da Dialog.
avvertenze:
Potete mettere le vostre preferenze all'interno delle costanti:
- il tipo di plonk: sul From o sul Subject; di default è sul From.
- il numero di mesi di durata del plonk; di default è 1.
Lo script fa uso della funzione PostKey(), quindi valgono le solite avvertenze: compilatelo con Ctrl+F9 ed eseguitelo con una hotkey o un pulsante fuori dallo script editor. Nella combinazione di tasti per la hotkey non usate il tasto Ctrl perché crea problemi con la finestra "Punteggi e azioni", e lo script non funzionerebbe.
codice: ExpireRelative
Salvare messaggi in file di testo aventi il Subject come nome
autore: MLC
tipo: Script personali
Aggiornamento 27 giugno 2005:
I caratteri probiti nei nomi dei file invece d'essere soppressi ora vengono sostituiti col carattere "_", per rendere più evidente che c'è stata una sostituzione.
Ho anche aggiunto le funzioni per svuotare la clipboard, così se un altro programma (per esempio un clip manager, io uso ClipX) la sta bloccando, Dialog avverte che non può accedervi.
Attenzione però che altri programmi che stanno monitorando la clipboard, come Free Download Manager, non fanno funzionare lo script e non si hanno messaggi d'errore. In questi casi è sufficiente disabilitare l'opzione di monitoraggio clipboard di questi programmi, senza doverli chiudere.
descrizione:
Con questo script potete rapidamente salvare un messaggio in un file di testo il cui nome è il Subject del messaggio, semplicemente selezionando il messaggio e premendo l'hotkey che gli avrete associato.
Dato che i caratteri : / \ * | < > ? " sono vietati nei nomi dei file, se sono presenti nel Subject al loro posto viene inserito un "_"; quindi un messaggio con Subject Che cosa <pensi>? viene salvato nel file Che cosa_pensi__.txt.
Se salvate altri messaggi con lo stesso Subject (cioè i follow-up), avete due possibili tipi di backup, che potete scegliere nella sezione "Impostazioni" dello script:
- Se fileUnico = 1 ogni Subject ha un unico file e ogni follow-up viene aggiunto nello stesso file.
Alla fine di ogni messaggio c'è una linea di asterischi per distinguerli meglio l'uno dall'altro. - Se fileUnico = 0 ogni messaggio viene salvato in un file diverso: se il primo è "Leggi qui.txt", i file seguenti saranno "Leggi qui[01].txt", "Leggi qui[02].txt", ecc. (i Re: o R: iniziali vengono rimossi).
E' inoltre possibile scegliere se salvare, oltre al corpo del messaggio, anche tutti gli header del messaggio o solo una parte di essi: in quest'ultimo caso verranno salvati soltanto gli header From, Subject, Newsgroups, Date e Message-ID.
avvertenze:
Nella sezione "Impostazioni" dovete:
- scrivere nella costante path un percorso valido per la cartella dove verranno salvati i file
- scegliere il valore 1 oppure 0 per la costante fileUnico
- scegliere true o false per la costante allHeaders
codice: FileSubject
Visualizzare le Face usando ColorFace.exe di Alien321
autore: MLC
tipo: Script personali
descrizione:
Alcuni newsreader, per esempio MesNews tramite plug-in, permettono di inserire la cosiddetta Face, cioè una specie di X-Face a colori:
questa per esempio l'ho catturata da un post di Lidrie su it.comp.software.newsreader.
Dialog non ha questa possibilità, però possiamo riuscire a visualizzare le Face dei messaggi che le contengono usando questo script che interagisce con questi due programmi: ColorFace.exe (428 KB) e Face.exe (81,3 KB).
ColorFace.exe è un programma scritto da Alien321 che visualizza la Face facendo doppio clic sulla sua finestra dopo averla copiata dagli header nella clipboard. Ringrazio Alien321 per avermi dato il permesso di usarlo!
Face.exe è un piccolo programma che ho scritto per eseguire ColorFace, mandargli il doppio clic per vedere l'immagine, e infine chiuderlo automaticamente dopo 10 secondi se non lo chiudiamo noi prima.
Lo script che ho fatto per Dialog (Face.ds) serve per copiare nella clipboard le informazioni necessarie ed eseguire Face.exe nel caso sia presente una Face, altrimenti un messaggio avverte che il post selezionato non la contiene.
Face.exe e ColorFace.exe possono essere scaricati in un unico file zip: Face&ColorFace.zip (300 KB).
Chi già possiede ColorFace.exe può scaricare solo Face.zip (77,6 KB).
avvertenze:
Entrambi i file Face.exe e ColorFace.exe si devono trovare nella stessa cartella.
Non eseguiteli voi, ma lasciate che sia lo script Face.ds a occuparsene, altrimenti otterrete solo un messaggio di errore (a meno che non abbiate già in memoria la codifica di una Face).
Nello script Face.ds, sezione "Impostazioni", dovete soltanto inserire un percorso valido per il file Face.exe nella costante FacePath. Salvate, compilate e assegnategli una hotkey a vostra scelta.
codice: Face
Visualizzare le Face usando FaceView.exe di Maik Prinz
autore: Maik Prinz
tipo: Script personali
descrizione:
Una nuova possibilità per visualizzare le Face è data dal programma FaceView.exe di Maik Prinz insieme al suo script FaceToView.
Questa volta la Face si integra perfettamente in Dialog, e sfrutta un FaceView.ini (creato da FaceView.exe nella sua stessa cartella) per controllare la posizione e la durata di visualizzazione della Face.
avvertenze:
Scaricate il file FaceView.exe dal sito di Maik Prinz, poi create un nuovo script personale FaceToView, il cui codice si trova nel link qui sotto. Assegnategli una hotkey per richiamarlo quando volete vedere una Face.
Un consiglio: per individuare facilmente un messaggio che contiene una Face, mettete in "Punteggio e azioni"
!setcolor(default;$dddddd) Header {^Face:}
in questo modo ogni messaggio che contiene una Face avrà uno sfondo grigio (o del colore che vi pare, basta cambiare $dddddd).
Nello script FaceToView.ds, sezione "Configuration settings", dovete specificare se il vostro sistema operativo è Windows 98 o Windows XP, e inserire un percorso valido per il file FaceView.exe nella costante PfadToFaceView.Nota: per farlo funzionare anche con Windows98, occorre mettere nella cartella la dll gdiplus.dll (facilmente reperibile in rete, per esempio qui).
codice: FaceToView
Visualizzare un'immagine codificata con FidoCAD
autore: MLC
tipo: Script personali
descrizione:
In alcuni newsgroup si ha l'esigenza di mostrare immagini nei propri messaggi, per esempio per rappresentare schemi o progetti. Su Usenet però (ad esclusione dei gruppi binari) non si possono allegare immagini bitmap, o gif, o di qualunque altro formato grafico anche se zippato o altrimenti codificato. I messaggi devono sempre essere in formato testo. La grafica ASCII non viene molto in aiuto, è scomoda e i risultati sono sempre piuttosto deludenti.
Frequentando il newsgroup it.hobby.fai-da-te ho scoperto l'esistenza di FidoCAD, un programma freeware per Windows, in italiano, che permette di creare disegni e salvarli in puro formato ASCII-7 bit, quindi adatto per essere inserito in un messaggio Usenet.
Ad esempio, la seguente lista FidoCAD corrisponde a questa immagine (è un disegno di Fabbrogiovanni, tratto da un suo messaggio su it.hobby.fai-da-te).
Dopo un po' che vedevo questo tipo di messaggi ho pensato che sarebbe stato comodo avere uno script che al premere di un pulsante in Dialog mi facesse vedere immediatamente l'immagine in FidoCAD. Le alternative possibili di cui ho letto richiedevano sempre un certo numero di operazioni: selezionare, copiare, eseguire il programma o un suo file temporaneo... Così ho fatto questo script che automatizza il tutto: basta trovarsi su un messaggio che al suo interno contenga una lista FidoCAD, quindi premere un pulsante o una hotkey, e si aprirà il programma FidoCAD con l'immagine già visualizzata. Se per sbaglio si chiama lo script su un messaggio che non contiene codice FidoCAD, non si crea alcun danno: semplicemente non succede niente.
All'apertura di FidoCAD purtroppo c'è uno splash screen, che però per fortuna dura solo due-tre secondi e poi sparisce da solo, oppure sparisce subito se avete la forza di cliccarci sopra (o, mi sembra, di premere un tasto)... Per evitarlo avevo fatto un altro script che usa un altro programma, FidoView: questo software non ha splash screen ma ha un altro difetto: quando visualizza l'immagine emette un beep, che per me è anche peggio. Considerando poi che i due software "pesano" circa uguale (il download è intorno ai 500 KB per ciascuno), e che FidoCAD permette anche di creare immagini, alla fine ho scelto lo script per quest'ultimo.
Comunque anche l'altro script è pronto e funzionante: se interessa chiedetemelo, sono meno di 2 KB.
avvertenze:
Perché lo script possa riconoscere in un messaggio il blocco di codice FidoCAD, bisogna che esso sia stato inserito nel messaggio secondo "le regole": il blocco deve iniziare con [FidoCAD], non ci devono essere indentazioni, deve terminare con almeno una riga vuota. Altro testo aggiunto, sia prima che dopo, non crea alcun problema.
Create un nuovo script personale e chiamatelo FidoCAD, poi copiate e incollate il codice che trovate nel link qui sotto.
All'inizio dello script c'è una sezione "Impostazioni" dove dovrete inserire il vostro percorso per il programma 'FidoCAD.exe' e per il file temporaneo che lo script crea. Poi dovete solo salvare, compilare e assegnargli una hotkey o un pulsante a vostra scelta.
codice: FidoCAD
Sostituire i caratteri speciali Windows CP-1252 con i loro equivalenti ISO
autore: Enrico C
tipo: Script personali
descrizione:
Se si copia del testo da una pagina web o da un documento Word può capitare di copiare alcuni caratteri speciali Windows CP-1252, che in un messaggio su Usenet possono risultare problematici. Per approfondire la questione fate riferimento a questa pagina: www.cs.tut.fi/~jkorpela/www/windows-chars.html#subst e alle spiegazioni all'interno dello script.
In generale, avendo questo script, i passi da fare quando si vuole incollare in un messaggio del testo 'problematico' sono questi:
- Copiare il testo
- Selezionare la finestra principale di Dialog ed eseguire lo script (per esempio con una hotkey)
- Incollare il testo nel nuovo messaggio che si vuole comporre
In pratica i passi 1 e 3 sono i soliti che si fanno quando si copia e incolla. Si usa in più il passo 2 (lo script) per 'purificare' il messaggio. Si noti che si può usare questo script per 'purificare' e copiare un testo in un qualsiasi documento, non solo in un nuovo messaggio di Dialog.
avvertenze:
Create un nuovo script personale e chiamatelo PasteSpecial, poi copiate e incollate il codice che trovate nel link qui sotto. Dopo dovete solo salvare, compilare e assegnargli una hotkey o un pulsante a vostra scelta.
codice: PasteSpecial
Inserire una regola di plonk comprendente l'indirizzo email
autore: MLC
tipo: Script personali
descrizione:
Quando si inserisce una regola di plonk Dialog automaticamente aggiunge nella finestra "Punteggi e azioni" una azione !markread From "nick" (!markread è l'azione di default, che volendo può essere cambiata inserendo nel file settings.ini, sezione [Scoring], una linea del tipo DefPlonk=!delete).
C'è però un problema: scrivere per esempio !markread From "edo" fa sì che vengano marcati come letti non solo i messaggi di ogni edo, ma anche quelli di ogni Edoardo, o di spiedo. Per sicurezza bisognerebbe ogni volta trasformare l'indicazione del nick in una espressione regolare, e questo, oltre a essere scomodo, comporta anche per Dialog un maggior lavoro e un certo rallentamento nell'applicazione delle regole.
La soluzione più semplice sembra essere quella di aggiungere l'indirizzo email al nick, in modo che la regola venga applicata solo ai messaggi con quel nick e quell'indirizzo.
Questo script PlonkWithAddress fa esattamente questo, creando una regola di plonk comprendente l'indirizzo email nella sezione riguardante il gruppo in cui compare il messaggio. Otterrete quindi un'azione del tipo:
[nome newsgroup]
!markread From "nick" +"<indirizzo_email>".
avvertenze:
Lo script non controlla se in quel momento avete gli header visualizzati o no, ma agisce così: se non sono visualizzati (come penso sia la norma) fa il suo lavoro e aggiunge l'indirizzo, se invece sono visualizzati inserisce solo il nick (cioè quello che fa Dialog di default).
Inoltre con nick che sono essi stessi indirizzi email può succedere che rimanga solo questo, non ripetuto, perché così lo si trova nell'header From: da cui lo script lo prende.
Non si otterrà l'aggiunta dell'indirizzo anche quando è pasticciato al punto che negli header non è compreso tra parentesi angolari. Per questo lo script lascia aperta la finestra "Punteggi e azioni", in modo che possiate esaminarne il risultato e decidere se vi va bene.
Create un nuovo script personale e chiamatelo PlonkWithAddress, poi copiate e incollate il codice che trovate nel link qui sotto. Dopo dovete solo salvare, compilare e assegnargli una hotkey o un pulsante a vostra scelta.
Lo script fa uso della funzione PostKey(), quindi valgono le solite avvertenze: compilatelo con Ctrl+F9 ed eseguitelo con una hotkey o un pulsante fuori dallo script editor. Nella combinazione di tasti per la hotkey non usate il tasto Ctrl perché crea problemi con la finestra "Punteggi e azioni", e lo script non funzionerebbe.
codice: PlonkWithAddress