Newsgroup: it.comp.lang.visual-basic
Titolo: Sintassi colorata

Ciao a tutti,sto sviluppando un piccolo editor di testo per un particolare 
linguaggio,come potrei muovermi per arrivare ad evidenziare certe parole con 
un colore??ad esempio mentre scrivo  in una pagina,automaticamente vengono 
colorati in verde tutti i commenti al linguaggio,ecc,o altri elementi? 

 colorati in verde tutti i commenti al linguaggio,ecc,o altri elementi?
suppongo tu debba utilizzare un controllo RichTextBox, che ti dà la
possibilità di utilizzare diversi font, e quindi diversi colori, nello
stesso controllo. 
-- 
Salutoni
Sergio
Per rispondere... togli il group dall'indirizzo
Se i tempi non chiedono la tua parte migliore, inventa altri tempi. 
(Baolian, libro II, vv. 16-17)
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 stesso controllo.
Ciao,si esatto,uso il RichTextBox,ma come faccio ad automatizzare la cosa?in 
pratica si tratta di usare un testo con diversi colori,ma come devo 
procedere?scusami ma il vb6 lo conosco ancora troppo poco.... 

 procedere?scusami ma il vb6 lo conosco ancora troppo poco....
Per essere uno che dichiara di conoscerlo poco, ti sei lanciato in
un'impresa niente male :-)
Qual è la parte che al momento ti dà problemi?
Selezionare una parte di testo e cambiarne il colore o riuscire a
riconoscere le varie keyword su cui agire?
Il primo problema è abbastanza banale (trad. saprei come farlo), il
secondo lo vedo molto più complicato.



La seconda che hai detto! :-) ,in pratica immagina che apro il file seguente 
:
instr 1                               ;nome dello strumento
a1 oscil 10000,440,1        ; oscillatore 1,ampiezza ,frequenza,forma d'onda
out a1                               ;uscita audio
endin
io vorrei che l'editor colorasse (mettiamo in verde) automaticamente tutti i 
commenti preceduti dal punto e virgola!(qualunque cosa trovi dopo il punto e 
virgola!) appunto come un editor per un linguaggio specifico!ciao! 

 virgola!) appunto come un editor per un linguaggio specifico!ciao!
E' una cosa estremamente complessa.
Se, ad esempio, il punto e virgola è parte di una stringa (anche se 
forse il tuo ambiente non usa stringhe, chissà...), ciò che viene dopo 
non è un commento, a meno che non ci siano i doppi apici e poi un punto 
e virgola, ma non se i doppi apici sono raddoppiati vicini, ecc...
Insomma, una semplice ricerca nel testo delle parole chiave non è 
sufficiente.
A meno che non stiamo parlando di assembler o cose simili.
A questo punto, dovresti 'pensare' un parser tuo, ossia una funzioncina 
che, ricevendo una riga da interpretare, la scandisce sulla base delle 
regole sintattiche del tuo ambiente, e ti restituisce un qualcosa di 
formattabile (ad esempio con dei segnaposto di colore, grassetto, 
corsivo, ecc...).
Morale: a parte il realizzarlo in vb o in altro linguaggio, è per il 
90% un problema di logica e di definizione delle regole di 
identificazione degli elementi del codice.
Ciao
Alberto
-- 
A questo punto hanno trovato un muro,
un muro duro, molto molto duro,
che siamo noi.

 ha scritto nel messaggio 
news:Ub_Df.155169$65.43...@twister1.libero.it...

Puoi provare il mio progettino che trovi qui
www.neodatatype.net/downloads/_VB6/adScript.rar
Come dice Albe la cosa è tutt'altro che semplice e il mio progetto non è una 
soluzione nemmeno lontanamente professionale.
La classe asScriptSyntaxAnalizer era stata pensata per VBScript e serve solo 
all'IDE per l'intellisense e la lista delle sub.
Quello su cui puoi lavorare è il controllo utente, che nella maggior parte 
dei casi dovrebbe già funzionare, ma come si diceva vi sono delle casistiche 
tutte da valutare.
Ciao
-- 
Free .Net Reporting Tool - 
http://www.neodatatype.net
 


Siete gentilissimi,in effetti credevo fosse piu facile la cosa! 

 casistiche tutte da valutare.
Mi sembra ottimo,credo sia proprio quello che cercavo,adesso impazzirò non 
poco ad usarlo nel mio progetto!ma  posso usarlo e modificarlo liberamente? 

 ma  posso usarlo e modificarlo liberamente?
Certo!
Prima perň passami un 2000euri :)
Scherzo, se vuoi metti un credit con il mio nome e/o indirizzo mail e/o 
sito.
E se modifichi qualcosa fammelo sapere.


 wrote in message
news:Ub_Df.155169$
65.43...@twister1.libero.it

Anche se e' scritto in C (credo addirittura C++), ti consiglio di fare
un giro su 
www.sourceforge.net
, e scaricarti i sorgenti del Notepad++.
E' un editor molto carino, con colorazione della sintassi fatta (imho)
molto bene.
Bye by SixaM 8-]
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG