---
name: "Padre::Help"
section: "3pm"
platform: "linux"
package: "padre"
version: "1.00+dfsg-3"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/Padre::Help"
---

# Padre::Help(3pm)

Padre Help Provider API

## NAME

Padre::Help - Padre Help Provider API

## DESCRIPTION

The `"Padre::Help"` class provides a base class, default implementation and API documentation for help provision support in Padre.

In order to setup a help system for a document type called `"XYZ"` one has to do the following: Create a module called `"Padre::Help::XYZ"` that subclasses the `"Padre::Help"` module and override 3 methods: `"help_init"`, `"help_list"` and `"help_render"`.

In the class representing the Document (`"Padre::Document::XYZ"`) one should override the `"get_help_provider"` method and return an object of the help provide module. In our case it should contain

```
        require Padre::Help::XYZ;
        return Padre::Help::XYZ->new;
```

(TO DO: Maybe it should only return the name of the module)

The `"help_init"` method is called by the new method of `"Padre::Help"` once for every document of `"XYZ"` kind. (TO DO: maybe it should be only once for every document type, and not once for every document of that type).

`"help_list"` should return a reference to an array holding the possible strings the system can provide help for.

`"help_render"` is called by one of the keywords, it should return the HTML to be displayed as help and another string which is the location of the help. Usually a path to a file that will be used in the title of the window.
