Merge branch 'master' into chore/flow-type-checking
This commit is contained in:
commit
c6e5159cc6
|
|
@ -24,6 +24,7 @@
|
||||||
# NPM-related
|
# NPM-related
|
||||||
/node_modules
|
/node_modules
|
||||||
/npm-debug.log*
|
/npm-debug.log*
|
||||||
|
/yarn-error.log
|
||||||
|
|
||||||
# Files generated by build
|
# Files generated by build
|
||||||
/build
|
/build
|
||||||
|
|
|
||||||
96
.travis.yml
96
.travis.yml
|
|
@ -21,15 +21,82 @@
|
||||||
language: node_js
|
language: node_js
|
||||||
sudo: false
|
sudo: false
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# Regular builds
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
# Node.js versions
|
# Node.js versions
|
||||||
node_js:
|
node_js:
|
||||||
- 5
|
- 5
|
||||||
- 6
|
- 6
|
||||||
- 7
|
- 7
|
||||||
|
|
||||||
# Build visual tests separately - temporary disabled until tests are stable
|
# Limit clone depth to 5, to speed up build
|
||||||
# matrix:
|
git:
|
||||||
# include:
|
depth: 5
|
||||||
|
|
||||||
|
# Cache dependencies
|
||||||
|
cache:
|
||||||
|
pip: true
|
||||||
|
yarn: true
|
||||||
|
directories:
|
||||||
|
- node_modules
|
||||||
|
|
||||||
|
# Install yarn as Travis doesn't support it out of the box
|
||||||
|
before_install:
|
||||||
|
- npm install -g yarn
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
install:
|
||||||
|
- yarn install --ignore-optional
|
||||||
|
- pip install --user -r requirements.txt
|
||||||
|
|
||||||
|
# Perform build and tests
|
||||||
|
script:
|
||||||
|
- yarn run build
|
||||||
|
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# Additional builds
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# Matrix for additional builds
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
|
||||||
|
# Build release and docker image and send to PyPI and Docker Hub.
|
||||||
|
- node_js: 5
|
||||||
|
services:
|
||||||
|
- docker
|
||||||
|
env:
|
||||||
|
- __TASK=RELEASE
|
||||||
|
|
||||||
|
# If we're not on a release branch, exit early and indicate success
|
||||||
|
before_install:
|
||||||
|
- echo "$TRAVIS_BRANCH" | grep -qvE "^[0-9.]+$" && exit 0; :;
|
||||||
|
|
||||||
|
# Install wheel for build
|
||||||
|
install:
|
||||||
|
- pip install wheel
|
||||||
|
|
||||||
|
# Perform build
|
||||||
|
script:
|
||||||
|
- python setup.py build sdist bdist_wheel --universal
|
||||||
|
- docker build -t $TRAVIS_REPO_SLUG .
|
||||||
|
|
||||||
|
# If build was successful, publish
|
||||||
|
after_success:
|
||||||
|
|
||||||
|
# Install twine and push release to PyPI
|
||||||
|
- pip install twine
|
||||||
|
- twine upload -u $PYPI_USERNAME -p $PYPI_PASSWORD dist/*
|
||||||
|
|
||||||
|
# Push to Docker Hub
|
||||||
|
- docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
|
||||||
|
- docker tag $TRAVIS_REPO_SLUG $TRAVIS_REPO_SLUG:$TRAVIS_BRANCH
|
||||||
|
- docker tag $TRAVIS_REPO_SLUG $TRAVIS_REPO_SLUG:latest
|
||||||
|
- docker push $TRAVIS_REPO_SLUG
|
||||||
|
|
||||||
|
# # Build visual tests separately - temporary disabled until tests stable
|
||||||
# - node_js: 5
|
# - node_js: 5
|
||||||
# addons:
|
# addons:
|
||||||
# artifacts:
|
# artifacts:
|
||||||
|
|
@ -45,26 +112,3 @@ node_js:
|
||||||
# - CXX=g++-4.8
|
# - CXX=g++-4.8
|
||||||
# install: yarn install
|
# install: yarn install
|
||||||
# script: yarn run test:visual:run
|
# script: yarn run test:visual:run
|
||||||
|
|
||||||
# Limit clone depth to 5, to speed up build
|
|
||||||
git:
|
|
||||||
depth: 5
|
|
||||||
|
|
||||||
# Cache dependencies
|
|
||||||
cache:
|
|
||||||
pip: true
|
|
||||||
yarn: true
|
|
||||||
directories:
|
|
||||||
- node_modules
|
|
||||||
|
|
||||||
# Install yarn as Travis doesn't support it out of the box
|
|
||||||
before_install: npm install -g yarn
|
|
||||||
|
|
||||||
# Do not install optional dependencies by default
|
|
||||||
install: yarn install --ignore-optional
|
|
||||||
|
|
||||||
# Install dependencies
|
|
||||||
before_script: pip install --user -r requirements.txt
|
|
||||||
|
|
||||||
# Perform build and tests
|
|
||||||
script: yarn run build
|
|
||||||
|
|
|
||||||
23
Dockerfile
23
Dockerfile
|
|
@ -21,17 +21,30 @@
|
||||||
FROM jfloff/alpine-python:2.7-slim
|
FROM jfloff/alpine-python:2.7-slim
|
||||||
MAINTAINER Martin Donath <martin.donath@squidfunk.com>
|
MAINTAINER Martin Donath <martin.donath@squidfunk.com>
|
||||||
|
|
||||||
# Set working directory
|
# Set build directory
|
||||||
WORKDIR /docs
|
WORKDIR /tmp
|
||||||
|
|
||||||
# Install packages
|
# Install dependencies
|
||||||
COPY requirements.txt .
|
COPY requirements.txt .
|
||||||
RUN \
|
RUN \
|
||||||
pip install -r requirements.txt && \
|
pip install -r requirements.txt && \
|
||||||
pip install mkdocs-material && \
|
|
||||||
rm requirements.txt
|
rm requirements.txt
|
||||||
|
|
||||||
# Expose MkDocs default port
|
# Copy files necessary for build
|
||||||
|
COPY material material
|
||||||
|
COPY MANIFEST.in MANIFEST.in
|
||||||
|
COPY package.json package.json
|
||||||
|
COPY setup.py setup.py
|
||||||
|
|
||||||
|
# Perform build and cleanup artifacts
|
||||||
|
RUN \
|
||||||
|
python setup.py install && \
|
||||||
|
rm -rf /tmp/*
|
||||||
|
|
||||||
|
# Set working directory
|
||||||
|
WORKDIR /docs
|
||||||
|
|
||||||
|
# Expose MkDocs development server port
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
|
|
||||||
# Start development server by default
|
# Start development server by default
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,17 @@
|
||||||
[![Travis][travis-image]][travis-link]
|
[![Travis][travis-image]][travis-link]
|
||||||
[![Dependencies][deps-image]][deps-link]
|
|
||||||
[![Codacy][codacy-image]][codacy-link]
|
[![Codacy][codacy-image]][codacy-link]
|
||||||
[![Docker][docker-image]][docker-link]
|
[![Docker][docker-image]][docker-link]
|
||||||
[![PyPI][pypi-image]][pypi-link]
|
[![PyPI][pypi-image]][pypi-link]
|
||||||
|
|
||||||
[travis-image]: https://travis-ci.org/squidfunk/mkdocs-material.svg?branch=master
|
[travis-image]: https://travis-ci.org/squidfunk/mkdocs-material.svg?branch=master
|
||||||
[travis-link]: https://travis-ci.org/squidfunk/mkdocs-material
|
[travis-link]: https://travis-ci.org/squidfunk/mkdocs-material
|
||||||
[deps-image]: https://david-dm.org/squidfunk/mkdocs-material/dev-status.svg
|
|
||||||
[deps-link]: https://david-dm.org/squidfunk/mkdocs-material?type=dev
|
|
||||||
[codacy-image]: https://api.codacy.com/project/badge/Grade/fe07aa1fa91d453cb69711d3885c5d7e
|
[codacy-image]: https://api.codacy.com/project/badge/Grade/fe07aa1fa91d453cb69711d3885c5d7e
|
||||||
[codacy-link]: https://www.codacy.com/app/squidfunk/mkdocs-material?utm_source=github.com&utm_medium=referral&utm_content=squidfunk/mkdocs-material&utm_campaign=Badge_Grade
|
[codacy-link]: https://www.codacy.com/app/squidfunk/mkdocs-material?utm_source=github.com&utm_medium=referral&utm_content=squidfunk/mkdocs-material&utm_campaign=Badge_Grade
|
||||||
[docker-image]: https://img.shields.io/docker/pulls/squidfunk/mkdocs-material.svg
|
[docker-image]: https://img.shields.io/docker/automated/squidfunk/mkdocs-material.svg
|
||||||
[docker-link]: https://hub.docker.com/r/squidfunk/mkdocs-material/
|
[docker-link]: https://hub.docker.com/r/squidfunk/mkdocs-material/
|
||||||
[pypi-image]: https://img.shields.io/pypi/v/mkdocs-material.svg
|
[pypi-image]: https://img.shields.io/pypi/v/mkdocs-material.svg
|
||||||
[pypi-link]: https://pypi.python.org/pypi/mkdocs-material
|
[pypi-link]: https://pypi.python.org/pypi/mkdocs-material
|
||||||
|
|
||||||
|
|
||||||
# Material for MkDocs
|
# Material for MkDocs
|
||||||
|
|
||||||
A Material Design theme for [MkDocs](http://www.mkdocs.org).
|
A Material Design theme for [MkDocs](http://www.mkdocs.org).
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
|
|
||||||
The official [Docker image][1] for Material comes with all dependencies
|
The official [Docker image][1] for Material comes with all dependencies
|
||||||
pre-installed and ready-to-use with the latest version published on PyPI,
|
pre-installed and ready-to-use with the latest version published on PyPI,
|
||||||
packaged in a very small image (27MB compressed).
|
packaged in a very small image (28MB compressed).
|
||||||
|
|
||||||
### Installing MkDocs
|
### Installing MkDocs
|
||||||
|
|
||||||
|
|
@ -246,7 +246,7 @@ extra:
|
||||||
```
|
```
|
||||||
|
|
||||||
[12]: https://fonts.google.com/specimen/Roboto
|
[12]: https://fonts.google.com/specimen/Roboto
|
||||||
[13]: https://fonts.google.com/
|
[13]: https://fonts.google.com
|
||||||
[14]: https://fonts.google.com/specimen/Ubuntu
|
[14]: https://fonts.google.com/specimen/Ubuntu
|
||||||
|
|
||||||
### Adding a logo
|
### Adding a logo
|
||||||
|
|
@ -300,6 +300,21 @@ google_analytics:
|
||||||
- 'auto'
|
- 'auto'
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Disqus integation
|
||||||
|
|
||||||
|
Material for MkDocs is integrated with [Disqus][16], so if you want to add a
|
||||||
|
comments section to your documentation set the shortname of your Disqus project
|
||||||
|
in your `mkdocs.yml`:
|
||||||
|
|
||||||
|
``` yaml
|
||||||
|
extra:
|
||||||
|
disqus: 'your-disqus-shortname'
|
||||||
|
```
|
||||||
|
|
||||||
|
The necessary JavaScript is automatically included.
|
||||||
|
|
||||||
|
[16]: https://disqus.com
|
||||||
|
|
||||||
### Localization <small>L10N</small>
|
### Localization <small>L10N</small>
|
||||||
|
|
||||||
In order to localize the labels (e.g. *Previous* and *Next* in the footer),
|
In order to localize the labels (e.g. *Previous* and *Next* in the footer),
|
||||||
|
|
@ -309,6 +324,7 @@ translations inside the macro `t`:
|
||||||
``` jinja
|
``` jinja
|
||||||
{% macro t(key) %}{{ {
|
{% macro t(key) %}{{ {
|
||||||
"edit.link.title": "Edit this page",
|
"edit.link.title": "Edit this page",
|
||||||
|
"comments": "Comments",
|
||||||
"footer.previous": "Previous",
|
"footer.previous": "Previous",
|
||||||
"footer.next": "Next",
|
"footer.next": "Next",
|
||||||
"search.placeholder": "Search",
|
"search.placeholder": "Search",
|
||||||
|
|
@ -318,7 +334,7 @@ translations inside the macro `t`:
|
||||||
```
|
```
|
||||||
|
|
||||||
Just copy the file from the original theme and make your adjustments. See the
|
Just copy the file from the original theme and make your adjustments. See the
|
||||||
section on [overriding partials][16] in the customization guide.
|
section on [overriding partials][17] in the customization guide.
|
||||||
|
|
||||||
!!! warning "Migrating from Material 0.2.x"
|
!!! warning "Migrating from Material 0.2.x"
|
||||||
|
|
||||||
|
|
@ -326,18 +342,18 @@ section on [overriding partials][16] in the customization guide.
|
||||||
`mkdocs.yml`. With 1.0.0 this is no longer possible as the configuration
|
`mkdocs.yml`. With 1.0.0 this is no longer possible as the configuration
|
||||||
will be ignored.
|
will be ignored.
|
||||||
|
|
||||||
[16]: customization.md#overriding-partials
|
[17]: customization.md#overriding-partials
|
||||||
|
|
||||||
### More advanced customization
|
### More advanced customization
|
||||||
|
|
||||||
If you want to change the general appearance of the Material theme, see
|
If you want to change the general appearance of the Material theme, see
|
||||||
[this article][17] for more information on advanced customization.
|
[this article][18] for more information on advanced customization.
|
||||||
|
|
||||||
[17]: customization.md
|
[18]: customization.md
|
||||||
|
|
||||||
## Extensions
|
## Extensions
|
||||||
|
|
||||||
MkDocs supports several [Markdown extensions][18]. The following extensions
|
MkDocs supports several [Markdown extensions][19]. The following extensions
|
||||||
are not enabled by default (see the link for which are enabled by default)
|
are not enabled by default (see the link for which are enabled by default)
|
||||||
but highly recommended, so they should be switched on at all times:
|
but highly recommended, so they should be switched on at all times:
|
||||||
|
|
||||||
|
|
@ -351,18 +367,18 @@ markdown_extensions:
|
||||||
For more information, see the following list of extensions supported by the
|
For more information, see the following list of extensions supported by the
|
||||||
Material theme including more information regarding installation and usage:
|
Material theme including more information regarding installation and usage:
|
||||||
|
|
||||||
* [Admonition][19]
|
* [Admonition][20]
|
||||||
* [Codehilite][20]
|
* [Codehilite][21]
|
||||||
* [Permalinks][21]
|
* [Permalinks][22]
|
||||||
* [Footnotes][22]
|
* [Footnotes][23]
|
||||||
* [PyMdown Extensions][23]
|
* [PyMdown Extensions][24]
|
||||||
|
|
||||||
[18]: http://www.mkdocs.org/user-guide/writing-your-docs/#markdown-extensions
|
[19]: http://www.mkdocs.org/user-guide/writing-your-docs/#markdown-extensions
|
||||||
[19]: extensions/admonition.md
|
[20]: extensions/admonition.md
|
||||||
[20]: extensions/codehilite.md
|
[21]: extensions/codehilite.md
|
||||||
[21]: extensions/permalinks.md
|
[22]: extensions/permalinks.md
|
||||||
[22]: extensions/footnotes.md
|
[23]: extensions/footnotes.md
|
||||||
[23]: extensions/pymdown.md
|
[24]: extensions/pymdown.md
|
||||||
|
|
||||||
## Full example
|
## Full example
|
||||||
|
|
||||||
|
|
@ -380,7 +396,7 @@ repo_name: 'GitHub'
|
||||||
repo_url: 'https://github.com/my-github-handle/my-project'
|
repo_url: 'https://github.com/my-github-handle/my-project'
|
||||||
|
|
||||||
# Copyright
|
# Copyright
|
||||||
copyright: 'Copyright © 2016 John Doe'
|
copyright: 'Copyright © 2016 - 2017 John Doe'
|
||||||
|
|
||||||
# Documentation and theme
|
# Documentation and theme
|
||||||
theme: 'material'
|
theme: 'material'
|
||||||
|
|
@ -394,13 +410,14 @@ extra:
|
||||||
font:
|
font:
|
||||||
text: 'Roboto'
|
text: 'Roboto'
|
||||||
code: 'Roboto Mono'
|
code: 'Roboto Mono'
|
||||||
|
disqus: 'your-disqus-shortname'
|
||||||
social:
|
social:
|
||||||
- type: 'github'
|
- type: 'github'
|
||||||
link: 'https://github.com/squidfunk'
|
link: 'https://github.com/john-doe'
|
||||||
- type: 'twitter'
|
- type: 'twitter'
|
||||||
link: 'https://twitter.com/squidfunk'
|
link: 'https://twitter.com/jonh-doe'
|
||||||
- type: 'linkedin'
|
- type: 'linkedin'
|
||||||
link: 'https://de.linkedin.com/in/martin-donath-20a95039'
|
link: 'https://de.linkedin.com/in/john-doe'
|
||||||
|
|
||||||
# Google Analytics
|
# Google Analytics
|
||||||
google_analytics:
|
google_analytics:
|
||||||
|
|
|
||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
|
@ -34,7 +34,7 @@
|
||||||
<script src="{{ base_url }}/assets/javascripts/modernizr-56ade86843.js"></script>
|
<script src="{{ base_url }}/assets/javascripts/modernizr-56ade86843.js"></script>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
{% block styles %}
|
{% block styles %}
|
||||||
<link rel="stylesheet" href="{{ base_url }}/assets/stylesheets/application-4b280ca4d9.css">
|
<link rel="stylesheet" href="{{ base_url }}/assets/stylesheets/application-a7dac97dbb.css">
|
||||||
{% if config.extra.palette %}
|
{% if config.extra.palette %}
|
||||||
<link rel="stylesheet" href="{{ base_url }}/assets/stylesheets/application-02ce7adcc2.palette.css">
|
<link rel="stylesheet" href="{{ base_url }}/assets/stylesheets/application-02ce7adcc2.palette.css">
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
@ -115,6 +115,23 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
{{ page.content }}
|
{{ page.content }}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
{% if config.extra.disqus and not page.is_homepage %}
|
||||||
|
<h2>{{ lang.t('comments') }}</h2>
|
||||||
|
<div id="disqus_thread"></div>
|
||||||
|
<script>
|
||||||
|
var disqus_config = function () {
|
||||||
|
this.page.url = "{{ page.canonical_url }}";
|
||||||
|
this.page.identifier =
|
||||||
|
"{{ page.canonical_url | replace(config.site_url, "") }}";
|
||||||
|
};
|
||||||
|
(function() {
|
||||||
|
var d = document, s = d.createElement("script");
|
||||||
|
s.src = "//{{ config.extra.disqus }}.disqus.com/embed.js";
|
||||||
|
s.setAttribute("data-timestamp", +new Date());
|
||||||
|
(d.head || d.body).appendChild(s);
|
||||||
|
})();
|
||||||
|
</script>
|
||||||
|
{% endif %}
|
||||||
</article>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -124,7 +141,7 @@
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
</div>
|
</div>
|
||||||
{% block scripts %}
|
{% block scripts %}
|
||||||
<script src="{{ base_url }}/assets/javascripts/application-3fa7d77989.js"></script>
|
<script src="{{ base_url }}/assets/javascripts/application-8dc3dfc020.js"></script>
|
||||||
<script>app.initialize({url:{base:"{{ base_url }}"}})</script>
|
<script>app.initialize({url:{base:"{{ base_url }}"}})</script>
|
||||||
{% for path in extra_javascript %}
|
{% for path in extra_javascript %}
|
||||||
<script src="{{ path }}"></script>
|
<script src="{{ path }}"></script>
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
{% macro t(key) %}{{ {
|
{% macro t(key) %}{{ {
|
||||||
"edit.link.title": "Edit this page",
|
"edit.link.title": "Edit this page",
|
||||||
|
"comments": "Comments",
|
||||||
"footer.previous": "Previous",
|
"footer.previous": "Previous",
|
||||||
"footer.next": "Next",
|
"footer.next": "Next",
|
||||||
"search.placeholder": "Search",
|
"search.placeholder": "Search",
|
||||||
|
|
|
||||||
|
|
@ -50,14 +50,17 @@ function initialize(config) { // eslint-disable-line func-style
|
||||||
/* Wrap all data tables for better overflow scrolling */
|
/* Wrap all data tables for better overflow scrolling */
|
||||||
const tables = document.querySelectorAll("table:not([class])")
|
const tables = document.querySelectorAll("table:not([class])")
|
||||||
Array.prototype.forEach.call(tables, table => {
|
Array.prototype.forEach.call(tables, table => {
|
||||||
const wrap = document.createElement("div")
|
const wrap = (
|
||||||
wrap.classList.add("md-typeset__table")
|
<div class="md-typeset__scrollwrap">
|
||||||
|
<div class="md-typeset__table"></div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
if (table.nextSibling) {
|
if (table.nextSibling) {
|
||||||
table.parentNode.insertBefore(wrap, table.nextSibling)
|
table.parentNode.insertBefore(wrap, table.nextSibling)
|
||||||
} else {
|
} else {
|
||||||
table.parentNode.appendChild(wrap)
|
table.parentNode.appendChild(wrap)
|
||||||
}
|
}
|
||||||
wrap.appendChild(table)
|
wrap.children[0].appendChild(table)
|
||||||
})
|
})
|
||||||
|
|
||||||
/* Force 1px scroll offset to trigger overflow scrolling */
|
/* Force 1px scroll offset to trigger overflow scrolling */
|
||||||
|
|
|
||||||
|
|
@ -367,18 +367,18 @@ kbd {
|
||||||
table:not([class]) {
|
table:not([class]) {
|
||||||
@include z-depth(2);
|
@include z-depth(2);
|
||||||
|
|
||||||
margin: 2em 0;
|
display: inline-block;
|
||||||
|
max-width: 100%;
|
||||||
border-radius: 0.2rem;
|
border-radius: 0.2rem;
|
||||||
font-size: ms(-1);
|
font-size: ms(-1);
|
||||||
overflow: hidden;
|
overflow: auto;
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
|
||||||
// Semi-cool overflow solution, in case JavaScript is not available
|
// Due to margin collapse because of the necessary inline-block hack, we
|
||||||
.no-js & {
|
// cannot increase the bottom margin on the table, so we just increase the
|
||||||
display: inline-block;
|
// top margin on the following element
|
||||||
max-width: 100%;
|
& + * {
|
||||||
margin: 0.8em 0;
|
margin-top: 1.5em;
|
||||||
overflow: auto;
|
|
||||||
-webkit-overflow-scrolling: touch;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Table headings and cells
|
// Table headings and cells
|
||||||
|
|
@ -414,16 +414,25 @@ kbd {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Data table wrapper, in case JavaScript is available
|
// Wrapper for scrolling on overflow
|
||||||
.md-typeset__table {
|
&__scrollwrap {
|
||||||
margin: 1.6em -1.6rem;
|
margin: 1em -1.6rem;
|
||||||
overflow-x: auto;
|
overflow-x: auto;
|
||||||
-webkit-overflow-scrolling: touch;
|
-webkit-overflow-scrolling: touch;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Data table wrapper, in case JavaScript is available
|
||||||
|
.md-typeset__table {
|
||||||
|
display: inline-block;
|
||||||
|
margin-bottom: 0.5em;
|
||||||
|
padding: 0 1.6rem;
|
||||||
|
|
||||||
// Data tables
|
// Data tables
|
||||||
table {
|
table {
|
||||||
display: inline-block;
|
display: table;
|
||||||
margin: 0 1.6rem;
|
width: 100%;
|
||||||
|
margin: 0;
|
||||||
|
overflow: hidden;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -230,6 +230,25 @@
|
||||||
<!-- Content -->
|
<!-- Content -->
|
||||||
{{ page.content }}
|
{{ page.content }}
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
|
<!-- Disqus integration -->
|
||||||
|
{% if config.extra.disqus and not page.is_homepage %}
|
||||||
|
<h2>{{ lang.t('comments') }}</h2>
|
||||||
|
<div id="disqus_thread"></div>
|
||||||
|
<script>
|
||||||
|
var disqus_config = function () {
|
||||||
|
this.page.url = "{{ page.canonical_url }}";
|
||||||
|
this.page.identifier =
|
||||||
|
"{{ page.canonical_url | replace(config.site_url, "") }}";
|
||||||
|
};
|
||||||
|
(function() {
|
||||||
|
var d = document, s = d.createElement("script");
|
||||||
|
s.src = "//{{ config.extra.disqus }}.disqus.com/embed.js";
|
||||||
|
s.setAttribute("data-timestamp", +new Date());
|
||||||
|
(d.head || d.body).appendChild(s);
|
||||||
|
})();
|
||||||
|
</script>
|
||||||
|
{% endif %}
|
||||||
</article>
|
</article>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,7 @@
|
||||||
<!-- Translations -->
|
<!-- Translations -->
|
||||||
{% macro t(key) %}{{ {
|
{% macro t(key) %}{{ {
|
||||||
"edit.link.title": "Edit this page",
|
"edit.link.title": "Edit this page",
|
||||||
|
"comments": "Comments",
|
||||||
"footer.previous": "Previous",
|
"footer.previous": "Previous",
|
||||||
"footer.next": "Next",
|
"footer.next": "Next",
|
||||||
"search.placeholder": "Search",
|
"search.placeholder": "Search",
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue