keyfileSettingsBackendNew
gio.settings_backend.SettingsBackend keyfileSettingsBackendNew(string filename, string rootPath, string rootGroup = null)Creates a keyfile-backed #GSettingsBackend.
The filename of the keyfile to use is given by filename.
All settings read to or written from the backend must fall under the path given in root_path (which must start and end with a slash and not contain two consecutive slashes). root_path may be "/".
If root_group is non-null then it specifies the name of the keyfile group used for keys that are written directly below root_path. For example, if root_path is "/apps/example/" and root_group is "toplevel", then settings the key "/apps/example/enabled" to a value of true will cause the following to appear in the keyfile:
[toplevel]
enabled=trueIf root_group is null then it is not permitted to store keys directly below the root_path.
For keys not stored directly below root_path (ie: in a sub-path), the name of the subpath (with the final slash stripped) is used as the name of the keyfile group. To continue the example, if "/apps/example/profiles/default/font-size" were set to 12 then the following would appear in the keyfile:
[profiles/default]
font-size=12The backend will refuse writes (and return writability as being false) for keys outside of root_path and, in the event that root_group is null, also for keys directly under root_path. Writes will also be refused if the backend detects that it has the inability to rewrite the keyfile (ie: the containing directory is not writable).
There is no checking done for your key namespace clashing with the syntax of the key file format. For example, if you have '' or '' characters in your path names or '=' in your key names you may be in trouble.
The backend reads default values from a keyfile called defaults in the directory specified by the #GKeyfileSettingsBackend:defaults-dir property, and a list of locked keys from a text file with the name locks in the same location.
Parameters
filename | the filename of the keyfile |
rootPath | the path under which all settings keys appear |
rootGroup | the group name corresponding to root_path, or null |