Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Config::INI(3)	      User Contributed Perl Documentation	Config::INI(3)

NAME
       Config::INI - simple .ini-file format

VERSION
       version 0.025

SYNOPSIS
       Config-INI comes	with code for reading .ini files:

	 my $config_hash = Config::INI::Reader->read_file('config.ini');

       ...and for writing ".ini" files:

	 Config::INI::Writer->write_file({ somekey => 'somevalue' }, 'config.ini');

       See Config::INI::Writer and Config::INI::Reader for more	examples.

GRAMMAR
       This section describes the format parsed	and produced by
       Config::INI::Reader and ::Writer.  It is	not an exhaustive and
       rigorously tested formal	grammar, it's just a description of this
       particular implementation of the	not-quite-standardized "INI" format.

	 ini-file   = {	<section> | <empty-line> }

	 empty-line = [	<space>	] <line-ending>

	 section	= <section-header> { <value-assignment>	| <empty-line> }

	 section-header	= [ <space> ] "[" <section-name> "]" [ <space> ] <line-ending>
	 section-name	= string

	 value-assignment = [ <space> ]	<property-name>	[ <space> ]
			    "="
			    [ <space> ]	<value>	[ <space> ]
			    <line-ending>
	 property-name	  = string-without-equals
	 value		  = string

	 comment     = <space> ";" [ <string> ]
	 line-ending = [ <comment> ] <EOL>

	 space = ( <TAB> | " " ) *
	 string-without-equals = string	- "="
	 string	= ? 1+ characters; not ";" or EOL; begins and ends with	non-space ?

       Of special note is the fact that	no escaping mechanism is defined,
       meaning that there is no	way to include an EOL or semicolon (for
       example)	in a value, property name, or section name.  If	you need this,
       either subclass,	wait for a subclass to be written for you, or find one
       of the many other INI-style parsers on the CPAN.

       The order of sections and value assignments within a section are	not
       significant, except that	given multiple assignments to one property
       name within a section, only the final one is used.  A section name may
       be used more than once; this will have the identical meaning as having
       all property assignments	in all sections	of that	name in	sequence.

DON'T FORGET
       The definitions above refer to the format used by the Reader and	Writer
       classes bundled in the Config-INI distribution.	These classes are
       designed	for easy subclassing, so it should be easy to replace their
       behavior	with whatever behavior your want.

       Patches,	feature	requests, and bug reports are welcome -- but I'm more
       interested in making sure you can write a subclass that does what you
       need, and less in making	Config-INI do what you want directly.

THANKS
       Thanks to Florian Ragwitz for improving the subclassability of Config-
       INI's modules, and for helping me do some of my first merging with
       git(7).

ORIGIN
       Originaly derived from Config::Tiny, by Adam Kennedy.

AUTHOR
       Ricardo Signes <rjbs@cpan.org>

COPYRIGHT AND LICENSE
       This software is	copyright (c) 2007 by Ricardo Signes.

       This is free software; you can redistribute it and/or modify it under
       the same	terms as the Perl 5 programming	language system	itself.

perl v5.32.0			  2014-11-16			Config::INI(3)

NAME | VERSION | SYNOPSIS | GRAMMAR | DON'T FORGET | THANKS | ORIGIN | AUTHOR | COPYRIGHT AND LICENSE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Config::INI&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help