Skip to content
Ruby Config File Parser for Standard Unix/Linux Type Config Files
Ruby Shell
Find file
Latest commit 8d3a16f @derks derks Resolves Issue #31
Failed to load latest commit information.
doc Resolves Issue #31
lib Resolves Issue #31
tests Resolves Issue #31
utils Bumping version to 1.0.6 stable
.travis.yml Test on Ruby 2.2
CREDITS Adding Tim Ekl to CREDITS
Changelog Resolves Issue #31
LICENSE Update Year
README.md Resolves Issue #31
parseconfig.gemspec Resolves Issue #31

README.md

Ruby ParseConfig Library

ParseConfig provides simple parsing of standard configuration files in the form of param = value. It also supports nested [group] sections.

Continuous Integration Status

Installation

$ gem install parseconfig

Gemfile

gem 'parseconfig'

Usage

An example configuration file might look like:

# Example Config
param1 = value1
param2 = value2

[group1]
group1_param1 = group1_value1
group1_param2 = group1_value2

[group2]
group2_param1 = group2_value1
group2_param2 = group2_value2

Access it with ParseConfig:

>> require 'parseconfig'
=> true

>> config = ParseConfig.new('/path/to/config/example.conf')
=> #<ParseConfig:0x102410908
      @config_file="example.conf",
      @groups=["group1", "group2"],
      @params={
            "param1"=>"value1"
            "param2"=>"value2",
            "group1"=>{
                "param1"=>"value1"
                "param2"=>"value2",
            },
            "group2"=>{
                "param1"=>"value1"
                "param2"=>"value2",
            },
    }>

>> config.get_params
=> ["param1", "param2", "group1", "group2"]

>> config['param1']
=> "value1"

>> config.get_groups
=> ["group1", "group2"]

>> config['group1']
=> {"group1_param1"=>"group1_value1", "group1_param2"=>"group1_value2"}

>> config['group1']['group1_param1']
=> "group1_value1"

>> file = File.open('/path/to/config/file', 'w')
=> #<File:file>

>> config.write(file)
=> []

>> file.close
=> nil

License

The ParseConfig library is Open Source and distributed under the MIT license. Please see the LICENSE file included with this software.

Something went wrong with that request. Please try again.