Newsgroup: it.comp.software.newsreader
Titolo: [Dialog] - script onarticlelistpaint

Ciao a tutti nel gruppo!
Sono da poco approdato ad Dialog e ne sono rimasto molto impressionato.
Per la verità credo di averne capito - per ora - solo un 10% ma credo che,
benchè consenta estreme possibilità di personalizzazione, sia un newsreader
valido anche se usato "nudo e crudo" o quasi.
Comunque, prendendo spunto dalla lettura di:
http://www.lillathedog.net/dialog/index.html
e soprattutto di:
http://fido.altervista.org/index.php
ho tentato un minimo di personalizzazione, mediante regole e scripts.
Per quanto riguarda le regole non ho avuto grossi problemi, pur essendo a
digiuno di regex, eccetto qualche idiosincrasia che ho notato e relativa
all'ordine nel quale le si dispone.
Per gli scripts, volevo trovare un modo di evidenziare messaggi di amici o
comunque interessanti.
Allo scopo ho dato punteggio dispari a tutti gli amici (e solo a loro) e
poi ho usato lo script Add_1_and_Mark di MLC che permette con una
combinazione di tasti di aumentare di uno il punteggio di un messaggio di
modo da poter decidere se renderlo dispari. Questo scrip funziona
regolarmente.
A questo punto, con lo script onarticlelistpaint di MLC, preso da
fido.altervista.org
 (brutalmente copiato ed incollato) volevo segnare con
asterisco tutti i messaggi con punteggio dispari (oltre ad eliminare i
secondi dall'orario). Il massimo sarebbe stato se avesse formattato la data
alla maniera dello script di Antonio 'Gandalf' Favata, ma forse pretendo
troppo! ;-)
Questo script mi pare funzioni (aggiunge l'asterisco e riformatta la data)
ma vedo questo errore nella finestra di stato:
Exception in script ONARTICLELISTPAINT: "is not a valid integer value
Questo errore viene fuori a ripetizione e se non metto gli errori
silenziosi diventa insopportabile.
Puo' essere che lo scrip sia errato?
Io l'ho copiato pari pari ed ho letto le istruzioni al suo interno, senza
trovare nulla da modificare per adattarlo al mio caso.
Mi date una mano?
Ciao!
-- 
*Mauro*

 Mi date una mano?
Quell'errore l'avevo anch'io a ripetizione da una certa versione di Dialog
in poi, credo dopo che venne cambiato lo script engine. Così mi ero limitata
ad eliminare quegli script dal mio PC, e ho sbagliato a non eliminarli anche
dal sito, mi spiace.
Per farmi perdonare ;-) ti propongo questo: usare una diversa colorazione di
sfondo (ho messo giallo, ma qualche altra possibilità c'è) per evidenziare
quelli che ti interessano.
Program ColoraGiallo;
Begin 
  ADoLater('MessageProperties');
 PostKey(70, false, true, false, false, false, false, false, false); //Alt+f
  PostKey(89, false, false, false, false, false, false, false, false); //y
 PostKey(75, false, true, false, false, false, false, false, false); //Alt+k
End.
Associalo a un tasto (io ho messo g come giallo) e usalo sul messaggio
selezionato.
Per togliere questo sfondo giallo puoi usare questo (io l'ho associato al
punto .):
Program ColoraDefault;
Begin 
  ADoLater('MessageProperties');
 PostKey(68, false, true, false, false, false, false, false, false); //Alt+d
 PostKey(75, false, true, false, false, false, false, false, false); //Alt+K
End.
Così ora puoi anche tranquillamente usare lo script di Gandalf per
formattare la data, che è proprio bello :-)
-- 
Maria Luisa C - 28/11/2005 11.41.16
Courage is the art of being the only one who knows
you're scared to death.    Harold Wilson
-

 formattare la data, che è proprio bello :-)
Uhm...l'avevo rimesso su mentre ti rispondevo ed è andato bene per
un'oretta, ora anche quello di Gandalf dà un Exception in script
ONARTICLELISTPAINT.
-- 
Maria Luisa C - 28/11/2005 14.42.06
Macintosh, so easy even Americans can use them.
Swedish ad
-

 formattare la data, che è proprio bello :-)
Vero!
Però la storia dell'asterisco mi piaceva assai!
Non c'è proprio verso?
(Magari usando i colori al posto dell'asterisco?).
Ciao e grazie!!
-- 
*Mauro*

Il Mon, 28 Nov 2005 14:44:58 +0100, MLC ha scritto:
Argghhh...
A questo punto sarei curioso di sapere come fa Gandalf, se l'usa ancora
così o l'ha modificato in qualche modo.
Se ha trovato una soluzione magari varrà anche per il tuo script.
Ciao!
-- 
*Mauro*

 Se ha trovato una soluzione magari varrà anche per il tuo script.
Purtroppo Gandalf ci ha /traditi/ ;-) e ora viaggia con Linux e KNode.
Vedrò di darci ancora un'occhiata, ma ci spero poco... 
Intanto prova questo più semplice di Andreas Oeser, abbrevia solo l'anno a
due cifre:
program OnArticleListPaint;
const Idx=5; //Position of the date/time column.
function
OnArticleListPaint(PaintString:widestring;ColumnIndex:integer):widestring;
begin
if ColumnIndex = Idx then
   PaintString := Copy(PaintString, 1, 6) + Copy(PaintString, 9, 8);
result:=paintstring;
end;
begin
end.
Io l'ho appena messo, vediamo se va.
Ciao,
-- 
Maria Luisa C - 28/11/2005 15.43.02
There's too much blood in my caffeine system.
-

 Ciao,
Ciao, ti faccio sapere!
-- 
*Mauro*

 Ciao, ti faccio sapere!
Niente, anche questo dopo un po' dà errori su errori. :-(
E questo è uno script ridotto all'osso, quindi penso che davvero ci sia
qualcosa nel nuovo script engine che non gradisce il cambiamento di
PaintString in OnArticleListPaint.
Ho controllato nel gruppo dei betatester, e ho visto che il problema è già
stato segnalato.
Quando ci saranno novità ti farò sapere.
Ciao,
-- 
Maria Luisa C - 29/11/2005 11.27.57
I believe that people would be alive today if there were
a death penalty.    Nancy Reagan
-

 Quando ci saranno novità ti farò sapere.
Io per parte mia continuo a tener su lo script e se ho novità le segnalo.
Grazie ancora e ciao!
-- 
*Mauro*