Чтение/запись настроек

Место, где разработчики плагинов могут поделиться своим опытом.
Post Reply
User avatar
HaRT
Moderator
Posts: 9774
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 128 times
Been thanked: 267 times

Чтение/запись настроек

Post by HaRT »

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!)
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
DrKnS
Posts: 5902
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 11 times
Been thanked: 364 times

Чтение/запись настроек

Post by DrKnS »

Looks like it's not exposed at the moment:
https://github.com/FarGroup/FarManager/ ... .cpp#L1774
User avatar
HaRT
Moderator
Posts: 9774
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 128 times
Been thanked: 267 times

Чтение/запись настроек

Post by HaRT »

DrKnS wrote: Sun 01 Nov, 2020 23:33 Looks like it's not exposed at the moment:
What's the idea behind disallowing plug-ins to read settings exposed to users? This prevents plug-ins honoring such settings in their functionality.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
DrKnS
Posts: 5902
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 11 times
Been thanked: 364 times

Чтение/запись настроек

Post by DrKnS »

Backward compatibility - once exposed, it has to be supported forever.
It doesn't mean that settings can't be exposed at all, just one at a time and on a need-to-know basis.
buniak_a_h
Posts: 2851
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 154 times
Been thanked: 406 times
Contact:

Чтение/запись настроек

Post by buniak_a_h »

Вставлю свой грошик … Извините, по-русски.
Может, я неправильно понимаю, но вроде есть плагин LuaFAR, который, собственно, содержит реализации функций, доступных из макросов. В частности, функцию Far.GetConfig . А отсюда следует, что он умеет читать настройки. Возможно, я неправ и эта функция реализована не в LuaFAR, но какой-то плагин явно умеет читать Config.
pepak
Posts: 543
Joined: Sun 13 Jul, 2008 11:18
Has thanked: 16 times
Been thanked: 47 times

Чтение/запись настроек

Post 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.
User avatar
HaRT
Moderator
Posts: 9774
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 128 times
Been thanked: 267 times

Чтение/запись настроек

Post by HaRT »

pepak, following buniak_a_h's note above, however disgusting (and dependent on LuaMacro being loaded).
pepak
Posts: 543
Joined: Sun 13 Jul, 2008 11:18
Has thanked: 16 times
Been thanked: 47 times

Чтение/запись настроек

Post by pepak »

Yeah, but it is really ugly. I think I'll rather make a new option to duplicate the FAR's one.
buniak_a_h
Posts: 2851
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 154 times
Been thanked: 406 times
Contact:

Чтение/запись настроек

Post by buniak_a_h »

А запрос в SQLite - легко в плагине реализуется? Я к тому, что это, вроде, практически к lua отношения не имеет. Например, возвращает последние сохранённые настройки. Правда, есть ограничение: при изменении настройки новое значение не будет видно.
Post Reply

Return to “Разработка плагинов”