mirror of
https://github.com/fablab-nea/wiki.git
synced 2024-11-24 08:32:25 +01:00
deploy: 133265d8ed
This commit is contained in:
parent
40c3c67632
commit
e772439d14
|
@ -1 +1 @@
|
||||||
This file makes sure that Github Pages doesn't process mdBook's output.
|
This file makes sure that Github Pages doesn't process mdBook's output.
|
||||||
|
|
190
404.html
Normal file
190
404.html
Normal file
|
@ -0,0 +1,190 @@
|
||||||
|
<!DOCTYPE HTML>
|
||||||
|
<html lang="de" class="sidebar-visible no-js light">
|
||||||
|
<head>
|
||||||
|
<!-- Book generated using mdBook -->
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title></title>
|
||||||
|
<base href="/">
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Custom HTML head -->
|
||||||
|
|
||||||
|
|
||||||
|
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
|
||||||
|
<meta name="description" content="">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<meta name="theme-color" content="#ffffff" />
|
||||||
|
|
||||||
|
<link rel="icon" href="favicon.svg">
|
||||||
|
<link rel="shortcut icon" href="favicon.png">
|
||||||
|
<link rel="stylesheet" href="css/variables.css">
|
||||||
|
<link rel="stylesheet" href="css/general.css">
|
||||||
|
<link rel="stylesheet" href="css/chrome.css">
|
||||||
|
<link rel="stylesheet" href="css/print.css" media="print">
|
||||||
|
|
||||||
|
<!-- Fonts -->
|
||||||
|
<link rel="stylesheet" href="FontAwesome/css/font-awesome.css">
|
||||||
|
<link rel="stylesheet" href="fonts/fonts.css">
|
||||||
|
|
||||||
|
<!-- Highlight.js Stylesheets -->
|
||||||
|
<link rel="stylesheet" href="highlight.css">
|
||||||
|
<link rel="stylesheet" href="tomorrow-night.css">
|
||||||
|
<link rel="stylesheet" href="ayu-highlight.css">
|
||||||
|
|
||||||
|
<!-- Custom theme stylesheets -->
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<!-- Provide site root to javascript -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
var path_to_root = "";
|
||||||
|
var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "navy" : "light";
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Work around some values being stored in localStorage wrapped in quotes -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
try {
|
||||||
|
var theme = localStorage.getItem('mdbook-theme');
|
||||||
|
var sidebar = localStorage.getItem('mdbook-sidebar');
|
||||||
|
|
||||||
|
if (theme.startsWith('"') && theme.endsWith('"')) {
|
||||||
|
localStorage.setItem('mdbook-theme', theme.slice(1, theme.length - 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (sidebar.startsWith('"') && sidebar.endsWith('"')) {
|
||||||
|
localStorage.setItem('mdbook-sidebar', sidebar.slice(1, sidebar.length - 1));
|
||||||
|
}
|
||||||
|
} catch (e) { }
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Set the theme before any content is loaded, prevents flash -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
var theme;
|
||||||
|
try { theme = localStorage.getItem('mdbook-theme'); } catch(e) { }
|
||||||
|
if (theme === null || theme === undefined) { theme = default_theme; }
|
||||||
|
var html = document.querySelector('html');
|
||||||
|
html.classList.remove('no-js')
|
||||||
|
html.classList.remove('light')
|
||||||
|
html.classList.add(theme);
|
||||||
|
html.classList.add('js');
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<!-- Hide / unhide sidebar before it is displayed -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
var html = document.querySelector('html');
|
||||||
|
var sidebar = 'hidden';
|
||||||
|
if (document.body.clientWidth >= 1080) {
|
||||||
|
try { sidebar = localStorage.getItem('mdbook-sidebar'); } catch(e) { }
|
||||||
|
sidebar = sidebar || 'visible';
|
||||||
|
}
|
||||||
|
html.classList.remove('sidebar-visible');
|
||||||
|
html.classList.add("sidebar-" + sidebar);
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
|
||||||
|
<div class="sidebar-scrollbox">
|
||||||
|
<ol class="chapter"><li class="chapter-item expanded affix "><a href="index.html">Startseite</a></li></ol> </div>
|
||||||
|
<div id="sidebar-resize-handle" class="sidebar-resize-handle"></div>
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
<div id="page-wrapper" class="page-wrapper">
|
||||||
|
|
||||||
|
<div class="page">
|
||||||
|
|
||||||
|
<div id="menu-bar-hover-placeholder"></div>
|
||||||
|
<div id="menu-bar" class="menu-bar sticky bordered">
|
||||||
|
<div class="left-buttons">
|
||||||
|
<button id="sidebar-toggle" class="icon-button" type="button" title="Toggle Table of Contents" aria-label="Toggle Table of Contents" aria-controls="sidebar">
|
||||||
|
<i class="fa fa-bars"></i>
|
||||||
|
</button>
|
||||||
|
<button id="theme-toggle" class="icon-button" type="button" title="Change theme" aria-label="Change theme" aria-haspopup="true" aria-expanded="false" aria-controls="theme-list">
|
||||||
|
<i class="fa fa-paint-brush"></i>
|
||||||
|
</button>
|
||||||
|
<ul id="theme-list" class="theme-popup" aria-label="Themes" role="menu">
|
||||||
|
<li role="none"><button role="menuitem" class="theme" id="light">Light (default)</button></li>
|
||||||
|
<li role="none"><button role="menuitem" class="theme" id="rust">Rust</button></li>
|
||||||
|
<li role="none"><button role="menuitem" class="theme" id="coal">Coal</button></li>
|
||||||
|
<li role="none"><button role="menuitem" class="theme" id="navy">Navy</button></li>
|
||||||
|
<li role="none"><button role="menuitem" class="theme" id="ayu">Ayu</button></li>
|
||||||
|
</ul>
|
||||||
|
<button id="search-toggle" class="icon-button" type="button" title="Search. (Shortkey: s)" aria-label="Toggle Searchbar" aria-expanded="false" aria-keyshortcuts="S" aria-controls="searchbar">
|
||||||
|
<i class="fa fa-search"></i>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<h1 class="menu-title">Wiki – FabLab Bad Windsheim</h1>
|
||||||
|
|
||||||
|
<div class="right-buttons">
|
||||||
|
<a href="print.html" title="Print this book" aria-label="Print this book">
|
||||||
|
<i id="print-button" class="fa fa-print"></i>
|
||||||
|
</a>
|
||||||
|
<a href="https://github.com/fablab-nea/wiki" title="Git repository" aria-label="Git repository">
|
||||||
|
<i id="git-repository-button" class="fa fa-github"></i>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div id="search-wrapper" class="hidden">
|
||||||
|
<form id="searchbar-outer" class="searchbar-outer">
|
||||||
|
<input type="search" id="searchbar" name="searchbar" placeholder="Search this book ..." aria-controls="searchresults-outer" aria-describedby="searchresults-header">
|
||||||
|
</form>
|
||||||
|
<div id="searchresults-outer" class="searchresults-outer hidden">
|
||||||
|
<div id="searchresults-header" class="searchresults-header"></div>
|
||||||
|
<ul id="searchresults">
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Apply ARIA attributes after the sidebar and the sidebar toggle button are added to the DOM -->
|
||||||
|
<script type="text/javascript">
|
||||||
|
document.getElementById('sidebar-toggle').setAttribute('aria-expanded', sidebar === 'visible');
|
||||||
|
document.getElementById('sidebar').setAttribute('aria-hidden', sidebar !== 'visible');
|
||||||
|
Array.from(document.querySelectorAll('#sidebar a')).forEach(function(link) {
|
||||||
|
link.setAttribute('tabIndex', sidebar === 'visible' ? 0 : -1);
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div id="content" class="content">
|
||||||
|
<main>
|
||||||
|
<h1 id="document-not-found-404"><a class="header" href="#document-not-found-404">Document not found (404)</a></h1>
|
||||||
|
<p>This URL is invalid, sorry. Please use the navigation bar or search to continue.</p>
|
||||||
|
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<nav class="nav-wrapper" aria-label="Page navigation">
|
||||||
|
<!-- Mobile navigation buttons -->
|
||||||
|
|
||||||
|
|
||||||
|
<div style="clear: both"></div>
|
||||||
|
</nav>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<nav class="nav-wide-wrapper" aria-label="Page navigation">
|
||||||
|
|
||||||
|
</nav>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
window.playground_copyable = true;
|
||||||
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
<script src="elasticlunr.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
<script src="mark.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
<script src="searcher.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
|
||||||
|
<script src="clipboard.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
<script src="highlight.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
<script src="book.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
|
||||||
|
<!-- Custom JS scripts -->
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -1,10 +0,0 @@
|
||||||
(() => {
|
|
||||||
let editLink = document.getElementById("git-repository-button").parentElement
|
|
||||||
const relativeFile = location
|
|
||||||
.pathname
|
|
||||||
.split("/")
|
|
||||||
.slice(-path_to_root.split("/").length)
|
|
||||||
.join("/")
|
|
||||||
.replace(/\.html$/, ".md")
|
|
||||||
editLink.href = editLink.href + "/edit/master/src/" + relativeFile
|
|
||||||
})();
|
|
|
@ -12,8 +12,7 @@ Original by Dempfi (https://github.com/dempfi/ayu)
|
||||||
}
|
}
|
||||||
|
|
||||||
.hljs-comment,
|
.hljs-comment,
|
||||||
.hljs-quote,
|
.hljs-quote {
|
||||||
.hljs-meta {
|
|
||||||
color: #5c6773;
|
color: #5c6773;
|
||||||
font-style: italic;
|
font-style: italic;
|
||||||
}
|
}
|
||||||
|
@ -30,6 +29,7 @@ Original by Dempfi (https://github.com/dempfi/ayu)
|
||||||
}
|
}
|
||||||
|
|
||||||
.hljs-number,
|
.hljs-number,
|
||||||
|
.hljs-meta,
|
||||||
.hljs-builtin-name,
|
.hljs-builtin-name,
|
||||||
.hljs-literal,
|
.hljs-literal,
|
||||||
.hljs-type,
|
.hljs-type,
|
||||||
|
|
207
book.js
207
book.js
|
@ -4,8 +4,8 @@
|
||||||
window.onunload = function () { };
|
window.onunload = function () { };
|
||||||
|
|
||||||
// Global variable, shared between modules
|
// Global variable, shared between modules
|
||||||
function playpen_text(playpen) {
|
function playground_text(playground) {
|
||||||
let code_block = playpen.querySelector("code");
|
let code_block = playground.querySelector("code");
|
||||||
|
|
||||||
if (window.ace && code_block.classList.contains("editable")) {
|
if (window.ace && code_block.classList.contains("editable")) {
|
||||||
let editor = window.ace.edit(code_block);
|
let editor = window.ace.edit(code_block);
|
||||||
|
@ -23,8 +23,8 @@ function playpen_text(playpen) {
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
var playpens = Array.from(document.querySelectorAll(".playpen"));
|
var playgrounds = Array.from(document.querySelectorAll(".playground"));
|
||||||
if (playpens.length > 0) {
|
if (playgrounds.length > 0) {
|
||||||
fetch_with_timeout("https://play.rust-lang.org/meta/crates", {
|
fetch_with_timeout("https://play.rust-lang.org/meta/crates", {
|
||||||
headers: {
|
headers: {
|
||||||
'Content-Type': "application/json",
|
'Content-Type': "application/json",
|
||||||
|
@ -36,21 +36,21 @@ function playpen_text(playpen) {
|
||||||
.then(response => {
|
.then(response => {
|
||||||
// get list of crates available in the rust playground
|
// get list of crates available in the rust playground
|
||||||
let playground_crates = response.crates.map(item => item["id"]);
|
let playground_crates = response.crates.map(item => item["id"]);
|
||||||
playpens.forEach(block => handle_crate_list_update(block, playground_crates));
|
playgrounds.forEach(block => handle_crate_list_update(block, playground_crates));
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
function handle_crate_list_update(playpen_block, playground_crates) {
|
function handle_crate_list_update(playground_block, playground_crates) {
|
||||||
// update the play buttons after receiving the response
|
// update the play buttons after receiving the response
|
||||||
update_play_button(playpen_block, playground_crates);
|
update_play_button(playground_block, playground_crates);
|
||||||
|
|
||||||
// and install on change listener to dynamically update ACE editors
|
// and install on change listener to dynamically update ACE editors
|
||||||
if (window.ace) {
|
if (window.ace) {
|
||||||
let code_block = playpen_block.querySelector("code");
|
let code_block = playground_block.querySelector("code");
|
||||||
if (code_block.classList.contains("editable")) {
|
if (code_block.classList.contains("editable")) {
|
||||||
let editor = window.ace.edit(code_block);
|
let editor = window.ace.edit(code_block);
|
||||||
editor.addEventListener("change", function (e) {
|
editor.addEventListener("change", function (e) {
|
||||||
update_play_button(playpen_block, playground_crates);
|
update_play_button(playground_block, playground_crates);
|
||||||
});
|
});
|
||||||
// add Ctrl-Enter command to execute rust code
|
// add Ctrl-Enter command to execute rust code
|
||||||
editor.commands.addCommand({
|
editor.commands.addCommand({
|
||||||
|
@ -59,7 +59,7 @@ function playpen_text(playpen) {
|
||||||
win: "Ctrl-Enter",
|
win: "Ctrl-Enter",
|
||||||
mac: "Ctrl-Enter"
|
mac: "Ctrl-Enter"
|
||||||
},
|
},
|
||||||
exec: _editor => run_rust_code(playpen_block)
|
exec: _editor => run_rust_code(playground_block)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -77,7 +77,7 @@ function playpen_text(playpen) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// get list of `extern crate`'s from snippet
|
// get list of `extern crate`'s from snippet
|
||||||
var txt = playpen_text(pre_block);
|
var txt = playground_text(pre_block);
|
||||||
var re = /extern\s+crate\s+([a-zA-Z_0-9]+)\s*;/g;
|
var re = /extern\s+crate\s+([a-zA-Z_0-9]+)\s*;/g;
|
||||||
var snippet_crates = [];
|
var snippet_crates = [];
|
||||||
var item;
|
var item;
|
||||||
|
@ -106,11 +106,14 @@ function playpen_text(playpen) {
|
||||||
code_block.append(result_block);
|
code_block.append(result_block);
|
||||||
}
|
}
|
||||||
|
|
||||||
let text = playpen_text(code_block);
|
let text = playground_text(code_block);
|
||||||
let classes = code_block.querySelector('code').classList;
|
let classes = code_block.querySelector('code').classList;
|
||||||
let has_2018 = classes.contains("edition2018");
|
let edition = "2015";
|
||||||
let edition = has_2018 ? "2018" : "2015";
|
if(classes.contains("edition2018")) {
|
||||||
|
edition = "2018";
|
||||||
|
} else if(classes.contains("edition2021")) {
|
||||||
|
edition = "2021";
|
||||||
|
}
|
||||||
var params = {
|
var params = {
|
||||||
version: "stable",
|
version: "stable",
|
||||||
optimize: "0",
|
optimize: "0",
|
||||||
|
@ -133,7 +136,15 @@ function playpen_text(playpen) {
|
||||||
body: JSON.stringify(params)
|
body: JSON.stringify(params)
|
||||||
})
|
})
|
||||||
.then(response => response.json())
|
.then(response => response.json())
|
||||||
.then(response => result_block.innerText = response.result)
|
.then(response => {
|
||||||
|
if (response.result.trim() === '') {
|
||||||
|
result_block.innerText = "No output";
|
||||||
|
result_block.classList.add("result-no-output");
|
||||||
|
} else {
|
||||||
|
result_block.innerText = response.result;
|
||||||
|
result_block.classList.remove("result-no-output");
|
||||||
|
}
|
||||||
|
})
|
||||||
.catch(error => result_block.innerText = "Playground Communication: " + error.message);
|
.catch(error => result_block.innerText = "Playground Communication: " + error.message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -143,27 +154,29 @@ function playpen_text(playpen) {
|
||||||
languages: [], // Languages used for auto-detection
|
languages: [], // Languages used for auto-detection
|
||||||
});
|
});
|
||||||
|
|
||||||
|
let code_nodes = Array
|
||||||
|
.from(document.querySelectorAll('code'))
|
||||||
|
// Don't highlight `inline code` blocks in headers.
|
||||||
|
.filter(function (node) {return !node.parentElement.classList.contains("header"); });
|
||||||
|
|
||||||
if (window.ace) {
|
if (window.ace) {
|
||||||
// language-rust class needs to be removed for editable
|
// language-rust class needs to be removed for editable
|
||||||
// blocks or highlightjs will capture events
|
// blocks or highlightjs will capture events
|
||||||
Array
|
code_nodes
|
||||||
.from(document.querySelectorAll('code.editable'))
|
.filter(function (node) {return node.classList.contains("editable"); })
|
||||||
.forEach(function (block) { block.classList.remove('language-rust'); });
|
.forEach(function (block) { block.classList.remove('language-rust'); });
|
||||||
|
|
||||||
Array
|
Array
|
||||||
.from(document.querySelectorAll('code:not(.editable)'))
|
code_nodes
|
||||||
|
.filter(function (node) {return !node.classList.contains("editable"); })
|
||||||
.forEach(function (block) { hljs.highlightBlock(block); });
|
.forEach(function (block) { hljs.highlightBlock(block); });
|
||||||
} else {
|
} else {
|
||||||
Array
|
code_nodes.forEach(function (block) { hljs.highlightBlock(block); });
|
||||||
.from(document.querySelectorAll('code'))
|
|
||||||
.forEach(function (block) { hljs.highlightBlock(block); });
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Adding the hljs class gives code blocks the color css
|
// Adding the hljs class gives code blocks the color css
|
||||||
// even if highlighting doesn't apply
|
// even if highlighting doesn't apply
|
||||||
Array
|
code_nodes.forEach(function (block) { block.classList.add('hljs'); });
|
||||||
.from(document.querySelectorAll('code'))
|
|
||||||
.forEach(function (block) { block.classList.add('hljs'); });
|
|
||||||
|
|
||||||
Array.from(document.querySelectorAll("code.language-rust")).forEach(function (block) {
|
Array.from(document.querySelectorAll("code.language-rust")).forEach(function (block) {
|
||||||
|
|
||||||
|
@ -174,23 +187,23 @@ function playpen_text(playpen) {
|
||||||
|
|
||||||
var buttons = document.createElement('div');
|
var buttons = document.createElement('div');
|
||||||
buttons.className = 'buttons';
|
buttons.className = 'buttons';
|
||||||
buttons.innerHTML = "<button class=\"fa fa-expand\" title=\"Show hidden lines\" aria-label=\"Show hidden lines\"></button>";
|
buttons.innerHTML = "<button class=\"fa fa-eye\" title=\"Show hidden lines\" aria-label=\"Show hidden lines\"></button>";
|
||||||
|
|
||||||
// add expand button
|
// add expand button
|
||||||
var pre_block = block.parentNode;
|
var pre_block = block.parentNode;
|
||||||
pre_block.insertBefore(buttons, pre_block.firstChild);
|
pre_block.insertBefore(buttons, pre_block.firstChild);
|
||||||
|
|
||||||
pre_block.querySelector('.buttons').addEventListener('click', function (e) {
|
pre_block.querySelector('.buttons').addEventListener('click', function (e) {
|
||||||
if (e.target.classList.contains('fa-expand')) {
|
if (e.target.classList.contains('fa-eye')) {
|
||||||
e.target.classList.remove('fa-expand');
|
e.target.classList.remove('fa-eye');
|
||||||
e.target.classList.add('fa-compress');
|
e.target.classList.add('fa-eye-slash');
|
||||||
e.target.title = 'Hide lines';
|
e.target.title = 'Hide lines';
|
||||||
e.target.setAttribute('aria-label', e.target.title);
|
e.target.setAttribute('aria-label', e.target.title);
|
||||||
|
|
||||||
block.classList.remove('hide-boring');
|
block.classList.remove('hide-boring');
|
||||||
} else if (e.target.classList.contains('fa-compress')) {
|
} else if (e.target.classList.contains('fa-eye-slash')) {
|
||||||
e.target.classList.remove('fa-compress');
|
e.target.classList.remove('fa-eye-slash');
|
||||||
e.target.classList.add('fa-expand');
|
e.target.classList.add('fa-eye');
|
||||||
e.target.title = 'Show hidden lines';
|
e.target.title = 'Show hidden lines';
|
||||||
e.target.setAttribute('aria-label', e.target.title);
|
e.target.setAttribute('aria-label', e.target.title);
|
||||||
|
|
||||||
|
@ -199,10 +212,10 @@ function playpen_text(playpen) {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
if (window.playpen_copyable) {
|
if (window.playground_copyable) {
|
||||||
Array.from(document.querySelectorAll('pre code')).forEach(function (block) {
|
Array.from(document.querySelectorAll('pre code')).forEach(function (block) {
|
||||||
var pre_block = block.parentNode;
|
var pre_block = block.parentNode;
|
||||||
if (!pre_block.classList.contains('playpen')) {
|
if (!pre_block.classList.contains('playground')) {
|
||||||
var buttons = pre_block.querySelector(".buttons");
|
var buttons = pre_block.querySelector(".buttons");
|
||||||
if (!buttons) {
|
if (!buttons) {
|
||||||
buttons = document.createElement('div');
|
buttons = document.createElement('div');
|
||||||
|
@ -221,8 +234,8 @@ function playpen_text(playpen) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Process playpen code blocks
|
// Process playground code blocks
|
||||||
Array.from(document.querySelectorAll(".playpen")).forEach(function (pre_block) {
|
Array.from(document.querySelectorAll(".playground")).forEach(function (pre_block) {
|
||||||
// Add play button
|
// Add play button
|
||||||
var buttons = pre_block.querySelector(".buttons");
|
var buttons = pre_block.querySelector(".buttons");
|
||||||
if (!buttons) {
|
if (!buttons) {
|
||||||
|
@ -242,7 +255,7 @@ function playpen_text(playpen) {
|
||||||
run_rust_code(pre_block);
|
run_rust_code(pre_block);
|
||||||
});
|
});
|
||||||
|
|
||||||
if (window.playpen_copyable) {
|
if (window.playground_copyable) {
|
||||||
var copyCodeClipboardButton = document.createElement('button');
|
var copyCodeClipboardButton = document.createElement('button');
|
||||||
copyCodeClipboardButton.className = 'fa fa-copy clip-button';
|
copyCodeClipboardButton.className = 'fa fa-copy clip-button';
|
||||||
copyCodeClipboardButton.innerHTML = '<i class="tooltiptext"></i>';
|
copyCodeClipboardButton.innerHTML = '<i class="tooltiptext"></i>';
|
||||||
|
@ -284,7 +297,7 @@ function playpen_text(playpen) {
|
||||||
function showThemes() {
|
function showThemes() {
|
||||||
themePopup.style.display = 'block';
|
themePopup.style.display = 'block';
|
||||||
themeToggleButton.setAttribute('aria-expanded', true);
|
themeToggleButton.setAttribute('aria-expanded', true);
|
||||||
themePopup.querySelector("button#" + document.body.className).focus();
|
themePopup.querySelector("button#" + get_theme()).focus();
|
||||||
}
|
}
|
||||||
|
|
||||||
function hideThemes() {
|
function hideThemes() {
|
||||||
|
@ -293,6 +306,16 @@ function playpen_text(playpen) {
|
||||||
themeToggleButton.focus();
|
themeToggleButton.focus();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function get_theme() {
|
||||||
|
var theme;
|
||||||
|
try { theme = localStorage.getItem('mdbook-theme'); } catch (e) { }
|
||||||
|
if (theme === null || theme === undefined) {
|
||||||
|
return default_theme;
|
||||||
|
} else {
|
||||||
|
return theme;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function set_theme(theme, store = true) {
|
function set_theme(theme, store = true) {
|
||||||
let ace_theme;
|
let ace_theme;
|
||||||
|
|
||||||
|
@ -324,9 +347,7 @@ function playpen_text(playpen) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
var previousTheme;
|
var previousTheme = get_theme();
|
||||||
try { previousTheme = localStorage.getItem('mdbook-theme'); } catch (e) { }
|
|
||||||
if (previousTheme === null || previousTheme === undefined) { previousTheme = default_theme; }
|
|
||||||
|
|
||||||
if (store) {
|
if (store) {
|
||||||
try { localStorage.setItem('mdbook-theme', theme); } catch (e) { }
|
try { localStorage.setItem('mdbook-theme', theme); } catch (e) { }
|
||||||
|
@ -337,9 +358,7 @@ function playpen_text(playpen) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Set theme
|
// Set theme
|
||||||
var theme;
|
var theme = get_theme();
|
||||||
try { theme = localStorage.getItem('mdbook-theme'); } catch(e) { }
|
|
||||||
if (theme === null || theme === undefined) { theme = default_theme; }
|
|
||||||
|
|
||||||
set_theme(theme, false);
|
set_theme(theme, false);
|
||||||
|
|
||||||
|
@ -408,7 +427,6 @@ function playpen_text(playpen) {
|
||||||
(function sidebar() {
|
(function sidebar() {
|
||||||
var html = document.querySelector("html");
|
var html = document.querySelector("html");
|
||||||
var sidebar = document.getElementById("sidebar");
|
var sidebar = document.getElementById("sidebar");
|
||||||
var sidebarScrollBox = document.getElementById("sidebar-scrollbox");
|
|
||||||
var sidebarLinks = document.querySelectorAll('#sidebar a');
|
var sidebarLinks = document.querySelectorAll('#sidebar a');
|
||||||
var sidebarToggleButton = document.getElementById("sidebar-toggle");
|
var sidebarToggleButton = document.getElementById("sidebar-toggle");
|
||||||
var sidebarResizeHandle = document.getElementById("sidebar-resize-handle");
|
var sidebarResizeHandle = document.getElementById("sidebar-resize-handle");
|
||||||
|
@ -450,6 +468,11 @@ function playpen_text(playpen) {
|
||||||
// Toggle sidebar
|
// Toggle sidebar
|
||||||
sidebarToggleButton.addEventListener('click', function sidebarToggle() {
|
sidebarToggleButton.addEventListener('click', function sidebarToggle() {
|
||||||
if (html.classList.contains("sidebar-hidden")) {
|
if (html.classList.contains("sidebar-hidden")) {
|
||||||
|
var current_width = parseInt(
|
||||||
|
document.documentElement.style.getPropertyValue('--sidebar-width'), 10);
|
||||||
|
if (current_width < 150) {
|
||||||
|
document.documentElement.style.setProperty('--sidebar-width', '150px');
|
||||||
|
}
|
||||||
showSidebar();
|
showSidebar();
|
||||||
} else if (html.classList.contains("sidebar-visible")) {
|
} else if (html.classList.contains("sidebar-visible")) {
|
||||||
hideSidebar();
|
hideSidebar();
|
||||||
|
@ -470,7 +493,16 @@ function playpen_text(playpen) {
|
||||||
html.classList.add('sidebar-resizing');
|
html.classList.add('sidebar-resizing');
|
||||||
}
|
}
|
||||||
function resize(e) {
|
function resize(e) {
|
||||||
document.documentElement.style.setProperty('--sidebar-width', (e.clientX - sidebar.offsetLeft) + 'px');
|
var pos = (e.clientX - sidebar.offsetLeft);
|
||||||
|
if (pos < 20) {
|
||||||
|
hideSidebar();
|
||||||
|
} else {
|
||||||
|
if (html.classList.contains("sidebar-hidden")) {
|
||||||
|
showSidebar();
|
||||||
|
}
|
||||||
|
pos = Math.min(pos, window.innerWidth - 100);
|
||||||
|
document.documentElement.style.setProperty('--sidebar-width', pos + 'px');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//on mouseup remove windows functions mousemove & mouseup
|
//on mouseup remove windows functions mousemove & mouseup
|
||||||
function stopResize(e) {
|
function stopResize(e) {
|
||||||
|
@ -505,9 +537,10 @@ function playpen_text(playpen) {
|
||||||
}, { passive: true });
|
}, { passive: true });
|
||||||
|
|
||||||
// Scroll sidebar to current active section
|
// Scroll sidebar to current active section
|
||||||
var activeSection = sidebar.querySelector(".active");
|
var activeSection = document.getElementById("sidebar").querySelector(".active");
|
||||||
if (activeSection) {
|
if (activeSection) {
|
||||||
sidebarScrollBox.scrollTop = activeSection.offsetTop;
|
// https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView
|
||||||
|
activeSection.scrollIntoView({ block: 'center' });
|
||||||
}
|
}
|
||||||
})();
|
})();
|
||||||
|
|
||||||
|
@ -551,8 +584,8 @@ function playpen_text(playpen) {
|
||||||
var clipboardSnippets = new ClipboardJS('.clip-button', {
|
var clipboardSnippets = new ClipboardJS('.clip-button', {
|
||||||
text: function (trigger) {
|
text: function (trigger) {
|
||||||
hideTooltip(trigger);
|
hideTooltip(trigger);
|
||||||
let playpen = trigger.closest("pre");
|
let playground = trigger.closest("pre");
|
||||||
return playpen_text(playpen);
|
return playground_text(playground);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -580,26 +613,60 @@ function playpen_text(playpen) {
|
||||||
});
|
});
|
||||||
})();
|
})();
|
||||||
|
|
||||||
(function autoHideMenu() {
|
(function controllMenu() {
|
||||||
var menu = document.getElementById('menu-bar');
|
var menu = document.getElementById('menu-bar');
|
||||||
|
|
||||||
var previousScrollTop = document.scrollingElement.scrollTop;
|
(function controllPosition() {
|
||||||
|
var scrollTop = document.scrollingElement.scrollTop;
|
||||||
document.addEventListener('scroll', function () {
|
var prevScrollTop = scrollTop;
|
||||||
if (menu.classList.contains('folded') && document.scrollingElement.scrollTop < previousScrollTop) {
|
var minMenuY = -menu.clientHeight - 50;
|
||||||
menu.classList.remove('folded');
|
// When the script loads, the page can be at any scroll (e.g. if you reforesh it).
|
||||||
} else if (!menu.classList.contains('folded') && document.scrollingElement.scrollTop > previousScrollTop) {
|
menu.style.top = scrollTop + 'px';
|
||||||
menu.classList.add('folded');
|
// Same as parseInt(menu.style.top.slice(0, -2), but faster
|
||||||
}
|
var topCache = menu.style.top.slice(0, -2);
|
||||||
|
menu.classList.remove('sticky');
|
||||||
if (!menu.classList.contains('bordered') && document.scrollingElement.scrollTop > 0) {
|
var stickyCache = false; // Same as menu.classList.contains('sticky'), but faster
|
||||||
menu.classList.add('bordered');
|
document.addEventListener('scroll', function () {
|
||||||
}
|
scrollTop = Math.max(document.scrollingElement.scrollTop, 0);
|
||||||
|
// `null` means that it doesn't need to be updated
|
||||||
if (menu.classList.contains('bordered') && document.scrollingElement.scrollTop === 0) {
|
var nextSticky = null;
|
||||||
menu.classList.remove('bordered');
|
var nextTop = null;
|
||||||
}
|
var scrollDown = scrollTop > prevScrollTop;
|
||||||
|
var menuPosAbsoluteY = topCache - scrollTop;
|
||||||
previousScrollTop = Math.max(document.scrollingElement.scrollTop, 0);
|
if (scrollDown) {
|
||||||
}, { passive: true });
|
nextSticky = false;
|
||||||
|
if (menuPosAbsoluteY > 0) {
|
||||||
|
nextTop = prevScrollTop;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (menuPosAbsoluteY > 0) {
|
||||||
|
nextSticky = true;
|
||||||
|
} else if (menuPosAbsoluteY < minMenuY) {
|
||||||
|
nextTop = prevScrollTop + minMenuY;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (nextSticky === true && stickyCache === false) {
|
||||||
|
menu.classList.add('sticky');
|
||||||
|
stickyCache = true;
|
||||||
|
} else if (nextSticky === false && stickyCache === true) {
|
||||||
|
menu.classList.remove('sticky');
|
||||||
|
stickyCache = false;
|
||||||
|
}
|
||||||
|
if (nextTop !== null) {
|
||||||
|
menu.style.top = nextTop + 'px';
|
||||||
|
topCache = nextTop;
|
||||||
|
}
|
||||||
|
prevScrollTop = scrollTop;
|
||||||
|
}, { passive: true });
|
||||||
|
})();
|
||||||
|
(function controllBorder() {
|
||||||
|
menu.classList.remove('bordered');
|
||||||
|
document.addEventListener('scroll', function () {
|
||||||
|
if (menu.offsetTop === 0) {
|
||||||
|
menu.classList.remove('bordered');
|
||||||
|
} else {
|
||||||
|
menu.classList.add('bordered');
|
||||||
|
}
|
||||||
|
}, { passive: true });
|
||||||
|
})();
|
||||||
})();
|
})();
|
||||||
|
|
|
@ -20,14 +20,13 @@ a > .hljs {
|
||||||
|
|
||||||
/* Menu Bar */
|
/* Menu Bar */
|
||||||
|
|
||||||
#menu-bar {
|
#menu-bar,
|
||||||
position: -webkit-sticky;
|
#menu-bar-hover-placeholder {
|
||||||
position: sticky;
|
|
||||||
top: 0;
|
|
||||||
z-index: 101;
|
z-index: 101;
|
||||||
margin: auto calc(0px - var(--page-padding));
|
margin: auto calc(0px - var(--page-padding));
|
||||||
}
|
}
|
||||||
#menu-bar > #menu-bar-sticky-container {
|
#menu-bar {
|
||||||
|
position: relative;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
background-color: var(--bg);
|
background-color: var(--bg);
|
||||||
|
@ -35,10 +34,21 @@ a > .hljs {
|
||||||
border-bottom-width: 1px;
|
border-bottom-width: 1px;
|
||||||
border-bottom-style: solid;
|
border-bottom-style: solid;
|
||||||
}
|
}
|
||||||
.js #menu-bar > #menu-bar-sticky-container {
|
#menu-bar.sticky,
|
||||||
transition: transform 0.3s;
|
.js #menu-bar-hover-placeholder:hover + #menu-bar,
|
||||||
|
.js #menu-bar:hover,
|
||||||
|
.js.sidebar-visible #menu-bar {
|
||||||
|
position: -webkit-sticky;
|
||||||
|
position: sticky;
|
||||||
|
top: 0 !important;
|
||||||
}
|
}
|
||||||
#menu-bar.bordered > #menu-bar-sticky-container {
|
#menu-bar-hover-placeholder {
|
||||||
|
position: sticky;
|
||||||
|
position: -webkit-sticky;
|
||||||
|
top: 0;
|
||||||
|
height: var(--menu-bar-height);
|
||||||
|
}
|
||||||
|
#menu-bar.bordered {
|
||||||
border-bottom-color: var(--table-border-color);
|
border-bottom-color: var(--table-border-color);
|
||||||
}
|
}
|
||||||
#menu-bar i, #menu-bar .icon-button {
|
#menu-bar i, #menu-bar .icon-button {
|
||||||
|
@ -72,10 +82,6 @@ a > .hljs {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
html:not(.sidebar-visible) #menu-bar:not(:hover).folded > #menu-bar-sticky-container {
|
|
||||||
transform: translateY(calc(-10px - var(--menu-bar-height)));
|
|
||||||
}
|
|
||||||
|
|
||||||
.left-buttons {
|
.left-buttons {
|
||||||
display: flex;
|
display: flex;
|
||||||
margin: 0 5px;
|
margin: 0 5px;
|
||||||
|
@ -87,7 +93,7 @@ html:not(.sidebar-visible) #menu-bar:not(:hover).folded > #menu-bar-sticky-conta
|
||||||
.menu-title {
|
.menu-title {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
font-weight: 200;
|
font-weight: 200;
|
||||||
font-size: 2rem;
|
font-size: 2.4rem;
|
||||||
line-height: var(--menu-bar-height);
|
line-height: var(--menu-bar-height);
|
||||||
text-align: center;
|
text-align: center;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
|
@ -417,6 +423,11 @@ ul#searchresults span.teaser em {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.chapter li.chapter-item {
|
||||||
|
line-height: 1.5em;
|
||||||
|
margin-top: 0.6em;
|
||||||
|
}
|
||||||
|
|
||||||
.chapter li.expanded > a.toggle div {
|
.chapter li.expanded > a.toggle div {
|
||||||
transform: rotate(90deg);
|
transform: rotate(90deg);
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,11 +25,16 @@ code {
|
||||||
font-size: 0.875em; /* please adjust the ace font size accordingly in editor.js */
|
font-size: 0.875em; /* please adjust the ace font size accordingly in editor.js */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Don't change font size in headers. */
|
||||||
|
h1 code, h2 code, h3 code, h4 code, h5 code, h6 code {
|
||||||
|
font-size: unset;
|
||||||
|
}
|
||||||
|
|
||||||
.left { float: left; }
|
.left { float: left; }
|
||||||
.right { float: right; }
|
.right { float: right; }
|
||||||
.boring { opacity: 0.6; }
|
.boring { opacity: 0.6; }
|
||||||
.hide-boring .boring { display: none; }
|
.hide-boring .boring { display: none; }
|
||||||
.hidden { display: none; }
|
.hidden { display: none !important; }
|
||||||
|
|
||||||
h2, h3 { margin-top: 2.5em; }
|
h2, h3 { margin-top: 2.5em; }
|
||||||
h4, h5 { margin-top: 2em; }
|
h4, h5 { margin-top: 2em; }
|
||||||
|
@ -40,26 +45,30 @@ h4, h5 { margin-top: 2em; }
|
||||||
margin-top: 1em;
|
margin-top: 1em;
|
||||||
}
|
}
|
||||||
|
|
||||||
h1 a.header:target::before,
|
h1:target::before,
|
||||||
h2 a.header:target::before,
|
h2:target::before,
|
||||||
h3 a.header:target::before,
|
h3:target::before,
|
||||||
h4 a.header:target::before {
|
h4:target::before,
|
||||||
|
h5:target::before,
|
||||||
|
h6:target::before {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
content: "»";
|
content: "»";
|
||||||
margin-left: -30px;
|
margin-left: -30px;
|
||||||
width: 30px;
|
width: 30px;
|
||||||
}
|
}
|
||||||
|
|
||||||
h1 a.header:target,
|
/* This is broken on Safari as of version 14, but is fixed
|
||||||
h2 a.header:target,
|
in Safari Technology Preview 117 which I think will be Safari 14.2.
|
||||||
h3 a.header:target,
|
https://bugs.webkit.org/show_bug.cgi?id=218076
|
||||||
h4 a.header:target {
|
*/
|
||||||
|
:target {
|
||||||
scroll-margin-top: calc(var(--menu-bar-height) + 0.5em);
|
scroll-margin-top: calc(var(--menu-bar-height) + 0.5em);
|
||||||
}
|
}
|
||||||
|
|
||||||
.page {
|
.page {
|
||||||
outline: 0;
|
outline: 0;
|
||||||
padding: 0 var(--page-padding);
|
padding: 0 var(--page-padding);
|
||||||
|
margin-top: calc(0px - var(--menu-bar-height)); /* Compensate for the #menu-bar-hover-placeholder */
|
||||||
}
|
}
|
||||||
.page-wrapper {
|
.page-wrapper {
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
|
@ -78,9 +87,12 @@ h4 a.header:target {
|
||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
max-width: var(--content-max-width);
|
max-width: var(--content-max-width);
|
||||||
}
|
}
|
||||||
|
.content p { line-height: 1.45em; }
|
||||||
|
.content ol { line-height: 1.45em; }
|
||||||
|
.content ul { line-height: 1.45em; }
|
||||||
.content a { text-decoration: none; }
|
.content a { text-decoration: none; }
|
||||||
.content a:hover { text-decoration: underline; }
|
.content a:hover { text-decoration: underline; }
|
||||||
.content img { max-width: 100%; }
|
.content img, .content video { max-width: 100%; }
|
||||||
.content .header:link,
|
.content .header:link,
|
||||||
.content .header:visited {
|
.content .header:visited {
|
||||||
color: var(--fg);
|
color: var(--fg);
|
||||||
|
@ -157,3 +169,13 @@ blockquote {
|
||||||
.tooltipped .tooltiptext {
|
.tooltipped .tooltiptext {
|
||||||
visibility: visible;
|
visibility: visible;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.chapter li.part-title {
|
||||||
|
color: var(--sidebar-fg);
|
||||||
|
margin: 5px 0px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.result-no-output {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
|
|
@ -92,22 +92,22 @@
|
||||||
|
|
||||||
.light {
|
.light {
|
||||||
--bg: hsl(0, 0%, 100%);
|
--bg: hsl(0, 0%, 100%);
|
||||||
--fg: #333333;
|
--fg: hsl(0, 0%, 0%);
|
||||||
|
|
||||||
--sidebar-bg: #fafafa;
|
--sidebar-bg: #fafafa;
|
||||||
--sidebar-fg: #364149;
|
--sidebar-fg: hsl(0, 0%, 0%);
|
||||||
--sidebar-non-existant: #aaaaaa;
|
--sidebar-non-existant: #aaaaaa;
|
||||||
--sidebar-active: #008cff;
|
--sidebar-active: #1f1fff;
|
||||||
--sidebar-spacer: #f4f4f4;
|
--sidebar-spacer: #f4f4f4;
|
||||||
|
|
||||||
--scrollbar: #cccccc;
|
--scrollbar: #8F8F8F;
|
||||||
|
|
||||||
--icons: #cccccc;
|
--icons: #747474;
|
||||||
--icons-hover: #333333;
|
--icons-hover: #000000;
|
||||||
|
|
||||||
--links: #4183c4;
|
--links: #20609f;
|
||||||
|
|
||||||
--inline-code-color: #6e6b5e;
|
--inline-code-color: #301900;
|
||||||
|
|
||||||
--theme-popup-bg: #fafafa;
|
--theme-popup-bg: #fafafa;
|
||||||
--theme-popup-border: #cccccc;
|
--theme-popup-border: #cccccc;
|
||||||
|
|
22
favicon.svg
Normal file
22
favicon.svg
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 199.7 184.2">
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
svg { fill: white; }
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<path d="M189.5,36.8c0.2,2.8,0,5.1-0.6,6.8L153,162c-0.6,2.1-2,3.7-4.2,5c-2.2,1.2-4.4,1.9-6.7,1.9H31.4c-9.6,0-15.3-2.8-17.3-8.4
|
||||||
|
c-0.8-2.2-0.8-3.9,0.1-5.2c0.9-1.2,2.4-1.8,4.6-1.8H123c7.4,0,12.6-1.4,15.4-4.1s5.7-8.9,8.6-18.4l32.9-108.6
|
||||||
|
c1.8-5.9,1-11.1-2.2-15.6S169.9,0,164,0H72.7c-1,0-3.1,0.4-6.1,1.1l0.1-0.4C64.5,0.2,62.6,0,61,0.1s-3,0.5-4.3,1.4
|
||||||
|
c-1.3,0.9-2.4,1.8-3.2,2.8S52,6.5,51.2,8.1c-0.8,1.6-1.4,3-1.9,4.3s-1.1,2.7-1.8,4.2c-0.7,1.5-1.3,2.7-2,3.7c-0.5,0.6-1.2,1.5-2,2.5
|
||||||
|
s-1.6,2-2.2,2.8s-0.9,1.5-1.1,2.2c-0.2,0.7-0.1,1.8,0.2,3.2c0.3,1.4,0.4,2.4,0.4,3.1c-0.3,3-1.4,6.9-3.3,11.6
|
||||||
|
c-1.9,4.7-3.6,8.1-5.1,10.1c-0.3,0.4-1.2,1.3-2.6,2.7c-1.4,1.4-2.3,2.6-2.6,3.7c-0.3,0.4-0.3,1.5-0.1,3.4c0.3,1.8,0.4,3.1,0.3,3.8
|
||||||
|
c-0.3,2.7-1.3,6.3-3,10.8c-1.7,4.5-3.4,8.2-5,11c-0.2,0.5-0.9,1.4-2,2.8c-1.1,1.4-1.8,2.5-2,3.4c-0.2,0.6-0.1,1.8,0.1,3.4
|
||||||
|
c0.2,1.6,0.2,2.8-0.1,3.6c-0.6,3-1.8,6.7-3.6,11c-1.8,4.3-3.6,7.9-5.4,11c-0.5,0.8-1.1,1.7-2,2.8c-0.8,1.1-1.5,2-2,2.8
|
||||||
|
s-0.8,1.6-1,2.5c-0.1,0.5,0,1.3,0.4,2.3c0.3,1.1,0.4,1.9,0.4,2.6c-0.1,1.1-0.2,2.6-0.5,4.4c-0.2,1.8-0.4,2.9-0.4,3.2
|
||||||
|
c-1.8,4.8-1.7,9.9,0.2,15.2c2.2,6.2,6.2,11.5,11.9,15.8c5.7,4.3,11.7,6.4,17.8,6.4h110.7c5.2,0,10.1-1.7,14.7-5.2s7.7-7.8,9.2-12.9
|
||||||
|
l33-108.6c1.8-5.8,1-10.9-2.2-15.5C194.9,39.7,192.6,38,189.5,36.8z M59.6,122.8L73.8,80c0,0,7,0,10.8,0s28.8-1.7,25.4,17.5
|
||||||
|
c-3.4,19.2-18.8,25.2-36.8,25.4S59.6,122.8,59.6,122.8z M78.6,116.8c4.7-0.1,18.9-2.9,22.1-17.1S89.2,86.3,89.2,86.3l-8.9,0
|
||||||
|
l-10.2,30.5C70.2,116.9,74,116.9,78.6,116.8z M75.3,68.7L89,26.2h9.8l0.8,34l23.6-34h9.9l-13.6,42.5h-7.1l12.5-35.4l-24.5,35.4h-6.8
|
||||||
|
l-0.8-35L82,68.7H75.3z"/>
|
||||||
|
</svg>
|
||||||
|
<!-- Original image Copyright Dave Gandy — CC BY 4.0 License -->
|
After Width: | Height: | Size: 1.8 KiB |
202
fonts/OPEN-SANS-LICENSE.txt
Normal file
202
fonts/OPEN-SANS-LICENSE.txt
Normal file
|
@ -0,0 +1,202 @@
|
||||||
|
|
||||||
|
Apache License
|
||||||
|
Version 2.0, January 2004
|
||||||
|
http://www.apache.org/licenses/
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||||
|
|
||||||
|
1. Definitions.
|
||||||
|
|
||||||
|
"License" shall mean the terms and conditions for use, reproduction,
|
||||||
|
and distribution as defined by Sections 1 through 9 of this document.
|
||||||
|
|
||||||
|
"Licensor" shall mean the copyright owner or entity authorized by
|
||||||
|
the copyright owner that is granting the License.
|
||||||
|
|
||||||
|
"Legal Entity" shall mean the union of the acting entity and all
|
||||||
|
other entities that control, are controlled by, or are under common
|
||||||
|
control with that entity. For the purposes of this definition,
|
||||||
|
"control" means (i) the power, direct or indirect, to cause the
|
||||||
|
direction or management of such entity, whether by contract or
|
||||||
|
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||||
|
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||||
|
|
||||||
|
"You" (or "Your") shall mean an individual or Legal Entity
|
||||||
|
exercising permissions granted by this License.
|
||||||
|
|
||||||
|
"Source" form shall mean the preferred form for making modifications,
|
||||||
|
including but not limited to software source code, documentation
|
||||||
|
source, and configuration files.
|
||||||
|
|
||||||
|
"Object" form shall mean any form resulting from mechanical
|
||||||
|
transformation or translation of a Source form, including but
|
||||||
|
not limited to compiled object code, generated documentation,
|
||||||
|
and conversions to other media types.
|
||||||
|
|
||||||
|
"Work" shall mean the work of authorship, whether in Source or
|
||||||
|
Object form, made available under the License, as indicated by a
|
||||||
|
copyright notice that is included in or attached to the work
|
||||||
|
(an example is provided in the Appendix below).
|
||||||
|
|
||||||
|
"Derivative Works" shall mean any work, whether in Source or Object
|
||||||
|
form, that is based on (or derived from) the Work and for which the
|
||||||
|
editorial revisions, annotations, elaborations, or other modifications
|
||||||
|
represent, as a whole, an original work of authorship. For the purposes
|
||||||
|
of this License, Derivative Works shall not include works that remain
|
||||||
|
separable from, or merely link (or bind by name) to the interfaces of,
|
||||||
|
the Work and Derivative Works thereof.
|
||||||
|
|
||||||
|
"Contribution" shall mean any work of authorship, including
|
||||||
|
the original version of the Work and any modifications or additions
|
||||||
|
to that Work or Derivative Works thereof, that is intentionally
|
||||||
|
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||||
|
or by an individual or Legal Entity authorized to submit on behalf of
|
||||||
|
the copyright owner. For the purposes of this definition, "submitted"
|
||||||
|
means any form of electronic, verbal, or written communication sent
|
||||||
|
to the Licensor or its representatives, including but not limited to
|
||||||
|
communication on electronic mailing lists, source code control systems,
|
||||||
|
and issue tracking systems that are managed by, or on behalf of, the
|
||||||
|
Licensor for the purpose of discussing and improving the Work, but
|
||||||
|
excluding communication that is conspicuously marked or otherwise
|
||||||
|
designated in writing by the copyright owner as "Not a Contribution."
|
||||||
|
|
||||||
|
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||||
|
on behalf of whom a Contribution has been received by Licensor and
|
||||||
|
subsequently incorporated within the Work.
|
||||||
|
|
||||||
|
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
copyright license to reproduce, prepare Derivative Works of,
|
||||||
|
publicly display, publicly perform, sublicense, and distribute the
|
||||||
|
Work and such Derivative Works in Source or Object form.
|
||||||
|
|
||||||
|
3. Grant of Patent License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
(except as stated in this section) patent license to make, have made,
|
||||||
|
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||||
|
where such license applies only to those patent claims licensable
|
||||||
|
by such Contributor that are necessarily infringed by their
|
||||||
|
Contribution(s) alone or by combination of their Contribution(s)
|
||||||
|
with the Work to which such Contribution(s) was submitted. If You
|
||||||
|
institute patent litigation against any entity (including a
|
||||||
|
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||||
|
or a Contribution incorporated within the Work constitutes direct
|
||||||
|
or contributory patent infringement, then any patent licenses
|
||||||
|
granted to You under this License for that Work shall terminate
|
||||||
|
as of the date such litigation is filed.
|
||||||
|
|
||||||
|
4. Redistribution. You may reproduce and distribute copies of the
|
||||||
|
Work or Derivative Works thereof in any medium, with or without
|
||||||
|
modifications, and in Source or Object form, provided that You
|
||||||
|
meet the following conditions:
|
||||||
|
|
||||||
|
(a) You must give any other recipients of the Work or
|
||||||
|
Derivative Works a copy of this License; and
|
||||||
|
|
||||||
|
(b) You must cause any modified files to carry prominent notices
|
||||||
|
stating that You changed the files; and
|
||||||
|
|
||||||
|
(c) You must retain, in the Source form of any Derivative Works
|
||||||
|
that You distribute, all copyright, patent, trademark, and
|
||||||
|
attribution notices from the Source form of the Work,
|
||||||
|
excluding those notices that do not pertain to any part of
|
||||||
|
the Derivative Works; and
|
||||||
|
|
||||||
|
(d) If the Work includes a "NOTICE" text file as part of its
|
||||||
|
distribution, then any Derivative Works that You distribute must
|
||||||
|
include a readable copy of the attribution notices contained
|
||||||
|
within such NOTICE file, excluding those notices that do not
|
||||||
|
pertain to any part of the Derivative Works, in at least one
|
||||||
|
of the following places: within a NOTICE text file distributed
|
||||||
|
as part of the Derivative Works; within the Source form or
|
||||||
|
documentation, if provided along with the Derivative Works; or,
|
||||||
|
within a display generated by the Derivative Works, if and
|
||||||
|
wherever such third-party notices normally appear. The contents
|
||||||
|
of the NOTICE file are for informational purposes only and
|
||||||
|
do not modify the License. You may add Your own attribution
|
||||||
|
notices within Derivative Works that You distribute, alongside
|
||||||
|
or as an addendum to the NOTICE text from the Work, provided
|
||||||
|
that such additional attribution notices cannot be construed
|
||||||
|
as modifying the License.
|
||||||
|
|
||||||
|
You may add Your own copyright statement to Your modifications and
|
||||||
|
may provide additional or different license terms and conditions
|
||||||
|
for use, reproduction, or distribution of Your modifications, or
|
||||||
|
for any such Derivative Works as a whole, provided Your use,
|
||||||
|
reproduction, and distribution of the Work otherwise complies with
|
||||||
|
the conditions stated in this License.
|
||||||
|
|
||||||
|
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||||
|
any Contribution intentionally submitted for inclusion in the Work
|
||||||
|
by You to the Licensor shall be under the terms and conditions of
|
||||||
|
this License, without any additional terms or conditions.
|
||||||
|
Notwithstanding the above, nothing herein shall supersede or modify
|
||||||
|
the terms of any separate license agreement you may have executed
|
||||||
|
with Licensor regarding such Contributions.
|
||||||
|
|
||||||
|
6. Trademarks. This License does not grant permission to use the trade
|
||||||
|
names, trademarks, service marks, or product names of the Licensor,
|
||||||
|
except as required for reasonable and customary use in describing the
|
||||||
|
origin of the Work and reproducing the content of the NOTICE file.
|
||||||
|
|
||||||
|
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||||
|
agreed to in writing, Licensor provides the Work (and each
|
||||||
|
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||||
|
implied, including, without limitation, any warranties or conditions
|
||||||
|
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||||
|
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||||
|
appropriateness of using or redistributing the Work and assume any
|
||||||
|
risks associated with Your exercise of permissions under this License.
|
||||||
|
|
||||||
|
8. Limitation of Liability. In no event and under no legal theory,
|
||||||
|
whether in tort (including negligence), contract, or otherwise,
|
||||||
|
unless required by applicable law (such as deliberate and grossly
|
||||||
|
negligent acts) or agreed to in writing, shall any Contributor be
|
||||||
|
liable to You for damages, including any direct, indirect, special,
|
||||||
|
incidental, or consequential damages of any character arising as a
|
||||||
|
result of this License or out of the use or inability to use the
|
||||||
|
Work (including but not limited to damages for loss of goodwill,
|
||||||
|
work stoppage, computer failure or malfunction, or any and all
|
||||||
|
other commercial damages or losses), even if such Contributor
|
||||||
|
has been advised of the possibility of such damages.
|
||||||
|
|
||||||
|
9. Accepting Warranty or Additional Liability. While redistributing
|
||||||
|
the Work or Derivative Works thereof, You may choose to offer,
|
||||||
|
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||||
|
or other liability obligations and/or rights consistent with this
|
||||||
|
License. However, in accepting such obligations, You may act only
|
||||||
|
on Your own behalf and on Your sole responsibility, not on behalf
|
||||||
|
of any other Contributor, and only if You agree to indemnify,
|
||||||
|
defend, and hold each Contributor harmless for any liability
|
||||||
|
incurred by, or claims asserted against, such Contributor by reason
|
||||||
|
of your accepting any such warranty or additional liability.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
APPENDIX: How to apply the Apache License to your work.
|
||||||
|
|
||||||
|
To apply the Apache License to your work, attach the following
|
||||||
|
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||||
|
replaced with your own identifying information. (Don't include
|
||||||
|
the brackets!) The text should be enclosed in the appropriate
|
||||||
|
comment syntax for the file format. We also recommend that a
|
||||||
|
file or class name and description of purpose be included on the
|
||||||
|
same "printed page" as the copyright notice for easier
|
||||||
|
identification within third-party archives.
|
||||||
|
|
||||||
|
Copyright [yyyy] [name of copyright owner]
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
93
fonts/SOURCE-CODE-PRO-LICENSE.txt
Normal file
93
fonts/SOURCE-CODE-PRO-LICENSE.txt
Normal file
|
@ -0,0 +1,93 @@
|
||||||
|
Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/), with Reserved Font Name 'Source'. All Rights Reserved. Source is a trademark of Adobe Systems Incorporated in the United States and/or other countries.
|
||||||
|
|
||||||
|
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||||
|
This license is copied below, and is also available with a FAQ at:
|
||||||
|
http://scripts.sil.org/OFL
|
||||||
|
|
||||||
|
|
||||||
|
-----------------------------------------------------------
|
||||||
|
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||||
|
-----------------------------------------------------------
|
||||||
|
|
||||||
|
PREAMBLE
|
||||||
|
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||||
|
development of collaborative font projects, to support the font creation
|
||||||
|
efforts of academic and linguistic communities, and to provide a free and
|
||||||
|
open framework in which fonts may be shared and improved in partnership
|
||||||
|
with others.
|
||||||
|
|
||||||
|
The OFL allows the licensed fonts to be used, studied, modified and
|
||||||
|
redistributed freely as long as they are not sold by themselves. The
|
||||||
|
fonts, including any derivative works, can be bundled, embedded,
|
||||||
|
redistributed and/or sold with any software provided that any reserved
|
||||||
|
names are not used by derivative works. The fonts and derivatives,
|
||||||
|
however, cannot be released under any other type of license. The
|
||||||
|
requirement for fonts to remain under this license does not apply
|
||||||
|
to any document created using the fonts or their derivatives.
|
||||||
|
|
||||||
|
DEFINITIONS
|
||||||
|
"Font Software" refers to the set of files released by the Copyright
|
||||||
|
Holder(s) under this license and clearly marked as such. This may
|
||||||
|
include source files, build scripts and documentation.
|
||||||
|
|
||||||
|
"Reserved Font Name" refers to any names specified as such after the
|
||||||
|
copyright statement(s).
|
||||||
|
|
||||||
|
"Original Version" refers to the collection of Font Software components as
|
||||||
|
distributed by the Copyright Holder(s).
|
||||||
|
|
||||||
|
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||||
|
or substituting -- in part or in whole -- any of the components of the
|
||||||
|
Original Version, by changing formats or by porting the Font Software to a
|
||||||
|
new environment.
|
||||||
|
|
||||||
|
"Author" refers to any designer, engineer, programmer, technical
|
||||||
|
writer or other person who contributed to the Font Software.
|
||||||
|
|
||||||
|
PERMISSION & CONDITIONS
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining
|
||||||
|
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||||
|
redistribute, and sell modified and unmodified copies of the Font
|
||||||
|
Software, subject to the following conditions:
|
||||||
|
|
||||||
|
1) Neither the Font Software nor any of its individual components,
|
||||||
|
in Original or Modified Versions, may be sold by itself.
|
||||||
|
|
||||||
|
2) Original or Modified Versions of the Font Software may be bundled,
|
||||||
|
redistributed and/or sold with any software, provided that each copy
|
||||||
|
contains the above copyright notice and this license. These can be
|
||||||
|
included either as stand-alone text files, human-readable headers or
|
||||||
|
in the appropriate machine-readable metadata fields within text or
|
||||||
|
binary files as long as those fields can be easily viewed by the user.
|
||||||
|
|
||||||
|
3) No Modified Version of the Font Software may use the Reserved Font
|
||||||
|
Name(s) unless explicit written permission is granted by the corresponding
|
||||||
|
Copyright Holder. This restriction only applies to the primary font name as
|
||||||
|
presented to the users.
|
||||||
|
|
||||||
|
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||||
|
Software shall not be used to promote, endorse or advertise any
|
||||||
|
Modified Version, except to acknowledge the contribution(s) of the
|
||||||
|
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||||
|
permission.
|
||||||
|
|
||||||
|
5) The Font Software, modified or unmodified, in part or in whole,
|
||||||
|
must be distributed entirely under this license, and must not be
|
||||||
|
distributed under any other license. The requirement for fonts to
|
||||||
|
remain under this license does not apply to any document created
|
||||||
|
using the Font Software.
|
||||||
|
|
||||||
|
TERMINATION
|
||||||
|
This license becomes null and void if any of the above conditions are
|
||||||
|
not met.
|
||||||
|
|
||||||
|
DISCLAIMER
|
||||||
|
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||||
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||||
|
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||||
|
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||||
|
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||||
|
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||||
|
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||||
|
OTHER DEALINGS IN THE FONT SOFTWARE.
|
100
fonts/fonts.css
Normal file
100
fonts/fonts.css
Normal file
|
@ -0,0 +1,100 @@
|
||||||
|
/* Open Sans is licensed under the Apache License, Version 2.0. See http://www.apache.org/licenses/LICENSE-2.0 */
|
||||||
|
/* Source Code Pro is under the Open Font License. See https://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL */
|
||||||
|
|
||||||
|
/* open-sans-300 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 300;
|
||||||
|
src: local('Open Sans Light'), local('OpenSans-Light'),
|
||||||
|
url('open-sans-v17-all-charsets-300.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-300italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 300;
|
||||||
|
src: local('Open Sans Light Italic'), local('OpenSans-LightItalic'),
|
||||||
|
url('open-sans-v17-all-charsets-300italic.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-regular - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Open Sans Regular'), local('OpenSans-Regular'),
|
||||||
|
url('open-sans-v17-all-charsets-regular.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 400;
|
||||||
|
src: local('Open Sans Italic'), local('OpenSans-Italic'),
|
||||||
|
url('open-sans-v17-all-charsets-italic.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-600 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 600;
|
||||||
|
src: local('Open Sans SemiBold'), local('OpenSans-SemiBold'),
|
||||||
|
url('open-sans-v17-all-charsets-600.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-600italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 600;
|
||||||
|
src: local('Open Sans SemiBold Italic'), local('OpenSans-SemiBoldItalic'),
|
||||||
|
url('open-sans-v17-all-charsets-600italic.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-700 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Open Sans Bold'), local('OpenSans-Bold'),
|
||||||
|
url('open-sans-v17-all-charsets-700.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-700italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 700;
|
||||||
|
src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'),
|
||||||
|
url('open-sans-v17-all-charsets-700italic.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-800 - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 800;
|
||||||
|
src: local('Open Sans ExtraBold'), local('OpenSans-ExtraBold'),
|
||||||
|
url('open-sans-v17-all-charsets-800.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* open-sans-800italic - latin_vietnamese_latin-ext_greek-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Open Sans';
|
||||||
|
font-style: italic;
|
||||||
|
font-weight: 800;
|
||||||
|
src: local('Open Sans ExtraBold Italic'), local('OpenSans-ExtraBoldItalic'),
|
||||||
|
url('open-sans-v17-all-charsets-800italic.woff2') format('woff2');
|
||||||
|
}
|
||||||
|
|
||||||
|
/* source-code-pro-500 - latin_vietnamese_latin-ext_greek_cyrillic-ext_cyrillic */
|
||||||
|
@font-face {
|
||||||
|
font-family: 'Source Code Pro';
|
||||||
|
font-style: normal;
|
||||||
|
font-weight: 500;
|
||||||
|
src: url('source-code-pro-v11-all-charsets-500.woff2') format('woff2');
|
||||||
|
}
|
BIN
fonts/open-sans-v17-all-charsets-300.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-300.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-300italic.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-300italic.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-600.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-600.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-600italic.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-600italic.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-700.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-700.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-700italic.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-700italic.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-800.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-800.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-800italic.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-800italic.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-italic.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-italic.woff2
Normal file
Binary file not shown.
BIN
fonts/open-sans-v17-all-charsets-regular.woff2
Normal file
BIN
fonts/open-sans-v17-all-charsets-regular.woff2
Normal file
Binary file not shown.
BIN
fonts/source-code-pro-v11-all-charsets-500.woff2
Normal file
BIN
fonts/source-code-pro-v11-all-charsets-500.woff2
Normal file
Binary file not shown.
|
@ -1,14 +1,18 @@
|
||||||
/* Base16 Atelier Dune Light - Theme */
|
/*
|
||||||
/* by Bram de Haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/dune) */
|
* An increased contrast highlighting scheme loosely based on the
|
||||||
/* Original Base16 color scheme by Chris Kempson (https://github.com/chriskempson/base16) */
|
* "Base16 Atelier Dune Light" theme by Bram de Haan
|
||||||
|
* (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/dune)
|
||||||
|
* Original Base16 color scheme by Chris Kempson
|
||||||
|
* (https://github.com/chriskempson/base16)
|
||||||
|
*/
|
||||||
|
|
||||||
/* Atelier-Dune Comment */
|
/* Comment */
|
||||||
.hljs-comment,
|
.hljs-comment,
|
||||||
.hljs-quote {
|
.hljs-quote {
|
||||||
color: #AAA;
|
color: #575757;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Atelier-Dune Red */
|
/* Red */
|
||||||
.hljs-variable,
|
.hljs-variable,
|
||||||
.hljs-template-variable,
|
.hljs-template-variable,
|
||||||
.hljs-attribute,
|
.hljs-attribute,
|
||||||
|
@ -19,10 +23,10 @@
|
||||||
.hljs-name,
|
.hljs-name,
|
||||||
.hljs-selector-id,
|
.hljs-selector-id,
|
||||||
.hljs-selector-class {
|
.hljs-selector-class {
|
||||||
color: #d73737;
|
color: #d70025;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Atelier-Dune Orange */
|
/* Orange */
|
||||||
.hljs-number,
|
.hljs-number,
|
||||||
.hljs-meta,
|
.hljs-meta,
|
||||||
.hljs-built_in,
|
.hljs-built_in,
|
||||||
|
@ -30,33 +34,33 @@
|
||||||
.hljs-literal,
|
.hljs-literal,
|
||||||
.hljs-type,
|
.hljs-type,
|
||||||
.hljs-params {
|
.hljs-params {
|
||||||
color: #b65611;
|
color: #b21e00;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Atelier-Dune Green */
|
/* Green */
|
||||||
.hljs-string,
|
.hljs-string,
|
||||||
.hljs-symbol,
|
.hljs-symbol,
|
||||||
.hljs-bullet {
|
.hljs-bullet {
|
||||||
color: #60ac39;
|
color: #008200;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Atelier-Dune Blue */
|
/* Blue */
|
||||||
.hljs-title,
|
.hljs-title,
|
||||||
.hljs-section {
|
.hljs-section {
|
||||||
color: #6684e1;
|
color: #0030f2;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Atelier-Dune Purple */
|
/* Purple */
|
||||||
.hljs-keyword,
|
.hljs-keyword,
|
||||||
.hljs-selector-tag {
|
.hljs-selector-tag {
|
||||||
color: #b854d4;
|
color: #9d00ec;
|
||||||
}
|
}
|
||||||
|
|
||||||
.hljs {
|
.hljs {
|
||||||
display: block;
|
display: block;
|
||||||
overflow-x: auto;
|
overflow-x: auto;
|
||||||
background: #f1f1f1;
|
background: #f6f7f6;
|
||||||
color: #6e6b5e;
|
color: #000;
|
||||||
padding: 0.5em;
|
padding: 0.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
127
index.html
127
index.html
|
@ -4,6 +4,9 @@
|
||||||
<!-- Book generated using mdBook -->
|
<!-- Book generated using mdBook -->
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<title>Startseite - Wiki – FabLab Bad Windsheim</title>
|
<title>Startseite - Wiki – FabLab Bad Windsheim</title>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Custom HTML head -->
|
||||||
|
|
||||||
|
|
||||||
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
|
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
|
||||||
|
@ -11,17 +14,17 @@
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<meta name="theme-color" content="#ffffff" />
|
<meta name="theme-color" content="#ffffff" />
|
||||||
|
|
||||||
<link rel="shortcut icon" href="favicon.png">
|
<link rel="icon" href="favicon.svg">
|
||||||
<link rel="stylesheet" href="css/variables.css">
|
<link rel="shortcut icon" href="favicon.png">
|
||||||
|
<link rel="stylesheet" href="css/variables.css">
|
||||||
<link rel="stylesheet" href="css/general.css">
|
<link rel="stylesheet" href="css/general.css">
|
||||||
<link rel="stylesheet" href="css/chrome.css">
|
<link rel="stylesheet" href="css/chrome.css">
|
||||||
<link rel="stylesheet" href="css/print.css" media="print">
|
<link rel="stylesheet" href="css/print.css" media="print">
|
||||||
|
|
||||||
<!-- Fonts -->
|
<!-- Fonts -->
|
||||||
<link rel="stylesheet" href="FontAwesome/css/font-awesome.css">
|
<link rel="stylesheet" href="FontAwesome/css/font-awesome.css">
|
||||||
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800" rel="stylesheet" type="text/css">
|
<link rel="stylesheet" href="fonts/fonts.css">
|
||||||
<link href="https://fonts.googleapis.com/css?family=Source+Code+Pro:500" rel="stylesheet" type="text/css">
|
|
||||||
|
|
||||||
<!-- Highlight.js Stylesheets -->
|
<!-- Highlight.js Stylesheets -->
|
||||||
<link rel="stylesheet" href="highlight.css">
|
<link rel="stylesheet" href="highlight.css">
|
||||||
<link rel="stylesheet" href="tomorrow-night.css">
|
<link rel="stylesheet" href="tomorrow-night.css">
|
||||||
|
@ -29,14 +32,12 @@
|
||||||
|
|
||||||
<!-- Custom theme stylesheets -->
|
<!-- Custom theme stylesheets -->
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
<body>
|
||||||
<!-- Provide site root to javascript -->
|
<!-- Provide site root to javascript -->
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var path_to_root = "";
|
var path_to_root = "";
|
||||||
var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "light" : "light";
|
var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "navy" : "light";
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- Work around some values being stored in localStorage wrapped in quotes -->
|
<!-- Work around some values being stored in localStorage wrapped in quotes -->
|
||||||
|
@ -80,9 +81,8 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
|
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
|
||||||
<div id="sidebar-scrollbox" class="sidebar-scrollbox">
|
<div class="sidebar-scrollbox">
|
||||||
<ol class="chapter"><li class="expanded affix "><a href="index.html" class="active">Startseite</a></li></ol>
|
<ol class="chapter"><li class="chapter-item expanded affix "><a href="index.html" class="active">Startseite</a></li></ol> </div>
|
||||||
</div>
|
|
||||||
<div id="sidebar-resize-handle" class="sidebar-resize-handle"></div>
|
<div id="sidebar-resize-handle" class="sidebar-resize-handle"></div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
|
@ -90,48 +90,46 @@
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
|
|
||||||
<div id="menu-bar" class="menu-bar">
|
<div id="menu-bar-hover-placeholder"></div>
|
||||||
<div id="menu-bar-sticky-container">
|
<div id="menu-bar" class="menu-bar sticky bordered">
|
||||||
<div class="left-buttons">
|
<div class="left-buttons">
|
||||||
<button id="sidebar-toggle" class="icon-button" type="button" title="Toggle Table of Contents" aria-label="Toggle Table of Contents" aria-controls="sidebar">
|
<button id="sidebar-toggle" class="icon-button" type="button" title="Toggle Table of Contents" aria-label="Toggle Table of Contents" aria-controls="sidebar">
|
||||||
<i class="fa fa-bars"></i>
|
<i class="fa fa-bars"></i>
|
||||||
</button>
|
</button>
|
||||||
<button id="theme-toggle" class="icon-button" type="button" title="Change theme" aria-label="Change theme" aria-haspopup="true" aria-expanded="false" aria-controls="theme-list">
|
<button id="theme-toggle" class="icon-button" type="button" title="Change theme" aria-label="Change theme" aria-haspopup="true" aria-expanded="false" aria-controls="theme-list">
|
||||||
<i class="fa fa-paint-brush"></i>
|
<i class="fa fa-paint-brush"></i>
|
||||||
</button>
|
</button>
|
||||||
<ul id="theme-list" class="theme-popup" aria-label="Themes" role="menu">
|
<ul id="theme-list" class="theme-popup" aria-label="Themes" role="menu">
|
||||||
<li role="none"><button role="menuitem" class="theme" id="light">Light (default)</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="light">Light (default)</button></li>
|
||||||
<li role="none"><button role="menuitem" class="theme" id="rust">Rust</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="rust">Rust</button></li>
|
||||||
<li role="none"><button role="menuitem" class="theme" id="coal">Coal</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="coal">Coal</button></li>
|
||||||
<li role="none"><button role="menuitem" class="theme" id="navy">Navy</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="navy">Navy</button></li>
|
||||||
<li role="none"><button role="menuitem" class="theme" id="ayu">Ayu</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="ayu">Ayu</button></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
<button id="search-toggle" class="icon-button" type="button" title="Search. (Shortkey: s)" aria-label="Toggle Searchbar" aria-expanded="false" aria-keyshortcuts="S" aria-controls="searchbar">
|
||||||
<button id="search-toggle" class="icon-button" type="button" title="Search. (Shortkey: s)" aria-label="Toggle Searchbar" aria-expanded="false" aria-keyshortcuts="S" aria-controls="searchbar">
|
<i class="fa fa-search"></i>
|
||||||
<i class="fa fa-search"></i>
|
</button>
|
||||||
</button>
|
</div>
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h1 class="menu-title">Wiki – FabLab Bad Windsheim</h1>
|
<h1 class="menu-title">Wiki – FabLab Bad Windsheim</h1>
|
||||||
|
|
||||||
<div class="right-buttons">
|
<div class="right-buttons">
|
||||||
<a href="print.html" title="Print this book" aria-label="Print this book">
|
<a href="print.html" title="Print this book" aria-label="Print this book">
|
||||||
<i id="print-button" class="fa fa-print"></i>
|
<i id="print-button" class="fa fa-print"></i>
|
||||||
</a>
|
</a>
|
||||||
|
<a href="https://github.com/fablab-nea/wiki" title="Git repository" aria-label="Git repository">
|
||||||
<a href="https://github.com/fablab-nea/wiki" title="Git repository" aria-label="Git repository">
|
<i id="git-repository-button" class="fa fa-github"></i>
|
||||||
<i id="git-repository-button" class="fa fa-pencil-square-o"></i>
|
</a>
|
||||||
</a>
|
<a href="https://github.com/fablab-nea/wiki/edit/master/src/README.md" title="Suggest an edit" aria-label="Suggest an edit">
|
||||||
|
<i id="git-edit-button" class="fa fa-edit"></i>
|
||||||
</div>
|
</a>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div id="search-wrapper" class="hidden">
|
||||||
<div id="search-wrapper" class="hidden">
|
|
||||||
<form id="searchbar-outer" class="searchbar-outer">
|
<form id="searchbar-outer" class="searchbar-outer">
|
||||||
<input type="search" name="search" id="searchbar" name="searchbar" placeholder="Search this book ..." aria-controls="searchresults-outer" aria-describedby="searchresults-header">
|
<input type="search" id="searchbar" name="searchbar" placeholder="Search this book ..." aria-controls="searchresults-outer" aria-describedby="searchresults-header">
|
||||||
</form>
|
</form>
|
||||||
<div id="searchresults-outer" class="searchresults-outer hidden">
|
<div id="searchresults-outer" class="searchresults-outer hidden">
|
||||||
<div id="searchresults-header" class="searchresults-header"></div>
|
<div id="searchresults-header" class="searchresults-header"></div>
|
||||||
|
@ -140,7 +138,6 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<!-- Apply ARIA attributes after the sidebar and the sidebar toggle button are added to the DOM -->
|
<!-- Apply ARIA attributes after the sidebar and the sidebar toggle button are added to the DOM -->
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
document.getElementById('sidebar-toggle').setAttribute('aria-expanded', sidebar === 'visible');
|
document.getElementById('sidebar-toggle').setAttribute('aria-expanded', sidebar === 'visible');
|
||||||
|
@ -152,9 +149,9 @@
|
||||||
|
|
||||||
<div id="content" class="content">
|
<div id="content" class="content">
|
||||||
<main>
|
<main>
|
||||||
<h1><a class="header" href="#wiki-des-fablab-bad-windsheim" id="wiki-des-fablab-bad-windsheim">Wiki des FabLab Bad Windsheim</a></h1>
|
<h1 id="wiki-des-fablab-bad-windsheim"><a class="header" href="#wiki-des-fablab-bad-windsheim">Wiki des FabLab Bad Windsheim</a></h1>
|
||||||
<p>In diesem Wiki werden Anleitungen, Maschinen-Parameter und ähnliches gesammelt.</p>
|
<p>In diesem Wiki werden Anleitungen, Maschinen-Parameter und ähnliches gesammelt.</p>
|
||||||
<h2><a class="header" href="#wie-kann-ich-das-wiki-bearbeiten" id="wie-kann-ich-das-wiki-bearbeiten">Wie kann ich das Wiki bearbeiten?</a></h2>
|
<h2 id="wie-kann-ich-das-wiki-bearbeiten"><a class="header" href="#wie-kann-ich-das-wiki-bearbeiten">Wie kann ich das Wiki bearbeiten?</a></h2>
|
||||||
<p>Zum Bearbeiten des Wikis benötigst Du einen
|
<p>Zum Bearbeiten des Wikis benötigst Du einen
|
||||||
<a href="https://github.com">GitHub</a>-Account.</p>
|
<a href="https://github.com">GitHub</a>-Account.</p>
|
||||||
<p>Über den Knopf in der oberen rechten Bildschirm-Ecke gelangst Du zu einer
|
<p>Über den Knopf in der oberen rechten Bildschirm-Ecke gelangst Du zu einer
|
||||||
|
@ -170,9 +167,7 @@ bei letzterem muss erst ein Mitglied des FabLabs Deine Änderung genehmigen.</p>
|
||||||
<nav class="nav-wrapper" aria-label="Page navigation">
|
<nav class="nav-wrapper" aria-label="Page navigation">
|
||||||
<!-- Mobile navigation buttons -->
|
<!-- Mobile navigation buttons -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div style="clear: both"></div>
|
<div style="clear: both"></div>
|
||||||
</nav>
|
</nav>
|
||||||
</div>
|
</div>
|
||||||
|
@ -180,42 +175,28 @@ bei letzterem muss erst ein Mitglied des FabLabs Deine Änderung genehmigen.</p>
|
||||||
|
|
||||||
<nav class="nav-wide-wrapper" aria-label="Page navigation">
|
<nav class="nav-wide-wrapper" aria-label="Page navigation">
|
||||||
|
|
||||||
|
</nav>
|
||||||
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
<script type="text/javascript">
|
window.playground_copyable = true;
|
||||||
window.playpen_copyable = true;
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<script src="elasticlunr.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
|
||||||
<script src="elasticlunr.min.js" type="text/javascript" charset="utf-8"></script>
|
|
||||||
<script src="mark.min.js" type="text/javascript" charset="utf-8"></script>
|
<script src="mark.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
<script src="searcher.js" type="text/javascript" charset="utf-8"></script>
|
<script src="searcher.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="clipboard.min.js" type="text/javascript" charset="utf-8"></script>
|
<script src="clipboard.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
<script src="highlight.js" type="text/javascript" charset="utf-8"></script>
|
<script src="highlight.js" type="text/javascript" charset="utf-8"></script>
|
||||||
<script src="book.js" type="text/javascript" charset="utf-8"></script>
|
<script src="book.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
|
||||||
<!-- Custom JS scripts -->
|
<!-- Custom JS scripts -->
|
||||||
|
|
||||||
<script type="text/javascript" src="assets/edit.js"></script>
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
134
print.html
134
print.html
|
@ -4,8 +4,10 @@
|
||||||
<!-- Book generated using mdBook -->
|
<!-- Book generated using mdBook -->
|
||||||
<meta charset="UTF-8">
|
<meta charset="UTF-8">
|
||||||
<title>Wiki – FabLab Bad Windsheim</title>
|
<title>Wiki – FabLab Bad Windsheim</title>
|
||||||
|
<meta name="robots" content="noindex" />
|
||||||
<meta name="robots" content="noindex" />
|
|
||||||
|
|
||||||
|
<!-- Custom HTML head -->
|
||||||
|
|
||||||
|
|
||||||
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
|
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
|
||||||
|
@ -13,17 +15,17 @@
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<meta name="theme-color" content="#ffffff" />
|
<meta name="theme-color" content="#ffffff" />
|
||||||
|
|
||||||
<link rel="shortcut icon" href="favicon.png">
|
<link rel="icon" href="favicon.svg">
|
||||||
<link rel="stylesheet" href="css/variables.css">
|
<link rel="shortcut icon" href="favicon.png">
|
||||||
|
<link rel="stylesheet" href="css/variables.css">
|
||||||
<link rel="stylesheet" href="css/general.css">
|
<link rel="stylesheet" href="css/general.css">
|
||||||
<link rel="stylesheet" href="css/chrome.css">
|
<link rel="stylesheet" href="css/chrome.css">
|
||||||
<link rel="stylesheet" href="css/print.css" media="print">
|
<link rel="stylesheet" href="css/print.css" media="print">
|
||||||
|
|
||||||
<!-- Fonts -->
|
<!-- Fonts -->
|
||||||
<link rel="stylesheet" href="FontAwesome/css/font-awesome.css">
|
<link rel="stylesheet" href="FontAwesome/css/font-awesome.css">
|
||||||
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800" rel="stylesheet" type="text/css">
|
<link rel="stylesheet" href="fonts/fonts.css">
|
||||||
<link href="https://fonts.googleapis.com/css?family=Source+Code+Pro:500" rel="stylesheet" type="text/css">
|
|
||||||
|
|
||||||
<!-- Highlight.js Stylesheets -->
|
<!-- Highlight.js Stylesheets -->
|
||||||
<link rel="stylesheet" href="highlight.css">
|
<link rel="stylesheet" href="highlight.css">
|
||||||
<link rel="stylesheet" href="tomorrow-night.css">
|
<link rel="stylesheet" href="tomorrow-night.css">
|
||||||
|
@ -31,14 +33,12 @@
|
||||||
|
|
||||||
<!-- Custom theme stylesheets -->
|
<!-- Custom theme stylesheets -->
|
||||||
|
|
||||||
|
</head>
|
||||||
|
|
||||||
</head>
|
|
||||||
<body>
|
<body>
|
||||||
<!-- Provide site root to javascript -->
|
<!-- Provide site root to javascript -->
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
var path_to_root = "";
|
var path_to_root = "";
|
||||||
var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "light" : "light";
|
var default_theme = window.matchMedia("(prefers-color-scheme: dark)").matches ? "navy" : "light";
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<!-- Work around some values being stored in localStorage wrapped in quotes -->
|
<!-- Work around some values being stored in localStorage wrapped in quotes -->
|
||||||
|
@ -82,9 +82,8 @@
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
|
<nav id="sidebar" class="sidebar" aria-label="Table of contents">
|
||||||
<div id="sidebar-scrollbox" class="sidebar-scrollbox">
|
<div class="sidebar-scrollbox">
|
||||||
<ol class="chapter"><li class="expanded affix "><a href="index.html">Startseite</a></li></ol>
|
<ol class="chapter"><li class="chapter-item expanded affix "><a href="index.html">Startseite</a></li></ol> </div>
|
||||||
</div>
|
|
||||||
<div id="sidebar-resize-handle" class="sidebar-resize-handle"></div>
|
<div id="sidebar-resize-handle" class="sidebar-resize-handle"></div>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
|
@ -92,48 +91,43 @@
|
||||||
|
|
||||||
<div class="page">
|
<div class="page">
|
||||||
|
|
||||||
<div id="menu-bar" class="menu-bar">
|
<div id="menu-bar-hover-placeholder"></div>
|
||||||
<div id="menu-bar-sticky-container">
|
<div id="menu-bar" class="menu-bar sticky bordered">
|
||||||
<div class="left-buttons">
|
<div class="left-buttons">
|
||||||
<button id="sidebar-toggle" class="icon-button" type="button" title="Toggle Table of Contents" aria-label="Toggle Table of Contents" aria-controls="sidebar">
|
<button id="sidebar-toggle" class="icon-button" type="button" title="Toggle Table of Contents" aria-label="Toggle Table of Contents" aria-controls="sidebar">
|
||||||
<i class="fa fa-bars"></i>
|
<i class="fa fa-bars"></i>
|
||||||
</button>
|
</button>
|
||||||
<button id="theme-toggle" class="icon-button" type="button" title="Change theme" aria-label="Change theme" aria-haspopup="true" aria-expanded="false" aria-controls="theme-list">
|
<button id="theme-toggle" class="icon-button" type="button" title="Change theme" aria-label="Change theme" aria-haspopup="true" aria-expanded="false" aria-controls="theme-list">
|
||||||
<i class="fa fa-paint-brush"></i>
|
<i class="fa fa-paint-brush"></i>
|
||||||
</button>
|
</button>
|
||||||
<ul id="theme-list" class="theme-popup" aria-label="Themes" role="menu">
|
<ul id="theme-list" class="theme-popup" aria-label="Themes" role="menu">
|
||||||
<li role="none"><button role="menuitem" class="theme" id="light">Light (default)</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="light">Light (default)</button></li>
|
||||||
<li role="none"><button role="menuitem" class="theme" id="rust">Rust</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="rust">Rust</button></li>
|
||||||
<li role="none"><button role="menuitem" class="theme" id="coal">Coal</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="coal">Coal</button></li>
|
||||||
<li role="none"><button role="menuitem" class="theme" id="navy">Navy</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="navy">Navy</button></li>
|
||||||
<li role="none"><button role="menuitem" class="theme" id="ayu">Ayu</button></li>
|
<li role="none"><button role="menuitem" class="theme" id="ayu">Ayu</button></li>
|
||||||
</ul>
|
</ul>
|
||||||
|
<button id="search-toggle" class="icon-button" type="button" title="Search. (Shortkey: s)" aria-label="Toggle Searchbar" aria-expanded="false" aria-keyshortcuts="S" aria-controls="searchbar">
|
||||||
<button id="search-toggle" class="icon-button" type="button" title="Search. (Shortkey: s)" aria-label="Toggle Searchbar" aria-expanded="false" aria-keyshortcuts="S" aria-controls="searchbar">
|
<i class="fa fa-search"></i>
|
||||||
<i class="fa fa-search"></i>
|
</button>
|
||||||
</button>
|
</div>
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h1 class="menu-title">Wiki – FabLab Bad Windsheim</h1>
|
<h1 class="menu-title">Wiki – FabLab Bad Windsheim</h1>
|
||||||
|
|
||||||
<div class="right-buttons">
|
<div class="right-buttons">
|
||||||
<a href="print.html" title="Print this book" aria-label="Print this book">
|
<a href="print.html" title="Print this book" aria-label="Print this book">
|
||||||
<i id="print-button" class="fa fa-print"></i>
|
<i id="print-button" class="fa fa-print"></i>
|
||||||
</a>
|
</a>
|
||||||
|
<a href="https://github.com/fablab-nea/wiki" title="Git repository" aria-label="Git repository">
|
||||||
<a href="https://github.com/fablab-nea/wiki" title="Git repository" aria-label="Git repository">
|
<i id="git-repository-button" class="fa fa-github"></i>
|
||||||
<i id="git-repository-button" class="fa fa-pencil-square-o"></i>
|
</a>
|
||||||
</a>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div id="search-wrapper" class="hidden">
|
||||||
<div id="search-wrapper" class="hidden">
|
|
||||||
<form id="searchbar-outer" class="searchbar-outer">
|
<form id="searchbar-outer" class="searchbar-outer">
|
||||||
<input type="search" name="search" id="searchbar" name="searchbar" placeholder="Search this book ..." aria-controls="searchresults-outer" aria-describedby="searchresults-header">
|
<input type="search" id="searchbar" name="searchbar" placeholder="Search this book ..." aria-controls="searchresults-outer" aria-describedby="searchresults-header">
|
||||||
</form>
|
</form>
|
||||||
<div id="searchresults-outer" class="searchresults-outer hidden">
|
<div id="searchresults-outer" class="searchresults-outer hidden">
|
||||||
<div id="searchresults-header" class="searchresults-header"></div>
|
<div id="searchresults-header" class="searchresults-header"></div>
|
||||||
|
@ -142,7 +136,6 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<!-- Apply ARIA attributes after the sidebar and the sidebar toggle button are added to the DOM -->
|
<!-- Apply ARIA attributes after the sidebar and the sidebar toggle button are added to the DOM -->
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
document.getElementById('sidebar-toggle').setAttribute('aria-expanded', sidebar === 'visible');
|
document.getElementById('sidebar-toggle').setAttribute('aria-expanded', sidebar === 'visible');
|
||||||
|
@ -154,9 +147,9 @@
|
||||||
|
|
||||||
<div id="content" class="content">
|
<div id="content" class="content">
|
||||||
<main>
|
<main>
|
||||||
<h1><a class="header" href="#wiki-des-fablab-bad-windsheim" id="wiki-des-fablab-bad-windsheim">Wiki des FabLab Bad Windsheim</a></h1>
|
<h1 id="wiki-des-fablab-bad-windsheim"><a class="header" href="#wiki-des-fablab-bad-windsheim">Wiki des FabLab Bad Windsheim</a></h1>
|
||||||
<p>In diesem Wiki werden Anleitungen, Maschinen-Parameter und ähnliches gesammelt.</p>
|
<p>In diesem Wiki werden Anleitungen, Maschinen-Parameter und ähnliches gesammelt.</p>
|
||||||
<h2><a class="header" href="#wie-kann-ich-das-wiki-bearbeiten" id="wie-kann-ich-das-wiki-bearbeiten">Wie kann ich das Wiki bearbeiten?</a></h2>
|
<h2 id="wie-kann-ich-das-wiki-bearbeiten"><a class="header" href="#wie-kann-ich-das-wiki-bearbeiten">Wie kann ich das Wiki bearbeiten?</a></h2>
|
||||||
<p>Zum Bearbeiten des Wikis benötigst Du einen
|
<p>Zum Bearbeiten des Wikis benötigst Du einen
|
||||||
<a href="https://github.com">GitHub</a>-Account.</p>
|
<a href="https://github.com">GitHub</a>-Account.</p>
|
||||||
<p>Über den Knopf in der oberen rechten Bildschirm-Ecke gelangst Du zu einer
|
<p>Über den Knopf in der oberen rechten Bildschirm-Ecke gelangst Du zu einer
|
||||||
|
@ -172,9 +165,7 @@ bei letzterem muss erst ein Mitglied des FabLabs Deine Änderung genehmigen.</p>
|
||||||
<nav class="nav-wrapper" aria-label="Page navigation">
|
<nav class="nav-wrapper" aria-label="Page navigation">
|
||||||
<!-- Mobile navigation buttons -->
|
<!-- Mobile navigation buttons -->
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div style="clear: both"></div>
|
<div style="clear: both"></div>
|
||||||
</nav>
|
</nav>
|
||||||
</div>
|
</div>
|
||||||
|
@ -182,50 +173,33 @@ bei letzterem muss erst ein Mitglied des FabLabs Deine Änderung genehmigen.</p>
|
||||||
|
|
||||||
<nav class="nav-wide-wrapper" aria-label="Page navigation">
|
<nav class="nav-wide-wrapper" aria-label="Page navigation">
|
||||||
|
|
||||||
|
</nav>
|
||||||
|
|
||||||
</nav>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
<script type="text/javascript">
|
window.playground_copyable = true;
|
||||||
window.playpen_copyable = true;
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<script src="elasticlunr.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
|
||||||
<script src="elasticlunr.min.js" type="text/javascript" charset="utf-8"></script>
|
|
||||||
<script src="mark.min.js" type="text/javascript" charset="utf-8"></script>
|
<script src="mark.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
<script src="searcher.js" type="text/javascript" charset="utf-8"></script>
|
<script src="searcher.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="clipboard.min.js" type="text/javascript" charset="utf-8"></script>
|
<script src="clipboard.min.js" type="text/javascript" charset="utf-8"></script>
|
||||||
<script src="highlight.js" type="text/javascript" charset="utf-8"></script>
|
<script src="highlight.js" type="text/javascript" charset="utf-8"></script>
|
||||||
<script src="book.js" type="text/javascript" charset="utf-8"></script>
|
<script src="book.js" type="text/javascript" charset="utf-8"></script>
|
||||||
|
|
||||||
<!-- Custom JS scripts -->
|
<!-- Custom JS scripts -->
|
||||||
|
|
||||||
<script type="text/javascript" src="assets/edit.js"></script>
|
<script type="text/javascript">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<script type="text/javascript">
|
|
||||||
window.addEventListener('load', function() {
|
window.addEventListener('load', function() {
|
||||||
window.setTimeout(window.print, 100);
|
window.setTimeout(window.print, 100);
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
10
searcher.js
10
searcher.js
|
@ -145,6 +145,11 @@ window.search = window.search || {};
|
||||||
url.push("");
|
url.push("");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// encodeURIComponent escapes all chars that could allow an XSS except
|
||||||
|
// for '. Due to that we also manually replace ' with its url-encoded
|
||||||
|
// representation (%27).
|
||||||
|
var searchterms = encodeURIComponent(searchterms.join(" ")).replace(/\'/g, "%27");
|
||||||
|
|
||||||
return '<a href="' + path_to_root + url[0] + '?' + URL_MARK_PARAM + '=' + searchterms + '#' + url[1]
|
return '<a href="' + path_to_root + url[0] + '?' + URL_MARK_PARAM + '=' + searchterms + '#' + url[1]
|
||||||
+ '" aria-details="teaser_' + teaser_count + '">' + result.doc.breadcrumbs + '</a>'
|
+ '" aria-details="teaser_' + teaser_count + '">' + result.doc.breadcrumbs + '</a>'
|
||||||
+ '<span class="teaser" id="teaser_' + teaser_count + '" aria-label="Search Result Teaser">'
|
+ '<span class="teaser" id="teaser_' + teaser_count + '" aria-label="Search Result Teaser">'
|
||||||
|
@ -291,7 +296,7 @@ window.search = window.search || {};
|
||||||
}
|
}
|
||||||
|
|
||||||
if (url.params.hasOwnProperty(URL_MARK_PARAM)) {
|
if (url.params.hasOwnProperty(URL_MARK_PARAM)) {
|
||||||
var words = url.params[URL_MARK_PARAM].split(' ');
|
var words = decodeURIComponent(url.params[URL_MARK_PARAM]).split(' ');
|
||||||
marker.mark(words, {
|
marker.mark(words, {
|
||||||
exclude: mark_exclude
|
exclude: mark_exclude
|
||||||
});
|
});
|
||||||
|
@ -311,7 +316,7 @@ window.search = window.search || {};
|
||||||
|
|
||||||
// Eventhandler for keyevents on `document`
|
// Eventhandler for keyevents on `document`
|
||||||
function globalKeyHandler(e) {
|
function globalKeyHandler(e) {
|
||||||
if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || e.target.type === 'textarea') { return; }
|
if (e.altKey || e.ctrlKey || e.metaKey || e.shiftKey || e.target.type === 'textarea' || e.target.type === 'text') { return; }
|
||||||
|
|
||||||
if (e.keyCode === ESCAPE_KEYCODE) {
|
if (e.keyCode === ESCAPE_KEYCODE) {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
|
@ -422,6 +427,7 @@ window.search = window.search || {};
|
||||||
delete url.params[URL_MARK_PARAM];
|
delete url.params[URL_MARK_PARAM];
|
||||||
url.hash = "";
|
url.hash = "";
|
||||||
} else {
|
} else {
|
||||||
|
delete url.params[URL_MARK_PARAM];
|
||||||
delete url.params[URL_SEARCH_PARAM];
|
delete url.params[URL_SEARCH_PARAM];
|
||||||
}
|
}
|
||||||
// A new search will also add a new history item, so the user can go back
|
// A new search will also add a new history item, so the user can go back
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue