В связи с выходом MoonLoader версии .022, в которой одним из самых важных изменений была замена встроенного ядра Lua на отдельную библиотеку, захотелось выложить пару полезных библиотек для примера. Но парой дело не ограничилось - для Lua этих библиотек столько, что под какую-то одну задачу можно найти больше десяти разных библиотек. Я постарался собрать несколько самых лучших из наиболее полезных по моему мнению, и решил создать общую тему для обмена библиотеками для Lua.
lua-cjson - высокопроизводительная библиотека для парсинга и записи данных в формате JSON
htmlparser - простой парсер HTML целиком написанный на Lua. Поддерживает базовые селекторы jQuery
inspect - преобразует любое значение Lua в легко-читаемый текст, очень удобно использовать для вывода таблиц
LuaSQL-MySQL - работа с базами данных MySQL
LuaSQL-SQLite3 - работа с локальными базами данных посредством SQLite
Lustache - реализация Mustache на Lua. Предназначен для замены тегов в тексте на значения. Примеры: http://mustache.github.io/mustache.5.html
Penlight - огромный набор всего, целиком написанный на Lua. Содержит массу возможностей стандартной библиотеки питона. Даже свою модель ООП, схожую с классами питона
LuaSocket - сокеты. TCP, UDP, HTTP, DNS, SMTP, FTP. То есть почти всё, что может понадобиться для работы с сетью
LuaFileSystem - набор функций для работы с файловой системой
LPeg - парсинг сложных текстовых данных при помощи грамматики, разбирающей выражение. Применяется обычно для парсинга исходных кодов и конфигов. Включает в себя небольшой модуль "re.lua" в качестве примера, который реализует свой формат регулярных выражений
Lume - коллекция очень полезных и удобных функций, направленных на разработку игр. Написана целиком на Lua и состоит из одного единственного файла
Lrexlib-PCRE - работа с регулярными выражениями самого распространённого и наиболее полного стандарта регулярных выражений PCRE
Lanes - многопоточность, асинхронность, параллельное программирование
Все DLL-модули из этих библиотек собраны статически (т.е. нет никаких зависимостей, кроме ядра Lua) под Windows/x86 с поддержкой Windows XP для Lua 5.1 и LuaJIT. Все они протестированы и идеально работают как с MoonLoader-ом, так и отдельно.
Установка: распаковать содержимое папки нужной библиотеки в директорию 'moonloader/lib/'.
Документация по всем библиотекам доступна на официальных ресурсах.
Скрипт, с которым тестировались все перечисленные библиотеки, можно скачать из вложения.
lua-cjson - высокопроизводительная библиотека для парсинга и записи данных в формате JSON
htmlparser - простой парсер HTML целиком написанный на Lua. Поддерживает базовые селекторы jQuery
inspect - преобразует любое значение Lua в легко-читаемый текст, очень удобно использовать для вывода таблиц
LuaSQL-MySQL - работа с базами данных MySQL
LuaSQL-SQLite3 - работа с локальными базами данных посредством SQLite
Lustache - реализация Mustache на Lua. Предназначен для замены тегов в тексте на значения. Примеры: http://mustache.github.io/mustache.5.html
Penlight - огромный набор всего, целиком написанный на Lua. Содержит массу возможностей стандартной библиотеки питона. Даже свою модель ООП, схожую с классами питона
LuaSocket - сокеты. TCP, UDP, HTTP, DNS, SMTP, FTP. То есть почти всё, что может понадобиться для работы с сетью
LuaFileSystem - набор функций для работы с файловой системой
LPeg - парсинг сложных текстовых данных при помощи грамматики, разбирающей выражение. Применяется обычно для парсинга исходных кодов и конфигов. Включает в себя небольшой модуль "re.lua" в качестве примера, который реализует свой формат регулярных выражений
Lume - коллекция очень полезных и удобных функций, направленных на разработку игр. Написана целиком на Lua и состоит из одного единственного файла
Lrexlib-PCRE - работа с регулярными выражениями самого распространённого и наиболее полного стандарта регулярных выражений PCRE
Lanes - многопоточность, асинхронность, параллельное программирование
Все DLL-модули из этих библиотек собраны статически (т.е. нет никаких зависимостей, кроме ядра Lua) под Windows/x86 с поддержкой Windows XP для Lua 5.1 и LuaJIT. Все они протестированы и идеально работают как с MoonLoader-ом, так и отдельно.
Установка: распаковать содержимое папки нужной библиотеки в директорию 'moonloader/lib/'.
Документация по всем библиотекам доступна на официальных ресурсах.
Скрипт, с которым тестировались все перечисленные библиотеки, можно скачать из вложения.