Man page of Glib::KeyFile

Glib::KeyFile

Section: User Contributed Perl Documentation (3pm)

Updated: 2014-08-29

Index?action=index Return to Main Contents


NAME

Glib::KeyFile - Parser for .ini-like files

SYNOPSIS

  use Glib;

  $data .= $_ while (<DATA>);

  $f = Glib::KeyFile->new;
  $f->load_from_data($data);
  if ($f->has_group('Main') && $f->has_key('Main', 'someotherkey')) {
      $val = $f->get_integer('Main', 'someotherkey');
      print $val . "\n";
  }
  0;
  __DATA__
  # a comment
  [MainSection]
  somekey=somevalue
  someotherkey=42
  someboolkey=true
  listkey=1;1;2;3;5;8;13;21
  localekey=Good Morning
  localekey[it]=Buon giorno
  localekey[es]=Buenas dias
  localekey[fr]=Bonjour

DESCRIPTION

Glib::KeyFile lets you parse, edit or create files containing groups of key-value pairs, which we call key files for lack of a better name. Several freedesktop.org specifications use key files now, e.g the Desktop Entry Specification and the Icon Theme Specification.

The syntax of key files is described in detail in the Desktop Entry Specification, here is a quick summary: Key files consists of groups of key-value pairs, interspersed with comments.

METHODS

keyfile = Glib::KeyFile->new

boolean = $key_file->get_boolean ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves a boolean value from
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

list = $key_file->get_boolean_list ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves a list of booleans from
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

$key_file->set_boolean_list ($group_name, $key, ...)

 $group_name
(string):
 $key
(string):
... (list) list of booleans:
Sets a list of booleans in
 $key
inside
 $group_name
. If
 $key
cannot be found then it is created. If
 $group_name
cannot be found then it is created.

$key_file->set_boolean ($group_name, $key, $value)

 $group_name
(string):
 $key
(string):
 $value
(boolean):
Sets a boolean value to
 $key
inside
 $group_name
. If
 $key
is not found, it is created.

string = $key_file->get_comment ($group_name=undef, $key=undef)

 $group_name
(string or undef):
 $key
(string or undef):
Retreives a comment above
 $key
from
 $group_name
. If
 $key
is undef then
 $comment
will be read from above
 $group_name
. If both
 $key
and
 $group_name
are undef, then
 $comment
will be read from above the first group in the file.

May croak with a Glib::Error in [email protected] on failure.

$key_file->set_comment ($group_name, $key, $comment)

 $group_name
(string or undef):
 $key
(string or undef):
 $comment
(string):
Places a comment above
 $key
from
 $group_name
. If
 $key
is undef then
 $comment
will be written above
 $group_name
. If both
 $key
and
 $group_name
are undef, then
 $comment
will be written above the first group in the file.

May croak with a Glib::Error in [email protected] on failure.

double = $key_file->get_double ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves a double value from
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

Since: glib 2.12

list = $key_file->get_double_list ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves a list of doubles from
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

Since: glib 2.12

$key_file->set_double_list ($group_name, $key, ...)

 $group_name
(string):
 $key
(string):
... (list) list of doubles:
Sets a list of doubles in
 $key
inside
 $group_name
. If
 $key
cannot be found then it is created. If
 $group_name
cannot be found then it is created.

Since: glib 2.12

$key_file->set_double ($group_name, $key, $value)

 $group_name
(string):
 $key
(string):
 $value
(double):
Sets a double value to
 $key
inside
 $group_name
. If
 $key
is not found, it is created.

Since: glib 2.12

list = $key_file->get_groups

Returns the list of groups inside the key_file.

boolean = $key_file->has_group ($group_name)

 $group_name
(string):
Checks whether
 $group_name
is present in
 $key_file
.

boolean = $key_file->has_key ($group_name, $key)

 $group_name
(string):
 $key
(string):
Checks whether
 $group_name
has
 $key
in it.

May croak with a Glib::Error in [email protected] on failure.

integer = $key_file->get_integer ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves an integer value from
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

list = $key_file->get_integer_list ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves a list of integers from
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

$key_file->set_integer_list ($group_name, $key, ...)

 $group_name
(string):
 $key
(string):
... (list) list of integers:
Sets a list of doubles in
 $key
inside
 $group_name
. If
 $key
cannot be found then it is created. If
 $group_name
cannot be found then it is created.

$key_file->set_integer ($group_name, $key, $value)

 $group_name
(string):
 $key
(string):
 $value
(integer):
Sets an integer value to
 $key
inside
 $group_name
. If
 $key
is not found, it is created.

list = $key_file->get_keys ($group_name)

 $group_name
(string):

Returns the list of keys inside a group of the key file.

May croak with a Glib::Error in [email protected] on failure.

$key_file->set_list_separator ($separator)

 $separator
(string):

Sets the list separator character.

boolean = $key_file->load_from_data ($buf, $flags)

 $buf
(scalar):
 $flags
(Glib::KeyFileFlags):

Parses a string containing a key file structure.

May croak with a Glib::Error in [email protected] on failure.

boolean = $key_file->load_from_data_dirs ($file, $flags)

(boolean, scalar) = $key_file->load_from_data_dirs ($file, $flags)

 $file
(string):
 $flags
(Glib::KeyFileFlags):

Parses a key file, searching for it inside the data directories. In scalar context, it returns a boolean value (true on success, false otherwise); in array context, it returns a boolean value and the full path of the file.

May croak with a Glib::Error in [email protected] on failure.

boolean = $key_file->load_from_dirs ($file, $flags, @search_dirs)

(boolean, scalar) = $key_file->load_from_dirs ($file, $flags, @search_dirs)

 $file
(string):
 $flags
(Glib::KeyFileFlags):
... (list):

Parses a key file, searching for it inside the specified directories. In scalar context, it returns a boolean value (true on success, false otherwise); in array context, it returns a boolean value and the full path of the file.

May croak with a Glib::Error in [email protected] on failure.

Since: glib 2.14

boolean = $key_file->load_from_file ($file, $flags)

 $file
(string):
 $flags
(Glib::KeyFileFlags):

Parses a key file.

May croak with a Glib::Error in [email protected] on failure.

string = $key_file->get_locale_string ($group_name, $key, $locale=undef)

 $group_name
(string):
 $key
(string):
 $locale
(string or undef):
Returns the value associated with
 $key
under
 $group_name
translated in the given
 $locale
if available. If
 $locale
is undef then the current locale is assumed.

May croak with a Glib::Error in [email protected] on failure.

list = $key_file->get_locale_string_list ($group_name, $key, $locale)

 $group_name
(string):
 $key
(string):
 $locale
(string):

May croak with a Glib::Error in [email protected] on failure.

$key_file->set_locale_string_list ($group_name, $key, $locale, ...)

 $group_name
(string):
 $key
(string):
 $locale
(string):
... (list):
Associates a list of string values for
 $key
and
 $locale
under
 $group_name
. If the translation for
 $key
cannot be found then it is created.

$key_file->set_locale_string ($group_name, $key, $locale, $string)

 $group_name
(string):
 $key
(string):
 $locale
(string):
 $string
(string):

$key_file->remove_comment ($group_name=undef, $key=undef)

 $group_name
(string or undef):
 $key
(string or undef):
Removes a comment from a group in a key file. If
 $key
is undef, the comment will be removed from above
 $group_name
. If both
 $key
and
 $group_name
are undef, the comment will be removed from the top of the key file.

May croak with a Glib::Error in [email protected] on failure.

$key_file->remove_group ($group_name)

 $group_name
(string):

Removes a group from a key file.

May croak with a Glib::Error in [email protected] on failure.

$key_file->remove_key ($group_name, $key)

 $group_name
(string):
 $key
(string):
Removes a key from
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

string = $key_file->get_start_group

Returns the first group inside a key file.

string = $key_file->get_string ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves a string value from
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

list = $key_file->get_string_list ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves a list of strings from
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

$key_file->set_string_list ($group_name, $key, ...)

 $group_name
(string):
 $key
(string):
... (list) list of strings:
Sets a list of strings in
 $key
inside
 $group_name
. The strings will be escaped if contain special characters. If
 $key
cannot be found then it is created. If
 $group_name
cannot be found then it is created.

$key_file->set_string ($group_name, $key, $value)

 $group_name
(string):
 $key
(string):
 $value
(string):
Sets a string value to
 $key
inside
 $group_name
. The string will be escaped if it contains special characters. If
 $key
is not found, it is created.

string = $key_file->to_data

Returns the key file as a string.

May croak with a Glib::Error in [email protected] on failure.

string = $key_file->get_value ($group_name, $key)

 $group_name
(string):
 $key
(string):
Retrieves the literal value of
 $key
inside
 $group_name
.

May croak with a Glib::Error in [email protected] on failure.

$key_file->set_value ($group_name, $key, $value)

 $group_name
(string):
 $key
(string):
 $value
(string):
Sets the literal value of
 $key
inside
 $group_name
. If
 $key
cannot be found, it is created. If
 $group_name
cannot be found, it is created.

ENUMS AND FLAGS

flags Glib::KeyFileFlags

'none' / 'G_KEY_FILE_NONE':
'keep-comments' / 'G_KEY_FILE_KEEP_COMMENTS':
'keep-translations' / 'G_KEY_FILE_KEEP_TRANSLATIONS':

SEE ALSO

Glib

COPYRIGHT

Copyright (C) 2003-2011 by the gtk2-perl team.

This software is licensed under the LGPL. See Glib for a full notice.


Index

NAME

SYNOPSIS

DESCRIPTION

METHODS

keyfile = Glib::KeyFile->new

boolean = $key_file->get_boolean ($group_name, $key)

list = $key_file->get_boolean_list ($group_name, $key)

$key_file->set_boolean_list ($group_name, $key, ...)

$key_file->set_boolean ($group_name, $key, $value)

string = $key_file->get_comment ($group_name=undef, $key=undef)

$key_file->set_comment ($group_name, $key, $comment)

double = $key_file->get_double ($group_name, $key)

list = $key_file->get_double_list ($group_name, $key)

$key_file->set_double_list ($group_name, $key, ...)

$key_file->set_double ($group_name, $key, $value)

list = $key_file->get_groups

boolean = $key_file->has_group ($group_name)

boolean = $key_file->has_key ($group_name, $key)

integer = $key_file->get_integer ($group_name, $key)

list = $key_file->get_integer_list ($group_name, $key)

$key_file->set_integer_list ($group_name, $key, ...)

$key_file->set_integer ($group_name, $key, $value)

list = $key_file->get_keys ($group_name)

$key_file->set_list_separator ($separator)

boolean = $key_file->load_from_data ($buf, $flags)

boolean = $key_file->load_from_data_dirs ($file, $flags)

(boolean, scalar) = $key_file->load_from_data_dirs ($file, $flags)

boolean = $key_file->load_from_dirs ($file, $flags, @search_dirs)

(boolean, scalar) = $key_file->load_from_dirs ($file, $flags, @search_dirs)

boolean = $key_file->load_from_file ($file, $flags)

string = $key_file->get_locale_string ($group_name, $key, $locale=undef)

list = $key_file->get_locale_string_list ($group_name, $key, $locale)

$key_file->set_locale_string_list ($group_name, $key, $locale, ...)

$key_file->set_locale_string ($group_name, $key, $locale, $string)

$key_file->remove_comment ($group_name=undef, $key=undef)

$key_file->remove_group ($group_name)

$key_file->remove_key ($group_name, $key)

string = $key_file->get_start_group

string = $key_file->get_string ($group_name, $key)

list = $key_file->get_string_list ($group_name, $key)

$key_file->set_string_list ($group_name, $key, ...)

$key_file->set_string ($group_name, $key, $value)

string = $key_file->to_data

string = $key_file->get_value ($group_name, $key)

$key_file->set_value ($group_name, $key, $value)

ENUMS AND FLAGS

flags Glib::KeyFileFlags

SEE ALSO

COPYRIGHT