mirror of
https://github.com/squidfunk/mkdocs-material.git
synced 2024-11-24 07:30:12 +01:00
Merge branch 'master' of github.com:squidfunk/mkdocs-material
This commit is contained in:
commit
8014c0423c
236
.github/assets/logo-dark.svg
vendored
236
.github/assets/logo-dark.svg
vendored
@ -1,236 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 320">
|
||||
<foreignObject width="100%" height="100%">
|
||||
<div xmlns="http://www.w3.org/1999/xhtml">
|
||||
<style>
|
||||
@keyframes backdrop {
|
||||
0% {
|
||||
transform: scale(0.9) rotateZ(45deg);
|
||||
opacity: 0.25;
|
||||
}
|
||||
|
||||
10% {
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
15% {
|
||||
transform: scale(1.1) rotateZ(35deg);
|
||||
}
|
||||
|
||||
50% {
|
||||
transform: scale(1) rotateZ(0deg);
|
||||
}
|
||||
|
||||
75% {
|
||||
transform: scale(1.1) rotateZ(-35deg);
|
||||
opacity: 1;
|
||||
}
|
||||
|
||||
100% {
|
||||
transform: scale(0.9) rotateZ(-45deg);
|
||||
opacity: 0.25;
|
||||
}
|
||||
}
|
||||
|
||||
.container {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
width: 320px;
|
||||
height: 320px;
|
||||
font-family:
|
||||
system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial,
|
||||
sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
|
||||
letter-spacing: -1px;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
.logo {
|
||||
position: relative;
|
||||
width: 40%;
|
||||
}
|
||||
|
||||
.logo svg {
|
||||
position: relative;
|
||||
display: block;
|
||||
margin: 20%;
|
||||
fill: #FFFFFF;
|
||||
}
|
||||
|
||||
.backdrop {
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-image: linear-gradient(#1A1A1A, #5E5E5E);
|
||||
border-radius: 100%;
|
||||
animation: backdrop infinite both 10s 1s cubic-bezier(0.7, 0, 0.3, 1);
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin: 24px 0 4px;
|
||||
color: #FFFFFF;
|
||||
font-weight: bold;
|
||||
font-size: 24px;
|
||||
}
|
||||
|
||||
h2 {
|
||||
margin: 4px 0;
|
||||
color: #7E7E7E;
|
||||
font-size: 14px;
|
||||
}
|
||||
|
||||
</style>
|
||||
<div class="container">
|
||||
<div class="logo">
|
||||
<div class="backdrop"></div>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 89 89">
|
||||
<polygon id="p1">
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="1s;p1o.end+1s" id="p1i"
|
||||
keyTimes="0;1" keySplines="0.16 1 0.3 1"
|
||||
values="
|
||||
3.136 17.387, 3.136 60.319, 3.136 60.319, 3.136 60.319;
|
||||
3.136 17.387, 3.136 60.319, 46.068 81.786, 3.136 17.387
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="p1i.end+5s" id="p1o"
|
||||
keyTimes="0;1" keySplines="0.7 0 0.84 0"
|
||||
values="
|
||||
3.136 17.387, 3.136 60.319, 46.068 81.786, 3.136 17.387;
|
||||
3.136 17.387, 3.136 60.319, 3.136 60.319, 3.136 60.319
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="fill-opacity" fill="freeze"
|
||||
dur="5s" begin="p1i.end"
|
||||
from="1" to="0.5"
|
||||
/>
|
||||
<animate
|
||||
attributeName="fill-opacity" fill="freeze"
|
||||
dur="0.1s" begin="p1o.end"
|
||||
from="0.5" to="1"
|
||||
/>
|
||||
</polygon>
|
||||
<polygon id="p2" style="fill-opacity: 0.5;">
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="1s;p2o.end+1s" id="p2i"
|
||||
keyTimes="0;1" keySplines="0.16 1 0.3 1"
|
||||
values="
|
||||
21.910 50.932, 21.910 50.932, 3.136 60.319, 3.136 60.319;
|
||||
21.910 8.000, 64.843 72.398, 46.068 81.786, 3.136 17.387
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="p2i.end+5s" id="p2o"
|
||||
keyTimes="0;1" keySplines="0.7 0 0.84 0"
|
||||
values="
|
||||
21.910 8.000, 64.843 72.398, 46.068 81.786, 3.136 17.387;
|
||||
21.910 50.932, 21.910 50.932, 3.136 60.319, 3.136 60.319
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="fill-opacity" fill="freeze"
|
||||
dur="5s" begin="p1i.end"
|
||||
from="0.5" to="1"
|
||||
/>
|
||||
<animate
|
||||
attributeName="fill-opacity" fill="freeze"
|
||||
dur="0.1s" begin="p2o.end"
|
||||
from="1" to="0.5"
|
||||
/>
|
||||
</polygon>
|
||||
<clipPath id="clip">
|
||||
<polygon id="p3">
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="1s;p3o.end+1s" id="p3i"
|
||||
keyTimes="0;1" keySplines="0.16 1 0.3 1"
|
||||
values="
|
||||
21.910 50.932, 21.910 50.932, 89 89, 89 0;
|
||||
21.910 8.000, 64.843 72.398, 89 89, 89 0
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="p3i.end+5s" id="p3o"
|
||||
keyTimes="0;1" keySplines="0.7 0 0.84 0"
|
||||
values="
|
||||
21.910 8.000, 64.843 72.398, 89 89, 89 0;
|
||||
21.910 50.932, 21.910 50.932, 89 89, 89 0
|
||||
"
|
||||
/>
|
||||
</polygon>
|
||||
</clipPath>
|
||||
<polygon id="p4" clip-path="url(#clip)">
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="1.25s;p4o.end+1s" id="p4i"
|
||||
keyTimes="0;1" keySplines="0.16 1 0.3 1"
|
||||
values="
|
||||
67.535 71.052, 67.535 71.052, 62.151 68.361, 67.535 71.052;
|
||||
67.535 17.387, 21.509 48.04, 62.151 68.361, 67.535 71.052
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="p4i.end+5s" id="p4o"
|
||||
keyTimes="0;1" keySplines="0.7 0 0.84 0"
|
||||
values="
|
||||
67.535 17.387, 21.509 48.04, 62.151 68.361, 67.535 71.052;
|
||||
67.535 71.052, 67.535 71.052, 62.151 68.361, 67.535 71.052
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="fill-opacity" fill="freeze"
|
||||
dur="5s" begin="p1i.end"
|
||||
from="1" to="0.5"
|
||||
/>
|
||||
<animate
|
||||
attributeName="fill-opacity" fill="freeze"
|
||||
dur="0.1s" begin="p4o.end"
|
||||
from="0.5" to="1"
|
||||
/>
|
||||
</polygon>
|
||||
<polygon id="p5" clip-path="url(#clip)" style="fill-opacity: 0.25;">
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="1.25s;p5o.end+1s" id="p5i"
|
||||
keyTimes="0;1" keySplines="0.16 1 0.3 1"
|
||||
values="
|
||||
67.535 71.053, 86.309 61.665, 86.309 61.665, 67.535 71.053;
|
||||
67.535 71.053, 86.309 61.665, 86.309 8.000, 67.535 17.387
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="points" calcMode="spline" fill="freeze"
|
||||
dur="2s" begin="p5i.end+5s" id="p5o"
|
||||
keyTimes="0;1" keySplines="0.7 0 0.84 0"
|
||||
values="
|
||||
67.535 71.053, 86.309 61.665, 86.309 8.000, 67.535 17.387;
|
||||
67.535 71.053, 86.309 61.665, 86.309 61.665, 67.535 71.053
|
||||
"
|
||||
/>
|
||||
<animate
|
||||
attributeName="fill-opacity" fill="freeze"
|
||||
dur="5s" begin="p1i.end"
|
||||
from="0.25" to="1"
|
||||
/>
|
||||
<animate
|
||||
attributeName="fill-opacity" fill="freeze"
|
||||
dur="0.1s" begin="p5o.end"
|
||||
from="1" to="0.25"
|
||||
/>
|
||||
</polygon>
|
||||
</svg>
|
||||
</div>
|
||||
<h1>Material for MkDocs</h1>
|
||||
<h2>Documentation that simply works</h2>
|
||||
</div>
|
||||
</div>
|
||||
</foreignObject>
|
||||
</svg>
|
Before Width: | Height: | Size: 8.0 KiB |
5
.github/assets/logo.svg
vendored
5
.github/assets/logo.svg
vendored
@ -42,7 +42,6 @@
|
||||
system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial,
|
||||
sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
|
||||
letter-spacing: -1px;
|
||||
background: #FFFFFF;
|
||||
border-radius: 2px;
|
||||
}
|
||||
|
||||
@ -62,14 +61,14 @@
|
||||
position: absolute;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
background-image: linear-gradient(#1A1A1A, #5E5E5E);
|
||||
background-image: linear-gradient(#22272e, #526cfe);
|
||||
border-radius: 100%;
|
||||
animation: backdrop infinite both 10s 1s cubic-bezier(0.7, 0, 0.3, 1);
|
||||
}
|
||||
|
||||
h1 {
|
||||
margin: 24px 0 4px;
|
||||
color: #1A1A1A;
|
||||
color: #526cfe;
|
||||
font-weight: bold;
|
||||
font-size: 24px;
|
||||
}
|
||||
|
Before Width: | Height: | Size: 8.1 KiB After Width: | Height: | Size: 8.0 KiB |
119
.github/workflows/build.yml
vendored
119
.github/workflows/build.yml
vendored
@ -20,18 +20,23 @@
|
||||
|
||||
name: build
|
||||
on:
|
||||
- push
|
||||
- pull_request
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
pull_request:
|
||||
release:
|
||||
types:
|
||||
- published
|
||||
|
||||
env:
|
||||
NODE_VERSION: 14.x
|
||||
PYTHON_VERSION: 3.x
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build project
|
||||
npm:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
@ -61,3 +66,109 @@ jobs:
|
||||
run: |
|
||||
npm run build
|
||||
git diff --name-only
|
||||
|
||||
pypi:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Python runtime
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Set up Python dependencies
|
||||
run: pip install --upgrade build twine
|
||||
|
||||
- name: Build Python package
|
||||
run: python -m build
|
||||
|
||||
- name: Publish Python package
|
||||
if: github.event_name == 'release'
|
||||
env:
|
||||
PYPI_USERNAME: ${{ secrets.PYPI_USERNAME }}
|
||||
PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
|
||||
run: twine upload --disable-progress-bar -u ${PYPI_USERNAME} -p ${PYPI_PASSWORD} dist/*
|
||||
|
||||
docker:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v2
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2
|
||||
|
||||
- name: Login to DockerHub
|
||||
if: github.event_name == 'release'
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Login to GitHub Container Registry
|
||||
if: github.event_name == 'release'
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GHCR_TOKEN }}
|
||||
|
||||
- name: Generate Docker tags and labels
|
||||
id: meta
|
||||
uses: docker/metadata-action@v4
|
||||
with:
|
||||
images: |
|
||||
${{ github.event.repository.full_name }}
|
||||
ghcr.io/${{ github.event.repository.full_name }}
|
||||
tags: |
|
||||
type=ref,event=branch
|
||||
type=ref,event=tag
|
||||
type=ref,event=pr
|
||||
flavor: |
|
||||
latest=${{ github.event.release.prerelease == false }}
|
||||
|
||||
- name: Build Docker image
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
context: .
|
||||
load: true
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
|
||||
- name: Check Docker image
|
||||
working-directory: /tmp
|
||||
run: |
|
||||
docker run --rm -i -v ${PWD}:/docs ${{ github.event.repository.full_name }}:${{ steps.meta.outputs.version }} new .
|
||||
docker run --rm -i -v ${PWD}:/docs ${{ github.event.repository.full_name }}:${{ steps.meta.outputs.version }} build
|
||||
|
||||
- name: Set platforms
|
||||
if: github.event_name == 'release'
|
||||
run: |
|
||||
echo "PLATFORMS=linux/amd64,linux/arm64,linux/arm/v7" >> $GITHUB_ENV
|
||||
|
||||
- name: Publish Docker image
|
||||
uses: docker/build-push-action@v4
|
||||
with:
|
||||
context: .
|
||||
platforms: ${{ env.PLATFORMS }}
|
||||
push: ${{ github.event_name == 'release' }}
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
|
||||
- name: Check manifest
|
||||
if: github.event_name == 'release'
|
||||
run: |
|
||||
docker buildx imagetools inspect ${{ github.event.repository.full_name }}:${{ steps.meta.outputs.version }}
|
||||
|
||||
- name: Inspect image
|
||||
if: github.event_name == 'release'
|
||||
run: |
|
||||
docker pull ${{ github.event.repository.full_name }}:${{ steps.meta.outputs.version }}
|
||||
docker image inspect ${{ github.event.repository.full_name }}:${{ steps.meta.outputs.version }}
|
||||
|
105
.github/workflows/publish.yml
vendored
105
.github/workflows/publish.yml
vendored
@ -1,105 +0,0 @@
|
||||
# Copyright (c) 2016-2023 Martin Donath <martin.donath@squidfunk.com>
|
||||
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to
|
||||
# deal in the Software without restriction, including without limitation the
|
||||
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
# sell copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||
# IN THE SOFTWARE.
|
||||
|
||||
name: publish
|
||||
on:
|
||||
release:
|
||||
types:
|
||||
- published
|
||||
|
||||
env:
|
||||
PYTHON_VERSION: 3.x
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
publish_pypi:
|
||||
name: Build and push Python package
|
||||
if: github.event.repository.fork == false
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Set up Python runtime
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ env.PYTHON_VERSION }}
|
||||
|
||||
- name: Set up Python dependencies
|
||||
run: pip install --upgrade build twine
|
||||
|
||||
- name: Build Python package
|
||||
run: python -m build
|
||||
|
||||
- name: Publish Python package
|
||||
env:
|
||||
PYPI_USERNAME: ${{ secrets.PYPI_USERNAME }}
|
||||
PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
|
||||
run: twine upload --disable-progress-bar -u ${PYPI_USERNAME} -p ${PYPI_PASSWORD} dist/*
|
||||
|
||||
publish_docker:
|
||||
name: Build and push Docker image
|
||||
if: github.event.repository.fork == false
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GHCR_TOKEN }}
|
||||
|
||||
- name: Build Docker image
|
||||
uses: docker/build-push-action@v3
|
||||
with:
|
||||
context: .
|
||||
# platforms: linux/amd64,linux/arm64
|
||||
tags: |
|
||||
${{ github.event.repository.full_name }}:latest
|
||||
${{ github.event.repository.full_name }}:${{ github.event.release.tag_name }}
|
||||
ghcr.io/${{ github.event.repository.full_name }}:latest
|
||||
ghcr.io/${{ github.event.repository.full_name }}:${{ github.event.release.tag_name }}
|
||||
|
||||
- name: Check Docker image
|
||||
working-directory: /tmp
|
||||
run: |
|
||||
docker run --rm -i -v ${PWD}:/docs ${{ github.event.repository.full_name }} new .
|
||||
docker run --rm -i -v ${PWD}:/docs ${{ github.event.repository.full_name }} build
|
||||
|
||||
- name: Publish Docker image
|
||||
env:
|
||||
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
|
||||
run: |
|
||||
docker push --all-tags ${{ github.event.repository.full_name }}
|
||||
docker push --all-tags ghcr.io/${{ github.event.repository.full_name }}
|
13
CHANGELOG
13
CHANGELOG
@ -1,3 +1,16 @@
|
||||
mkdocs-material-9.1.0 (2023-02-??)
|
||||
|
||||
* Docker image now also built for arm64 and armv7
|
||||
* Updated Chinese (Taiwanese) translations
|
||||
* Generalized tag identifier implementation
|
||||
* Fixed flickering of header shadow on load
|
||||
* Fixed occasional flickering of announcement bar
|
||||
|
||||
mkdocs-material-9.0.15 (2023-02-26)
|
||||
|
||||
* Updated Chinese (Traditional) translations
|
||||
* Updated Hebrew translations
|
||||
|
||||
mkdocs-material-9.0.14+insiders-4.32.1 (2023-02-23)
|
||||
|
||||
* Fixed code block spans interfering with copying
|
||||
|
@ -1,10 +1,7 @@
|
||||
<p align="center">
|
||||
<a href="https://squidfunk.github.io/mkdocs-material/#gh-light-mode-only">
|
||||
<a href="https://squidfunk.github.io/mkdocs-material/">
|
||||
<img src="https://raw.githubusercontent.com/squidfunk/mkdocs-material/master/.github/assets/logo.svg" width="320" alt="Material for MkDocs">
|
||||
</a>
|
||||
<a href="https://squidfunk.github.io/mkdocs-material/#gh-dark-mode-only">
|
||||
<img src="https://raw.githubusercontent.com/squidfunk/mkdocs-material/master/.github/assets/logo-dark.svg" width="320" alt="Material for MkDocs">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
<p align="center">
|
||||
|
@ -2,6 +2,11 @@
|
||||
|
||||
## Material for MkDocs
|
||||
|
||||
### 9.0.15 <small>February 26, 2023</small> { id="9.0.15" }
|
||||
|
||||
- Updated Chinese (Traditional) translations
|
||||
- Updated Hebrew translations
|
||||
|
||||
### 9.0.14 <small>February 23, 2023</small> { id="9.0.14" }
|
||||
|
||||
- Fixed #5072: Rendering bug on navigation expand button in Firefox
|
||||
|
@ -109,7 +109,7 @@ resolves to the subfolder where your documentation is hosted.
|
||||
If your default branch is called `main`, change the setting to:
|
||||
|
||||
``` yaml
|
||||
edit_uri: blob/main/docs/
|
||||
edit_uri: edit/main/docs/
|
||||
```
|
||||
|
||||
After making sure that `edit_uri` is correctly configured, buttons for code
|
||||
|
@ -262,16 +262,19 @@ navigation section:
|
||||
``` yaml
|
||||
nav:
|
||||
- Section:
|
||||
- section/index.md
|
||||
- section/index.md # (1)!
|
||||
- Page 1: section/page-1.md
|
||||
...
|
||||
- Page n: section/page-n.md
|
||||
```
|
||||
|
||||
1. MkDocs also considers files called `README.md` as [index pages].
|
||||
|
||||
[Section index pages support]: https://github.com/squidfunk/mkdocs-material/releases/tag/7.3.0
|
||||
[Section index pages enabled]: ../assets/screenshots/navigation-index-on.png
|
||||
[Section index pages disabled]: ../assets/screenshots/navigation-index-off.png
|
||||
[toc.integrate]: #navigation-integration
|
||||
[index pages]: https://www.mkdocs.org/user-guide/writing-your-docs/#index-pages
|
||||
|
||||
### Table of contents
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -28,7 +28,7 @@
|
||||
<link rel="next" href="{{ page.next_page.url | url }}">
|
||||
{% endif %}
|
||||
<link rel="icon" href="{{ config.theme.favicon | url }}">
|
||||
<meta name="generator" content="mkdocs-{{ mkdocs_version }}, mkdocs-material-9.0.14">
|
||||
<meta name="generator" content="mkdocs-{{ mkdocs_version }}, mkdocs-material-9.0.15">
|
||||
{% endblock %}
|
||||
{% block htmltitle %}
|
||||
{% if page.meta and page.meta.title %}
|
||||
@ -240,7 +240,7 @@
|
||||
</script>
|
||||
{% endblock %}
|
||||
{% block scripts %}
|
||||
<script src="{{ 'assets/javascripts/bundle.2a6f1dda.min.js' | url }}"></script>
|
||||
<script src="{{ 'assets/javascripts/bundle.ce72ebac.min.js' | url }}"></script>
|
||||
{% for path in config.extra_javascript %}
|
||||
<script src="{{ path | url }}"></script>
|
||||
{% endfor %}
|
||||
|
@ -3,7 +3,9 @@
|
||||
-#}
|
||||
{% set class = "md-header" %}
|
||||
{% if "navigation.tabs.sticky" in features %}
|
||||
{% set class = class ~ " md-header--lifted" %}
|
||||
{% set class = class ~ " md-header--shadow md-header--lifted" %}
|
||||
{% elif "navigation.tabs" not in features %}
|
||||
{% set class = class ~ " md-header--shadow" %}
|
||||
{% endif %}
|
||||
<header class="{{ class }}" data-md-component="header">
|
||||
<nav class="md-header__inner md-grid" aria-label="{{ lang.t('header') }}">
|
||||
|
@ -23,7 +23,7 @@
|
||||
{% set modifier = "--" ~ type %}
|
||||
{% endif %}
|
||||
{% set _ = style.append(
|
||||
".md-tag-icon" ~ modifier ~ "{" ~
|
||||
".md-tag" ~ modifier ~ "{" ~
|
||||
"--md-tag-icon:" ~
|
||||
"url('data:image/svg+xml;charset=utf-8," ~
|
||||
icon | replace("\n", "") ~
|
||||
|
@ -40,7 +40,7 @@
|
||||
"search.result.initializer": "אתחול חיפוש",
|
||||
"search.result.placeholder": "יש להקליד כדי להתחיל לחפש",
|
||||
"search.result.none": "אין מסמכים תואמים",
|
||||
"search.result.one": " מסמך1 תואם",
|
||||
"search.result.one": "מסמך1 תואם",
|
||||
"search.result.other": "# מסמך תואם",
|
||||
"search.result.more.one": "עוד אחד בדף הזה",
|
||||
"search.result.more.other": "עוד # בדף הזה",
|
||||
|
@ -5,23 +5,54 @@
|
||||
"language": "zh-Hant",
|
||||
"action.edit": "編輯此頁",
|
||||
"action.skip": "跳轉至",
|
||||
"action.view": "查看源代碼",
|
||||
"announce.dismiss": "不再顯示此訊息",
|
||||
"blog.archive": "存檔",
|
||||
"blog.categories": "分類",
|
||||
"blog.categories.in": "分類在",
|
||||
"blog.continue": "繼續閲讀",
|
||||
"blog.draft": "草稿",
|
||||
"blog.index": "回到首頁",
|
||||
"blog.meta": "元數據",
|
||||
"blog.references": "相關鏈接",
|
||||
"clipboard.copy": "拷貝",
|
||||
"clipboard.copied": "已拷貝",
|
||||
"consent.accept": "接受",
|
||||
"consent.manage": "管理設置",
|
||||
"consent.reject": "拒絕",
|
||||
"footer": "頁脚",
|
||||
"footer.next": "下一頁",
|
||||
"footer.previous": "上一頁",
|
||||
"header": "頁首",
|
||||
"meta.comments": "評論",
|
||||
"meta.source": "來源",
|
||||
"search.config.lang": "ja",
|
||||
"search.config.pipeline": "stemmer",
|
||||
"search.config.separator": "[\\s\\-,。]+",
|
||||
"nav": "導航",
|
||||
"readtime.one": "需要 1 分鐘閲讀",
|
||||
"readtime.other": "需要 # 分鐘閲讀",
|
||||
"rss.created": "簡易資訊聚合",
|
||||
"rss.updated": "更新之部分的簡易資訊聚合",
|
||||
"search": "搜尋",
|
||||
"search.placeholder": "搜尋",
|
||||
"search.share": "分享",
|
||||
"search.reset": "清空",
|
||||
"search.result.initializer": "正在初始化搜尋引擎",
|
||||
"search.result.placeholder": "鍵入以開始檢索",
|
||||
"search.result.none": "沒有找到符合條件的結果",
|
||||
"search.result.one": "找到 1 个符合條件的結果",
|
||||
"search.result.other": "# 個符合條件的結果",
|
||||
"search.result.other": "找到 # 個符合條件的結果",
|
||||
"search.result.more.one": "此頁尚有 1 個符合的項目",
|
||||
"search.result.more.other": "此頁尚有 # 個符合的項目",
|
||||
"search.result.term.missing": "缺失",
|
||||
"select.language": "選擇語言",
|
||||
"select.version": "選擇版本",
|
||||
"source": "前往倉庫",
|
||||
"source.file.contributors": "貢獻者",
|
||||
"source.file.date.created": "建立日期",
|
||||
"source.file.date.updated": "最後更新",
|
||||
"toc": "目錄"
|
||||
"tabs": "標籤頁",
|
||||
"toc": "目錄",
|
||||
"top": "回到頂部"
|
||||
}[key] }}{% endmacro %}
|
||||
|
@ -2,23 +2,42 @@
|
||||
This file was automatically generated - do not edit
|
||||
-#}
|
||||
{% macro t(key) %}{{ {
|
||||
"language": "zh-Hant",
|
||||
"language": "zh-TW",
|
||||
"action.edit": "編輯此頁",
|
||||
"action.skip": "跳轉到",
|
||||
"action.view": "查看此頁原始碼",
|
||||
"announce.dismiss": "不再顯示此訊息",
|
||||
"blog.archive": "封存",
|
||||
"blog.categories": "分類",
|
||||
"blog.categories.in": "於",
|
||||
"blog.continue": "繼續閱讀",
|
||||
"blog.draft": "草稿",
|
||||
"blog.index": "回到主頁",
|
||||
"blog.meta": "元數據",
|
||||
"blog.references": "相關連結",
|
||||
"clipboard.copy": "複製",
|
||||
"clipboard.copied": "已複製",
|
||||
"consent.accept": "同意",
|
||||
"consent.manage": "管理設定",
|
||||
"consent.reject": "拒絕",
|
||||
"footer": "頁腳",
|
||||
"footer.next": "下一頁",
|
||||
"footer.previous": "上一頁",
|
||||
"header": "頁首",
|
||||
"meta.comments": "留言",
|
||||
"meta.source": "來源",
|
||||
"nav": "導覽列",
|
||||
"readtime.one": "需要 1 分鐘閱讀時間",
|
||||
"readtime.other": "需要 # 分鐘閱讀時間",
|
||||
"rss.created": "RSS 訂閱",
|
||||
"rss.updated": "RSS 訂閱內容已更新",
|
||||
"search": "搜尋",
|
||||
"search.config.lang": "ja",
|
||||
"search.config.pipeline": "stemmer",
|
||||
"search.config.separator": "[\\s\\- 、。,.?;]+",
|
||||
"search.placeholder": "搜尋",
|
||||
"search.share": "分享",
|
||||
"search.reset": "清除",
|
||||
"search.result.initializer": "正在初始化搜尋引擎",
|
||||
"search.result.placeholder": "打字進行搜尋",
|
||||
"search.result.none": "沒有符合的項目",
|
||||
@ -26,8 +45,14 @@
|
||||
"search.result.other": "找到 # 個符合的項目",
|
||||
"search.result.more.one": "此頁尚有 1 個符合的項目",
|
||||
"search.result.more.other": "此頁尚有 # 個符合的項目",
|
||||
"search.result.term.missing": "缺少字詞",
|
||||
"select.language": "選擇語言",
|
||||
"select.version": "選擇版本",
|
||||
"source": "前往倉庫",
|
||||
"source.file.contributors": "貢獻者",
|
||||
"source.file.date.created": "建立日期",
|
||||
"source.file.date.updated": "最後更新",
|
||||
"toc": "目錄"
|
||||
"tabs": "標籤",
|
||||
"toc": "目錄",
|
||||
"top": "回到頂端"
|
||||
}[key] }}{% endmacro %}
|
||||
|
@ -10,7 +10,7 @@
|
||||
{% if config.extra.tags %}
|
||||
{% set icon = " md-tag-icon" %}
|
||||
{% if tag.type %}
|
||||
{% set icon = icon ~ " md-tag-icon--" ~ tag.type %}
|
||||
{% set icon = icon ~ " md-tag--" ~ tag.type %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if tag.url %}
|
||||
|
@ -116,7 +116,7 @@ class TagsPlugin(BasePlugin[TagsPluginConfig]):
|
||||
classes.append("md-tag-icon")
|
||||
type = self.tags_map.get(tag)
|
||||
if type:
|
||||
classes.append(f"md-tag-icon--{type}")
|
||||
classes.append(f"md-tag--{type}")
|
||||
|
||||
# Render section for tag and a link to each page
|
||||
classes = " ".join(classes)
|
||||
|
@ -38,7 +38,7 @@ theme:
|
||||
name: material
|
||||
custom_dir: material/.overrides
|
||||
features:
|
||||
# - announce.dismiss
|
||||
- announce.dismiss
|
||||
- content.action.edit
|
||||
- content.action.view
|
||||
- content.code.annotate
|
||||
|
4
package-lock.json
generated
4
package-lock.json
generated
@ -1,12 +1,12 @@
|
||||
{
|
||||
"name": "mkdocs-material",
|
||||
"version": "9.0.14",
|
||||
"version": "9.0.15",
|
||||
"lockfileVersion": 2,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "mkdocs-material",
|
||||
"version": "9.0.14",
|
||||
"version": "9.0.15",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"array-flat-polyfill": "^1.0.1",
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "mkdocs-material",
|
||||
"version": "9.0.14",
|
||||
"version": "9.0.15",
|
||||
"description": "Documentation that simply works",
|
||||
"keywords": [
|
||||
"mkdocs",
|
||||
|
@ -28,7 +28,6 @@ import {
|
||||
finalize,
|
||||
fromEvent,
|
||||
map,
|
||||
startWith,
|
||||
tap
|
||||
} from "rxjs"
|
||||
|
||||
@ -86,17 +85,11 @@ export function mountAnnounce(
|
||||
/* Mount component on subscription */
|
||||
return defer(() => {
|
||||
const push$ = new Subject<Announce>()
|
||||
push$
|
||||
.pipe(
|
||||
startWith({ hash: __md_get<number>("__announce") })
|
||||
)
|
||||
.subscribe(({ hash }) => {
|
||||
if (hash && hash === (__md_get<number>("__announce") ?? hash)) {
|
||||
push$.subscribe(({ hash }) => {
|
||||
el.hidden = true
|
||||
|
||||
/* Persist preference in local storage */
|
||||
__md_set<number>("__announce", hash)
|
||||
}
|
||||
})
|
||||
|
||||
/* Create and return component */
|
||||
|
@ -90,7 +90,7 @@ function renderSearchDocument(
|
||||
{document.tags && document.tags.map(tag => {
|
||||
const type = tags
|
||||
? tag in tags
|
||||
? `md-tag-icon md-tag-icon--${tags[tag]}`
|
||||
? `md-tag-icon md-tag--${tags[tag]}`
|
||||
: "md-tag-icon"
|
||||
: ""
|
||||
return (
|
||||
|
@ -23,7 +23,9 @@
|
||||
<!-- Determine base classes -->
|
||||
{% set class = "md-header" %}
|
||||
{% if "navigation.tabs.sticky" in features %}
|
||||
{% set class = class ~ " md-header--lifted" %}
|
||||
{% set class = class ~ " md-header--shadow md-header--lifted" %}
|
||||
{% elif "navigation.tabs" not in features %}
|
||||
{% set class = class ~ " md-header--shadow" %}
|
||||
{% endif %}
|
||||
|
||||
<!-- Header -->
|
||||
|
@ -45,7 +45,7 @@
|
||||
{% set modifier = "--" ~ type %}
|
||||
{% endif %}
|
||||
{% set _ = style.append(
|
||||
".md-tag-icon" ~ modifier ~ "{" ~
|
||||
".md-tag" ~ modifier ~ "{" ~
|
||||
"--md-tag-icon:" ~
|
||||
"url('data:image/svg+xml;charset=utf-8," ~
|
||||
icon | replace("\n", "") ~
|
||||
|
@ -60,7 +60,7 @@
|
||||
"search.result.initializer": "אתחול חיפוש",
|
||||
"search.result.placeholder": "יש להקליד כדי להתחיל לחפש",
|
||||
"search.result.none": "אין מסמכים תואמים",
|
||||
"search.result.one": " מסמך1 תואם",
|
||||
"search.result.one": "מסמך1 תואם",
|
||||
"search.result.other": "# מסמך תואם",
|
||||
"search.result.more.one": "עוד אחד בדף הזה",
|
||||
"search.result.more.other": "עוד # בדף הזה",
|
||||
|
@ -25,23 +25,54 @@
|
||||
"language": "zh-Hant",
|
||||
"action.edit": "編輯此頁",
|
||||
"action.skip": "跳轉至",
|
||||
"action.view": "查看源代碼",
|
||||
"announce.dismiss": "不再顯示此訊息",
|
||||
"blog.archive": "存檔",
|
||||
"blog.categories": "分類",
|
||||
"blog.categories.in": "分類在",
|
||||
"blog.continue": "繼續閲讀",
|
||||
"blog.draft": "草稿",
|
||||
"blog.index": "回到首頁",
|
||||
"blog.meta": "元數據",
|
||||
"blog.references": "相關鏈接",
|
||||
"clipboard.copy": "拷貝",
|
||||
"clipboard.copied": "已拷貝",
|
||||
"consent.accept": "接受",
|
||||
"consent.manage": "管理設置",
|
||||
"consent.reject": "拒絕",
|
||||
"footer": "頁脚",
|
||||
"footer.next": "下一頁",
|
||||
"footer.previous": "上一頁",
|
||||
"header": "頁首",
|
||||
"meta.comments": "評論",
|
||||
"meta.source": "來源",
|
||||
"search.config.lang": "ja",
|
||||
"search.config.pipeline": "stemmer",
|
||||
"search.config.separator": "[\\s\\-,。]+",
|
||||
"nav": "導航",
|
||||
"readtime.one": "需要 1 分鐘閲讀",
|
||||
"readtime.other": "需要 # 分鐘閲讀",
|
||||
"rss.created": "簡易資訊聚合",
|
||||
"rss.updated": "更新之部分的簡易資訊聚合",
|
||||
"search": "搜尋",
|
||||
"search.placeholder": "搜尋",
|
||||
"search.share": "分享",
|
||||
"search.reset": "清空",
|
||||
"search.result.initializer": "正在初始化搜尋引擎",
|
||||
"search.result.placeholder": "鍵入以開始檢索",
|
||||
"search.result.none": "沒有找到符合條件的結果",
|
||||
"search.result.one": "找到 1 个符合條件的結果",
|
||||
"search.result.other": "# 個符合條件的結果",
|
||||
"search.result.other": "找到 # 個符合條件的結果",
|
||||
"search.result.more.one": "此頁尚有 1 個符合的項目",
|
||||
"search.result.more.other": "此頁尚有 # 個符合的項目",
|
||||
"search.result.term.missing": "缺失",
|
||||
"select.language": "選擇語言",
|
||||
"select.version": "選擇版本",
|
||||
"source": "前往倉庫",
|
||||
"source.file.contributors": "貢獻者",
|
||||
"source.file.date.created": "建立日期",
|
||||
"source.file.date.updated": "最後更新",
|
||||
"toc": "目錄"
|
||||
"tabs": "標籤頁",
|
||||
"toc": "目錄",
|
||||
"top": "回到頂部"
|
||||
}[key] }}{% endmacro %}
|
||||
|
@ -22,23 +22,42 @@
|
||||
|
||||
<!-- Translations: Chinese (Taiwanese) -->
|
||||
{% macro t(key) %}{{ {
|
||||
"language": "zh-Hant",
|
||||
"language": "zh-TW",
|
||||
"action.edit": "編輯此頁",
|
||||
"action.skip": "跳轉到",
|
||||
"action.view": "查看此頁原始碼",
|
||||
"announce.dismiss": "不再顯示此訊息",
|
||||
"blog.archive": "封存",
|
||||
"blog.categories": "分類",
|
||||
"blog.categories.in": "於",
|
||||
"blog.continue": "繼續閱讀",
|
||||
"blog.draft": "草稿",
|
||||
"blog.index": "回到主頁",
|
||||
"blog.meta": "元數據",
|
||||
"blog.references": "相關連結",
|
||||
"clipboard.copy": "複製",
|
||||
"clipboard.copied": "已複製",
|
||||
"consent.accept": "同意",
|
||||
"consent.manage": "管理設定",
|
||||
"consent.reject": "拒絕",
|
||||
"footer": "頁腳",
|
||||
"footer.next": "下一頁",
|
||||
"footer.previous": "上一頁",
|
||||
"header": "頁首",
|
||||
"meta.comments": "留言",
|
||||
"meta.source": "來源",
|
||||
"nav": "導覽列",
|
||||
"readtime.one": "需要 1 分鐘閱讀時間",
|
||||
"readtime.other": "需要 # 分鐘閱讀時間",
|
||||
"rss.created": "RSS 訂閱",
|
||||
"rss.updated": "RSS 訂閱內容已更新",
|
||||
"search": "搜尋",
|
||||
"search.config.lang": "ja",
|
||||
"search.config.pipeline": "stemmer",
|
||||
"search.config.separator": "[\\s\\- 、。,.?;]+",
|
||||
"search.placeholder": "搜尋",
|
||||
"search.share": "分享",
|
||||
"search.reset": "清除",
|
||||
"search.result.initializer": "正在初始化搜尋引擎",
|
||||
"search.result.placeholder": "打字進行搜尋",
|
||||
"search.result.none": "沒有符合的項目",
|
||||
@ -46,8 +65,14 @@
|
||||
"search.result.other": "找到 # 個符合的項目",
|
||||
"search.result.more.one": "此頁尚有 1 個符合的項目",
|
||||
"search.result.more.other": "此頁尚有 # 個符合的項目",
|
||||
"search.result.term.missing": "缺少字詞",
|
||||
"select.language": "選擇語言",
|
||||
"select.version": "選擇版本",
|
||||
"source": "前往倉庫",
|
||||
"source.file.contributors": "貢獻者",
|
||||
"source.file.date.created": "建立日期",
|
||||
"source.file.date.updated": "最後更新",
|
||||
"toc": "目錄"
|
||||
"tabs": "標籤",
|
||||
"toc": "目錄",
|
||||
"top": "回到頂端"
|
||||
}[key] }}{% endmacro %}
|
||||
|
@ -32,7 +32,7 @@
|
||||
{% if config.extra.tags %}
|
||||
{% set icon = " md-tag-icon" %}
|
||||
{% if tag.type %}
|
||||
{% set icon = icon ~ " md-tag-icon--" ~ tag.type %}
|
||||
{% set icon = icon ~ " md-tag--" ~ tag.type %}
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
|
@ -116,7 +116,7 @@ class TagsPlugin(BasePlugin[TagsPluginConfig]):
|
||||
classes.append("md-tag-icon")
|
||||
type = self.tags_map.get(tag)
|
||||
if type:
|
||||
classes.append(f"md-tag-icon--{type}")
|
||||
classes.append(f"md-tag--{type}")
|
||||
|
||||
# Render section for tag and a link to each page
|
||||
classes = " ".join(classes)
|
||||
|
Loading…
Reference in New Issue
Block a user