Esistono editor o bundle disponibili per MacOS X che supportano la formattazione di documenti HTML5? Elimina gli errori sui tag più recenti come il canvas.Formattazione HTML5 su MacOS X? (preferibilmente con TextMate)
risposta
This question parla di come fare in modo che Tidy funzioni con HTML5; tweaking della riga di comando del bundle di TextMate per utilizzare questi parametri dovrebbe funzionare.
Non parlare di bundle di compagni di testo, ma che ne dici di coda dal panico? www.panic.com/coda
+1: stavo per suggerirlo anche io. ;) – Alerty
TextMate ha un bundle che convaliderà contro il validatore W3C - http://validator.w3.org/
Ma per quanto riguarda la formattazione? –
devo dire che non ho familiarità con fasci TextMate, perché io non uso personalmente che editore. Tuttavia, ho scoperto che hanno uno public subversion server dove mantengono diversi pacchetti. Una ricerca rapida non ha rivelato alcun bundle HTML5. Puoi trovare ulteriori informazioni sui pacchetti sul loro website.
Se si desidera un modo immediato di creare contenuto Web in HTML5, dare un'occhiata a Aloha Editor.
Il server di subversion ufficiale contiene solo un sottoinsieme dei bundle disponibili nell'universo di TextMate. In questi giorni GitHub è il luogo in cui nuovi bundle compaiono. Usando il pacchetto GetBundles (nota come "s") si trovano diversi bundle HTML5 disponibili. – cczona
di John Muhl HTML5 fascio - https://github.com/johnmuhl/html5.tmbundle
sono riuscito a aggiungere un HTML5 Tidy a TextMate utilizzando le informazioni si trovano in this question. Tidy non sembra accettare una stringa personalizzata come DocType, quindi ho usato una macro di TextMate per inserirne una valida. Probabilmente esiste un modo più elegante per farlo, ma il lavoro è fatto!
Per iniziare, dobbiamo creare un comando TextMate per Tidy che funzioni bene con HTML5. Accedi al "Bundle Editor" dal menu Bundles, e creare un nuovo comando che contiene il seguente:
#!/usr/bin/env ruby -wKU
require ENV['TM_SUPPORT_PATH'] + '/lib/ui.rb'
require ENV['TM_SUPPORT_PATH'] + '/lib/exit_codes.rb'
result = `"${TM_TIDY:-tidy}" -f /tmp/tm_tidy_errors -iq -utf8 \
-wrap 0 --tab-size $TM_TAB_SIZE --indent-spaces $TM_TAB_SIZE \
--indent yes \
${TM_XHTML:+-asxhtml --output-xhtml yes} \
${TM_SELECTED_TEXT:+--show-body-only yes} \
--enclose-text yes \
--doctype omit \
--new-blocklevel-tags article,header,footer \
--new-inline-tags video,audio,canvas,ruby,rt,rp \
--break-before-br yes --vertical-space yes \
--wrap-php no \
--tidy-mark no`
status = $?.exitstatus
at_exit { File.unlink('/tmp/tm_tidy_errors') } # Clean up error log
if status == 2 # Errors
msg = "Errors: " + File.read('/tmp/tm_tidy_errors')
TextMate.exit_show_tool_tip msg
elsif status == 1 # Warnings - use output but also display notification with warnings
log = File.read('/tmp/tm_tidy_errors').to_a.select do |line|
! (ENV['TM_SELECTED_TEXT'] and (line.include?('Warning: missing <!DOCTYPE> declaration') or line.include?("Warning: inserting missing 'title' element")))
end.join rescue nil
unless log.empty?
options = {
:title => "Tidy Warnings",
:summary => "Warnings for tidying your document (press escape to close):",
:log => log
}
TextMate::UI.simple_notification(options)
end
end
if ENV['TM_SOFT_TABS'] == "YES"
print result
else
in_pre = false
result.each_line do |line|
unless in_pre
tab_size = ENV["TM_TAB_SIZE"].to_i
space, text = /(*)(.*)/m.match(line)[1..2]
line = "\t" * (space.length/tab_size).floor + " " * (space.length % tab_size) + text
end
print line
in_pre = true if line.include?("<pre>")
in_pre = false if line.include?("</pre>")
end
end
Nome questo comando qualcosa sulla falsariga di "HTML5 Tidy". Imposta la selezione dell'ambito su "text.html". Imposteremo una scorciatoia da tastiera in un attimo. Si noti che l'opzione "doctype" è stata impostata su "ometti", che rimuove completamente la dichiarazione DocType.
È quindi necessario registrare una macro dal menu Bundles con le seguenti azioni:
- selezionando il comando "HTML5 Tidy" appena creata
- Premendo CMD + Fino a spostarsi all'inizio del documento
- Digitando
<!DOCTYPE html>
- Inserimento di una nuova linea di
Selezionare l'opzione "Salva Ultima registrazione "voce di menu per memorizzare la macro. Assegnare un nome appropriato, ad esempio "HTML5 Tidy + DocType" e impostarne l'ambito su "text.html". È quindi possibile assegnare una scorciatoia da tastiera per la macro completata utilizzando l'ingresso "Key Equivalent".
Questo dovrebbe consentire di utilizzare Tidy sui documenti HTML5 senza problemi.
+1: Bella domanda! – Alerty