Ищете библиотеку python, которая обрабатывает минимизацию и объединение файлов JS\CSS вместе...
Существуют ли какие-либо библиотеки/пакеты Python, такие как Ruby's Juicer/Sprockets/bundle_fu?
Ответы (3)
Как сказал Анураг, пользователи Django могут использовать django-compress.
Если вы используете Pylons или TurboGears 2.x, есть два варианта работы в реальном времени:
- MinificationWebHelpers (помощники минимизации в реальном времени для CSS/JS, которые поддерживают использование Beaker для кэширования вывода)
- Minimatic (форк MinificationWebHelpers. Некоторые пользователи клянутся им, но, по словам автора MinificationWebHelpers, разработчики не желают сотрудничать с апстримом для слияния изменений)
Насколько мне известно, параметры Django и Pylons в реальном времени выполняют только минимизацию и конкатенацию. Они не анализируют Javascript для реализации какой-либо директивы import/include.
Если вы предпочитаете пакетный вариант, я не могу придумать ничего, написанного специально на Python, но это варианты, которые я видел, как другие разработчики Python использовали:
- Напишите сценарий Python или оболочки, который запускает инструмент низкого уровня, такой как YUI Compressor (Java) или jsmin.py и выполняет любую конкатенацию, которую он не делает для вас. (Один из моих проектов делает это. Он не дает вам директив импорта/включения, но выполняет работу с минимальными зависимостями.)
- RequireJS Optimize (инструмент минификации и управления импортом для связывания JS/CSS. Написан на Java. )
- Соковыжималка использовала с RequireJS (требуется Ruby и использует объявления импорта в стиле JavaDoc в дополнение к вызовам RequireJS, но делает зависимость Java (для YUI Compressor ) по желанию.)
- Ender.js или Jam (оба написаны на Node.js)
Если решение на чистом Python действительно важно, я советую либо использовать параметры реального времени (проще для разработки с такими вещами, как paster --reload
), либо написать команду для setup.py или paster, который использует jsmin .py и cssmin для выполнения тяжелой работы.
Примечание. Из-за отсутствия документации ссылка setup.py указывает на одну из моих записей в блоге.
Этот ответ SO также может быть полезен: скрипт Python для минимизации CSS?
Если вы используете Django, вы можете использовать django-compress.
Проверьте этот простой скрипт Python.
http://github.com/hkasera/minify
Он также минимизирует файлы js и css. Он даже хранит подробные файлы журналов, иллюстрирующие ошибки и предупреждения во время процесса.
Надеюсь, это может помочь!