HTML Tidy: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Funzionalità collegamenti suggeriti: 3 collegamenti inseriti.
 
(48 versioni intermedie di 32 utenti non mostrate)
Riga 1:
{{F|software|settembre 2009}}
{{TOCright}}'''HTML Tidy''' è uno strumento ideato da [[Dave Raggett]] per aiutare chiunque si cimenti nella stesura di codice [[html]] ad evitare di fare errori.
{{Software
|Nome = HTML Tidy
|Sviluppatore = [[Dave Raggett]]
|DataPrimaVersione =
|SistemaOperativo = windows
|SistemaOperativo2 = linux
|SistemaOperativo3 = mac os x
|Linguaggio = c
|Genere = [[Libreria (software)|Libreria]]
|SoftwareLibero = sì
}}
'''HTML Tidy''' è uno strumento ideato da [[Dave Raggett]] per aiutare ad evitare di fare errori nella stesura di codice [[HTML]].
 
Tidy infatti si occupa di correggere tutti gli errori più tipici in cui si occorreincorre durante lo sviluppo di codice web. Inoltre si occupa di rendere leggibile il codice generato da editor HTML, e di segnalare all’utenteall'utente dove deve prestare più attenzione.
Riesce a riconoscere una vasta gamma di errori, segnalandoli come ''WARNINGS'' (avvertimenti), ai quali affianca numero di riga e colonna. <br />
Nel caso di problemi per i quali non riesce a trovare una valida gestione, il motore di Tidy non genererà del codice, ma li metterà in evidenza come ''ERRORS''.
Inoltre è stato sviluppato per gestire codice markup generato da [[Microsoft Word]], il quale inserisce elementi (spesso scomodi e mal gestiti dai browser) per permettere un’integrazioneun'integrazione tra il codice htmlHTML e il file word stesso.
 
== Storia ==
La prima [[release (informatica)|release]] ufficiale, sviluppata dal membro del [[World Wide Web Consortium]] (W3C) Dave Raggett<ref>{{Cita web
|url = https://www.w3.org/People/Raggett/
|titolo = Dave Raggett
|autore = Dave Raggett
|editore =
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref><ref name="sito originale">{{Cita web
|url = https://www.w3.org/People/Raggett/tidy/
|titolo = Clean up your Web pages with HTML TIDY
|autore = Dave Raggett
|editore = W3C
|anno = 2012
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>, risale al 1998<ref>{{Cita libro
|titolo = XML in 60 Minutes a Day
|autore1 = Linda McKinnon
|autore2 = Al McKinnon
|curatore =
|illustratore =
|altri =
|url = https://books.google.it/books?id=2H2dh6g0_twC&pg=PA229
|editore = Wiley
|città =
|anno = 2003
|lingua = en
|annooriginale =
|edizione =
|capitolo =
|url_capitolo =
|p = 229
|ISBN = 0-471-42254-1
|LCCN =
|DOI =
|OCLC =
|id =
|cid =
|citazione =
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>.
 
Nel 2001 il software è diventato [[open source]] e viene ospitato su [[SourceForge]]<ref>{{Cita web
|url = http://tidy.sourceforge.net/
|titolo = HTML Tidy Project Page
|autore =
|editore =
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio = https://web.archive.org/web/20010926023918/http://tidy.sourceforge.net/
|dataarchivio = 26 settembre 2001
|urlmorto = sì
}}</ref><ref>{{Cita web
|url = https://sourceforge.net/projects/tidy/
|titolo = HTML Tidy download
|autore =
|editore =
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio = https://web.archive.org/web/20010823064535/http://sourceforge.net/projects/tidy/
|dataarchivio = 23 agosto 2001
|urlmorto = no
}}</ref><ref>{{Cita web
|url = http://tidy.cvs.sourceforge.net/tidy/
|titolo = SCM Repositories - tidy
|autore =
|editore =
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>, affidato ad un gruppo di volontari.
 
Nel 2012 la W3C ha effettuato un [[fork (sviluppo software)|fork]] su [[GitHub]]<ref>{{Cita web
|url = https://github.com/w3c/tidy-html5
|titolo = w3c/tidy-html5
|autore =
|editore =
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio = https://web.archive.org/web/20130821003453/https://github.com/w3c/tidy-html5
|dataarchivio = 21 agosto 2013
|urlmorto = sì
}}</ref> gestito da Michael Smith<ref>{{Cita web
|url = http://people.w3.org/mike//
|titolo = W3C » People » Michael[tm] Smith
|autore =
|editore =
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>. In questo periodo è stato reso compatibile con l'HTML5<ref>{{Cita web
|url = https://lists.w3.org/Archives/Public/www-archive/2011Nov/0007.html
|titolo = "HTML5" support for HTML Tidy #2
|autore = Bjoern Hoehrmann
|editore =
|data = 5 novembre 2011
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>.
 
Il fork della W3C è divenuto la versione ufficiale di Tidy nel 2015<ref>{{Cita web
|url = https://github.com/htacg/tidy-html5
|titolo = htacg/tidy-html5
|autore =
|editore =
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio = https://web.archive.org/web/20150512221554/https://github.com/htacg/tidy-html5
|dataarchivio = 12 maggio 2015
|urlmorto = sì
}}</ref><ref>{{Cita web
|url = https://sourceforge.net/p/tidy/mailman/message/34289110/
|titolo = Re: [Tidy-dev] [PATCH] removing nodes from a dom
|autore =
|editore =
|data = 12 luglio 2015
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>, quando la responsabilità del progetto è passata dal W3C all'HTML Tidy Advocacy Community Group (HTACG), formato allo scopo di ridare vita a Tidy, che non riceveva major release dal 2008<ref name="sito legacy">{{Cita web
|url = http://tidy.sourceforge.net/
|titolo = HTML Tidy Project Page
|autore =
|editore =
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>.<ref>{{Cita web
|url = https://www.w3.org/community/htacg/
|titolo = HTML Tidy Advocacy Community Group
|autore =
|editore = W3C
|data =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref><ref>{{Cita web
|url = http://www.htacg.org/
|titolo = HTACG
|autore =
|editore =
|anno = 2015
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>. Il 4 settembre dello stesso anno viene pubblicata la versione 5.0.0, che tra le altre cose introduce ufficialmente il supporto all'HTML5<ref name="sito legacy"/>
 
== Come funziona Tidy ==
Tidy corregge il [[markup]] (dove possibile) rispettando la sintassi osservata in alcuni browser quali [[Mozilla Firefox|Firefox]], [[Internet Explorer]], [[Opera]], [[Netscape]]<ref name="documentazione">{{Cita web
|url = http://www.html-tidy.org/documentation/#part_license
|titolo = Tidy Documentation
|autore =
|editore =
|anno =
|lingua = en
|accesso = 7 febbraio 2017
|urlarchivio =
|dataarchivio =
|urlmorto =
}}</ref>.
 
=== Correzione dei tag di chiusura mancanti o non accoppiati ===
:<syntaxhighlight lang=html4strict>
<h1> bla <h2> blabla </h3></syntaxhighlight>
 
:Tidy corregge con:
 
:<syntaxhighlight lang=html4strict>
==COME FUNZIONA TIDY==
<h1> bla </h1> <h2> blabla </h2></syntaxhighlight><ref name="documentazione"/>
 
Tidy corregge il markup (dove possibile) rispettando la sintassi osservata in alcuni browsers quali [[Firefox]], [[Internet Explorer]], [[Opera]], [[Netscape]].
 
=== Correzione dei tagdell'ordine di chiusura mancantidei otag non accoppiati===
:<sourcesyntaxhighlight lang=html4strict>
<p> paragrafo ''' grassetto '' grassetto corsivo ''' grassetto? '' normale?</syntaxhighlight>
<h1> bla <h2> blabla </h3></source>
 
:Tidy corregge con:
 
:<sourcesyntaxhighlight lang=html4strict>
<p> paragrafo ''' grassetto '' grassetto corsivo '' grassetto? ''' normale?</syntaxhighlight><ref name="documentazione"/>
<h1> bla </h1> <h2> blabla </h2></source>
 
=== Correzione problemi nei tag heading ===
:<syntaxhighlight lang=html4strict>
<h1> <i> heading corsivo </h1> <p> paragrafo</syntaxhighlight>
 
:<small>In Internet Explorer, tutto ciò che segue l'apertura del tag di heading sarà associato allo stile del tag h1, effetto per niente desiderato!</small>
===Correzione dell’ordine di chiusura dei tag===
:<source lang=html4strict>
<p> paragrafo <b> grassetto <i> grassetto corsivo </b> grassetto? </i> normale?</source>
 
:Tidy corregge con:
:<syntaxhighlight lang=html4strict>
<h1> '' heading corsivo '' </h1> <p> paragrafo</syntaxhighlight><ref name="documentazione"/>
 
=== Correzione di tag posizionati male ===
:<source lang=html4strict>
:<syntaxhighlight lang=html4strict>
<p> paragrafo <b> grassetto <i> grassetto corsivo </i> grassetto? </b> normale?</source>
'' <h1> heading </h1> '' <p> paragrafo <b> grassetto <p> grassetto ancora!</syntaxhighlight>
 
 
===Correzione problemi nei tag heading===
:<source lang=html4strict>
<h1> <i> heading corsivo </h1> <p> paragrafo</source>
 
:<small>In Internet Explorer, tutto cio’ che segue l’apertura del tag di heading sarà associato allo stile del tag h1, effetto per niente desiderato!</small>
 
:Tidy corregge con:
:<sourcesyntaxhighlight lang=html4strict>
<h1> <i>'' heading corsivo'' </ih1> </h1p> paragrafo ''' grassetto ''' <p> paragrafo''' grassetto ancora!'''</sourcesyntaxhighlight><ref name="documentazione"/>
 
===Correzione di tag posizionati male===
 
=== Corretto posizionamento del tag hr ===
:<source lang=html4strict>
:<syntaxhighlight lang=html4strict><h1><hr>heading</h1></syntaxhighlight>
<i> <h1> heading </h1> </i> <p> paragrafo <b> grassetto <p> grassetto ancora!</source>
:<syntaxhighlight lang=html4strict><h2>sotto <hr>heading</h2></syntaxhighlight>
 
:Tidy corregge con:
:<source lang=html4strict>
<h1> <i> heading </i> </h1> <p> paragrafo <b> grassetto </b> <p> <b> grassetto ancora!</b></source>
 
:<syntaxhighlight lang=html4strict><hr></syntaxhighlight>
:<syntaxhighlight lang=html4strict><h1>heading</h1></syntaxhighlight>
:<syntaxhighlight lang=html4strict><h2>sotto</h2></syntaxhighlight>
:<syntaxhighlight lang=html4strict><hr></syntaxhighlight>
:<syntaxhighlight lang=html4strict><h2>heading</h2></syntaxhighlight><ref name="documentazione"/>
 
=== Aggiunta di “/” finale nelle ancore ===
===Corretto posizionamento del tag <hr>===
:<syntaxhighlight lang=html4strict><a href="#refs">link<a></syntaxhighlight>
 
:<source lang=html4strict><h1><hr>heading</h1></source>
:<source lang=html4strict><h2>sotto <hr>heading</h2></source>
 
:Tidy corregge con:
 
:<source lang=html4strict><hr></source>
:<source lang=html4strict><h1>heading</h1></source>
:<source lang=html4strict><h2>sotto</h2></source>
:<source lang=html4strict><hr></source>
:<source lang=html4strict><h2>heading</h2></source>
 
 
===Aggiunta di “/” finale nelle ancore===
:<source lang=html4strict><a href="#refs">link<a></source>
 
:Tidy corregge con:
:<sourcesyntaxhighlight lang=html4strict><a href="#refs">link</a></sourcesyntaxhighlight><ref name="documentazione"/>
 
=== Correzione delle liste ===
 
:<syntaxhighlight lang=html4strict><body></syntaxhighlight>
===Correzione delle liste===
:<syntaxhighlight lang=html4strict><li>1st</syntaxhighlight>
 
:<sourcesyntaxhighlight lang=html4strict><bodyli>2nd</sourcesyntaxhighlight>
:<source lang=html4strict><li>1st</source>
:<source lang=html4strict><li>2nd</source>
 
:Tidy corregge con:
:<syntaxhighlight lang=html4strict><body></syntaxhighlight>
:<sourcesyntaxhighlight lang=html4strict><bodyul></sourcesyntaxhighlight>
:<sourcesyntaxhighlight lang=html4strict><ulli>1st </li></sourcesyntaxhighlight>
:<sourcesyntaxhighlight lang=html4strict><li>1st2nd </li></sourcesyntaxhighlight>
:<sourcesyntaxhighlight lang=html4strict><li>2nd </liul></sourcesyntaxhighlight>
:<sourcesyntaxhighlight lang=html4strict></ulbody></sourcesyntaxhighlight><ref name="documentazione"/>
:<source lang=html4strict></body></source>
 
 
 
 
==GRAMMATICA==
 
 
== Grammatica ==
*'''''Aggiunta di “'''''
;Aggiunta di "
:inserisce gli apici dove mancano. Inoltre si occupa di inserire gli apici finali dove dimenticati.
 
*''''';Attributi sconosciuti/proprietari segnalati'''''
:conosce tutti gli attributi di HTML e [[XHTML]], e aiuta lo sviluppatore a trovare subito dove ha sbagliato grazie alle segnalazioni
 
*''''';Elementi proprietari segnalati'''''
:riconosce quale versione di HTML si sta usando, segnalandolo e aggiundendoaggiungendo il corretto [[DOCTYPE]] al documento
 
*''''';Segnalazione di '>' mancanti'''''
:Tidy corregge anche la mancanza > nei tags<ref name="documentazione"/>
 
== Layout ==
Tidy offre la possibilità di decidere quale stile si vuole usare nella generazione di markup (ad esempio, se si vuole che gli elementi vengano indentati o meno).<br />
Inizia costruendo un [[albero di parsing]] pulito (non contiene nessuna informazione sul layout), direttamente dal [[file sorgente]].
Questo albero viene poi visualizzato a seconda delle impostazioni nel [[file di configurazione]].
Alcuni browser possono interpretare in modo non desiderato un'indentazione personalizzata del codice.<ref name="documentazione"/>
 
Ad esempio:
 
<syntaxhighlight lang=html4strict><h1 align="right">
 
==LAYOUT==
 
 
Tidy offre la possibilità di decidere quale stile si vuole usare nella generazione di markup (ad esempio, se si vuole che gli elementi vengano indentati o meno).<br>
Inizia costruendo un [[albero di parsing]] pulito (non contiene nessuna informazione sul layout), direttamente dal file sorgente.
Questo albero viene poi visualizzato a seconda delle impostazioni nel file di configurazione.
Alcuni browser possono interpretare in malomodo un indentazione personalizzata del codice.
 
'Ad esempio:'
<source lang=html4strict><h1 align="right">
Blah
</h1></sourcesyntaxhighlight>
 
<sourcesyntaxhighlight lang=html4strict><h1 align="right">Meglio</h1></sourcesyntaxhighlight>
 
Per un bug communecomune dei browser, nel primo caso gli spazi bianchi non vengono ignorati, causando problemi nell’interpretazionenell'interpretazione del tag h1.
 
L’indentazioneL'indentazione personalizzata crea problemi anche nelle tabelle:
 
<sourcesyntaxhighlight lang=html4strict><td><img src="foo.gif"></td>
<td><img src="foo.gif"></td></sourcesyntaxhighlight>
 
Viene interpretata diversamente da:
 
<sourcesyntaxhighlight lang=html4strict><td>
<img src="foo.gif">
</td>
<td>
<img src="foo.gif">
</td></sourcesyntaxhighlight>
 
Questi problemi si possono evitare impostando ''“no”'' o ''“auto”'' nel file di configurazione di Tidy, alla voce '''INDENT'''.
 
==ALTRE FEATURES==
 
 
*'''''Internazionalizzazione'''''
:Tidy offre una vasta scelta di caratteri tra cui scegliere, e si preoccupa di correggere eventuali errori nell’utilizzo degli stessi all’interno del documento
 
*'''''Accessibilità'''''
:Tidy offre soluzioni a problemi riguardanti le persone che non usano browsers text-based. Ad esempio, suggerisce sempre di inserire un sommario per gli attributi delle tabelle, in modo da favorire la navigazione a chi usa i browser “aural” (vocali).
 
*'''''Pulizia'''''
:l’opzione ''–clean'' di Tidy consente di rimuovere gli eccessi di FONT, STYLE, COLOR e di inserirli piuttosto in un foglio di stile [[CSS]]. Inoltre, cancella paragrafi ed heading vuoti, inserendo lo stile corretto nei fogli di stile, o usando il tag <br>
 
*'''''Xml'''''
:Tidy aiuta correggere gli errori che causano il rifiuto dei files xml
 
 
 
 
Questi problemi si possono evitare impostando ''“no”'' o ''“auto”'' nel file di configurazione di Tidy, alla voce '''INDENT'''.<ref name="documentazione"/>
==FILE DI CONFIGURAZIONE:==
 
== Altre features ==
;Internazionalizzazione
:Tidy offre una vasta scelta di caratteri tra cui scegliere, e si preoccupa di correggere eventuali errori nell'utilizzo degli stessi all'interno del documento
 
;Accessibilità
L’opzione ''–config <filename>'' consente a Tidy, lanciato da riga di comando, di utilizzare un file di configurazione da noi personalizzato. In alternativa, si puo’ cambiare la variabile d’ambiente HTML_TIDY per settare il nostro file come file di default da usare, in modo da non dover sempre specificare quale deve essere usato.
:Tidy offre soluzioni a problemi riguardanti le persone che non usano browser text-based. Ad esempio, suggerisce sempre di inserire un sommario per gli attributi delle tabelle, in modo da favorire la navigazione a chi usa i browser "aural" (vocali)
 
;Pulizia
:l'opzione ''–clean'' di Tidy consente di rimuovere gli eccessi di ''font, style, color'' e di inserirli piuttosto in un [[CSS|foglio di stile CSS]]. Inoltre, cancella paragrafi ed heading vuoti, inserendo lo stile corretto nei fogli di stile, o usando il tag
 
;[[XML]]
:Tidy aiuta correggere gli errori che causano il rifiuto dei files xml<ref name="documentazione"/>
 
== File di configurazione ==
L'opzione ''–config <filename>'' consente a Tidy, lanciato da riga di comando, di utilizzare un file di configurazione da noi personalizzato. In alternativa, si può cambiare la variabile d'ambiente HTML_TIDY per impostare il nostro file come file di default da usare, in modo da non dover sempre specificare quale deve essere usato.<ref name="documentazione"/>
 
==REFERENCES Note ==
<references/>
 
== Voci correlate ==
* [[CSSTidy]]
* [[HTML]]
 
== Collegamenti esterni ==
*[http://tidy.sourceforge.net/ Tidy Project su Sourceforce]<br>
* {{Collegamenti esterni}}
*[http://www.w3.org/ Il sito del W3C]<br>
*[http://cgi.w3.org/cgi-bin/tidy Versione online di HTML Tidy W3C]
 
{{Portale|software libero}}
Aggiunta da [[Utente:Samumatt|Samumatt]] ([[Discussioni utente:Samumatt|msg]])
[[Categoria:Software libero]]