pepak wrote: ↑Sun 01 Nov, 2020 16:00
I have the file descriptions figured out, except that I can't get their configuration to work - I can get the Far settings handle (SettingsControl(SCTL_CREATE)), I can open the necessary subkey (SettingsControl(SCTL_OPENSUBKEY, 'Descriptions')), but I just can't read the actual data value (SettingsControl(SCTL_GET, FST_STRING, 'ListNames') - I keep getting a FALSE. Does anyone have a minimal example for reading the FAR's data from a plugin? (NOT FROM A LUA SCRIPT, PLEASE!)
Вставлю свой грошик … Извините, по-русски.
Может, я неправильно понимаю, но вроде есть плагин LuaFAR, который, собственно, содержит реализации функций, доступных из макросов. В частности, функцию Far.GetConfig . А отсюда следует, что он умеет читать настройки. Возможно, я неправ и эта функция реализована не в LuaFAR, но какой-то плагин явно умеет читать Config.
Чтение/запись настроек
Posted: Mon 02 Nov, 2020 05:37
by pepak
It would seem to me that possible future incompatibility would be better left to the plugin developers - we can write our plugins in such a way that the plugin won't crash if the config setting becomes unavailable.
local fname = win.GetEnv('FARPROFILE') .. [[\generalconfig.db]]
local conn = assert(sql.open(fname, "ro"))
local t = conn:exec([[SELECT Value FROM general_config where key=="Descriptions" and Name=="ListNames"]]);
conn:close()
return t.value[1]
возвращает последние сохранённые настройки. Правда, есть ограничение: при изменении настройки новое значение не будет видно.