Metadata-Version: 2.1
Name: mkdocs-izsam-search
Version: 0.1.8
Summary: MkDocs plugin to extend search functions
Home-page: UNKNOWN
Author: Alessandro De Luca
Author-email: al.deluca@izs.it
License: MIT
Keywords: MkDocs,Search
Platform: UNKNOWN
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENCE.txt

# mkdocs-search-izsam

This is a MkDocs plugin that extends native search plugin in order to allow searches work locally. It will write two .js files (one storing a variable for `config` and one storing a variable for `docs`) that can be loaded in the theme using:

```html
<script src="{{ 'search/search_config.js'|url }}"></script>
<script src="{{ 'search/search_docs.js'|url }}"></script>
```

This will allow to avoid CORS problem caused by `loadJSON` functions and native `worker.js` model.

#### Important!

To use .js features and bypass the native `worker.js` model, the theme should be configured to use the `search_index_only` option as `true`:

```yaml
theme:
  name: null
  custom_dir: your_custom_theme
  include_search_page: true
  search_index_only: true
```

and then manage search with your favourite js library (in our project we still use `lunr.js` loaded in a script tag in the theme). For additional information please refer to [https://www.mkdocs.org/dev-guide/themes/#search-and-themes](https://www.mkdocs.org/dev-guide/themes/#search-and-themes).

## Setup

Install the plugin using pip:

`pip install mkdocs-izsam-search`

Activate the plugin in `mkdocs.yml`:
```yaml
plugins:
  - izsam-search
```

It is possible to use same config options of the native search plugin:

```yaml
- izsam-search:
        lang: en
```

More information about plugins in the [MkDocs documentation][mkdocs-plugins].

## See Also

[mkdocs-plugins]: http://www.mkdocs.org/user-guide/plugins/
[mkdocs-template]: https://www.mkdocs.org/user-guide/custom-themes/#template-variables
[mkdocs-block]: https://www.mkdocs.org/user-guide/styling-your-docs/#overriding-template-blocks


# Change log

## [0.1.8] - 2021-11-10

### Implementation of the main feature: build .js files to allow local search and avoid CORS problems
- Added necessary code in plugin.py
- Added instruction on README.md

## [0.1.7] - 2021-11-10

### Configuration error
- Configuration error: mkdocs_izsam_search.search_index.SearchIndex must be a subclass of mkdocs.plugins.BasePlugin. Changed search_index.py

## [0.1.6] - 2021-11-10

### Configuration error
- Configuration error: mkdocs_izsam_search.search_index.SearchIndex must be a subclass of mkdocs.plugins.BasePlugin. Changed entry_points in setup.py

## [0.1.5] - 2021-11-10

### Setup
- different syntax for setup()

## [0.1.4] - 2021-11-10

### Setup
- entry_points declaration in setup()

## [0.1.3] - 2021-11-10

### Debug on MANIFEST.in
- Modified `MANIFEST.in` there was an error causing import data issues

## [0.1.2] - 2021-11-10

### Edited
- `README.md`

## [0.0.1] - 2021-11-10

### Added
- `HISTORY.md`


