Work towards having a single nav file

The idea here is that there is a single file for the nav for all the docs,
both online and offline. The nav will be the full online nav in all its blog
glory, and then the build system will strip out the nav items relating to
the blog when building the offline version.

There's a wrinkle or two still in here; the main one being that when doing a
docs-serve, it seems that the cleaning up of the online nav doesn't happen
when you Ctrl-C out of the server. I'm not 100% sure of the cause of
this (there could be a couple of different reasons).

For now... I'm ensuring that the online/offline nav files are excluded from
git. It would be nice to find out how best to always ensure that the online
nav file is removed so nobody attempting to update the docs gets confused
about what to edit.
This commit is contained in:
Dave Pearson
2023-02-08 14:36:56 +00:00
parent ddb2579168
commit a295c5f968
5 changed files with 196 additions and 354 deletions

2
.gitignore vendored
View File

@@ -111,6 +111,8 @@ venv.bak/
# mkdocs documentation
/site
/docs-offline
/mkdocs-nav-online.yml
/mkdocs-nav-offline.yml
# mypy
.mypy_cache/

View File

@@ -28,17 +28,30 @@ format-check:
clean-screenshot-cache:
rm -rf .screenshot_cache
.PHONY: docs-offline-nav
docs-offline-nav:
echo "INHERIT: mkdocs-offline.yml" > mkdocs-nav-offline.yml
grep -v "\- \"*[Bb]log" mkdocs-nav.yml >> mkdocs-nav-offline.yml
.PHONY: docs-online-nav
docs-online-nav:
echo "INHERIT: mkdocs-online.yml" > mkdocs-nav-online.yml
cat mkdocs-nav.yml >> mkdocs-nav-online.yml
.PHONY: docs-serve
docs-serve: clean-screenshot-cache
$(run) mkdocs serve --config-file mkdocs-online.yml
docs-serve: clean-screenshot-cache docs-online-nav
$(run) mkdocs serve --config-file mkdocs-nav-online.yml
rm -f mkdocs-nav-online.yml
.PHONY: docs-build
docs-build:
$(run) mkdocs build --config-file mkdocs-online.yml
docs-build: docs-online-nav
$(run) mkdocs build --config-file mkdocs-nav-online.yml
rm -f mkdocs-nav-online.yml
.PHONY: docs-build-offline
docs-build-offline:
$(run) mkdocs build --config-file mkdocs-offline.yml
docs-build-offline: docs-offline-nav
$(run) mkdocs build --config-file mkdocs-nav-offline.yml
rm -f mkdocs-nav-offline.yml
.PHONY: clean-offline-docs
clean-offline-docs:

175
mkdocs-nav.yml Normal file
View File

@@ -0,0 +1,175 @@
nav:
- Introduction:
- "index.md"
- "getting_started.md"
- "help.md"
- "tutorial.md"
- Guide:
- "guide/index.md"
- "guide/devtools.md"
- "guide/app.md"
- "guide/styles.md"
- "guide/CSS.md"
- "guide/design.md"
- "guide/queries.md"
- "guide/layout.md"
- "guide/events.md"
- "guide/input.md"
- "guide/actions.md"
- "guide/reactivity.md"
- "guide/widgets.md"
- "guide/animation.md"
- "guide/screens.md"
- "roadmap.md"
- Reference:
- "reference/index.md"
- CSS Types:
- "css_types/index.md"
- "css_types/border.md"
- "css_types/color.md"
- "css_types/horizontal.md"
- "css_types/integer.md"
- "css_types/name.md"
- "css_types/number.md"
- "css_types/overflow.md"
- "css_types/percentage.md"
- "css_types/scalar.md"
- "css_types/text_align.md"
- "css_types/text_style.md"
- "css_types/vertical.md"
- Events:
- "events/index.md"
- "events/blur.md"
- "events/descendant_blur.md"
- "events/descendant_focus.md"
- "events/enter.md"
- "events/focus.md"
- "events/hide.md"
- "events/key.md"
- "events/leave.md"
- "events/load.md"
- "events/mount.md"
- "events/mouse_capture.md"
- "events/click.md"
- "events/mouse_down.md"
- "events/mouse_move.md"
- "events/mouse_release.md"
- "events/mouse_scroll_down.md"
- "events/mouse_scroll_up.md"
- "events/mouse_up.md"
- "events/paste.md"
- "events/resize.md"
- "events/screen_resume.md"
- "events/screen_suspend.md"
- "events/show.md"
- Styles:
- "styles/index.md"
- "styles/align.md"
- "styles/background.md"
- "styles/border.md"
- "styles/box_sizing.md"
- "styles/color.md"
- "styles/content_align.md"
- "styles/display.md"
- "styles/dock.md"
- Grid:
- "styles/grid/index.md"
- "styles/grid/column_span.md"
- "styles/grid/grid_columns.md"
- "styles/grid/grid_gutter.md"
- "styles/grid/grid_rows.md"
- "styles/grid/grid_size.md"
- "styles/grid/row_span.md"
- "styles/height.md"
- "styles/layer.md"
- "styles/layers.md"
- "styles/layout.md"
- Links:
- "styles/links/index.md"
- "styles/links/link_background.md"
- "styles/links/link_color.md"
- "styles/links/link_hover_background.md"
- "styles/links/link_hover_color.md"
- "styles/links/link_hover_style.md"
- "styles/links/link_style.md"
- "styles/margin.md"
- "styles/max_height.md"
- "styles/max_width.md"
- "styles/min_height.md"
- "styles/min_width.md"
- "styles/offset.md"
- "styles/opacity.md"
- "styles/outline.md"
- "styles/overflow.md"
- "styles/padding.md"
- Scrollbar colors:
- "styles/scrollbar_colors/index.md"
- "styles/scrollbar_colors/scrollbar_background.md"
- "styles/scrollbar_colors/scrollbar_background_active.md"
- "styles/scrollbar_colors/scrollbar_background_hover.md"
- "styles/scrollbar_colors/scrollbar_color.md"
- "styles/scrollbar_colors/scrollbar_color_active.md"
- "styles/scrollbar_colors/scrollbar_color_hover.md"
- "styles/scrollbar_colors/scrollbar_corner_color.md"
- "styles/scrollbar_gutter.md"
- "styles/scrollbar_size.md"
- "styles/text_align.md"
- "styles/text_opacity.md"
- "styles/text_style.md"
- "styles/tint.md"
- "styles/visibility.md"
- "styles/width.md"
- Widgets:
- "widgets/button.md"
- "widgets/checkbox.md"
- "widgets/data_table.md"
- "widgets/directory_tree.md"
- "widgets/footer.md"
- "widgets/header.md"
- "widgets/index.md"
- "widgets/input.md"
- "widgets/label.md"
- "widgets/list_item.md"
- "widgets/list_view.md"
- "widgets/placeholder.md"
- "widgets/static.md"
- "widgets/text_log.md"
- "widgets/tree.md"
- API:
- "api/index.md"
- "api/app.md"
- "api/binding.md"
- "api/button.md"
- "api/checkbox.md"
- "api/color.md"
- "api/containers.md"
- "api/coordinate.md"
- "api/data_table.md"
- "api/directory_tree.md"
- "api/dom_node.md"
- "api/events.md"
- "api/footer.md"
- "api/geometry.md"
- "api/header.md"
- "api/input.md"
- "api/label.md"
- "api/list_view.md"
- "api/list_item.md"
- "api/message_pump.md"
- "api/message.md"
- "api/pilot.md"
- "api/placeholder.md"
- "api/query.md"
- "api/reactive.md"
- "api/screen.md"
- "api/scroll_view.md"
- "api/static.md"
- "api/strip.md"
- "api/text_log.md"
- "api/timer.md"
- "api/tree.md"
- "api/tree_node.md"
- "api/walk.md"
- "api/widget.md"
- "Blog":
- blog/index.md

View File

@@ -9,175 +9,3 @@ plugins:
- blog/*
site_dir: docs-offline
nav:
- Introduction:
- "index.md"
- "getting_started.md"
- "help.md"
- "tutorial.md"
- Guide:
- "guide/index.md"
- "guide/devtools.md"
- "guide/app.md"
- "guide/styles.md"
- "guide/CSS.md"
- "guide/design.md"
- "guide/queries.md"
- "guide/layout.md"
- "guide/events.md"
- "guide/input.md"
- "guide/actions.md"
- "guide/reactivity.md"
- "guide/widgets.md"
- "guide/animation.md"
- "guide/screens.md"
- "roadmap.md"
- Reference:
- "reference/index.md"
- CSS Types:
- "css_types/index.md"
- "css_types/border.md"
- "css_types/color.md"
- "css_types/horizontal.md"
- "css_types/integer.md"
- "css_types/name.md"
- "css_types/number.md"
- "css_types/overflow.md"
- "css_types/percentage.md"
- "css_types/scalar.md"
- "css_types/text_align.md"
- "css_types/text_style.md"
- "css_types/vertical.md"
- Events:
- "events/index.md"
- "events/blur.md"
- "events/descendant_blur.md"
- "events/descendant_focus.md"
- "events/enter.md"
- "events/focus.md"
- "events/hide.md"
- "events/key.md"
- "events/leave.md"
- "events/load.md"
- "events/mount.md"
- "events/mouse_capture.md"
- "events/click.md"
- "events/mouse_down.md"
- "events/mouse_move.md"
- "events/mouse_release.md"
- "events/mouse_scroll_down.md"
- "events/mouse_scroll_up.md"
- "events/mouse_up.md"
- "events/paste.md"
- "events/resize.md"
- "events/screen_resume.md"
- "events/screen_suspend.md"
- "events/show.md"
- Styles:
- "styles/index.md"
- "styles/align.md"
- "styles/background.md"
- "styles/border.md"
- "styles/box_sizing.md"
- "styles/color.md"
- "styles/content_align.md"
- "styles/display.md"
- "styles/dock.md"
- Grid:
- "styles/grid/index.md"
- "styles/grid/column_span.md"
- "styles/grid/grid_columns.md"
- "styles/grid/grid_gutter.md"
- "styles/grid/grid_rows.md"
- "styles/grid/grid_size.md"
- "styles/grid/row_span.md"
- "styles/height.md"
- "styles/layer.md"
- "styles/layers.md"
- "styles/layout.md"
- Links:
- "styles/links/index.md"
- "styles/links/link_background.md"
- "styles/links/link_color.md"
- "styles/links/link_hover_background.md"
- "styles/links/link_hover_color.md"
- "styles/links/link_hover_style.md"
- "styles/links/link_style.md"
- "styles/margin.md"
- "styles/max_height.md"
- "styles/max_width.md"
- "styles/min_height.md"
- "styles/min_width.md"
- "styles/offset.md"
- "styles/opacity.md"
- "styles/outline.md"
- "styles/overflow.md"
- "styles/padding.md"
- Scrollbar colors:
- "styles/scrollbar_colors/index.md"
- "styles/scrollbar_colors/scrollbar_background.md"
- "styles/scrollbar_colors/scrollbar_background_active.md"
- "styles/scrollbar_colors/scrollbar_background_hover.md"
- "styles/scrollbar_colors/scrollbar_color.md"
- "styles/scrollbar_colors/scrollbar_color_active.md"
- "styles/scrollbar_colors/scrollbar_color_hover.md"
- "styles/scrollbar_colors/scrollbar_corner_color.md"
- "styles/scrollbar_gutter.md"
- "styles/scrollbar_size.md"
- "styles/text_align.md"
- "styles/text_opacity.md"
- "styles/text_style.md"
- "styles/tint.md"
- "styles/visibility.md"
- "styles/width.md"
- Widgets:
- "widgets/button.md"
- "widgets/checkbox.md"
- "widgets/data_table.md"
- "widgets/directory_tree.md"
- "widgets/footer.md"
- "widgets/header.md"
- "widgets/index.md"
- "widgets/input.md"
- "widgets/label.md"
- "widgets/list_item.md"
- "widgets/list_view.md"
- "widgets/placeholder.md"
- "widgets/static.md"
- "widgets/text_log.md"
- "widgets/tree.md"
- API:
- "api/index.md"
- "api/app.md"
- "api/binding.md"
- "api/button.md"
- "api/checkbox.md"
- "api/color.md"
- "api/containers.md"
- "api/coordinate.md"
- "api/data_table.md"
- "api/directory_tree.md"
- "api/dom_node.md"
- "api/events.md"
- "api/footer.md"
- "api/geometry.md"
- "api/header.md"
- "api/input.md"
- "api/label.md"
- "api/list_view.md"
- "api/list_item.md"
- "api/message_pump.md"
- "api/message.md"
- "api/pilot.md"
- "api/placeholder.md"
- "api/query.md"
- "api/reactive.md"
- "api/screen.md"
- "api/static.md"
- "api/text_log.md"
- "api/timer.md"
- "api/tree.md"
- "api/tree_node.md"
- "api/walk.md"
- "api/widget.md"

View File

@@ -14,179 +14,3 @@ plugins:
- categories
- release
- tags
nav:
- Introduction:
- "index.md"
- "getting_started.md"
- "help.md"
- "tutorial.md"
- Guide:
- "guide/index.md"
- "guide/devtools.md"
- "guide/app.md"
- "guide/styles.md"
- "guide/CSS.md"
- "guide/design.md"
- "guide/queries.md"
- "guide/layout.md"
- "guide/events.md"
- "guide/input.md"
- "guide/actions.md"
- "guide/reactivity.md"
- "guide/widgets.md"
- "guide/animation.md"
- "guide/screens.md"
- "roadmap.md"
- Reference:
- "reference/index.md"
- CSS Types:
- "css_types/index.md"
- "css_types/border.md"
- "css_types/color.md"
- "css_types/horizontal.md"
- "css_types/integer.md"
- "css_types/name.md"
- "css_types/number.md"
- "css_types/overflow.md"
- "css_types/percentage.md"
- "css_types/scalar.md"
- "css_types/text_align.md"
- "css_types/text_style.md"
- "css_types/vertical.md"
- Events:
- "events/index.md"
- "events/blur.md"
- "events/descendant_blur.md"
- "events/descendant_focus.md"
- "events/enter.md"
- "events/focus.md"
- "events/hide.md"
- "events/key.md"
- "events/leave.md"
- "events/load.md"
- "events/mount.md"
- "events/mouse_capture.md"
- "events/click.md"
- "events/mouse_down.md"
- "events/mouse_move.md"
- "events/mouse_release.md"
- "events/mouse_scroll_down.md"
- "events/mouse_scroll_up.md"
- "events/mouse_up.md"
- "events/paste.md"
- "events/resize.md"
- "events/screen_resume.md"
- "events/screen_suspend.md"
- "events/show.md"
- Styles:
- "styles/index.md"
- "styles/align.md"
- "styles/background.md"
- "styles/border.md"
- "styles/box_sizing.md"
- "styles/color.md"
- "styles/content_align.md"
- "styles/display.md"
- "styles/dock.md"
- Grid:
- "styles/grid/index.md"
- "styles/grid/column_span.md"
- "styles/grid/grid_columns.md"
- "styles/grid/grid_gutter.md"
- "styles/grid/grid_rows.md"
- "styles/grid/grid_size.md"
- "styles/grid/row_span.md"
- "styles/height.md"
- "styles/layer.md"
- "styles/layers.md"
- "styles/layout.md"
- Links:
- "styles/links/index.md"
- "styles/links/link_background.md"
- "styles/links/link_color.md"
- "styles/links/link_hover_background.md"
- "styles/links/link_hover_color.md"
- "styles/links/link_hover_style.md"
- "styles/links/link_style.md"
- "styles/margin.md"
- "styles/max_height.md"
- "styles/max_width.md"
- "styles/min_height.md"
- "styles/min_width.md"
- "styles/offset.md"
- "styles/opacity.md"
- "styles/outline.md"
- "styles/overflow.md"
- "styles/padding.md"
- Scrollbar colors:
- "styles/scrollbar_colors/index.md"
- "styles/scrollbar_colors/scrollbar_background.md"
- "styles/scrollbar_colors/scrollbar_background_active.md"
- "styles/scrollbar_colors/scrollbar_background_hover.md"
- "styles/scrollbar_colors/scrollbar_color.md"
- "styles/scrollbar_colors/scrollbar_color_active.md"
- "styles/scrollbar_colors/scrollbar_color_hover.md"
- "styles/scrollbar_colors/scrollbar_corner_color.md"
- "styles/scrollbar_gutter.md"
- "styles/scrollbar_size.md"
- "styles/text_align.md"
- "styles/text_opacity.md"
- "styles/text_style.md"
- "styles/tint.md"
- "styles/visibility.md"
- "styles/width.md"
- Widgets:
- "widgets/button.md"
- "widgets/checkbox.md"
- "widgets/data_table.md"
- "widgets/directory_tree.md"
- "widgets/footer.md"
- "widgets/header.md"
- "widgets/index.md"
- "widgets/input.md"
- "widgets/label.md"
- "widgets/list_item.md"
- "widgets/list_view.md"
- "widgets/placeholder.md"
- "widgets/static.md"
- "widgets/text_log.md"
- "widgets/tree.md"
- API:
- "api/index.md"
- "api/app.md"
- "api/binding.md"
- "api/button.md"
- "api/checkbox.md"
- "api/color.md"
- "api/containers.md"
- "api/coordinate.md"
- "api/data_table.md"
- "api/directory_tree.md"
- "api/dom_node.md"
- "api/events.md"
- "api/footer.md"
- "api/geometry.md"
- "api/header.md"
- "api/input.md"
- "api/label.md"
- "api/list_view.md"
- "api/list_item.md"
- "api/message_pump.md"
- "api/message.md"
- "api/pilot.md"
- "api/placeholder.md"
- "api/query.md"
- "api/reactive.md"
- "api/screen.md"
- "api/scroll_view.md"
- "api/static.md"
- "api/strip.md"
- "api/text_log.md"
- "api/timer.md"
- "api/tree.md"
- "api/tree_node.md"
- "api/walk.md"
- "api/widget.md"
- "Blog":
- blog/index.md