Skip to content
A simple perl6 module for your config need
Other Gnuplot
  1. Other 77.1%
  2. Gnuplot 22.9%
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.

Build Status


This is a simple module to offer you a simple interface for when you need a configuration file. It support various format. The default file format is a perl6 expression.

It main use is for simple configuration file that work like the ini format. It work like a %hash object with additionnal .read and .write method

Dependancy and installation

The module depend on Data::Dump for the default format.

Config::INI for the the ini format

JSON::Prettyfor JSON

Change the format

The new and read methods take an additionnal argument to specify the format of the config file.

It's the f parameter. Like .new(f<ini>) will say to save using the "ini" format.


my $conf = #Provide a default format
#my $conf =<ini>) #if you want to use a ini file;
$conf.filename = "myconf.conf";

$conf<video><title> = "Dune"
$conf<subtitle><file> = "Dune_sub.ssa"
$conf<subtitle><format> = "ssa";

$conf.write(); # write the conf to a file
$conf.write("mycopyconf.con"); # you can also specify another file

# to read from an already existing file

$conf ="myconf.conf") # or .read("myconf.conf", :f<ini>))
say $conf<video><title>; #Dune


For now, the only available formats are ini and JSON the case is important since it try to load the Config::Simple::format module.

The ini format provide a _ key for the root. $conf<_><something> to read stuff not put in a section

Writting a new format module

Create a Config::Simple::myformat class that does Config::Simple::Role and define a write and read method


Edit the format tests for skipping when the attached module is not installed


This software is under the same licence as Rakudo, see the LICENCE file

You can’t perform that action at this time.