gi-glib-2.0.17: GLib bindings

Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte
License | LGPL-2.1
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com)
Safe Haskell | None
Language | Haskell2010

GI.GLib.Structs.KeyFile

Contents

- Exported types
- Methods
  - errorQuark
  - getBoolean
  - getBooleanList
  - getComment
  - getDouble
  - getDoubleList
  - getGroups
  - getInt64
  - getInteger
  - getIntegerList
  - getKeys
  - getLocaleForKey
  - getLocaleString
  - getLocaleStringList
  - getStartGroup
  - getString
  - getStringList
  - getUint64
  - getValue
  - hasGroup
  - loadFromBytes
  - loadFromData
  - loadFromDataDirs
  - loadFromDirs
  - loadFromFile
  - new
  - removeComment
  - removeGroup
  - removeKey
  - saveToFile
  - setBoolean
  - setBooleanList
  - setComment
  - setDouble
  - setDoubleList
  - setInt64
  - setInteger
  - setIntegerList
  - setListSeparator
  - setLocaleString
  - setLocaleStringList
  - setString
  - setStringList
  - setUint64
  - setValue
  - toData
  - unref

Description

The GKeyFile struct contains only private data and should not be accessed directly.

Synopsis

- newtype KeyFile = KeyFile (ManagedPtr KeyFile)
- noKeyFile :: Maybe KeyFile
- keyFileErrorQuark :: (HasCallStack, MonadIO m) => m Word32
- keyFileGetBoolean :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m ()
- keyFileGetBooleanList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m [Bool]
- keyFileGetComment :: (HasCallStack, MonadIO m) => KeyFile -> Maybe Text -> Text -> m Text
- keyFileGetDouble :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m Double
- keyFileGetDoubleList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m [Double]
- keyFileGetGroups :: (HasCallStack, MonadIO m) => KeyFile -> m ([Text], Word64)
- keyFileGetInt64 :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m Int64
- keyFileGetInteger :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m Int32
- keyFileGetIntegerList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m [Int32]
- keyFileGetKeys :: (HasCallStack, MonadIO m) => KeyFile -> Text -> m ([Text], Word64)
- keyFileGetLocaleForKey :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Maybe Text -> m (Maybe Text)
- keyFileGetLocaleString :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Maybe Text -> m Text
- keyFileGetLocaleStringList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Maybe Text -> m ([Text], Word64)
- keyFileGetStartGroup :: (HasCallStack, MonadIO m) => KeyFile -> m Text
- keyFileGetString :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m Text
- keyFileGetStringList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m ([Text], Word64)
- keyFileGetUint64 :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m Word64
- keyFileGetValue :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m Text
- keyFileHasGroup :: (HasCallStack, MonadIO m) => KeyFile -> Text -> m Bool
- keyFileLoadFromBytes :: (HasCallStack, MonadIO m) => KeyFile -> Bytes -> [KeyFileFlags] -> m ()
- keyFileLoadFromData :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Word64 -> [KeyFileFlags] -> m ()
- keyFileLoadFromDataDirs :: (HasCallStack, MonadIO m) => KeyFile -> [Char] -> [KeyFileFlags] -> m [Char]
- keyFileLoadFromDirs :: (HasCallStack, MonadIO m) => KeyFile -> [Char] -> [[Char]] -> [KeyFileFlags] -> m [Char]
- keyFileLoadFromFile :: (HasCallStack, MonadIO m) => KeyFile -> [Char] -> [KeyFileFlags] -> m ()
- keyFileNew :: (HasCallStack, MonadIO m) => m KeyFile
- keyFileRemoveComment :: (HasCallStack, MonadIO m) => KeyFile -> Maybe Text -> Maybe Text -> m ()
- keyFileRemoveGroup :: (HasCallStack, MonadIO m) => KeyFile -> Text -> m ()
- keyFileRemoveKey :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> m ()
- keyFileSaveToFile :: (HasCallStack, MonadIO m) => KeyFile -> Text -> m ()
- keyFileSetBoolean :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Bool -> m ()
- keyFileSetBooleanList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> [Bool] -> m ()
- keyFileSetComment :: (HasCallStack, MonadIO m) => KeyFile -> Maybe Text -> Maybe Text -> Text -> m ()
- keyFileSetDouble :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Double -> m ()
- keyFileSetDoubleList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> [Double] -> m ()
- keyFileSetInt64 :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Int64 -> m ()
- keyFileSetInteger :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Int32 -> m ()
- keyFileSetIntegerList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> [Int32] -> m ()
- keyFileSetListSeparator :: (HasCallStack, MonadIO m) => KeyFile -> Int8 -> m ()
- keyFileSetLocaleString :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Text -> Text -> m ()
- keyFileSetLocaleStringList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Text -> [Text] -> Word64 -> m ()
- keyFileSetString :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Text -> m ()
- keyFileSetStringList :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> [Text] -> Word64 -> m ()
- keyFileSetUint64 :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Word64 -> m ()
- keyFileSetValue :: (HasCallStack, MonadIO m) => KeyFile -> Text -> Text -> Text -> m ()
- keyFileToData :: (HasCallStack, MonadIO m) => KeyFile -> m (Text, Word64)
- keyFileUnref :: (HasCallStack, MonadIO m) => KeyFile -> m ()

# Exported types

newtype KeyFile Source #

Memory-managed wrapper type.

Constructors

KeyFile (ManagedPtr KeyFile) |

Instances

BoxedObject KeyFile Source # |
Instance details Defined in GI.GLib.Structs.KeyFile Methods boxedType :: KeyFile -> IO GType Source #

noKeyFile :: Maybe KeyFile Source #

A convenience alias for `Nothing` :: `Maybe` `KeyFile`.

# Methods

## errorQuark

keyFileErrorQuark :: (HasCallStack, MonadIO m) => m Word32 Source #

No description available in the introspection data.

## getBoolean

keyFileGetBoolean Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m () | (Can throw `GError`)

Returns the value associated with `key` under `groupName` as a boolean.

If `key` cannot be found then `False` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. Likewise, if the value associated with `key` cannot be interpreted as a boolean then `False` is returned and `error` is set to `G_KEY_FILE_ERROR_INVALID_VALUE`.

Since: 2.6

## getBooleanList

keyFileGetBooleanList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m [Bool] | Returns: the values associated with the key as a list of booleans, or `Nothing` if the key was not found or could not be parsed. The returned list of booleans should be freed with `free` when no longer needed. (Can throw `GError`)

Returns the values associated with `key` under `groupName` as booleans.

If `key` cannot be found then `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. Likewise, if the values associated with `key` cannot be interpreted as booleans then `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_INVALID_VALUE`.

Since: 2.6

## getComment

keyFileGetComment Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Maybe Text | `groupName`: a group name, or `Nothing`
-> Text | `key`: a key
-> m Text | Returns: a comment that should be freed with `free` (Can throw `GError`)

Retrieves a comment above `key` from `groupName`. If `key` is `Nothing` then `comment` will be read from above `groupName`. If both `key` and `groupName` are `Nothing`, then `comment` will be read from above the first group in the file.

Note that the returned string does not include the '#' comment markers, but does include any whitespace after them (on each line). It includes the line breaks between lines, but does not include the final line break.

Since: 2.6

## getDouble

keyFileGetDouble Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m Double | Returns: the value associated with the key as a double, or 0.0 if the key was not found or could not be parsed. (Can throw `GError`)

Returns the value associated with `key` under `groupName` as a double. If `groupName` is `Nothing`, the start_group is used.

If `key` cannot be found then 0.0 is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. Likewise, if the value associated with `key` cannot be interpreted as a double then 0.0 is returned and `error` is set to `G_KEY_FILE_ERROR_INVALID_VALUE`.

Since: 2.12

## getDoubleList

keyFileGetDoubleList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m [Double] | Returns: the values associated with the key as a list of doubles, or `Nothing` if the key was not found or could not be parsed. The returned list of doubles should be freed with `free` when no longer needed. (Can throw `GError`)

Returns the values associated with `key` under `groupName` as doubles.

If `key` cannot be found then `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. Likewise, if the values associated with `key` cannot be interpreted as doubles then `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_INVALID_VALUE`.

Since: 2.12

## getGroups

keyFileGetGroups Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> m ([Text], Word64) | Returns: a newly-allocated `Nothing`-terminated array of strings. Use `strfreev` to free it.

Returns all groups in the key file loaded with `keyFile`. The array of returned groups will be `Nothing`-terminated, so `length` may optionally be `Nothing`.

Since: 2.6

## getInt64

keyFileGetInt64 Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a non-`Nothing` `KeyFile`
-> Text | `groupName`: a non-`Nothing` group name
-> Text | `key`: a non-`Nothing` key
-> m Int64 | Returns: the value associated with the key as a signed 64-bit integer, or 0 if the key was not found or could not be parsed. (Can throw `GError`)

Returns the value associated with `key` under `groupName` as a signed 64-bit integer. This is similar to `keyFileGetInteger` but can return 64-bit results without truncation.

Since: 2.26

## getInteger

keyFileGetInteger Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m Int32 | Returns: the value associated with the key as an integer, or 0 if the key was not found or could not be parsed. (Can throw `GError`)

Returns the value associated with `key` under `groupName` as an integer.

If `key` cannot be found then 0 is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. Likewise, if the value associated with `key` cannot be interpreted as an integer, or is out of range for a `gint`, then 0 is returned and `error` is set to `G_KEY_FILE_ERROR_INVALID_VALUE`.

Since: 2.6

## getIntegerList

keyFileGetIntegerList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m [Int32] | Returns: the values associated with the key as a list of integers, or `Nothing` if the key was not found or could not be parsed. The returned list of integers should be freed with `free` when no longer needed. (Can throw `GError`)

Returns the values associated with `key` under `groupName` as integers.

If `key` cannot be found then `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. Likewise, if the values associated with `key` cannot be interpreted as integers, or are out of range for `gint`, then `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_INVALID_VALUE`.

Since: 2.6

## getKeys

keyFileGetKeys Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> m ([Text], Word64) | Returns: a newly-allocated `Nothing`-terminated array of strings. Use `strfreev` to free it. (Can throw `GError`)

Returns all keys for the group name `groupName`. The array of returned keys will be `Nothing`-terminated, so `length` may optionally be `Nothing`. In the event that the `groupName` cannot be found, `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_GROUP_NOT_FOUND`.

Since: 2.6

## getLocaleForKey

keyFileGetLocaleForKey Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Maybe Text | `locale`: a locale identifier or `Nothing`
-> m (Maybe Text) | Returns: the locale from the file, or `Nothing` if the key was not found or the entry in the file was was untranslated

Returns the actual locale which the result of `keyFileGetLocaleString` or `keyFileGetLocaleStringList` came from.

If calling `keyFileGetLocaleString` or `keyFileGetLocaleStringList` with exactly the same `keyFile`, `groupName`, `key` and `locale`, the result of those functions will have originally been tagged with the locale that is the result of this function.

Since: 2.56

## getLocaleString

keyFileGetLocaleString Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Maybe Text | `locale`: a locale identifier or `Nothing`
-> m Text | Returns: a newly allocated string or `Nothing` if the specified key cannot be found. (Can throw `GError`)

Returns the value associated with `key` under `groupName` translated in the given `locale` if available. If `locale` is `Nothing` then the current locale is assumed.

If `locale` is to be non-`Nothing`, or if the current locale will change over the lifetime of the `KeyFile`, it must be loaded with `KeyFileFlagsKeepTranslations` in order to load strings for all locales.

If `key` cannot be found then `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. If the value associated with `key` cannot be interpreted or no suitable translation can be found then the untranslated value is returned.

Since: 2.6

## getLocaleStringList

keyFileGetLocaleStringList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Maybe Text | `locale`: a locale identifier or `Nothing`
-> m ([Text], Word64) | Returns: a newly allocated `Nothing`-terminated string array or `Nothing` if the key isn't found. The string array should be freed with `strfreev`. (Can throw `GError`)

Returns the values associated with `key` under `groupName` translated in the given `locale` if available. If `locale` is `Nothing` then the current locale is assumed.

If `locale` is to be non-`Nothing`, or if the current locale will change over the lifetime of the `KeyFile`, it must be loaded with `KeyFileFlagsKeepTranslations` in order to load strings for all locales.

If `key` cannot be found then `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. If the values associated with `key` cannot be interpreted or no suitable translations can be found then the untranslated values are returned. The returned array is `Nothing`-terminated, so `length` may optionally be `Nothing`.

Since: 2.6

## getStartGroup

keyFileGetStartGroup Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> m Text | Returns: The start group of the key file.

Returns the name of the start group of the file.

Since: 2.6

## getString

keyFileGetString Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m Text | Returns: a newly allocated string or `Nothing` if the specified key cannot be found. (Can throw `GError`)

Returns the string value associated with `key` under `groupName`. Unlike `keyFileGetValue`, this function handles escape sequences like \s.

In the event the key cannot be found, `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. In the event that the `groupName` cannot be found, `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_GROUP_NOT_FOUND`.

Since: 2.6

## getStringList

keyFileGetStringList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m ([Text], Word64) | Returns: a `Nothing`-terminated string array or `Nothing` if the specified key cannot be found. The array should be freed with `strfreev`. (Can throw `GError`)

Returns the values associated with `key` under `groupName`.

In the event the key cannot be found, `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. In the event that the `groupName` cannot be found, `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_GROUP_NOT_FOUND`.

Since: 2.6

## getUint64

keyFileGetUint64 Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a non-`Nothing` `KeyFile`
-> Text | `groupName`: a non-`Nothing` group name
-> Text | `key`: a non-`Nothing` key
-> m Word64 | Returns: the value associated with the key as an unsigned 64-bit integer, or 0 if the key was not found or could not be parsed. (Can throw `GError`)

Returns the value associated with `key` under `groupName` as an unsigned 64-bit integer. This is similar to `keyFileGetInteger` but can return large positive results without truncation.

Since: 2.26

## getValue

keyFileGetValue Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> m Text | Returns: a newly allocated string or `Nothing` if the specified key cannot be found. (Can throw `GError`)

Returns the raw value associated with `key` under `groupName`. Use `keyFileGetString` to retrieve an unescaped UTF-8 string.

In the event the key cannot be found, `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_KEY_NOT_FOUND`. In the event that the `groupName` cannot be found, `Nothing` is returned and `error` is set to `G_KEY_FILE_ERROR_GROUP_NOT_FOUND`.

Since: 2.6

## hasGroup

keyFileHasGroup Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> m Bool | Returns: `True` if `groupName` is a part of `keyFile`, `False` otherwise.

Looks whether the key file has the group `groupName`.

Since: 2.6

## loadFromBytes

keyFileLoadFromBytes Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: an empty `KeyFile` struct
-> Bytes | `bytes`: a `Bytes`
-> [KeyFileFlags] | `flags`: flags from `KeyFileFlags`
-> m () | (Can throw `GError`)

Loads a key file from the data in `bytes` into an empty `KeyFile` structure. If the object cannot be created then `error` is set to a `KeyFileError`.

Since: 2.50

## loadFromData

keyFileLoadFromData Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: an empty `KeyFile` struct
-> Text | `data`: key file loaded in memory
-> Word64 | `length`: the length of `data` in bytes (or (gsize)-1 if data is nul-terminated)
-> [KeyFileFlags] | `flags`: flags from `KeyFileFlags`
-> m () | (Can throw `GError`)

Loads a key file from memory into an empty `KeyFile` structure. If the object cannot be created then `error` is set to a `KeyFileError`.

Since: 2.6

## loadFromDataDirs

keyFileLoadFromDataDirs Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: an empty `KeyFile` struct
-> [Char] | `file`: a relative path to a filename to open and parse
-> [KeyFileFlags] | `flags`: flags from `KeyFileFlags`
-> m [Char] | (Can throw `GError`)

This function looks for a key file named `file` in the paths returned from `getUserDataDir` and `getSystemDataDirs`, loads the file into `keyFile` and returns the file's full path in `fullPath`. If the file could not be loaded then an `error` is set to either a `FileError` or `KeyFileError`.

Since: 2.6

## loadFromDirs

keyFileLoadFromDirs Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: an empty `KeyFile` struct
-> [Char] | `file`: a relative path to a filename to open and parse
-> [[Char]] | `searchDirs`: `Nothing`-terminated array of directories to search
-> [KeyFileFlags] | `flags`: flags from `KeyFileFlags`
-> m [Char] | (Can throw `GError`)

This function looks for a key file named `file` in the paths specified in `searchDirs`, loads the file into `keyFile` and returns the file's full path in `fullPath`.

If the file could not be found in any of the `searchDirs`, `KeyFileErrorNotFound` is returned. If the file is found but the OS returns an error when opening or reading the file, a `G_FILE_ERROR` is returned. If there is a problem parsing the file, a `G_KEY_FILE_ERROR` is returned.

Since: 2.14

## loadFromFile

keyFileLoadFromFile Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: an empty `KeyFile` struct
-> [Char] | `file`: the path of a filename to load, in the GLib filename encoding
-> [KeyFileFlags] | `flags`: flags from `KeyFileFlags`
-> m () | (Can throw `GError`)

Loads a key file into an empty `KeyFile` structure.

If the OS returns an error when opening or reading the file, a `G_FILE_ERROR` is returned. If there is a problem parsing the file, a `G_KEY_FILE_ERROR` is returned.

This function will never return a `KeyFileErrorNotFound` error. If the `file` is not found, `FileErrorNoent` is returned.

Since: 2.6

## new

keyFileNew Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> m KeyFile | Returns: an empty `KeyFile`.

Creates a new empty `KeyFile` object. Use `keyFileLoadFromFile`, `keyFileLoadFromData`, `keyFileLoadFromDirs` or `keyFileLoadFromDataDirs` to read an existing key file.

Since: 2.6

## removeComment

keyFileRemoveComment Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Maybe Text | `groupName`: a group name, or `Nothing`
-> Maybe Text | `key`: a key
-> m () | (Can throw `GError`)

Removes a comment above `key` from `groupName`. If `key` is `Nothing` then `comment` will be removed above `groupName`. If both `key` and `groupName` are `Nothing`, then `comment` will be removed above the first group in the file.

Since: 2.6

## removeGroup

keyFileRemoveGroup Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> m () | (Can throw `GError`)

Removes the specified group, `groupName`, from the key file.

Since: 2.6

## removeKey

keyFileRemoveKey Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key name to remove
-> m () | (Can throw `GError`)

Removes `key` in `groupName` from the key file.

Since: 2.6

## saveToFile

keyFileSaveToFile Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `filename`: the name of the file to write to
-> m () | (Can throw `GError`)

Writes the contents of `keyFile` to `filename` using `fileSetContents`.

This function can fail for any of the reasons that `fileSetContents` may fail.

Since: 2.40

## setBoolean

keyFileSetBoolean Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Bool | `value`: `True` or `False`
-> m () |

Associates a new boolean value with `key` under `groupName`. If `key` cannot be found then it is created.

Since: 2.6

## setBooleanList

keyFileSetBooleanList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> [Bool] | `list`: an array of boolean values
-> m () |

Associates a list of boolean values with `key` under `groupName`. If `key` cannot be found then it is created. If `groupName` is `Nothing`, the start_group is used.

Since: 2.6

## setComment

keyFileSetComment Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Maybe Text | `groupName`: a group name, or `Nothing`
-> Maybe Text | `key`: a key
-> Text | `comment`: a comment
-> m () | (Can throw `GError`)

Places a comment above `key` from `groupName`.

If `key` is `Nothing` then `comment` will be written above `groupName`. If both `key` and `groupName` are `Nothing`, then `comment` will be written above the first group in the file.

Note that this function prepends a '#' comment marker to each line of `comment`.

Since: 2.6

## setDouble

keyFileSetDouble Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Double | `value`: an double value
-> m () |

Associates a new double value with `key` under `groupName`. If `key` cannot be found then it is created.

Since: 2.12

## setDoubleList

keyFileSetDoubleList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> [Double] | `list`: an array of double values
-> m () |

Associates a list of double values with `key` under `groupName`. If `key` cannot be found then it is created.

Since: 2.12

## setInt64

keyFileSetInt64 Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Int64 | `value`: an integer value
-> m () |

Associates a new integer value with `key` under `groupName`. If `key` cannot be found then it is created.

Since: 2.26

## setInteger

keyFileSetInteger Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Int32 | `value`: an integer value
-> m () |

Associates a new integer value with `key` under `groupName`. If `key` cannot be found then it is created.

Since: 2.6

## setIntegerList

keyFileSetIntegerList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> [Int32] | `list`: an array of integer values
-> m () |

Associates a list of integer values with `key` under `groupName`. If `key` cannot be found then it is created.

Since: 2.6

## setListSeparator

keyFileSetListSeparator Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Int8 | `separator`: the separator
-> m () |

Sets the character which is used to separate values in lists. Typically ';' or ',' are used as separators. The default list separator is ';'.

Since: 2.6

## setLocaleString

keyFileSetLocaleString Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Text | `locale`: a locale identifier
-> Text | `string`: a string
-> m () |

Associates a string value for `key` and `locale` under `groupName`. If the translation for `key` cannot be found then it is created.

Since: 2.6

## setLocaleStringList

keyFileSetLocaleStringList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Text | `locale`: a locale identifier
-> [Text] | `list`: a `Nothing`-terminated array of locale string values
-> Word64 | `length`: the length of `list`
-> m () |

Associates a list of string values for `key` and `locale` under `groupName`. If the translation for `key` cannot be found then it is created.

Since: 2.6

## setString

keyFileSetString Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Text | `string`: a string
-> m () |

Associates a new string value with `key` under `groupName`. If `key` cannot be found then it is created. If `groupName` cannot be found then it is created. Unlike `keyFileSetValue`, this function handles characters that need escaping, such as newlines.

Since: 2.6

## setStringList

keyFileSetStringList Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> [Text] | `list`: an array of string values
-> Word64 | `length`: number of string values in `list`
-> m () |

Associates a list of string values for `key` under `groupName`. If `key` cannot be found then it is created. If `groupName` cannot be found then it is created.

Since: 2.6

## setUint64

keyFileSetUint64 Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Word64 | `value`: an integer value
-> m () |

Associates a new integer value with `key` under `groupName`. If `key` cannot be found then it is created.

Since: 2.26

## setValue

keyFileSetValue Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> Text | `groupName`: a group name
-> Text | `key`: a key
-> Text | `value`: a string
-> m () |

Associates a new value with `key` under `groupName`.

If `key` cannot be found then it is created. If `groupName` cannot be found then it is created. To set an UTF-8 string which may contain characters that need escaping (such as newlines or spaces), use `keyFileSetString`.

Since: 2.6

## toData

keyFileToData Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> m (Text, Word64) | Returns: a newly allocated string holding the contents of the `KeyFile` (Can throw `GError`)

This function outputs `keyFile` as a string.

Note that this function never reports an error, so it is safe to pass `Nothing` as `error`.

Since: 2.6

## unref

keyFileUnref Source #

Arguments

:: (HasCallStack, MonadIO m) |
=> KeyFile | `keyFile`: a `KeyFile`
-> m () |

Decreases the reference count of `keyFile` by 1. If the reference count reaches zero, frees the key file and all its allocated memory.

Since: 2.32