mva
потому что ты неправильно собираешь
mva
модули не должны линковаться с liblua
Aydar
А как правильно? ))
Компиляешь dll без линковки с liblua и всё
Anatoliy
Anatoliy
Вот эту опцию в no?
Aydar
Вот эту опцию в no?
Не, где-то должен быть список с путями до библиотек для линковки, я к сожалению не знаю где в VS эта опция.
Anatoliy
Там только lua53.lib, и без него линкер не хочет линковать после сборки, хотя наверно других опций нехватает, надо пробовать
Anatoliy
Aydar
Студия точно dll пытается собрать?
Anatoliy
Да
Aydar
Да
Я тогда не знаю, в студии в настройках проекта где-то должна быть строка "configuration type" значение должно быть dll перепроверь всё-таки.
Anatoliy
Aydar
Сверху в Configuration поставь all потом смени "Configuration type" на dll, потом сохрани и попробуй пересобрать (есть шанс что у тебя настройки для релизной и дебажной версии разные)
Wsevolod
luvit где-то есть на luarocks? Ну или любая либа http клиента на libuv
Wsevolod
Запускать процесс curl через uv.spawn не подходит
mva
а чем lua-curl не угодил?
Wsevolod
а чем lua-curl не угодил?
Ну он же синхронный?
Snusmumriken
luvit где-то есть на luarocks? Ну или любая либа http клиента на libuv
Это отдельный интерпретатор со всей фигнёй вроде ивент-лупа. Различия такие же как у v8 (lua) и нодой (luvit)
Dmitry
коллеги вопрос - у меня в моем .config/nvim лежит мой init.lua и папка helper, в которой у меня вспомогательные функции для neovim. когда я внутри config nvim, то я легко импортирую свои функции типо local map = require'helper.map' и все работает. а вот когда запускаю neovim в любой другой папке он мне выдает ошибку
Dmitry
вопрос - мне нужно прям полностью прописывать путь типо local map = require'home.user.config.nvim.helper.map'? или можно как-то элегантнее сделать
mva
1) вопрсо не совсем сюда, 2) положи свой helper в lua в одной из директорий в runtimepath (ну или в pack)
Dmitry
вопрос только сюда - здесь больше пользователей неовима чем в группе вима в тг
Wsevolod
Это отдельный интерпретатор со всей фигнёй вроде ивент-лупа. Различия такие же как у v8 (lua) и нодой (luvit)
Luvit — это же либа поверх низкоуровневой luv, которая дает аналогичное по сигнатурам API как в Node.js
Wsevolod
(на самом деле между luvit и luv еще есть luvi)
Wsevolod
Но тянуть всю luvit для http клиента это как-то жирно
Wsevolod
Но и голым TCP не хочется пользоваться
Snusmumriken
Luvit — это же либа поверх низкоуровневой luv, которая дает аналогичное по сигнатурам API как в Node.js
А в чём конкретная проблема с курлом? Слишком синхронно? Там есть асинхронный интерфейс.
Anonymous
Дорогие друзья, можете подсказать как получать данные с клавиатуры в луа ?
Snusmumriken
Допустим, у тебя консолька, и ты вводишь в неё текст. Ты это имеешь ввиду?
Anonymous
А тебе в каком виде? Опиши ситуацию.
Получать на какую клавишу нажимаешь
Anonymous
Клавиатура
Snusmumriken
Ладно, поставим вопрос иначе. Что ты конкретно хочешь сделать? Игрулю? Проверять, зажата ли кнопка в данный момент?
Snusmumriken
А какого рода приложение? Консольное? Графическое?
Anonymous
Типо нажал ctrl-n какае-та переменная ровна ,true теперь
Anonymous
Дефолтный луа
Snusmumriken
А какая ос? ))
Anonymous
mva
Дефолтный луа
нету дефолтного lua
mva
более того, даже оттолкнувшись от версий, есть liblua, а есть интерпретатор
Snusmumriken
Ну, дефолтный это типа puc-lua и тот который был в пакете apt-get install lua.
mva
Ну, дефолтный это типа puc-lua и тот который был в пакете apt-get install lua.
в разных дистрибутивах будут разные версии
Anonymous
Так что ?
mva
более того, даже в убунтодоебанах, емнип, нету просто "lua", только с версиями
Snusmumriken
Так что ?
Задачка смешная.
mva
а ещё меня смущает что оп сидит в чате вима
mva
и вангую проблему XY
Anonymous
Stas
Задачка смешная.
Все же легко. Берёшь поток данных с консоли. Анализируешь их. Делаешь нужное действие
Anonymous
Не это
Anonymous
Я знаю
Anonymous
Но не то
Snusmumriken
Все же легко. Берёшь поток данных с консоли. Анализируешь их. Делаешь нужное действие
Нет, так не работает, там отключены шифт-контрл и т.д. Только символы в кодировке консоли, вместо сканкодов или аналогов.
mva
Не это
то что ты хочешь выволняется не на стороне lua
mva
при запуске интерпретатора тот не получает сигналы нажатия клавиш
Anonymous
то что ты хочешь выволняется не на стороне lua
Через CPP сделать функцию ты имеешь ввиду
Snusmumriken
Я ща сижу и смотрю на получение текущего состояния клавиатуры в линексе через чтение /dev.
Snusmumriken
Но с высокой вероятностью, тебя ничто не спасёт от posix-signal-либы.
Anonymous
Все
Snusmumriken
Во, чот похожее. http://luarocks.org/modules/peterbillam/readkey
Wsevolod
Я ща сижу и смотрю на получение текущего состояния клавиатуры в линексе через чтение /dev.
Структуры пакуешь через сишку, или есть что-то наподобие struct из пайтона?
Wsevolod
> смотрю не дочитал)
Snusmumriken
Структуры пакуешь через сишку, или есть что-то наподобие struct из пайтона?
У луёв есть внешняя либа struct, но работает не совсем как в питоне. Но близко. Я фиксил какую-то из struct-либ чтобы прям как в перле была.
Alexey
Есть еще реализация LuaSocket на libuv https://github.com/moteus/lua-lluv/blob/master/examples/luasocket/cohttp.lua Ну и просто curl можно без libuv использовать https://github.com/moteus/lua-MultiRequests
Wsevolod
https://github.com/moteus/lua-lluv-curl
Это lluv, тоже биндинги для libuv, но мне curl нужен именно поверх luv, потому что он в neovim используется