Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 17
  1. #1

    CLASSE: colorare codice ASP

    eccomi qui di nuovo con un'altra classe (dopo quella per creare query SQL di creazione tabelle a prescindere dal database)...

    la classe che propongo è una (ancora da rifinire) classe per la colorazione del codice ASP

    ----

    esiste solo 1 bug conosciuto
    i commenti con all'interno i caratteri " si comportano in maniera inconsueta... e non vengono colorati
    vedrò di risolvere

    per il resto funziona alla perfezione (se esistono aprole che non ho considerato, segnalatele)

    testate pure i vostri script
    ne ho montata una versione funzionante a questo indirizzo

    http://wbforum21.imente.org/testcolor.asp

    ---

    [B]la classe ignora altri tipi di tag, quindi potete inserire intere pagine HTML e lui considererà solo i tag ASP

    se inserite codice STANDALONE ricordatevi il <% e il %>

    ---

    attendo commenti

    ---

    con lo stesso meccanismo farò anche alcune funzioni aggiuntive per la colorazione di PHP e JAVASCRIPT
    san imente saluta

    * http://simonecingano.it *

  2. #2
    ho messo la classe come download...
    al forum non piacevano molto quelle lunghe stringe

    la trovate qui
    http://wbforum21.imente.org/testcolor.asp

    ---

    per specificare

    prima di passare un stringa alla classe usate la funzione per convertirla (restituisce la stringa "ripulita" per essere colorata)

    convertCode(code)

    nell'head stampate gli stili CSS

    printStyle()

    e poi con la funzione principale viene stampato l'output HTML

    color(codice)
    san imente saluta

    * http://simonecingano.it *

  3. #3
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Grande imente.

    Ma hai mai sentito parlare di Ge.Shi - Generic Syntax Highlighter? http://qbnz.com/highlighter/index.php

    Non sarebbe male averla in asp.

    Comunque. Domanda sulla classe.

    Se scrivessi

    Response.Write "Request.Form()"

    La classe tiene conto delle stringhe?

  4. #4
    in effetti
    sarebbe bello averlo in ASP
    cmq questo è un vecchio lavoro che ho reso classe e fruibile...

    cmq un pensierino in futuro

    per quanto riguarda quel testo

    scrivi così

    <% Response.Write "Request.Form()" %>

    request.form lo conta stringa

    prova
    san imente saluta

    * http://simonecingano.it *

  5. #5
    per i colori ho usato tag quali

    <asp0></asp0>

    ovviamente "inventati"...

    ho notato che firefox li considera

    internet explorer invece se ne frega allegramente

    cosa di poco conto
    fra un po' correggo

    sorry
    san imente saluta

    * http://simonecingano.it *

  6. #6
    ho messo una pezza per IE

    ora funzia...

    cmq il codice vorrei ripulirlo un po

    quando faccio quello per PHP magari mi metto e faccio anche la strutturazione tipo quell'esempio che mi hai fatto vedere Baol
    san imente saluta

    * http://simonecingano.it *

  7. #7
    bello il codice colorato...


    ....


    ma a che serve questa classe? per avere il codice colorato nel sorgente oppure per stamparlo a video colorato?

  8. #8
    mi sembra ovvio che sia la seconda
    non vedo come si potrebbe attuare la prima.
    a meno che tu non implementi una classe simile in una applicazione di editing testuale....
    san imente saluta

    * http://simonecingano.it *

  9. #9
    in effetti la mia considerazione era un pò stupida... se mai farò un sito per raccogliere script asp, la terrò sicuramente conto per pubblicare gli articoli (non fatti da me ovviamente )

  10. #10
    Utente di HTML.it L'avatar di Baol74
    Registrato dal
    Jul 2002
    Messaggi
    2,004
    Un consiglio per velocizzare tutto.

    Usa la class cStringBuilder al posto della concatenazione di stringhe.

    Infatti con la concatenazione, dopo poco le prestazioni degenerano.

    Invece di strTemp=strTemp & tmp_d2(i2)

    Fai Buffer.Write tmp_d2(i2)

    dove Buffer è Set Buffer= new cStringBuilder

    Per avere il contenuto Buffer.Value

    Anche per Result.

    Ti accorgerai della dif già con un file da 50k

    codice:
    Class cStringBuilder
    	Private Count
    	Private arLength
    	Private arStrings()
    	
    	Public Increment
    	
    	Private Sub Class_Initialize()
    		Clear()
    	End Sub
    
    	Public Function Clear()
    		Count 			= 0
    		Increment		= 500
    		Redim arStrings(0)
    		arLength 		= 1
    	End Function
    
    	Public Function GetCount()
    		GetCount = Count
    	End Function
    	
    	Public Sub Append(value)
    		Write(value)
    	End Sub
    	
    	Public Sub WriteLn(value)
    		Write(value & VbCrLf)
    	End Sub
    	
    	Public Sub WriteBR(value)
    		Write(value & "
    " & VbCrLf)
    	End Sub
    	
    	Public Sub WriteInIndex(value,arIndex)
    		on error resume next
    		arStrings(arIndex) = Value
    		if err.number<>0 then Write value
    		on error goto 0
    	End Sub
    		
    	Public Sub Write(value)
    		if Count=arLength then 
    			arLength=Count+Increment
    			Redim Preserve arStrings(arLength)
    		end if
    		arStrings(Count)=value
    		Count=Count+1
    	End Sub
    	
    	Public Sub WriteBefore(strValue)
    	Dim v
    		V = value
    		Clear()
    		Write strValue
    		Write v
    	End Sub
    	
    	Public Property Let Value(strValue)
    		Clear()
    		Write strValue
    	End Property
    
    	Public default Property Get Value()
    		Value = Join(arStrings,"")
    	End Property
    	
    	Private Sub Class_Terminate()
    		Erase arStrings
    	End Sub
    
    End Class
    E c'è una cosa spettacolare ... in javascript...
    Si deve essere un po' esperti di regexp (o guarda caso ime tu lo sei) ma si potrebbe fare la parte per asp

    un editor online : http://helene.muze.nl/demo/

    Troppo troppo bello!!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.