Кто я такой?
Привет хабраюзерам и просто читателем хабра. Честно, я думал, что навряд ли я когда-нибудь стану писать на хабре, но судьба так повернула, а теперь я здесь.
Зовут меня MrHerzog и это действительно моя первая статья на хабре, а пришел я сюда, потому что недавно разместил на github мой первый проект для всеобщего использования — compressor.php.
На самом деле, я уже написал и продолжаю писать много проектов на JavaScript, Node.js, PHP, HTML+CSS (HTML5+CSS3), Java, C, но я никак не мог написать проект для всеобщего использования (если не считать до сих пор незаконченный js-фреймворк, который, наверное, я скоро залью на github).
Возникновение идеи
Я обожаю JavaScript! Это моя страсть! Это язык, на котором я пишу чаще всего и больше всего. Я все чаще и все больше пишу какие-то скрипты, библиотеки, плагины. И когда один из моих скриптов превысил 1000 строк, я понял, что мне надо разделить один большой файл на несколько маленьких, но JS не работает с файлами. Я уже был знаком с Grunt, но мне он не понравился. Он [grunt] слишком сложен, для того, чтобы просто собрать несколько файл в один! Я понял, чтобы сделать так, как хочу — мне надо написать скрипт сборки самому. Я решил, что буду писать на PHP, не знаю, почему. Наверное потому, что там это сделать легче всего (Compressor.php v0.1.0 состоит из 29 строк, учитывая пустые строки и комментарии).
Как работать c Compressor.php?
Для начала вам нужно скачать Compressor.php здесь.
Берем файл compressor.php и помещаем его на веб-сервер с поддержкой PHP. После, создаем в одной директории с библиотекой файл manifest.php, здесь мы будем настраивать compressor.
Работа с manifest.php
Итак, мы создали манифест-файл, давайте его заполнять.
Для начала мы должны создать переменную
config ($config).<?php
$config = array();
?>
Config — это ассоциативный массив, который принимает 3 значения (v0.1.0):src— ассоциативный массив, где хранятся пути до файлов для сборкиseparator— разделитель файлов (как будут соединяться файлы в сборке. Например,\n)finish— путь конечного файла (если файл не существует, то он будет создан)
<?php
$config = array(
// Файлы для сборки
"src" => array(
"src/hello1.js",
"src/hello2.js",
"src/hello3.js"
),
// Указываем разделитель файлов
"separator" => "\n\n",
// Файл, который получим после сборки
"finish" => "finish.js"
);
?>
Теперь запускаем compressor.php (напоминаю, что с веб-сервера).
После загрузки страницы должен был появиться файл в директории, которую мы указали. Если появился — значит вы все сделали правильно.
Планы на будущее
- Сделать веб-консоль для запуска и настройки Compressor.php в браузере
- Сделать библиотеку ошибок, чтобы при невыполнении сборки, можно было увидеть в чем ошибка