Перейти к содержимому
NEO

libci - программа для однофайловой организации исполняющего скрипта

Рекомендуемые сообщения

Хочу представить мини - утилиту под названием libci для организации однофайлового исполняющего скрипта.
Принцип работы утилиты в том что она собирает "архив" из скриптов задавая главный скрипт, ей же можно запустить исполняющий "архив" в формате .libci, главный файл может быть связан с другими файлами с помощью аналога require - loadLib(name).
 
Сборка исполняющего файла:

libci --files test1.lua test2.lua test3.lua --main test1.lua --ouput executable

Из трёх lua скриптов создается один исполняющий файл executable.libci
 
Запуск:
libci executable.libci
 
Исходный код:
 
Утилита довольно сырая, была написана всего за пару часов.
Устройство утилиты не окончательно.
Изменено пользователем NEO

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

 

Утилита довольно сырая, была написана всего за пару часов.

НЕО, ты нас обманываешь :D 

local VERSION = '0.2' 

Где релиз 0.1?  :rolleyes:

 

А целом, интересная штука, только вот и в правду где найти ей можно применение  :mellow:

Если только для репозитория, удобно хранить один файл (архив) на сервере, а не целую вязанку зависимостей, чтобы его просто скачать и распаковать. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Почему бы не заменять вызовы require(file) на

(function()
  -- file contents
end)()

таким образом получив возможность запускать программу без libci, захламляющего глобальное пространство имен своими функциями?

Изменено пользователем LeshaInc

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Почему бы не заменять вызовы require(file) на

(function()
  -- file contents
end)()

таким образом получив возможность запускать программу без libci, захламляющего глобальное пространство имен своими функциями?

-_-

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...