mirror of
https://github.com/snachodog/just-the-docs.git
synced 2025-09-16 14:23:31 -06:00
Compare commits
173 Commits
v0.4.0.rc3
...
v0.5.2
Author | SHA1 | Date | |
---|---|---|---|
|
ea0d5d8ec7 | ||
|
790a8b5c06 | ||
|
0ca69334b0 | ||
|
d0cc9a0ff4 | ||
|
810353802a | ||
|
2b1cb67790 | ||
|
cffe2f1b29 | ||
|
3618253d15 | ||
|
216d342f26 | ||
|
0b93b35a3f | ||
|
8e38759613 | ||
|
3048541778 | ||
|
aaf5a68154 | ||
|
e64d97c4c8 | ||
|
3723875b93 | ||
|
7a4865a469 | ||
|
e0231653a8 | ||
|
fe31bf4cb9 | ||
|
a9bced2f26 | ||
|
7daf042a03 | ||
|
d107faaff4 | ||
|
eabae95d5b | ||
|
a1ca235757 | ||
|
d2e34cb54d | ||
|
238b4eae42 | ||
|
cdf5510d65 | ||
|
6a6cc20620 | ||
|
5e5e2438d2 | ||
|
786678a6a2 | ||
|
4d95f9937a | ||
|
7404c6f6e0 | ||
|
f636d5abfd | ||
|
27123d43ad | ||
|
a95e78f80d | ||
|
09896921e4 | ||
|
7b3c5169c0 | ||
|
7451cb5bdf | ||
|
39a5854144 | ||
|
7defb3164b | ||
|
5dd80bf749 | ||
|
1a22f052e9 | ||
|
117195fb1c | ||
|
ac5c99c77c | ||
|
765954233a | ||
|
19dbd776c1 | ||
|
38a34af2c0 | ||
|
cc9bead2e9 | ||
|
9a0b518f0e | ||
|
67d7465dbe | ||
|
16fe752dbc | ||
|
1999256809 | ||
|
6a55d05f30 | ||
|
5f59793766 | ||
|
56a2dc560a | ||
|
1289f6866f | ||
|
6a2c602328 | ||
|
51e1c29021 | ||
|
b20acf0edb | ||
|
fdf48d2fd3 | ||
|
f8e93980b4 | ||
|
a9d9354242 | ||
|
00cb3ba94b | ||
|
0484b45bfb | ||
|
27ae8d3e46 | ||
|
a812b37fcd | ||
|
f312da69d6 | ||
|
dd1e80ae1c | ||
|
86dbc2d4d7 | ||
|
c7c99992f9 | ||
|
8894630659 | ||
|
4a7fbbca92 | ||
|
b2bbdb7040 | ||
|
cf72c436d9 | ||
|
6cdd4f76b5 | ||
|
c13a5d2cdf | ||
|
5f91e326c7 | ||
|
975aec0791 | ||
|
3ce3dc74e0 | ||
|
c7bdfe5456 | ||
|
81d7e13277 | ||
|
3de6c589aa | ||
|
3335b9791d | ||
|
73a7e7cb33 | ||
|
d423c96d7a | ||
|
eeb89e56f0 | ||
|
1de6260d57 | ||
|
70e55f1d7b | ||
|
7a01ef1a59 | ||
|
5e7a481258 | ||
|
a789198b20 | ||
|
ee178d7bdf | ||
|
0df627058b | ||
|
49d004f271 | ||
|
c296f914af | ||
|
c1b944bc3a | ||
|
f84e524400 | ||
|
52b43417b4 | ||
|
2691ff8a25 | ||
|
7b29f62b49 | ||
|
91c4b7e3d1 | ||
|
dd4d489f29 | ||
|
ed20aed824 | ||
|
c4bae1efb8 | ||
|
56448e86f0 | ||
|
ad490360ba | ||
|
2495d3e6bb | ||
|
4469f45cbd | ||
|
b909e083fe | ||
|
4d6cb767a9 | ||
|
89b5f4987b | ||
|
3d1f926a68 | ||
|
3ba32c5cba | ||
|
5471214cda | ||
|
9e553b3486 | ||
|
551398f92f | ||
|
8e81e21470 | ||
|
eb121804af | ||
|
7cabda2983 | ||
|
5c213c2d77 | ||
|
0bfa011b47 | ||
|
0279757ff4 | ||
|
91449f1aee | ||
|
0b44f5ba7f | ||
|
c1c44e88cf | ||
|
ce3f34bbc7 | ||
|
56bda83528 | ||
|
b6d725d42e | ||
|
f4979fa6e9 | ||
|
5921e345a5 | ||
|
fff8fef18a | ||
|
8f972e59fa | ||
|
197d18d8b4 | ||
|
253a65c04d | ||
|
12ea042bf2 | ||
|
e26bdd366b | ||
|
002387bc65 | ||
|
b050b13d01 | ||
|
c4d246f83d | ||
|
059eaee8ed | ||
|
1007fd5192 | ||
|
9bccf07faa | ||
|
b799ea8eaf | ||
|
7c3936a55d | ||
|
9996d66940 | ||
|
845cd763f3 | ||
|
cf5aa7334f | ||
|
548ddb3381 | ||
|
9f8b88b0d8 | ||
|
1ca8ac0c4d | ||
|
fb0377bae2 | ||
|
38e7566732 | ||
|
7267b0513e | ||
|
22ed2394b7 | ||
|
c498a5690a | ||
|
b09fd44d70 | ||
|
29b5d14789 | ||
|
bf6f5028af | ||
|
c278005d44 | ||
|
a1bac2d5f0 | ||
|
7a98e51adb | ||
|
ee2e324567 | ||
|
063acaca15 | ||
|
5a0bbcda2f | ||
|
945cb866f4 | ||
|
53edd7868d | ||
|
223feac30b | ||
|
8f64392424 | ||
|
6b9cc5afdf | ||
|
7c124a210a | ||
|
e269960fa8 | ||
|
6d9d41359c | ||
|
e72181e09f | ||
|
e701ce140e |
35
.github/release-drafter.yml
vendored
35
.github/release-drafter.yml
vendored
@@ -1,35 +0,0 @@
|
|||||||
references:
|
|
||||||
- v+
|
|
||||||
- main
|
|
||||||
name-template: "v$RESOLVED_VERSION 🌈"
|
|
||||||
tag-template: "v$RESOLVED_VERSION"
|
|
||||||
categories:
|
|
||||||
- title: "🚀 Features"
|
|
||||||
labels:
|
|
||||||
- "feature"
|
|
||||||
- "enhancement"
|
|
||||||
- title: "🐛 Bug Fixes"
|
|
||||||
labels:
|
|
||||||
- "fix"
|
|
||||||
- "bugfix"
|
|
||||||
- "bug"
|
|
||||||
- title: "🧰 Maintenance"
|
|
||||||
label:
|
|
||||||
- "chore"
|
|
||||||
- "dependencies"
|
|
||||||
change-template: "- $TITLE @$AUTHOR (#$NUMBER)"
|
|
||||||
version-resolver:
|
|
||||||
major:
|
|
||||||
labels:
|
|
||||||
- "next-major-release"
|
|
||||||
minor:
|
|
||||||
labels:
|
|
||||||
- "next-minor-release"
|
|
||||||
patch:
|
|
||||||
labels:
|
|
||||||
- "patch"
|
|
||||||
default: minor
|
|
||||||
template: |
|
|
||||||
## Changes
|
|
||||||
|
|
||||||
$CHANGES
|
|
53
.github/workflows/ci.yml
vendored
53
.github/workflows/ci.yml
vendored
@@ -5,24 +5,57 @@ on:
|
|||||||
pull_request:
|
pull_request:
|
||||||
branches:
|
branches:
|
||||||
- main
|
- main
|
||||||
- 'v**'
|
|
||||||
|
|
||||||
name: CI
|
name: CI
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
jekyll-build:
|
jekyll-build:
|
||||||
name: Build Jekyll site
|
name: Build (jekyll gem)
|
||||||
runs-on: ubuntu-latest
|
|
||||||
strategy:
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
jekyll-version: [3.8.5, latest]
|
jekyll-version: [3.9, 4.3]
|
||||||
|
os: [ ubuntu-latest, macos-latest, windows-latest ]
|
||||||
|
ruby-version: [2.7, 3.1]
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
- name: Build the site in the jekyll/jekyll container
|
- name: Setup Ruby ${{ matrix.ruby-version }}
|
||||||
run: |
|
uses: ruby/setup-ruby@v1
|
||||||
docker run --rm \
|
with:
|
||||||
--volume="${{ github.workspace }}:/srv/jekyll" \
|
ruby-version: ${{ matrix.ruby-version }}
|
||||||
jekyll/jekyll:${{ matrix.jekyll-version }} /bin/bash -c "gem install bundler && chmod -R 777 /srv/jekyll && bundle install && bundle exec jekyll build && bundle exec rake search:init"
|
bundler-cache: false
|
||||||
|
- name: Bundle Install (Jekyll ${{ matrix.jekyll-version }})
|
||||||
|
run: bundle install
|
||||||
|
env:
|
||||||
|
BUNDLE_GEMFILE: fixtures/Gemfile-jekyll-${{ matrix.jekyll-version }}
|
||||||
|
- name: Init Search
|
||||||
|
run: bundle exec rake search:init
|
||||||
|
env:
|
||||||
|
BUNDLE_GEMFILE: fixtures/Gemfile-jekyll-${{ matrix.jekyll-version }}
|
||||||
|
- name: Build Site
|
||||||
|
run: bundle exec jekyll build
|
||||||
|
env:
|
||||||
|
BUNDLE_GEMFILE: fixtures/Gemfile-jekyll-${{ matrix.jekyll-version }}
|
||||||
|
|
||||||
|
github-pages-build:
|
||||||
|
name: Build (github-pages gem)
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
- name: Setup Ruby
|
||||||
|
uses: ruby/setup-ruby@v1
|
||||||
|
with:
|
||||||
|
ruby-version: '3.1'
|
||||||
|
bundler-cache: false
|
||||||
|
- name: Bundle Install
|
||||||
|
run: bundle install
|
||||||
|
env:
|
||||||
|
BUNDLE_GEMFILE: fixtures/Gemfile-github-pages
|
||||||
|
- name: Build Site
|
||||||
|
run: bundle exec jekyll build
|
||||||
|
env:
|
||||||
|
BUNDLE_GEMFILE: fixtures/Gemfile-github-pages
|
||||||
|
|
||||||
assets:
|
assets:
|
||||||
name: Test CSS and JS
|
name: Test CSS and JS
|
||||||
@@ -30,7 +63,7 @@ jobs:
|
|||||||
|
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
node-version: [16.x]
|
node-version: [18.x]
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
62
.github/workflows/deploy.yml
vendored
Normal file
62
.github/workflows/deploy.yml
vendored
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
# This workflow uses actions that are not certified by GitHub.
|
||||||
|
# They are provided by a third-party and are governed by
|
||||||
|
# separate terms of service, privacy policy, and support
|
||||||
|
# documentation.
|
||||||
|
|
||||||
|
# Sample workflow for building and deploying a Jekyll site to GitHub Pages
|
||||||
|
name: Deploy Jekyll site to Pages
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: ["main"]
|
||||||
|
|
||||||
|
# Allows you to run this workflow manually from the Actions tab
|
||||||
|
workflow_dispatch:
|
||||||
|
|
||||||
|
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
pages: write
|
||||||
|
id-token: write
|
||||||
|
|
||||||
|
# Allow one concurrent deployment
|
||||||
|
concurrency:
|
||||||
|
group: "pages"
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
# Build job
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- name: Setup Ruby
|
||||||
|
uses: ruby/setup-ruby@v1
|
||||||
|
with:
|
||||||
|
ruby-version: '3.1' # Not needed with a .ruby-version file
|
||||||
|
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
||||||
|
cache-version: 0 # Increment this number if you need to re-download cached gems
|
||||||
|
- name: Setup Pages
|
||||||
|
id: pages
|
||||||
|
uses: actions/configure-pages@v2
|
||||||
|
- name: Build with Jekyll
|
||||||
|
# Outputs to the './_site' directory by default
|
||||||
|
run: bundle exec jekyll build --baseurl "${{ steps.pages.outputs.base_path }}"
|
||||||
|
env:
|
||||||
|
JEKYLL_ENV: production
|
||||||
|
- name: Upload artifact
|
||||||
|
# Automatically uploads an artifact from the './_site' directory by default
|
||||||
|
uses: actions/upload-pages-artifact@v1
|
||||||
|
|
||||||
|
# Deployment job
|
||||||
|
deploy:
|
||||||
|
environment:
|
||||||
|
name: github-pages
|
||||||
|
url: ${{ steps.deployment.outputs.page_url }}
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
needs: build
|
||||||
|
steps:
|
||||||
|
- name: Deploy to GitHub Pages
|
||||||
|
id: deployment
|
||||||
|
uses: actions/deploy-pages@v1
|
27
.github/workflows/publish-gem.yml
vendored
27
.github/workflows/publish-gem.yml
vendored
@@ -9,11 +9,11 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- name: Set up Ruby 2.6
|
- name: Set up Ruby 3.1
|
||||||
uses: actions/setup-ruby@v1
|
uses: actions/setup-ruby@v1
|
||||||
with:
|
with:
|
||||||
ruby-version: 2.6.x
|
ruby-version: 3.1
|
||||||
|
|
||||||
- name: Publish to GPR
|
- name: Publish to GPR
|
||||||
run: |
|
run: |
|
||||||
@@ -27,13 +27,14 @@ jobs:
|
|||||||
GEM_HOST_API_KEY: "Bearer ${{secrets.GITHUB_TOKEN}}"
|
GEM_HOST_API_KEY: "Bearer ${{secrets.GITHUB_TOKEN}}"
|
||||||
OWNER: ${{ github.repository_owner }}
|
OWNER: ${{ github.repository_owner }}
|
||||||
|
|
||||||
- name: Publish to RubyGems
|
# Disabled as this does not handle 2FA
|
||||||
run: |
|
# - name: Publish to RubyGems
|
||||||
mkdir -p $HOME/.gem
|
# run: |
|
||||||
touch $HOME/.gem/credentials
|
# mkdir -p $HOME/.gem
|
||||||
chmod 0600 $HOME/.gem/credentials
|
# touch $HOME/.gem/credentials
|
||||||
printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
# chmod 0600 $HOME/.gem/credentials
|
||||||
gem build *.gemspec
|
# printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
|
||||||
gem push *.gem
|
# gem build *.gemspec
|
||||||
env:
|
# gem push *.gem
|
||||||
GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
|
# env:
|
||||||
|
# GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
|
||||||
|
43
.github/workflows/update_jekyll-anchor-heading.yml
vendored
Normal file
43
.github/workflows/update_jekyll-anchor-heading.yml
vendored
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
name: Update Vendor plugin - jekyll-anchor-headings
|
||||||
|
on:
|
||||||
|
# schedule:
|
||||||
|
# # once per week
|
||||||
|
# - cron: "0 15 * * 0"
|
||||||
|
workflow_dispatch:
|
||||||
|
jobs:
|
||||||
|
update-deps:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: Get latest release information
|
||||||
|
id: latest-release
|
||||||
|
uses: pozetroninc/github-action-get-latest-release@master
|
||||||
|
with:
|
||||||
|
owner: allejo
|
||||||
|
repo: jekyll-anchor-headings
|
||||||
|
excludes: prerelease, draft
|
||||||
|
|
||||||
|
- name: Update jekyll-anchor-headings
|
||||||
|
id: update
|
||||||
|
uses: suisei-cn/actions-download-file@v1.3.0
|
||||||
|
with:
|
||||||
|
url: "https://github.com/allejo/jekyll-anchor-headings/releases/download/${{ steps.latest-release.outputs.release }}/anchor_headings.html"
|
||||||
|
target: _includes/vendor/
|
||||||
|
|
||||||
|
- name: Create PR
|
||||||
|
uses: peter-evans/create-pull-request@v4
|
||||||
|
with:
|
||||||
|
commit-message: "chore[dependency]: Update `jekyll-anchor-headings` to `${{ steps.latest-release.outputs.release }}`"
|
||||||
|
title: "auto: Update `jekyll-anchor-headings` to `${{ steps.latest-release.outputs.release }}`"
|
||||||
|
body: |
|
||||||
|
Update `jekyll-anchor-headings` to `${{ steps.latest-release.outputs.release }}`
|
||||||
|
This is an automated pull request.
|
||||||
|
branch: update/vendor/jekyll-anchor-headings
|
||||||
|
delete-branch: true
|
||||||
|
labels: |
|
||||||
|
kind/update
|
||||||
|
area/dependency
|
||||||
|
add-paths: |
|
||||||
|
_includes/vendor/anchor_headings.html
|
||||||
|
token: ${{ secrets.GITHUB_TOKEN }}
|
1
.gitignore
vendored
1
.gitignore
vendored
@@ -6,3 +6,4 @@
|
|||||||
_site
|
_site
|
||||||
Gemfile.lock
|
Gemfile.lock
|
||||||
node_modules
|
node_modules
|
||||||
|
.DS_Store
|
||||||
|
@@ -1,4 +1,3 @@
|
|||||||
package.json
|
|
||||||
package-lock.json
|
package-lock.json
|
||||||
_site
|
_site
|
||||||
assets/css/just-the-docs-default.scss
|
assets/css/just-the-docs-default.scss
|
||||||
@@ -6,5 +5,7 @@ assets/css/just-the-docs-light.scss
|
|||||||
assets/css/just-the-docs-dark.scss
|
assets/css/just-the-docs-dark.scss
|
||||||
assets/js/vendor/lunr.min.js
|
assets/js/vendor/lunr.min.js
|
||||||
assets/js/search-data.json
|
assets/js/search-data.json
|
||||||
|
assets/js/zzzz-search-data.json
|
||||||
assets/js/just-the-docs.js
|
assets/js/just-the-docs.js
|
||||||
*.md
|
*.md
|
||||||
|
_includes/mermaid_config.js
|
||||||
|
@@ -1,7 +0,0 @@
|
|||||||
{
|
|
||||||
"endOfLine": "lf",
|
|
||||||
"semi": false,
|
|
||||||
"singleQuote": false,
|
|
||||||
"tabWidth": 2,
|
|
||||||
"trailingComma": "es5"
|
|
||||||
}
|
|
@@ -1,21 +0,0 @@
|
|||||||
{
|
|
||||||
"ignoreFiles": [
|
|
||||||
"assets/css/just-the-docs-default.scss",
|
|
||||||
"assets/css/just-the-docs-light.scss",
|
|
||||||
"assets/css/just-the-docs-dark.scss",
|
|
||||||
"_sass/vendor/**/*.scss"
|
|
||||||
],
|
|
||||||
"extends": [
|
|
||||||
"stylelint-config-standard-scss",
|
|
||||||
"stylelint-config-prettier-scss"
|
|
||||||
],
|
|
||||||
"plugins": ["stylelint-prettier"],
|
|
||||||
"rules": {
|
|
||||||
"prettier/prettier": true,
|
|
||||||
"alpha-value-notation": null,
|
|
||||||
"color-function-notation": null,
|
|
||||||
"declaration-block-no-redundant-longhand-properties": null,
|
|
||||||
"no-descending-specificity": null,
|
|
||||||
"scss/no-global-function-names": null
|
|
||||||
}
|
|
||||||
}
|
|
768
CHANGELOG.md
768
CHANGELOG.md
@@ -5,7 +5,7 @@ layout: default
|
|||||||
|
|
||||||
# CHANGELOG
|
# CHANGELOG
|
||||||
|
|
||||||
All notable changes to this project are documented in this file.
|
All notable user-facing changes to this project are documented in this file.
|
||||||
|
|
||||||
{: .highlight }
|
{: .highlight }
|
||||||
The project underwent a major maintenance shift in March 2022.
|
The project underwent a major maintenance shift in March 2022.
|
||||||
@@ -16,12 +16,718 @@ The project underwent a major maintenance shift in March 2022.
|
|||||||
This website is built from the `HEAD` of the `main` branch of the theme repository.
|
This website is built from the `HEAD` of the `main` branch of the theme repository.
|
||||||
|
|
||||||
{: .warning }
|
{: .warning }
|
||||||
This website includes docs for some new features that are not available in `v0.4.0.rc2` and `v0.3.3`!
|
This website includes docs for some new features that are not available in `v0.5.2`!
|
||||||
|
|
||||||
Changes to `main` that are *not* in the latest pre-release:
|
Code changes to `main` that are *not* in the latest release:
|
||||||
|
|
||||||
- N/A
|
- N/A
|
||||||
|
|
||||||
|
Docs changes in `main` that are *not* in the latest release:
|
||||||
|
|
||||||
|
- N/A
|
||||||
|
|
||||||
|
## Release v0.5.2
|
||||||
|
|
||||||
|
Hi all, this is a minor patch release that mostly focuses on accessibility. Since we follow semantic versioning, this should be a smooth upgrade with no breaking changes.
|
||||||
|
|
||||||
|
In addition, the theme docs website has a new canonical URL: <https://just-the-docs.com>. We've also retroactively published the theme docs website for version `v0.3.3` at <https://v0-3-3-docs.just-the-docs.com/>. Thank you to our GitHub sponsors for funding our domain name!
|
||||||
|
|
||||||
|
### Using Release `v0.5.2`
|
||||||
|
|
||||||
|
Users who have not pinned the theme version will be **automatically upgraded to `v0.5.2` the next time they build their site**.
|
||||||
|
|
||||||
|
To use this release explicitly as a remote theme:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.5.2
|
||||||
|
```
|
||||||
|
|
||||||
|
To use this version explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.5.2"
|
||||||
|
```
|
||||||
|
|
||||||
|
To use and pin a previous version of the theme, replace the `0.5.2` with the desired release tag.
|
||||||
|
|
||||||
|
### Bugfixes
|
||||||
|
|
||||||
|
- Fixed: liquid variable leakage in navigation components by [@pdmosses] in [#1243]
|
||||||
|
- Fixed: ARIA roles and labels for search, header, logo, mobile menu button, and main content by [@joelhawksley] in [#1259]
|
||||||
|
- Fixed: ARIA labels for all anchors with `href="#"`; adds `aria-pressed` information for toggles by [@mattxwang] in [#1262]
|
||||||
|
|
||||||
|
### New Contributors
|
||||||
|
|
||||||
|
- [@joelhawksley] made their first contribution in [#1259]
|
||||||
|
|
||||||
|
[@joelhawksley]: https://github.com/joelhawksley
|
||||||
|
|
||||||
|
[#1243]: https://github.com/just-the-docs/just-the-docs/pull/1243
|
||||||
|
[#1259]: https://github.com/just-the-docs/just-the-docs/pull/1259
|
||||||
|
[#1262]: https://github.com/just-the-docs/just-the-docs/pull/1262
|
||||||
|
|
||||||
|
## Release v0.5.1
|
||||||
|
|
||||||
|
Hi all, this is a very small minor patch release that has two small behavioral bugfixes: fixing a regression introduced in `v0.5.0` on Safari versions `<16.4` (broken media query), and the copy code button providing incorrect feedback in insecure browser contexts. This should be a smooth upgrade with no breaking changes.
|
||||||
|
|
||||||
|
As always, we'd love your feedback. [Open an issue](https://github.com/just-the-docs/just-the-docs/issues) or [start a discussion](https://github.com/just-the-docs/just-the-docs/discussions) for bug reports, feature requests, and any other feedback. Thanks for continuing to use Just the Docs!
|
||||||
|
|
||||||
|
### Using Release `v0.5.1`
|
||||||
|
|
||||||
|
Users who have not pinned the theme version will be **automatically upgraded to `v0.5.1` the next time they build their site**.
|
||||||
|
|
||||||
|
To use this release explicitly as a remote theme:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.5.1
|
||||||
|
```
|
||||||
|
|
||||||
|
To use this version explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.5.1"
|
||||||
|
```
|
||||||
|
|
||||||
|
To use and pin a previous version of the theme, replace the `0.5.1` with the desired release tag.
|
||||||
|
|
||||||
|
### Bugfixes
|
||||||
|
|
||||||
|
|
||||||
|
- Fixed: disable copy code button in insecure contexts [@rmoff] in [#1226]
|
||||||
|
- Fixed: context-based media feature not supported by Safari `<16.4` by [@mattxwang] in [#1240]
|
||||||
|
|
||||||
|
### Documentation
|
||||||
|
|
||||||
|
- Added: document copy code button requiring secure context by [@rmoff] in [#1225]
|
||||||
|
- Fixed: typo ("them" → "theme") in MIGRATION.md by [@waldyrious] in [#1219]
|
||||||
|
- Fixed: `font-weight` typo (Utilities > Typography) by [@mattxwang] in [#1229]
|
||||||
|
- Fixed: `just the docs` typo in migration guide by [@mattxwang] in [#1230]
|
||||||
|
|
||||||
|
### New Contributors
|
||||||
|
- [@rmoff] made their first contribution in [#1225]
|
||||||
|
|
||||||
|
[#1219]: https://github.com/just-the-docs/just-the-docs/pull/1219
|
||||||
|
[#1225]: https://github.com/just-the-docs/just-the-docs/pull/1225
|
||||||
|
[#1226]: https://github.com/just-the-docs/just-the-docs/pull/1226
|
||||||
|
[#1229]: https://github.com/just-the-docs/just-the-docs/pull/1229
|
||||||
|
[#1230]: https://github.com/just-the-docs/just-the-docs/pull/1230
|
||||||
|
[#1240]: https://github.com/just-the-docs/just-the-docs/pull/1240
|
||||||
|
|
||||||
|
[@rmoff]: https://github.com/rmoff
|
||||||
|
|
||||||
|
## Release v0.5.0
|
||||||
|
|
||||||
|
Hope your April is going well! This new release of Just the Docs is relatively minor. It has one **breaking change**: we've reverted the import order of `setup.scss` to be *before* color schemes. In addition, we include two requested fixes: color contrast issues with `::selection` and using Just the Docs with mermaid versions `>=10`.
|
||||||
|
|
||||||
|
We've marked this as a minor version bump due to the breaking change. In the next section, we briefly outline what migration steps should be. Users who did not migrate to `v0.4.2` or who do not have a custom `setup.scss` are guaranteed no breaking changes.
|
||||||
|
|
||||||
|
As always, we'd love your feedback. [Open an issue](https://github.com/just-the-docs/just-the-docs/issues) or [start a discussion](https://github.com/just-the-docs/just-the-docs/discussions) for bug reports, feature requests, and any other feedback. Thanks for continuing to use Just the Docs!
|
||||||
|
|
||||||
|
### Migrating to `v0.5.0`
|
||||||
|
|
||||||
|
**Migration**: users with a custom `setup.scss` cannot rely on variables or functions defined in `color_scheme`. This reverts to the behaviour in `v0.4.1`. Users should instead move those variables or functions to the `color_scheme` files themselves.
|
||||||
|
|
||||||
|
For more, refer to the [migration guide](https://just-the-docs.com/MIGRATION/).
|
||||||
|
|
||||||
|
### Using Release `v0.5.0`
|
||||||
|
|
||||||
|
Users who have not pinned the theme version will be **automatically upgraded to `v0.5.0` the next time they build their site**.
|
||||||
|
|
||||||
|
To use this release explicitly as a remote theme:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.5.0
|
||||||
|
```
|
||||||
|
|
||||||
|
To use this version explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.5.0"
|
||||||
|
```
|
||||||
|
|
||||||
|
To use and pin a previous version of the theme, replace the `0.5.0` with the desired release tag.
|
||||||
|
|
||||||
|
### Bugfixes
|
||||||
|
|
||||||
|
- **Reverted (breaking)**: "Fix import order for `setup.scss` (#1184)" by [@mattxwang] in [#1209]
|
||||||
|
- Fixed: color contrast issues with `::selection` (reverting to browser defaults) [@mattxwang] in [#1208]
|
||||||
|
- Fixed: mermaid `v10`, bundle all mermaid code in component by [@mattxwang] in [#1190]
|
||||||
|
- Removed: unused images (`just-the-docs.png`, `search.svg`) by [@mattxwang] in [#1107]
|
||||||
|
- Removed: `CODE_OF_CONDUCT`, `docker-compose`, and `Dockerfile` files from site by [@mattxwang] in [#1187]
|
||||||
|
|
||||||
|
**Full Changelog**: [https://github.com/just-the-docs/just-the-docs/compare/v0.4.2...v0.5.0](https://github.com/just-the-docs/just-the-docs/compare/v0.4.2...v0.5.0)
|
||||||
|
|
||||||
|
[#1107]: https://github.com/just-the-docs/just-the-docs/pull/1107
|
||||||
|
[#1187]: https://github.com/just-the-docs/just-the-docs/pull/1187
|
||||||
|
[#1190]: https://github.com/just-the-docs/just-the-docs/pull/1190
|
||||||
|
[#1208]: https://github.com/just-the-docs/just-the-docs/pull/1208
|
||||||
|
[#1209]: https://github.com/just-the-docs/just-the-docs/pull/1209
|
||||||
|
|
||||||
|
## Release v0.4.2
|
||||||
|
|
||||||
|
Hello! We're back again with another small release. Like `v0.4.1`, this release is a [semver patch](https://semver.org/): it only includes bugfixes, and is fully backwards-compatible.
|
||||||
|
|
||||||
|
The big highlight of this theme is fixing our light scheme code highlighting contrast issues; this was one of our most-requested features! This change is fully backwards-compatible; users can [opt-in to our old highlighting theme](https://just-the-docs.com/docs/customization/#deprecated-legacy_light) by using `legacy_light` instead of `light`.
|
||||||
|
|
||||||
|
As always, we'd love your feedback. [Open an issue](https://github.com/just-the-docs/just-the-docs/issues) or [start a discussion](https://github.com/just-the-docs/just-the-docs/discussions) for bug reports, feature requests, and any other feedback. Thanks for continuing to use Just the Docs!
|
||||||
|
|
||||||
|
### Using Release `v0.4.2`
|
||||||
|
|
||||||
|
Users who have not pinned the theme version will be **automatically upgraded to `v0.4.2` the next time they build their site**.
|
||||||
|
|
||||||
|
To use this release explicitly as a remote theme:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.4.2
|
||||||
|
```
|
||||||
|
|
||||||
|
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.4.2"
|
||||||
|
```
|
||||||
|
|
||||||
|
To use and pin a previous version of the theme, replace the `0.4.2` with the desired release tag.
|
||||||
|
|
||||||
|
### Bugfixes
|
||||||
|
|
||||||
|
- Fixed: light scheme code highlighting contrast issues; updated to use Atom's One Light colors, consolidate theme variables by [@mattxwang] in [#1166]
|
||||||
|
- Fixed: duplicate import of `color_schemes` by [@mattxwang] in [#1173]
|
||||||
|
- Fixed: import order for `setup.scss` by [@mattxwang] in [#1184]
|
||||||
|
- Removed: unused dark syntax themes by [@mattxwang] in [#1192]
|
||||||
|
|
||||||
|
### Documentation
|
||||||
|
|
||||||
|
- Added: docs for using mermaid with AsciiDoc by [@flyx] in [#1182]
|
||||||
|
|
||||||
|
**Full Changelog**: [https://github.com/just-the-docs/just-the-docs/compare/v0.4.1...v0.4.2](https://github.com/just-the-docs/just-the-docs/compare/v0.4.1...v0.4.2)
|
||||||
|
|
||||||
|
[#1166]: https://github.com/just-the-docs/just-the-docs/pull/1166
|
||||||
|
[#1173]: https://github.com/just-the-docs/just-the-docs/pull/1173
|
||||||
|
[#1182]: https://github.com/just-the-docs/just-the-docs/pull/1182
|
||||||
|
[#1184]: https://github.com/just-the-docs/just-the-docs/pull/1184
|
||||||
|
[#1192]: https://github.com/just-the-docs/just-the-docs/pull/1192
|
||||||
|
|
||||||
|
## Release v0.4.1
|
||||||
|
|
||||||
|
Hello! We hope you've been enjoying the new `v0.4.0`; we appreciate all the feedback we've gotten already! As promised, future releases will be small with simple steps to upgrade. This is one of them! `v0.4.1` is a [semver patch](https://semver.org/): it only includes bugfixes, and is fully backwards-compatible.
|
||||||
|
|
||||||
|
As always, we'd love your feedback. [Open an issue](https://github.com/just-the-docs/just-the-docs/issues) or [start a discussion](https://github.com/just-the-docs/just-the-docs/discussions) for bug reports, feature requests, and any other feedback. Thanks for continuing to use Just the Docs!
|
||||||
|
|
||||||
|
### Using Release `v0.4.1`
|
||||||
|
|
||||||
|
Users who have not pinned the theme version will be **automatically upgraded to `v0.4.1` the next time they build their site**.
|
||||||
|
|
||||||
|
To use this release explicitly as a remote theme:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.4.1
|
||||||
|
```
|
||||||
|
|
||||||
|
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.4.1"
|
||||||
|
```
|
||||||
|
|
||||||
|
To use and pin a previous version of the theme, replace the `0.4.1` with the desired release tag.
|
||||||
|
|
||||||
|
### Bugfixes
|
||||||
|
|
||||||
|
- Fixed: allow later versions of `bundler` by [@mattxwang] in [#1165]
|
||||||
|
- Fixed: AsciiDoc code block styling by [@flyx] in [#1168]
|
||||||
|
- Fixed: main content negative margin for viewports in `[$md, $nav-width + $content-width]` by [@Dima-369] in [#1177]
|
||||||
|
- Removed: unused `OneDarkJekyll` files by [@mattxwang] in [#1167]
|
||||||
|
|
||||||
|
### Documentation
|
||||||
|
|
||||||
|
- Fixed: re-add `jekyll-github-metadata` to docs site by [@mattxwang] in [#1108]
|
||||||
|
|
||||||
|
### New Contributors
|
||||||
|
|
||||||
|
- [@flyx] made their first contribution in [#1168]
|
||||||
|
- [@Dima-369] made their first contribution in [#1177]
|
||||||
|
|
||||||
|
[#1108]: https://github.com/just-the-docs/just-the-docs/pull/1108
|
||||||
|
[#1165]: https://github.com/just-the-docs/just-the-docs/pull/1165
|
||||||
|
[#1167]: https://github.com/just-the-docs/just-the-docs/pull/1167
|
||||||
|
[#1168]: https://github.com/just-the-docs/just-the-docs/pull/1168
|
||||||
|
[#1177]: https://github.com/just-the-docs/just-the-docs/pull/1177
|
||||||
|
|
||||||
|
[@flyx]: https://github.com/flyx
|
||||||
|
[@Dima-369]: https://github.com/Dima-369
|
||||||
|
|
||||||
|
**Full Changelog**: [https://github.com/just-the-docs/just-the-docs/compare/v0.4.0...v0.4.1](https://github.com/just-the-docs/just-the-docs/compare/v0.4.0...v0.4.1)
|
||||||
|
|
||||||
|
## Release v0.4.0
|
||||||
|
|
||||||
|
We're so excited to release Just the Docs `v0.4.0`. This release has been almost a year in the making - after our new maintenance team has taken over the project, we've added two years of backlogged features and bugfixes to modernize the theme. This CHANGELOG will summarize some of the key changes, discuss migrations strategies, and outline broad future plans for this theme.
|
||||||
|
|
||||||
|
### Brief Overview - Highlighted Changes
|
||||||
|
|
||||||
|
`v0.4.0` contains many new features and bugfixes. We enumerate all of them in further sections in this changelog; however, we'd like to call out some of the most-requested changes:
|
||||||
|
|
||||||
|
- better support for dark theme: dark highlighting, search input color
|
||||||
|
- [callouts](https://just-the-docs.com/docs/ui-components/callouts/), a new design component to highlight content
|
||||||
|
- [configuring mermaid.js](https://just-the-docs.com/docs/ui-components/code/#mermaid-diagram-code-blocks), a markdown-native diagram visualization library
|
||||||
|
- [copy code button](https://just-the-docs.com/docs/ui-components/code/#copy-button) for code snippets
|
||||||
|
- [external navigation links](https://just-the-docs.com/docs/navigation-structure/#external-navigation-links)
|
||||||
|
- major improvements to nav generation efficiency and robustness
|
||||||
|
- minor improvements to built-in accessibility (SVG icons, nav titles, skip to main content)
|
||||||
|
- [modularized site components](https://just-the-docs.com/docs/customization/#custom-layouts-and-includes) (advanced feature)
|
||||||
|
- [new custom includes](https://just-the-docs.com/docs/customization/#override-includes): table of contents heading, navigation panel footer, search placeholder, lunr search indices
|
||||||
|
- bugfixes involving WEBrick and Ruby 3, Liquid processing in CSS comments, nested task lists, relative URLs, scroll navigation, corrupted search data from rake, breadcrumbs, and more!
|
||||||
|
- more documentation for [custom includes](https://just-the-docs.com/docs/customization/#override-includes), this changelog, and the [migration guide](https://just-the-docs.com/MIGRATION/)
|
||||||
|
|
||||||
|
*After usage instructions and the roadmap, we enumerate all changes from `v0.3.3`.*
|
||||||
|
|
||||||
|
### Using Release `v0.4.0`
|
||||||
|
|
||||||
|
Unlike pre-releases, `v0.4.0` is a new semver minor release for the theme. That means that users who have not pinned the theme version will be **automatically upgraded to `v0.4.0` the next time they build their site**.
|
||||||
|
|
||||||
|
To use this release explicitly as a remote theme:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.4.0
|
||||||
|
```
|
||||||
|
|
||||||
|
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.4.0"
|
||||||
|
```
|
||||||
|
|
||||||
|
If you would prefer to not upgrade, you can enforce that explicitly:
|
||||||
|
|
||||||
|
1. pin your gem version in your `Gemfile`, like so
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.3.3"
|
||||||
|
```
|
||||||
|
2. freeze the `remote_theme`, like so
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.3.3
|
||||||
|
```
|
||||||
|
|
||||||
|
### Migration Guide and Strategies
|
||||||
|
|
||||||
|
We've developed a new [migration guide](https://just-the-docs.com/MIGRATION/) for users to migrate from version `v0.3.3` to `v0.4.0`. It outlines major changes in project maintenance (e.g. new repository link, team) as well as breaking changes that may break your site (and potential solutions). We suggest that all users refer to the guide before manually upgrading their site.
|
||||||
|
|
||||||
|
**For the vast majority of users, we do not anticipate that this will be a breaking change.** The major touch points are surrounding new includes, navigation (ordering, pages, and collections), the favicon, and a shift to relative URLs. However, users who heavily customize the theme (primarily by overriding includes) will likely have to make minor changes.
|
||||||
|
|
||||||
|
Given the length of features added in this release, users may want to incrementally upgrade through the pre-releases. To follow this approach, read this changelog from `v0.4.0.rc1` to `v0.4.0.rc5`; this breaks down the release into small chunks, each of which should be easier to upgrade. `v0.4.0.rc5` is identical to this release.
|
||||||
|
|
||||||
|
For support with migrating to `v0.4.0`, [open an issue](https://github.com/just-the-docs/just-the-docs/issues) or [start a discussion](https://github.com/just-the-docs/just-the-docs/discussions) and let us know!
|
||||||
|
|
||||||
|
### Roadmap (What's Next?)
|
||||||
|
|
||||||
|
Moving forward, we plan to release more frequently with smaller, bite-sized changes. This should make it easier for users to upgrade in the future!
|
||||||
|
|
||||||
|
Broadly, many features are still on the radar. We anticipate the rest of `v0.4.x` to be bugfixes surrounding this new release.
|
||||||
|
|
||||||
|
For version `v0.5`, our roadmap includes:
|
||||||
|
|
||||||
|
- a theme toggle (light/dark mode), with automatic theme switching based on browser preferences
|
||||||
|
- better GDPR compliance for analytics
|
||||||
|
- multi-level/recursive navigation (unlimited hierarchy of child pages)
|
||||||
|
|
||||||
|
In future versions, we also plan on:
|
||||||
|
|
||||||
|
- adding better dark theme defaults
|
||||||
|
- adding better internationalization support
|
||||||
|
- exploring offline PDF generation
|
||||||
|
- improving accessibility within the theme
|
||||||
|
- improving search functionality
|
||||||
|
- refactoring and improving the robustness of our codebase
|
||||||
|
|
||||||
|
Have ideas for what's next, or want to get involved? [Open an issue](https://github.com/just-the-docs/just-the-docs/issues) or [start a discussion](https://github.com/just-the-docs/just-the-docs/discussions) and let us know! We're looking for more contributors and maintainers to help us develop the theme.
|
||||||
|
|
||||||
|
### New Features
|
||||||
|
|
||||||
|
- Added: Combination by [@pdmosses] in [#578]
|
||||||
|
- Added: dark highlighting in [#463]
|
||||||
|
- Added: pages and collections in [#448]
|
||||||
|
- Added: callouts in [#466]
|
||||||
|
- Fixed: breadcrumb behaviour … by [@AdityaTiwari2102] in [#477]
|
||||||
|
- Fixed: prevent rake command corrupting search data in [#495] (also listed below)
|
||||||
|
- Fixed: nested lists in [#496]
|
||||||
|
- Fixed: set color for search input in [#498] (also listed below)
|
||||||
|
- Fixed: sites with no child pages (no PR)
|
||||||
|
- Fixed: TOC/breadcrumbs for multiple collections in [#494]
|
||||||
|
- Added: collection configuration option `nav_fold` (no PR)
|
||||||
|
- Fixed: indentation and color for folded collection navigation (no PR)
|
||||||
|
- Fixed: scroll navigation to show the link to the current page in [#639]
|
||||||
|
- Fixed: Replace all uses of `absolute_url` by `relative_url`, by [@svrooij] in [#544]
|
||||||
|
- Added: custom favicon `_includes` by [@burner1024] in [#364]
|
||||||
|
- Added: set color for search input by [@pdmosses] in [#498]
|
||||||
|
- Added: search placeholder configuration by [@mattxwang] in [#613]
|
||||||
|
- Added: 'child_nav_order' front matter to be able to sort navigation pages in reverse by [@jmertic] in [#726]
|
||||||
|
- Added: `nav_footer_custom` include by [@nathanjessen] in [#474]
|
||||||
|
- Added: style fixes for jekyll-asciidoc by [@alyssais] in [#829]
|
||||||
|
- Added: mermaid.js support by [@nascosto] in [#857]
|
||||||
|
- Added: support for external navigation links by [@SPGoding] in [#876]
|
||||||
|
- Added: refactor `mermaid` config to use `mermaid_config.js` include, only require `mermaid.version` in `_config.yml` by [@mattxwang] in [#909]
|
||||||
|
- Added: accessible titles to nested page nav toggle by [@JPrevost] in [#950]
|
||||||
|
- Added: better title styling for AsciiDoc examples by [@alyssais] in [#944]
|
||||||
|
- Added: docs for custom search placeholder by [@mattxwang] in [#939]
|
||||||
|
- Added: provide ability to skip to main content by [@JPrevost] in [#949]
|
||||||
|
- Added: styling for `<blockquote>` by [@mattxwang] in [#965]
|
||||||
|
- Added: custom include for TOC heading by [@pdmosses] in [#980]
|
||||||
|
- Added: experimental nav optimization for simple cases by [@pdmosses] in [#992]
|
||||||
|
- Added: support multiple Google Analytics tracking IDs, document UA -> GA4 switch by [@MichelleBlanchette] in [#1029]
|
||||||
|
- Added: copy code button to code snippets by [@simonebortolin] in [#945]
|
||||||
|
- Added: restore simple configuration of `favicon.ico` via `site.static_files` by [@pdmosses] in [#1095]
|
||||||
|
- Added: modularize site components by [@mattxwang] in [#1058]
|
||||||
|
- Added: includes for custom `lunr` Liquid and JS code by [@diablodale] in [#1068]
|
||||||
|
- Added: new `_sass/custom/setup.scss` for variable definition by [@mattxwang] in [#1135]
|
||||||
|
- Added: configuration key to load a local version of mermaid by [@fabrik42] in [#1153]
|
||||||
|
|
||||||
|
### Bugfixes
|
||||||
|
|
||||||
|
- Fixed: prepend `site.collections_dir` if exists by [@alexsegura] in [#519]
|
||||||
|
- Fixed: nested task lists (#517) by [@pdmosses] in [#855]
|
||||||
|
- Fixed: suppress Liquid processing in CSS comments by [@pdmosses] in [#686]
|
||||||
|
- Fixed: prevent rake command from corrupting search data by [@pdmosses] in [#495]
|
||||||
|
- Fixed: anchor heading links should be visible on focus by [@jacobhq] in [#846]
|
||||||
|
- Fixed: add `overflow-x: auto` to `figure.highlight` by [@iridazzle] in [#727]
|
||||||
|
- Fixed: add `overflow-wrap: word-break` to `body` by [@iridazzle] in [#889]
|
||||||
|
- Fixed: vertical alignment for consecutive labels by [@Eisverygoodletter] in [#893]
|
||||||
|
- Fixed: allow links to wrap by [@pdmosses] in [#905]
|
||||||
|
- Fixed: nav scroll feature and absolute/relative URLs by [@pdmosses] in [#898]
|
||||||
|
- Fixed: exclude `vendor/` in Jekyll config by [@manuelhenke] in [#941]
|
||||||
|
- Fixed: improve build time of navigation panel by [@pdmosses] in [#956]
|
||||||
|
- Fixed: spacing issue when search is disabled by [@henryiii] in [#960]
|
||||||
|
- Fixed: active grandchild link class by [@pdmosses] in [#962]
|
||||||
|
- Fixed: HTML validation issues (W3C validator) by [@mattxwang] in [#964]
|
||||||
|
- Fixed: link styling now uses `text-decoration` values by [@mattxwang] in [#967]
|
||||||
|
- Fixed: cleaning up Jekyll excludes by [@pdmosses] in [#985]
|
||||||
|
- Fixed: docs, narrow styling for code highlighting with line numbers by [@pdmosses] in [#974]
|
||||||
|
- Fixed: default syntax highlighting in custom color schemes [@pdmosses] in [#986]
|
||||||
|
- Fixed: incorrect disambiguation in generated TOCs by [@pdmosses] in [#999]
|
||||||
|
- Fixed: duplicated external links in collections by [@pdmosses] in [#1001]
|
||||||
|
- Fixed: import order of `custom.scss`; puts at end by [@deseo] in [#1010]
|
||||||
|
- Fixed: top-level active link styling by [@pdmosses] in [#1015]
|
||||||
|
- Fixed: external links for sites with no pages by [@pdmosses] in [#1021]
|
||||||
|
- Fixed: duplicate `title` if `jekyll-seo-tag` not in users's plugins by [@Tom-Brouwer] in [#1040]
|
||||||
|
- Fixed: removes (duplicate) `favicon.html`, shifts content to `head_custom.html` by [@mattxwang] in [#1027]
|
||||||
|
- Fixed: add `reversed`, deprecate `desc` for nav `child_nav_order` by [@jmertic] in [#1061]
|
||||||
|
- Fixed: `child.child_nav_order` to `node.child_nav_order` by [@mattxwang] in [#1065]
|
||||||
|
- Fixed: remove all uses of `/` as SASS division by [@mattxwang] in [#1074]
|
||||||
|
- note: this was originally merged as [#1074] with a bug; it was reverted in [#1076], and then reimplemented in [#1077]
|
||||||
|
- Fixed: skip nav collection generation when site has no pages by [@pdmosses] in [#1092]
|
||||||
|
- Fixed: standardize SCSS with `declaration-block-no-redundant-longhand-properties` by [@simonebortolin] in [#1102]
|
||||||
|
- Fixed: incorrect `padding` property value pair in `labels.scss` by [@SConaway] in [#1104]
|
||||||
|
- Fixed: various bugs with copy code button by [@simonebortolin] in [#1096]
|
||||||
|
- Fixed: replace inline styling for `<svg>` icons by [@captn3m0] in [#1110]
|
||||||
|
- Fixed: incorrect `padding` property value pair in `search.scss` by [@kevinlin1] in [#1123]
|
||||||
|
- Fixed: minor spacing and comment nits by [@EricFromCanada] in [#1128]
|
||||||
|
- Fixed: exclude images from being bundled with gem by [@m-r-mccormick] in [#1142]
|
||||||
|
- Fixed: dark theme code block background, line number colors by [@m-r-mccormick] in [#1124]
|
||||||
|
- Fixed: copy code button interaction with kramdown line numbers by [@mattxwang] in [#1143]
|
||||||
|
|
||||||
|
### Maintenance
|
||||||
|
|
||||||
|
- Added: VScode devcontainer by [@max06] in [#783]
|
||||||
|
- Added: `webrick` to `Gemfile` by [@mattxwang] in [#799]
|
||||||
|
- Added: 'This site is powered by Netlify.' to the footer by [@mattxwang] in [#797]
|
||||||
|
- Updated: new repo path by [@pmarsceill] in [#775]
|
||||||
|
- Updated: rename `master` -> `main` by [@pmarsceill] in [#776]
|
||||||
|
- Updated: README by [@pmarsceill] in [#777]
|
||||||
|
- Updated: Code of Conduct to Contributor Covenant v2.1 by [@mattxwang] in [#790]
|
||||||
|
- Updated: CI files, Ruby & Node Versions by [@mattxwang] in [#820]
|
||||||
|
- Updated: Stylelint to v14, extend SCSS plugins, remove primer-* configs, resolve issues by [@mattxwang] in [#821]
|
||||||
|
- Deleted: unused script directory by [@mattxwang] in [#937]
|
||||||
|
- Vendor: update `jekyll-anchor-headings`, `lunr.js` by [@mattxwang] in [#1071]
|
||||||
|
|
||||||
|
### Documentation
|
||||||
|
|
||||||
|
- Added: docs on how to break an `ol` by [@pdmosses] in [#856]
|
||||||
|
- Added: docs for custom includes by [@nathanjessen] in [#806]
|
||||||
|
- Added: document caveat about variable dependencies by [@waldyrious] in [#555]
|
||||||
|
- Added: docs on how to use `custom_head` to add a custom favicon by [@UnclassedPenguin] in [#814]
|
||||||
|
- Added: docs load mermaid.js by default by [@mattxwang] in [#935]
|
||||||
|
- Added: warning about mandatory `_`-prefix for collections by [@max06] in [#1091]
|
||||||
|
- Added: migration guide by [@pdmosses] in [#1059]
|
||||||
|
- Added: label new features introduced in `v0.4` by [@mattxwang] in [#1138]
|
||||||
|
- Fixed: `ol` on `index.md` by [@pmarsceill] in [#778]
|
||||||
|
- Fixed: image link in Markdown kitchen sink by [@JeffGuKang] in [#221]
|
||||||
|
- Fixed: images in Markdown kitchen sink by [@dougaitken] in [#782]
|
||||||
|
- Fixed: clearer label of link to Jekyll quickstart by [@waldyrious] in [#549]
|
||||||
|
- Fixed: remove extra spaces in component docs by [@MichelleBlanchette] in [#554]
|
||||||
|
- Fixed: double "your" typo in `index.md` by [@sehilyi] in [#499]
|
||||||
|
- Fixed: "you" -> "your" typo in `index.md` by [@nathanjessen] in [#473]
|
||||||
|
- Fixed: spacing in toc example by [@henryiii] in [#835]
|
||||||
|
- Fixed: typo in `README` on `_config.yml` by [@ivanskodje] in [#891]
|
||||||
|
- Fixed: missing code fence in navigation structure docs by [@mattxwang] in [#906]
|
||||||
|
- Fixed: table of contents on search docs by [@robinpokorny] in [#940]
|
||||||
|
- Fixed: broken docs link (custom footer) by [@olgarithms] in [#951]
|
||||||
|
- Fixed: clarify version docs by [@pdmosses] in [#955]
|
||||||
|
- Fixed: typo in changelog links [@koppor] in [#1000]
|
||||||
|
- Fixed: two bugs in "Customization" (custom favicon, new annotation) by [@mattxwang] in [#1090]
|
||||||
|
- Fixed: "View Typography Utilities" link by [@agabrys] in [#1130]
|
||||||
|
- Fixed: broken relative page links by [@mattxwang] in [#1106]
|
||||||
|
- Fixed: clarify steps to add custom `lunr` index code by [@diablodale] in [#1139]
|
||||||
|
- Updated: homepage (focus: new features, conciseness, deduplication) by [@pdmosses] in [#1018]
|
||||||
|
- Updated: README (focus: new features, conciseness, deduplication) by [@pdmosses] in [#1019]
|
||||||
|
- Updated: `README` demo video by [@codewithfan] in [#1097]
|
||||||
|
|
||||||
|
### New Contributors
|
||||||
|
|
||||||
|
- [@AdityaTiwari2102] made their first contribution in [#477]
|
||||||
|
- [@svrooij] made their first contribution in [#544]
|
||||||
|
- [@alexsegura] made their first contribution in [#519]
|
||||||
|
- [@burner1024] made their first contribution in [#364]
|
||||||
|
- [@JeffGuKang] made their first contribution in [#221]
|
||||||
|
- [@dougaitken] made their first contribution in [#782]
|
||||||
|
- [@max06] made their first contribution in [#783]
|
||||||
|
- [@sehilyi] made their first contribution in [#499]
|
||||||
|
- [@nathanjessen] made their first contribution in [#473]
|
||||||
|
- [@waldyrious] made their first contribution in [#549]
|
||||||
|
- [@MichelleBlanchette] made their first contribution in [#554]
|
||||||
|
- [@henryiii] made their first contribution in [#835]
|
||||||
|
- [@jmertic] made their first contribution in [#726]
|
||||||
|
- [@jacobhq] made their first contribution in [#846]
|
||||||
|
- [@UnclassedPenguin] made their first contribution in [#814]
|
||||||
|
- [@alyssais] made their first contribution in [#829]
|
||||||
|
- [@nascosto] made their first contribution in [#857]
|
||||||
|
- [@SPGoding] made their first contribution in [#876]
|
||||||
|
- [@iridazzle] made their first contribution in [#727]
|
||||||
|
- [@ivanskodje] made their first contribution in [#891]
|
||||||
|
- [@Eisverygoodletter] made their first contribution in [#893]
|
||||||
|
- [@robinpokorny] made their first contribution in [#940]
|
||||||
|
- [@olgarithms] made their first contribution in [#951]
|
||||||
|
- [@manuelhenke] made their first contribution in [#941]
|
||||||
|
- [@JPrevost] made their first contribution in [#950]
|
||||||
|
- [@koppor] made their first contribution in [#1000]
|
||||||
|
- [@deseo] made their first contribution in [#1010]
|
||||||
|
- [@Tom-Brouwer] made their first contribution in [#1040]
|
||||||
|
- [@simonebortolin] made their first contribution in [#945]
|
||||||
|
- [@SConaway] made their first contribution in [#1104]
|
||||||
|
- [@captn3m0] made their first contribution in [#1110]
|
||||||
|
- [@kevinlin1] made their first contribution in [#1123]
|
||||||
|
- [@codewithfan] made their first contribution in [#1097]
|
||||||
|
- [@agabrys] made their first contribution in [#1130]
|
||||||
|
- [@diablodale] made their first contribution in [#1068]
|
||||||
|
- [@m-r-mccormick] made their first contribution in [#1142]
|
||||||
|
- [@fabrik42] made their first contribution in [#1153]
|
||||||
|
|
||||||
|
## Pre-release v0.4.0.rc5
|
||||||
|
|
||||||
|
Hi everyone, we're so excited to finally release `v0.4.0`! For posterity's sake, we're going to release `v0.4.0.rc5` and then immediately re-release it as `v0.4.0`; this should make it more clear what changes were introduced in the lead up to the minor release.
|
||||||
|
|
||||||
|
This RC does not introduce any major user-facing features. It adds more customizability for custom SCSS variables (fixing a bug with callout introduction order), `lunr` indexing, and loading `mermaid` locally. In addition, it fixes bugs introduced in `.rc4`: incorrect CSS, inconsistencies with code block backgrounds in dark theme, and the copy code button. It also adds a migration guide for users coming from `v0.3.3`.
|
||||||
|
|
||||||
|
### Trying out pre-release `v0.4.0.rc5`
|
||||||
|
|
||||||
|
Simlar to the prior release, `v0.4.0.rc5` is a **release candidate** for the theme (i.e., a pre-release) with release `v0.4.0` following immediately after. While we don't anticipate many users using this RC, it is still possible to opt-in.
|
||||||
|
|
||||||
|
To use this RC explicitly as a remote theme:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.4.0.rc5
|
||||||
|
```
|
||||||
|
|
||||||
|
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.4.0.rc5"
|
||||||
|
```
|
||||||
|
|
||||||
|
By default, **users will not be upgraded to `0.4.0.rc5`**. To enforce that explicitly, either:
|
||||||
|
|
||||||
|
1. pin your gem version in your `Gemfile`, like so
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.3.3"
|
||||||
|
```
|
||||||
|
2. freeze the `remote_theme`, like so
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.3.3
|
||||||
|
```
|
||||||
|
|
||||||
|
### New Features
|
||||||
|
|
||||||
|
- Added: includes for custom `lunr` Liquid and JS code by [@diablodale] in [#1068]
|
||||||
|
- Added: new `_sass/custom/setup.scss` for variable definition by [@mattxwang] in [#1135]
|
||||||
|
- Added: configuration key to load a local version of mermaid by [@fabrik42] in [#1153]
|
||||||
|
|
||||||
|
### Bugfixes and Maintenance
|
||||||
|
|
||||||
|
- Fixed: incorrect `padding` property value pair in `search.scss` by [@kevinlin1] in [#1123]
|
||||||
|
- Fixed: minor spacing and comment nits by [@EricFromCanada] in [#1128]
|
||||||
|
- Fixed: exclude images from being bundled with gem by [@m-r-mccormick] in [#1142]
|
||||||
|
- Fixed: dark theme code block background, line number colors by [@m-r-mccormick] in [#1124]
|
||||||
|
- Fixed: copy code button interaction with kramdown line numbers by [@mattxwang] in [#1143]
|
||||||
|
|
||||||
|
### Docs
|
||||||
|
|
||||||
|
- Docs: add a migration guide by [@pdmosses] in [#1059]
|
||||||
|
- Docs: update `README` demo video by [@codewithfan] in [#1097]
|
||||||
|
- Docs: update "View Typography Utilities" link by [@agabrys] in [#1130]
|
||||||
|
- Docs: fix broken relative page links by [@mattxwang] in [#1106]
|
||||||
|
- Docs: clarify steps to add custom `lunr` index code by [@diablodale] in [#1139]
|
||||||
|
- Docs: label new features introduced in `v0.4` by [@mattxwang] in [#1138]
|
||||||
|
|
||||||
|
### New Contributors
|
||||||
|
|
||||||
|
- [@kevinlin1] made their first contribution in [#1123]
|
||||||
|
- [@codewithfan] made their first contribution in [#1097]
|
||||||
|
- [@agabrys] made their first contribution in [#1130]
|
||||||
|
- [@diablodale] made their first contribution in [#1068]
|
||||||
|
- [@m-r-mccormick] made their first contribution in [#1142]
|
||||||
|
- [@fabrik42] made their first contribution in [#1153]
|
||||||
|
|
||||||
|
[#1059]: https://github.com/just-the-docs/just-the-docs/pull/1059
|
||||||
|
[#1068]: https://github.com/just-the-docs/just-the-docs/pull/1068
|
||||||
|
[#1097]: https://github.com/just-the-docs/just-the-docs/pull/1097
|
||||||
|
[#1106]: https://github.com/just-the-docs/just-the-docs/pull/1106
|
||||||
|
[#1123]: https://github.com/just-the-docs/just-the-docs/pull/1123
|
||||||
|
[#1124]: https://github.com/just-the-docs/just-the-docs/pull/1124
|
||||||
|
[#1128]: https://github.com/just-the-docs/just-the-docs/pull/1128
|
||||||
|
[#1130]: https://github.com/just-the-docs/just-the-docs/pull/1130
|
||||||
|
[#1135]: https://github.com/just-the-docs/just-the-docs/pull/1135
|
||||||
|
[#1138]: https://github.com/just-the-docs/just-the-docs/pull/1138
|
||||||
|
[#1139]: https://github.com/just-the-docs/just-the-docs/pull/1139
|
||||||
|
[#1142]: https://github.com/just-the-docs/just-the-docs/pull/1142
|
||||||
|
[#1143]: https://github.com/just-the-docs/just-the-docs/pull/1143
|
||||||
|
[#1153]: https://github.com/just-the-docs/just-the-docs/pull/1153
|
||||||
|
|
||||||
|
[@agabrys]: https://github.com/agabrys
|
||||||
|
[@codewithfan]: https://github.com/codewithfan
|
||||||
|
[@diablodale]: https://github.com/diablodale
|
||||||
|
[@fabrik42]: https://github.com/fabrik42
|
||||||
|
[@kevinlin1]: https://github.com/kevinlin1
|
||||||
|
[@EricFromCanada]: https://github.com/EricFromCanada
|
||||||
|
[@m-r-mccormick]: https://github.com/m-r-mccormick
|
||||||
|
|
||||||
|
## Pre-release v0.4.0.rc4
|
||||||
|
|
||||||
|
Happy new year! We're celebrating with another pre-release, with features that should help theme users better adapt to changes moving forward. **We aim to re-release this as `v0.4.0`, with only few changes**.
|
||||||
|
|
||||||
|
Notable new additions include:
|
||||||
|
|
||||||
|
- modular site components, which split up the site into smaller reusable components; advanced theme users can then remix layouts quickly without duplication
|
||||||
|
- a "copy code" button to code blocks
|
||||||
|
- fixing bugs in generated TOCs and navigation from previous prereleases
|
||||||
|
- various cleanups of CSS and HTML markup
|
||||||
|
|
||||||
|
The roadmap to `v0.4.0` is small. We are only looking to:
|
||||||
|
|
||||||
|
- finish a migration guide, so users can easily upgrade from `v0.3.3` to `v0.4.0`
|
||||||
|
- fix one last bug relating to callouts and custom colors
|
||||||
|
- fix any new bugs introduced by this pre-release
|
||||||
|
|
||||||
|
Have any questions, thoughts, or concerns? We'd love to hear from you! Please [open an issue](https://github.com/just-the-docs/just-the-docs/issues) or [start a discussion](https://github.com/just-the-docs/just-the-docs/discussions) and let us know!
|
||||||
|
|
||||||
|
### Trying out pre-release `v0.4.0.rc4`
|
||||||
|
|
||||||
|
Simlar to the prior release, `v0.4.0.rc4` is a **release candidate** for the theme (i.e., a pre-release) with release `v0.4.0` coming soon. We want your help in testing the changes! As of now, the gem on RubyGems and the repository are updated to `v0.4.0.rc4`.
|
||||||
|
|
||||||
|
To use this RC explicitly as a remote theme:
|
||||||
|
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.4.0.rc4
|
||||||
|
```
|
||||||
|
|
||||||
|
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.4.0.rc4"
|
||||||
|
```
|
||||||
|
|
||||||
|
By default, **users will not be upgraded to `0.4.0.rc4`**. To enforce that explicitly, either:
|
||||||
|
|
||||||
|
1. pin your gem version in your `Gemfile`, like so
|
||||||
|
```ruby
|
||||||
|
gem "just-the-docs", "0.3.3"
|
||||||
|
```
|
||||||
|
2. freeze the `remote_theme`, like so
|
||||||
|
```yml
|
||||||
|
remote_theme: just-the-docs/just-the-docs@v0.3.3
|
||||||
|
```
|
||||||
|
|
||||||
|
### New Features
|
||||||
|
|
||||||
|
- Added: support multiple Google Analytics tracking IDs, document UA -> GA4 switch by [@MichelleBlanchette] in [#1029]
|
||||||
|
- Added: copy code button to code snippets by [@simonebortolin] in [#945]
|
||||||
|
- Added: restore simple configuration of `favicon.ico` via `site.static_files` by [@pdmosses] in [#1095]
|
||||||
|
- Added: modularize site components by [@mattxwang] in [#1058]
|
||||||
|
|
||||||
|
### Bugfixes and Maintenance
|
||||||
|
|
||||||
|
- Fixed: incorrect disambiguation in generated TOCs by [@pdmosses] in [#999]
|
||||||
|
- Fixed: duplicated external links in collections by [@pdmosses] in [#1001]
|
||||||
|
- Fixed: import order of `custom.scss`; puts at end by [@deseo] in [#1010]
|
||||||
|
- Fixed: top-level active link styling by [@pdmosses] in [#1015]
|
||||||
|
- Fixed: external links for sites with no pages by [@pdmosses] in [#1021]
|
||||||
|
- Fixed: duplicate `title` if `jekyll-seo-tag` not in users's plugins by [@Tom-Brouwer] in [#1040]
|
||||||
|
- Fixed: removes (duplicate) `favicon.html`, shifts content to `head_custom.html` by [@mattxwang] in [#1027]
|
||||||
|
- Fixed: add `reversed`, deprecate `desc` for nav `child_nav_order` by [@jmertic] in [#1061]
|
||||||
|
- Fixed: `child.child_nav_order` to `node.child_nav_order` by [@mattxwang] in [#1065]
|
||||||
|
- Fixed: remove all uses of `/` as SASS division by [@mattxwang] in [#1074]
|
||||||
|
- note: this was originally merged as [#1074] with a bug; it was reverted in [#1076], and then reimplemented in [#1077]
|
||||||
|
- Fixed: skip nav collection generation when site has no pages by [@pdmosses] in [#1092]
|
||||||
|
- Fixed: standardize SCSS with `declaration-block-no-redundant-longhand-properties` by [@simonebortolin] in [#1102]
|
||||||
|
- Fixed: incorrect `padding` property value pair in `labels.scss` by [@SConaway] in [#1104]
|
||||||
|
- Fixed: various bugs with copy code button by [@simonebortolin] in [#1096]
|
||||||
|
- Fixed: replace inline styling for `<svg>` icons by [@captn3m0] in [#1110]
|
||||||
|
- Vendor: update `jekyll-anchor-headings`, `lunr.js` by [@mattxwang] in [#1071]
|
||||||
|
|
||||||
|
### Docs
|
||||||
|
|
||||||
|
- Docs: fix typo in changelog links [@koppor] in [#1000]
|
||||||
|
- Docs: update homepage (focus: new features, conciseness, deduplication) by [@pdmosses] in [#1018]
|
||||||
|
- Docs: update README (focus: new features, conciseness, deduplication) by [@pdmosses] in [#1019]
|
||||||
|
- Docs: fix two bugs in "Customization" (custom favicon, new annotation) by [@mattxwang] in [#1090]
|
||||||
|
- Docs: Add warning about mandatory `_`-prefix for collections by [@max06] in [#1091]
|
||||||
|
- Docs: remove Google Analytics on main site by [@mattxwang] in [#1113]
|
||||||
|
|
||||||
|
### New Contributors
|
||||||
|
|
||||||
|
- [@koppor] made their first contribution in [#1000]
|
||||||
|
- [@deseo] made their first contribution in [#1010]
|
||||||
|
- [@Tom-Brouwer] made their first contribution in [#1040]
|
||||||
|
- [@simonebortolin] made their first contribution in [#945]
|
||||||
|
- [@SConaway] made their first contribution in [#1104]
|
||||||
|
- [@captn3m0] made their first contribution in [#1110]
|
||||||
|
|
||||||
|
**Full Changelog**: https://github.com/just-the-docs/just-the-docs/compare/v0.4.0.rc3...v0.4.0.rc4
|
||||||
|
|
||||||
|
[#945]: https://github.com/just-the-docs/just-the-docs/pull/945
|
||||||
|
[#999]: https://github.com/just-the-docs/just-the-docs/pull/999
|
||||||
|
[#1000]: https://github.com/just-the-docs/just-the-docs/pull/1000
|
||||||
|
[#1001]: https://github.com/just-the-docs/just-the-docs/pull/1001
|
||||||
|
[#1010]: https://github.com/just-the-docs/just-the-docs/pull/1010
|
||||||
|
[#1015]: https://github.com/just-the-docs/just-the-docs/pull/1015
|
||||||
|
[#1018]: https://github.com/just-the-docs/just-the-docs/pull/1018
|
||||||
|
[#1019]: https://github.com/just-the-docs/just-the-docs/pull/1019
|
||||||
|
[#1021]: https://github.com/just-the-docs/just-the-docs/pull/1021
|
||||||
|
[#1027]: https://github.com/just-the-docs/just-the-docs/pull/1027
|
||||||
|
[#1029]: https://github.com/just-the-docs/just-the-docs/pull/1029
|
||||||
|
[#1040]: https://github.com/just-the-docs/just-the-docs/pull/1040
|
||||||
|
[#1058]: https://github.com/just-the-docs/just-the-docs/pull/1058
|
||||||
|
[#1061]: https://github.com/just-the-docs/just-the-docs/pull/1061
|
||||||
|
[#1065]: https://github.com/just-the-docs/just-the-docs/pull/1065
|
||||||
|
[#1071]: https://github.com/just-the-docs/just-the-docs/pull/1071
|
||||||
|
[#1074]: https://github.com/just-the-docs/just-the-docs/pull/1074
|
||||||
|
[#1076]: https://github.com/just-the-docs/just-the-docs/pull/1076
|
||||||
|
[#1077]: https://github.com/just-the-docs/just-the-docs/pull/1077
|
||||||
|
[#1090]: https://github.com/just-the-docs/just-the-docs/pull/1090
|
||||||
|
[#1091]: https://github.com/just-the-docs/just-the-docs/pull/1091
|
||||||
|
[#1092]: https://github.com/just-the-docs/just-the-docs/pull/1092
|
||||||
|
[#1095]: https://github.com/just-the-docs/just-the-docs/pull/1095
|
||||||
|
[#1096]: https://github.com/just-the-docs/just-the-docs/pull/1096
|
||||||
|
[#1102]: https://github.com/just-the-docs/just-the-docs/pull/1102
|
||||||
|
[#1104]: https://github.com/just-the-docs/just-the-docs/pull/1104
|
||||||
|
[#1110]: https://github.com/just-the-docs/just-the-docs/pull/1110
|
||||||
|
[#1113]: https://github.com/just-the-docs/just-the-docs/pull/1113
|
||||||
|
|
||||||
|
[@captn3m0]: https://github.com/captn3m0
|
||||||
|
[@deseo]: https://github.com/deseo
|
||||||
|
[@koppor]: https://github.com/koppor
|
||||||
|
[@MichelleBlanchette]: https://github.com/MichelleBlanchette
|
||||||
|
[@simonebortolin]: https://github.com/simonebortolin
|
||||||
|
[@SConaway]: https://github.com/SConaway
|
||||||
|
[@Tom-Brouwer]: https://github.com/Tom-Brouwer
|
||||||
|
|
||||||
## Pre-release v0.4.0.rc3
|
## Pre-release v0.4.0.rc3
|
||||||
|
|
||||||
Hi there! This is (actually) hopefully the last prerelease before `v0.4.0`; in particular, if we find that this prerelease is stable, we'll re-release it as `v0.4.0`.
|
Hi there! This is (actually) hopefully the last prerelease before `v0.4.0`; in particular, if we find that this prerelease is stable, we'll re-release it as `v0.4.0`.
|
||||||
@@ -44,14 +750,14 @@ remote_theme: just-the-docs/just-the-docs@v0.4.0.rc3
|
|||||||
|
|
||||||
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
```Ruby
|
```ruby
|
||||||
gem "just-the-docs", "0.4.0.rc3"
|
gem "just-the-docs", "0.4.0.rc3"
|
||||||
```
|
```
|
||||||
|
|
||||||
By default, **users will not be upgraded to `0.4.0.rc3`**. To enforce that explicitly, either:
|
By default, **users will not be upgraded to `0.4.0.rc3`**. To enforce that explicitly, either:
|
||||||
|
|
||||||
1. pin your gem version in your `Gemfile`, like so
|
1. pin your gem version in your `Gemfile`, like so
|
||||||
```Ruby
|
```ruby
|
||||||
gem "just-the-docs", "0.3.3"
|
gem "just-the-docs", "0.3.3"
|
||||||
```
|
```
|
||||||
2. freeze the `remote_theme`, like so
|
2. freeze the `remote_theme`, like so
|
||||||
@@ -120,14 +826,14 @@ remote_theme: just-the-docs/just-the-docs@v0.4.0.rc2
|
|||||||
|
|
||||||
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
```Ruby
|
```ruby
|
||||||
gem "just-the-docs", "0.4.0.rc2"
|
gem "just-the-docs", "0.4.0.rc2"
|
||||||
```
|
```
|
||||||
|
|
||||||
By default, **users will not be upgraded to `0.4.0.rc2`**. To enforce that explicitly, either:
|
By default, **users will not be upgraded to `0.4.0.rc2`**. To enforce that explicitly, either:
|
||||||
|
|
||||||
1. pin your gem version in your `Gemfile`, like so
|
1. pin your gem version in your `Gemfile`, like so
|
||||||
```Ruby
|
```ruby
|
||||||
gem "just-the-docs", "0.3.3"
|
gem "just-the-docs", "0.3.3"
|
||||||
```
|
```
|
||||||
2. freeze the `remote_theme`, like so
|
2. freeze the `remote_theme`, like so
|
||||||
@@ -208,7 +914,7 @@ remote_theme: just-the-docs/just-the-docs@v0.4.0.rc1
|
|||||||
|
|
||||||
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
To use this RC explicitly as a gem-based theme, pin the version in your `Gemfile` and re-run `bundle install` or `bundle update just-the-docs`:
|
||||||
|
|
||||||
```Ruby
|
```ruby
|
||||||
gem "just-the-docs", "0.4.0.rc1"
|
gem "just-the-docs", "0.4.0.rc1"
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -219,7 +925,7 @@ If you're not ready to make the switch, that's alright! If your version of just-
|
|||||||
If you have not pinned your theme version, you should either:
|
If you have not pinned your theme version, you should either:
|
||||||
|
|
||||||
1. pin your gem version in your `Gemfile`, like so
|
1. pin your gem version in your `Gemfile`, like so
|
||||||
```Ruby
|
```ruby
|
||||||
gem "just-the-docs", "0.3.3"
|
gem "just-the-docs", "0.3.3"
|
||||||
```
|
```
|
||||||
2. freeze the `remote_theme`, like so
|
2. freeze the `remote_theme`, like so
|
||||||
@@ -433,31 +1139,31 @@ as well as DX improvements like better regression tests, CI, and tooling. If you
|
|||||||
* [@ivanskodje] made their first contribution in [#891]
|
* [@ivanskodje] made their first contribution in [#891]
|
||||||
* [@Eisverygoodletter] made their first contribution in [#893]
|
* [@Eisverygoodletter] made their first contribution in [#893]
|
||||||
|
|
||||||
[@AdityaTiwari2102]: https://githhub.com/AdityaTiwari2102
|
[@AdityaTiwari2102]: https://github.com/AdityaTiwari2102
|
||||||
[@svrooij]: https://githhub.com/svrooij
|
[@svrooij]: https://github.com/svrooij
|
||||||
[@alexsegura]: https://githhub.com/alexsegura
|
[@alexsegura]: https://github.com/alexsegura
|
||||||
[@burner1024]: https://githhub.com/burner1024
|
[@burner1024]: https://github.com/burner1024
|
||||||
[@JeffGuKang]: https://githhub.com/JeffGuKang
|
[@JeffGuKang]: https://github.com/JeffGuKang
|
||||||
[@dougaitken]: https://githhub.com/dougaitken
|
[@dougaitken]: https://github.com/dougaitken
|
||||||
[@max06]: https://githhub.com/max06
|
[@max06]: https://github.com/max06
|
||||||
[@sehilyi]: https://githhub.com/sehilyi
|
[@sehilyi]: https://github.com/sehilyi
|
||||||
[@nathanjessen]: https://githhub.com/nathanjessen
|
[@nathanjessen]: https://github.com/nathanjessen
|
||||||
[@waldyrious]: https://githhub.com/waldyrious
|
[@waldyrious]: https://github.com/waldyrious
|
||||||
[@MichelleBlanchette]: https://githhub.com/MichelleBlanchette
|
[@MichelleBlanchette]: https://github.com/MichelleBlanchette
|
||||||
[@henryiii]: https://githhub.com/henryiii
|
[@henryiii]: https://github.com/henryiii
|
||||||
[@jmertic]: https://githhub.com/jmertic
|
[@jmertic]: https://github.com/jmertic
|
||||||
[@jacobhq]: https://githhub.com/jacobhq
|
[@jacobhq]: https://github.com/jacobhq
|
||||||
[@UnclassedPenguin]: https://githhub.com/UnclassedPenguin
|
[@UnclassedPenguin]: https://github.com/UnclassedPenguin
|
||||||
[@alyssais]: https://githhub.com/alyssais
|
[@alyssais]: https://github.com/alyssais
|
||||||
[@nascosto]: https://githhub.com/nascosto
|
[@nascosto]: https://github.com/nascosto
|
||||||
[@SPGoding]: https://githhub.com/SPGoding
|
[@SPGoding]: https://github.com/SPGoding
|
||||||
[@iridazzle]: https://githhub.com/iridazzle
|
[@iridazzle]: https://github.com/iridazzle
|
||||||
[@ivanskodje]: https://githhub.com/ivanskodje
|
[@ivanskodje]: https://github.com/ivanskodje
|
||||||
[@Eisverygoodletter]: https://githhub.com/Eisverygoodletter
|
[@Eisverygoodletter]: https://github.com/Eisverygoodletter
|
||||||
|
|
||||||
**Full Changelog**: https://github.com/just-the-docs/just-the-docs/compare/v0.3.3...v0.4.0.rc1
|
**Full Changelog**: https://github.com/just-the-docs/just-the-docs/compare/v0.3.3...v0.4.0.rc1
|
||||||
|
|
||||||
[@pmarsceill]: https://githhub.com/pmarsceill
|
[@pmarsceill]: https://github.com/pmarsceill
|
||||||
|
|
||||||
## v0.3.3
|
## v0.3.3
|
||||||
|
|
||||||
|
2
Gemfile
2
Gemfile
@@ -1,4 +1,6 @@
|
|||||||
source "https://rubygems.org"
|
source "https://rubygems.org"
|
||||||
gemspec
|
gemspec
|
||||||
|
|
||||||
|
gem "jekyll-github-metadata", ">= 2.15"
|
||||||
|
|
||||||
gem "webrick", "~> 1.7"
|
gem "webrick", "~> 1.7"
|
||||||
|
421
MIGRATION.md
Normal file
421
MIGRATION.md
Normal file
@@ -0,0 +1,421 @@
|
|||||||
|
---
|
||||||
|
title: Migration and Upgrading
|
||||||
|
layout: default
|
||||||
|
---
|
||||||
|
|
||||||
|
# Migrating and Upgrading
|
||||||
|
|
||||||
|
Summary
|
||||||
|
: A site that uses `just-the-docs` (as a theme or as a remote theme) automatically
|
||||||
|
switches to a new release, unless it is pinned to a previous version.
|
||||||
|
|
||||||
|
This migration guide draws attention to:
|
||||||
|
|
||||||
|
- changes that might break your site,
|
||||||
|
- features added in the latest release, and
|
||||||
|
- features that have become deprecated (and are likely to be removed in a future release).
|
||||||
|
|
||||||
|
This document contains instructions on how to migrate and upgrade Just the Docs sites from every minor or major version bump, starting from `v0.3.3` to `v0.4.0`.
|
||||||
|
|
||||||
|
<details open markdown="block">
|
||||||
|
<summary>
|
||||||
|
Table of contents
|
||||||
|
</summary>
|
||||||
|
{: .text-delta }
|
||||||
|
- TOC
|
||||||
|
{:toc}
|
||||||
|
</details>
|
||||||
|
|
||||||
|
{::options toc_levels="2..4" /}
|
||||||
|
|
||||||
|
{: .warning }
|
||||||
|
> If your configuration states `remote_theme: just-the-docs/just-the-docs`, your
|
||||||
|
> website is built using the current `main` branch of the theme, which may include
|
||||||
|
> changes made after the latest release; see the [CHANGELOG].
|
||||||
|
>
|
||||||
|
> If your configuration states `theme: just_the_docs` and your `Gemfile` specifies
|
||||||
|
> `gem "just-the-docs"`, your website is always built using the latest release.
|
||||||
|
|
||||||
|
{: .note }
|
||||||
|
> If you have cloned/forked and customised the theme repo,
|
||||||
|
> and pull the changes of a new release to your clone,
|
||||||
|
> you may need to resolve merge conflicts.
|
||||||
|
|
||||||
|
[CHANGELOG]: {{ site.baseurl }}{% link CHANGELOG.md %}
|
||||||
|
|
||||||
|
## v0.4.x - v0.5.0
|
||||||
|
|
||||||
|
### POTENTIALLY-BREAKING CHANGES in v0.5.0
|
||||||
|
|
||||||
|
There is one potentially-breaking change for users migrating from `v0.4.2` to `v0.5.0` concering `setup.scss`. To provide context:
|
||||||
|
|
||||||
|
1. `setup.scss` was introduced in `v0.4.0`
|
||||||
|
2. in `v0.4.0` and `v0.4.1`, `setup.scss` was imported *before* color scheme SCSS code
|
||||||
|
3. in `v0.4.2`, we adjusted the order to import `setup.scss` *after* color scheme SCSS code
|
||||||
|
4. in `v0.5.0`, we have reverted the previous change: `setup.scss` is now again imported *before* color scheme SCSS code
|
||||||
|
|
||||||
|
This does not affect most users. Users who did not migrate to `v0.4.2` or who do not have a custom `setup.scss` are guaranteed no breaking changes.
|
||||||
|
|
||||||
|
Explicit migration steps are only needed if:
|
||||||
|
|
||||||
|
1. a custom `setup.scss` has been defined,
|
||||||
|
2. **and** the `setup.scss` depends on variables or functions defined in color scheme SCSS code; this change was only possible on `v0.4.2`
|
||||||
|
|
||||||
|
For those users, we suggest moving those variables and functions to each relevant color scheme.
|
||||||
|
## v0.3.3 … v0.4.x
|
||||||
|
|
||||||
|
### REPOSITORY CHANGES
|
||||||
|
|
||||||
|
#### Just the Docs
|
||||||
|
|
||||||
|
The theme repo is now at <https://github.com/just-the-docs/just-the-docs>.
|
||||||
|
The name of its default branch is now `main`.
|
||||||
|
|
||||||
|
The theme docs website is now published at <https://just-the-docs.github.io/just-the-docs>. We've also retroactively published the theme docs website for version `v0.3.3` at <https://v0-3-3-docs.just-the-docs.com/>.
|
||||||
|
|
||||||
|
GitHub provides access to previous versions of the theme repo.
|
||||||
|
You can browse [previous versions of the theme docs website] on the [Internet Archive].
|
||||||
|
|
||||||
|
[previous versions of the theme docs website]: https://web.archive.org/web/20220000000000*/https://just-the-docs.github.io/just-the-docs
|
||||||
|
[Internet Archive]: https://web.archive.org/
|
||||||
|
|
||||||
|
The [README] page on the theme repo repeats much of the information from the [home page],
|
||||||
|
formatted for browsing on GitHub.
|
||||||
|
It also explains how to install the theme as a Ruby Gem, without creating a new site.
|
||||||
|
|
||||||
|
[README]: https://github.com/just-the-docs/just-the-docs/blob/main/README.md
|
||||||
|
[home page]: https://just-the-docs.com
|
||||||
|
|
||||||
|
#### Deploy previews
|
||||||
|
|
||||||
|
When a PR builds successfully, Netlify provides a preview of how the theme docs website will look if the PR is merged.
|
||||||
|
You can find links to the preview near the bottom of the Conversation tab of the PR.
|
||||||
|
|
||||||
|
#### Just the Docs Template
|
||||||
|
|
||||||
|
The template at <https://github.com/just-the-docs/just-the-docs-template>
|
||||||
|
creates a repo with the minimal source files for a Just the Docs website.
|
||||||
|
After configuring the relevant parameters, you can build and serve the website
|
||||||
|
both locally and on GitHub Pages – using either Jekyll 3 or Jekyll 4!
|
||||||
|
|
||||||
|
#### Just the Docs Tests
|
||||||
|
|
||||||
|
The tests website at <https://just-the-docs.github.io/just-the-docs-tests>
|
||||||
|
consists mainly of regression tests for bug fixes and new features.
|
||||||
|
|
||||||
|
The test source files at <https://github.com/just-the-docs/just-the-docs-tests>
|
||||||
|
illustrate the use of many Markdown and Jekyll features,
|
||||||
|
including some that are not included in the theme docs.
|
||||||
|
|
||||||
|
For example, see how to add support for rendering TeX/LaTeX [math formulas] with KaTeX and MathJax.
|
||||||
|
|
||||||
|
[math formulas]: https://just-the-docs.github.io/just-the-docs-tests/components/math/index/
|
||||||
|
|
||||||
|
### POTENTIALLY-BREAKING CHANGES in v0.4.0
|
||||||
|
|
||||||
|
If switching to a new release of the theme breaks your website,
|
||||||
|
check that you don't have any files in the `_includes`, `_layouts`, and `_sass`
|
||||||
|
directories with the same names as files provided by the theme.
|
||||||
|
|
||||||
|
If your repo has a customised copy of `_layouts/default.html` from a previous release,
|
||||||
|
try removing it, or replace it by a fresh copy of the theme file.
|
||||||
|
|
||||||
|
{: .warning }
|
||||||
|
The following changes made in v0.4.0 *might* break or adversely affect your website
|
||||||
|
when you next rebuild it, unless you have pinned it!
|
||||||
|
|
||||||
|
#### New includes and SCSS
|
||||||
|
|
||||||
|
Version 0.4.0 introduces many new `_includes` files. If you already have an existing include with the same name as a new addition, you will need to migrate or update that include. The new files are (relative to the `_includes` folder):
|
||||||
|
|
||||||
|
- `mermaid_config.js`
|
||||||
|
- `nav_footer_custom`
|
||||||
|
- `search_placeholder_custom`
|
||||||
|
- `toc_heading_custom`
|
||||||
|
- the entire `components/` folder:
|
||||||
|
- `aux_nav`, `breadcrumbs`, `children_nav`, `footer`, `header`, `mermaid`, `search_footer`, `search_header`, `sidebar`
|
||||||
|
- the entire `icons/` folder
|
||||||
|
- `code_copy`, `document`, `expand`, `external_link`, `icons`, `link`, `menu`, `search`
|
||||||
|
- the entire `lunr/` folder
|
||||||
|
- `custom-data.json`, `custom-index.js`
|
||||||
|
|
||||||
|
We have removed some code in `_sass/vendor` and added a new file at `_sass/custom/setup.scss`.
|
||||||
|
|
||||||
|
#### favicons
|
||||||
|
|
||||||
|
The file `_includes/favicon.html` is now ignored by the theme.
|
||||||
|
If you're using it, your website's favicon is no longer displayed by browsers.
|
||||||
|
|
||||||
|
To fix: Move the content of `_includes/favicon.html` to `_includes/head_custom.html`.
|
||||||
|
|
||||||
|
#### Custom callout colors
|
||||||
|
|
||||||
|
The file `_sass/custom/custom.scss` is now imported last: _after_ the configuration of callouts.
|
||||||
|
If you've defined custom color variables for callouts in `_sass/custom/custom.scss`
|
||||||
|
(and used them when configuring your callouts in `_config.yml`)
|
||||||
|
you will not be able to rebuild your website.
|
||||||
|
|
||||||
|
To fix: Move custom color variables for callouts in `_sass/custom/custom.scss` to `_sass/custom/variables.scss`.
|
||||||
|
|
||||||
|
#### Pages and collections
|
||||||
|
|
||||||
|
Links to ordinary pages now appear in the navigation on sites that use collections.
|
||||||
|
You might want the navigation of your site to consist entirely of collections.
|
||||||
|
|
||||||
|
To fix: Add the front matter `nav_exclude: true` to pages that the navigation should not display.
|
||||||
|
|
||||||
|
#### Relative URLs
|
||||||
|
|
||||||
|
All generated URLs are now relative.
|
||||||
|
This is a bug fix, and unlikely to break any site.
|
||||||
|
|
||||||
|
Relative links to pages within a website support deployment to different servers.
|
||||||
|
|
||||||
|
#### Navigation order
|
||||||
|
|
||||||
|
The order in which the navigation panel lists pages has been simplified.
|
||||||
|
All pages with `nav_order` values now come before all pages that are ordered by `title`.
|
||||||
|
|
||||||
|
If your website has a group of *sibling* pages where some siblings have `nav_order`
|
||||||
|
string values, and others are ordered by numerical `title` values,
|
||||||
|
the former now come before the latter.
|
||||||
|
|
||||||
|
To fix: Add numerical `nav_order` values to the pages with numerical `title` values.
|
||||||
|
|
||||||
|
### DEPRECATIONS
|
||||||
|
|
||||||
|
{: .warning }
|
||||||
|
The following features are deprecated, and to be removed in a future release.
|
||||||
|
|
||||||
|
#### Jekyll 3
|
||||||
|
|
||||||
|
You can still use Jekyll 3 (3.8.5 or later) to build websites using v0.4.0 of the theme.
|
||||||
|
However, future releases of the theme may require the use of Jekyll 4.
|
||||||
|
|
||||||
|
You can already use Jekyll 4 to build your website *locally*.
|
||||||
|
It should look exactly the same as when built with Jekyll 3.[^Jekyll4]
|
||||||
|
|
||||||
|
[^Jekyll4]:
|
||||||
|
Jekyll 4 depends on more recent versions of other gems than Jekyll 3,
|
||||||
|
and the differences between those versions may affect the files of your built site.
|
||||||
|
|
||||||
|
To use Jekyll 4 when building your website *on GitHub Pages*, you need to run GitHub Actions.
|
||||||
|
The simplest way of setting that up in a new repo is to create the repo using the Just the Docs template.
|
||||||
|
To start running Jekyll 4 to build an existing repo on GitHub Pages,
|
||||||
|
you can create a new repo with the template, then copy its `.github/workflows` directory,
|
||||||
|
and update your repo settings to use Actions.
|
||||||
|
|
||||||
|
#### Footer content configuration
|
||||||
|
|
||||||
|
Currently, if your configuration sets `footer_content` to some text,
|
||||||
|
the theme displays that text at the bottom of the main section of each page.
|
||||||
|
|
||||||
|
The file `_includes/footer_custom.html` provides a more general way of customizing
|
||||||
|
not only the text but also the markup for the page footer area.
|
||||||
|
|
||||||
|
You can replicate the current display of `TEXT` in the footer using the following markup:
|
||||||
|
|
||||||
|
```html
|
||||||
|
<p class="text-small text-grey-dk-100 mb-0">TEXT</p>
|
||||||
|
```
|
||||||
|
|
||||||
|
### THEME WEBSITE CHANGES
|
||||||
|
|
||||||
|
The website now uses *callouts*[^callouts] to draw attention to important information.
|
||||||
|
|
||||||
|
[^callouts]:
|
||||||
|
The theme website configuration defines the callout titles and colors used there.
|
||||||
|
Websites that use the theme have to configure their own callout titles and colors.
|
||||||
|
|
||||||
|
The theme uses [semantic versioning].
|
||||||
|
A normal version number takes the form X.Y.Z,
|
||||||
|
where X is the major version, Y is the minor version, and Z is the patch version.
|
||||||
|
The theme uses version X.Y.Z.rcN for pre-release N of version X.Y.Z.
|
||||||
|
When referring to version numbers on GitHub, we usually prefix them by 'v'.
|
||||||
|
|
||||||
|
[semantic versioning]: https://semver.org
|
||||||
|
|
||||||
|
Major version zero (0.Y.Z) is for initial development, where anything *may* change at any time.
|
||||||
|
In practice, we increment the patch version Z for bug fixes and backwards compatible changes;
|
||||||
|
we increment the minor version Y for changes that could break websites using the theme
|
||||||
|
without pinning it to a specific version.
|
||||||
|
|
||||||
|
The label `NEW` in the theme website indicates a feature that has been changed or added
|
||||||
|
since the release of the previous *minor* version.
|
||||||
|
For example, after the release of v0.4.Z, the theme website should label `NEW` all features that
|
||||||
|
we have changed or added since v0.3.0 – not just since v0.3.3.
|
||||||
|
When we release v0.5.0, we will remove all those labels, and add labels on features since v0.4.0.
|
||||||
|
|
||||||
|
The theme docs website is not itself versioned.
|
||||||
|
It changes incrementally, independently of theme releases.
|
||||||
|
|
||||||
|
#### Home page
|
||||||
|
|
||||||
|
The theme home page now focuses on the simplest ways of using the theme.
|
||||||
|
It also notes the different behaviour of `theme` and `remote_theme` in connection
|
||||||
|
with interim versions of the theme, such as pre-releases.
|
||||||
|
|
||||||
|
#### CHANGELOG
|
||||||
|
|
||||||
|
The CHANGELOG page lists the changes made in all previous releases and pre-releases of new versions of the theme gem.
|
||||||
|
|
||||||
|
It also lists changes made to the `main` branch of the theme since the latest release or pre-release.
|
||||||
|
|
||||||
|
For changes since v0.3.3, the log usually references the merged PR that made the change and its author.
|
||||||
|
|
||||||
|
### NON-BREAKING CHANGES (OUTLINE ONLY)
|
||||||
|
|
||||||
|
#### Accessibility
|
||||||
|
|
||||||
|
- Skip to main content: the first keyboard-navigatable item is now a link to skip over the sidebar and header to the main content of the page. PR: [#949].
|
||||||
|
- Aria-labels: improved `aria-label`s have been added to various site elements. PRs: [#950], ...
|
||||||
|
- Other general improvements: gradual changes have improved tab focusability, contrast, and semantic elements. More work still to come. PRs: [#498], [#846]
|
||||||
|
|
||||||
|
#### Configuration
|
||||||
|
|
||||||
|
- Mermaid support: first-class support for [Mermaid](https://mermaid.js.org/) - a JavaScript-based diagram and charting tool supported by GitHub - has been added to the theme. **This feature is opt-in.** See the new doc subsections in [Configuration]({% link docs/configuration.md %}#mermaid-diagrams) and [Code]({% link docs/ui-components/code.md %}#mermaid-diagram-code-blocks) for more.
|
||||||
|
- Multiple Google Analytics tags are now supported. PR: [#1029]
|
||||||
|
|
||||||
|
#### Customization
|
||||||
|
|
||||||
|
- all user-facing text is now customizable; previously, several elements (ex search placeholder) were hardwired into the theme. Now, users can blend custom includes and layouts to internationalize their sites.
|
||||||
|
- we've clarified the role of `custom.scss` to be imported last; to allow users to define custom or override variables, we've added a new file `setup.scss`. PR: [#1135]
|
||||||
|
|
||||||
|
#### Custom Includes
|
||||||
|
|
||||||
|
We've added several custom `_includes` to provide users with more customization options for different site elements. We've also added a section to [Configuration]({% link docs/customization.md %}#override-includes) to outline these.
|
||||||
|
|
||||||
|
All of these are opt-in by default; however, **these may be breaking if you have existing `_includes` with the same name**.
|
||||||
|
|
||||||
|
Each item is listed with the relevant file and PR.
|
||||||
|
|
||||||
|
- TOC heading: `toc_heading_custom.html`, PR: [#980]
|
||||||
|
- Navigation panel footer: `nav_footer_custom.html`, PR: [#474]
|
||||||
|
- Search placeholder: `search_placeholder_custom.html`, PR: [#613]
|
||||||
|
- Modular site components: `components/` and `icons/`, PR: [#1058]
|
||||||
|
- Custom search indices: `lunr/`, PR: [#1068]
|
||||||
|
|
||||||
|
In a future (version 1) release, we may rename the custom include files.
|
||||||
|
|
||||||
|
#### Modular Components
|
||||||
|
|
||||||
|
We've broken up the default layout (`_layouts/default.html`) into multiple reusable components. This should have no impact on most users; however, it should make it easier to implement custom layouts.
|
||||||
|
|
||||||
|
For more, see [Custom layouts and includes]({% link docs/customization.md %}#custom-layouts-and-includes). PR: [#1058].
|
||||||
|
|
||||||
|
#### Navigation
|
||||||
|
|
||||||
|
- Collections: nav panel shows links to ordinary pages before collections
|
||||||
|
- Collection folding; part of "Combination". PR: [#578]
|
||||||
|
- Scrolling to show link to selected page. PR: [#639]
|
||||||
|
- External nav links are now supported. PR: [#876]
|
||||||
|
- Child nav order: sort navigation pages with `child_nav_order`. PR: [#726]
|
||||||
|
- Order when mixing different ways of specifying nav order
|
||||||
|
|
||||||
|
#### Search
|
||||||
|
|
||||||
|
In addition to customizing the search placeholder, we've also added the ability to provide custom content to the search index. for more, see [Custom content for search index]({% link docs/search.md %}#custom-content-for-search-index). PR: [#1068].
|
||||||
|
|
||||||
|
#### Styling
|
||||||
|
|
||||||
|
- Code copying: code blocks now allow users to easily copy their contents. PR: [#945]
|
||||||
|
- Blockquote: shows vertical bar on left. PR: [#965]
|
||||||
|
- Links wrap. PR: [#905]
|
||||||
|
- Callouts: a new component similar to alerts or banners. See [UI Components - Callouts]({% link docs/ui-components/callouts.md %}). PR: [#466]
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
[#856]: https://github.com/just-the-docs/just-the-docs/pull/856
|
||||||
|
[#806]: https://github.com/just-the-docs/just-the-docs/pull/806
|
||||||
|
[#555]: https://github.com/just-the-docs/just-the-docs/pull/555
|
||||||
|
[#814]: https://github.com/just-the-docs/just-the-docs/pull/814
|
||||||
|
[#778]: https://github.com/just-the-docs/just-the-docs/pull/778
|
||||||
|
[#221]: https://github.com/just-the-docs/just-the-docs/pull/221
|
||||||
|
[#782]: https://github.com/just-the-docs/just-the-docs/pull/782
|
||||||
|
[#549]: https://github.com/just-the-docs/just-the-docs/pull/549
|
||||||
|
[#554]: https://github.com/just-the-docs/just-the-docs/pull/554
|
||||||
|
[#499]: https://github.com/just-the-docs/just-the-docs/pull/499
|
||||||
|
[#473]: https://github.com/just-the-docs/just-the-docs/pull/473
|
||||||
|
[#835]: https://github.com/just-the-docs/just-the-docs/pull/835
|
||||||
|
[#891]: https://github.com/just-the-docs/just-the-docs/pull/891
|
||||||
|
[#906]: https://github.com/just-the-docs/just-the-docs/pull/906
|
||||||
|
|
||||||
|
[#578]: https://github.com/just-the-docs/just-the-docs/pull/578
|
||||||
|
[#463]: https://github.com/just-the-docs/just-the-docs/pull/463
|
||||||
|
[#448]: https://github.com/just-the-docs/just-the-docs/pull/448
|
||||||
|
[#466]: https://github.com/just-the-docs/just-the-docs/pull/466
|
||||||
|
[#477]: https://github.com/just-the-docs/just-the-docs/pull/477
|
||||||
|
[#495]: https://github.com/just-the-docs/just-the-docs/pull/495
|
||||||
|
[#496]: https://github.com/just-the-docs/just-the-docs/pull/496
|
||||||
|
[#498]: https://github.com/just-the-docs/just-the-docs/pull/498
|
||||||
|
[#494]: https://github.com/just-the-docs/just-the-docs/pull/494
|
||||||
|
[#639]: https://github.com/just-the-docs/just-the-docs/pull/639
|
||||||
|
[#544]: https://github.com/just-the-docs/just-the-docs/pull/544
|
||||||
|
[#364]: https://github.com/just-the-docs/just-the-docs/pull/364
|
||||||
|
[#498]: https://github.com/just-the-docs/just-the-docs/pull/498
|
||||||
|
[#613]: https://github.com/just-the-docs/just-the-docs/pull/613
|
||||||
|
[#726]: https://github.com/just-the-docs/just-the-docs/pull/726
|
||||||
|
[#474]: https://github.com/just-the-docs/just-the-docs/pull/474
|
||||||
|
[#829]: https://github.com/just-the-docs/just-the-docs/pull/829
|
||||||
|
[#857]: https://github.com/just-the-docs/just-the-docs/pull/857
|
||||||
|
[#876]: https://github.com/just-the-docs/just-the-docs/pull/876
|
||||||
|
[#909]: https://github.com/just-the-docs/just-the-docs/pull/909
|
||||||
|
[#519]: https://github.com/just-the-docs/just-the-docs/pull/519
|
||||||
|
[#855]: https://github.com/just-the-docs/just-the-docs/pull/855
|
||||||
|
[#686]: https://github.com/just-the-docs/just-the-docs/pull/686
|
||||||
|
[#495]: https://github.com/just-the-docs/just-the-docs/pull/495
|
||||||
|
[#846]: https://github.com/just-the-docs/just-the-docs/pull/846
|
||||||
|
[#727]: https://github.com/just-the-docs/just-the-docs/pull/727
|
||||||
|
[#889]: https://github.com/just-the-docs/just-the-docs/pull/889
|
||||||
|
[#893]: https://github.com/just-the-docs/just-the-docs/pull/893
|
||||||
|
[#905]: https://github.com/just-the-docs/just-the-docs/pull/905
|
||||||
|
[#898]: https://github.com/just-the-docs/just-the-docs/pull/898
|
||||||
|
|
||||||
|
[#950]: https://github.com/just-the-docs/just-the-docs/pull/950
|
||||||
|
[#944]: https://github.com/just-the-docs/just-the-docs/pull/944
|
||||||
|
[#939]: https://github.com/just-the-docs/just-the-docs/pull/939
|
||||||
|
[#949]: https://github.com/just-the-docs/just-the-docs/pull/949
|
||||||
|
[#941]: https://github.com/just-the-docs/just-the-docs/pull/941
|
||||||
|
[#956]: https://github.com/just-the-docs/just-the-docs/pull/956
|
||||||
|
[#935]: https://github.com/just-the-docs/just-the-docs/pull/935
|
||||||
|
[#940]: https://github.com/just-the-docs/just-the-docs/pull/940
|
||||||
|
[#951]: https://github.com/just-the-docs/just-the-docs/pull/951
|
||||||
|
[#955]: https://github.com/just-the-docs/just-the-docs/pull/955
|
||||||
|
[#937]: https://github.com/just-the-docs/just-the-docs/pull/937
|
||||||
|
|
||||||
|
[#965]: https://github.com/just-the-docs/just-the-docs/pull/965
|
||||||
|
[#960]: https://github.com/just-the-docs/just-the-docs/pull/960
|
||||||
|
[#962]: https://github.com/just-the-docs/just-the-docs/pull/962
|
||||||
|
[#964]: https://github.com/just-the-docs/just-the-docs/pull/964
|
||||||
|
[#967]: https://github.com/just-the-docs/just-the-docs/pull/967
|
||||||
|
[#974]: https://github.com/just-the-docs/just-the-docs/pull/974
|
||||||
|
[#980]: https://github.com/just-the-docs/just-the-docs/pull/980
|
||||||
|
[#985]: https://github.com/just-the-docs/just-the-docs/pull/985
|
||||||
|
[#986]: https://github.com/just-the-docs/just-the-docs/pull/986
|
||||||
|
[#992]: https://github.com/just-the-docs/just-the-docs/pull/992
|
||||||
|
|
||||||
|
[#945]: https://github.com/just-the-docs/just-the-docs/pull/945
|
||||||
|
[#999]: https://github.com/just-the-docs/just-the-docs/pull/999
|
||||||
|
[#1000]: https://github.com/just-the-docs/just-the-docs/pull/1000
|
||||||
|
[#1001]: https://github.com/just-the-docs/just-the-docs/pull/1001
|
||||||
|
[#1010]: https://github.com/just-the-docs/just-the-docs/pull/1010
|
||||||
|
[#1015]: https://github.com/just-the-docs/just-the-docs/pull/1015
|
||||||
|
[#1018]: https://github.com/just-the-docs/just-the-docs/pull/1018
|
||||||
|
[#1019]: https://github.com/just-the-docs/just-the-docs/pull/1019
|
||||||
|
[#1021]: https://github.com/just-the-docs/just-the-docs/pull/1021
|
||||||
|
[#1027]: https://github.com/just-the-docs/just-the-docs/pull/1027
|
||||||
|
[#1029]: https://github.com/just-the-docs/just-the-docs/pull/1029
|
||||||
|
[#1040]: https://github.com/just-the-docs/just-the-docs/pull/1040
|
||||||
|
[#1061]: https://github.com/just-the-docs/just-the-docs/pull/1061
|
||||||
|
[#1065]: https://github.com/just-the-docs/just-the-docs/pull/1065
|
||||||
|
[#1071]: https://github.com/just-the-docs/just-the-docs/pull/1071
|
||||||
|
[#1074]: https://github.com/just-the-docs/just-the-docs/pull/1074
|
||||||
|
[#1076]: https://github.com/just-the-docs/just-the-docs/pull/1076
|
||||||
|
[#1077]: https://github.com/just-the-docs/just-the-docs/pull/1077
|
||||||
|
[#1090]: https://github.com/just-the-docs/just-the-docs/pull/1090
|
||||||
|
[#1091]: https://github.com/just-the-docs/just-the-docs/pull/1091
|
||||||
|
[#1092]: https://github.com/just-the-docs/just-the-docs/pull/1092
|
||||||
|
[#1095]: https://github.com/just-the-docs/just-the-docs/pull/1095
|
||||||
|
|
||||||
|
[#1068]: https://github.com/just-the-docs/just-the-docs/pull/1068
|
||||||
|
[#1135]: https://github.com/just-the-docs/just-the-docs/pull/1135
|
54
README.md
54
README.md
@@ -5,26 +5,38 @@
|
|||||||
<p align="center">
|
<p align="center">
|
||||||
<h1 align="center">Just the Docs</h1>
|
<h1 align="center">Just the Docs</h1>
|
||||||
<p align="center">A modern, highly customizable, and responsive Jekyll theme for documentation with built-in search.<br>Easily hosted on GitHub Pages with few dependencies.</p>
|
<p align="center">A modern, highly customizable, and responsive Jekyll theme for documentation with built-in search.<br>Easily hosted on GitHub Pages with few dependencies.</p>
|
||||||
<p align="center"><strong><a href="https://just-the-docs.github.io/just-the-docs/">See it in action!</a></strong></p>
|
<p align="center"><strong><a href="https://just-the-docs.com/">See it in action!</a></strong></p>
|
||||||
<br><br><br>
|
<br><br><br>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||

|
<p align="center">A video walkthrough of various Just the Docs features</p>
|
||||||
|
|
||||||
|
https://user-images.githubusercontent.com/85418632/211225192-7e5d1116-2f4f-4305-bb9b-437fe47df071.mp4
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
### via GitHub Pages remote theme
|
### Use the template
|
||||||
|
|
||||||
The quickiest way to use Just The Docs is to use GitHub pages [remote theme](https://blog.github.com/2017-11-29-use-any-theme-with-github-pages/) feature in your `_config.yml` file:
|
The [Just the Docs Template] provides the simplest, quickest, and easiest way to create a new website that uses the Just the Docs theme. To get started with creating a site, just click "[use the template]"!
|
||||||
|
|
||||||
```yaml
|
Note: To use the theme, you do ***not*** need to clone or fork the [Just the Docs repo]! You should do that only if you intend to browse the theme docs locally, contribute to the development of the theme, or develop a new theme based on Just the Docs.
|
||||||
remote_theme: just-the-docs/just-the-docs
|
|
||||||
```
|
|
||||||
### via RubyGems:
|
|
||||||
|
|
||||||
Alternatively you can install it as a Ruby Gem.
|
You can easily set the site created by the template to be published on [GitHub Pages] – the [template README] file explains how to do that, along with other details.
|
||||||
|
|
||||||
Add this line to your Jekyll site's Gemfile:
|
If [Jekyll] is installed on your computer, you can also build and preview the created site *locally*. This lets you test changes before committing them, and avoids waiting for GitHub Pages.[^2] And you will be able to deploy your local build to a different platform than GitHub Pages.
|
||||||
|
|
||||||
|
More specifically, the created site:
|
||||||
|
|
||||||
|
- uses a gem-based approach, i.e. uses a `Gemfile` and loads the `just-the-docs` gem
|
||||||
|
- uses the [GitHub Pages / Actions workflow] to build and publish the site on GitHub Pages
|
||||||
|
|
||||||
|
Other than that, you're free to customize sites that you create with the template, however you like. You can easily change the versions of `just-the-docs` and Jekyll it uses, as well as adding further plugins.
|
||||||
|
|
||||||
|
### Use RubyGems
|
||||||
|
|
||||||
|
Alternatively, you can install the theme as a Ruby Gem, without creating a new site.
|
||||||
|
|
||||||
|
Add this line to your Jekyll site's `Gemfile`:
|
||||||
|
|
||||||
```ruby
|
```ruby
|
||||||
gem "just-the-docs"
|
gem "just-the-docs"
|
||||||
@@ -50,16 +62,19 @@ Alternatively, you can run it inside Docker while developing your site
|
|||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
[View the documentation](https://just-the-docs.github.io/just-the-docs/) for usage information.
|
[View the documentation][Just the Docs] for usage information.
|
||||||
|
|
||||||
## Contributing
|
## Contributing
|
||||||
|
|
||||||
Bug reports and pull requests are welcome on GitHub at https://github.com/just-the-docs/just-the-docs. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
Bug reports, proposals of new features, and pull requests are welcome on GitHub at https://github.com/just-the-docs/just-the-docs. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
||||||
|
|
||||||
### Submitting code changes:
|
### Submitting code changes:
|
||||||
|
|
||||||
|
- Submit an [Issue](https://github.com/just-the-docs/just-the-docs/issues) that motivates the changes, using the appropriate template
|
||||||
|
- Discuss the proposed changes with other users and the maintainers
|
||||||
- Open a [Pull Request](https://github.com/just-the-docs/just-the-docs/pulls)
|
- Open a [Pull Request](https://github.com/just-the-docs/just-the-docs/pulls)
|
||||||
- Ensure all CI tests pass
|
- Ensure all CI tests pass
|
||||||
|
- Provide instructions to check the effect of the changes
|
||||||
- Await code review
|
- Await code review
|
||||||
|
|
||||||
### Design and development principles of this theme:
|
### Design and development principles of this theme:
|
||||||
@@ -71,14 +86,25 @@ Bug reports and pull requests are welcome on GitHub at https://github.com/just-t
|
|||||||
|
|
||||||
## Development
|
## Development
|
||||||
|
|
||||||
To set up your environment to develop this theme, run `bundle install`.
|
To set up your environment to develop this theme: fork this repo, the run `bundle install` from the root directory.
|
||||||
|
|
||||||
A modern [devcontainer configuration](https://code.visualstudio.com/docs/remote/containers) for VSCode is included.
|
A modern [devcontainer configuration](https://code.visualstudio.com/docs/remote/containers) for VSCode is included.
|
||||||
|
|
||||||
Your theme is set up just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.
|
Your theme is set up just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.
|
||||||
|
|
||||||
When the theme is released, only the files in `_layouts`, `_includes`, and `_sass` tracked with Git will be released.
|
When this theme is released, only the files in `_layouts`, `_includes`, and `_sass` tracked with Git will be included in the gem.
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
The theme is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
The theme is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
||||||
|
|
||||||
|
[^2]: [It can take up to 10 minutes for changes to your site to publish after you push the changes to GitHub](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll#creating-your-site).
|
||||||
|
|
||||||
|
[Jekyll]: https://jekyllrb.com
|
||||||
|
[Just the Docs Template]: https://just-the-docs.github.io/just-the-docs-template/
|
||||||
|
[Just the Docs]: https://just-the-docs.com
|
||||||
|
[Just the Docs repo]: https://github.com/just-the-docs/just-the-docs
|
||||||
|
[GitHub Pages]: https://pages.github.com/
|
||||||
|
[Template README]: https://github.com/just-the-docs/just-the-docs-template/blob/main/README.md
|
||||||
|
[GitHub Pages / Actions workflow]: https://github.blog/changelog/2022-07-27-github-pages-custom-github-actions-workflows-beta/
|
||||||
|
[use the template]: https://github.com/just-the-docs/just-the-docs-template/generate
|
||||||
|
29
_config.yml
29
_config.yml
@@ -15,8 +15,9 @@
|
|||||||
# in the templates via {{ site.myvariable }}.
|
# in the templates via {{ site.myvariable }}.
|
||||||
title: Just the Docs
|
title: Just the Docs
|
||||||
description: A Jekyll theme for documentation
|
description: A Jekyll theme for documentation
|
||||||
baseurl: "/just-the-docs" # the subpath of your site, e.g. /blog
|
baseurl: "" # the subpath of your site, e.g. /blog
|
||||||
url: "https://just-the-docs.github.io" # the base hostname & protocol for your site, e.g. http://example.com
|
url: "https://just-the-docs.com" # the base hostname & protocol for your site, e.g. http://example.com
|
||||||
|
repository: just-the-docs/just-the-docs # for github-metadata
|
||||||
|
|
||||||
permalink: pretty
|
permalink: pretty
|
||||||
|
|
||||||
@@ -42,6 +43,11 @@ exclude:
|
|||||||
- package-lock.json
|
- package-lock.json
|
||||||
- Rakefile
|
- Rakefile
|
||||||
- README.md
|
- README.md
|
||||||
|
- CODE_OF_CONDUCT.md
|
||||||
|
- docker-compose.yml
|
||||||
|
- Dockerfile
|
||||||
|
# theme test code
|
||||||
|
- fixtures/
|
||||||
|
|
||||||
# Set a path/url to a logo that will be displayed instead of the title
|
# Set a path/url to a logo that will be displayed instead of the title
|
||||||
#logo: "/assets/images/just-the-docs.png"
|
#logo: "/assets/images/just-the-docs.png"
|
||||||
@@ -73,8 +79,9 @@ search:
|
|||||||
# Supports true or false (default)
|
# Supports true or false (default)
|
||||||
button: false
|
button: false
|
||||||
|
|
||||||
# To disable support for mermaid diagrams (https://mermaid-js.github.io/mermaid/),
|
# For copy button on code
|
||||||
# comment out the `mermaid` and `version` keys below
|
enable_copy_code_button: true
|
||||||
|
|
||||||
# By default, consuming the theme as a gem leaves mermaid disabled; it is opt-in
|
# By default, consuming the theme as a gem leaves mermaid disabled; it is opt-in
|
||||||
mermaid:
|
mermaid:
|
||||||
# Version of mermaid library
|
# Version of mermaid library
|
||||||
@@ -82,6 +89,12 @@ mermaid:
|
|||||||
version: "9.1.6"
|
version: "9.1.6"
|
||||||
# Put any additional configuration, such as setting the theme, in _includes/mermaid_config.js
|
# Put any additional configuration, such as setting the theme, in _includes/mermaid_config.js
|
||||||
# See also docs/ui-components/code
|
# See also docs/ui-components/code
|
||||||
|
# To load mermaid from a local library, also use the `path` key to specify the location of the library; e.g.
|
||||||
|
# for (v10+):
|
||||||
|
# path: "/assets/js/mermaid.esm.min.mjs"
|
||||||
|
# for (<v10):
|
||||||
|
# path: "/assets/js/mermaid.min.js"
|
||||||
|
# Note: copy both `mermaid.esm.min.mjs` (v10+) or `mermaid.min.js` (<v10) and the associated `.map` file from the specified version of `mermaid/dist` to `/assets/js/`.
|
||||||
|
|
||||||
# Enable or disable heading anchors
|
# Enable or disable heading anchors
|
||||||
heading_anchors: true
|
heading_anchors: true
|
||||||
@@ -147,12 +160,14 @@ callouts:
|
|||||||
color: red
|
color: red
|
||||||
|
|
||||||
# Google Analytics Tracking (optional)
|
# Google Analytics Tracking (optional)
|
||||||
# e.g, UA-1234567-89
|
# Supports a CSV of tracking ID strings (eg. "UA-1234567-89,G-1AB234CDE5")
|
||||||
ga_tracking: UA-2709176-10
|
# Note: the main Just the Docs site does *not* use Google Analytics.
|
||||||
ga_tracking_anonymize_ip: true # Use GDPR compliant Google Analytics settings (true/nil by default)
|
# ga_tracking: UA-2709176-10,G-5FG1HLH3XQ
|
||||||
|
# ga_tracking_anonymize_ip: true # Use GDPR compliant Google Analytics settings (true/nil by default)
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
- jekyll-seo-tag
|
- jekyll-seo-tag
|
||||||
|
- jekyll-github-metadata
|
||||||
|
|
||||||
kramdown:
|
kramdown:
|
||||||
syntax_highlighter_opts:
|
syntax_highlighter_opts:
|
||||||
|
15
_includes/components/aux_nav.html
Normal file
15
_includes/components/aux_nav.html
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<nav aria-label="Auxiliary" class="aux-nav">
|
||||||
|
<ul class="aux-nav-list">
|
||||||
|
{% for link in site.aux_links %}
|
||||||
|
<li class="aux-nav-list-item">
|
||||||
|
<a href="{{ link.last }}" class="site-button"
|
||||||
|
{% if site.aux_links_new_tab %}
|
||||||
|
target="_blank" rel="noopener noreferrer"
|
||||||
|
{% endif %}
|
||||||
|
>
|
||||||
|
{{ link.first }}
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</nav>
|
43
_includes/components/breadcrumbs.html
Normal file
43
_includes/components/breadcrumbs.html
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
{%- comment -%}
|
||||||
|
Include as: {%- include components/breadcrumbs.html -%}
|
||||||
|
Depends on: page, site.
|
||||||
|
Results in: HTML for the breadcrumbs component.
|
||||||
|
Overwrites:
|
||||||
|
pages_list, parent_page, grandparent_page.
|
||||||
|
{%- endcomment -%}
|
||||||
|
|
||||||
|
{%- if page.url != "/" and page.parent -%}
|
||||||
|
|
||||||
|
{%- assign pages_list = site[page.collection]
|
||||||
|
| default: site.html_pages
|
||||||
|
| where_exp: "item", "item.title != nil"
|
||||||
|
| where_exp: "item", "item.has_children != nil" -%}
|
||||||
|
|
||||||
|
{%- if page.grand_parent -%}
|
||||||
|
{%- assign parent_page = pages_list
|
||||||
|
| where: "title", page.parent
|
||||||
|
| where: "parent", page.grand_parent
|
||||||
|
| first -%}
|
||||||
|
{%- assign grandparent_page = pages_list
|
||||||
|
| where: "title", page.grand_parent
|
||||||
|
| first -%}
|
||||||
|
{%- else -%}
|
||||||
|
{%- assign parent_page = pages_list
|
||||||
|
| where: "title", page.parent
|
||||||
|
| where_exp: "item", "item.parent == nil"
|
||||||
|
| first -%}
|
||||||
|
{%- endif -%}
|
||||||
|
|
||||||
|
<nav aria-label="Breadcrumb" class="breadcrumb-nav">
|
||||||
|
<ol class="breadcrumb-nav-list">
|
||||||
|
{% if page.parent -%}
|
||||||
|
{%- if page.grand_parent %}
|
||||||
|
<li class="breadcrumb-nav-list-item"><a href="{{ grandparent_page.url | relative_url }}">{{ page.grand_parent }}</a></li>
|
||||||
|
{%- endif %}
|
||||||
|
<li class="breadcrumb-nav-list-item"><a href="{{ parent_page.url | relative_url }}">{{ page.parent }}</a></li>
|
||||||
|
{% endif -%}
|
||||||
|
<li class="breadcrumb-nav-list-item"><span>{{ page.title }}</span></li>
|
||||||
|
</ol>
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
{%- endif -%}
|
33
_includes/components/children_nav.html
Normal file
33
_includes/components/children_nav.html
Normal file
@@ -0,0 +1,33 @@
|
|||||||
|
{%- comment -%}
|
||||||
|
Include as: {%- include components/children_nav.html -%}
|
||||||
|
Depends on: page, site.
|
||||||
|
Results in: HTML for the children-navigation component.
|
||||||
|
Includes:
|
||||||
|
sorted_pages.html
|
||||||
|
toc_heading_custom.html
|
||||||
|
Overwrites:
|
||||||
|
child_pages.
|
||||||
|
{%- endcomment -%}
|
||||||
|
|
||||||
|
{%- if page.has_children == true and page.has_toc != false -%}
|
||||||
|
{%- assign child_pages = site[page.collection]
|
||||||
|
| default: site.html_pages
|
||||||
|
| where: "parent", page.title
|
||||||
|
| where: "grand_parent", page.parent -%}
|
||||||
|
|
||||||
|
{%- include sorted_pages.html pages = child_pages -%}
|
||||||
|
|
||||||
|
{%- if page.child_nav_order == 'desc' or page.child_nav_order == 'reversed' -%}
|
||||||
|
{%- assign sorted_pages = sorted_pages | reverse -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- endif -%}
|
||||||
|
|
||||||
|
<hr>
|
||||||
|
{% include toc_heading_custom.html %}
|
||||||
|
<ul>
|
||||||
|
{% for child in sorted_pages %}
|
||||||
|
<li>
|
||||||
|
<a href="{{ child.url | relative_url }}">{{ child.title }}</a>{% if child.summary %} - {{ child.summary }}{% endif %}
|
||||||
|
</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
34
_includes/components/footer.html
Normal file
34
_includes/components/footer.html
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
{% capture footer_custom %}
|
||||||
|
{%- include footer_custom.html -%}
|
||||||
|
{% endcapture %}
|
||||||
|
{% if footer_custom != "" or site.last_edit_timestamp or site.gh_edit_link %}
|
||||||
|
<hr>
|
||||||
|
<footer>
|
||||||
|
{% if site.back_to_top %}
|
||||||
|
<p><a href="#top" id="back-to-top">{{ site.back_to_top_text }}</a></p>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{{ footer_custom }}
|
||||||
|
|
||||||
|
{% if site.last_edit_timestamp or site.gh_edit_link %}
|
||||||
|
<div class="d-flex mt-2">
|
||||||
|
{% if site.last_edit_timestamp and site.last_edit_time_format and page.last_modified_date %}
|
||||||
|
<p class="text-small text-grey-dk-000 mb-0 mr-2">
|
||||||
|
Page last modified: <span class="d-inline-block">{{ page.last_modified_date | date: site.last_edit_time_format }}</span>.
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
{% if
|
||||||
|
site.gh_edit_link and
|
||||||
|
site.gh_edit_link_text and
|
||||||
|
site.gh_edit_repository and
|
||||||
|
site.gh_edit_branch and
|
||||||
|
site.gh_edit_view_mode
|
||||||
|
%}
|
||||||
|
<p class="text-small text-grey-dk-000 mb-0">
|
||||||
|
<a href="{{ site.gh_edit_repository }}/{{ site.gh_edit_view_mode }}/{{ site.gh_edit_branch }}{% if site.gh_edit_source %}/{{ site.gh_edit_source }}{% endif %}{% if page.collection and site.collections_dir %}/{{ site.collections_dir }}{% endif %}/{{ page.path }}" id="edit-this-page">{{ site.gh_edit_link_text }}</a>
|
||||||
|
</p>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</footer>
|
||||||
|
{% endif %}
|
11
_includes/components/header.html
Normal file
11
_includes/components/header.html
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<div id="main-header" class="main-header">
|
||||||
|
{% if site.search_enabled != false %}
|
||||||
|
{% include components/search_header.html %}
|
||||||
|
{% else %}
|
||||||
|
<div></div>
|
||||||
|
{% endif %}
|
||||||
|
{% include header_custom.html %}
|
||||||
|
{% if site.aux_links %}
|
||||||
|
{% include components/aux_nav.html %}
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
45
_includes/components/mermaid.html
Normal file
45
_includes/components/mermaid.html
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
{% comment %}
|
||||||
|
The complexity of this file comes from a breaking change in Mermaid v10; mermaid.init has been deprecated (and supposedly, didn't work earlier?).
|
||||||
|
|
||||||
|
So, we check whether the user's Mermaid version is >= 10; if not, we fall back to the previous init syntax.
|
||||||
|
|
||||||
|
If a user is using a custom mermaid file and doesn't specify a version, we default to the < v10 behaviour. Users who use version v10 or above should specify this in the version key.
|
||||||
|
{% endcomment %}
|
||||||
|
|
||||||
|
{% if site.mermaid.version %}
|
||||||
|
{% assign mermaid_major_version = site.mermaid.version | split: "." | first | plus: 0 %}
|
||||||
|
{% else %}
|
||||||
|
{% assign mermaid_major_version = 9 %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if mermaid_major_version > 9 %}
|
||||||
|
|
||||||
|
<script type="module">
|
||||||
|
{% if site.mermaid.path %}
|
||||||
|
import mermaid from '{{ site.mermaid.path | relative_url }}';
|
||||||
|
{% else %}
|
||||||
|
import mermaid from 'https://cdn.jsdelivr.net/npm/mermaid@{{ site.mermaid.version }}/dist/mermaid.esm.min.mjs';
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
var config = {% include mermaid_config.js %};
|
||||||
|
mermaid.initialize(config);
|
||||||
|
mermaid.run({
|
||||||
|
querySelector: '.language-mermaid',
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
{% else %}
|
||||||
|
|
||||||
|
{% if site.mermaid.path %}
|
||||||
|
<script src="{{ site.mermaid.path | relative_url }}"></script>
|
||||||
|
{% else %}
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/mermaid@{{ site.mermaid.version }}/dist/mermaid.min.js"></script>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<script>
|
||||||
|
var config = {% include mermaid_config.js %};
|
||||||
|
mermaid.initialize(config);
|
||||||
|
window.mermaid.init(undefined, document.querySelectorAll('.language-mermaid'));
|
||||||
|
</script>
|
||||||
|
|
||||||
|
{% endif %}
|
7
_includes/components/search_footer.html
Normal file
7
_includes/components/search_footer.html
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{% if site.search.button %}
|
||||||
|
<button id="search-button" class="search-button btn-reset" aria-label="Focus on search">
|
||||||
|
<svg viewBox="0 0 24 24" class="icon" aria-hidden="true"><use xlink:href="#svg-search"></use></svg>
|
||||||
|
</button>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
<div class="search-overlay"></div>
|
9
_includes/components/search_header.html
Normal file
9
_includes/components/search_header.html
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{% capture search_placeholder %}{% include search_placeholder_custom.html %}{% endcapture %}
|
||||||
|
|
||||||
|
<div class="search" role="search">
|
||||||
|
<div class="search-input-wrap">
|
||||||
|
<input type="text" id="search-input" class="search-input" tabindex="0" placeholder="{{ search_placeholder | strip_html | strip }}" aria-label="{{ search_placeholder | strip_html| strip }}" autocomplete="off">
|
||||||
|
<label for="search-input" class="search-label"><svg viewBox="0 0 24 24" class="search-icon"><use xlink:href="#svg-search"></use></svg></label>
|
||||||
|
</div>
|
||||||
|
<div id="search-results" class="search-results"></div>
|
||||||
|
</div>
|
71
_includes/components/sidebar.html
Normal file
71
_includes/components/sidebar.html
Normal file
@@ -0,0 +1,71 @@
|
|||||||
|
<div class="side-bar">
|
||||||
|
<div class="site-header" role="banner">
|
||||||
|
<a href="{{ '/' | relative_url }}" class="site-title lh-tight">{% include title.html %}</a>
|
||||||
|
<button id="menu-button" class="site-button btn-reset" aria-label="Toggle menu" aria-pressed="false">
|
||||||
|
<svg viewBox="0 0 24 24" class="icon" aria-hidden="true"><use xlink:href="#svg-menu"></use></svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<nav aria-label="Main" id="site-nav" class="site-nav">
|
||||||
|
{% assign pages_top_size = site.html_pages
|
||||||
|
| where_exp:"item", "item.title != nil"
|
||||||
|
| where_exp:"item", "item.parent == nil"
|
||||||
|
| where_exp:"item", "item.nav_exclude != true"
|
||||||
|
| size %}
|
||||||
|
{% if pages_top_size > 0 %}
|
||||||
|
{% include nav.html pages=site.html_pages key=nil %}
|
||||||
|
{% endif %}
|
||||||
|
{%- if site.nav_external_links -%}
|
||||||
|
<ul class="nav-list">
|
||||||
|
{%- for node in site.nav_external_links -%}
|
||||||
|
<li class="nav-list-item external">
|
||||||
|
<a href="{{ node.url | absolute_url }}" class="nav-list-link external">
|
||||||
|
{{ node.title }}
|
||||||
|
{% unless node.hide_icon %}<svg viewBox="0 0 24 24" aria-labelledby="svg-external-link-title"><use xlink:href="#svg-external-link"></use></svg>{% endunless %}
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
{%- endfor -%}
|
||||||
|
</ul>
|
||||||
|
{%- endif -%}
|
||||||
|
{% if site.just_the_docs.collections %}
|
||||||
|
{% assign collections_size = site.just_the_docs.collections | size %}
|
||||||
|
{% for collection_entry in site.just_the_docs.collections %}
|
||||||
|
{% assign collection_key = collection_entry[0] %}
|
||||||
|
{% assign collection_value = collection_entry[1] %}
|
||||||
|
{% assign collection = site[collection_key] %}
|
||||||
|
{% if collection_value.nav_exclude != true %}
|
||||||
|
{% if collections_size > 1 or pages_top_size > 0 %}
|
||||||
|
{% if collection_value.nav_fold == true %}
|
||||||
|
<ul class="nav-list nav-category-list">
|
||||||
|
<li class="nav-list-item{% if page.collection == collection_key %} active{% endif %}">
|
||||||
|
{%- if collection.size > 0 -%}
|
||||||
|
<button class="nav-list-expander btn-reset" aria-label="Toggle collection {{ collection_value.name }}" aria-pressed="{% if page.collection == collection_key %}true{% else %}false{% endif %}">
|
||||||
|
<svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg>
|
||||||
|
</button>
|
||||||
|
{%- endif -%}
|
||||||
|
<div class="nav-category">{{ collection_value.name }}</div>
|
||||||
|
{% include nav.html pages=collection key=collection_key %}
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
{% else %}
|
||||||
|
<div class="nav-category">{{ collection_value.name }}</div>
|
||||||
|
{% include nav.html pages=collection key=collection_key %}
|
||||||
|
{% endif %}
|
||||||
|
{% else %}
|
||||||
|
{% include nav.html pages=collection key=collection_key %}
|
||||||
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
{% endif %}
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
{% capture nav_footer_custom %}
|
||||||
|
{%- include nav_footer_custom.html -%}
|
||||||
|
{% endcapture %}
|
||||||
|
{% if nav_footer_custom != "" %}
|
||||||
|
{{ nav_footer_custom }}
|
||||||
|
{% else %}
|
||||||
|
<footer class="site-footer">
|
||||||
|
This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll.
|
||||||
|
</footer>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
@@ -2,8 +2,11 @@
|
|||||||
$logo: "{{ site.logo | relative_url }}";
|
$logo: "{{ site.logo | relative_url }}";
|
||||||
{% endif %}
|
{% endif %}
|
||||||
@import "./support/support";
|
@import "./support/support";
|
||||||
|
@import "./custom/setup";
|
||||||
@import "./color_schemes/light";
|
@import "./color_schemes/light";
|
||||||
|
{% unless include.color_scheme == "light" %}
|
||||||
@import "./color_schemes/{{ include.color_scheme }}";
|
@import "./color_schemes/{{ include.color_scheme }}";
|
||||||
|
{% endunless %}
|
||||||
@import "./modules";
|
@import "./modules";
|
||||||
{% include css/custom.scss.liquid %}
|
|
||||||
{% include css/callouts.scss.liquid color_scheme = include.color_scheme %}
|
{% include css/callouts.scss.liquid color_scheme = include.color_scheme %}
|
||||||
|
{% include css/custom.scss.liquid %}
|
||||||
|
@@ -1 +0,0 @@
|
|||||||
<link rel="shortcut icon" href="{{ 'favicon.ico' | relative_url }}" type="image/x-icon">
|
|
@@ -2,42 +2,39 @@
|
|||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
|
||||||
|
|
||||||
{% unless site.plugins contains "jekyll-seo-tag" %}
|
|
||||||
<title>{{ page.title }} - {{ site.title }}</title>
|
|
||||||
|
|
||||||
{% if page.description %}
|
|
||||||
<meta name="Description" content="{{ page.description }}">
|
|
||||||
{% endif %}
|
|
||||||
{% endunless %}
|
|
||||||
|
|
||||||
{% include favicon.html %}
|
|
||||||
|
|
||||||
<link rel="stylesheet" href="{{ '/assets/css/just-the-docs-default.css' | relative_url }}">
|
<link rel="stylesheet" href="{{ '/assets/css/just-the-docs-default.css' | relative_url }}">
|
||||||
|
|
||||||
{% if site.ga_tracking != nil %}
|
{% if site.ga_tracking != nil %}
|
||||||
<script async src="https://www.googletagmanager.com/gtag/js?id={{ site.ga_tracking }}"></script>
|
{% assign ga_tracking_ids = site.ga_tracking | split: "," %}
|
||||||
|
<script async src="https://www.googletagmanager.com/gtag/js?id={{ ga_tracking_ids.first }}"></script>
|
||||||
<script>
|
<script>
|
||||||
window.dataLayer = window.dataLayer || [];
|
window.dataLayer = window.dataLayer || [];
|
||||||
function gtag(){dataLayer.push(arguments);}
|
function gtag(){dataLayer.push(arguments);}
|
||||||
gtag('js', new Date());
|
gtag('js', new Date());
|
||||||
|
|
||||||
gtag('config', '{{ site.ga_tracking }}'{% unless site.ga_tracking_anonymize_ip == nil %}, { 'anonymize_ip': true }{% endunless %});
|
{% for ga_property in ga_tracking_ids %}
|
||||||
|
gtag('config', '{{ ga_property }}'{% unless site.ga_tracking_anonymize_ip == nil %}, { 'anonymize_ip': true }{% endunless %});
|
||||||
|
{% endfor %}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if site.search_enabled != false %}
|
{% if site.search_enabled != false %}
|
||||||
<script src="{{ '/assets/js/vendor/lunr.min.js' | relative_url }}"></script>
|
<script src="{{ '/assets/js/vendor/lunr.min.js' | relative_url }}"></script>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if site.mermaid %}
|
|
||||||
<script src="https://cdn.jsdelivr.net/npm/mermaid@{{ site.mermaid.version }}/dist/mermaid.min.js"></script>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<script src="{{ '/assets/js/just-the-docs.js' | relative_url }}"></script>
|
<script src="{{ '/assets/js/just-the-docs.js' | relative_url }}"></script>
|
||||||
|
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
|
||||||
|
{% for file in site.static_files %}
|
||||||
|
{% if file.path == site.favicon_ico or file.path == '/favicon.ico' %}
|
||||||
|
{% assign favicon = true %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
{% if favicon %}
|
||||||
|
<link rel="icon" href="{{ site.favicon_ico | default: '/favicon.ico' | relative_url }}" type="image/x-icon">
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% seo %}
|
{% seo %}
|
||||||
|
|
||||||
{% include head_custom.html %}
|
{% include head_custom.html %}
|
||||||
|
15
_includes/icons/code_copy.html
Normal file
15
_includes/icons/code_copy.html
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
<!-- Bootstrap Icons. MIT License: https://github.com/twbs/icons/blob/main/LICENSE.md -->
|
||||||
|
<symbol id="svg-copy" viewBox="0 0 16 16">
|
||||||
|
<title>Copy</title>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard" viewBox="0 0 16 16">
|
||||||
|
<path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1h1a1 1 0 0 1 1 1V14a1 1 0 0 1-1 1H3a1 1 0 0 1-1-1V3.5a1 1 0 0 1 1-1h1v-1z"/>
|
||||||
|
<path d="M9.5 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3zm-3-1A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3z"/>
|
||||||
|
</svg>
|
||||||
|
</symbol>
|
||||||
|
<symbol id="svg-copied" viewBox="0 0 16 16">
|
||||||
|
<title>Copied</title>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-clipboard-check-fill" viewBox="0 0 16 16">
|
||||||
|
<path d="M6.5 0A1.5 1.5 0 0 0 5 1.5v1A1.5 1.5 0 0 0 6.5 4h3A1.5 1.5 0 0 0 11 2.5v-1A1.5 1.5 0 0 0 9.5 0h-3Zm3 1a.5.5 0 0 1 .5.5v1a.5.5 0 0 1-.5.5h-3a.5.5 0 0 1-.5-.5v-1a.5.5 0 0 1 .5-.5h3Z"/>
|
||||||
|
<path d="M4 1.5H3a2 2 0 0 0-2 2V14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V3.5a2 2 0 0 0-2-2h-1v1A2.5 2.5 0 0 1 9.5 5h-3A2.5 2.5 0 0 1 4 2.5v-1Zm6.854 7.354-3 3a.5.5 0 0 1-.708 0l-1.5-1.5a.5.5 0 0 1 .708-.708L7.5 10.793l2.646-2.647a.5.5 0 0 1 .708.708Z"/>
|
||||||
|
</svg>
|
||||||
|
</symbol>
|
6
_includes/icons/document.html
Normal file
6
_includes/icons/document.html
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<symbol id="svg-doc" viewBox="0 0 24 24">
|
||||||
|
<title>Document</title>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file">
|
||||||
|
<path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline>
|
||||||
|
</svg>
|
||||||
|
</symbol>
|
6
_includes/icons/expand.html
Normal file
6
_includes/icons/expand.html
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<symbol id="svg-arrow-right" viewBox="0 0 24 24">
|
||||||
|
<title>Expand</title>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right">
|
||||||
|
<polyline points="9 18 15 12 9 6"></polyline>
|
||||||
|
</svg>
|
||||||
|
</symbol>
|
13
_includes/icons/icons.html
Normal file
13
_includes/icons/icons.html
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
<svg xmlns="http://www.w3.org/2000/svg" class="d-none">
|
||||||
|
{% include icons/link.html %}
|
||||||
|
{% include icons/menu.html %}
|
||||||
|
{% include icons/expand.html %}
|
||||||
|
{% include icons/external_link.html %}
|
||||||
|
{% if site.search_enabled != false %}
|
||||||
|
{% include icons/document.html %}
|
||||||
|
{% include icons/search.html %}
|
||||||
|
{% endif %}
|
||||||
|
{% if site.enable_copy_code_button != false %}
|
||||||
|
{% include icons/code_copy.html %}
|
||||||
|
{% endif %}
|
||||||
|
</svg>
|
After Width: | Height: | Size: 432 B |
6
_includes/icons/link.html
Normal file
6
_includes/icons/link.html
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<symbol id="svg-link" viewBox="0 0 24 24">
|
||||||
|
<title>Link</title>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link">
|
||||||
|
<path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path>
|
||||||
|
</svg>
|
||||||
|
</symbol>
|
6
_includes/icons/menu.html
Normal file
6
_includes/icons/menu.html
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<symbol id="svg-menu" viewBox="0 0 24 24">
|
||||||
|
<title>Menu</title>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu">
|
||||||
|
<line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line>
|
||||||
|
</svg>
|
||||||
|
</symbol>
|
6
_includes/icons/search.html
Normal file
6
_includes/icons/search.html
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<symbol id="svg-search" viewBox="0 0 24 24">
|
||||||
|
<title>Search</title>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search">
|
||||||
|
<circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>
|
||||||
|
</svg>
|
||||||
|
</symbol>
|
0
_includes/lunr/custom-data.json
Normal file
0
_includes/lunr/custom-data.json
Normal file
0
_includes/lunr/custom-index.js
Normal file
0
_includes/lunr/custom-index.js
Normal file
@@ -1,168 +1,88 @@
|
|||||||
{%- comment -%}
|
{%- comment -%}
|
||||||
The `nav_order` values of pages affect the order in which they are shown in
|
Include as: {%- include nav.html pages = pages key = key -%}
|
||||||
the navigation panel and in the automatically generated tables of contents.
|
Depends on: include.pages, include.key, page, site.
|
||||||
Sibling pages with the same `nav_order` value may be shown in any order.
|
Results in: HTML for the navigation panel.
|
||||||
Sibling pages with no `nav_order` value are shown after all pages that have
|
Includes:
|
||||||
explicit `nav_order` values, ordered by their `title` values.
|
sorted_pages.html
|
||||||
|
Overwrites:
|
||||||
The `nav_order` and `title` values can be numbers or strings. To avoid build
|
nav_pages, first_level_pages, second_level_pages, third_level_pages,
|
||||||
failures, we sort numbers and strings separately. We sort numbers by their
|
node, children_list, child, grand_children_list, grand_child.
|
||||||
values, and strings lexicographically. The case-sensitivity of string sorting
|
|
||||||
is determined by the configuration setting of `nav_sort`. Pages with no `title`
|
|
||||||
value are excluded from the navigation.
|
|
||||||
|
|
||||||
Note: Numbers used as `title` or `nav_order` values should not be in quotes,
|
|
||||||
unless you intend them to be lexicographically ordered. Numbers are written
|
|
||||||
without spaces or thousands-separators. Negative numbers are preceded by `-`.
|
|
||||||
Floats are written with the integral and fractional parts separated by `.`.
|
|
||||||
(Bounds on the magnitude and precision are presumably the same as in Liquid.)
|
|
||||||
{%- endcomment -%}
|
{%- endcomment -%}
|
||||||
|
|
||||||
{%- assign title_pages = include.pages
|
{%- assign nav_pages = include.pages
|
||||||
| where_exp: "item", "item.title != nil" -%}
|
| where_exp: "item", "item.title != nil"
|
||||||
|
| where_exp: "item", "item.nav_exclude != true" -%}
|
||||||
|
|
||||||
|
{%- include sorted_pages.html pages = nav_pages -%}
|
||||||
|
|
||||||
|
{%- assign first_level_pages = sorted_pages
|
||||||
|
| where_exp: "item", "item.parent == nil" -%}
|
||||||
|
{%- assign second_level_pages = sorted_pages
|
||||||
|
| where_exp: "item", "item.parent != nil"
|
||||||
|
| where_exp: "item", "item.grand_parent == nil" -%}
|
||||||
|
{%- assign third_level_pages = sorted_pages
|
||||||
|
| where_exp: "item", "item.grand_parent != nil" -%}
|
||||||
|
|
||||||
{%- comment -%}
|
{%- comment -%}
|
||||||
A page with `nav_exclude: true` does not appear in the main navigation.
|
The order of sibling pages in `sorted_pages` determines the order of display of
|
||||||
If it has a `parent`, it may appear in the parent's table of contents.
|
links to them in lists of navigation links.
|
||||||
If it specifies `has_children: true`, it should appear in the breadcrumbs
|
|
||||||
of the child pages, but its order in relation to other pages is irrelevant.
|
|
||||||
Pages that never appear can be removed from the pages that need to be sorted.
|
|
||||||
This optimisation can be significant on a site with many pages.
|
|
||||||
|
|
||||||
In Jekyll 4, the pages to be sorted can be filtered by:
|
|
||||||
|
|
||||||
{%- assign title_pages = title_pages
|
|
||||||
| where_exp: "item", "item.nav_exclude != true or item.parent != nil" -%}
|
|
||||||
|
|
||||||
That filter is not allowed in Jekyll 3. The following iterative code gives the
|
|
||||||
same effect, but it is activated only when it will filter more than 50% of the
|
|
||||||
pages.
|
|
||||||
{%- endcomment -%}
|
|
||||||
|
|
||||||
{%- assign unsorted_pages = title_pages
|
Note that Liquid evaluates conditions from right to left (and it does not allow
|
||||||
| where_exp: "item", "item.parent == nil"
|
the use of parentheses). Some conditions are not so easy to express clearly...
|
||||||
| where_exp: "item", "item.nav_exclude == true"-%}
|
|
||||||
{%- assign title_pages_size = title_pages.size -%}
|
|
||||||
{%- assign unsorted_pages_percent = unsorted_pages.size
|
|
||||||
| times: 100 | divided_by: title_pages_size -%}
|
|
||||||
{%- if unsorted_pages_percent > 50 -%}
|
|
||||||
{%- assign sorted_pages = "" | split: "" -%}
|
|
||||||
{%- for item in title_pages -%}
|
|
||||||
{%- if item.nav_exclude != true or item.parent -%}
|
|
||||||
{%- assign sorted_pages = sorted_pages | push: item -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endfor -%}
|
|
||||||
{%- assign title_pages = sorted_pages -%}
|
|
||||||
{%- endif -%}
|
|
||||||
|
|
||||||
{%- assign nav_order_pages = title_pages
|
For example, consider the following condition:
|
||||||
| where_exp: "item", "item.nav_order != nil" -%}
|
|
||||||
{%- assign title_order_pages = title_pages
|
|
||||||
| where_exp: "item", "item.nav_order == nil" -%}
|
|
||||||
|
|
||||||
{%- comment -%}
|
C: page.collection = = include.key and
|
||||||
Divide the arrays of `nav_order_pages` and `title_order_pages` according to
|
page.url = = node.url or
|
||||||
the type of value.
|
page.grand_parent = = node.title or
|
||||||
|
page.parent = = node.title and
|
||||||
The first character of the result of `jsonify` is `"` only for strings.
|
page.grand_parent = = nil
|
||||||
Grouping by a single character also ensures the number of groups is small.
|
|
||||||
{%- endcomment -%}
|
|
||||||
|
|
||||||
{%- assign nav_number_pages = "" | split: "" -%}
|
Here, `node` is a first-level page. The last part of the condition
|
||||||
{%- assign nav_string_pages = "" | split: "" -%}
|
-- namely: `page.parent = = node.title and page.grand_parent = = nil` --
|
||||||
{%- assign nav_order_groups = nav_order_pages
|
is evaluated first; it holds if and only if `page` is a child of `node`.
|
||||||
| group_by_exp: "item", "item.nav_order | jsonify | slice: 0" -%}
|
|
||||||
{%- for group in nav_order_groups -%}
|
|
||||||
{%- if group.name == '"' -%}
|
|
||||||
{%- assign nav_string_pages = group.items -%}
|
|
||||||
{%- else -%}
|
|
||||||
{%- assign nav_number_pages = nav_number_pages | concat: group.items -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endfor -%}
|
|
||||||
|
|
||||||
{%- unless nav_number_pages == empty -%}
|
The condition `page.grand_parent = = node.title or ...` holds when
|
||||||
{%- assign nav_number_pages = nav_number_pages | sort: "nav_order" -%}
|
`page` is a grandchild of node, OR `...` holds.
|
||||||
{%- endunless -%}
|
|
||||||
|
|
||||||
{%- unless nav_string_pages == empty -%}
|
The condition `page.url = = node.url or ...` holds when
|
||||||
{%- if site.nav_sort == 'case_insensitive' -%}
|
`page` is `node`, OR `...` holds.
|
||||||
{%- assign nav_string_pages = nav_string_pages | sort_natural: "nav_order" -%}
|
|
||||||
{%- else -%}
|
|
||||||
{%- assign nav_string_pages = nav_string_pages | sort: "nav_order" -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endunless -%}
|
|
||||||
|
|
||||||
{%- assign title_number_pages = "" | split: "" -%}
|
The condition C: `page.collection = = include.key and ...` holds when we are
|
||||||
{%- assign title_string_pages = "" | split: "" -%}
|
generating the nav links for a collection that includes `page`, AND `...` holds.
|
||||||
{%- assign title_order_groups = title_order_pages
|
|
||||||
| group_by_exp: "item", "item.title | jsonify | slice: 0" -%}
|
|
||||||
{%- for group in title_order_groups -%}
|
|
||||||
{%- if group.name == '"' -%}
|
|
||||||
{%- assign title_string_pages = group.items -%}
|
|
||||||
{%- else -%}
|
|
||||||
{%- assign title_number_pages = title_number_pages | concat: group.items -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endfor -%}
|
|
||||||
|
|
||||||
{%- unless title_number_pages == empty -%}
|
|
||||||
{%- assign title_number_pages = title_number_pages | sort: "title" -%}
|
|
||||||
{%- endunless -%}
|
|
||||||
|
|
||||||
{%- unless title_string_pages == empty -%}
|
|
||||||
{%- if site.nav_sort == 'case_insensitive' -%}
|
|
||||||
{%- assign title_string_pages = title_string_pages | sort_natural: "title" -%}
|
|
||||||
{%- else -%}
|
|
||||||
{%- assign title_string_pages = title_string_pages | sort: "title" -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endunless -%}
|
|
||||||
|
|
||||||
{%- assign pages_list = nav_number_pages | concat: nav_string_pages
|
|
||||||
| concat: title_number_pages | concat: title_string_pages -%}
|
|
||||||
|
|
||||||
{%- assign first_level_pages = pages_list
|
|
||||||
| where_exp: "item", "item.parent == nil" -%}
|
|
||||||
{%- assign second_level_pages = pages_list
|
|
||||||
| where_exp: "item", "item.parent != nil"
|
|
||||||
| where_exp: "item", "item.grand_parent == nil" -%}
|
|
||||||
{%- assign third_level_pages = pages_list
|
|
||||||
| where_exp: "item", "item.grand_parent != nil" -%}
|
|
||||||
|
|
||||||
{%- comment -%}
|
|
||||||
The order of sibling pages in `pages_list` determines the order of display of
|
|
||||||
links to them in lists of navigation links and in auto-generated TOCs.
|
|
||||||
{%- endcomment -%}
|
{%- endcomment -%}
|
||||||
|
|
||||||
<ul class="nav-list">
|
<ul class="nav-list">
|
||||||
{%- for node in first_level_pages -%}
|
{%- for node in first_level_pages -%}
|
||||||
{%- unless node.nav_exclude -%}
|
{%- unless node.nav_exclude -%}
|
||||||
<li class="nav-list-item{% if page.collection == include.key and page.url == node.url or page.parent == node.title or page.grand_parent == node.title %} active{% endif %}">
|
<li class="nav-list-item{% if page.collection == include.key and page.url == node.url or page.grand_parent == node.title or page.parent == node.title and page.grand_parent == nil %} active{% endif %}">
|
||||||
{%- if node.has_children -%}
|
{%- if node.has_children -%}
|
||||||
<a href="#" class="nav-list-expander" aria-label="toggle links in {{ node.title }} category">
|
<button class="nav-list-expander btn-reset" aria-label="toggle items in {{ node.title }} category" aria-pressed="{% if page.collection == include.key and page.url == node.url or page.grand_parent == node.title or page.parent == node.title and page.grand_parent == nil %}true{% else %}false{% endif %}">
|
||||||
<svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg>
|
<svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg>
|
||||||
</a>
|
</button>
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
<a href="{{ node.url | relative_url }}" class="nav-list-link{% if page.url == node.url %} active{% endif %}">{{ node.title }}</a>
|
<a href="{{ node.url | relative_url }}" class="nav-list-link{% if page.url == node.url %} active{% endif %}">{{ node.title }}</a>
|
||||||
{%- if node.has_children -%}
|
{%- if node.has_children -%}
|
||||||
{%- assign children_list = second_level_pages
|
{%- assign children_list = second_level_pages
|
||||||
| where: "parent", node.title -%}
|
| where: "parent", node.title -%}
|
||||||
{%- if node.child_nav_order == 'desc' -%}
|
{%- if node.child_nav_order == 'desc' or node.child_nav_order == 'reversed' -%}
|
||||||
{%- assign children_list = children_list | reverse -%}
|
{%- assign children_list = children_list | reverse -%}
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
<ul class="nav-list ">
|
<ul class="nav-list">
|
||||||
{%- for child in children_list -%}
|
{%- for child in children_list -%}
|
||||||
{%- unless child.nav_exclude -%}
|
{%- unless child.nav_exclude -%}
|
||||||
<li class="nav-list-item {% if page.url == child.url or page.parent == child.title %} active{% endif %}">
|
<li class="nav-list-item {% if page.url == child.url or page.parent == child.title %} active{% endif %}">
|
||||||
{%- if child.has_children -%}
|
{%- if child.has_children -%}
|
||||||
<a href="#" class="nav-list-expander" aria-label="toggle links in {{ child.title }} category">
|
<button class="nav-list-expander btn-reset" aria-label="toggle items in {{ child.title }} category" aria-pressed="{% if page.url == child.url or page.parent == child.title %}true{% else %}false{% endif %}">
|
||||||
<svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg>
|
<svg viewBox="0 0 24 24" aria-hidden="true"><use xlink:href="#svg-arrow-right"></use></svg>
|
||||||
</a>
|
</button>
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
<a href="{{ child.url | relative_url }}" class="nav-list-link{% if page.url == child.url %} active{% endif %}">{{ child.title }}</a>
|
<a href="{{ child.url | relative_url }}" class="nav-list-link{% if page.url == child.url %} active{% endif %}">{{ child.title }}</a>
|
||||||
{%- if child.has_children -%}
|
{%- if child.has_children -%}
|
||||||
{%- assign grand_children_list = third_level_pages
|
{%- assign grand_children_list = third_level_pages
|
||||||
| where: "parent", child.title
|
| where: "parent", child.title
|
||||||
| where: "grand_parent", node.title -%}
|
| where: "grand_parent", node.title -%}
|
||||||
{%- if child.child_nav_order == 'desc' -%}
|
{%- if child.child_nav_order == 'desc' or child.child_nav_order == 'reversed' -%}
|
||||||
{%- assign grand_children_list = grand_children_list | reverse -%}
|
{%- assign grand_children_list = grand_children_list | reverse -%}
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
<ul class="nav-list">
|
<ul class="nav-list">
|
||||||
@@ -183,51 +103,4 @@
|
|||||||
</li>
|
</li>
|
||||||
{%- endunless -%}
|
{%- endunless -%}
|
||||||
{%- endfor -%}
|
{%- endfor -%}
|
||||||
{%- assign nav_external_links = site.nav_external_links -%}
|
|
||||||
{%- for node in nav_external_links -%}
|
|
||||||
<li class="nav-list-item external">
|
|
||||||
<a href="{{ node.url | absolute_url }}" class="nav-list-link external">
|
|
||||||
{{ node.title }}
|
|
||||||
{% unless node.hide_icon %}<svg viewBox="0 0 24 24" aria-labelledby="svg-external-link-title"><use xlink:href="#svg-external-link"></use></svg>{% endunless %}
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
{%- endfor -%}
|
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
{%- comment -%}
|
|
||||||
`page.collection` is the name of the Jekyll collection that contains the page,
|
|
||||||
if any, and otherwise nil. Similarly for `include.key`.
|
|
||||||
|
|
||||||
If the current page is in the collection (if any) whose navigation is currently
|
|
||||||
being generated, the following code sets `first_level_url` to the URL used in
|
|
||||||
the page's top-level breadcrumb (if any), and `second_level_url` to that used
|
|
||||||
in the page's second-level breadcrumb (if any).
|
|
||||||
|
|
||||||
For pages with children, the code also sets `toc_list` to the list of child pages.
|
|
||||||
{%- endcomment -%}
|
|
||||||
|
|
||||||
{%- if page.collection == include.key -%}
|
|
||||||
{%- for node in first_level_pages -%}
|
|
||||||
{%- if page.grand_parent == node.title or page.parent == node.title and page.grand_parent == nil -%}
|
|
||||||
{%- assign first_level_url = node.url | relative_url -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- if node.has_children -%}
|
|
||||||
{%- assign children_list = second_level_pages | where: "parent", node.title -%}
|
|
||||||
{%- for child in children_list -%}
|
|
||||||
{%- if child.has_children -%}
|
|
||||||
{%- if page.url == child.url or page.parent == child.title and page.grand_parent == child.parent -%}
|
|
||||||
{%- assign second_level_url = child.url | relative_url -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endfor -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endfor -%}
|
|
||||||
{%- if page.has_children == true and page.has_toc != false -%}
|
|
||||||
{%- assign toc_list = pages_list
|
|
||||||
| where: "parent", page.title
|
|
||||||
| where: "grand_parent", page.parent -%}
|
|
||||||
{%- if page.child_nav_order == "desc" -%}
|
|
||||||
{%- assign toc_list = toc_list | reverse -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endif -%}
|
|
||||||
{%- endif -%}
|
|
||||||
|
95
_includes/sorted_pages.html
Normal file
95
_includes/sorted_pages.html
Normal file
@@ -0,0 +1,95 @@
|
|||||||
|
{%- comment -%}
|
||||||
|
Include as: {%- include sorted_pages.html pages = pages -%}
|
||||||
|
Depends on: include.pages.
|
||||||
|
Assigns to: sorted_pages.
|
||||||
|
Overwrites:
|
||||||
|
nav_order_pages, title_order_pages,
|
||||||
|
nav_number_pages, nav_string_pages, nav_order_groups, group,
|
||||||
|
title_number_pages, title_string_pages, title_order_groups.
|
||||||
|
{%- endcomment -%}
|
||||||
|
|
||||||
|
{%- comment -%}
|
||||||
|
The `nav_order` values of pages affect the order in which they are shown in
|
||||||
|
the navigation panel and in the automatically generated tables of contents.
|
||||||
|
Sibling pages with the same `nav_order` value may be shown in any order.
|
||||||
|
Sibling pages with no `nav_order` value are shown after all pages that have
|
||||||
|
explicit `nav_order` values, ordered by their `title` values.
|
||||||
|
|
||||||
|
The `nav_order` and `title` values can be numbers or strings. To avoid build
|
||||||
|
failures, we sort numbers and strings separately. We sort numbers by their
|
||||||
|
values, and strings lexicographically. The case-sensitivity of string sorting
|
||||||
|
is determined by the configuration setting of `nav_sort`. Pages with no `title`
|
||||||
|
value are excluded from the navigation.
|
||||||
|
|
||||||
|
Note: Numbers used as `title` or `nav_order` values should not be in quotes,
|
||||||
|
unless you intend them to be lexicographically ordered. Numbers are written
|
||||||
|
without spaces or thousands-separators. Negative numbers are preceded by `-`.
|
||||||
|
Floats are written with the integral and fractional parts separated by `.`.
|
||||||
|
(Bounds on the magnitude and precision are presumably the same as in Liquid.)
|
||||||
|
{%- endcomment -%}
|
||||||
|
|
||||||
|
{%- assign nav_order_pages = include.pages
|
||||||
|
| where_exp: "item", "item.nav_order != nil" -%}
|
||||||
|
{%- assign title_order_pages = include.pages
|
||||||
|
| where_exp: "item", "item.nav_order == nil" -%}
|
||||||
|
|
||||||
|
{%- comment -%}
|
||||||
|
Divide the arrays of `nav_order_pages` and `title_order_pages` according to
|
||||||
|
the type of value.
|
||||||
|
|
||||||
|
The first character of the result of `jsonify` is `"` only for strings.
|
||||||
|
Grouping by a single character also ensures the number of groups is small.
|
||||||
|
{%- endcomment -%}
|
||||||
|
|
||||||
|
{%- assign nav_number_pages = "" | split: "" -%}
|
||||||
|
{%- assign nav_string_pages = "" | split: "" -%}
|
||||||
|
{%- assign nav_order_groups = nav_order_pages
|
||||||
|
| group_by_exp: "item", "item.nav_order | jsonify | slice: 0" -%}
|
||||||
|
{%- for group in nav_order_groups -%}
|
||||||
|
{%- if group.name == '"' -%}
|
||||||
|
{%- assign nav_string_pages = group.items -%}
|
||||||
|
{%- else -%}
|
||||||
|
{%- assign nav_number_pages = nav_number_pages | concat: group.items -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- endfor -%}
|
||||||
|
|
||||||
|
{%- unless nav_number_pages == empty -%}
|
||||||
|
{%- assign nav_number_pages = nav_number_pages | sort: "nav_order" -%}
|
||||||
|
{%- endunless -%}
|
||||||
|
|
||||||
|
{%- unless nav_string_pages == empty -%}
|
||||||
|
{%- if site.nav_sort == 'case_insensitive' -%}
|
||||||
|
{%- assign nav_string_pages = nav_string_pages | sort_natural: "nav_order" -%}
|
||||||
|
{%- else -%}
|
||||||
|
{%- assign nav_string_pages = nav_string_pages | sort: "nav_order" -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- endunless -%}
|
||||||
|
|
||||||
|
{%- assign title_number_pages = "" | split: "" -%}
|
||||||
|
{%- assign title_string_pages = "" | split: "" -%}
|
||||||
|
{%- assign title_order_groups = title_order_pages
|
||||||
|
| group_by_exp: "item", "item.title | jsonify | slice: 0" -%}
|
||||||
|
{%- for group in title_order_groups -%}
|
||||||
|
{%- if group.name == '"' -%}
|
||||||
|
{%- assign title_string_pages = group.items -%}
|
||||||
|
{%- else -%}
|
||||||
|
{%- assign title_number_pages = title_number_pages | concat: group.items -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- endfor -%}
|
||||||
|
|
||||||
|
{%- unless title_number_pages == empty -%}
|
||||||
|
{%- assign title_number_pages = title_number_pages | sort: "title" -%}
|
||||||
|
{%- endunless -%}
|
||||||
|
|
||||||
|
{%- unless title_string_pages == empty -%}
|
||||||
|
{%- if site.nav_sort == 'case_insensitive' -%}
|
||||||
|
{%- assign title_string_pages = title_string_pages | sort_natural: "title" -%}
|
||||||
|
{%- else -%}
|
||||||
|
{%- assign title_string_pages = title_string_pages | sort: "title" -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- endunless -%}
|
||||||
|
|
||||||
|
{%- assign sorted_pages = nav_number_pages
|
||||||
|
| concat: nav_string_pages
|
||||||
|
| concat: title_number_pages
|
||||||
|
| concat: title_string_pages -%}
|
@@ -1,5 +1,5 @@
|
|||||||
{% if site.logo %}
|
{% if site.logo %}
|
||||||
<div class="site-logo"></div>
|
<div class="site-logo" role="img" aria-label="{{ site.title }}"></div>
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ site.title }}
|
{{ site.title }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
64
_includes/vendor/anchor_headings.html
vendored
64
_includes/vendor/anchor_headings.html
vendored
@@ -24,7 +24,7 @@
|
|||||||
OTHER DEALINGS IN THE SOFTWARE.
|
OTHER DEALINGS IN THE SOFTWARE.
|
||||||
{% endcomment %}
|
{% endcomment %}
|
||||||
{% comment %}
|
{% comment %}
|
||||||
Version 1.0.7
|
Version 1.0.12
|
||||||
https://github.com/allejo/jekyll-anchor-headings
|
https://github.com/allejo/jekyll-anchor-headings
|
||||||
|
|
||||||
"Be the pull request you wish to see in the world." ~Ben Balter
|
"Be the pull request you wish to see in the world." ~Ben Balter
|
||||||
@@ -37,6 +37,8 @@
|
|||||||
|
|
||||||
Optional Parameters:
|
Optional Parameters:
|
||||||
* beforeHeading (bool) : false - Set to true if the anchor should be placed _before_ the heading's content
|
* beforeHeading (bool) : false - Set to true if the anchor should be placed _before_ the heading's content
|
||||||
|
* headerAttrs (string) : '' - Any custom HTML attributes that will be added to the heading tag; you may NOT use `id`;
|
||||||
|
the `%heading%` and `%html_id%` placeholders are available
|
||||||
* anchorAttrs (string) : '' - Any custom HTML attributes that will be added to the `<a>` tag; you may NOT use `href`, `class` or `title`;
|
* anchorAttrs (string) : '' - Any custom HTML attributes that will be added to the `<a>` tag; you may NOT use `href`, `class` or `title`;
|
||||||
the `%heading%` and `%html_id%` placeholders are available
|
the `%heading%` and `%html_id%` placeholders are available
|
||||||
* anchorBody (string) : '' - The content that will be placed inside the anchor; the `%heading%` placeholder is available
|
* anchorBody (string) : '' - The content that will be placed inside the anchor; the `%heading%` placeholder is available
|
||||||
@@ -46,6 +48,7 @@
|
|||||||
* h_max (int) : 6 - The maximum header level to build an anchor for; any header greater than this value will be ignored
|
* h_max (int) : 6 - The maximum header level to build an anchor for; any header greater than this value will be ignored
|
||||||
* bodyPrefix (string) : '' - Anything that should be inserted inside of the heading tag _before_ its anchor and content
|
* bodyPrefix (string) : '' - Anything that should be inserted inside of the heading tag _before_ its anchor and content
|
||||||
* bodySuffix (string) : '' - Anything that should be inserted inside of the heading tag _after_ its anchor and content
|
* bodySuffix (string) : '' - Anything that should be inserted inside of the heading tag _after_ its anchor and content
|
||||||
|
* generateId (true) : false - Set to true if a header without id should generate an id to use.
|
||||||
|
|
||||||
Output:
|
Output:
|
||||||
The original HTML with the addition of anchors inside of all of the h1-h6 headings.
|
The original HTML with the addition of anchors inside of all of the h1-h6 headings.
|
||||||
@@ -54,6 +57,7 @@
|
|||||||
{% assign minHeader = include.h_min | default: 1 %}
|
{% assign minHeader = include.h_min | default: 1 %}
|
||||||
{% assign maxHeader = include.h_max | default: 6 %}
|
{% assign maxHeader = include.h_max | default: 6 %}
|
||||||
{% assign beforeHeading = include.beforeHeading %}
|
{% assign beforeHeading = include.beforeHeading %}
|
||||||
|
{% assign headerAttrs = include.headerAttrs %}
|
||||||
{% assign nodes = include.html | split: '<h' %}
|
{% assign nodes = include.html | split: '<h' %}
|
||||||
|
|
||||||
{% capture edited_headings %}{% endcapture %}
|
{% capture edited_headings %}{% endcapture %}
|
||||||
@@ -84,17 +88,41 @@
|
|||||||
|
|
||||||
{% capture _closingTag %}</h{{ headerLevel }}>{% endcapture %}
|
{% capture _closingTag %}</h{{ headerLevel }}>{% endcapture %}
|
||||||
{% assign _workspace = node | split: _closingTag %}
|
{% assign _workspace = node | split: _closingTag %}
|
||||||
{% assign _idWorkspace = _workspace[0] | split: 'id="' %}
|
|
||||||
{% assign _idWorkspace = _idWorkspace[1] | split: '"' %}
|
|
||||||
{% assign html_id = _idWorkspace[0] %}
|
|
||||||
|
|
||||||
{% capture _hAttrToStrip %}{{ _workspace[0] | split: '>' | first }}>{% endcapture %}
|
{% capture _hAttrToStrip %}{{ _workspace[0] | split: '>' | first }}>{% endcapture %}
|
||||||
{% assign header = _workspace[0] | replace: _hAttrToStrip, '' %}
|
{% assign header = _workspace[0] | replace: _hAttrToStrip, '' %}
|
||||||
|
{% assign escaped_header = header | strip_html | strip %}
|
||||||
|
|
||||||
|
{% assign _classWorkspace = _workspace[0] | split: 'class="' %}
|
||||||
|
{% assign _classWorkspace = _classWorkspace[1] | split: '"' %}
|
||||||
|
{% assign _html_class = _classWorkspace[0] %}
|
||||||
|
|
||||||
|
{% if _html_class contains "no_anchor" %}
|
||||||
|
{% assign skip_anchor = true %}
|
||||||
|
{% else %}
|
||||||
|
{% assign skip_anchor = false %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% assign _idWorkspace = _workspace[0] | split: 'id="' %}
|
||||||
|
{% if _idWorkspace[1] %}
|
||||||
|
{% assign _idWorkspace = _idWorkspace[1] | split: '"' %}
|
||||||
|
{% assign html_id = _idWorkspace[0] %}
|
||||||
|
{% elsif include.generateId %}
|
||||||
|
<!-- If the header did not have an id we create one. -->
|
||||||
|
{% assign html_id = escaped_header | slugify %}
|
||||||
|
{% if html_id == "" %}
|
||||||
|
{% assign html_id = false %}
|
||||||
|
{% endif %}
|
||||||
|
{% capture headerAttrs %}{{ headerAttrs }} id="%html_id%"{% endcapture %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
<!-- Build the anchor to inject for our heading -->
|
<!-- Build the anchor to inject for our heading -->
|
||||||
{% capture anchor %}{% endcapture %}
|
{% capture anchor %}{% endcapture %}
|
||||||
|
|
||||||
{% if html_id and headerLevel >= minHeader and headerLevel <= maxHeader %}
|
{% if skip_anchor == false and html_id and headerLevel >= minHeader and headerLevel <= maxHeader %}
|
||||||
|
{% if headerAttrs %}
|
||||||
|
{% capture _hAttrToStrip %}{{ _hAttrToStrip | split: '>' | first }} {{ headerAttrs | replace: '%heading%', escaped_header | replace: '%html_id%', html_id }}>{% endcapture %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
{% capture anchor %}href="#{{ html_id }}"{% endcapture %}
|
{% capture anchor %}href="#{{ html_id }}"{% endcapture %}
|
||||||
|
|
||||||
{% if include.anchorClass %}
|
{% if include.anchorClass %}
|
||||||
@@ -102,14 +130,14 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if include.anchorTitle %}
|
{% if include.anchorTitle %}
|
||||||
{% capture anchor %}{{ anchor }} title="{{ include.anchorTitle | replace: '%heading%', header }}"{% endcapture %}
|
{% capture anchor %}{{ anchor }} title="{{ include.anchorTitle | replace: '%heading%', escaped_header }}"{% endcapture %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if include.anchorAttrs %}
|
{% if include.anchorAttrs %}
|
||||||
{% capture anchor %}{{ anchor }} {{ include.anchorAttrs | replace: '%heading%', header | replace: '%html_id%', html_id }}{% endcapture %}
|
{% capture anchor %}{{ anchor }} {{ include.anchorAttrs | replace: '%heading%', escaped_header | replace: '%html_id%', html_id }}{% endcapture %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% capture anchor %}<a {{ anchor }}>{{ include.anchorBody | replace: '%heading%', header | default: '' }}</a>{% endcapture %}
|
{% capture anchor %}<a {{ anchor }}>{{ include.anchorBody | replace: '%heading%', escaped_header | default: '' }}</a>{% endcapture %}
|
||||||
|
|
||||||
<!-- In order to prevent adding extra space after a heading, we'll let the 'anchor' value contain it -->
|
<!-- In order to prevent adding extra space after a heading, we'll let the 'anchor' value contain it -->
|
||||||
{% if beforeHeading %}
|
{% if beforeHeading %}
|
||||||
@@ -120,15 +148,15 @@
|
|||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% capture new_heading %}
|
{% capture new_heading %}
|
||||||
<h{{ _hAttrToStrip }}
|
<h{{ _hAttrToStrip }}
|
||||||
{{ include.bodyPrefix }}
|
{{ include.bodyPrefix }}
|
||||||
{% if beforeHeading %}
|
{% if beforeHeading %}
|
||||||
{{ anchor }}{{ header }}
|
{{ anchor }}{{ header }}
|
||||||
{% else %}
|
{% else %}
|
||||||
{{ header }}{{ anchor }}
|
{{ header }}{{ anchor }}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{{ include.bodySuffix }}
|
{{ include.bodySuffix }}
|
||||||
</h{{ headerLevel }}>
|
</h{{ headerLevel }}>
|
||||||
{% endcapture %}
|
{% endcapture %}
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
|
@@ -8,222 +8,34 @@ layout: table_wrappers
|
|||||||
{% include head.html %}
|
{% include head.html %}
|
||||||
<body>
|
<body>
|
||||||
<a class="skip-to-main" href="#main-content">Skip to main content</a>
|
<a class="skip-to-main" href="#main-content">Skip to main content</a>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
|
{% include icons/icons.html %}
|
||||||
<symbol id="svg-link" viewBox="0 0 24 24">
|
{% include components/sidebar.html %}
|
||||||
<title>Link</title>
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-link">
|
|
||||||
<path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71"></path><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71"></path>
|
|
||||||
</svg>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="svg-search" viewBox="0 0 24 24">
|
|
||||||
<title>Search</title>
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-search">
|
|
||||||
<circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>
|
|
||||||
</svg>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="svg-menu" viewBox="0 0 24 24">
|
|
||||||
<title>Menu</title>
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-menu">
|
|
||||||
<line x1="3" y1="12" x2="21" y2="12"></line><line x1="3" y1="6" x2="21" y2="6"></line><line x1="3" y1="18" x2="21" y2="18"></line>
|
|
||||||
</svg>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="svg-arrow-right" viewBox="0 0 24 24">
|
|
||||||
<title>Expand</title>
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-right">
|
|
||||||
<polyline points="9 18 15 12 9 6"></polyline>
|
|
||||||
</svg>
|
|
||||||
</symbol>
|
|
||||||
<symbol id="svg-doc" viewBox="0 0 24 24">
|
|
||||||
<title>Document</title>
|
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-file">
|
|
||||||
<path d="M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"></path><polyline points="13 2 13 9 20 9"></polyline>
|
|
||||||
</svg>
|
|
||||||
</symbol>
|
|
||||||
{% include icons/external_link.html %}
|
|
||||||
</svg>
|
|
||||||
|
|
||||||
<div class="side-bar">
|
|
||||||
<div class="site-header">
|
|
||||||
<a href="{{ '/' | relative_url }}" class="site-title lh-tight">{% include title.html %}</a>
|
|
||||||
<a href="#" id="menu-button" class="site-button">
|
|
||||||
<svg viewBox="0 0 24 24" class="icon"><use xlink:href="#svg-menu"></use></svg>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<nav aria-label="Main" id="site-nav" class="site-nav">
|
|
||||||
{% assign pages_top_size = site.html_pages
|
|
||||||
| where_exp:"item", "item.title != nil"
|
|
||||||
| where_exp:"item", "item.parent == nil"
|
|
||||||
| where_exp:"item", "item.nav_exclude != true"
|
|
||||||
| size %}
|
|
||||||
{% if pages_top_size > 0 %}
|
|
||||||
{% include nav.html pages=site.html_pages key=nil %}
|
|
||||||
{% endif %}
|
|
||||||
{% if site.just_the_docs.collections %}
|
|
||||||
{% assign collections_size = site.just_the_docs.collections | size %}
|
|
||||||
{% for collection_entry in site.just_the_docs.collections %}
|
|
||||||
{% assign collection_key = collection_entry[0] %}
|
|
||||||
{% assign collection_value = collection_entry[1] %}
|
|
||||||
{% assign collection = site[collection_key] %}
|
|
||||||
{% if collection_value.nav_exclude != true %}
|
|
||||||
{% if collections_size > 1 or pages_top_size > 0 %}
|
|
||||||
{% if collection_value.nav_fold == true %}
|
|
||||||
<ul class="nav-list nav-category-list">
|
|
||||||
<li class="nav-list-item{% if page.collection == collection_key %} active{% endif %}">
|
|
||||||
{%- if collection.size > 0 -%}
|
|
||||||
<a href="#" class="nav-list-expander"><svg viewBox="0 0 24 24"><use xlink:href="#svg-arrow-right"></use></svg></a>
|
|
||||||
{%- endif -%}
|
|
||||||
<div class="nav-category">{{ collection_value.name }}</div>
|
|
||||||
{% include nav.html pages=collection key=collection_key %}
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
{% else %}
|
|
||||||
<div class="nav-category">{{ collection_value.name }}</div>
|
|
||||||
{% include nav.html pages=collection key=collection_key %}
|
|
||||||
{% endif %}
|
|
||||||
{% else %}
|
|
||||||
{% include nav.html pages=collection key=collection_key %}
|
|
||||||
{% endif %}
|
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
|
||||||
{% endif %}
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
{% capture nav_footer_custom %}
|
|
||||||
{%- include nav_footer_custom.html -%}
|
|
||||||
{% endcapture %}
|
|
||||||
{% if nav_footer_custom != "" %}
|
|
||||||
{{ nav_footer_custom }}
|
|
||||||
{% else %}
|
|
||||||
<footer class="site-footer">
|
|
||||||
This site uses <a href="https://github.com/just-the-docs/just-the-docs">Just the Docs</a>, a documentation theme for Jekyll.
|
|
||||||
</footer>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
<div class="main" id="top">
|
<div class="main" id="top">
|
||||||
<div id="main-header" class="main-header">
|
{% include components/header.html %}
|
||||||
{% if site.search_enabled != false %}
|
|
||||||
|
|
||||||
{% capture search_placeholder %}{% include search_placeholder_custom.html %}{% endcapture %}
|
|
||||||
|
|
||||||
<div class="search">
|
|
||||||
<div class="search-input-wrap">
|
|
||||||
<input type="text" id="search-input" class="search-input" tabindex="0" placeholder="{{ search_placeholder | strip_html | strip }}" aria-label="{{ search_placeholder | strip_html| strip }}" autocomplete="off">
|
|
||||||
<label for="search-input" class="search-label"><svg viewBox="0 0 24 24" class="search-icon"><use xlink:href="#svg-search"></use></svg></label>
|
|
||||||
</div>
|
|
||||||
<div id="search-results" class="search-results"></div>
|
|
||||||
</div>
|
|
||||||
{% else %}
|
|
||||||
<div></div>
|
|
||||||
{% endif %}
|
|
||||||
{% include header_custom.html %}
|
|
||||||
{% if site.aux_links %}
|
|
||||||
<nav aria-label="Auxiliary" class="aux-nav">
|
|
||||||
<ul class="aux-nav-list">
|
|
||||||
{% for link in site.aux_links %}
|
|
||||||
<li class="aux-nav-list-item">
|
|
||||||
<a href="{{ link.last }}" class="site-button"
|
|
||||||
{% if site.aux_links_new_tab %}
|
|
||||||
target="_blank" rel="noopener noreferrer"
|
|
||||||
{% endif %}
|
|
||||||
>
|
|
||||||
{{ link.first }}
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
{% endfor %}
|
|
||||||
</ul>
|
|
||||||
</nav>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
<div id="main-content-wrap" class="main-content-wrap">
|
<div id="main-content-wrap" class="main-content-wrap">
|
||||||
{% unless page.url == "/" %}
|
{% include components/breadcrumbs.html %}
|
||||||
{% if page.parent %}
|
<div id="main-content" class="main-content">
|
||||||
<nav aria-label="Breadcrumb" class="breadcrumb-nav">
|
<main>
|
||||||
<ol class="breadcrumb-nav-list">
|
{% if site.heading_anchors != false %}
|
||||||
{% if page.grand_parent %}
|
{% include vendor/anchor_headings.html html=content beforeHeading="true" anchorBody="<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><use xlink:href=\"#svg-link\"></use></svg>" anchorClass="anchor-heading" anchorAttrs="aria-labelledby=\"%html_id%\"" %}
|
||||||
<li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.grand_parent }}</a></li>
|
{% else %}
|
||||||
<li class="breadcrumb-nav-list-item"><a href="{{ second_level_url }}">{{ page.parent }}</a></li>
|
{{ content }}
|
||||||
{% else %}
|
{% endif %}
|
||||||
<li class="breadcrumb-nav-list-item"><a href="{{ first_level_url }}">{{ page.parent }}</a></li>
|
|
||||||
{% endif %}
|
|
||||||
<li class="breadcrumb-nav-list-item"><span>{{ page.title }}</span></li>
|
|
||||||
</ol>
|
|
||||||
</nav>
|
|
||||||
{% endif %}
|
|
||||||
{% endunless %}
|
|
||||||
<div id="main-content" class="main-content" role="main">
|
|
||||||
{% if site.heading_anchors != false %}
|
|
||||||
{% include vendor/anchor_headings.html html=content beforeHeading="true" anchorBody="<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><use xlink:href=\"#svg-link\"></use></svg>" anchorClass="anchor-heading" anchorAttrs="aria-labelledby=\"%html_id%\"" %}
|
|
||||||
{% else %}
|
|
||||||
{{ content }}
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% if page.has_children == true and page.has_toc != false %}
|
|
||||||
<hr>
|
|
||||||
{% include toc_heading_custom.html %}
|
|
||||||
<ul>
|
|
||||||
{% for child in toc_list %}
|
|
||||||
<li>
|
|
||||||
<a href="{{ child.url | relative_url }}">{{ child.title }}</a>{% if child.summary %} - {{ child.summary }}{% endif %}
|
|
||||||
</li>
|
|
||||||
{% endfor %}
|
|
||||||
</ul>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{% capture footer_custom %}
|
|
||||||
{%- include footer_custom.html -%}
|
|
||||||
{% endcapture %}
|
|
||||||
{% if footer_custom != "" or site.last_edit_timestamp or site.gh_edit_link %}
|
|
||||||
<hr>
|
|
||||||
<footer>
|
|
||||||
{% if site.back_to_top %}
|
|
||||||
<p><a href="#top" id="back-to-top">{{ site.back_to_top_text }}</a></p>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
{{ footer_custom }}
|
|
||||||
|
|
||||||
{% if site.last_edit_timestamp or site.gh_edit_link %}
|
|
||||||
<div class="d-flex mt-2">
|
|
||||||
{% if site.last_edit_timestamp and site.last_edit_time_format and page.last_modified_date %}
|
|
||||||
<p class="text-small text-grey-dk-000 mb-0 mr-2">
|
|
||||||
Page last modified: <span class="d-inline-block">{{ page.last_modified_date | date: site.last_edit_time_format }}</span>.
|
|
||||||
</p>
|
|
||||||
{% endif %}
|
|
||||||
{% if
|
|
||||||
site.gh_edit_link and
|
|
||||||
site.gh_edit_link_text and
|
|
||||||
site.gh_edit_repository and
|
|
||||||
site.gh_edit_branch and
|
|
||||||
site.gh_edit_view_mode
|
|
||||||
%}
|
|
||||||
<p class="text-small text-grey-dk-000 mb-0">
|
|
||||||
<a href="{{ site.gh_edit_repository }}/{{ site.gh_edit_view_mode }}/{{ site.gh_edit_branch }}{% if site.gh_edit_source %}/{{ site.gh_edit_source }}{% endif %}{% if page.collection and site.collections_dir %}/{{ site.collections_dir }}{% endif %}/{{ page.path }}" id="edit-this-page">{{ site.gh_edit_link_text }}</a>
|
|
||||||
</p>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
{% endif %}
|
|
||||||
</footer>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
|
{% if page.has_children == true and page.has_toc != false %}
|
||||||
|
{% include components/children_nav.html %}
|
||||||
|
{% endif %}
|
||||||
|
</main>
|
||||||
|
{% include components/footer.html %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if site.search_enabled != false %}
|
{% if site.search_enabled != false %}
|
||||||
{% if site.search.button %}
|
{% include components/search_footer.html %}
|
||||||
<a href="#" id="search-button" class="search-button">
|
|
||||||
<svg viewBox="0 0 24 24" class="icon"><use xlink:href="#svg-search"></use></svg>
|
|
||||||
</a>
|
|
||||||
{% endif %}
|
|
||||||
|
|
||||||
<div class="search-overlay"></div>
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if site.mermaid %}
|
{% if site.mermaid %}
|
||||||
<script>
|
{% include components/mermaid.html %}
|
||||||
var config = {% include mermaid_config.js %};
|
|
||||||
mermaid.initialize(config);
|
|
||||||
window.mermaid.init(undefined, document.querySelectorAll('.language-mermaid'));
|
|
||||||
</script>
|
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
34
_layouts/minimal.html
Normal file
34
_layouts/minimal.html
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
---
|
||||||
|
layout: table_wrappers
|
||||||
|
---
|
||||||
|
|
||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
<html lang="{{ site.lang | default: 'en-US' }}">
|
||||||
|
{% include head.html %}
|
||||||
|
<body>
|
||||||
|
<a class="skip-to-main" href="#main-content">Skip to main content</a>
|
||||||
|
{% include icons/icons.html %}
|
||||||
|
<div id="main-content-wrap" class="main-content-wrap" id="top">
|
||||||
|
{% include components/breadcrumbs.html %}
|
||||||
|
<div id="main-content" class="main-content" role="main">
|
||||||
|
{% if site.heading_anchors != false %}
|
||||||
|
{% include vendor/anchor_headings.html html=content beforeHeading="true" anchorBody="<svg viewBox=\"0 0 16 16\" aria-hidden=\"true\"><use xlink:href=\"#svg-link\"></use></svg>" anchorClass="anchor-heading" anchorAttrs="aria-labelledby=\"%html_id%\"" %}
|
||||||
|
{% else %}
|
||||||
|
{{ content }}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if page.has_children == true and page.has_toc != false %}
|
||||||
|
{% include components/children_nav.html %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% include components/footer.html %}
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{% if site.mermaid %}
|
||||||
|
{% include components/mermaid.html %}
|
||||||
|
{% endif %}
|
||||||
|
</body>
|
||||||
|
</html>
|
@@ -5,11 +5,6 @@
|
|||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
::selection {
|
|
||||||
color: $white;
|
|
||||||
background: $link-color;
|
|
||||||
}
|
|
||||||
|
|
||||||
html {
|
html {
|
||||||
@include fs-4;
|
@include fs-4;
|
||||||
|
|
||||||
|
@@ -4,10 +4,7 @@
|
|||||||
.btn {
|
.btn {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
padding-top: 0.3em;
|
padding: 0.3em 1em;
|
||||||
padding-right: 1em;
|
|
||||||
padding-bottom: 0.3em;
|
|
||||||
padding-left: 1em;
|
|
||||||
margin: 0;
|
margin: 0;
|
||||||
font-family: inherit;
|
font-family: inherit;
|
||||||
font-size: inherit;
|
font-size: inherit;
|
||||||
@@ -114,3 +111,13 @@
|
|||||||
.btn-green {
|
.btn-green {
|
||||||
@include btn-color($white, $green-100);
|
@include btn-color($white, $green-100);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.btn-reset {
|
||||||
|
background: none;
|
||||||
|
border: none;
|
||||||
|
margin: 0;
|
||||||
|
text-align: inherit;
|
||||||
|
font: inherit;
|
||||||
|
border-radius: 0;
|
||||||
|
appearance: none;
|
||||||
|
}
|
||||||
|
148
_sass/code.scss
148
_sass/code.scss
@@ -3,12 +3,15 @@
|
|||||||
|
|
||||||
// {% raw %}
|
// {% raw %}
|
||||||
|
|
||||||
code {
|
// This instruction applies to all queues not within 'pre' or 'figure', avoiding 'code' generated by the highlight.
|
||||||
padding: 0.2em 0.15em;
|
:not(pre, figure) {
|
||||||
font-weight: 400;
|
& > code {
|
||||||
background-color: $code-background-color;
|
padding: 0.2em 0.15em;
|
||||||
border: $border $border-color;
|
font-weight: 400;
|
||||||
border-radius: $border-radius;
|
background-color: $code-background-color;
|
||||||
|
border: $border $border-color;
|
||||||
|
border-radius: $border-radius;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Avoid appearance of dark border around visited code links in Safari
|
// Avoid appearance of dark border around visited code links in Safari
|
||||||
@@ -47,19 +50,84 @@ a:visited code {
|
|||||||
// Kramdown line_numbers = true: fences have a wider gutter than with Liquid?
|
// Kramdown line_numbers = true: fences have a wider gutter than with Liquid?
|
||||||
|
|
||||||
// ```[LANG]...```
|
// ```[LANG]...```
|
||||||
|
// or in AsciiDoc:
|
||||||
|
//
|
||||||
|
// ----
|
||||||
|
// ...
|
||||||
|
// ----
|
||||||
|
|
||||||
|
// the code may appear with 3 different types:
|
||||||
|
// container \ case: default case, code with line number, code with html rendering
|
||||||
|
// top level: div.highlighter-rouge, figure.highlight, figure.highlight
|
||||||
|
// second level: div.highlight, div.table-wrapper, pre.highlight
|
||||||
|
// third level: pre.highlight, td.code, absent
|
||||||
|
// last level: code, pre, code (optionality)
|
||||||
|
// highlighter level: span, span, span
|
||||||
|
// the spacing are only in the second level for case 1, 3 and in the third level for case 2
|
||||||
|
// in AsciiDoc, there is a parent container that contains optionally a title and the content.
|
||||||
|
|
||||||
|
// select top level container
|
||||||
div.highlighter-rouge,
|
div.highlighter-rouge,
|
||||||
div.listingblock > div.content {
|
div.listingblock > div.content,
|
||||||
padding: $sp-3;
|
figure.highlight {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
margin-bottom: $sp-3;
|
margin-bottom: $sp-3;
|
||||||
overflow-x: auto;
|
|
||||||
background-color: $code-background-color;
|
background-color: $code-background-color;
|
||||||
border-radius: $border-radius;
|
border-radius: $border-radius;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
-webkit-overflow-scrolling: touch;
|
-webkit-overflow-scrolling: touch;
|
||||||
|
position: relative;
|
||||||
|
padding: 0;
|
||||||
|
|
||||||
div.highlight,
|
// copy button (or other button)
|
||||||
pre.highlight,
|
// the button appear only when there is a hover on the code or focus on button
|
||||||
|
> button {
|
||||||
|
width: $sp-3;
|
||||||
|
opacity: 0;
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
border: $sp-3 solid $code-background-color;
|
||||||
|
background-color: $code-background-color;
|
||||||
|
color: $body-text-color;
|
||||||
|
box-sizing: content-box;
|
||||||
|
|
||||||
|
svg {
|
||||||
|
fill: $body-text-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:active {
|
||||||
|
text-decoration: none;
|
||||||
|
outline: none;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
&:focus {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// the button can be seen by doing a simple hover in the code, there is no need to go over the location of the button
|
||||||
|
&:hover {
|
||||||
|
> button {
|
||||||
|
cursor: copy;
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// setting the spacing and scrollbar on the second level for the first case
|
||||||
|
// remove all space on the second and third level
|
||||||
|
// this is a mixin to accommodate for the slightly different structures generated via Markdown vs AsciiDoc
|
||||||
|
@mixin scroll-and-spacing($code-div, $pre-select) {
|
||||||
|
#{$code-div} {
|
||||||
|
overflow-x: auto;
|
||||||
|
padding: $sp-3;
|
||||||
|
margin: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#{$pre-select},
|
||||||
code {
|
code {
|
||||||
padding: 0;
|
padding: 0;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
@@ -67,21 +135,30 @@ div.listingblock > div.content {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// {% highlight LANG %}...{% endhighlight %},
|
// for Markdown
|
||||||
// {% highlight LANG linenos %}...{% endhighlight %}:
|
div.highlighter-rouge {
|
||||||
figure.highlight {
|
@include scroll-and-spacing("div.highlight", "pre.highlight");
|
||||||
padding: $sp-3;
|
}
|
||||||
|
|
||||||
|
// for AsciiDoc. we also need to fix the margins for its parent container.
|
||||||
|
div.listingblock {
|
||||||
|
@include scroll-and-spacing("div.content", "div.content > pre");
|
||||||
|
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
margin-bottom: $sp-3;
|
margin-bottom: $sp-3;
|
||||||
overflow-x: auto;
|
}
|
||||||
background-color: $code-background-color;
|
|
||||||
border-radius: $border-radius;
|
|
||||||
box-shadow: none;
|
|
||||||
-webkit-overflow-scrolling: touch;
|
|
||||||
|
|
||||||
|
// {% highlight LANG %}...{% endhighlight %},
|
||||||
|
// {% highlight LANG linenos %}...{% endhighlight %}:
|
||||||
|
|
||||||
|
// setting the spacing and scrollbar on the second level for the thirt case
|
||||||
|
// the css rule are apply only to the last code enviroment
|
||||||
|
// setting the scroolbar
|
||||||
|
figure.highlight {
|
||||||
pre,
|
pre,
|
||||||
code {
|
:not(pre) > code {
|
||||||
padding: 0;
|
overflow-x: auto;
|
||||||
|
padding: $sp-3;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
border: 0;
|
border: 0;
|
||||||
}
|
}
|
||||||
@@ -89,8 +166,10 @@ figure.highlight {
|
|||||||
|
|
||||||
// ```[LANG]...```, kramdown line_numbers = true,
|
// ```[LANG]...```, kramdown line_numbers = true,
|
||||||
// {% highlight LANG linenos %}...{% endhighlight %}:
|
// {% highlight LANG linenos %}...{% endhighlight %}:
|
||||||
|
|
||||||
|
// setting the spacing and scrollbar on the thirt level for the second case
|
||||||
.highlight .table-wrapper {
|
.highlight .table-wrapper {
|
||||||
padding: 0;
|
padding: $sp-3 0;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
border: 0;
|
border: 0;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
@@ -108,6 +187,7 @@ figure.highlight {
|
|||||||
td.gl {
|
td.gl {
|
||||||
width: 1em;
|
width: 1em;
|
||||||
padding-right: $sp-3;
|
padding-right: $sp-3;
|
||||||
|
padding-left: $sp-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
pre {
|
pre {
|
||||||
@@ -116,10 +196,7 @@ figure.highlight {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
// Code examples: html render of a code
|
||||||
// Code examples (rendered)
|
|
||||||
//
|
|
||||||
|
|
||||||
.code-example,
|
.code-example,
|
||||||
.listingblock > .title {
|
.listingblock > .title {
|
||||||
padding: $sp-3;
|
padding: $sp-3;
|
||||||
@@ -149,4 +226,21 @@ code.language-mermaid {
|
|||||||
border: 0;
|
border: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Override OneDarkJekyll Colors for Code Blocks
|
||||||
|
.highlight,
|
||||||
|
pre.highlight {
|
||||||
|
background: $code-background-color; // Code Background
|
||||||
|
// For Backwards Compatibility Before $code-linenumber-color was added
|
||||||
|
@if variable-exists(code-linenumber-color) {
|
||||||
|
color: $code-linenumber-color; // Code Line Numbers
|
||||||
|
} @else {
|
||||||
|
color: $body-text-color; // Code Line Numbers
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Override OneDarkJekyll Colors for Code Blocks
|
||||||
|
.highlight pre {
|
||||||
|
background: $code-background-color; // Code Background
|
||||||
|
}
|
||||||
|
|
||||||
// {% endraw %}
|
// {% endraw %}
|
||||||
|
@@ -1,28 +1,17 @@
|
|||||||
$body-background-color: $grey-dk-300;
|
$body-background-color: $grey-dk-300;
|
||||||
$sidebar-color: $grey-dk-300;
|
|
||||||
$border-color: $grey-dk-200;
|
|
||||||
$body-text-color: $grey-lt-300;
|
|
||||||
$body-heading-color: $grey-lt-000;
|
$body-heading-color: $grey-lt-000;
|
||||||
$nav-child-link-color: $grey-dk-000;
|
$body-text-color: $grey-lt-300;
|
||||||
$search-result-preview-color: $grey-dk-000;
|
|
||||||
$link-color: $blue-000;
|
$link-color: $blue-000;
|
||||||
$btn-primary-color: $blue-200;
|
$nav-child-link-color: $grey-dk-000;
|
||||||
|
$sidebar-color: $grey-dk-300;
|
||||||
$base-button-color: $grey-dk-250;
|
$base-button-color: $grey-dk-250;
|
||||||
$search-background-color: $grey-dk-250;
|
$btn-primary-color: $blue-200;
|
||||||
$table-background-color: $grey-dk-250;
|
$code-background-color: #31343f; // OneDarkJekyll default for syntax-one-dark-vivid
|
||||||
|
$code-linenumber-color: #dee2f7; // OneDarkJekyll .nf for syntax-one-dark-vivid
|
||||||
$feedback-color: darken($sidebar-color, 3%);
|
$feedback-color: darken($sidebar-color, 3%);
|
||||||
|
$table-background-color: $grey-dk-250;
|
||||||
|
$search-background-color: $grey-dk-250;
|
||||||
|
$search-result-preview-color: $grey-dk-000;
|
||||||
|
$border-color: $grey-dk-200;
|
||||||
|
|
||||||
// The following highlight theme is more legible than that used for the light color scheme
|
@import "./vendor/OneDarkJekyll/syntax"; // this is the one-dark-vivid atom syntax theme
|
||||||
|
|
||||||
// @import "./vendor/OneDarkJekyll/syntax-one-dark";
|
|
||||||
// $code-background-color: #282c34;
|
|
||||||
|
|
||||||
@import "./vendor/OneDarkJekyll/syntax-one-dark-vivid";
|
|
||||||
|
|
||||||
$code-background-color: #31343f;
|
|
||||||
|
|
||||||
// @import "./vendor/OneDarkJekyll/syntax-firewatch";
|
|
||||||
// $code-background-color: #282c34;
|
|
||||||
|
|
||||||
// @import "./vendor/OneDarkJekyll/syntax-firewatch-green";
|
|
||||||
// $code-background-color: #282c34;
|
|
||||||
|
208
_sass/color_schemes/legacy_light.scss
Normal file
208
_sass/color_schemes/legacy_light.scss
Normal file
@@ -0,0 +1,208 @@
|
|||||||
|
// Moved from _sass/code.scss
|
||||||
|
|
||||||
|
.highlight .c {
|
||||||
|
color: #586e75;
|
||||||
|
} // comment //
|
||||||
|
.highlight .err {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // error //
|
||||||
|
.highlight .g {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // generic //
|
||||||
|
.highlight .k {
|
||||||
|
color: #859900;
|
||||||
|
} // keyword //
|
||||||
|
.highlight .l {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // literal //
|
||||||
|
.highlight .n {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // name //
|
||||||
|
.highlight .o {
|
||||||
|
color: #859900;
|
||||||
|
} // operator //
|
||||||
|
.highlight .x {
|
||||||
|
color: #cb4b16;
|
||||||
|
} // other //
|
||||||
|
.highlight .p {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // punctuation //
|
||||||
|
.highlight .cm {
|
||||||
|
color: #586e75;
|
||||||
|
} // comment.multiline //
|
||||||
|
.highlight .cp {
|
||||||
|
color: #859900;
|
||||||
|
} // comment.preproc //
|
||||||
|
.highlight .c1 {
|
||||||
|
color: #586e75;
|
||||||
|
} // comment.single //
|
||||||
|
.highlight .cs {
|
||||||
|
color: #859900;
|
||||||
|
} // comment.special //
|
||||||
|
.highlight .gd {
|
||||||
|
color: #2aa198;
|
||||||
|
} // generic.deleted //
|
||||||
|
.highlight .ge {
|
||||||
|
font-style: italic;
|
||||||
|
color: #93a1a1;
|
||||||
|
} // generic.emph //
|
||||||
|
.highlight .gr {
|
||||||
|
color: #dc322f;
|
||||||
|
} // generic.error //
|
||||||
|
.highlight .gh {
|
||||||
|
color: #cb4b16;
|
||||||
|
} // generic.heading //
|
||||||
|
.highlight .gi {
|
||||||
|
color: #859900;
|
||||||
|
} // generic.inserted //
|
||||||
|
.highlight .go {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // generic.output //
|
||||||
|
.highlight .gp {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // generic.prompt //
|
||||||
|
.highlight .gs {
|
||||||
|
font-weight: bold;
|
||||||
|
color: #93a1a1;
|
||||||
|
} // generic.strong //
|
||||||
|
.highlight .gu {
|
||||||
|
color: #cb4b16;
|
||||||
|
} // generic.subheading //
|
||||||
|
.highlight .gt {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // generic.traceback //
|
||||||
|
.highlight .kc {
|
||||||
|
color: #cb4b16;
|
||||||
|
} // keyword.constant //
|
||||||
|
.highlight .kd {
|
||||||
|
color: #268bd2;
|
||||||
|
} // keyword.declaration //
|
||||||
|
.highlight .kn {
|
||||||
|
color: #859900;
|
||||||
|
} // keyword.namespace //
|
||||||
|
.highlight .kp {
|
||||||
|
color: #859900;
|
||||||
|
} // keyword.pseudo //
|
||||||
|
.highlight .kr {
|
||||||
|
color: #268bd2;
|
||||||
|
} // keyword.reserved //
|
||||||
|
.highlight .kt {
|
||||||
|
color: #dc322f;
|
||||||
|
} // keyword.type //
|
||||||
|
.highlight .ld {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // literal.date //
|
||||||
|
.highlight .m {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.number //
|
||||||
|
.highlight .s {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.string //
|
||||||
|
.highlight .na {
|
||||||
|
color: #555;
|
||||||
|
} // name.attribute //
|
||||||
|
.highlight .nb {
|
||||||
|
color: #b58900;
|
||||||
|
} // name.builtin //
|
||||||
|
.highlight .nc {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.class //
|
||||||
|
.highlight .no {
|
||||||
|
color: #cb4b16;
|
||||||
|
} // name.constant //
|
||||||
|
.highlight .nd {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.decorator //
|
||||||
|
.highlight .ni {
|
||||||
|
color: #cb4b16;
|
||||||
|
} // name.entity //
|
||||||
|
.highlight .ne {
|
||||||
|
color: #cb4b16;
|
||||||
|
} // name.exception //
|
||||||
|
.highlight .nf {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.function //
|
||||||
|
.highlight .nl {
|
||||||
|
color: #555;
|
||||||
|
} // name.label //
|
||||||
|
.highlight .nn {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // name.namespace //
|
||||||
|
.highlight .nx {
|
||||||
|
color: #555;
|
||||||
|
} // name.other //
|
||||||
|
.highlight .py {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // name.property //
|
||||||
|
.highlight .nt {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.tag //
|
||||||
|
.highlight .nv {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.variable //
|
||||||
|
.highlight .ow {
|
||||||
|
color: #859900;
|
||||||
|
} // operator.word //
|
||||||
|
.highlight .w {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // text.whitespace //
|
||||||
|
.highlight .mf {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.number.float //
|
||||||
|
.highlight .mh {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.number.hex //
|
||||||
|
.highlight .mi {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.number.integer //
|
||||||
|
.highlight .mo {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.number.oct //
|
||||||
|
.highlight .sb {
|
||||||
|
color: #586e75;
|
||||||
|
} // literal.string.backtick //
|
||||||
|
.highlight .sc {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.string.char //
|
||||||
|
.highlight .sd {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // literal.string.doc //
|
||||||
|
.highlight .s2 {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.string.double //
|
||||||
|
.highlight .se {
|
||||||
|
color: #cb4b16;
|
||||||
|
} // literal.string.escape //
|
||||||
|
.highlight .sh {
|
||||||
|
color: #93a1a1;
|
||||||
|
} // literal.string.heredoc //
|
||||||
|
.highlight .si {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.string.interpol //
|
||||||
|
.highlight .sx {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.string.other //
|
||||||
|
.highlight .sr {
|
||||||
|
color: #dc322f;
|
||||||
|
} // literal.string.regex //
|
||||||
|
.highlight .s1 {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.string.single //
|
||||||
|
.highlight .ss {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.string.symbol //
|
||||||
|
.highlight .bp {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.builtin.pseudo //
|
||||||
|
.highlight .vc {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.variable.class //
|
||||||
|
.highlight .vg {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.variable.global //
|
||||||
|
.highlight .vi {
|
||||||
|
color: #268bd2;
|
||||||
|
} // name.variable.instance //
|
||||||
|
.highlight .il {
|
||||||
|
color: #2aa198;
|
||||||
|
} // literal.number.integer.long //
|
@@ -1,208 +1,15 @@
|
|||||||
// Moved from _sass/code.scss
|
$body-background-color: $white !default;
|
||||||
|
$body-heading-color: $grey-dk-300 !default;
|
||||||
|
$body-text-color: $grey-dk-100 !default;
|
||||||
|
$link-color: $purple-000 !default;
|
||||||
|
$nav-child-link-color: $grey-dk-100 !default;
|
||||||
|
$sidebar-color: $grey-lt-000 !default;
|
||||||
|
$base-button-color: #f7f7f7 !default;
|
||||||
|
$btn-primary-color: $purple-100 !default;
|
||||||
|
$code-background-color: $grey-lt-000 !default;
|
||||||
|
$feedback-color: darken($sidebar-color, 3%) !default;
|
||||||
|
$table-background-color: $white !default;
|
||||||
|
$search-background-color: $white !default;
|
||||||
|
$search-result-preview-color: $grey-dk-000 !default;
|
||||||
|
|
||||||
.highlight .c {
|
@import "./vendor/OneLightJekyll/syntax";
|
||||||
color: #586e75;
|
|
||||||
} // comment //
|
|
||||||
.highlight .err {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // error //
|
|
||||||
.highlight .g {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // generic //
|
|
||||||
.highlight .k {
|
|
||||||
color: #859900;
|
|
||||||
} // keyword //
|
|
||||||
.highlight .l {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // literal //
|
|
||||||
.highlight .n {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // name //
|
|
||||||
.highlight .o {
|
|
||||||
color: #859900;
|
|
||||||
} // operator //
|
|
||||||
.highlight .x {
|
|
||||||
color: #cb4b16;
|
|
||||||
} // other //
|
|
||||||
.highlight .p {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // punctuation //
|
|
||||||
.highlight .cm {
|
|
||||||
color: #586e75;
|
|
||||||
} // comment.multiline //
|
|
||||||
.highlight .cp {
|
|
||||||
color: #859900;
|
|
||||||
} // comment.preproc //
|
|
||||||
.highlight .c1 {
|
|
||||||
color: #586e75;
|
|
||||||
} // comment.single //
|
|
||||||
.highlight .cs {
|
|
||||||
color: #859900;
|
|
||||||
} // comment.special //
|
|
||||||
.highlight .gd {
|
|
||||||
color: #2aa198;
|
|
||||||
} // generic.deleted //
|
|
||||||
.highlight .ge {
|
|
||||||
font-style: italic;
|
|
||||||
color: #93a1a1;
|
|
||||||
} // generic.emph //
|
|
||||||
.highlight .gr {
|
|
||||||
color: #dc322f;
|
|
||||||
} // generic.error //
|
|
||||||
.highlight .gh {
|
|
||||||
color: #cb4b16;
|
|
||||||
} // generic.heading //
|
|
||||||
.highlight .gi {
|
|
||||||
color: #859900;
|
|
||||||
} // generic.inserted //
|
|
||||||
.highlight .go {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // generic.output //
|
|
||||||
.highlight .gp {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // generic.prompt //
|
|
||||||
.highlight .gs {
|
|
||||||
font-weight: bold;
|
|
||||||
color: #93a1a1;
|
|
||||||
} // generic.strong //
|
|
||||||
.highlight .gu {
|
|
||||||
color: #cb4b16;
|
|
||||||
} // generic.subheading //
|
|
||||||
.highlight .gt {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // generic.traceback //
|
|
||||||
.highlight .kc {
|
|
||||||
color: #cb4b16;
|
|
||||||
} // keyword.constant //
|
|
||||||
.highlight .kd {
|
|
||||||
color: #268bd2;
|
|
||||||
} // keyword.declaration //
|
|
||||||
.highlight .kn {
|
|
||||||
color: #859900;
|
|
||||||
} // keyword.namespace //
|
|
||||||
.highlight .kp {
|
|
||||||
color: #859900;
|
|
||||||
} // keyword.pseudo //
|
|
||||||
.highlight .kr {
|
|
||||||
color: #268bd2;
|
|
||||||
} // keyword.reserved //
|
|
||||||
.highlight .kt {
|
|
||||||
color: #dc322f;
|
|
||||||
} // keyword.type //
|
|
||||||
.highlight .ld {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // literal.date //
|
|
||||||
.highlight .m {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.number //
|
|
||||||
.highlight .s {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.string //
|
|
||||||
.highlight .na {
|
|
||||||
color: #555;
|
|
||||||
} // name.attribute //
|
|
||||||
.highlight .nb {
|
|
||||||
color: #b58900;
|
|
||||||
} // name.builtin //
|
|
||||||
.highlight .nc {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.class //
|
|
||||||
.highlight .no {
|
|
||||||
color: #cb4b16;
|
|
||||||
} // name.constant //
|
|
||||||
.highlight .nd {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.decorator //
|
|
||||||
.highlight .ni {
|
|
||||||
color: #cb4b16;
|
|
||||||
} // name.entity //
|
|
||||||
.highlight .ne {
|
|
||||||
color: #cb4b16;
|
|
||||||
} // name.exception //
|
|
||||||
.highlight .nf {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.function //
|
|
||||||
.highlight .nl {
|
|
||||||
color: #555;
|
|
||||||
} // name.label //
|
|
||||||
.highlight .nn {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // name.namespace //
|
|
||||||
.highlight .nx {
|
|
||||||
color: #555;
|
|
||||||
} // name.other //
|
|
||||||
.highlight .py {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // name.property //
|
|
||||||
.highlight .nt {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.tag //
|
|
||||||
.highlight .nv {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.variable //
|
|
||||||
.highlight .ow {
|
|
||||||
color: #859900;
|
|
||||||
} // operator.word //
|
|
||||||
.highlight .w {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // text.whitespace //
|
|
||||||
.highlight .mf {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.number.float //
|
|
||||||
.highlight .mh {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.number.hex //
|
|
||||||
.highlight .mi {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.number.integer //
|
|
||||||
.highlight .mo {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.number.oct //
|
|
||||||
.highlight .sb {
|
|
||||||
color: #586e75;
|
|
||||||
} // literal.string.backtick //
|
|
||||||
.highlight .sc {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.string.char //
|
|
||||||
.highlight .sd {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // literal.string.doc //
|
|
||||||
.highlight .s2 {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.string.double //
|
|
||||||
.highlight .se {
|
|
||||||
color: #cb4b16;
|
|
||||||
} // literal.string.escape //
|
|
||||||
.highlight .sh {
|
|
||||||
color: #93a1a1;
|
|
||||||
} // literal.string.heredoc //
|
|
||||||
.highlight .si {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.string.interpol //
|
|
||||||
.highlight .sx {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.string.other //
|
|
||||||
.highlight .sr {
|
|
||||||
color: #dc322f;
|
|
||||||
} // literal.string.regex //
|
|
||||||
.highlight .s1 {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.string.single //
|
|
||||||
.highlight .ss {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.string.symbol //
|
|
||||||
.highlight .bp {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.builtin.pseudo //
|
|
||||||
.highlight .vc {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.variable.class //
|
|
||||||
.highlight .vg {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.variable.global //
|
|
||||||
.highlight .vi {
|
|
||||||
color: #268bd2;
|
|
||||||
} // name.variable.instance //
|
|
||||||
.highlight .il {
|
|
||||||
color: #2aa198;
|
|
||||||
} // literal.number.integer.long //
|
|
||||||
|
@@ -1,4 +1 @@
|
|||||||
$pink-000: #f77ef1;
|
// custom SCSS (or CSS) goes here
|
||||||
$pink-100: #f967f1;
|
|
||||||
$pink-200: #e94ee1;
|
|
||||||
$pink-300: #dd2cd4;
|
|
||||||
|
1
_sass/custom/setup.scss
Normal file
1
_sass/custom/setup.scss
Normal file
@@ -0,0 +1 @@
|
|||||||
|
// custom setup code goes here
|
@@ -3,10 +3,7 @@
|
|||||||
.label,
|
.label,
|
||||||
.label-blue {
|
.label-blue {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding-top: 0.16em;
|
padding: 0.16em 0.56em;
|
||||||
padding-right: 0.56em;
|
|
||||||
padding-bottom: 0.16em;
|
|
||||||
padding-left: 0.56em;
|
|
||||||
margin-right: $sp-2;
|
margin-right: $sp-2;
|
||||||
margin-left: $sp-2;
|
margin-left: $sp-2;
|
||||||
color: $white;
|
color: $white;
|
||||||
|
@@ -7,11 +7,10 @@
|
|||||||
background-color: $sidebar-color;
|
background-color: $sidebar-color;
|
||||||
|
|
||||||
@include mq(md) {
|
@include mq(md) {
|
||||||
flex-wrap: nowrap;
|
flex-flow: column nowrap;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
width: $nav-width-md;
|
width: $nav-width-md;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
flex-direction: column;
|
|
||||||
border-right: $border $border-color;
|
border-right: $border $border-color;
|
||||||
align-items: flex-end;
|
align-items: flex-end;
|
||||||
}
|
}
|
||||||
@@ -30,9 +29,13 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
@include mq(lg) {
|
@include mq(lg) {
|
||||||
margin-left: calc(
|
// stylelint-disable function-name-case
|
||||||
(100% - #{$nav-width + $content-width}) / 2 + #{$nav-width}
|
// disable for Max(), we want to use the CSS max() function
|
||||||
|
margin-left: Max(
|
||||||
|
#{$nav-width},
|
||||||
|
calc((100% - #{$nav-width + $content-width}) / 2 + #{$nav-width})
|
||||||
);
|
);
|
||||||
|
// stylelint-enable function-name-case
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -73,19 +73,13 @@
|
|||||||
|
|
||||||
width: $nav-list-item-height-sm;
|
width: $nav-list-item-height-sm;
|
||||||
height: $nav-list-item-height-sm;
|
height: $nav-list-item-height-sm;
|
||||||
padding-top: #{$nav-list-item-height-sm / 4};
|
padding: #{$nav-list-item-height-sm * 0.25};
|
||||||
padding-right: #{$nav-list-item-height-sm / 4};
|
|
||||||
padding-bottom: #{$nav-list-item-height-sm / 4};
|
|
||||||
padding-left: #{$nav-list-item-height-sm / 4};
|
|
||||||
color: $link-color;
|
color: $link-color;
|
||||||
|
|
||||||
@include mq(md) {
|
@include mq(md) {
|
||||||
width: $nav-list-item-height;
|
width: $nav-list-item-height;
|
||||||
height: $nav-list-item-height;
|
height: $nav-list-item-height;
|
||||||
padding-top: #{$nav-list-item-height / 4};
|
padding: #{$nav-list-item-height * 0.25};
|
||||||
padding-right: #{$nav-list-item-height / 4};
|
|
||||||
padding-bottom: #{$nav-list-item-height / 4};
|
|
||||||
padding-left: #{$nav-list-item-height / 4};
|
|
||||||
}
|
}
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
@@ -138,10 +132,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.nav-category {
|
.nav-category {
|
||||||
padding-top: $sp-2;
|
padding: $sp-2 $gutter-spacing-sm;
|
||||||
padding-right: $gutter-spacing-sm;
|
|
||||||
padding-bottom: $sp-2;
|
|
||||||
padding-left: $gutter-spacing-sm;
|
|
||||||
font-weight: 600;
|
font-weight: 600;
|
||||||
text-align: start;
|
text-align: start;
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
@@ -149,8 +140,7 @@
|
|||||||
@include fs-2;
|
@include fs-2;
|
||||||
|
|
||||||
@include mq(md) {
|
@include mq(md) {
|
||||||
padding-right: $gutter-spacing;
|
padding: $sp-2 $gutter-spacing;
|
||||||
padding-left: $gutter-spacing;
|
|
||||||
margin-top: $gutter-spacing-sm;
|
margin-top: $gutter-spacing-sm;
|
||||||
text-align: start;
|
text-align: start;
|
||||||
|
|
||||||
|
@@ -6,7 +6,7 @@
|
|||||||
flex-grow: 1;
|
flex-grow: 1;
|
||||||
height: $sp-10;
|
height: $sp-10;
|
||||||
padding: $sp-2;
|
padding: $sp-2;
|
||||||
transition: padding linear #{$transition-duration / 2};
|
transition: padding linear #{$transition-duration * 0.5};
|
||||||
|
|
||||||
@include mq(md) {
|
@include mq(md) {
|
||||||
position: relative !important;
|
position: relative !important;
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
border-radius: $border-radius;
|
border-radius: $border-radius;
|
||||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12), 0 3px 10px rgba(0, 0, 0, 0.08);
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12), 0 3px 10px rgba(0, 0, 0, 0.08);
|
||||||
transition: height linear #{$transition-duration / 2};
|
transition: height linear #{$transition-duration * 0.5};
|
||||||
|
|
||||||
@include mq(md) {
|
@include mq(md) {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@@ -41,10 +41,7 @@
|
|||||||
position: absolute;
|
position: absolute;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
padding-top: $sp-2;
|
padding: $sp-2 $gutter-spacing-sm $sp-2 #{$gutter-spacing-sm + $sp-5};
|
||||||
padding-right: $gutter-spacing-sm;
|
|
||||||
padding-bottom: $sp-2;
|
|
||||||
padding-left: #{$gutter-spacing-sm + $sp-5};
|
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
color: $body-text-color;
|
color: $body-text-color;
|
||||||
background-color: $search-background-color;
|
background-color: $search-background-color;
|
||||||
@@ -55,12 +52,10 @@
|
|||||||
border-radius: 0;
|
border-radius: 0;
|
||||||
|
|
||||||
@include mq(md) {
|
@include mq(md) {
|
||||||
padding-top: $gutter-spacing-sm;
|
padding: $sp-2 $gutter-spacing-sm $sp-2 #{$gutter-spacing + $sp-5};
|
||||||
padding-bottom: $gutter-spacing-sm;
|
|
||||||
padding-left: #{$gutter-spacing + $sp-5};
|
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
background-color: $body-background-color;
|
background-color: $body-background-color;
|
||||||
transition: padding-left linear #{$transition-duration / 2};
|
transition: padding-left linear #{$transition-duration * 0.5};
|
||||||
}
|
}
|
||||||
|
|
||||||
&:focus {
|
&:focus {
|
||||||
@@ -80,7 +75,7 @@
|
|||||||
|
|
||||||
@include mq(md) {
|
@include mq(md) {
|
||||||
padding-left: $gutter-spacing;
|
padding-left: $gutter-spacing;
|
||||||
transition: padding-left linear #{$transition-duration / 2};
|
transition: padding-left linear #{$transition-duration * 0.5};
|
||||||
}
|
}
|
||||||
|
|
||||||
.search-icon {
|
.search-icon {
|
||||||
@@ -128,10 +123,7 @@
|
|||||||
|
|
||||||
.search-result {
|
.search-result {
|
||||||
display: block;
|
display: block;
|
||||||
padding-top: $sp-1;
|
padding: $sp-1 $sp-3;
|
||||||
padding-right: $sp-3;
|
|
||||||
padding-bottom: $sp-1;
|
|
||||||
padding-left: $sp-3;
|
|
||||||
|
|
||||||
&:hover,
|
&:hover,
|
||||||
&.active {
|
&.active {
|
||||||
@@ -224,10 +216,7 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
.search-no-result {
|
.search-no-result {
|
||||||
padding-top: $sp-2;
|
padding: $sp-2 $sp-3;
|
||||||
padding-right: $sp-3;
|
|
||||||
padding-bottom: $sp-2;
|
|
||||||
padding-left: $sp-3;
|
|
||||||
@include fs-3;
|
@include fs-3;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -240,7 +229,7 @@
|
|||||||
height: $sp-9;
|
height: $sp-9;
|
||||||
background-color: $search-background-color;
|
background-color: $search-background-color;
|
||||||
border: 1px solid rgba($link-color, 0.3);
|
border: 1px solid rgba($link-color, 0.3);
|
||||||
border-radius: #{$sp-9 / 2};
|
border-radius: #{$sp-9 * 0.5};
|
||||||
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12), 0 3px 10px rgba(0, 0, 0, 0.08);
|
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12), 0 3px 10px rgba(0, 0, 0, 0.08);
|
||||||
align-items: center;
|
align-items: center;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
|
@@ -56,19 +56,6 @@ $red-000: #f77e7e !default;
|
|||||||
$red-100: #f96e65 !default;
|
$red-100: #f96e65 !default;
|
||||||
$red-200: #e94c4c !default;
|
$red-200: #e94c4c !default;
|
||||||
$red-300: #dd2e2e !default;
|
$red-300: #dd2e2e !default;
|
||||||
$body-background-color: $white !default;
|
|
||||||
$sidebar-color: $grey-lt-000 !default;
|
|
||||||
$search-background-color: $white !default;
|
|
||||||
$table-background-color: $white !default;
|
|
||||||
$code-background-color: $grey-lt-000 !default;
|
|
||||||
$feedback-color: darken($sidebar-color, 3%) !default;
|
|
||||||
$body-text-color: $grey-dk-100 !default;
|
|
||||||
$body-heading-color: $grey-dk-300 !default;
|
|
||||||
$search-result-preview-color: $grey-dk-000 !default;
|
|
||||||
$nav-child-link-color: $grey-dk-100 !default;
|
|
||||||
$link-color: $purple-000 !default;
|
|
||||||
$btn-primary-color: $purple-100 !default;
|
|
||||||
$base-button-color: #f7f7f7 !default;
|
|
||||||
|
|
||||||
// Spacing
|
// Spacing
|
||||||
|
|
||||||
|
@@ -16,8 +16,7 @@
|
|||||||
@content;
|
@content;
|
||||||
}
|
}
|
||||||
} @else {
|
} @else {
|
||||||
@warn "No value could be retrieved from `#{$media-query}`. "
|
@warn "No value could be retrieved from `#{$media-query}`. Please make sure it is defined in `$media-queries` map.";
|
||||||
+ "Please make sure it is defined in `$media-queries` map.";
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -22,10 +22,7 @@ td {
|
|||||||
@include fs-3;
|
@include fs-3;
|
||||||
|
|
||||||
min-width: 120px;
|
min-width: 120px;
|
||||||
padding-top: $sp-2;
|
padding: $sp-2 $sp-3;
|
||||||
padding-right: $sp-3;
|
|
||||||
padding-bottom: $sp-2;
|
|
||||||
padding-left: $sp-3;
|
|
||||||
background-color: $table-background-color;
|
background-color: $table-background-color;
|
||||||
border-bottom: $border rgba($border-color, 0.5);
|
border-bottom: $border rgba($border-color, 0.5);
|
||||||
border-left: $border $border-color;
|
border-left: $border $border-color;
|
||||||
|
@@ -1,5 +1,4 @@
|
|||||||
// Typography
|
// Typography
|
||||||
|
|
||||||
// stylelint-disable selector-no-type, selector-max-type, selector-max-specificity, selector-max-id
|
// stylelint-disable selector-no-type, selector-max-type, selector-max-specificity, selector-max-id
|
||||||
|
|
||||||
h1,
|
h1,
|
||||||
|
25
_sass/vendor/OneDarkJekyll/README.md
vendored
25
_sass/vendor/OneDarkJekyll/README.md
vendored
@@ -1,25 +0,0 @@
|
|||||||
# OneDarkJekyll
|
|
||||||
|
|
||||||
*Use Atom's One Dark syntax colors in your Jekyll powered blog!*
|
|
||||||
|
|
||||||
It's LESS file which can be compiled to a - Pygments, Rouge compatible - stylesheet from Atom editor's One Dark syntax theme (and any theme based on it, for example One Dark Vivid, Firewatch, etc.).
|
|
||||||
|
|
||||||
Download the stylesheet files or compile a new one from any Atom syntax theme which based on One Dark (the variable names in `colors.less` must match with One Dark's)
|
|
||||||
|
|
||||||
## Create a new syntax stylesheet
|
|
||||||
|
|
||||||
1. `npm install -g less less-plugin-clean-css`
|
|
||||||
2. Clone this repository
|
|
||||||
3. Download the `colors.css` file from the syntax theme's repository (for example https://github.com/atom/one-dark-syntax/blob/master/styles/colors.less in case of One-Dark)
|
|
||||||
4. Put the previously downloaded file next to `syntax.less`
|
|
||||||
5. Run `lessc syntax.less syntax.css --clean-css`
|
|
||||||
6. Use the `syntax.css`
|
|
||||||
|
|
||||||
It's not final and in case you find any error/improvement feel free to create a PR. :)
|
|
||||||
|
|
||||||
----
|
|
||||||
|
|
||||||
# UPDATES FOR USE IN JUST-THE-DOCS:
|
|
||||||
|
|
||||||
1. Layout added in `*.css`
|
|
||||||
2. Renamed `*.css` to `*.scss`
|
|
30
_sass/vendor/OneDarkJekyll/colors.less
vendored
30
_sass/vendor/OneDarkJekyll/colors.less
vendored
@@ -1,30 +0,0 @@
|
|||||||
// Config -----------------------------------
|
|
||||||
@syntax-hue: 220;
|
|
||||||
@syntax-saturation: 13%;
|
|
||||||
@syntax-brightness: 18%;
|
|
||||||
|
|
||||||
|
|
||||||
// Monochrome -----------------------------------
|
|
||||||
@mono-1: hsl(@syntax-hue, 14%, 71%); // default text
|
|
||||||
@mono-2: hsl(@syntax-hue, 9%, 55%);
|
|
||||||
@mono-3: hsl(@syntax-hue, 10%, 40%);
|
|
||||||
|
|
||||||
// Colors -----------------------------------
|
|
||||||
@hue-1: hsl(187, 47%, 55%); // <-cyan
|
|
||||||
@hue-2: hsl(207, 82%, 66%); // <-blue
|
|
||||||
@hue-3: hsl(286, 60%, 67%); // <-purple
|
|
||||||
@hue-4: hsl( 95, 38%, 62%); // <-green
|
|
||||||
|
|
||||||
@hue-5: hsl(355, 65%, 65%); // <-red 1
|
|
||||||
@hue-5-2: hsl( 5, 48%, 51%); // <-red 2
|
|
||||||
|
|
||||||
@hue-6: hsl( 29, 54%, 61%); // <-orange 1
|
|
||||||
@hue-6-2: hsl( 39, 67%, 69%); // <-orange 2
|
|
||||||
|
|
||||||
|
|
||||||
// Base colors -----------------------------------
|
|
||||||
@syntax-fg: @mono-1;
|
|
||||||
@syntax-bg: hsl(@syntax-hue, @syntax-saturation, @syntax-brightness);
|
|
||||||
@syntax-gutter: darken(@syntax-fg, 26%);
|
|
||||||
@syntax-guide: fade(@syntax-fg, 15%);
|
|
||||||
@syntax-accent: hsl(@syntax-hue, 100%, 66% );
|
|
200
_sass/vendor/OneDarkJekyll/syntax-firewatch.scss
vendored
200
_sass/vendor/OneDarkJekyll/syntax-firewatch.scss
vendored
@@ -1,200 +0,0 @@
|
|||||||
.highlight,
|
|
||||||
pre.highlight {
|
|
||||||
background: #282c34;
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight pre {
|
|
||||||
background: #282c34;
|
|
||||||
}
|
|
||||||
.highlight .hll {
|
|
||||||
background: #282c34;
|
|
||||||
}
|
|
||||||
.highlight .c {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .err {
|
|
||||||
color: #960050;
|
|
||||||
background-color: #1e0010;
|
|
||||||
}
|
|
||||||
.highlight .k {
|
|
||||||
color: #dd672c;
|
|
||||||
}
|
|
||||||
.highlight .l {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .n {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .o {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .p {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .cm {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .cp {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .c1 {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .cs {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .ge {
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .gs {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
.highlight .kc {
|
|
||||||
color: #dd672c;
|
|
||||||
}
|
|
||||||
.highlight .kd {
|
|
||||||
color: #dd672c;
|
|
||||||
}
|
|
||||||
.highlight .kn {
|
|
||||||
color: #dd672c;
|
|
||||||
}
|
|
||||||
.highlight .kp {
|
|
||||||
color: #dd672c;
|
|
||||||
}
|
|
||||||
.highlight .kr {
|
|
||||||
color: #dd672c;
|
|
||||||
}
|
|
||||||
.highlight .kt {
|
|
||||||
color: #dd672c;
|
|
||||||
}
|
|
||||||
.highlight .ld {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .m {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .s {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .na {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .nb {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nc {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .no {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nd {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .ni {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .ne {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nf {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .nl {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nn {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .nx {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .py {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nt {
|
|
||||||
color: #e06c75;
|
|
||||||
}
|
|
||||||
.highlight .nv {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .ow {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
.highlight .w {
|
|
||||||
color: #f8f8f2;
|
|
||||||
}
|
|
||||||
.highlight .mf {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .mh {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .mi {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .mo {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .sb {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .sc {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .sd {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .s2 {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .se {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .sh {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .si {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .sx {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .sr {
|
|
||||||
color: #56b6c2;
|
|
||||||
}
|
|
||||||
.highlight .s1 {
|
|
||||||
color: #c8ae9d;
|
|
||||||
}
|
|
||||||
.highlight .ss {
|
|
||||||
color: #56b6c2;
|
|
||||||
}
|
|
||||||
.highlight .bp {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .vc {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .vg {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .vi {
|
|
||||||
color: #e06c75;
|
|
||||||
}
|
|
||||||
.highlight .il {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .gu {
|
|
||||||
color: #75715e;
|
|
||||||
}
|
|
||||||
.highlight .gd {
|
|
||||||
color: #f92672;
|
|
||||||
}
|
|
||||||
.highlight .gi {
|
|
||||||
color: #a6e22e;
|
|
||||||
}
|
|
200
_sass/vendor/OneDarkJekyll/syntax-one-dark.scss
vendored
200
_sass/vendor/OneDarkJekyll/syntax-one-dark.scss
vendored
@@ -1,200 +0,0 @@
|
|||||||
.highlight,
|
|
||||||
pre.highlight {
|
|
||||||
background: #282c34;
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight pre {
|
|
||||||
background: #282c34;
|
|
||||||
}
|
|
||||||
.highlight .hll {
|
|
||||||
background: #282c34;
|
|
||||||
}
|
|
||||||
.highlight .c {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .err {
|
|
||||||
color: #960050;
|
|
||||||
background-color: #1e0010;
|
|
||||||
}
|
|
||||||
.highlight .k {
|
|
||||||
color: #c678dd;
|
|
||||||
}
|
|
||||||
.highlight .l {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .n {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .o {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .p {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .cm {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .cp {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .c1 {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .cs {
|
|
||||||
color: #5c6370;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .ge {
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
.highlight .gs {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
.highlight .kc {
|
|
||||||
color: #c678dd;
|
|
||||||
}
|
|
||||||
.highlight .kd {
|
|
||||||
color: #c678dd;
|
|
||||||
}
|
|
||||||
.highlight .kn {
|
|
||||||
color: #c678dd;
|
|
||||||
}
|
|
||||||
.highlight .kp {
|
|
||||||
color: #c678dd;
|
|
||||||
}
|
|
||||||
.highlight .kr {
|
|
||||||
color: #c678dd;
|
|
||||||
}
|
|
||||||
.highlight .kt {
|
|
||||||
color: #c678dd;
|
|
||||||
}
|
|
||||||
.highlight .ld {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .m {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .s {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .na {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .nb {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nc {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .no {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nd {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .ni {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .ne {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nf {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .nl {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nn {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .nx {
|
|
||||||
color: #abb2bf;
|
|
||||||
}
|
|
||||||
.highlight .py {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .nt {
|
|
||||||
color: #e06c75;
|
|
||||||
}
|
|
||||||
.highlight .nv {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .ow {
|
|
||||||
font-weight: 700;
|
|
||||||
}
|
|
||||||
.highlight .w {
|
|
||||||
color: #f8f8f2;
|
|
||||||
}
|
|
||||||
.highlight .mf {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .mh {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .mi {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .mo {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .sb {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .sc {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .sd {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .s2 {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .se {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .sh {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .si {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .sx {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .sr {
|
|
||||||
color: #56b6c2;
|
|
||||||
}
|
|
||||||
.highlight .s1 {
|
|
||||||
color: #98c379;
|
|
||||||
}
|
|
||||||
.highlight .ss {
|
|
||||||
color: #56b6c2;
|
|
||||||
}
|
|
||||||
.highlight .bp {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .vc {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .vg {
|
|
||||||
color: #e5c07b;
|
|
||||||
}
|
|
||||||
.highlight .vi {
|
|
||||||
color: #e06c75;
|
|
||||||
}
|
|
||||||
.highlight .il {
|
|
||||||
color: #d19a66;
|
|
||||||
}
|
|
||||||
.highlight .gu {
|
|
||||||
color: #75715e;
|
|
||||||
}
|
|
||||||
.highlight .gd {
|
|
||||||
color: #f92672;
|
|
||||||
}
|
|
||||||
.highlight .gi {
|
|
||||||
color: #a6e22e;
|
|
||||||
}
|
|
56
_sass/vendor/OneDarkJekyll/syntax-variables.less
vendored
56
_sass/vendor/OneDarkJekyll/syntax-variables.less
vendored
@@ -1,56 +0,0 @@
|
|||||||
@import "colors.less";
|
|
||||||
|
|
||||||
// Official Syntax Variables -----------------------------------
|
|
||||||
|
|
||||||
// General colors
|
|
||||||
@syntax-text-color: @syntax-fg;
|
|
||||||
@syntax-cursor-color: @syntax-accent;
|
|
||||||
@syntax-selection-color: lighten(@syntax-background-color, 10%);
|
|
||||||
@syntax-selection-flash-color: @syntax-accent;
|
|
||||||
@syntax-background-color: @syntax-bg;
|
|
||||||
|
|
||||||
// Guide colors
|
|
||||||
@syntax-wrap-guide-color: @syntax-guide;
|
|
||||||
@syntax-indent-guide-color: @syntax-guide;
|
|
||||||
@syntax-invisible-character-color: @syntax-guide;
|
|
||||||
|
|
||||||
// For find and replace markers
|
|
||||||
@syntax-result-marker-color: fade(@syntax-accent, 24%);
|
|
||||||
@syntax-result-marker-color-selected: @syntax-accent;
|
|
||||||
|
|
||||||
// Gutter colors
|
|
||||||
@syntax-gutter-text-color: @syntax-gutter;
|
|
||||||
@syntax-gutter-text-color-selected: @syntax-fg;
|
|
||||||
@syntax-gutter-background-color: @syntax-bg; // unused
|
|
||||||
@syntax-gutter-background-color-selected: lighten(@syntax-bg, 2%);
|
|
||||||
|
|
||||||
// Git colors - For git diff info. i.e. in the gutter
|
|
||||||
@syntax-color-renamed: hsl(208, 100%, 60%);
|
|
||||||
@syntax-color-added: hsl(150, 60%, 54%);
|
|
||||||
@syntax-color-modified: hsl(40, 60%, 70%);
|
|
||||||
@syntax-color-removed: hsl(0, 70%, 60%);
|
|
||||||
|
|
||||||
// For language entity colors
|
|
||||||
@syntax-color-variable: @hue-5;
|
|
||||||
@syntax-color-constant: @hue-6;
|
|
||||||
@syntax-color-property: @syntax-fg;
|
|
||||||
@syntax-color-value: @syntax-fg;
|
|
||||||
@syntax-color-function: @hue-2;
|
|
||||||
@syntax-color-method: @hue-2;
|
|
||||||
@syntax-color-class: @hue-6-2;
|
|
||||||
@syntax-color-keyword: @hue-3;
|
|
||||||
@syntax-color-tag: @hue-5;
|
|
||||||
@syntax-color-attribute: @hue-6;
|
|
||||||
@syntax-color-import: @hue-3;
|
|
||||||
@syntax-color-snippet: @hue-4;
|
|
||||||
|
|
||||||
|
|
||||||
// Custom Syntax Variables -----------------------------------
|
|
||||||
// Don't use in packages
|
|
||||||
|
|
||||||
@syntax-cursor-line: hsla(@syntax-hue, 100%, 80%, .04); // needs to be semi-transparent to show search results
|
|
||||||
|
|
||||||
@syntax-deprecated-fg: darken(@syntax-color-modified, 50%);
|
|
||||||
@syntax-deprecated-bg: @syntax-color-modified;
|
|
||||||
@syntax-illegal-fg: white;
|
|
||||||
@syntax-illegal-bg: @syntax-color-removed;
|
|
93
_sass/vendor/OneDarkJekyll/syntax.less
vendored
93
_sass/vendor/OneDarkJekyll/syntax.less
vendored
@@ -1,93 +0,0 @@
|
|||||||
/*
|
|
||||||
LESS for Pygments
|
|
||||||
*/
|
|
||||||
|
|
||||||
@import "syntax-variables.less";
|
|
||||||
|
|
||||||
pre.highlight,
|
|
||||||
.highlight {
|
|
||||||
background: @syntax-bg;
|
|
||||||
color: @mono-1;
|
|
||||||
}
|
|
||||||
.highlight {
|
|
||||||
pre { background: @syntax-bg; }
|
|
||||||
.hll { background: @syntax-bg; }
|
|
||||||
.c { color: @mono-3; font-style: italic; } /* Comment */
|
|
||||||
.err { color: @syntax-illegal-fg; background-color: @syntax-illegal-bg; } /* Error */
|
|
||||||
.k { color: @hue-3; } /* Keyword */
|
|
||||||
.l { color: @hue-4; } /* Literal */
|
|
||||||
.n { color: @mono-1; } /* Name */
|
|
||||||
.o { color: @mono-1; } /* Operator */
|
|
||||||
.p { color: @mono-1; } /* Punctuation */
|
|
||||||
.cm { color: @mono-3; font-style: italic; } /* Comment.Multiline */
|
|
||||||
.cp { color: @mono-3; font-style: italic; } /* Comment.Preproc */
|
|
||||||
.c1 { color: @mono-3; font-style: italic; } /* Comment.Single */
|
|
||||||
.cs { color: @mono-3; font-style: italic; } /* Comment.Special */
|
|
||||||
.ge { font-style: italic } /* Generic.Emph */
|
|
||||||
.gs { font-weight: bold } /* Generic.Strong */
|
|
||||||
.kc { color: @hue-3; } /* Keyword.Constant */
|
|
||||||
.kd { color: @hue-3; } /* Keyword.Declaration */
|
|
||||||
.kn { color: @hue-3; } /* Keyword.Namespace */
|
|
||||||
.kp { color: @hue-3; } /* Keyword.Pseudo */
|
|
||||||
.kr { color: @hue-3; } /* Keyword.Reserved */
|
|
||||||
.kt { color: @hue-3; } /* Keyword.Type */
|
|
||||||
.ld { color: @hue-4; } /* Literal.Date */
|
|
||||||
.m { color: @hue-6; } /* Literal.Number */
|
|
||||||
.s { color: @hue-4; } /* Literal.String */
|
|
||||||
.na { color: @hue-6; } /* Name.Attribute */
|
|
||||||
.nb { color: @hue-6-2; } /* Name.Builtin */
|
|
||||||
.nc { color: @hue-6-2; } /* Name.Class */
|
|
||||||
.no { color: @hue-6-2; } /* Name.Constant */
|
|
||||||
.nd { color: @hue-6-2; } /* Name.Decorator */
|
|
||||||
.ni { color: @hue-6-2; } /* Name.Entity */
|
|
||||||
.ne { color: @hue-6-2; } /* Name.Exception */
|
|
||||||
.nf { color: @mono-1; } /* Name.Function */
|
|
||||||
.nl { color: @hue-6-2; } /* Name.Label */
|
|
||||||
.nn { color: @mono-1; } /* Name.Namespace */
|
|
||||||
.nx { color: @mono-1; } /* Name.Other */
|
|
||||||
.py { color: @hue-6-2; } /* Name.Property */
|
|
||||||
.nt { color: @hue-5; } /* Name.Tag */
|
|
||||||
.nv { color: @hue-6-2; } /* Name.Variable */
|
|
||||||
.ow { font-weight: bold; } /* Operator.Word */
|
|
||||||
.w { color: #f8f8f2 } /* Text.Whitespace */
|
|
||||||
.mf { color: @hue-6; } /* Literal.Number.Float */
|
|
||||||
.mh { color: @hue-6; } /* Literal.Number.Hex */
|
|
||||||
.mi { color: @hue-6; } /* Literal.Number.Integer */
|
|
||||||
.mo { color: @hue-6; } /* Literal.Number.Oct */
|
|
||||||
.sb { color: @hue-4; } /* Literal.String.Backtick */
|
|
||||||
.sc { color: @hue-4; } /* Literal.String.Char */
|
|
||||||
.sd { color: @hue-4; } /* Literal.String.Doc */
|
|
||||||
.s2 { color: @hue-4; } /* Literal.String.Double */
|
|
||||||
.se { color: @hue-4; } /* Literal.String.Escape */
|
|
||||||
.sh { color: @hue-4; } /* Literal.String.Heredoc */
|
|
||||||
.si { color: @hue-4; } /* Literal.String.Interpol */
|
|
||||||
.sx { color: @hue-4; } /* Literal.String.Other */
|
|
||||||
.sr { color: @hue-1; } /* Literal.String.Regex */
|
|
||||||
.s1 { color: @hue-4; } /* Literal.String.Single */
|
|
||||||
.ss { color: @hue-1; } /* Literal.String.Symbol */
|
|
||||||
.bp { color: @hue-6-2; } /* Name.Builtin.Pseudo */
|
|
||||||
.vc { color: @hue-6-2; } /* Name.Variable.Class */
|
|
||||||
.vg { color: @hue-6-2; } /* Name.Variable.Global */
|
|
||||||
.vi { color: @hue-5; } /* Name.Variable.Instance */
|
|
||||||
.il { color: @hue-6; } /* Literal.Number.Integer.Long */
|
|
||||||
|
|
||||||
.gh { } /* Generic Heading & Diff Header */
|
|
||||||
.gu { color: #75715e; } /* Generic.Subheading & Diff Unified/Comment? */
|
|
||||||
.gd { color: @syntax-color-removed; } /* Generic.Deleted & Diff Deleted */
|
|
||||||
.gi { color: @syntax-color-added; } /* Generic.Inserted & Diff Inserted */
|
|
||||||
|
|
||||||
::selection { background-color: @syntax-selection-color; }
|
|
||||||
|
|
||||||
.language-json {
|
|
||||||
.w + .s2 { color: @hue-5; }
|
|
||||||
.kc { color: @hue-1; }
|
|
||||||
}
|
|
||||||
|
|
||||||
.language-python {
|
|
||||||
// python related modifications
|
|
||||||
}
|
|
||||||
|
|
||||||
.language-csharp {
|
|
||||||
// csharp related modifications
|
|
||||||
}
|
|
||||||
}
|
|
@@ -1,3 +1,5 @@
|
|||||||
|
// Generated with OneDarkJekyll applied to Atom's One Dark Vivid theme
|
||||||
|
|
||||||
.highlight,
|
.highlight,
|
||||||
pre.highlight {
|
pre.highlight {
|
||||||
background: #31343f;
|
background: #31343f;
|
65
_sass/vendor/OneLightJekyll/LICENSE
vendored
Normal file
65
_sass/vendor/OneLightJekyll/LICENSE
vendored
Normal file
@@ -0,0 +1,65 @@
|
|||||||
|
OneLightJekyll relies on two works: OneDarkJekyll, and Atom's One Light theme. This file contains the licensing for all the related software.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
OneLightJekyll (https://github.com/just-the-docs/OneLightJekyll/blob/main/LICENSE)
|
||||||
|
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2023 Matthew Wang
|
||||||
|
|
||||||
|
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 NONINFRINGEMENT. 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.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
OneDarkJekyll (https://github.com/mgyongyosi/OneDarkJekyll/blob/master/LICENSE)
|
||||||
|
|
||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2016 Mihály Gyöngyösi
|
||||||
|
|
||||||
|
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 NONINFRINGEMENT. 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.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Atom One Light (https://github.com/atom/atom/blob/master/LICENSE.md)
|
||||||
|
|
||||||
|
Copyright (c) 2011-2022 GitHub Inc.
|
||||||
|
|
||||||
|
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 NONINFRINGEMENT. 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.
|
@@ -1,51 +1,53 @@
|
|||||||
|
// Generated with OneLightJekyll applied to Atom's One Light theme
|
||||||
|
|
||||||
.highlight,
|
.highlight,
|
||||||
pre.highlight {
|
pre.highlight {
|
||||||
background: #282c34;
|
background: #f9f9f9;
|
||||||
color: #abb2bf;
|
color: #383942;
|
||||||
}
|
}
|
||||||
.highlight pre {
|
.highlight pre {
|
||||||
background: #282c34;
|
background: #f9f9f9;
|
||||||
}
|
}
|
||||||
.highlight .hll {
|
.highlight .hll {
|
||||||
background: #282c34;
|
background: #f9f9f9;
|
||||||
}
|
}
|
||||||
.highlight .c {
|
.highlight .c {
|
||||||
color: #5c6370;
|
color: #9fa0a6;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
.highlight .err {
|
.highlight .err {
|
||||||
color: #960050;
|
color: #fff;
|
||||||
background-color: #1e0010;
|
background-color: #e05151;
|
||||||
}
|
}
|
||||||
.highlight .k {
|
.highlight .k {
|
||||||
color: #5ba473;
|
color: #a625a4;
|
||||||
}
|
}
|
||||||
.highlight .l {
|
.highlight .l {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .n {
|
.highlight .n {
|
||||||
color: #abb2bf;
|
color: #383942;
|
||||||
}
|
}
|
||||||
.highlight .o {
|
.highlight .o {
|
||||||
color: #abb2bf;
|
color: #383942;
|
||||||
}
|
}
|
||||||
.highlight .p {
|
.highlight .p {
|
||||||
color: #abb2bf;
|
color: #383942;
|
||||||
}
|
}
|
||||||
.highlight .cm {
|
.highlight .cm {
|
||||||
color: #5c6370;
|
color: #9fa0a6;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
.highlight .cp {
|
.highlight .cp {
|
||||||
color: #5c6370;
|
color: #9fa0a6;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
.highlight .c1 {
|
.highlight .c1 {
|
||||||
color: #5c6370;
|
color: #9fa0a6;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
.highlight .cs {
|
.highlight .cs {
|
||||||
color: #5c6370;
|
color: #9fa0a6;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
.highlight .ge {
|
.highlight .ge {
|
||||||
@@ -55,73 +57,73 @@ pre.highlight {
|
|||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
}
|
}
|
||||||
.highlight .kc {
|
.highlight .kc {
|
||||||
color: #5ba473;
|
color: #a625a4;
|
||||||
}
|
}
|
||||||
.highlight .kd {
|
.highlight .kd {
|
||||||
color: #5ba473;
|
color: #a625a4;
|
||||||
}
|
}
|
||||||
.highlight .kn {
|
.highlight .kn {
|
||||||
color: #5ba473;
|
color: #a625a4;
|
||||||
}
|
}
|
||||||
.highlight .kp {
|
.highlight .kp {
|
||||||
color: #5ba473;
|
color: #a625a4;
|
||||||
}
|
}
|
||||||
.highlight .kr {
|
.highlight .kr {
|
||||||
color: #5ba473;
|
color: #a625a4;
|
||||||
}
|
}
|
||||||
.highlight .kt {
|
.highlight .kt {
|
||||||
color: #5ba473;
|
color: #a625a4;
|
||||||
}
|
}
|
||||||
.highlight .ld {
|
.highlight .ld {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .m {
|
.highlight .m {
|
||||||
color: #d19a66;
|
color: #b66a00;
|
||||||
}
|
}
|
||||||
.highlight .s {
|
.highlight .s {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .na {
|
.highlight .na {
|
||||||
color: #d19a66;
|
color: #b66a00;
|
||||||
}
|
}
|
||||||
.highlight .nb {
|
.highlight .nb {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .nc {
|
.highlight .nc {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .no {
|
.highlight .no {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .nd {
|
.highlight .nd {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .ni {
|
.highlight .ni {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .ne {
|
.highlight .ne {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .nf {
|
.highlight .nf {
|
||||||
color: #abb2bf;
|
color: #383942;
|
||||||
}
|
}
|
||||||
.highlight .nl {
|
.highlight .nl {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .nn {
|
.highlight .nn {
|
||||||
color: #abb2bf;
|
color: #383942;
|
||||||
}
|
}
|
||||||
.highlight .nx {
|
.highlight .nx {
|
||||||
color: #abb2bf;
|
color: #383942;
|
||||||
}
|
}
|
||||||
.highlight .py {
|
.highlight .py {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .nt {
|
.highlight .nt {
|
||||||
color: #77b181;
|
color: #e35549;
|
||||||
}
|
}
|
||||||
.highlight .nv {
|
.highlight .nv {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .ow {
|
.highlight .ow {
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
@@ -130,71 +132,77 @@ pre.highlight {
|
|||||||
color: #f8f8f2;
|
color: #f8f8f2;
|
||||||
}
|
}
|
||||||
.highlight .mf {
|
.highlight .mf {
|
||||||
color: #d19a66;
|
color: #b66a00;
|
||||||
}
|
}
|
||||||
.highlight .mh {
|
.highlight .mh {
|
||||||
color: #d19a66;
|
color: #b66a00;
|
||||||
}
|
}
|
||||||
.highlight .mi {
|
.highlight .mi {
|
||||||
color: #d19a66;
|
color: #b66a00;
|
||||||
}
|
}
|
||||||
.highlight .mo {
|
.highlight .mo {
|
||||||
color: #d19a66;
|
color: #b66a00;
|
||||||
}
|
}
|
||||||
.highlight .sb {
|
.highlight .sb {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .sc {
|
.highlight .sc {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .sd {
|
.highlight .sd {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .s2 {
|
.highlight .s2 {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .se {
|
.highlight .se {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .sh {
|
.highlight .sh {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .si {
|
.highlight .si {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .sx {
|
.highlight .sx {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .sr {
|
.highlight .sr {
|
||||||
color: #56b6c2;
|
color: #0083bb;
|
||||||
}
|
}
|
||||||
.highlight .s1 {
|
.highlight .s1 {
|
||||||
color: #c8ae9d;
|
color: #50a04f;
|
||||||
}
|
}
|
||||||
.highlight .ss {
|
.highlight .ss {
|
||||||
color: #56b6c2;
|
color: #0083bb;
|
||||||
}
|
}
|
||||||
.highlight .bp {
|
.highlight .bp {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .vc {
|
.highlight .vc {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .vg {
|
.highlight .vg {
|
||||||
color: #e5c07b;
|
color: #ca7601;
|
||||||
}
|
}
|
||||||
.highlight .vi {
|
.highlight .vi {
|
||||||
color: #77b181;
|
color: #e35549;
|
||||||
}
|
}
|
||||||
.highlight .il {
|
.highlight .il {
|
||||||
color: #d19a66;
|
color: #b66a00;
|
||||||
}
|
}
|
||||||
.highlight .gu {
|
.highlight .gu {
|
||||||
color: #75715e;
|
color: #75715e;
|
||||||
}
|
}
|
||||||
.highlight .gd {
|
.highlight .gd {
|
||||||
color: #f92672;
|
color: #e05151;
|
||||||
}
|
}
|
||||||
.highlight .gi {
|
.highlight .gi {
|
||||||
color: #a6e22e;
|
color: #43d089;
|
||||||
|
}
|
||||||
|
.highlight .language-json .w + .s2 {
|
||||||
|
color: #e35549;
|
||||||
|
}
|
||||||
|
.highlight .language-json .kc {
|
||||||
|
color: #0083bb;
|
||||||
}
|
}
|
Binary file not shown.
Before Width: | Height: | Size: 20 KiB |
@@ -1 +0,0 @@
|
|||||||
<svg width="28" height="28" viewBox="0 0 28 28" xmlns="http://www.w3.org/2000/svg"><title>Search</title><g fill-rule="nonzero" fill="#959396"><path d="M17.332 20.735c-5.537 0-10-4.6-10-10.247 0-5.646 4.463-10.247 10-10.247 5.536 0 10 4.601 10 10.247s-4.464 10.247-10 10.247zm0-4c3.3 0 6-2.783 6-6.247 0-3.463-2.7-6.247-6-6.247s-6 2.784-6 6.247c0 3.464 2.7 6.247 6 6.247z"/><path d="M11.672 13.791L.192 25.271 3.02 28.1 14.5 16.62z"/></g></svg>
|
|
Before Width: | Height: | Size: 444 B |
@@ -31,7 +31,7 @@ function initNav() {
|
|||||||
}
|
}
|
||||||
if (target) {
|
if (target) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
target.parentNode.classList.toggle('active');
|
target.ariaPressed = target.parentNode.classList.toggle('active');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -45,9 +45,11 @@ function initNav() {
|
|||||||
if (menuButton.classList.toggle('nav-open')) {
|
if (menuButton.classList.toggle('nav-open')) {
|
||||||
siteNav.classList.add('nav-open');
|
siteNav.classList.add('nav-open');
|
||||||
mainHeader.classList.add('nav-open');
|
mainHeader.classList.add('nav-open');
|
||||||
|
menuButton.ariaPressed = true;
|
||||||
} else {
|
} else {
|
||||||
siteNav.classList.remove('nav-open');
|
siteNav.classList.remove('nav-open');
|
||||||
mainHeader.classList.remove('nav-open');
|
mainHeader.classList.remove('nav-open');
|
||||||
|
menuButton.ariaPressed = false;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -74,7 +76,7 @@ function initSearch() {
|
|||||||
request.onload = function(){
|
request.onload = function(){
|
||||||
if (request.status >= 200 && request.status < 400) {
|
if (request.status >= 200 && request.status < 400) {
|
||||||
var docs = JSON.parse(request.responseText);
|
var docs = JSON.parse(request.responseText);
|
||||||
|
|
||||||
lunr.tokenizer.separator = {{ site.search.tokenizer_separator | default: site.search_tokenizer_separator | default: "/[\s\-/]+/" }}
|
lunr.tokenizer.separator = {{ site.search.tokenizer_separator | default: site.search_tokenizer_separator | default: "/[\s\-/]+/" }}
|
||||||
|
|
||||||
var index = lunr(function(){
|
var index = lunr(function(){
|
||||||
@@ -87,6 +89,7 @@ function initSearch() {
|
|||||||
this.metadataWhitelist = ['position']
|
this.metadataWhitelist = ['position']
|
||||||
|
|
||||||
for (var i in docs) {
|
for (var i in docs) {
|
||||||
|
{% include lunr/custom-index.js %}
|
||||||
this.add({
|
this.add({
|
||||||
id: i,
|
id: i,
|
||||||
title: docs[i].title,
|
title: docs[i].title,
|
||||||
@@ -217,6 +220,7 @@ function searchLoaded(index, docs) {
|
|||||||
resultTitle.classList.add('search-result-title');
|
resultTitle.classList.add('search-result-title');
|
||||||
resultLink.appendChild(resultTitle);
|
resultLink.appendChild(resultTitle);
|
||||||
|
|
||||||
|
// note: the SVG svg-doc is only loaded as a Jekyll include if site.search_enabled is true; see _includes/icons/icons.html
|
||||||
var resultDoc = document.createElement('div');
|
var resultDoc = document.createElement('div');
|
||||||
resultDoc.classList.add('search-result-doc');
|
resultDoc.classList.add('search-result-doc');
|
||||||
resultDoc.innerHTML = '<svg viewBox="0 0 24 24" class="search-result-icon"><use xlink:href="#svg-doc"></use></svg>';
|
resultDoc.innerHTML = '<svg viewBox="0 0 24 24" class="search-result-icon"><use xlink:href="#svg-doc"></use></svg>';
|
||||||
@@ -479,6 +483,53 @@ jtd.onReady(function(){
|
|||||||
scrollNav();
|
scrollNav();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Copy button on code
|
||||||
|
|
||||||
|
|
||||||
|
{%- if site.enable_copy_code_button != false %}
|
||||||
|
|
||||||
|
jtd.onReady(function(){
|
||||||
|
|
||||||
|
if (!window.isSecureContext) {
|
||||||
|
console.log('Window does not have a secure context, therefore code clipboard copy functionality will not be available. For more details see https://web.dev/async-clipboard/#security-and-permissions');
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var codeBlocks = document.querySelectorAll('div.highlighter-rouge, div.listingblock > div.content, figure.highlight');
|
||||||
|
|
||||||
|
// note: the SVG svg-copied and svg-copy is only loaded as a Jekyll include if site.enable_copy_code_button is true; see _includes/icons/icons.html
|
||||||
|
var svgCopied = '<svg viewBox="0 0 24 24" class="copy-icon"><use xlink:href="#svg-copied"></use></svg>';
|
||||||
|
var svgCopy = '<svg viewBox="0 0 24 24" class="copy-icon"><use xlink:href="#svg-copy"></use></svg>';
|
||||||
|
|
||||||
|
codeBlocks.forEach(codeBlock => {
|
||||||
|
var copyButton = document.createElement('button');
|
||||||
|
var timeout = null;
|
||||||
|
copyButton.type = 'button';
|
||||||
|
copyButton.ariaLabel = 'Copy code to clipboard';
|
||||||
|
copyButton.innerHTML = svgCopy;
|
||||||
|
codeBlock.append(copyButton);
|
||||||
|
|
||||||
|
copyButton.addEventListener('click', function () {
|
||||||
|
if(timeout === null) {
|
||||||
|
var code = (codeBlock.querySelector('pre:not(.lineno, .highlight)') || codeBlock.querySelector('code')).innerText;
|
||||||
|
window.navigator.clipboard.writeText(code);
|
||||||
|
|
||||||
|
copyButton.innerHTML = svgCopied;
|
||||||
|
|
||||||
|
var timeoutSetting = 4000;
|
||||||
|
|
||||||
|
timeout = setTimeout(function () {
|
||||||
|
copyButton.innerHTML = svgCopy;
|
||||||
|
timeout = null;
|
||||||
|
}, timeoutSetting);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
{%- endif %}
|
||||||
|
|
||||||
})(window.jtd = window.jtd || {});
|
})(window.jtd = window.jtd || {});
|
||||||
|
|
||||||
{% include js/custom.js %}
|
{% include js/custom.js %}
|
||||||
|
61
assets/js/vendor/lunr.min.js
vendored
61
assets/js/vendor/lunr.min.js
vendored
File diff suppressed because one or more lines are too long
@@ -51,6 +51,7 @@ permalink: /assets/js/search-data.json
|
|||||||
"title": {{ title | jsonify }},
|
"title": {{ title | jsonify }},
|
||||||
"content": {{ content | replace: '</h', ' . </h' | replace: '<hr', ' . <hr' | replace: '</p', ' . </p' | replace: '<ul', ' . <ul' | replace: '</ul', ' . </ul' | replace: '<ol', ' . <ol' | replace: '</ol', ' . </ol' | replace: '</tr', ' . </tr' | replace: '<li', ' | <li' | replace: '</li', ' | </li' | replace: '</td', ' | </td' | replace: '<td', ' | <td' | replace: '</th', ' | </th' | replace: '<th', ' | <th' | strip_html | remove: 'Table of contents' | normalize_whitespace | replace: '. . .', '.' | replace: '. .', '.' | replace: '| |', '|' | append: ' ' | jsonify }},
|
"content": {{ content | replace: '</h', ' . </h' | replace: '<hr', ' . <hr' | replace: '</p', ' . </p' | replace: '<ul', ' . <ul' | replace: '</ul', ' . </ul' | replace: '<ol', ' . <ol' | replace: '</ol', ' . </ol' | replace: '</tr', ' . </tr' | replace: '<li', ' | <li' | replace: '</li', ' | </li' | replace: '</td', ' | </td' | replace: '<td', ' | <td' | replace: '</th', ' | </th' | replace: '<th', ' | <th' | strip_html | remove: 'Table of contents' | normalize_whitespace | replace: '. . .', '.' | replace: '. .', '.' | replace: '| |', '|' | append: ' ' | jsonify }},
|
||||||
"url": "{{ url | relative_url }}",
|
"url": "{{ url | relative_url }}",
|
||||||
|
{% include lunr/custom-data.json page=page %}
|
||||||
"relUrl": "{{ url }}"
|
"relUrl": "{{ url }}"
|
||||||
}
|
}
|
||||||
{%- assign i = i | plus: 1 -%}
|
{%- assign i = i | plus: 1 -%}
|
||||||
@@ -62,6 +63,7 @@ permalink: /assets/js/search-data.json
|
|||||||
"title": {{ page.title | jsonify }},
|
"title": {{ page.title | jsonify }},
|
||||||
"content": {{ parts[0] | replace: '</h', ' . </h' | replace: '<hr', ' . <hr' | replace: '</p', ' . </p' | replace: '<ul', ' . <ul' | replace: '</ul', ' . </ul' | replace: '<ol', ' . <ol' | replace: '</ol', ' . </ol' | replace: '</tr', ' . </tr' | replace: '<li', ' | <li' | replace: '</li', ' | </li' | replace: '</td', ' | </td' | replace: '<td', ' | <td' | replace: '</th', ' | </th' | replace: '<th', ' | <th' | strip_html | remove: 'Table of contents' | normalize_whitespace | replace: '. . .', '.' | replace: '. .', '.' | replace: '| |', '|' | append: ' ' | jsonify }},
|
"content": {{ parts[0] | replace: '</h', ' . </h' | replace: '<hr', ' . <hr' | replace: '</p', ' . </p' | replace: '<ul', ' . <ul' | replace: '</ul', ' . </ul' | replace: '<ol', ' . <ol' | replace: '</ol', ' . </ol' | replace: '</tr', ' . </tr' | replace: '<li', ' | <li' | replace: '</li', ' | </li' | replace: '</td', ' | </td' | replace: '<td', ' | <td' | replace: '</th', ' | </th' | replace: '<th', ' | <th' | strip_html | remove: 'Table of contents' | normalize_whitespace | replace: '. . .', '.' | replace: '. .', '.' | replace: '| |', '|' | append: ' ' | jsonify }},
|
||||||
"url": "{{ page.url | relative_url }}",
|
"url": "{{ page.url | relative_url }}",
|
||||||
|
{% include lunr/custom-data.json page=page %}
|
||||||
"relUrl": "{{ page.url }}"
|
"relUrl": "{{ page.url }}"
|
||||||
}
|
}
|
||||||
{%- assign i = i | plus: 1 -%}
|
{%- assign i = i | plus: 1 -%}
|
||||||
|
@@ -27,6 +27,15 @@ View this site's [\_config.yml](https://github.com/just-the-docs/just-the-docs/t
|
|||||||
logo: "/assets/images/just-the-docs.png"
|
logo: "/assets/images/just-the-docs.png"
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Site favicon
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
# Set a path/url to a favicon that will be displayed by the browser
|
||||||
|
favicon_ico: "/assets/images/favicon.ico"
|
||||||
|
```
|
||||||
|
|
||||||
|
If the path to your favicon is `/favicon.ico`, you can leave `favicon_ico` unset.
|
||||||
|
|
||||||
## Search
|
## Search
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@@ -60,6 +69,10 @@ search:
|
|||||||
```
|
```
|
||||||
|
|
||||||
## Mermaid Diagrams
|
## Mermaid Diagrams
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
The minimum configuration requires the key for `version` ([from jsDelivr](https://cdn.jsdelivr.net/npm/mermaid/)) in `_config.yml`:
|
The minimum configuration requires the key for `version` ([from jsDelivr](https://cdn.jsdelivr.net/npm/mermaid/)) in `_config.yml`:
|
||||||
|
|
||||||
@@ -70,7 +83,9 @@ mermaid:
|
|||||||
version: "9.1.3"
|
version: "9.1.3"
|
||||||
```
|
```
|
||||||
|
|
||||||
See [the Code documentation]({{ site.baseurl }}{% link docs/ui-components/code.md %}#mermaid-diagram-code-blocks) for more configuration options and information.
|
Provide a `path` instead of a `version` key to load the mermaid library from a local file.
|
||||||
|
|
||||||
|
See [the Code documentation]({% link docs/ui-components/code.md %}#mermaid-diagram-code-blocks) for more configuration options and information.
|
||||||
|
|
||||||
## Aux links
|
## Aux links
|
||||||
|
|
||||||
@@ -95,9 +110,13 @@ heading_anchors: true
|
|||||||
```
|
```
|
||||||
|
|
||||||
## External navigation links
|
## External navigation links
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
External links can be added to the navigation through the `nav_external_links` option.
|
External links can be added to the navigation through the `nav_external_links` option.
|
||||||
See [Navigation Structure]({{ site.baseurl }}{% link docs/navigation-structure.md %}#external-navigation-links) for more details.
|
See [Navigation Structure]({% link docs/navigation-structure.md %}#external-navigation-links) for more details.
|
||||||
|
|
||||||
## Footer content
|
## Footer content
|
||||||
|
|
||||||
@@ -153,9 +172,13 @@ jtd.addEvent(toggleDarkMode, 'click', function(){
|
|||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
See [Customization]({{ site.baseurl }}{% link docs/customization.md %}) for more information.
|
See [Customization]({% link docs/customization.md %}) for more information.
|
||||||
|
|
||||||
## Callouts
|
## Callouts
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
To use this feature, you need to configure a `color` and (optionally) `title` for each kind of callout you want to use, e.g.:
|
To use this feature, you need to configure a `color` and (optionally) `title` for each kind of callout you want to use, e.g.:
|
||||||
|
|
||||||
@@ -176,7 +199,7 @@ A paragraph...
|
|||||||
[^dark]:
|
[^dark]:
|
||||||
If you use the `dark` color scheme, this callout uses `$red-300` for the background, and `$red-000` for the title.
|
If you use the `dark` color scheme, this callout uses `$red-300` for the background, and `$red-000` for the title.
|
||||||
|
|
||||||
The colors `grey-lt`, `grey-dk`, `purple`, `blue`, `green`, `yellow`, and `red` are predefined; to use a custom color, you need to define its `000` and `300` levels in your SCSS files. For example, to use `pink`, add the following to your `_sass/custom/custom.scss` file:
|
The colors `grey-lt`, `grey-dk`, `purple`, `blue`, `green`, `yellow`, and `red` are predefined; to use a custom color, you need to define its `000` and `300` levels in your SCSS files. For example, to use `pink`, add the following to your `_sass/custom/setup.scss` file:
|
||||||
|
|
||||||
```scss
|
```scss
|
||||||
$pink-000: #f77ef1;
|
$pink-000: #f77ef1;
|
||||||
@@ -206,15 +229,32 @@ The value of `callouts_level` is either `quiet` or `loud`;
|
|||||||
The default level is `quiet` when using the `light` or custom color schemes,
|
The default level is `quiet` when using the `light` or custom color schemes,
|
||||||
and `loud` when using the `dark color scheme.`
|
and `loud` when using the `dark color scheme.`
|
||||||
|
|
||||||
See [Callouts]({{ site.baseurl }}{% link docs/ui-components/callouts.md %}) for more information.
|
See [Callouts]({% link docs/ui-components/callouts.md %}) for more information.
|
||||||
|
|
||||||
## Google Analytics
|
## Google Analytics
|
||||||
|
|
||||||
|
{: .warning }
|
||||||
|
> [Google Analytics 4 will replace Universal Analytics](https://support.google.com/analytics/answer/11583528). On **July 1, 2023**, standard Universal Analytics properties will stop processing new hits. The earlier you migrate, the more historical data and insights you will have in Google Analytics 4.
|
||||||
|
|
||||||
|
Universal Analytics (UA) and Google Analytics 4 (GA4) properties are supported.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
# Google Analytics Tracking (optional)
|
# Google Analytics Tracking (optional)
|
||||||
# e.g, UA-1234567-89
|
# Supports a CSV of tracking ID strings (eg. "UA-1234567-89,G-1AB234CDE5")
|
||||||
ga_tracking: UA-5555555-55
|
ga_tracking: UA-2709176-10
|
||||||
ga_tracking_anonymize_ip: true # Use GDPR compliant Google Analytics settings (true by default)
|
ga_tracking_anonymize_ip: true # Use GDPR compliant Google Analytics settings (true/nil by default)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Multiple IDs
|
||||||
|
{: .d-inline-block .no_toc }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
|
This theme supports multiple comma-separated tracking IDs. This helps seamlessly transition UA properties to GA4 properties by tracking both for a while.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
ga_tracking: "UA-1234567-89,G-1AB234CDE5"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Document collections
|
## Document collections
|
||||||
@@ -222,6 +262,9 @@ ga_tracking_anonymize_ip: true # Use GDPR compliant Google Analytics settings (t
|
|||||||
By default, the navigation and search include normal [pages](https://jekyllrb.com/docs/pages/).
|
By default, the navigation and search include normal [pages](https://jekyllrb.com/docs/pages/).
|
||||||
You can also use [Jekyll collections](https://jekyllrb.com/docs/collections/) which group documents semantically together.
|
You can also use [Jekyll collections](https://jekyllrb.com/docs/collections/) which group documents semantically together.
|
||||||
|
|
||||||
|
{: .warning }
|
||||||
|
> Collection folders always start with an underscore (`_`), e.g. `_tests`. You won't see your collections if you omit the prefix.
|
||||||
|
|
||||||
For example, put all your test files in the `_tests` folder and create the `tests` collection:
|
For example, put all your test files in the `_tests` folder and create the `tests` collection:
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@@ -244,7 +287,7 @@ just_the_docs:
|
|||||||
# nav_exclude: true
|
# nav_exclude: true
|
||||||
# Fold the collection in the navigation
|
# Fold the collection in the navigation
|
||||||
# Supports true or false (default)
|
# Supports true or false (default)
|
||||||
# nav_fold: true
|
# nav_fold: true # note: this option is new in v0.4
|
||||||
# Exclude the collection from the search
|
# Exclude the collection from the search
|
||||||
# Supports true or false (default)
|
# Supports true or false (default)
|
||||||
# search_exclude: true
|
# search_exclude: true
|
||||||
|
@@ -17,11 +17,6 @@ nav_order: 6
|
|||||||
|
|
||||||
## Color schemes
|
## Color schemes
|
||||||
|
|
||||||
{: .d-inline-block }
|
|
||||||
|
|
||||||
New
|
|
||||||
{: .label .label-green }
|
|
||||||
|
|
||||||
Just the Docs supports two color schemes: light (default), and dark.
|
Just the Docs supports two color schemes: light (default), and dark.
|
||||||
|
|
||||||
To enable a color scheme, set the `color_scheme` parameter in your site's `_config.yml` file:
|
To enable a color scheme, set the `color_scheme` parameter in your site's `_config.yml` file:
|
||||||
@@ -50,6 +45,15 @@ jtd.addEvent(toggleDarkMode, 'click', function(){
|
|||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
### deprecated: `legacy_light`
|
||||||
|
{: .d-inline-block .no_toc }
|
||||||
|
|
||||||
|
New (v0.4.2)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
|
|
||||||
|
In Just the Docs version `0.4.2`, we changed the default syntax highlighting theme for the `light` color scheme to have higher contrast. Users who are want to use the old highlighting need to explicitly opt-in with the deprecated `legacy_light` color scheme. In a future major release of Just the Docs, we will remove this color scheme.
|
||||||
|
|
||||||
## Custom schemes
|
## Custom schemes
|
||||||
|
|
||||||
### Define a custom scheme
|
### Define a custom scheme
|
||||||
@@ -112,9 +116,29 @@ This allows you to switch the scheme via the following javascript.
|
|||||||
jtd.setTheme("foo")
|
jtd.setTheme("foo")
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Override and define new variables
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
|
To define new SCSS variables or functions, place SCSS code in `_sass/custom/setup.scss`. This should *not* be used for defining custom styles (see the next section) or overriding color scheme variables (in this case, you should create a new color scheme).
|
||||||
|
|
||||||
|
This is most commonly-used to define [custom callout colors]({% link docs/configuration.md %}#callouts). For example,
|
||||||
|
|
||||||
|
```scss
|
||||||
|
// _sass/custom/setup.scss
|
||||||
|
$pink-000: #f77ef1;
|
||||||
|
$pink-100: #f967f1;
|
||||||
|
$pink-200: #e94ee1;
|
||||||
|
$pink-300: #dd2cd4;
|
||||||
|
```
|
||||||
|
|
||||||
|
In particular: this file is imported *after* the theme's variables and functions are defined, but *before* any CSS classes are emitted.
|
||||||
|
|
||||||
## Override and completely custom styles
|
## Override and completely custom styles
|
||||||
|
|
||||||
For styles that aren't defined as variables, you may want to modify specific CSS classes.
|
For styles that aren't defined as SCSS variables, you may want to modify specific CSS classes.
|
||||||
Additionally, you may want to add completely custom CSS specific to your content.
|
Additionally, you may want to add completely custom CSS specific to your content.
|
||||||
To do this, put your styles in the file `_sass/custom/custom.scss`.
|
To do this, put your styles in the file `_sass/custom/custom.scss`.
|
||||||
This will allow for all overrides to be kept in a single file, and for any upstream changes to still be applied.
|
This will allow for all overrides to be kept in a single file, and for any upstream changes to still be applied.
|
||||||
@@ -147,10 +171,14 @@ To do this, create an `_includes` directory and make a copy of the specific file
|
|||||||
Just the Docs provides the following custom includes files:
|
Just the Docs provides the following custom includes files:
|
||||||
|
|
||||||
### Custom TOC Heading
|
### Custom TOC Heading
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
`_includes/toc_heading_custom.html`
|
`_includes/toc_heading_custom.html`
|
||||||
|
|
||||||
If the page has any child pages, and `has_toc` is not set to `false`, this content appears as a heading above the [auto-generating list of child pages]({{ site.baseurl }}{% link docs/navigation-structure.md %}#auto-generating-table-of-contents) after the page's content.
|
If the page has any child pages, and `has_toc` is not set to `false`, this content appears as a heading above the [auto-generating list of child pages]({% link docs/navigation-structure.md %}#auto-generating-table-of-contents) after the page's content.
|
||||||
|
|
||||||
#### Example
|
#### Example
|
||||||
{: .no_toc }
|
{: .no_toc }
|
||||||
@@ -166,7 +194,7 @@ The (optional) `text-delta` class makes the heading appear as **Contents**{:.tex
|
|||||||
|
|
||||||
`_includes/footer_custom.html`
|
`_includes/footer_custom.html`
|
||||||
|
|
||||||
This content appears at the bottom of every page's main content. More info for this include can be found in the [Configuration - Footer content]({{ site.baseurl }}{% link docs/configuration.md %}#footer-content).
|
This content appears at the bottom of every page's main content. More info for this include can be found in the [Configuration - Footer content]({% link docs/configuration.md %}#footer-content).
|
||||||
|
|
||||||
### Custom Head
|
### Custom Head
|
||||||
|
|
||||||
@@ -174,13 +202,7 @@ This content appears at the bottom of every page's main content. More info for t
|
|||||||
|
|
||||||
Any HTML added to this file will be inserted before the closing `<head>` tag. This might include additional `<meta>`, `<link>`, or `<script>` tags.
|
Any HTML added to this file will be inserted before the closing `<head>` tag. This might include additional `<meta>`, `<link>`, or `<script>` tags.
|
||||||
|
|
||||||
#### Example
|
The `<head>` tag automatically includes a link to an existing favicon if you set `favicon_ico` to the corresponding path in your configuration, or if the path to the favicon is `/favicon.ico`.
|
||||||
{: .no_toc }
|
|
||||||
|
|
||||||
To add a custom favicon, create `_includes/head_custom.html` and add:
|
|
||||||
```html
|
|
||||||
<link rel="shortcut icon" type="image/png" href="{{site.baseurl}}/path/to/your/favicon.png">
|
|
||||||
```
|
|
||||||
|
|
||||||
### Custom Header
|
### Custom Header
|
||||||
|
|
||||||
@@ -189,12 +211,20 @@ To add a custom favicon, create `_includes/head_custom.html` and add:
|
|||||||
Content added to this file appears at the top of every page's main content between the site search and auxiliary links if they are enabled. If `search_enabled` were set to false and `aux_links` were removed, the content of `header_custom.html` would occupy the space at the top of every page.
|
Content added to this file appears at the top of every page's main content between the site search and auxiliary links if they are enabled. If `search_enabled` were set to false and `aux_links` were removed, the content of `header_custom.html` would occupy the space at the top of every page.
|
||||||
|
|
||||||
### Custom Nav Footer
|
### Custom Nav Footer
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
`_includes/nav_footer_custom.html`
|
`_includes/nav_footer_custom.html`
|
||||||
|
|
||||||
Any content added to this file will appear at the bottom left of the page below the site's navigation. By default an attribution to Just the Docs is displayed which reads, `This site uses Just the Docs, a documentation theme for Jekyll.`.
|
Any content added to this file will appear at the bottom left of the page below the site's navigation. By default an attribution to Just the Docs is displayed which reads, `This site uses Just the Docs, a documentation theme for Jekyll.`.
|
||||||
|
|
||||||
### Custom Search Placeholder
|
### Custom Search Placeholder
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
`_includes/search_placeholder_custom.html`
|
`_includes/search_placeholder_custom.html`
|
||||||
|
|
||||||
@@ -219,3 +249,158 @@ Chercher notre site
|
|||||||
{% endraw %}
|
{% endraw %}
|
||||||
|
|
||||||
would make the placeholder text "Chercher notre site". [Liquid code](https://jekyllrb.com/docs/liquid/) (including [Jekyll variables](https://jekyllrb.com/docs/variables/)) is also supported.
|
would make the placeholder text "Chercher notre site". [Liquid code](https://jekyllrb.com/docs/liquid/) (including [Jekyll variables](https://jekyllrb.com/docs/variables/)) is also supported.
|
||||||
|
|
||||||
|
## Custom layouts and includes
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
|
Advanced
|
||||||
|
{: .label .label-yellow }
|
||||||
|
|
||||||
|
Just the Docs uses Jekyll's powerful [layouts](https://jekyllrb.com/docs/layouts/) and [includes](https://jekyllrb.com/docs/includes/) features to generate and compose various elements of the site. Jekyll users and developers can extend or replace existing layouts and includes to customize the entire site layout.
|
||||||
|
|
||||||
|
### Default layout and includable components
|
||||||
|
|
||||||
|
The `default` layout is inherited by most of the "out-of-the-box" pages provided by Just the Docs. It composes various re-usable components of the site, including the sidebar, navbar, footer, breadcrumbs, and various imports. Most users who create new pages or layouts will inherit from `default`.
|
||||||
|
|
||||||
|
Here is a simplified code example of what it looks like:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
|
||||||
|
```liquid
|
||||||
|
<!-- a simplified version of _layouts/default.html -->
|
||||||
|
<html>
|
||||||
|
{% include head.html %}
|
||||||
|
<body>
|
||||||
|
{% include icons/icons.html %}
|
||||||
|
{% include components/sidebar.html %}
|
||||||
|
{% include components/header.html %}
|
||||||
|
{% include components/breadcrumbs.html %}
|
||||||
|
|
||||||
|
{% if site.heading_anchors != false %}
|
||||||
|
{% include vendor/anchor_headings.html html=content ... %}
|
||||||
|
{% else %}
|
||||||
|
{{ content }}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if page.has_children == true and page.has_toc != false %}
|
||||||
|
{% include components/children_nav.html %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% include components/footer.html %}
|
||||||
|
|
||||||
|
{% if site.search_enabled != false %}
|
||||||
|
{% include components/search_footer.html %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if site.mermaid %}
|
||||||
|
{% include components/mermaid.html %}
|
||||||
|
{% endif %}
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
```
|
||||||
|
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
|
#### Component summary
|
||||||
|
{: .no_toc }
|
||||||
|
|
||||||
|
{: .warning }
|
||||||
|
Defining a new `_includes` with the same name as any of these components will significantly change the existing layout. Please proceed with caution when adjusting them.
|
||||||
|
|
||||||
|
To briefly summarize each component:
|
||||||
|
|
||||||
|
- `_includes/head.html` is the entire `<head>` tag for the site; this imports stylesheets, various JavaScript files (ex: analytics, mermaid, search, and Just the Docs code), and SEO / meta information.
|
||||||
|
- `_includes/icons/icons.html` imports all SVG icons that are used throughout the site. Some, such as those relating to search or code snippet copying, are only loaded when those features are enabled.
|
||||||
|
- `_includes/components/sidebar.html` renders the sidebar, containing the site header, navigation links, external links, collections, and nav footer.
|
||||||
|
- `_includes/components/header.html` renders the navigation header, containing the search bar, custom header, and aux links
|
||||||
|
- `_includes/components/breadcrumbs.html` renders the breadcrumbs feature
|
||||||
|
- `vendor/anchor_headings.html` is a local copy of Vladimir Jimenez's [jekyll-anchor-headings](https://github.com/allejo/jekyll-anchor-headings) snippet
|
||||||
|
- `_includes/components/children_nav.html` renders a list of nav links to child pages on parent pages
|
||||||
|
- `_includes/components/footer.html` renders the bottom-of-page footer
|
||||||
|
- `_includes/components/search_footer.html` renders DOM elements that are necessary for the search bar to work
|
||||||
|
- `_includes/components/mermaid.html` initializes mermaid if the feature is enabled
|
||||||
|
|
||||||
|
Each of these components can be overridden individually using the same process described in the [Override includes](#override-includes) section. In particular, the granularity of components should allow users to replace certain components (such as the sidebar) without having to adjust the rest of the code.
|
||||||
|
|
||||||
|
Future versions may subdivide components further; we guarantee that we will only place them in folders (ex `components/`, `icons/`, or a new `js/`) to avoid top-level namespace collisions.
|
||||||
|
|
||||||
|
### Alternative layouts and example (`minimal`)
|
||||||
|
|
||||||
|
Users can develop custom layouts that compose, omit, or add components differently. We provide one first-class example titled `minimal`, inspired by Kevin Lin's work in [just-the-class](https://github.com/kevinlin1/just-the-class). This `minimal` layout does not render the sidebar, header, or search. To see an example, visit the [minimal layout test]({{site.baseurl}}/docs/minimal-test/) page.
|
||||||
|
|
||||||
|
Here is a simplified code example of what it looks like:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
|
||||||
|
```liquid
|
||||||
|
<!-- a simplified version of _layouts/minimal.html -->
|
||||||
|
<html>
|
||||||
|
{% include head.html %}
|
||||||
|
<body>
|
||||||
|
{% include icons/icons.html %}
|
||||||
|
{% comment %} Bandaid fix for breadcrumbs here! {% endcomment %}
|
||||||
|
{% include components/breadcrumbs.html %}
|
||||||
|
|
||||||
|
{% if site.heading_anchors != false %}
|
||||||
|
{% include vendor/anchor_headings.html html=content ... %}
|
||||||
|
{% else %}
|
||||||
|
{{ content }}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% if page.has_children == true and page.has_toc != false %}
|
||||||
|
{% include components/children_nav.html %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
{% include components/footer.html %}
|
||||||
|
|
||||||
|
{% if site.mermaid %}
|
||||||
|
{% include components/mermaid.html %}
|
||||||
|
{% endif %}
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
```
|
||||||
|
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
|
This layout is packaged in Just the Docs. Users can indicate this alternative layout in page front matter:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
|
||||||
|
```
|
||||||
|
---
|
||||||
|
layout: minimal
|
||||||
|
title: Minimal layout test
|
||||||
|
---
|
||||||
|
```
|
||||||
|
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
|
Similarly, users and developers can create other alternative layouts using Just the Docs' reusable includable components.
|
||||||
|
|
||||||
|
### Default layout and inheritance chain
|
||||||
|
|
||||||
|
Under the hood,
|
||||||
|
|
||||||
|
- `default` and `minimal` inherit from the `table_wrappers` layout, which wraps all HTML `<table>` tags with a `div .table-wrapper`
|
||||||
|
- `table_wrappers` inherits from `vendor/compress`, which is a local copy of Anatol Broder's [jekyll-compress-html](https://github.com/penibelst/jekyll-compress-html) Jekyll plugin
|
||||||
|
|
||||||
|
Note that as of now, `minimal` and `default` have no inheritance relationship.
|
||||||
|
|
||||||
|
### Overridden default Jekyll layouts
|
||||||
|
|
||||||
|
By default, Jekyll (and its default theme `minima`) provide the `about`, `home`, `page`, and `post` layouts. In Just the Docs, we override all of these layouts with the `default` layout. Each of those layouts is simply:
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
|
||||||
|
```
|
||||||
|
---
|
||||||
|
layout: default
|
||||||
|
---
|
||||||
|
|
||||||
|
{{ content }}
|
||||||
|
```
|
||||||
|
|
||||||
|
{% endraw %}
|
||||||
|
40
docs/layout/layout.md
Normal file
40
docs/layout/layout.md
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
---
|
||||||
|
title: Layout
|
||||||
|
layout: default
|
||||||
|
nav_order: 4.5
|
||||||
|
has_children: true
|
||||||
|
---
|
||||||
|
|
||||||
|
# Layout
|
||||||
|
|
||||||
|
You specify the layout for a page in its [front matter]. Just the Docs has a `default` layout with a sidebar, used for almost all pages in the theme docs, and a `minimal` layout that omits the sidebar.
|
||||||
|
{: .fs-6 .fw-300 }
|
||||||
|
|
||||||
|
## The layout concept
|
||||||
|
|
||||||
|
See the [Jekyll docs page about layouts] for an explanation of the general idea of layouts and how to specify them.
|
||||||
|
|
||||||
|
You can use [Jekyll's front matter defaults] to specify the same layout for many pages.
|
||||||
|
|
||||||
|
## The `default` layout
|
||||||
|
|
||||||
|
This page uses the default layout.
|
||||||
|
|
||||||
|
It is a *responsive* layout: on medium and larger width displays, it displays a sidebar, including a navigation panel; on smaller width displays, the sidebar is automatically hidden under a button.
|
||||||
|
|
||||||
|
Each child (and grandchild) page of a top-level page has so-called *breadcrumbs*: links to its parent (and grandparent) pages. It shows the breadcrumbs above the main content of the page.
|
||||||
|
|
||||||
|
Each page that has child pages generally has a list of links to those pages (you can suppress it by `has_toc: false` in the front matter). It shows the list as a *table of contents* below the main content.
|
||||||
|
|
||||||
|
## The `minimal` layout
|
||||||
|
|
||||||
|
A child and grandchild page of this page use the minimal layout. This differs from the default layout by omitting the sidebar -- and thereby also the navigation panel. To navigate between pages with the minimal layout, you can use the breadcrumbs and the tables of contents.
|
||||||
|
|
||||||
|
## Other layouts
|
||||||
|
|
||||||
|
Just the Docs has further layouts: `about`, `home`, `page`, and `post`. Currently, they are all based on the `default` layout. See the [Jekyll docs about inheritance] for how to customize them.
|
||||||
|
|
||||||
|
[front matter]: https://jekyllrb.com/docs/front-matter/ "Jekyll docs about front matter"
|
||||||
|
[Jekyll docs page about layouts]: https://jekyllrb.com/docs/layouts/ "Jekyll docs about layouts"
|
||||||
|
[Jekyll's front matter defaults]: https://jekyllrb.com/docs/configuration/front-matter-defaults/ "Jekyll docs about front matter defaults"
|
||||||
|
[Jekyll docs about inheritance]: https://jekyllrb.com/docs/layouts/#inheritance "Jekyll docs about inheritance"
|
8
docs/layout/minimal/default-child.md
Normal file
8
docs/layout/minimal/default-child.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: Default layout child page
|
||||||
|
layout: default
|
||||||
|
parent: A minimal layout page
|
||||||
|
grand_parent: Layout
|
||||||
|
---
|
||||||
|
|
||||||
|
This is a child page that uses the same minimal layout as its parent page.
|
8
docs/layout/minimal/minimal-child.md
Normal file
8
docs/layout/minimal/minimal-child.md
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
title: Minimal layout child page
|
||||||
|
layout: minimal
|
||||||
|
parent: A minimal layout page
|
||||||
|
grand_parent: Layout
|
||||||
|
---
|
||||||
|
|
||||||
|
This is a child page that uses the same minimal layout as its parent page.
|
12
docs/layout/minimal/minimal.md
Normal file
12
docs/layout/minimal/minimal.md
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
---
|
||||||
|
title: A minimal layout page
|
||||||
|
layout: minimal
|
||||||
|
parent: Layout
|
||||||
|
has_children: true
|
||||||
|
---
|
||||||
|
|
||||||
|
# A minimal layout page
|
||||||
|
|
||||||
|
This page illustrates the built-in layout `minimal`.
|
||||||
|
|
||||||
|
One of its child pages also uses the minimal layout; the other child pages uses the default layout.
|
9
docs/minimal-test.md
Normal file
9
docs/minimal-test.md
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
layout: minimal
|
||||||
|
title: Minimal layout test
|
||||||
|
nav_exclude: true
|
||||||
|
---
|
||||||
|
|
||||||
|
[Return to main website]({{site.baseurl}}/).
|
||||||
|
|
||||||
|
This page demonstrates the packaged `minimal` layout, which does not render the sidebar or header. It can be used for standalone pages. It is also an example of using the new modular site components to define custom layouts; see ["Custom layouts and includes" in the customization docs]({{site.baseurl}}/docs/customization/#custom-layouts-and-includes) for more information.
|
@@ -145,18 +145,22 @@ nav_order: 2
|
|||||||
The Buttons page appears as a child of UI Components and appears second in the UI Components section.
|
The Buttons page appears as a child of UI Components and appears second in the UI Components section.
|
||||||
|
|
||||||
### Ordering child pages
|
### Ordering child pages
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
You can optionally add the following to the YAML front matter to change the default sort order of child pages from ascending to descending order:
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
- `child_nav_order: desc`
|
You can optionally add the following to the YAML front matter to reverse the default sort order of child pages:
|
||||||
|
|
||||||
|
- `child_nav_order: reversed`
|
||||||
|
|
||||||
#### Example
|
#### Example
|
||||||
{: .no_toc }
|
{: .no_toc }
|
||||||
```yaml
|
```yaml
|
||||||
---
|
---
|
||||||
layout: default
|
layout: default
|
||||||
title: Descending Child Pages
|
title: Reversed Child Pages
|
||||||
child_nav_order: desc
|
child_nav_order: reversed
|
||||||
---
|
---
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -235,7 +239,7 @@ Currently, the navigation structure is limited to 3 levels: grandchild pages can
|
|||||||
|
|
||||||
## Auxiliary Links
|
## Auxiliary Links
|
||||||
|
|
||||||
To add auxiliary links to your site (in the upper right on all pages), add it to the `aux_links` [configuration option]({{ site.baseurl }}{% link docs/configuration.md %}#aux-links) in your site's `_config.yml` file.
|
To add auxiliary links to your site (in the upper right on all pages), add it to the `aux_links` [configuration option]({% link docs/configuration.md %}#aux-links) in your site's `_config.yml` file.
|
||||||
|
|
||||||
#### Example
|
#### Example
|
||||||
{: .no_toc }
|
{: .no_toc }
|
||||||
@@ -250,12 +254,15 @@ aux_links:
|
|||||||
---
|
---
|
||||||
|
|
||||||
## External Navigation Links
|
## External Navigation Links
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
To add external links to the navigation, add them to the `nav_external_links` [configuration]({{ site.baseurl }}{% link docs/configuration.md %}) option in your site's `_config.yml` file.
|
New (v0.4.0)
|
||||||
External links will appear under all other items in the listing order.
|
{: .label .label-green }
|
||||||
|
|
||||||
|
To add external links to the navigation, add them to the `nav_external_links` [configuration]({% link docs/configuration.md %}) option in your site's `_config.yml` file.
|
||||||
|
External links will appear in the navigation after the links to ordinary pages, but before any collections.
|
||||||
|
|
||||||
#### Example
|
#### Example
|
||||||
|
|
||||||
{: .no_toc }
|
{: .no_toc }
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
@@ -266,6 +273,9 @@ nav_external_links:
|
|||||||
hide_icon: false # set to true to hide the external link icon - defaults to false
|
hide_icon: false # set to true to hide the external link icon - defaults to false
|
||||||
```
|
```
|
||||||
|
|
||||||
|
The external links are decorated by an icon, which distinguishes them from internal links.
|
||||||
|
You can suppress the icon by setting `hide_icon: true`.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## In-page navigation with Table of Contents
|
## In-page navigation with Table of Contents
|
||||||
|
@@ -96,7 +96,7 @@ search.button: true
|
|||||||
|
|
||||||
## Hiding pages from search
|
## Hiding pages from search
|
||||||
|
|
||||||
Sometimes you might have a page that you don't want to be indexed for the search nor to show up in search results, e.g, a 404 page.
|
Sometimes you might have a page that you don't want to be indexed for the search nor to show up in search results, e.g., a 404 page.
|
||||||
To exclude a page from search, add the `search_exclude: true` parameter to the page's YAML front matter:
|
To exclude a page from search, add the `search_exclude: true` parameter to the page's YAML front matter:
|
||||||
|
|
||||||
#### Example
|
#### Example
|
||||||
@@ -125,3 +125,43 @@ $ bundle exec just-the-docs rake search:init
|
|||||||
|
|
||||||
This command creates the `assets/js/zzzz-search-data.json` file that Jekyll uses to create your search index.
|
This command creates the `assets/js/zzzz-search-data.json` file that Jekyll uses to create your search index.
|
||||||
Alternatively, you can create the file manually with [this content]({{ site.github.repository_url }}/blob/main/assets/js/zzzz-search-data.json).
|
Alternatively, you can create the file manually with [this content]({{ site.github.repository_url }}/blob/main/assets/js/zzzz-search-data.json).
|
||||||
|
|
||||||
|
## Custom content for search index
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
|
Advanced
|
||||||
|
{: .label .label-yellow }
|
||||||
|
|
||||||
|
By default, the search feature indexes a page's `.content`, `.title`, and *some* headers within the `.content`. Other data (e.g. front matter, files in `_data` and `assets`) is not indexed. Users can customize what is indexed.
|
||||||
|
|
||||||
|
{: .warning }
|
||||||
|
> Customizing search indices is an advanced feature that requires Javascript and Liquid knowledge.
|
||||||
|
|
||||||
|
1. When Just the Docs is a local or gem theme, ensure `assets/js/zzzz-search-data.json` is up-to-date with [Generate search index when used as a gem](#generate-search-index-when-used-as-a-gem).
|
||||||
|
2. Add a new file named `_includes/lunr/custom-data.json`. Insert custom Liquid code that reads your data (e.g. the page object at `include.page`) then generates custom Javascript fields that hold the custom data you want to index. Verify these fields in the generated `assets/js/search-data.json`.
|
||||||
|
3. Add a new file named `_includes/lunr/custom-index.js`. Insert custom Javascript code that reads your custom Javascript fields and inserts them into the search index. You may want to inspect `assets/js/just-the-docs.js` to better understand the code.
|
||||||
|
|
||||||
|
#### Example
|
||||||
|
|
||||||
|
This example adds front matter `usage` and `examples` fields to the search index.
|
||||||
|
|
||||||
|
`_includes/lunr/custom-data.json` custom code reads the page `usage` and `examples` fields, normalizes the text, and writes the text to custom Javascript `myusage` and `myexamples` fields. Javascript fields are similar yet [not the same as JSON](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON#javascript_and_json_differences). `jsonify` will probably work for most scenarios.
|
||||||
|
|
||||||
|
{% raw %}
|
||||||
|
```liquid
|
||||||
|
{%- capture newline %}
|
||||||
|
{% endcapture -%}
|
||||||
|
"myusage": {{ include.page.usage | markdownify | replace:newline,' ' | strip_html | normalize_whitespace | strip | jsonify }},
|
||||||
|
"myexamples": {{ include.page.examples | markdownify | replace:newline,' ' | strip_html | normalize_whitespace | strip | jsonify }},
|
||||||
|
```
|
||||||
|
{% endraw %}
|
||||||
|
|
||||||
|
`_includes/lunr/custom-index.js` custom code is inserted into the Javascript loop of `assets/js/just-the-docs.js`. All custom Javascript fields are accessed as fields of `docs[i]` such as `docs[i].myusage`. Finally, append your custom fields on to the already existing `docs[i].content`.
|
||||||
|
|
||||||
|
```javascript
|
||||||
|
const content_to_merge = [docs[i].content, docs[i].myusage, docs[i].myexamples];
|
||||||
|
docs[i].content = content_to_merge.join(' ');
|
||||||
|
```
|
||||||
|
@@ -56,7 +56,7 @@ GitHub Flavored Markdown does not support the `button` element, so you'll have t
|
|||||||
|
|
||||||
### Button size
|
### Button size
|
||||||
|
|
||||||
Wrap the button in a container that uses the [font-size utility classes]({{ site.baseurl }}{% link docs/utilities/typography.md %}) to scale buttons:
|
Wrap the button in a container that uses the [font-size utility classes]({% link docs/utilities/typography.md %}) to scale buttons:
|
||||||
|
|
||||||
<div class="code-example" markdown="1">
|
<div class="code-example" markdown="1">
|
||||||
<span class="fs-6">
|
<span class="fs-6">
|
||||||
@@ -79,7 +79,7 @@ Wrap the button in a container that uses the [font-size utility classes]({{ site
|
|||||||
|
|
||||||
### Spacing between buttons
|
### Spacing between buttons
|
||||||
|
|
||||||
Use the [margin utility classes]({{ site.baseurl }}{% link docs/utilities/layout.md %}#spacing) to add spacing between two buttons in the same block.
|
Use the [margin utility classes]({% link docs/utilities/layout.md %}#spacing) to add spacing between two buttons in the same block.
|
||||||
|
|
||||||
<div class="code-example" markdown="1">
|
<div class="code-example" markdown="1">
|
||||||
[Button with space](http://example.com/){: .btn .btn-purple .mr-2 }
|
[Button with space](http://example.com/){: .btn .btn-purple .mr-2 }
|
||||||
|
@@ -6,15 +6,19 @@ nav_order: 7
|
|||||||
---
|
---
|
||||||
|
|
||||||
# Callouts
|
# Callouts
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
Markdown does not include support for callouts. However, you can style text as a callout using a Markdown extension supported by kramdown: [*block IALs*](https://kramdown.gettalong.org/quickref.html#block-attributes).
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
|
Markdown does not include support for callouts. However, you can style text as a callout using a Markdown extension supported by kramdown: [*block IALs*](https://kramdown.gettalong.org/quickref.html#block-attributes).
|
||||||
|
|
||||||
Common kinds of callouts include `highlight`, `important`, `new`, `note`, and `warning`.
|
Common kinds of callouts include `highlight`, `important`, `new`, `note`, and `warning`.
|
||||||
|
|
||||||
{: .warning }
|
{: .warning }
|
||||||
These callout names are *not* pre-defined by the theme: you need to define your own names.
|
These callout names are *not* pre-defined by the theme: you need to define your own names.
|
||||||
|
|
||||||
When you have [configured]({{ site.baseurl }}{% link docs/configuration.md %}#callouts) the `color` and (optional) `title` for a callout, you can apply it to a paragraph, or to a block quote with several paragraphs, as illustrated below.[^postfix]
|
When you have [configured]({% link docs/configuration.md %}#callouts) the `color` and (optional) `title` for a callout, you can apply it to a paragraph, or to a block quote with several paragraphs, as illustrated below.[^postfix]
|
||||||
|
|
||||||
[^postfix]:
|
[^postfix]:
|
||||||
You can put the callout markup either before or after its content.
|
You can put the callout markup either before or after its content.
|
||||||
|
@@ -90,6 +90,10 @@ To demonstrate front end code, sometimes it's useful to show a rendered example
|
|||||||
---
|
---
|
||||||
|
|
||||||
## Mermaid diagram code blocks
|
## Mermaid diagram code blocks
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
[Mermaid](https://mermaid-js.github.io/mermaid/) allows you to add diagrams and visualizations using Markdown code blocks. **It is disabled by default**. However, you can turn on support for mermaid by adding a `mermaid` key to your `_config.yml`.
|
[Mermaid](https://mermaid-js.github.io/mermaid/) allows you to add diagrams and visualizations using Markdown code blocks. **It is disabled by default**. However, you can turn on support for mermaid by adding a `mermaid` key to your `_config.yml`.
|
||||||
|
|
||||||
@@ -143,3 +147,59 @@ graph TD;
|
|||||||
```
|
```
|
||||||
|
|
||||||
*Note: for demonstration purposes, we've enabled mermaid on this site. It is still disabled by default, and users need to opt-in to use it.*
|
*Note: for demonstration purposes, we've enabled mermaid on this site. It is still disabled by default, and users need to opt-in to use it.*
|
||||||
|
|
||||||
|
### Using a local mermaid library
|
||||||
|
|
||||||
|
To load a local version of mermaid, also use the `path` key to specify the location of the library; e.g.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
mermaid:
|
||||||
|
version: "10.1.0"
|
||||||
|
# for (v10+)
|
||||||
|
path: "/assets/js/mermaid.esm.min.mjs"
|
||||||
|
# for (<v10):
|
||||||
|
# path: "/assets/js/mermaid.min.js"
|
||||||
|
# Note: copy both `mermaid.esm.min.mjs` (v10+) or `mermaid.min.js` (<v10) and the associated
|
||||||
|
# `.map` file from the specified version of `mermaid/dist` to `/assets/js/`.
|
||||||
|
```
|
||||||
|
|
||||||
|
For mermaid versions `>=10`, this file is imported directly as an ESM module (rather than as a plain `<script>` tag); users should use the `mermaid.esm.min.mjs` file. In contrast, for mermaid versions `<10`, this file is loaded as a script tag; it should be a standalone CJS file (i.e. `mermaid.min.js`).
|
||||||
|
|
||||||
|
{: .warning }
|
||||||
|
Mermaid versions `10.0` - `10.1` (and possibly, future releases) still encode relative imports in `mermaid.esm.min.mjs`. Local users must copy *all* of the contents of the `dist` folder to the specified path (preserving the relative location of the files). Just the Docs is actively monitoring mermaid releases; an upstream fix is planned.
|
||||||
|
|
||||||
|
### Using mermaid with AsciiDoc
|
||||||
|
|
||||||
|
Users of [AsciiDoc](https://asciidoc.org/) (e.g. via [jekyll-asciidoc](https://github.com/asciidoctor/jekyll-asciidoc)) may need additional configuration to use mermaid.
|
||||||
|
|
||||||
|
By default, AsciiDoc generates HTML markup that mermaid cannot properly parse. The simplest way to resolve this is to use a [passthrough block](https://docs.asciidoctor.org/asciidoc/latest/pass/pass-block/):
|
||||||
|
{% highlight asciidoc %}
|
||||||
|
++++
|
||||||
|
<pre class="language-mermaid">
|
||||||
|
graph TD;
|
||||||
|
A-->B;
|
||||||
|
A-->C;
|
||||||
|
B-->D;
|
||||||
|
C-->D;
|
||||||
|
</pre>
|
||||||
|
++++
|
||||||
|
{% endhighlight %}
|
||||||
|
|
||||||
|
Alternatively, community member [@flyx](https://.github.com/flyx) has contributed a Ruby extension that does not require extra markup. The extension is available [as a GitHub Gist](https://gist.github.com/flyx/9fff080cf4edc95d495bc661a002232c). Thank you to [@flyx](https://.github.com/flyx)!
|
||||||
|
|
||||||
|
The [asciidoctor-diagram](https://docs.asciidoctor.org/diagram-extension/latest/) extension which also supports mermaid is not recommended for use with Just the Docs, since it requires separate configuration e.g. for theming, and is known to not be trivial to set up.
|
||||||
|
|
||||||
|
## Copy button
|
||||||
|
{: .d-inline-block }
|
||||||
|
|
||||||
|
New (v0.4.0)
|
||||||
|
{: .label .label-green }
|
||||||
|
|
||||||
|
The copy button for code blocks can be enabled or disabled via the `enable_copy_code_button` key in `_config.yml`. By default, the value of this key is `false`; users need to opt-in.
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
# For copy button on code
|
||||||
|
enable_copy_code_button: true
|
||||||
|
```
|
||||||
|
|
||||||
|
Note that this feature requires JavaScript; if JavaScript is disabled in the browser, this feature will not work. In addition, this feature uses `navigator.clipboard`, which is only available in [secure contexts](https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts) (such as over HTTPS). If the site is viewed in an insecure context, the copy button will not work ([relevant issue: #1202](https://github.com/just-the-docs/just-the-docs/issues/1202)).
|
||||||
|
@@ -111,4 +111,4 @@ Text can be **bold**, _italic_, or ~~strikethrough~~.
|
|||||||
|
|
||||||
There are a number of specific typographic CSS classes that allow you to override default styling for font size, font weight, line height, and capitalization.
|
There are a number of specific typographic CSS classes that allow you to override default styling for font size, font weight, line height, and capitalization.
|
||||||
|
|
||||||
[View typography utilities]({{ site.baseurl }}{% link docs/utilities/utilities.md %}#typography){: .btn .btn-outline }
|
[View typography utilities]({% link docs/utilities/typography.md %}){: .btn .btn-outline }
|
||||||
|
@@ -17,7 +17,7 @@ parent: Utilities
|
|||||||
|
|
||||||
## Font size
|
## Font size
|
||||||
|
|
||||||
Use the `.fs-1` - `.fs-10` to set an explicit font-size.
|
Use the `.fs-1` - `.fs-10` to set an explicit `font-size`.
|
||||||
|
|
||||||
| Class | Small screen size `font-size` | Large screen size `font-size` |
|
| Class | Small screen size `font-size` | Large screen size `font-size` |
|
||||||
|:--------|:-------------------------------|:------------------------------|
|
|:--------|:-------------------------------|:------------------------------|
|
||||||
@@ -81,7 +81,7 @@ Font size 10
|
|||||||
|
|
||||||
## Font weight
|
## Font weight
|
||||||
|
|
||||||
Use the `.fw-300` - `.fw-700` to set an explicit font-size.
|
Use the `.fw-300` - `.fw-700` to set an explicit `font-weight`.
|
||||||
|
|
||||||
<div class="code-example" markdown="1">
|
<div class="code-example" markdown="1">
|
||||||
Font weight 300
|
Font weight 300
|
||||||
|
3
fixtures/Gemfile-github-pages
Normal file
3
fixtures/Gemfile-github-pages
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
gem 'github-pages', group: :jekyll_plugins
|
13
fixtures/Gemfile-jekyll-3.9
Normal file
13
fixtures/Gemfile-jekyll-3.9
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
gem "jekyll", "~> 3.9"
|
||||||
|
|
||||||
|
gem "jekyll-seo-tag", ">= 2.0"
|
||||||
|
gem "rake", ">= 12.3.1"
|
||||||
|
|
||||||
|
# required for Jekyll 3
|
||||||
|
gem "webrick", "~> 1.7"
|
||||||
|
gem "kramdown-parser-gfm", '~> 1.1'
|
||||||
|
|
||||||
|
# docs-only
|
||||||
|
gem "jekyll-github-metadata", ">= 2.15"
|
9
fixtures/Gemfile-jekyll-4.3
Normal file
9
fixtures/Gemfile-jekyll-4.3
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
source "https://rubygems.org"
|
||||||
|
|
||||||
|
gem "jekyll", "~> 4.3"
|
||||||
|
|
||||||
|
gem "jekyll-seo-tag", ">= 2.0"
|
||||||
|
gem "rake", ">= 12.3.1"
|
||||||
|
|
||||||
|
# docs-only
|
||||||
|
gem "jekyll-github-metadata", ">= 2.15"
|
3
fixtures/README.md
Normal file
3
fixtures/README.md
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
# Test Fixtures
|
||||||
|
|
||||||
|
These files are used by Just the Docs maintainers to test *the theme itself*. **If you are using Just the Docs as a theme, you should not copy these files over.**
|
107
index.md
107
index.md
@@ -6,87 +6,46 @@ description: "Just the Docs is a responsive Jekyll theme with built-in search th
|
|||||||
permalink: /
|
permalink: /
|
||||||
---
|
---
|
||||||
|
|
||||||
# Focus on writing good documentation.
|
# Focus on writing good documentation
|
||||||
{: .fs-9 }
|
{: .fs-9 }
|
||||||
|
|
||||||
Just the Docs gives your documentation a jumpstart with a responsive Jekyll theme that is easily customizable and hosted on GitHub Pages.
|
Just the Docs gives your documentation a jumpstart with a responsive Jekyll theme that is easily customizable and hosted on GitHub Pages.
|
||||||
{: .fs-6 .fw-300 }
|
{: .fs-6 .fw-300 }
|
||||||
|
|
||||||
[Get started now](#getting-started){: .btn .btn-primary .fs-5 .mb-4 .mb-md-0 .mr-2 } [View it on GitHub](https://github.com/just-the-docs/just-the-docs){: .btn .fs-5 .mb-4 .mb-md-0 }
|
[Get started now](#getting-started){: .btn .btn-primary .fs-5 .mb-4 .mb-md-0 .mr-2 }
|
||||||
|
[View it on GitHub][Just the Docs repo]{: .btn .fs-5 .mb-4 .mb-md-0 }
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
{: .new }
|
|
||||||
> **Pre-release version `0.4.0.rc3` is available!**
|
|
||||||
> See [the CHANGELOG]({{ site.baseurl }}{% link CHANGELOG.md %}) for a detailed breakdown.
|
|
||||||
|
|
||||||
{: .warning }
|
{: .warning }
|
||||||
> Specifying `gem "just-the-docs"` in your `Gemfile` uses the latest ***release*** (`v0.3.3`), ignoring all pre-releases!
|
> This website documents the features of the current `main` branch of the Just the Docs theme. See [the CHANGELOG]({% link CHANGELOG.md %}) for a list of releases, new features, and bug fixes.
|
||||||
> To use this pre-release, pin it:
|
|
||||||
> ```ruby
|
Just the Docs is a theme for generating static websites with [Jekyll]. You can write source files for your web pages using [Markdown], the [Liquid] templating language, and HTML.[^1] Jekyll builds your site by converting all files that have [front matter] to HTML. Your [Jekyll configuration] file determines which theme to use, and sets general parameters for your site, such as the URL of its home page.
|
||||||
> gem "just-the-docs", "0.4.0.rc3"
|
|
||||||
> ```
|
Jekyll builds this Just the Docs theme docs website using the theme itself. These web pages show how your web pages will look *by default* when you use this theme. But you can easily *[customize]* the theme to make them look completely different!
|
||||||
> and/or
|
|
||||||
> ```yaml
|
Browse the docs to learn more about how to use this theme.
|
||||||
> remote_theme: just-the-docs/just-the-docs@v0.4.0.rc3
|
|
||||||
> ```
|
|
||||||
|
|
||||||
## Getting started
|
## Getting started
|
||||||
|
|
||||||
### Dependencies
|
The [Just the Docs Template] provides the simplest, quickest, and easiest way to create a new website that uses the Just the Docs theme. To get started with creating a site, just click "[use the template]"!
|
||||||
|
|
||||||
Just the Docs is built for [Jekyll](https://jekyllrb.com), a static site generator. View the [Jekyll quick start guide](https://jekyllrb.com/docs/) for more information. Just the Docs requires no special plugins and can run on GitHub Pages' standard Jekyll compiler. The [Jekyll SEO Tag plugin](https://github.com/jekyll/jekyll-seo-tag) is included by default (no need to run any special installation) to inject SEO and open graph metadata on docs pages. For information on how to configure SEO and open graph metadata visit the [Jekyll SEO Tag usage guide](https://jekyll.github.io/jekyll-seo-tag/usage/).
|
{: .note }
|
||||||
|
To use the theme, you do ***not*** need to clone or fork the [Just the Docs repo]! You should do that only if you intend to browse the theme docs locally, contribute to the development of the theme, or develop a new theme based on Just the Docs.
|
||||||
|
|
||||||
### Quick start: Use as a GitHub Pages remote theme
|
You can easily set the site created by the template to be published on [GitHub Pages] – the [template README] file explains how to do that, along with other details.
|
||||||
|
|
||||||
1. Add Just the Docs to your Jekyll site's `_config.yml` as a [remote theme](https://blog.github.com/2017-11-29-use-any-theme-with-github-pages/)
|
If [Jekyll] is installed on your computer, you can also build and preview the created site *locally*. This lets you test changes before committing them, and avoids waiting for GitHub Pages.[^2] And you will be able to deploy your local build to a different platform than GitHub Pages.
|
||||||
|
|
||||||
```yaml
|
More specifically, the created site:
|
||||||
remote_theme: just-the-docs/just-the-docs
|
|
||||||
```
|
|
||||||
|
|
||||||
<small>You must have GitHub Pages enabled on your repo, one or more Markdown files, and a `_config.yml` file. [See an example repository](https://github.com/pmarsceill/jtd-remote)</small>
|
- uses a gem-based approach, i.e. uses a `Gemfile` and loads the `just-the-docs` gem
|
||||||
|
- uses the [GitHub Pages / Actions workflow] to build and publish the site on GitHub Pages
|
||||||
|
|
||||||
### Local installation: Use the gem-based theme
|
Other than that, you're free to customize sites that you create with the template, however you like. You can easily change the versions of `just-the-docs` and Jekyll it uses, as well as adding further plugins.
|
||||||
|
|
||||||
1. Install the Ruby Gem
|
{: .note }
|
||||||
```bash
|
See the theme [README][Just the Docs README] for how to use the theme as a gem without creating a new site.
|
||||||
$ gem install just-the-docs
|
|
||||||
```
|
|
||||||
```yaml
|
|
||||||
# .. or add it to your Jekyll site’s Gemfile
|
|
||||||
gem "just-the-docs"
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Add Just the Docs to your Jekyll site’s `_config.yml`
|
|
||||||
```yaml
|
|
||||||
theme: "just-the-docs"
|
|
||||||
```
|
|
||||||
|
|
||||||
3. _Optional:_ Initialize search data (creates `search-data.json`)
|
|
||||||
```bash
|
|
||||||
$ bundle exec just-the-docs rake search:init
|
|
||||||
```
|
|
||||||
|
|
||||||
3. Run your local Jekyll server
|
|
||||||
```bash
|
|
||||||
$ jekyll serve
|
|
||||||
```
|
|
||||||
```bash
|
|
||||||
# .. or if you're using a Gemfile (bundler)
|
|
||||||
$ bundle exec jekyll serve
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
4. Point your web browser to [http://localhost:4000](http://localhost:4000)
|
|
||||||
|
|
||||||
If you're hosting your site on GitHub Pages, [set up GitHub Pages and Jekyll locally](https://help.github.com/en/articles/setting-up-your-github-pages-site-locally-with-jekyll) so that you can more easily work in your development environment.
|
|
||||||
|
|
||||||
### Configure Just the Docs
|
|
||||||
|
|
||||||
- [See configuration options]({{ site.baseurl }}{% link docs/configuration.md %})
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## About the project
|
## About the project
|
||||||
|
|
||||||
@@ -106,7 +65,7 @@ email, or any other method with the owners of this repository before making a ch
|
|||||||
<ul class="list-style-none">
|
<ul class="list-style-none">
|
||||||
{% for contributor in site.github.contributors %}
|
{% for contributor in site.github.contributors %}
|
||||||
<li class="d-inline-block mr-1">
|
<li class="d-inline-block mr-1">
|
||||||
<a href="{{ contributor.html_url }}"><img src="{{ contributor.avatar_url }}" width="32" height="32" alt="{{ contributor.login }}"/></a>
|
<a href="{{ contributor.html_url }}"><img src="{{ contributor.avatar_url }}" width="32" height="32" alt="{{ contributor.login }}"></a>
|
||||||
</li>
|
</li>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
@@ -116,3 +75,25 @@ email, or any other method with the owners of this repository before making a ch
|
|||||||
Just the Docs is committed to fostering a welcoming community.
|
Just the Docs is committed to fostering a welcoming community.
|
||||||
|
|
||||||
[View our Code of Conduct](https://github.com/just-the-docs/just-the-docs/tree/main/CODE_OF_CONDUCT.md) on our GitHub repository.
|
[View our Code of Conduct](https://github.com/just-the-docs/just-the-docs/tree/main/CODE_OF_CONDUCT.md) on our GitHub repository.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
[^1]: The [source file for this page] uses all three markup languages.
|
||||||
|
|
||||||
|
[^2]: [It can take up to 10 minutes for changes to your site to publish after you push the changes to GitHub](https://docs.github.com/en/pages/setting-up-a-github-pages-site-with-jekyll/creating-a-github-pages-site-with-jekyll#creating-your-site).
|
||||||
|
|
||||||
|
[Jekyll]: https://jekyllrb.com
|
||||||
|
[Markdown]: https://daringfireball.net/projects/markdown/
|
||||||
|
[Liquid]: https://github.com/Shopify/liquid/wiki
|
||||||
|
[Front matter]: https://jekyllrb.com/docs/front-matter/
|
||||||
|
[Jekyll configuration]: https://jekyllrb.com/docs/configuration/
|
||||||
|
[source file for this page]: https://github.com/just-the-docs/just-the-docs/blob/main/index.md
|
||||||
|
[Just the Docs Template]: https://just-the-docs.github.io/just-the-docs-template/
|
||||||
|
[Just the Docs]: https://just-the-docs.com
|
||||||
|
[Just the Docs repo]: https://github.com/just-the-docs/just-the-docs
|
||||||
|
[Just the Docs README]: https://github.com/just-the-docs/just-the-docs/blob/main/README.md
|
||||||
|
[GitHub Pages]: https://pages.github.com/
|
||||||
|
[Template README]: https://github.com/just-the-docs/just-the-docs-template/blob/main/README.md
|
||||||
|
[GitHub Pages / Actions workflow]: https://github.blog/changelog/2022-07-27-github-pages-custom-github-actions-workflows-beta/
|
||||||
|
[customize]: {% link docs/customization.md %}
|
||||||
|
[use the template]: https://github.com/just-the-docs/just-the-docs-template/generate
|
||||||
|
@@ -2,24 +2,24 @@
|
|||||||
|
|
||||||
Gem::Specification.new do |spec|
|
Gem::Specification.new do |spec|
|
||||||
spec.name = "just-the-docs"
|
spec.name = "just-the-docs"
|
||||||
spec.version = "0.4.0.rc3"
|
spec.version = "0.5.2"
|
||||||
spec.authors = ["Patrick Marsceill", "Matthew Wang"]
|
spec.authors = ["Patrick Marsceill", "Matthew Wang"]
|
||||||
spec.email = ["patrick.marsceill@gmail.com", "matt@matthewwang.me"]
|
spec.email = ["patrick.marsceill@gmail.com", "matt@matthewwang.me"]
|
||||||
|
|
||||||
spec.summary = %q{A modern, highly customizable, and responsive Jekyll theme for documention with built-in search.}
|
spec.summary = %q{A modern, highly customizable, and responsive Jekyll theme for documentation with built-in search.}
|
||||||
spec.homepage = "https://github.com/just-the-docs/just-the-docs"
|
spec.homepage = "https://github.com/just-the-docs/just-the-docs"
|
||||||
spec.license = "MIT"
|
spec.license = "MIT"
|
||||||
spec.metadata = {
|
spec.metadata = {
|
||||||
"bug_tracker_uri" => "https://github.com/just-the-docs/just-the-docs/issues",
|
"bug_tracker_uri" => "https://github.com/just-the-docs/just-the-docs/issues",
|
||||||
"changelog_uri" => "https://github.com/just-the-docs/just-the-docs/blob/main/CHANGELOG.md",
|
"changelog_uri" => "https://github.com/just-the-docs/just-the-docs/blob/main/CHANGELOG.md",
|
||||||
"documentation_uri" => "https://just-the-docs.github.io/just-the-docs/",
|
"documentation_uri" => "https://just-the-docs.com/",
|
||||||
"source_code_uri" => "https://github.com/just-the-docs/just-the-docs",
|
"source_code_uri" => "https://github.com/just-the-docs/just-the-docs",
|
||||||
}
|
}
|
||||||
|
|
||||||
spec.files = `git ls-files -z`.split("\x0").select { |f| f.match(%r{^(assets|bin|_layouts|_includes|lib|Rakefile|_sass|LICENSE|README|CHANGELOG|favicon)}i) }
|
spec.files = `git ls-files -z ':!:*.jpg' ':!:*.png'`.split("\x0").select { |f| f.match(%r{^(assets|bin|_layouts|_includes|lib|Rakefile|_sass|LICENSE|README|CHANGELOG|favicon)}i) }
|
||||||
spec.executables << 'just-the-docs'
|
spec.executables << 'just-the-docs'
|
||||||
|
|
||||||
spec.add_development_dependency "bundler", "~> 2.3.5"
|
spec.add_development_dependency "bundler", ">= 2.3.5"
|
||||||
spec.add_runtime_dependency "jekyll", ">= 3.8.5"
|
spec.add_runtime_dependency "jekyll", ">= 3.8.5"
|
||||||
spec.add_runtime_dependency "jekyll-seo-tag", ">= 2.0"
|
spec.add_runtime_dependency "jekyll-seo-tag", ">= 2.0"
|
||||||
spec.add_runtime_dependency "rake", ">= 12.3.1"
|
spec.add_runtime_dependency "rake", ">= 12.3.1"
|
||||||
|
@@ -61,6 +61,7 @@ permalink: /assets/js/search-data.json
|
|||||||
"title": {{ title | jsonify }},
|
"title": {{ title | jsonify }},
|
||||||
"content": {{ content | replace: \'</h\', \' . </h\' | replace: \'<hr\', \' . <hr\' | replace: \'</p\', \' . </p\' | replace: \'<ul\', \' . <ul\' | replace: \'</ul\', \' . </ul\' | replace: \'<ol\', \' . <ol\' | replace: \'</ol\', \' . </ol\' | replace: \'</tr\', \' . </tr\' | replace: \'<li\', \' | <li\' | replace: \'</li\', \' | </li\' | replace: \'</td\', \' | </td\' | replace: \'<td\', \' | <td\' | replace: \'</th\', \' | </th\' | replace: \'<th\', \' | <th\' | strip_html | remove: \'Table of contents\' | normalize_whitespace | replace: \'. . .\', \'.\' | replace: \'. .\', \'.\' | replace: \'| |\', \'|\' | append: \' \' | jsonify }},
|
"content": {{ content | replace: \'</h\', \' . </h\' | replace: \'<hr\', \' . <hr\' | replace: \'</p\', \' . </p\' | replace: \'<ul\', \' . <ul\' | replace: \'</ul\', \' . </ul\' | replace: \'<ol\', \' . <ol\' | replace: \'</ol\', \' . </ol\' | replace: \'</tr\', \' . </tr\' | replace: \'<li\', \' | <li\' | replace: \'</li\', \' | </li\' | replace: \'</td\', \' | </td\' | replace: \'<td\', \' | <td\' | replace: \'</th\', \' | </th\' | replace: \'<th\', \' | <th\' | strip_html | remove: \'Table of contents\' | normalize_whitespace | replace: \'. . .\', \'.\' | replace: \'. .\', \'.\' | replace: \'| |\', \'|\' | append: \' \' | jsonify }},
|
||||||
"url": "{{ url | relative_url }}",
|
"url": "{{ url | relative_url }}",
|
||||||
|
{% include lunr/custom-data.json page=page %}
|
||||||
"relUrl": "{{ url }}"
|
"relUrl": "{{ url }}"
|
||||||
}
|
}
|
||||||
{%- assign i = i | plus: 1 -%}
|
{%- assign i = i | plus: 1 -%}
|
||||||
@@ -72,6 +73,7 @@ permalink: /assets/js/search-data.json
|
|||||||
"title": {{ page.title | jsonify }},
|
"title": {{ page.title | jsonify }},
|
||||||
"content": {{ parts[0] | replace: \'</h\', \' . </h\' | replace: \'<hr\', \' . <hr\' | replace: \'</p\', \' . </p\' | replace: \'<ul\', \' . <ul\' | replace: \'</ul\', \' . </ul\' | replace: \'<ol\', \' . <ol\' | replace: \'</ol\', \' . </ol\' | replace: \'</tr\', \' . </tr\' | replace: \'<li\', \' | <li\' | replace: \'</li\', \' | </li\' | replace: \'</td\', \' | </td\' | replace: \'<td\', \' | <td\' | replace: \'</th\', \' | </th\' | replace: \'<th\', \' | <th\' | strip_html | remove: \'Table of contents\' | normalize_whitespace | replace: \'. . .\', \'.\' | replace: \'. .\', \'.\' | replace: \'| |\', \'|\' | append: \' \' | jsonify }},
|
"content": {{ parts[0] | replace: \'</h\', \' . </h\' | replace: \'<hr\', \' . <hr\' | replace: \'</p\', \' . </p\' | replace: \'<ul\', \' . <ul\' | replace: \'</ul\', \' . </ul\' | replace: \'<ol\', \' . <ol\' | replace: \'</ol\', \' . </ol\' | replace: \'</tr\', \' . </tr\' | replace: \'<li\', \' | <li\' | replace: \'</li\', \' | </li\' | replace: \'</td\', \' | </td\' | replace: \'<td\', \' | <td\' | replace: \'</th\', \' | </th\' | replace: \'<th\', \' | <th\' | strip_html | remove: \'Table of contents\' | normalize_whitespace | replace: \'. . .\', \'.\' | replace: \'. .\', \'.\' | replace: \'| |\', \'|\' | append: \' \' | jsonify }},
|
||||||
"url": "{{ page.url | relative_url }}",
|
"url": "{{ page.url | relative_url }}",
|
||||||
|
{% include lunr/custom-data.json page=page %}
|
||||||
"relUrl": "{{ page.url }}"
|
"relUrl": "{{ page.url }}"
|
||||||
}
|
}
|
||||||
{%- assign i = i | plus: 1 -%}
|
{%- assign i = i | plus: 1 -%}
|
||||||
|
2258
package-lock.json
generated
2258
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
41
package.json
41
package.json
@@ -6,15 +6,42 @@
|
|||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"bugs": "https://github.com/just-the-docs/just-the-docs/issues",
|
"bugs": "https://github.com/just-the-docs/just-the-docs/issues",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"prettier": "^2.7.1",
|
"npm-run-all": "^4.1.5",
|
||||||
"stylelint": "^14.13.0",
|
"prettier": "^2.8.8",
|
||||||
"stylelint-config-prettier-scss": "0.0.1",
|
"stylelint": "^15.7.0",
|
||||||
"stylelint-config-standard-scss": "^5.0.0",
|
"stylelint-config-standard-scss": "^9.0.0"
|
||||||
"stylelint-prettier": "^2.0.0"
|
|
||||||
},
|
},
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"test": "stylelint '**/*.scss'",
|
"lint": "npm-run-all --parallel --continue-on-error lint:*",
|
||||||
|
"lint:css": "stylelint '**/*.scss'",
|
||||||
|
"lint:formatting": "prettier --check '**/*.{scss,js,json}'",
|
||||||
"format": "prettier --write '**/*.{scss,js,json}'",
|
"format": "prettier --write '**/*.{scss,js,json}'",
|
||||||
"stylelint-check": "stylelint-config-prettier-check"
|
"test": "npm run lint"
|
||||||
|
},
|
||||||
|
"stylelint": {
|
||||||
|
"ignoreFiles": [
|
||||||
|
"assets/css/just-the-docs-default.scss",
|
||||||
|
"assets/css/just-the-docs-light.scss",
|
||||||
|
"assets/css/just-the-docs-dark.scss",
|
||||||
|
"_sass/vendor/**/*.scss"
|
||||||
|
],
|
||||||
|
"extends": [
|
||||||
|
"stylelint-config-standard-scss"
|
||||||
|
],
|
||||||
|
"rules": {
|
||||||
|
"alpha-value-notation": null,
|
||||||
|
"at-rule-empty-line-before": null,
|
||||||
|
"color-function-notation": null,
|
||||||
|
"media-feature-range-notation": "prefix",
|
||||||
|
"no-descending-specificity": null,
|
||||||
|
"scss/no-global-function-names": null
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"prettier": {
|
||||||
|
"endOfLine": "lf",
|
||||||
|
"semi": false,
|
||||||
|
"singleQuote": false,
|
||||||
|
"tabWidth": 2,
|
||||||
|
"trailingComma": "es5"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user