Page 1 of 1

Чтение базы данных Фара (sqlite)

Posted: Tue 21 May, 2013 16:44
by Shmuel
Простейшая демонстрация возможностей LuaJIT FFI - чтение базы данных Фара.
Библиотека LJSQLite3, взято отсюда: http://www.scilua.org/ - никаких DLL, только Lua-файлы.

1. Распаковать sqlite3.dll.7z в %farhome% или на %path% (для тех, у кого её ещё нет)
2. Распаковать ljsqlite3.7z в папку %farprofile%\Macros\modules
3. Запустить следующий скрипт:

Code: Select all

local sql = require "ljsqlite3"

local fname = win.GetEnv("farprofile").."\\generalconfig.db"
local conn = assert(sql.open(fname, "ro"))

local t = conn:exec("SELECT * FROM general_config")

local arr={}
for i in ipairs(t.key) do
  local v=type(t.value[i])=="string" and '"'..t.value[i]..'"' or t.value[i]
  arr[i] = {text=("%-40s │ %s"):format(t.key[i].."."..t.name[i], tostring(v))}
end

table.sort(arr, function(a,b) return a.text<b.text end)
far.Menu({Title="database",Flags="FMENU_SHOWAMPERSAND"}, arr)

conn:close()

Re: luajit в фаре

Posted: Tue 21 May, 2013 18:36
by Shmuel
Скрипт в предыдущем посте обновлён (был уж совсем плохой).
Больше обновляться не будет, т.к. это всего лишь "демо".

Re: luajit в фаре

Posted: Tue 21 May, 2013 19:06
by SUSim
Как пример это сойдёт, но идеологически не правильно!!! доступ к настройкам фара должен быть из самого фара!!!(имхо)

Чтение базы данных Фара (sqlite)

Posted: Mon 08 Jan, 2018 18:13
by buniak_a_h
В первом сообщении имеется ссылка на sqlite3.dll.7z. Увы, там 32-разрядная версия.А нету для x64?

Чтение базы данных Фара (sqlite)

Posted: Mon 08 Jan, 2018 18:25
by Shmuel
На сайте SQLite можно скачать обе версии.