# ini-parser

> A better .ini files parser

Latest version **0.0.2** (published 2014-08-06) · 0 weekly downloads

## Install

```sh
npm install ini-parser
pnpm add ini-parser
yarn add ini-parser
bun add ini-parser
```

## Health

**Score 0/100 (F)** — status: abandoned.

Warnings: low downloads; no types; no esm support; has vulnerabilities; low quality score; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.2 |
| Published | 2014-08-06 |
| First published | 2014-08-06 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 1 |
| Install scripts | no |
| GitHub stars | 5 |
| Maintainers | rawiroaisen |
| Keywords | ini, linux, configration, parser, files |

## Links

- npm: https://www.npmjs.com/package/ini-parser
- Repository: git@github.com:rawiroaisen/node-ini-parser
- Homepage: https://github.com/rawiroaisen/node-ini-parser
- Issues: https://github.com/rawiroaisen/node-ini-parser/issues
- npm.io page: https://npm.io/package/ini-parser

## Alternatives

- [babylon](https://npm.io/package/babylon.md) — 5.1M weekly downloads
- [csscolorparser](https://npm.io/package/csscolorparser.md) — 3.7M weekly downloads
- [expr-eval-fork](https://npm.io/package/expr-eval-fork.md) — 1.5M weekly downloads
- [@leeoniya/ufuzzy](https://npm.io/package/@leeoniya/ufuzzy.md) — 247.7K weekly downloads
- [xml-parser](https://npm.io/package/xml-parser.md) — 78.4K weekly downloads

## Recent versions

- 0.0.2 (latest) — 2014-08-06
- 0.0.1 — 2014-08-06

## README

# Node ini-parser
Parse .ini files

## Install
```
npm install ini-parser
```

## Usage
```js
var parser = require('ini-parser')

parse.parse(String)

parser.parseFile('path/to/file', function(error, data){
	// do something
})

parse.parseFileSync('path/to/file')
```

## Example
```js
var parser = require('ini-parser')

console.log( parser.parseFileSync('rythmbox.desktop') )

{
	"Desktop Entry": {
		"Name": "Rhythmbox",
		"GenericName": "Music Player",
		"X-GNOME-FullName": "Rhythmbox Music Player",
		"Comment": "Play and organize your music collection",
		"Exec": "rhythmbox %U",
		"Terminal": "false",
		"Type": "Application",
		"Icon": "rhythmbox",
		"X-GNOME-DocPath": "rhythmbox/rhythmbox.xml",
		"Categories": "GNOME;GTK;AudioVideo;",
		"MimeType": "application/x-ogg;application/ogg;audio/x-vorbis+ogg;audio/x-scpls;audio/x-mp3;audio/x-mpeg;audio/mpeg;audio/x-mpegurl;audio/x-flac;",
		"Keywords": "Mp3;Audio;CD;MTP;Podcast;DAAP;Playlist;Ipod;",
		"StartupNotify": "true",
		"X-GNOME-Bugzilla-Bugzilla": "GNOME",
		"X-GNOME-Bugzilla-Product": "rhythmbox",
		"X-GNOME-Bugzilla-Component": "general",
		"X-GNOME-Bugzilla-OtherBinaries": "rhythmbox-client;rhythmbox-metadata;",
		"X-GNOME-Bugzilla-Version": "2.96",
		"Actions": "Play;Pause;Next;Previous;",
		"X-Ubuntu-Gettext-Domain": "rhythmbox"
	},
	
	"Desktop Action Play": {
		"Name": "Play",
		"Exec": "rhythmbox-client --play"
	},
	
	"Desktop Action Pause": {
		"Name": "Pause",
		"Exec": "rhythmbox-client --pause"
	},
	
	"Desktop Action Next": {
		"Name": "Next",
		"Exec": "rhythmbox-client --next"
	},
	
	"Desktop Action Previous": {
		"Name": "Previous",
		"Exec": "rhythmbox-client --previous"
	}
}
```
<br>
file rhythmbox.desktop

```ini
[Desktop Entry]
Name=Rhythmbox
GenericName=Music Player
X-GNOME-FullName=Rhythmbox Music Player
Comment=Play and organize your music collection
Exec=rhythmbox %U
Terminal=false
Type=Application
Icon=rhythmbox
X-GNOME-DocPath=rhythmbox/rhythmbox.xml
Categories=GNOME;GTK;AudioVideo;
MimeType=application/x-ogg;application/ogg;audio/x-vorbis+ogg;audio/x-scpls;audio/x-mp3;audio/x-mpeg;audio/mpeg;audio/x-mpegurl;audio/x-flac;
Keywords=Mp3;Audio;CD;MTP;Podcast;DAAP;Playlist;Ipod;
StartupNotify=true
X-GNOME-Bugzilla-Bugzilla=GNOME
X-GNOME-Bugzilla-Product=rhythmbox
X-GNOME-Bugzilla-Component=general
X-GNOME-Bugzilla-OtherBinaries=rhythmbox-client;rhythmbox-metadata;
X-GNOME-Bugzilla-Version=2.96
Actions=Play;Pause;Next;Previous;
X-Ubuntu-Gettext-Domain=rhythmbox

[Desktop Action Play]
Name=Play
Exec=rhythmbox-client --play

[Desktop Action Pause]
Name=Pause
Exec=rhythmbox-client --pause

[Desktop Action Next]
Name=Next
Exec=rhythmbox-client --next

[Desktop Action Previous]
Name=Previous
Exec=rhythmbox-client --previous
```

---
_Source: https://npm.io/package/ini-parser · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
