lua- все статьи тега


Использование varargs в более ранней версии Lua, но требуется совместимость с 5.2+

В настоящее время я пишу код для плагина Lightroom. Lightroom не использует версию 5.2. У меня есть следующая функция, которая прекрасно работает в настоящее время, но я обеспокоен, как если Lightroom обновится до более новой версии, этот код будет сломан. Есть ли у вас предложения по обеспечению обработки varargs в этом случае независимо от версии lua? Следующий код проверяет, используется ли функция F в качестве ключа в таблице needsModule. Если да, то он составляет функцию это включает в себ ...

как посчитать количество вложенных массива в строку в Lua

Как подсчитать количество под массивов в строке lua. У меня есть строка lua в следующем формате, {{"engName1": "Test1", "validDurPeriod": 0, "appStatus": 2, " engName3":"", "ExtraInfo": {"returnPeriod": 7,"stayType": 50,"fingerprintInd": 49, "stayPeriod": 6, "medicalInd": 49},} {"engName1":"Test2","validDurPeriod": 3, "appStatus": 2, " engName3":"", }, {"engName1":"Test3","validDurPeriod":2,"appStatus":2,"engName3":"","ExtraInfo":{"returnPeriod":7,"stayType":50,"fingerprintInd":49," ...

Как удалить текст внутри скобок в Lua?

У меня есть такой текст, как "Text the I need (extra descriptor) text", и я хочу "Text the I need text". Я пытался использовать str:gsub('([^)]*)', ""), но почему-то не получается ...

Символ не найден: lua objlen

Я использую lua-cjson package.path = package.path .. ";../?.lua" local json = require('cjson') И я получаю: lua: error loading module 'cjson' from file '/usr/local/lib/lua/5.3/cjson.so': dlopen(/usr/local/lib/lua/5.3/cjson.so, 6): Symbol not found: _lua_objlen Referenced from: /usr/local/lib/lua/5.3/cjson.so Expected in: flat namespace in /usr/local/lib/lua/5.3/cjson.so stack traceback: [C]: in ? [C]: in function 'require' log.lua:6: in main chunk ...

(Безопасная) случайная строка?

В Lua обычно генерируются случайные значения и / или строки с помощью math.random & math.randomseed, где os.time используется для math.randomseed. Однако у этого метода есть один существенный недостаток: возвращаемое число всегда так же случайно, как и текущее время, и интервал для каждого случайного числа составляет одну секунду, что слишком долго, если требуется много случайных значений за очень короткое время. Эта проблема даже отмечена пользователями Lua wiki: http://lua-users.org/wiki ...

Управление стеком с помощью Lua и C++

Мне нужно передать скрипту lua одну строку (путь к файлу) и вернуть 0 для многих строк. int error = 0; lua_State *L = lua_open(); luaL_openlibs(L); std::vector<string> list_strings; Используется для перемещения строки в стек, прежде чем я загружу и вызову исходный файл if ((error = luaL_loadfile(L, "src/test.lua")) == 0) { lua_pushstring(L, path.c_str()); if ((error = lua_pcall(L, 1, LUA_MULTRET, 0)) == 0) { lua_gettable(L, LUA_GLOBALSINDEX); lua_pcall(L, ...

Неожиданный результат регулярного выражения с использованием символа точки

Я пытаюсь определить формат файла: например, 23.ts Если я использую string.match( entities[3], 'ts$' ) -- returns ts Если я использую string.match( entities[3], '.ts$' ) --returns error Если я использую string.match( entities[3], '\.ts$' ) --returns nil Если я использую string.match( entities[3], '[\.]{1}ts$' ) --returns nil Если я использую string.match( entities[3], '.ts$' ) --works Для всех строк, таких как ats, bts, cts ... ПОЧЕМУ? Как я могу обнаружить символ .? ...

Android push-уведомления не работают (Corona sdk)

Кто-нибудь может помочь мне с примером кода для Google push-уведомлений. Я получаю сообщение об ошибке в сообщение в формате JSON. Вот код: local googleApiKey = "**********************" local googleRegistrationId = nil -- Called when a sent notification has succeeded or failed. local function onSendNotification(event) local errorMessage = nil -- Determine if we have successfully sent the notification to Google's server. if event.isError then -- Failed to connect to the server. -- T ...

Преобразование CSV-файла в таблицу с определенными ключами в Lua

Я изучаю Lua, чтобы создавать скрипты для авиасимулятора. У меня есть CSV-файл, который выглядит следующим образом: Poti city, Poti,red,-295731.42857144,617222.85714285 Lanchhuti city, Poti,red,-299217.14285715,647851.42857142 Ozurgeti city, Poti,red,-317217.14285715,648422.85714285 Samtredia city, Poti,red,-287502.85714287,672022.85714285 Abasha city, Poti,red,-284245.71428573,661108.57142857 Каждая строка содержит 5 полей (city, region, coalition, coordinate-x и coordinate-y в сис ...

Получение входных данных от пользователя в Lua

Как я могу получить ввод от пользователя в Lua (например, scanf в C)? Например, программа спросит у пользователя его имя, затем он запишет свое имя, после чего программа выведет его имя. ...

"Для каждого" цикла в таблице lua с парами ключевых значений

Допустим, у меня есть таблица, определенная следующим образом: myTable = { myValue = nil, myOtherValue = nil} Как бы я повторил его в каждом цикле моды, как это? for key,value in myTable do --pseudocode value = "foobar" end Кроме того, если это поможет, я действительно не забочусь о ключе, Просто значение. ...

Lua-Socket receive с таймером для другого события

Я пытаюсь реализовать сценарий с сокетом сервера, который также будет периодически опрашивать данные с нескольких датчиков (т. е. на 59-й секунде каждой минуты). Я не хочу сериализовывать данные на диск, а скорее хранить их в таблице, на которую сокет будет отвечать при опросе. Вот некоторые наброски кода, чтобы проиллюстрировать, что я пытаюсь сделать (я не включил клиентский код, который обращается к этому серверу, но эта часть в порядке) #!/usr/bin/env lua local socket = require("socket") ...

Строка Луа.матч использует нерегулярные регулярные выражения?

Мне любопытно, почему это не работает, и нужно знать, почему/как обойти это; я пытаюсь определить, является ли какой-то вход вопросом, я уверен, что строка.матч - это то, что мне нужно, но: print(string.match("how much wood?", "(how|who|what|where|why|when).*\?")) Возвращает nil. Я почти уверен, что это строка Луа.match использует регулярные выражения для поиска совпадений в строке, как я использовал подстановочные знаки (.) раньше с успехом, но, может быть, я не понимаю всей механики? Луа ...

Corona SDK - как мы подключаем внешние функции к main.Луа?

Прямо сейчас мы собрали весь наш код в main.Луа. Мы не хотим работать с объектно-ориентированным кодом, но все же находим простой способ разделения различных объектов на отдельные файлы. В нашем основном.lua файл у нас есть объекты, такие как вода, лодка, мальчик, остров и облако - все вместе, создавая один массивный бит кода. Мы хотим иметь "BEGIN WATER 3" в своем собственном файле lua и иметь возможность выполнять этот код в main.lua с простой функцией вместо этого. Как мы это делаем это? Во ...

Зачем нам такой встраиваемый язык программирования, как Lua?

Каковы типичные случаи использования встраиваемого языка программирования? Правильно ли я понимаю, что такой язык должен быть встроен в некоторую программную среду и должен быть способен выполняться оттуда? ...

Ограничить частоту запросов каждого IP с помощью NGINX & Lua

Моя цель состоит в том, чтобы предотвратить высокий частый запрос, основанный на IP пользователя, и я google openresty и обнаружил, что он может быть воспроизведен с Lua. Поэтому я написал следующий сценарий, я новичок в Lua, может ли кто-нибудь дать мне совет по этому сценарию или даже поправить меня. этот скрипт должен блокировать запрос, который запрашивает более 3 раз в 100s local limit_request_times = 3 local expire_time = 100 local user_ip = ngx.var.remote_addr -- ngx.say("user_ip: ...

Попытка индексировать нулевое значение

Новичок в Lua (и программировании) здесь. Я пытаюсь создать таблицу и заполнить ее случайными целыми числами, но постоянно получаю ошибку "попытка проиндексировать нулевое значение". Ранее я не обращал внимания на определение табличной карты, поэтому, когда я искал здесь, я нашел это решение и добавил в map = { }. К сожалению, это не исправило проблему. Я подозреваю, что цикл пытается поместить случайные значения в неопределенную таблицу, и что это просто невозможно. Как же я тогда буду ходить ...

Регулярное выражение Lua с ровно одним совпадением

Может ли кто-нибудь помочь мне с lua "regex" ака паттернами? Как мне перевести это регулярное выражение в шаблон lua для string.match(): ytplayer.configs*=s*({.+?});. Вы можете использовать этот сайт для объяснения того, что делает это регулярное выражение: https://regex101.com/#pcre По существу, я хочу найти строку, которая начинается с ytplayer.config = (Обратите внимание на возможные пробелы до и после знака равенства), за которой следует { и до тех пор, пока мы не попадем в точку с ...

Сортировать точки по часовой стрелке?

учитывая массив точек x, y, как отсортировать точки этого массива по часовой стрелке (вокруг их общей средней центральной точки)? Моя цель-передать точки в функцию создания линий, чтобы в конечном итоге что-то выглядело довольно "твердым", как можно более выпуклым без пересечения линий. для чего это стоит, я использую Lua, но любой псевдокод будет оценен по достоинству. Большое спасибо за любую помощь! обновление: для справки, это Lua код, основанный на отличном ответе Ciamej (игнорируйте мой ...

тонкие различия между JavaScript и Lua

Я просто люблю JavaScript. Это так элегантно (представьте себе тихий звук влюбленного фаната, вздыхающего на заднем плане). Так, недавно я играл с Lua через löve2d рамки (Ницца!) - и я думаю, что Луа тоже здорово. Они, как я вижу, эти два языка очень похожие. есть очевидные различия, как синтаксис домен библиотеки типы (немного) но какие из них более утонченные? Есть ли что-нибудь, что кодер JavaScript будет считать само собой разумеющимся, что работает в Lua немного иначе? Есть ли какие-л ...