HTML5 форматирование на MacOS X?(желательно с TextMate) - PullRequest
7 голосов
/ 22 января 2011

Существуют ли какие-либо редакторы или пакеты, доступные для MacOS X, которые поддерживают форматирование документов HTML5?Убирайте ошибки в новых тегах, таких как canvas.

Ответы [ 6 ]

3 голосов
/ 23 января 2011

Этот вопрос говорит о том, как заставить Tidy работать с HTML5;настройка командной строки пакета TextMate для использования этих параметров должна работать.

2 голосов
/ 03 марта 2011

Мне удалось добавить HTML5 Tidy в TextMate, используя информацию из этого вопроса .Tidy, похоже, не принимает пользовательскую строку в качестве DocType, поэтому я использовал макрос TextMate для вставки допустимой.Вероятно, есть более элегантный способ сделать это, но он выполняет свою работу!

Для начала нам нужно создать команду TextMate для Tidy, которая прекрасно работает с HTML5.Войдите в «Редактор пакетов» из меню «Пакеты» и создайте новую команду, содержащую следующее:

<code>#!/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?("
») end end

Назовите эту команду как-нибудь в духе« HTML5 Tidy »Msgstr "Установите область видимости на" text.html ". Мы установим комбинацию клавиш в данный момент. Обратите внимание, что переключатель" doctype "был установлен на" пропуск ", что полностью удаляет объявление DocType.

Затем необходимо записать макрос из меню «Связки», выполнив следующие действия:

  • Выбор команды «HTML5 Tidy», которую вы только что создали
  • Для перемещения нажмите CMD + Upв начало документа
  • Ввод <!DOCTYPE html>
  • Вставка новой строки

Выберите пункт меню «Сохранить последнюю запись» для сохранения макроса.это что-то подходящее, например, «HTML5 Tidy + DocType», и установите его область действия «text.html». Затем можно назначить сочетание клавиш для завершенного макроса с помощью ввода «Эквивалент клавиш».

Thisдолжен позволить вамиспользуйте Tidy для документов HTML5 без проблем.

1 голос
/ 23 января 2011

Пакет html5 Джона Муля - https://github.com/johnmuhl/html5.tmbundle

1 голос
/ 22 января 2011

Не о пакетах textmate, а как насчет coda от паники? www.panic.com/coda

0 голосов
/ 23 января 2011

Я должен сказать, что я не знаком с пакетами TextMate, потому что я лично не использую этот редактор. Тем не менее я обнаружил, что у них есть публичный сервер Subversion , где они хранят разные пакеты. Быстрый поиск не выявил никаких пакетов HTML5. Вы можете найти больше информации о пакетах на их сайте .

Если вы хотите получить оригинальный способ создания веб-контента в HTML5, взгляните на Aloha Editor .

0 голосов
/ 23 января 2011

У Textmate есть пакет, который будет проверяться на соответствие валидатору W3C - http://validator.w3.org/

...