| --- |
| title: Options |
| --- |
| ## Options |
| |
| The behaviour of kramdown can be adjusted via the available options. |
| |
| Options can be specified in multiple ways: |
| |
| On the command line |
| : The `kramdown` binary allows setting any option by using command line switches. |
| |
| For example, the following command will disable automatic header ID generation and defines the |
| first footnote number as 5: |
| |
| ~~~ |
| $ kramdown --no-auto-ids --footnote-nr 5 |
| ~~~ |
| |
| As you can see all underscores in option names have to be replaced with dashes. The built-in help |
| of the binary as well as the man-page show all available options. |
| |
| Within a kramdown document |
| : By using the special extension syntax, it is possible to set options within a document. |
| |
| Using the above example, the options would be set like this within a document: |
| |
| ~~~ |
| {::options auto_ids="false" footnote_nr="5" /} |
| ~~~ |
| |
| Using Ruby code |
| |
| : If you are using kramdown as a library, you can pass any options as second parameter to the |
| `Kramdown::Document.new` method. |
| |
| Again, using the above example you would initalize the kramdown document class as follows: |
| |
| ~~~ ruby |
| Kramdown::Document.new(source_text, \{auto_ids: false, footnote_nr: 5}) |
| ~~~ |
| |
| |
| ## Available Options |
| |
| Below is a list of all currently available options. Have a look at the documentation of a converter |
| or parser to see directly which options they support! |
| |
| {options: {items: all}} |