Newsgroup: it.comp.lang.visual-basic
Titolo: Editor Script

Salve,
vorrei sviluppare un editor per script.
Utilizzo il controllo scriptcontrol e una richtext.
Volendo programmare un editor con intellisense come l'editor di VB, ho
esigenza di recuperare tutte le keyword,funzioni e costanti del VbScript o
JScript per caricare una list da proporre con l'intellisense.
Dove recupero le funzioni e le parole chiave dei linguaggi? Devo manualmente
inserirle o posso recuperare da un oggetto da caricare e recuperare con la
collection Mudules e Procedures?
Sapete indicarmi se esistono esempi in rete per questo argomento? Tutto ciň
che ho trovato non fa cenno su questo argomento.
Sapete anche indicarmi dove posso reperire esempi di Api per estendere
l'utilizzo della richtextbox per ad esempio rintracciare la parola chiave e
di conseguenza colorarla?
Grazie a tutti

 collection Mudules e Procedures?
Non so se e' possibile recuperarle direttamente dal modello ad oggetti di
VB...
Una soluzioni piu' "sporca" e' quella di recuperare l'elenco della parole
chiave dai wordfile forniti con UltraEdit (un notevole editor di testo
shareware); gli aggiornamenti sono liberamente scaricabili, per cui non
credo che ci sia nulla di male... magari senti l'autore e metti un bel
ringraziamento nei credits del tuo programma....
Comunque li trovi qui, per una quantita di linguaggi che nemmeno sospettavo
esistesse ;-)
http://www.ultraedit.com/downloads/additional.html
Ciao
--
Luca Dormio - 
luca....@tin.it
________________________________
"Marty, non stai ragionando in maniera quadridimensionale"
Dr. Emmett L. Brown

 JScript per caricare una list da proporre con l'intellisense.
Io ne avevo fatto uno, poi abbandonato per diversi motivi (soprattutto di
tempo).
Aveva l'hi-lighting della sintassi e una sorta di intellisense.
A chiunque voglia sono disposto a cedere i sorgenti (che andrebbero anche un
po' ripuliti e rivisti) in modo da poterlo terminare.
A patto che rimanga tutto gratuito!
Chi volesse saperne di più mi risponda.
Ciao

 collection Mudules e Procedures?
Mi sa che l'unica sia fare una bella operazione di Cut&Paste dalla
documentazione dello Script.
Saluti
Massimo

>>>> "Z" == Zanna[work]  <Zanna> writes:
Z> A chiunque voglia sono disposto a cedere i sorgenti (che andrebbero anche un
Z> po' ripuliti e rivisti) in modo da poterlo terminare.
Z> A patto che rimanga tutto gratuito!
Distribuiscilo con licenza GNU GPL!!!!
--
Gian Uberto| main(){printf(&unix["\021%six\012\0"],(unix)["have"]+"fun"-0x60);}
Lauri      |                        David Korn, 1987 ioccc best one liner 
(aka saint)|-------------------------------------------------------------------
em@ail: 
sa...@eng.it
 ( vedere X-nospam nello header - see X-nospam in header )

> e recuperare con la collection Mudules e Procedures?
MG> Mi sa che l'unica sia fare una bella operazione di Cut&Paste dalla
MG> documentazione dello Script.
E per gli oggetti bisognerebbe  vedere come Windows fa la "reflection"
(il termine reflection è dei JavaBeans, il termine di MS sarà diverso,
che so  ActiveQualcosa...)  degli OCX. Non dispiacerebbe  nemmeno a me
poter aggiungere la "reflection" in visual-basic-mode...


Se per "reflection" intendi il fatto di referenziare una classe ed avere il
code complete dei suoi metodi quando la referenzi dallo script mi sa che non
sia una operazione banalissima.
Nel senso che le funzionalità per leggere da VB una TypeLibrary COM con
l'elenco dei metodi e del resto sono abbastanza facili da
implementare/usare, il problema è capire quando da script fai un
Dim PippoObject
Set PippoObject = CreateObject("Pippo.Class")
che devi assegnare a PippoObject le cose di quella classe. Si fa (ed infatti
InterDev lo fa), ma non è cosa banale banale.
Se invece non ho capito cosa intendi per "reflection" fammelo sapere dato
che io intendo "reflection" in un modo che con un editor di script non ha
veramente nulla a che fare.
Saluti
Massimo


 writes:
MG> Se per "reflection" intendi il fatto di referenziare una classe ed
MG> avere il code  complete dei suoi metodi quando  la referenzi dallo
MG> script mi sa che non sia una operazione banalissima.
La reflection  č quella che  sta a monte  della code completion :) .
Grazie e mille.
BTW, credo  che VB  si basi  per questo sul  fatto che  questa analisi
viene fatta  al momento in cui  includi una referenza  all'oggetto - o
l'ActiveX nella toolbox - mentre Interdev la faccia al volo. Oddio, non
č difficile, una volta che trovi un match per la regexp (buttata lě)
CreateObject("\([a-zA-Z0-9_]+\.[a-zA-Z0-9_]\)")
ti basta  istanziare l'oggetto il cui  nome č nel  match interno della
regexp... (o.k. č un po' critico, sono le 19.15 e lavoro costantemente
con un tool che considera abitualmente regexp e loro parti...)
