Sublime text HTMLPrettify - отключить форматирование файлов * .min. *

Я использую HTMLPrettify с форматированием "при сохранении". Каждый раз, когда я открываю и изменяю содержимое минифицированного файла, пакет просто расширяет его и форматирует так, как должно быть, но это не то, что я хочу. Я хочу исключить все файлы, у которых есть .min. в своих расширениях, чтобы они могли оставаться минимизированными при сохранении.

Как я могу это сделать?

РЕШЕНИЕ. Как объяснил MattDMo в своем решении, нет готовая настройка для этого пакета HTMLPrettify.


person Tanasos    schedule 27.10.2016    source источник


Ответы (1)


Для этого нет настроек. Однако, если вы чувствуете себя комфортно, редактируя код плагина, вы можете сделать следующее. Выберите Preferences → Browse Packages…, чтобы открыть папку Packages в файловом менеджере операционной системы. Перейдите в папку HTMLPrettify и откройте HTMLPrettify.py в Sublime.

Перейдите к строке 22, которая должна быть комментарием к самой первой строке метода run в классе HtmlprettifyCommand. Поместите курсор непосредственно перед символом # и несколько раз нажмите Enter, чтобы вставить несколько пустых строк. Затем вернитесь к самому началу первой пустой строки (не к началу с отступом, самому началу строки) и вставьте следующий код (отступ уже должен быть правильным):

    from os.path import split
    try:
      if ".min." in split(self.view.file_name())[1]:
        return
    except TypeError:
      pass

Сохраните файл, и плагин должен автоматически перезагрузиться. Вы всегда можете перезапустить Sublime, чтобы убедиться. Чтобы объяснить код: сначала мы импортируем _9 _, который отделяет имя файла от остальной части пути. Затем мы пытаемся увидеть, есть ли строка .min. в имени файла (os.path.split() возвращает кортеж из двух частей, содержащий полный путь с индексом 0 и имя файла с индексом 1). Если это так, мы return метод, гарантирующий что он больше ничего не делает. Если строка не найдена, код продолжает работать как обычно. split() может вызвать исключение TypeError, если _ 15_ ничего не содержит, что было бы в случае, если вы работаете в безымянном буфере. Если TypeError действительно происходит, мы его перехватываем и _17 _, поскольку это означает, что в имени файла нет .min..

Предупреждение

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

Удачи!

person MattDMo    schedule 27.10.2016