Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .github/workflows/ci-spec.yml
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@ jobs:

build-code-metadata-spec:
runs-on: ubuntu-latest
needs: [build-core-spec]
steps:
- name: Checkout repo
uses: actions/checkout@v4
Expand Down
46 changes: 26 additions & 20 deletions document/core/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -118,14 +118,6 @@ $(CTRLFILES:%=$(SPLICEDIR)/%): $(SPLICEDIR)/%: %
macrosok: $(GENERATED)
sh util/check_macros.sh

# Dirty hack to avoid rebuilding the Bikeshed version for every push.
.PHONY: bikeshed-keep
bikeshed-keep:
test -e $(BUILDDIR)/html/bikeshed || \
wget -r -nH --cut-dirs=2 -P $(BUILDDIR)/html --no-check-certificate \
https://webassembly.github.io/spec/core/bikeshed || \
echo Downloaded Bikeshed.

.PHONY: pdf pdf-nested
pdf: $(SPLICEDFILES)
(cd $(SPLICEDIR) && make pdf-nested)
Expand Down Expand Up @@ -167,7 +159,7 @@ html-nested: $(GENERATED)
dirhtml: $(SPLICEDFILES)
(cd $(SPLICEDIR) && make dirhtml-nested)
@echo
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
@echo "Build finished. The HTML pages are in `pwd`/$(BUILDDIR)/dirhtml."

dirhtml-nested: $(GENERATED)
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
Expand All @@ -176,21 +168,35 @@ dirhtml-nested: $(GENERATED)
singlehtml: $(SPLICEDFILES)
(cd $(SPLICEDIR) && make singlehtml-nested)
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
@echo "Build finished. The HTML page is in `pwd`/$(BUILDDIR)/singlehtml."

singlehtml-nested: $(GENERATED)
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml

.PHONY: bikeshed bikshed-fixup bikeshed-nested
bikeshed: $(SPLICEDFILES)
# Dirty hack to avoid rebuilding the Bikeshed version for every push.
.PHONY: bikeshed-keep bikeshed-keep-nested
bikeshed-keep:
(cd $(SPLICEDIR) && make bikeshed-keep-nested)

bikeshed-keep-nested:
test -e $(BUILDDIR)/html/bikeshed || \
wget -r -nH --cut-dirs=2 -P $(BUILDDIR)/html --no-check-certificate \
https://webassembly.github.io/spec/core/bikeshed || \
echo Downloaded Bikeshed.

.PHONY: katex-install
katex-install:
(cd util/katex/ && yarn && yarn build && npm install --only=prod)

.PHONY: bikeshed bikeshed-nested
bikeshed: $(SPLICEDFILES) katex-install
mkdir -p $(SPLICEDIR)/util/katex
cp -Rf util/katex/* $(SPLICEDIR)/util/katex
(cd $(SPLICEDIR) && make bikeshed-nested)
@echo
@echo "Build finished. The HTML page is in $(BUILDDIR)/html/bikeshed/."
@echo "Build finished. The HTML page is in `pwd`/$(BUILDDIR)/html/bikeshed/."

bikeshed-fixup: $(GENERATED)
bikeshed-nested: $(GENERATED)
$(SPHINXBUILD) -b singlehtml -c util/bikeshed \
$(ALLSPHINXOPTS) $(BUILDDIR)/bikeshed_singlehtml
python3 util/bikeshed_fixup.py $(BUILDDIR)/bikeshed_singlehtml/index.html \
Expand All @@ -201,12 +207,9 @@ bikeshed-fixup: $(GENERATED)
@tail -n10 _build/bikeshed_singlehtml/index_fixed.html
@echo
@echo =========================================================================

bikeshed-nested: bikeshed-fixup
mkdir -p $(BUILDDIR)/bikeshed_mathjax/
bikeshed spec --md-status=$(W3C_STATUS) --md-deadline=$(DEADLINE) index.bs $(BUILDDIR)/bikeshed_mathjax/index.html
mkdir -p $(BUILDDIR)/html/bikeshed/
# (cd util/katex/ && yarn && yarn build && npm install --only=prod)
python3 util/mathjax2katex.py $(BUILDDIR)/bikeshed_mathjax/index.html \
>$(BUILDDIR)/html/bikeshed/index.html
mkdir -p $(BUILDDIR)/html/bikeshed/katex/dist/
Expand All @@ -216,10 +219,13 @@ bikeshed-nested: bikeshed-fixup
cp $(BUILDDIR)/bikeshed_singlehtml/_static/pygments.css \
$(BUILDDIR)/html/bikeshed/

.PHONY: WD-tar
.PHONY: WD-tar WD-tar-nested
WD-tar: bikeshed
(cd $(SPLICEDIR) && make WD-tar-nested)

# macOS tar has no “--transform” option (only GNU tar does), so on macOS,
# do “brew install tar” & run “make” like this: “TAR=gtar make -e WD-tar”
WD-tar: bikeshed
WD-tar-nested:
@echo "Building tar file..."
$(TAR) cvf \
$(BUILDDIR)/WD.tar \
Expand All @@ -229,7 +235,7 @@ WD-tar: bikeshed
$(BUILDDIR)/html/bikeshed/pygments.css \
$(BUILDDIR)/html/bikeshed/katex/dist/katex.css \
$(BUILDDIR)/html/bikeshed/katex/dist/fonts
@echo "Built $(BUILDDIR)/WD.tar."
@echo "Built `pwd`/$(BUILDDIR)/WD.tar."

.PHONY: WD-echidna
WD-echidna: WD-tar
Expand Down
3 changes: 2 additions & 1 deletion document/core/util/mathjax2katex.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ def ReplaceMath(cache, data):
data = data.replace('\\mbox', '\\text')
data = data.replace('\\begin{split}', '\\begin{aligned}')
data = data.replace('\\end{split}', '\\end{aligned}')
data = re.sub('\\\\multicolumn\\{[0-9]*\\}\\{[a-z]*\\}', '', data) # Katex can't handle it
data = re.sub('\\\\multicolumn\\{[2-9]\\}\\{@\\{\\}l@\\{\\}\\}', '', data) # Katex can't handle it
data = data.replace('&', '&') # Messed up by Bikeshed
data = data.replace('&lt;', '<') # Messed up by Bikeshed
data = data.replace('&gt;', '>') # Messed up by Bikeshed
Expand Down Expand Up @@ -107,6 +107,7 @@ def ReplaceMath(cache, data):
if start is None:
break
data = data[:start] + v.replace('#1', data[start+len(k):end]) + data[end:]

p = subprocess.Popen(
['node', os.path.join(SCRIPT_DIR, 'katex/cli.js'), '--display-mode', '--trust'],
stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
Expand Down