mirror of
https://github.com/mkdocs/mkdocs.git
synced 2026-03-27 09:58:31 +07:00
Merge pull request #145 from d0ugal/template-override
Support multiple template directories
This commit is contained in:
@@ -20,6 +20,10 @@ You can determine your currently installed version using `pip freeze`:
|
||||
`mardown_extensions`. (#74)
|
||||
* Added `mkdocs json` command to output your rendered
|
||||
documentation as json files. (#128)
|
||||
* Support multiple theme directories to allow replacement of
|
||||
individual templates rather than copying the full theme. (#129)
|
||||
* Bugfix: Fix issue rendering the table of contents with some
|
||||
configs. (#146)
|
||||
* Bugfix: Fix path for embeded images in sub pages. (#138)
|
||||
* Bugfix: Fix `use_directory_urls` config behaviour. (#63)
|
||||
* Bugfix: Add support for `extra_javascript` and `extra_css` in
|
||||
|
||||
@@ -217,6 +217,7 @@ def build(config, live_server=False, dump_json=False):
|
||||
if dump_json:
|
||||
build_pages(config, dump_json=True)
|
||||
else:
|
||||
utils.copy_media_files(config['theme_dir'], config['site_dir'])
|
||||
for theme_dir in config['theme_dir']:
|
||||
utils.copy_media_files(theme_dir, config['site_dir'])
|
||||
utils.copy_media_files(config['docs_dir'], config['site_dir'])
|
||||
build_pages(config)
|
||||
|
||||
@@ -117,9 +117,13 @@ def validate_config(user_config):
|
||||
if config['extra_javascript'] is None:
|
||||
config['extra_javascript'] = extra_javascript
|
||||
|
||||
if config['theme_dir'] is None:
|
||||
package_dir = os.path.dirname(__file__)
|
||||
config['theme_dir'] = os.path.join(package_dir, 'themes', config['theme'])
|
||||
package_dir = os.path.dirname(__file__)
|
||||
theme_dir = [os.path.join(package_dir, 'themes', config['theme'])]
|
||||
|
||||
if config['theme_dir'] is not None:
|
||||
theme_dir.insert(0, config['theme_dir'])
|
||||
|
||||
config['theme_dir'] = theme_dir
|
||||
|
||||
if config['repo_url'] is not None and config['repo_name'] is None:
|
||||
repo_host = urlparse(config['repo_url']).netloc.lower()
|
||||
|
||||
@@ -86,7 +86,8 @@ def serve(config, options=None):
|
||||
config_event_handler = ConfigEventHandler(options)
|
||||
observer = observers.Observer()
|
||||
observer.schedule(event_handler, config['docs_dir'], recursive=True)
|
||||
observer.schedule(event_handler, config['theme_dir'], recursive=True)
|
||||
for theme_dir in config['theme_dir']:
|
||||
observer.schedule(event_handler, theme_dir, recursive=True)
|
||||
observer.schedule(config_event_handler, '.')
|
||||
observer.start()
|
||||
|
||||
|
||||
6
tox.ini
6
tox.ini
@@ -9,13 +9,15 @@ commands=
|
||||
{envbindir}/nosetests --with-coverage --cover-package mkdocs --cover-html --cover-html-dir {envtmpdir}/coverage mkdocs/test.py
|
||||
|
||||
[testenv:docs]
|
||||
usedevelop = True
|
||||
commands=
|
||||
{envbindir}/coverage run --source {envsitepackagesdir}/mkdocs {envbindir}/mkdocs build
|
||||
{envbindir}/coverage run --source {toxinidir}/mkdocs {envbindir}/mkdocs build
|
||||
coverage report -m
|
||||
|
||||
[testenv:json]
|
||||
usedevelop = True
|
||||
commands=
|
||||
{envbindir}/coverage run --source {envsitepackagesdir}/mkdocs {envbindir}/mkdocs json
|
||||
{envbindir}/coverage run --source {toxinidir}/mkdocs {envbindir}/mkdocs json
|
||||
coverage report -m
|
||||
|
||||
[testenv:flake8]
|
||||
|
||||
Reference in New Issue
Block a user