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

Место, где разработчики плагинов могут поделиться своим опытом.
Post Reply
User avatar
HaRT
Moderator
Posts: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 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: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 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: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 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: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 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.
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

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

Post by buniak_a_h »

Вставлю свой грошик … Извините, по-русски.
Может, я неправильно понимаю, но вроде есть плагин LuaFAR, который, собственно, содержит реализации функций, доступных из макросов. В частности, функцию Far.GetConfig . А отсюда следует, что он умеет читать настройки. Возможно, я неправ и эта функция реализована не в LuaFAR, но какой-то плагин явно умеет читать Config.
pepak
Posts: 604
Joined: Sun 13 Jul, 2008 11:18
Has thanked: 17 times
Been thanked: 54 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: 10806
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 220 times
Been thanked: 357 times

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

Post by HaRT »

pepak, following buniak_a_h's note above, however disgusting (and dependent on LuaMacro being loaded).
pepak
Posts: 604
Joined: Sun 13 Jul, 2008 11:18
Has thanked: 17 times
Been thanked: 54 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.
User avatar
buniak_a_h
Posts: 4234
Joined: Sat 20 Apr, 2013 00:17
Location: Санкт-Петробад
Has thanked: 222 times
Been thanked: 642 times
Contact:

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

Post by buniak_a_h »

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

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