mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-03 03:27:10 +00:00
build(docs): output pages as pagename/index.html for clean URLs
Split DOCS_OUT into INDEX_OUT (index.md files stay as index.html) and PAGE_OUT (all other pages become pagename/index.html). The __ROOT__ depth computation already handles the extra directory level correctly.
This commit is contained in:
1 parent
b678e18863
commit
b209fc9e5a
1 file changed
+14
-3
@@ -11,8 +11,12 @@ SIDECAR_EMBED := internal/sidecar/assets/sidecar-all.jar
|
|||||||
SDK_AAR := sdk/android/build/outputs/aar/sdk-android-release.aar
|
SDK_AAR := sdk/android/build/outputs/aar/sdk-android-release.aar
|
||||||
SANDERLING_BIN := bin/sanderling
|
SANDERLING_BIN := bin/sanderling
|
||||||
|
|
||||||
DOCS_SRC := $(shell find docs -type f -name '*.md' -not -path 'docs/_*')
|
DOCS_SRC := $(shell find docs -type f -name '*.md' -not -path 'docs/_*')
|
||||||
DOCS_OUT := $(patsubst docs/%.md,build/site/%.html,$(DOCS_SRC))
|
INDEX_SRC := $(filter %index.md,$(DOCS_SRC))
|
||||||
|
PAGE_SRC := $(filter-out %index.md,$(DOCS_SRC))
|
||||||
|
INDEX_OUT := $(patsubst docs/%.md,build/site/%.html,$(INDEX_SRC))
|
||||||
|
PAGE_OUT := $(patsubst docs/%.md,build/site/%/index.html,$(PAGE_SRC))
|
||||||
|
DOCS_OUT := $(INDEX_OUT) $(PAGE_OUT)
|
||||||
DOCS_TEMPLATE := docs/_template/page.html
|
DOCS_TEMPLATE := docs/_template/page.html
|
||||||
|
|
||||||
INSPECT_DIST := internal/inspect/dist
|
INSPECT_DIST := internal/inspect/dist
|
||||||
@@ -90,12 +94,19 @@ build/site/_assets: docs/_assets
|
|||||||
@rm -rf $@
|
@rm -rf $@
|
||||||
@cp -R $< $@
|
@cp -R $< $@
|
||||||
|
|
||||||
build/site/%.html: docs/%.md $(DOCS_TEMPLATE)
|
define build_page
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
@pandoc $< --from=gfm --to=html5 --standalone \
|
@pandoc $< --from=gfm --to=html5 --standalone \
|
||||||
--highlight-style=tango --template=$(DOCS_TEMPLATE) -o $@
|
--highlight-style=tango --template=$(DOCS_TEMPLATE) -o $@
|
||||||
@rel=$$(echo $(patsubst build/site/%,%,$@) | awk -F/ '{for(i=1;i<NF;i++)printf "../"}'); \
|
@rel=$$(echo $(patsubst build/site/%,%,$@) | awk -F/ '{for(i=1;i<NF;i++)printf "../"}'); \
|
||||||
sed -i.bak "s|__ROOT__|$$rel|g" $@ && rm $@.bak
|
sed -i.bak "s|__ROOT__|$$rel|g" $@ && rm $@.bak
|
||||||
|
endef
|
||||||
|
|
||||||
|
$(INDEX_OUT): build/site/%.html: docs/%.md $(DOCS_TEMPLATE)
|
||||||
|
$(build_page)
|
||||||
|
|
||||||
|
$(PAGE_OUT): build/site/%/index.html: docs/%.md $(DOCS_TEMPLATE)
|
||||||
|
$(build_page)
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(GO) clean
|
$(GO) clean
|
||||||
|
|||||||
Reference in new issue
Block a user