Metadata-Version: 2.4
Name: mkdocs-ini-includer
Version: 1.0.0
Summary: A MkDocs plugin to include INI file content in documentation
Author: MkDocs Ini Includer
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Documentation
Classifier: Topic :: Software Development :: Documentation
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Requires-Dist: mkdocs>=1.0.0
Dynamic: author
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# MkDocs INI Includer

This is a MkDocs plugin that allows a MkDocs site to include all or part of an INI file inside the docs at build time.

## Why?
- Documenting the configuration system of an app without having to copy/paste config sections
- Showing the configuration for a specific feature

## Features
- ✅ Include whole INI files
- ✅ Include specific sections (e.g., `[section.name]` and all sub-data)
- ✅ Preserve comments (useful docs for users)
- ✅ Support array keys like `key1[] = abc, key1[] = def`
- ✅ Simple embedding without complex parsing

## Installation

```bash
pip install mkdocs-ini-includer
```

## Configuration

Add the plugin to your `mkdocs.yml`:

```yaml
plugins:
  - ini-includer:
      base_path: "path/to/your/ini/files"  # Optional: base path for INI files
      config_file: "app.ini"              # Optional: default INI file
```

## Usage

### Include Entire INI File

```markdown
{% ini-include %}
```

Or specify a specific file:

```markdown
{% ini-include file="config/app.ini" %}
```

### Include Specific Section

```markdown
{% ini-include section="database" %}
```

### Examples

Given an INI file `config/app.ini`:

```ini
# Application configuration
[app]
name = MyApp
version = 1.0.0

# Database settings
[database]
host = localhost
port = 5432
# Connection pool settings
pool_size = 10

[database.ssl]
enabled = true
cert_path = /path/to/cert
```

**Include entire file:**
```markdown
{% ini-include %}
```

**Include only database section:**
```markdown
{% ini-include section="database" %}
```

This will include the `[database]` section and all its subsections like `[database.ssl]`.

## Notes
- File paths are relative to your `docs_dir` unless `base_path` is configured
- Comments and formatting are preserved
- Array keys (like `key[]=value`) are supported
- Error handling displays helpful messages in the generated docs

