├── docs ├── .nojekyll ├── redirects.json ├── robots.txt ├── assets │ └── fonts │ │ ├── FontAwesome.otf │ │ ├── fontawesome-webfont.eot │ │ ├── fontawesome-webfont.ttf │ │ ├── fontawesome-webfont.woff │ │ └── fontawesome-webfont.woff2 ├── package.json ├── en │ ├── index.html │ ├── subcategory1 │ │ ├── index.html │ │ └── post-in-subdirectory.html │ └── example-post.html ├── LICENSE ├── sitemap.xml ├── feed.xml ├── index.html ├── de │ ├── unterkategorie1 │ │ ├── index.html │ │ └── post-in-unterkategorie.html │ ├── index.html │ └── beispiel-post.html ├── es │ ├── subcategoria1 │ │ ├── index.html │ │ └── post-en-subdirectorio.html │ ├── index.html │ └── post-ejemplo.html └── README.md ├── _data ├── authors.yml ├── nav.yml ├── map.yml └── locales.yml ├── .gitignore ├── assets ├── fonts │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ └── fontawesome-webfont.woff2 ├── main.scss └── vendor │ └── popper.min.js ├── en ├── subcategory1 │ ├── _posts │ │ └── 2017-05-10-post-in-subdirectory.md │ └── index.md └── _posts │ └── 2017-05-09-example-post.md ├── de ├── index.html ├── unterkategorie1 │ ├── _posts │ │ └── 2017-05-10-post-in-unterkategorie.md │ └── index.md └── _posts │ └── 2017-05-09-beispiel-post.md ├── es ├── subcategoria1 │ ├── _posts │ │ └── 2017-05-10-post-en-subdirectorio.md │ └── index.md ├── index.html └── _posts │ └── 2017-05-09-post-ejemplo.md ├── index.html ├── _layouts ├── category.html ├── home.html └── default.html ├── _sass └── _variables.scss ├── Gemfile ├── package.json ├── _includes ├── alternate.html ├── breadcrumbs.html ├── mainnav.html └── lang_nav.html ├── LICENSE ├── yarn.lock ├── Makefile ├── _config.yml ├── Gemfile.lock └── README.md /docs/.nojekyll: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/redirects.json: -------------------------------------------------------------------------------- 1 | {"/en/":"https://marcanuy.github.io/jekyll-skeleton/"} -------------------------------------------------------------------------------- /docs/robots.txt: -------------------------------------------------------------------------------- 1 | Sitemap: https://marcanuy.github.io/jekyll-skeleton/sitemap.xml 2 | -------------------------------------------------------------------------------- /_data/authors.yml: -------------------------------------------------------------------------------- 1 | marcanuy: 2 | picture: /assets/img/marcanuy.png 3 | twitter: marcanuy 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | _site/ 2 | .sass-cache/ 3 | .jekyll-metadata 4 | bower_components/ 5 | node_modules/ 6 | .bundle/ 7 | -------------------------------------------------------------------------------- /assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /docs/assets/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/docs/assets/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /assets/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/assets/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /assets/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/assets/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /assets/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/assets/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /en/subcategory1/_posts/2017-05-10-post-in-subdirectory.md: -------------------------------------------------------------------------------- 1 | --- 2 | description: The meta description of a post in a category 3 | --- 4 | -------------------------------------------------------------------------------- /en/subcategory1/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Subcategory 3 | description: List of posts in subcategory 4 | layout: category 5 | --- 6 | 7 | -------------------------------------------------------------------------------- /docs/assets/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/docs/assets/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /docs/assets/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/docs/assets/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /de/index.html: -------------------------------------------------------------------------------- 1 | --- 2 | title: Zuhause 3 | layout: home 4 | description: Die Meta-Beschreibung der Website. 5 | --- 6 | 7 | Startseite Beispiel 8 | -------------------------------------------------------------------------------- /docs/assets/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/docs/assets/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /docs/assets/fonts/fontawesome-webfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/marcanuy/jekyll-skeleton/HEAD/docs/assets/fonts/fontawesome-webfont.woff2 -------------------------------------------------------------------------------- /es/subcategoria1/_posts/2017-05-10-post-en-subdirectorio.md: -------------------------------------------------------------------------------- 1 | --- 2 | description: La meta descripción de una publicación en una categoría 3 | --- 4 | -------------------------------------------------------------------------------- /de/unterkategorie1/_posts/2017-05-10-post-in-unterkategorie.md: -------------------------------------------------------------------------------- 1 | --- 2 | description: Die Meta-Beschreibung eines Beitrags in einer Kategorie 3 | --- 4 | -------------------------------------------------------------------------------- /de/unterkategorie1/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Unterkategorie 3 | description: Liste der Beiträge in der Unterkategorie 4 | layout: category 5 | --- 6 | 7 | -------------------------------------------------------------------------------- /es/subcategoria1/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Subcategoría 3 | layout: category 4 | description: Lista de publicaciones en la subcategoría 5 | --- 6 | 7 | -------------------------------------------------------------------------------- /es/index.html: -------------------------------------------------------------------------------- 1 | --- 2 | title: Inicio 3 | layout: home 4 | description: "La meta descripción del sitio web." 5 | --- 6 | 7 | Página de inicio de ejemplo 8 | -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | --- 2 | title: Homepage example 3 | layout: home 4 | redirect_from: 5 | - /en/ # the default language subfolder redirects here 6 | --- 7 | 8 | Example home page, Hello World! 9 | -------------------------------------------------------------------------------- /assets/main.scss: -------------------------------------------------------------------------------- 1 | --- 2 | --- 3 | 4 | @import "bootstrap/scss/functions"; 5 | @import "variables"; 6 | @import "bootstrap/scss/bootstrap"; 7 | 8 | .content { 9 | font-size: $custom-font-size; 10 | } 11 | -------------------------------------------------------------------------------- /_layouts/category.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 | {% assign current_cat = page.dir | split: "/" | last%} 6 | {% assign posts = site.categories[current_cat] | where: 'lang',page.lang %} 7 | 12 | -------------------------------------------------------------------------------- /_sass/_variables.scss: -------------------------------------------------------------------------------- 1 | $custom-font-size: 20px; 2 | 3 | $font-family-serif: Georgia, "Times New Roman", Times, serif !default; 4 | $font-family-base: $font-family-serif; 5 | 6 | $font-size-base: 1rem !default; // Assumes the browser default, typically `16px` 7 | 8 | 9 | @import "../node_modules/bootstrap/scss/variables"; 10 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | source "https://rubygems.org" 3 | 4 | gem "jekyll" 5 | 6 | # If you have any plugins, put them here! 7 | group :jekyll_plugins do 8 | gem "jekyll-feed" 9 | gem 'jekyll-seo-tag' 10 | gem 'jekyll-sitemap' 11 | gem 'jekyll-toc' 12 | gem 'html-proofer' 13 | gem 'jekyll-redirect-from' 14 | end 15 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jekyll-skeleton", 3 | "version": "1.0.0", 4 | "description": "Jekyll scaffold", 5 | "main": "index.js", 6 | "repository": "git@github.com:marcanuy/jekyll-skeleton.git", 7 | "author": "Marcelo Canina ", 8 | "license": "MIT", 9 | "dependencies": { 10 | "bootstrap": "4.3.1", 11 | "font-awesome": "^4.7.0", 12 | "jquery": "^3.5.0", 13 | "popper.js": "^1.14.3" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /docs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "jekyll-skeleton", 3 | "version": "1.0.0", 4 | "description": "Jekyll scaffold", 5 | "main": "index.js", 6 | "repository": "git@github.com:marcanuy/jekyll-skeleton.git", 7 | "author": "Marcelo Canina ", 8 | "license": "MIT", 9 | "dependencies": { 10 | "bootstrap": "4.0.0", 11 | "font-awesome": "^4.7.0", 12 | "jquery": "^3.3.1", 13 | "popper.js": "^1.14.3" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /_data/nav.yml: -------------------------------------------------------------------------------- 1 | main_nav: 2 | en: 3 | - url: "/" 4 | title: "Home" 5 | home: true 6 | - url: "/en/subcategory1/" 7 | title: "Subcategory" 8 | es: 9 | - url: "/es/" 10 | title: "Inicio" 11 | home: true 12 | - url: "/es/subcategoria1/" 13 | title: "Subcategoria" 14 | de: 15 | - url: "/de/" 16 | title: "Zuhause" 17 | home: true 18 | - url: "/de/unterkategorie1/" 19 | title: "Unterkategorie" 20 | # secondary_nav: 21 | # en: 22 | # es: 23 | -------------------------------------------------------------------------------- /docs/en/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Redirecting… 5 | 6 | 7 | 8 | 9 |

Redirecting…

10 | Click here if you are not redirected. 11 | 12 | -------------------------------------------------------------------------------- /_layouts/home.html: -------------------------------------------------------------------------------- 1 | --- 2 | layout: default 3 | --- 4 | 5 |
6 |

{{site.data.locales[page.lang].home.jumbotron_heading}}

7 |

{{site.data.locales[page.lang].home.jumbotron_lead}}

8 |
9 |

{{site.data.locales[page.lang].home.jumbotron_paragraph}}

10 |

11 | {{site.data.locales[page.lang].home.jumbotron_button}} 12 |

13 |
14 | -------------------------------------------------------------------------------- /_data/map.yml: -------------------------------------------------------------------------------- 1 | - 2 | en: index.html 3 | es: es/index.html 4 | de: de/index.html 5 | - 6 | en: en/_posts/2017-05-09-example-post.md 7 | es: es/_posts/2017-05-09-post-ejemplo.md 8 | de: de/_posts/2017-05-09-beispiel-post.md 9 | - 10 | en: en/subcategory1/index.md 11 | es: es/subcategoria1/index.md 12 | de: de/unterkategorie1/index.md 13 | - 14 | en: en/subcategory1/_posts/ 15 | es: es/subcategoria1/_posts/ 16 | de: de/unterkategorie1/_posts/ 17 | - 18 | en: en/subcategory1/_posts/2017-05-10-post-in-subdirectory.md 19 | es: es/subcategoria1/_posts/2017-05-10-post-en-subdirectorio.md 20 | de: de/unterkategorie1/_posts/2017-05-10-post-in-unterkategorie.md 21 | -------------------------------------------------------------------------------- /_includes/alternate.html: -------------------------------------------------------------------------------- 1 | {%comment%} check for the presence of the path in an array of paths. {%endcomment%} 2 | 3 | {% for block in site.data.map %} 4 | {% for item in block[page.lang] %} 5 | {% if item == page.path %} 6 | {% for trans in block %} 7 | {% assign trans_path = trans[1] %} 8 | 9 | {% assign posts = site.posts | where:"path",trans_path %} 10 | {% for item in posts %} 11 | 12 | {% endfor %} 13 | 14 | {% assign pages = site.pages | where:"path",trans_path %} 15 | {% for item in pages %} 16 | 17 | {% endfor %} 18 | {% endfor %} 19 | {% endif %} 20 | {% endfor %} 21 | {% endfor %} 22 | -------------------------------------------------------------------------------- /en/_posts/2017-05-09-example-post.md: -------------------------------------------------------------------------------- 1 | --- 2 | description: The meta description of the post. 3 | --- 4 | 5 | This is an example post. 6 | 7 | > A "Hello, World!" program is a computer program that outputs or 8 | > displays "Hello, World!" to a user. Being a very simple program in 9 | > most programming languages, it is often used to illustrate the basic 10 | > syntax of a programming language for a working program.[1] It is often 11 | > the very first program people write when they are new to a language. 12 | > 13 | > 14 | {: class="blockquote" cite="https://en.wikipedia.org/wiki/%22Hello,_World!%22_program"} 15 | 16 | -------------------------------------------------------------------------------- /de/_posts/2017-05-09-beispiel-post.md: -------------------------------------------------------------------------------- 1 | --- 2 | description: Die Meta-Beschreibung der Post. 3 | --- 4 | 5 | Dies ist ein Beispielpfosten. 6 | 7 | > Ein Hallo-Welt-Programm ist ein kleines Computerprogramm, das auf 8 | > möglichst einfache Weise zeigen soll, welche Anweisungen oder 9 | > Bestandteile für ein vollständiges Programm in einer 10 | > Programmiersprache benötigt werden, und somit einen ersten Einblick 11 | > in die Syntax gibt. Aufgabe des Programms ist, den Text Hallo Welt! 12 | > oder auf Englisch Hello World! auszugeben. Wegen der einfachen 13 | > Aufgabenstellung eignen sich solche Programme insbesondere für 14 | > didaktische Zwecke. Deshalb wird es in vielen 15 | > Programmier-Lehrbüchern als Einsteigerprogramm verwendet. 16 | > 17 | > 18 | {: class="blockquote" cite="https://de.wikipedia.org/wiki/Hallo-Welt-Programm"} 19 | -------------------------------------------------------------------------------- /es/_posts/2017-05-09-post-ejemplo.md: -------------------------------------------------------------------------------- 1 | --- 2 | description: La meta descripción de la publicación. 3 | --- 4 | 5 | Post de ejemplo 6 | 7 | > En informática, un programa Hola mundo es el que imprime el texto «¡Hola, mundo!» en un dispositivo de visualización, en la mayoría de los casos una pantalla de monitor. Este programa suele ser usado como introducción al estudio de un lenguaje de programación, siendo un primer ejercicio típico, y se considera fundamental desde el punto de vista didáctico. 8 | > 9 | > En algunos lenguajes, configurar un conjunto de herramientas básicas completo desde cero hasta el punto en que los programas triviales puedan ser compilados y ejecutados involucra una cantidad de trabajo sustancial. Por esta razón, generalmente es usado un programa muy simple para probar un nuevo conjunto de herramientas. 10 | > 11 | > 12 | {: class="blockquote" cite="https://es.wikipedia.org/wiki/Hola_mundo"} 13 | -------------------------------------------------------------------------------- /_includes/breadcrumbs.html: -------------------------------------------------------------------------------- 1 | {% assign categories = include.path | split:"/" %} 2 | {% assign filename_without_extension = categories | last | split:"." | first %} 3 | {% if categories contains "_posts" or filename_without_extension == "index" %} 4 | {% comment %} posts are like /docs/python/_posts/2016-06-06-foobar.md {% endcomment %} 5 | {% comment %} OR pages are index.* i.e.: like /docs/python/index.md or index.html {% endcomment %} 6 | {% assign categories = categories | pop %} 7 | {% endif %} 8 | 9 | {% assign route="" %} 10 | 11 | 26 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Marcelo Canina 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /_includes/mainnav.html: -------------------------------------------------------------------------------- 1 | {% assign menuitems = site.data.nav.main_nav[page.lang] %} 2 | 3 | 22 | -------------------------------------------------------------------------------- /docs/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Marcelo Canina 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | bootstrap@4.3.1: 6 | version "4.3.1" 7 | resolved "https://registry.yarnpkg.com/bootstrap/-/bootstrap-4.3.1.tgz#280ca8f610504d99d7b6b4bfc4b68cec601704ac" 8 | integrity sha512-rXqOmH1VilAt2DyPzluTi2blhk17bO7ef+zLLPlWvG494pDxcM234pJ8wTc/6R40UWizAIIMgxjvxZg5kmsbag== 9 | 10 | font-awesome@^4.7.0: 11 | version "4.7.0" 12 | resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133" 13 | integrity sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM= 14 | 15 | jquery@^3.5.0: 16 | version "3.5.0" 17 | resolved "https://registry.yarnpkg.com/jquery/-/jquery-3.5.0.tgz#9980b97d9e4194611c36530e7dc46a58d7340fc9" 18 | integrity sha512-Xb7SVYMvygPxbFMpTFQiHh1J7HClEaThguL15N/Gg37Lri/qKyhRGZYzHRyLH8Stq3Aow0LsHO2O2ci86fCrNQ== 19 | 20 | popper.js@^1.14.3: 21 | version "1.15.0" 22 | resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.15.0.tgz#5560b99bbad7647e9faa475c6b8056621f5a4ff2" 23 | integrity sha512-w010cY1oCUmI+9KwwlWki+r5jxKfTFDVoadl7MSrIujHU5MJ5OR6HTDj6Xo8aoR/QsA56x8jKjA59qGH4ELtrA== 24 | -------------------------------------------------------------------------------- /_includes/lang_nav.html: -------------------------------------------------------------------------------- 1 | {%comment%} check for the presence of the path in an array of paths. {%endcomment%} 2 | 3 | 37 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | SHELL := /bin/bash # needed for prettyurls 2 | BUNDLE := bundle 3 | YARN := yarn 4 | ASSETS_DIR = assets 5 | VENDOR_DIR = $(ASSETS_DIR)/vendor/ 6 | JEKYLL := $(BUNDLE) exec jekyll 7 | HTMLPROOF := $(BUNDLE) exec htmlproofer 8 | DOMAIN = marcanuy.github.io 9 | PROJECT_DEPS := Gemfile package.json 10 | 11 | .PHONY: all clean install update 12 | 13 | all : serve 14 | 15 | check: 16 | $(JEKYLL) doctor 17 | # $(HTMLPROOF) --check-html \ 18 | # --http-status-ignore 999 \ 19 | # --internal-domains $(DOMAIN),localhost:4000 \ 20 | # --assume-extension \ 21 | # _site 22 | 23 | install: $(PROJECT_DEPS) 24 | #$(BUNDLE) install --path vendor/bundler 25 | $(BUNDLE) install 26 | $(YARN) install 27 | 28 | update: $(PROJECT_DEPS) 29 | $(BUNDLE) update 30 | $(YARN) upgrade 31 | 32 | include-yarn-deps: 33 | mkdir -p $(VENDOR_DIR) 34 | cp node_modules/font-awesome/css/font-awesome.min.css $(VENDOR_DIR) 35 | cp -r node_modules/font-awesome/fonts $(ASSETS_DIR) 36 | cp node_modules/jquery/dist/jquery.min.js $(VENDOR_DIR) 37 | cp node_modules/popper.js/dist/umd/popper.min.js $(VENDOR_DIR) 38 | cp node_modules/bootstrap/dist/js/bootstrap.min.js $(VENDOR_DIR) 39 | build-deps: clean install include-yarn-deps 40 | build: build-deps 41 | $(JEKYLL) build 42 | 43 | serve: build-deps 44 | JEKYLL_ENV=production $(JEKYLL) serve 45 | clean: 46 | rm -fr _site/ 47 | rm -fr $(VENDOR_DIR) #from yarn 48 | rm -fr $(ASSETS_DIR)/fonts #fontawesome dependency 49 | rm -fr .sass_cache 50 | 51 | generate-githubpages: build-deps 52 | rm -fr docs && JEKYLL_ENV=production $(JEKYLL) build -d docs/ && touch docs/.nojekyll 53 | -------------------------------------------------------------------------------- /docs/sitemap.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | https://marcanuy.github.io/jekyll-skeleton/de/beispiel-post 5 | 2017-05-09T00:00:00-03:00 6 | 7 | 8 | https://marcanuy.github.io/jekyll-skeleton/en/example-post 9 | 2017-05-09T00:00:00-03:00 10 | 11 | 12 | https://marcanuy.github.io/jekyll-skeleton/es/post-ejemplo 13 | 2017-05-09T00:00:00-03:00 14 | 15 | 16 | https://marcanuy.github.io/jekyll-skeleton/de/unterkategorie1/post-in-unterkategorie 17 | 2017-05-10T00:00:00-03:00 18 | 19 | 20 | https://marcanuy.github.io/jekyll-skeleton/en/subcategory1/post-in-subdirectory 21 | 2017-05-10T00:00:00-03:00 22 | 23 | 24 | https://marcanuy.github.io/jekyll-skeleton/es/subcategoria1/post-en-subdirectorio 25 | 2017-05-10T00:00:00-03:00 26 | 27 | 28 | https://marcanuy.github.io/jekyll-skeleton/es/ 29 | 30 | 31 | https://marcanuy.github.io/jekyll-skeleton/de/ 32 | 33 | 34 | https://marcanuy.github.io/jekyll-skeleton/ 35 | 36 | 37 | https://marcanuy.github.io/jekyll-skeleton/en/subcategory1/ 38 | 39 | 40 | https://marcanuy.github.io/jekyll-skeleton/es/subcategoria1/ 41 | 42 | 43 | https://marcanuy.github.io/jekyll-skeleton/de/unterkategorie1/ 44 | 45 | 46 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | title: "" # Site title in default language 2 | 3 | description: "" # A short description in default language 4 | 5 | url: "https://marcanuy.github.io/jekyll-skeleton" # The full URL to your site. 6 | # Note: site.github.url will be used by default. 7 | 8 | author: marcanuy # Global author information, should be the 9 | # key of file: _data/authors.yml to be used in 10 | # site.data.authors[author] 11 | 12 | twitter: 13 | username: marcanuy # site-wide Twitter handle 14 | 15 | facebook: 16 | app_id: 1234 # a Facebook app ID for Facebook insights 17 | publisher: 1234 # a Facebook page URL or ID of the publishing entity 18 | admins: 1234 # facebook:admins - a Facebook user ID for domain 19 | # insights linked to a personal account 20 | logo: # /assets/img/your-company-logo.png - URL to a site-wide logo (e.g., /) 21 | 22 | social: 23 | name: Marcelo Canina 24 | links: 25 | - https://twitter.com/marcanuy 26 | - https://www.linkedin.com/in/marcelocanina 27 | - https://plus.google.com/118415138433063920612 28 | - https://github.com/marcanuy 29 | - https://keybase.io/marcanuy 30 | #- https://www.facebook.com/marcanuy 31 | 32 | webmaster_verifications: 33 | # Google verification method: HTML tag 34 | # the value of the *content* attribute: 35 | google: "jXQVtt7ISFtvOvNUYoAQ0NiOaaQMWzSwoV2_FIqr2W4" 36 | bing: #1234 37 | alexa: #1234 38 | yandex: #1234 39 | 40 | lang: en_US 41 | 42 | ########################################################################## 43 | 44 | # sass style can be nested (default), compact, compressed, or expanded. 45 | sass: 46 | load_paths: 47 | - _sass 48 | - node_modules 49 | style: compressed 50 | 51 | plugins: 52 | - jekyll-toc 53 | - jekyll-sitemap 54 | - jekyll-feed 55 | - jekyll-seo-tag 56 | - jekyll-redirect-from 57 | 58 | defaults: 59 | #languages 60 | - 61 | scope: 62 | path: "" 63 | values: 64 | lang: "en" 65 | layout: default 66 | - 67 | scope: 68 | path: "es" 69 | values: 70 | lang: "es" 71 | - 72 | scope: 73 | path: "de" 74 | values: 75 | lang: "de" 76 | 77 | permalink: /:categories/:title 78 | 79 | exclude: 80 | - vendor 81 | - deploy.sh 82 | - node_modules 83 | - Makefile 84 | - Gemfile 85 | - Gemfile.lock 86 | - yarn.lock 87 | - packages.json 88 | -------------------------------------------------------------------------------- /_data/locales.yml: -------------------------------------------------------------------------------- 1 | en: 2 | lang: 3 | title: English 4 | site: 5 | title: Jekyll Skeleton 6 | description: >- 7 | The meta description of the website. 8 | nav_menu: Language navigation menu 9 | all_posts: All Posts 10 | all_pages: All Pages 11 | no_title_pages: Pages without title 12 | footer_line: This is the content that will appear in the footer 13 | improve: Improve this page 14 | home: 15 | jumbotron_heading: Hello, world! 16 | jumbotron_lead: >- 17 | This is a simple hero unit, a simple jumbotron-style component 18 | for calling extra attention to featured content or information. 19 | jumbotron_paragraph: >- 20 | It uses utility classes for typography and spacing to space 21 | content out within the larger container. 22 | jumbotron_button: Learn more 23 | jumbotron_url: "/en/example-post" 24 | es: 25 | lang: 26 | title: Español 27 | site: 28 | title: Jekyll Esqueleto 29 | description: >- #also add it to /es/index.html 30 | La meta descripción del sitio web. 31 | nav_menu: Menú de navegación de idioma 32 | all_posts: Todos los mensajes 33 | all_pages: Todas las páginas 34 | no_title_pages: Páginas sin titulo 35 | footer_line: Este es el contenido que aparecerá en el pie de página 36 | improve: Mejora esta página 37 | home: 38 | jumbotron_heading: Hola, mundo! 39 | jumbotron_lead: >- 40 | Se trata de una unidad de héroe simple, un componente simple 41 | jumbotron-estilo para llamar la atención adicional al contenido 42 | ofrecido o a la información. 43 | jumbotron_paragraph: >- 44 | Utiliza clases de utilidad para la tipografía y espaciamiento al 45 | espacio contenido en el contenedor más grande. 46 | jumbotron_button: Más información 47 | jumbotron_url: "/es/post-ejemplo" 48 | de: 49 | lang: 50 | title: Deutsche 51 | site: 52 | title: Jekyll Skelett 53 | description: >- #also add it to /de/index.html 54 | Die Meta-Beschreibung der Website. 55 | nav_menu: Sprachmenü 56 | all_posts: Alle Beiträge 57 | all_pages: Alle Seiten 58 | no_title_pages: Seiten ohne Titel. 59 | footer_line: Dies ist der Inhalt, der in der Fußzeile erscheinen wird 60 | improve: Verbessere diese Seite 61 | home: 62 | jumbotron_heading: Hallo Welt! 63 | jumbotron_lead: >- 64 | Dies ist eine einfache Heldeneinheit, eine einfache 65 | Jumbotron-Komponente Um zusätzliche Aufmerksamkeit auf 66 | vorgestellten Inhalt oder Informationen zu rufen. 67 | jumbotron_paragraph: >- 68 | Es nutzt Gebrauchsklassen für Typografie und Abstand zum Raum 69 | Inhalt innerhalb des größeren Containers. 70 | jumbotron_button: Erfahren Sie mehr 71 | jumbotron_url: "/de/beispiel-post" 72 | -------------------------------------------------------------------------------- /Gemfile.lock: -------------------------------------------------------------------------------- 1 | GEM 2 | remote: https://rubygems.org/ 3 | specs: 4 | activesupport (5.2.4.3) 5 | concurrent-ruby (~> 1.0, >= 1.0.2) 6 | i18n (>= 0.7, < 2) 7 | minitest (~> 5.1) 8 | tzinfo (~> 1.1) 9 | addressable (2.8.0) 10 | public_suffix (>= 2.0.2, < 5.0) 11 | colorator (1.1.0) 12 | concurrent-ruby (1.1.6) 13 | em-websocket (0.5.1) 14 | eventmachine (>= 0.12.9) 15 | http_parser.rb (~> 0.6.0) 16 | ethon (0.12.0) 17 | ffi (>= 1.3.0) 18 | eventmachine (1.2.7) 19 | ffi (1.11.1) 20 | forwardable-extended (2.6.0) 21 | html-proofer (3.11.0) 22 | activesupport (>= 4.2, < 6.0) 23 | addressable (~> 2.3) 24 | mercenary (~> 0.3.2) 25 | nokogiri (~> 1.9) 26 | parallel (~> 1.3) 27 | rainbow (~> 3.0) 28 | typhoeus (~> 1.3) 29 | yell (~> 2.0) 30 | http_parser.rb (0.6.0) 31 | i18n (0.9.5) 32 | concurrent-ruby (~> 1.0) 33 | jekyll (3.8.5) 34 | addressable (~> 2.4) 35 | colorator (~> 1.0) 36 | em-websocket (~> 0.5) 37 | i18n (~> 0.7) 38 | jekyll-sass-converter (~> 1.0) 39 | jekyll-watch (~> 2.0) 40 | kramdown (~> 1.14) 41 | liquid (~> 4.0) 42 | mercenary (~> 0.3.3) 43 | pathutil (~> 0.9) 44 | rouge (>= 1.7, < 4) 45 | safe_yaml (~> 1.0) 46 | jekyll-feed (0.12.1) 47 | jekyll (>= 3.7, < 5.0) 48 | jekyll-redirect-from (0.15.0) 49 | jekyll (>= 3.3, < 5.0) 50 | jekyll-sass-converter (1.5.2) 51 | sass (~> 3.4) 52 | jekyll-seo-tag (2.6.1) 53 | jekyll (>= 3.3, < 5.0) 54 | jekyll-sitemap (1.3.1) 55 | jekyll (>= 3.7, < 5.0) 56 | jekyll-toc (0.12.1) 57 | nokogiri (~> 1.9) 58 | jekyll-watch (2.2.1) 59 | listen (~> 3.0) 60 | kramdown (1.17.0) 61 | liquid (4.0.3) 62 | listen (3.1.5) 63 | rb-fsevent (~> 0.9, >= 0.9.4) 64 | rb-inotify (~> 0.9, >= 0.9.7) 65 | ruby_dep (~> 1.2) 66 | mercenary (0.3.6) 67 | mini_portile2 (2.8.1) 68 | minitest (5.14.1) 69 | nokogiri (1.14.3) 70 | mini_portile2 (~> 2.8.0) 71 | racc (~> 1.4) 72 | parallel (1.17.0) 73 | pathutil (0.16.2) 74 | forwardable-extended (~> 2.6) 75 | public_suffix (4.0.6) 76 | racc (1.6.2) 77 | rainbow (3.0.0) 78 | rb-fsevent (0.10.3) 79 | rb-inotify (0.10.0) 80 | ffi (~> 1.0) 81 | rouge (3.5.1) 82 | ruby_dep (1.5.0) 83 | safe_yaml (1.0.5) 84 | sass (3.7.4) 85 | sass-listen (~> 4.0.0) 86 | sass-listen (4.0.0) 87 | rb-fsevent (~> 0.9, >= 0.9.4) 88 | rb-inotify (~> 0.9, >= 0.9.7) 89 | thread_safe (0.3.6) 90 | typhoeus (1.3.1) 91 | ethon (>= 0.9.0) 92 | tzinfo (1.2.10) 93 | thread_safe (~> 0.1) 94 | yell (2.2.0) 95 | 96 | PLATFORMS 97 | ruby 98 | 99 | DEPENDENCIES 100 | html-proofer 101 | jekyll 102 | jekyll-feed 103 | jekyll-redirect-from 104 | jekyll-seo-tag 105 | jekyll-sitemap 106 | jekyll-toc 107 | 108 | BUNDLED WITH 109 | 1.17.3 110 | -------------------------------------------------------------------------------- /_layouts/default.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | {% include alternate.html %} 9 | {%comment%} jekyll-seo-tag plugin with disabled title to make them localized {%endcomment%} 10 | {% seo title=false %} 11 | {% assign site_title = site.data.locales[page.lang].site.title %} 12 | {{page.title}}{% unless page.title contains site_title%} | {{site_title}}{% endunless %} 13 | 14 | 15 | 16 |
17 | Site name: {{site.data.locales[page.lang].site.title}} 18 | 19 | {% include mainnav.html %} 20 | 21 | {% include breadcrumbs.html path=page.path title=page.title %} 22 | 23 |

{{page.title}}

24 | 25 |
26 | 27 | {{content}} 28 | 29 |
30 | 31 |
32 |

{{site.data.locales[page.lang].site.all_posts}}

33 | 41 |
42 | 43 |
44 |

{{site.data.locales[page.lang].site.all_pages}}

45 |
    46 | {% assign pages = site.pages | where_exp: "item", "item.title != nil" %} 47 | {% for item in pages %} 48 |
  • 49 | {{ item.title }} [{{item.lang}}] 50 |
  • 51 | {% endfor %} 52 |
53 |
54 | 55 |
56 |

{{site.data.locales[page.lang].site.no_title_pages}}

57 |
    58 | {% assign pages = site.pages | where_exp:"item", "item.title == nil" %} 59 | {% for item in pages %} 60 |
  • 61 | {{ item.path }} [{{item.lang}}] 62 |
  • 63 | {% endfor %} 64 |
65 |
66 | 67 |
68 | 69 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | -------------------------------------------------------------------------------- /docs/feed.xml: -------------------------------------------------------------------------------- 1 | Jekyll2019-06-26T19:05:27-03:00https://marcanuy.github.io/jekyll-skeleton/feed.xmlmarcanuyPost In Unterkategorie2017-05-10T00:00:00-03:002017-05-10T00:00:00-03:00https://marcanuy.github.io/jekyll-skeleton/de/unterkategorie1/post-in-unterkategorie{"picture"=>"/assets/img/marcanuy.png", "twitter"=>"marcanuy"}Post In Subdirectory2017-05-10T00:00:00-03:002017-05-10T00:00:00-03:00https://marcanuy.github.io/jekyll-skeleton/en/subcategory1/post-in-subdirectory{"picture"=>"/assets/img/marcanuy.png", "twitter"=>"marcanuy"}Post En Subdirectorio2017-05-10T00:00:00-03:002017-05-10T00:00:00-03:00https://marcanuy.github.io/jekyll-skeleton/es/subcategoria1/post-en-subdirectorio{"picture"=>"/assets/img/marcanuy.png", "twitter"=>"marcanuy"}Beispiel Post2017-05-09T00:00:00-03:002017-05-09T00:00:00-03:00https://marcanuy.github.io/jekyll-skeleton/de/beispiel-post<p>Dies ist ein Beispielpfosten.</p> 2 | 3 | <blockquote class="blockquote" cite="https://de.wikipedia.org/wiki/Hallo-Welt-Programm"> 4 | <p>Ein Hallo-Welt-Programm ist ein kleines Computerprogramm, das auf 5 | möglichst einfache Weise zeigen soll, welche Anweisungen oder 6 | Bestandteile für ein vollständiges Programm in einer 7 | Programmiersprache benötigt werden, und somit einen ersten Einblick 8 | in die Syntax gibt. Aufgabe des Programms ist, den Text Hallo Welt! 9 | oder auf Englisch Hello World! auszugeben. Wegen der einfachen 10 | Aufgabenstellung eignen sich solche Programme insbesondere für 11 | didaktische Zwecke. Deshalb wird es in vielen 12 | Programmier-Lehrbüchern als Einsteigerprogramm verwendet.</p> 13 | 14 | <footer class="blockquote-footer"> <cite>Hallo-Welt-Programm <a href="https://de.wikipedia.org/wiki/Hallo-Welt-Programm">Wikipedia</a></cite></footer> 15 | </blockquote>{"picture"=>"/assets/img/marcanuy.png", "twitter"=>"marcanuy"}Dies ist ein Beispielpfosten.Example Post2017-05-09T00:00:00-03:002017-05-09T00:00:00-03:00https://marcanuy.github.io/jekyll-skeleton/en/example-post<p>This is an example post.</p> 16 | 17 | <blockquote class="blockquote" cite="https://en.wikipedia.org/wiki/%22Hello,_World!%22_program"> 18 | <p>A “Hello, World!” program is a computer program that outputs or 19 | displays “Hello, World!” to a user. Being a very simple program in 20 | most programming languages, it is often used to illustrate the basic 21 | syntax of a programming language for a working program.[1] It is often 22 | the very first program people write when they are new to a language.</p> 23 | 24 | <footer class="blockquote-footer"> <cite>"Hello, World!" program <a href="https://en.wikipedia.org/wiki/%22Hello,_World!%22_program">from Wikipedia</a></cite></footer> 25 | </blockquote>{"picture"=>"/assets/img/marcanuy.png", "twitter"=>"marcanuy"}This is an example post.Post Ejemplo2017-05-09T00:00:00-03:002017-05-09T00:00:00-03:00https://marcanuy.github.io/jekyll-skeleton/es/post-ejemplo<p>Post de ejemplo</p> 26 | 27 | <blockquote class="blockquote" cite="https://es.wikipedia.org/wiki/Hola_mundo"> 28 | <p>En informática, un programa Hola mundo es el que imprime el texto «¡Hola, mundo!» en un dispositivo de visualización, en la mayoría de los casos una pantalla de monitor. Este programa suele ser usado como introducción al estudio de un lenguaje de programación, siendo un primer ejercicio típico, y se considera fundamental desde el punto de vista didáctico.</p> 29 | 30 | <p>En algunos lenguajes, configurar un conjunto de herramientas básicas completo desde cero hasta el punto en que los programas triviales puedan ser compilados y ejecutados involucra una cantidad de trabajo sustancial. Por esta razón, generalmente es usado un programa muy simple para probar un nuevo conjunto de herramientas.</p> 31 | 32 | <footer class="blockquote-footer"> <cite>Hola mundo <a href="https://en.wikipedia.org/wiki/%22Hello,_World!%22_program">en Wikipedia</a></cite></footer> 33 | </blockquote>{"picture"=>"/assets/img/marcanuy.png", "twitter"=>"marcanuy"}Post de ejemplo -------------------------------------------------------------------------------- /docs/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 82 | 83 | 84 | 85 | Homepage example | Jekyll Skeleton 86 | 87 | 88 | 89 |
90 | Site name: Jekyll Skeleton 91 | 92 | 93 | 94 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 130 | 131 | 132 |

Homepage example

133 | 134 |
135 | 136 |
137 |

Hello, world!

138 |

This is a simple hero unit, a simple jumbotron-style component for calling extra attention to featured content or information.

139 |
140 |

It uses utility classes for typography and spacing to space content out within the larger container.

141 |

142 | Learn more 143 |

144 |
145 | 146 | 147 |
148 | 149 |
150 |

All Posts

151 | 184 |
185 | 186 |
187 |

All Pages

188 | 216 |
217 | 218 |
219 |

Pages without title

220 | 248 |
249 | 250 |
251 | 252 |
253 |
254 |

Language navigation menu

255 |
256 | 257 | 328 |
329 |
330 |

This is the content that will appear in the footer

331 | 332 |
333 | 334 |  Improve this page 335 | 336 |
337 | 338 |
339 | 340 | 341 | 342 | 343 | 344 | 345 | 346 | -------------------------------------------------------------------------------- /docs/en/subcategory1/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 84 | 85 | 86 | 87 | Subcategory | Jekyll Skeleton 88 | 89 | 90 | 91 |
92 | Site name: Jekyll Skeleton 93 | 94 | 95 | 96 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 148 | 149 | 150 |

Subcategory

151 | 152 |
153 | 154 | 155 | 156 | 161 | 162 | 163 |
164 | 165 |
166 |

All Posts

167 | 200 |
201 | 202 |
203 |

All Pages

204 | 232 |
233 | 234 |
235 |

Pages without title

236 | 264 |
265 | 266 |
267 | 268 |
269 |
270 |

Language navigation menu

271 |
272 | 273 | 344 |
345 |
346 |

This is the content that will appear in the footer

347 | 348 |
349 | 350 |  Improve this page 351 | 352 |
353 | 354 |
355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | -------------------------------------------------------------------------------- /docs/de/unterkategorie1/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 84 | 85 | 86 | 87 | Unterkategorie | Jekyll Skelett 88 | 89 | 90 | 91 |
92 | Site name: Jekyll Skelett 93 | 94 | 95 | 96 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 148 | 149 | 150 |

Unterkategorie

151 | 152 |
153 | 154 | 155 | 156 | 161 | 162 | 163 |
164 | 165 |
166 |

Alle Beiträge

167 | 200 |
201 | 202 |
203 |

Alle Seiten

204 | 232 |
233 | 234 |
235 |

Seiten ohne Titel.

236 | 264 |
265 | 266 |
267 | 268 |
269 |
270 |

Sprachmenü

271 |
272 | 273 | 344 |
345 |
346 |

Dies ist der Inhalt, der in der Fußzeile erscheinen wird

347 | 348 |
349 | 350 |  Verbessere diese Seite 351 | 352 |
353 | 354 |
355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | -------------------------------------------------------------------------------- /docs/es/subcategoria1/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 84 | 85 | 86 | 87 | Subcategoría | Jekyll Esqueleto 88 | 89 | 90 | 91 |
92 | Site name: Jekyll Esqueleto 93 | 94 | 95 | 96 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 148 | 149 | 150 |

Subcategoría

151 | 152 |
153 | 154 | 155 | 156 | 161 | 162 | 163 |
164 | 165 |
166 |

Todos los mensajes

167 | 200 |
201 | 202 |
203 |

Todas las páginas

204 | 232 |
233 | 234 |
235 |

Páginas sin titulo

236 | 264 |
265 | 266 |
267 | 268 |
269 |
270 |

Menú de navegación de idioma

271 |
272 | 273 | 344 |
345 |
346 |

Este es el contenido que aparecerá en el pie de página

347 | 348 |
349 | 350 |  Mejora esta página 351 | 352 |
353 | 354 |
355 | 356 | 357 | 358 | 359 | 360 | 361 | 362 | -------------------------------------------------------------------------------- /docs/de/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 84 | 85 | 86 | 87 | Zuhause | Jekyll Skelett 88 | 89 | 90 | 91 |
92 | Site name: Jekyll Skelett 93 | 94 | 95 | 96 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 140 | 141 | 142 |

Zuhause

143 | 144 |
145 | 146 |
147 |

Hallo Welt!

148 |

Dies ist eine einfache Heldeneinheit, eine einfache Jumbotron-Komponente Um zusätzliche Aufmerksamkeit auf vorgestellten Inhalt oder Informationen zu rufen.

149 |
150 |

Es nutzt Gebrauchsklassen für Typografie und Abstand zum Raum Inhalt innerhalb des größeren Containers.

151 |

152 | Erfahren Sie mehr 153 |

154 |
155 | 156 | 157 |
158 | 159 |
160 |

Alle Beiträge

161 | 194 |
195 | 196 |
197 |

Alle Seiten

198 | 226 |
227 | 228 |
229 |

Seiten ohne Titel.

230 | 258 |
259 | 260 |
261 | 262 |
263 |
264 |

Sprachmenü

265 |
266 | 267 | 338 |
339 |
340 |

Dies ist der Inhalt, der in der Fußzeile erscheinen wird

341 | 342 |
343 | 344 |  Verbessere diese Seite 345 | 346 |
347 | 348 |
349 | 350 | 351 | 352 | 353 | 354 | 355 | 356 | -------------------------------------------------------------------------------- /docs/es/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 84 | 85 | 86 | 87 | Inicio | Jekyll Esqueleto 88 | 89 | 90 | 91 |
92 | Site name: Jekyll Esqueleto 93 | 94 | 95 | 96 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 140 | 141 | 142 |

Inicio

143 | 144 |
145 | 146 |
147 |

Hola, mundo!

148 |

Se trata de una unidad de héroe simple, un componente simple jumbotron-estilo para llamar la atención adicional al contenido ofrecido o a la información.

149 |
150 |

Utiliza clases de utilidad para la tipografía y espaciamiento al espacio contenido en el contenedor más grande.

151 |

152 | Más información 153 |

154 |
155 | 156 | 157 |
158 | 159 |
160 |

Todos los mensajes

161 | 194 |
195 | 196 |
197 |

Todas las páginas

198 | 226 |
227 | 228 |
229 |

Páginas sin titulo

230 | 258 |
259 | 260 |
261 | 262 |
263 |
264 |

Menú de navegación de idioma

265 |
266 | 267 | 338 |
339 |
340 |

Este es el contenido que aparecerá en el pie de página

341 | 342 |
343 | 344 |  Mejora esta página 345 | 346 |
347 | 348 |
349 | 350 | 351 | 352 | 353 | 354 | 355 | 356 | -------------------------------------------------------------------------------- /docs/en/subcategory1/post-in-subdirectory.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 86 | 87 | 88 | 89 | Post In Subdirectory | Jekyll Skeleton 90 | 91 | 92 | 93 |
94 | Site name: Jekyll Skeleton 95 | 96 | 97 | 98 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 158 | 159 | 160 |

Post In Subdirectory

161 | 162 |
163 | 164 | 165 | 166 | 167 |
168 | 169 |
170 |

All Posts

171 | 204 |
205 | 206 |
207 |

All Pages

208 | 236 |
237 | 238 |
239 |

Pages without title

240 | 268 |
269 | 270 |
271 | 272 |
273 |
274 |

Language navigation menu

275 |
276 | 277 | 348 |
349 |
350 |

This is the content that will appear in the footer

351 | 352 |
353 | 354 |  Improve this page 355 | 356 |
357 | 358 |
359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | -------------------------------------------------------------------------------- /docs/de/unterkategorie1/post-in-unterkategorie.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 86 | 87 | 88 | 89 | Post In Unterkategorie | Jekyll Skelett 90 | 91 | 92 | 93 |
94 | Site name: Jekyll Skelett 95 | 96 | 97 | 98 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 158 | 159 | 160 |

Post In Unterkategorie

161 | 162 |
163 | 164 | 165 | 166 | 167 |
168 | 169 |
170 |

Alle Beiträge

171 | 204 |
205 | 206 |
207 |

Alle Seiten

208 | 236 |
237 | 238 |
239 |

Seiten ohne Titel.

240 | 268 |
269 | 270 |
271 | 272 |
273 |
274 |

Sprachmenü

275 |
276 | 277 | 348 |
349 |
350 |

Dies ist der Inhalt, der in der Fußzeile erscheinen wird

351 | 352 |
353 | 354 |  Verbessere diese Seite 355 | 356 |
357 | 358 |
359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | -------------------------------------------------------------------------------- /docs/es/subcategoria1/post-en-subdirectorio.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 86 | 87 | 88 | 89 | Post En Subdirectorio | Jekyll Esqueleto 90 | 91 | 92 | 93 |
94 | Site name: Jekyll Esqueleto 95 | 96 | 97 | 98 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 158 | 159 | 160 |

Post En Subdirectorio

161 | 162 |
163 | 164 | 165 | 166 | 167 |
168 | 169 |
170 |

Todos los mensajes

171 | 204 |
205 | 206 |
207 |

Todas las páginas

208 | 236 |
237 | 238 |
239 |

Páginas sin titulo

240 | 268 |
269 | 270 |
271 | 272 |
273 |
274 |

Menú de navegación de idioma

275 |
276 | 277 | 348 |
349 |
350 |

Este es el contenido que aparecerá en el pie de página

351 | 352 |
353 | 354 |  Mejora esta página 355 | 356 |
357 | 358 |
359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | -------------------------------------------------------------------------------- /docs/en/example-post.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 86 | 87 | 88 | 89 | Example Post | Jekyll Skeleton 90 | 91 | 92 | 93 |
94 | Site name: Jekyll Skeleton 95 | 96 | 97 | 98 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 150 | 151 | 152 |

Example Post

153 | 154 |
155 | 156 |

This is an example post.

157 | 158 |
159 |

A “Hello, World!” program is a computer program that outputs or 160 | displays “Hello, World!” to a user. Being a very simple program in 161 | most programming languages, it is often used to illustrate the basic 162 | syntax of a programming language for a working program.[1] It is often 163 | the very first program people write when they are new to a language.

164 | 165 | 166 |
167 | 168 | 169 | 170 |
171 | 172 |
173 |

All Posts

174 | 207 |
208 | 209 |
210 |

All Pages

211 | 239 |
240 | 241 |
242 |

Pages without title

243 | 271 |
272 | 273 |
274 | 275 |
276 |
277 |

Language navigation menu

278 |
279 | 280 | 351 |
352 |
353 |

This is the content that will appear in the footer

354 | 355 |
356 | 357 |  Improve this page 358 | 359 |
360 | 361 |
362 | 363 | 364 | 365 | 366 | 367 | 368 | 369 | -------------------------------------------------------------------------------- /docs/de/beispiel-post.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 86 | 87 | 88 | 89 | Beispiel Post | Jekyll Skelett 90 | 91 | 92 | 93 |
94 | Site name: Jekyll Skelett 95 | 96 | 97 | 98 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 150 | 151 | 152 |

Beispiel Post

153 | 154 |
155 | 156 |

Dies ist ein Beispielpfosten.

157 | 158 |
159 |

Ein Hallo-Welt-Programm ist ein kleines Computerprogramm, das auf 160 | möglichst einfache Weise zeigen soll, welche Anweisungen oder 161 | Bestandteile für ein vollständiges Programm in einer 162 | Programmiersprache benötigt werden, und somit einen ersten Einblick 163 | in die Syntax gibt. Aufgabe des Programms ist, den Text Hallo Welt! 164 | oder auf Englisch Hello World! auszugeben. Wegen der einfachen 165 | Aufgabenstellung eignen sich solche Programme insbesondere für 166 | didaktische Zwecke. Deshalb wird es in vielen 167 | Programmier-Lehrbüchern als Einsteigerprogramm verwendet.

168 | 169 | 170 |
171 | 172 | 173 |
174 | 175 |
176 |

Alle Beiträge

177 | 210 |
211 | 212 |
213 |

Alle Seiten

214 | 242 |
243 | 244 |
245 |

Seiten ohne Titel.

246 | 274 |
275 | 276 |
277 | 278 |
279 |
280 |

Sprachmenü

281 |
282 | 283 | 354 |
355 |
356 |

Dies ist der Inhalt, der in der Fußzeile erscheinen wird

357 | 358 |
359 | 360 |  Verbessere diese Seite 361 | 362 |
363 | 364 |
365 | 366 | 367 | 368 | 369 | 370 | 371 | 372 | -------------------------------------------------------------------------------- /docs/es/post-ejemplo.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 86 | 87 | 88 | 89 | Post Ejemplo | Jekyll Esqueleto 90 | 91 | 92 | 93 |
94 | Site name: Jekyll Esqueleto 95 | 96 | 97 | 98 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 150 | 151 | 152 |

Post Ejemplo

153 | 154 |
155 | 156 |

Post de ejemplo

157 | 158 |
159 |

En informática, un programa Hola mundo es el que imprime el texto «¡Hola, mundo!» en un dispositivo de visualización, en la mayoría de los casos una pantalla de monitor. Este programa suele ser usado como introducción al estudio de un lenguaje de programación, siendo un primer ejercicio típico, y se considera fundamental desde el punto de vista didáctico.

160 | 161 |

En algunos lenguajes, configurar un conjunto de herramientas básicas completo desde cero hasta el punto en que los programas triviales puedan ser compilados y ejecutados involucra una cantidad de trabajo sustancial. Por esta razón, generalmente es usado un programa muy simple para probar un nuevo conjunto de herramientas.

162 | 163 | 164 |
165 | 166 | 167 |
168 | 169 |
170 |

Todos los mensajes

171 | 204 |
205 | 206 |
207 |

Todas las páginas

208 | 236 |
237 | 238 |
239 |

Páginas sin titulo

240 | 268 |
269 | 270 |
271 | 272 |
273 |
274 |

Menú de navegación de idioma

275 |
276 | 277 | 348 |
349 |
350 |

Este es el contenido que aparecerá en el pie de página

351 | 352 |
353 | 354 |  Mejora esta página 355 | 356 |
357 | 358 |
359 | 360 | 361 | 362 | 363 | 364 | 365 | 366 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | jekyll-skeleton 2 | =============== 3 | 4 | [![Build Status](https://travis-ci.org/marcanuy/jekyll-skeleton.svg?branch=master)](https://travis-ci.org/marcanuy/jekyll-skeleton) 5 | 6 | Jekyll scaffolding to start new websites. 7 | 8 | 9 | **Table of Contents** 10 | 11 | - [jekyll-skeleton](#jekyll-skeleton) 12 | - [Overview](#overview) 13 | - [Features](#features) 14 | - [Design Philosophy](#design-philosophy) 15 | - [Commands](#commands) 16 | - [Install](#install) 17 | - [Serve](#serve) 18 | - [Usage](#usage) 19 | - [Adding a new language](#adding-a-new-language) 20 | - [Adding posts](#adding-posts) 21 | - [Plugins](#plugins) 22 | - [Final structure](#final-structure) 23 | - [Questions](#questions) 24 | - [Screenshots](#screenshots) 25 | - [English homepage](#english-homepage) 26 | - [Spanish homepage](#spanish-homepage) 27 | - [German post](#german-post) 28 | 29 | 30 | 31 | # Overview 32 | 33 | This is a basic Jekyll site created with `jekyll new --blank` (without 34 | themes, or example posts) to serve as a starting point for any 35 | website. 36 | 37 | Its purpose is to quickly start new websites cloning this repo and 38 | customizing to your needs, having already all the features I was 39 | adding and configuring every time I created a new Jekyll instance. 40 | 41 | Live demo looks so "*minimalistic*" because it does not use any theme 42 | and its only goal is to show the design of the website navigation and 43 | how to add posts/categories. 44 | 45 | Its structure uses the design described 46 | in 47 | [How To Add Bootstrap 4 To Jekyll The Right Way](https://simpleit.rocks/how-to-add-bootstrap-4-to-jekyll-the-right-way/), 48 | [Multilingual Jekyll Without Plugins](https://simpleit.rocks/multilingual-jekyll-without-plugins/) and 49 | [How To Implement Breadcrumbs On A Jekyll Site With Nested Categories](https://simpleit.rocks/how-to-create-breadcrumbs-with-hierarchical-categories-in-jekyll/) 50 | articles 51 | applied on a blank Jekyll instance with the suggestions provided by 52 | the plugins below. 53 | 54 | Just clone this repo and start building yours. 55 | 56 | git clone git@github.com:marcanuy/jekyll-skeleton.git 57 | 58 | # Features 59 | 60 | - Automatically generates at each jekyll build: 61 | - compliant sitemap at `/sitemap.xml` 62 | - [Atom](https://tools.ietf.org/html/rfc4287) feed at 63 | `/feed.xml`. 64 | - [SASS](http://sass-lang.com/) and easy customization of Bootstrap 4 65 | variables in `/assets/main.scss` and `/_sass/_variables.scss`. 66 | - Automatically adds metadata tags for Search Engines and Social 67 | Networks 68 | - Page title, with site title or description appended 69 | 70 | 71 | ... 72 | 73 | 74 | - Page description 75 | 76 | 77 | 78 | 79 | 80 | - Canonical URL 81 | 82 | 83 | 84 | - Next and previous URLs on paginated pages 85 | - JSON-LD Site and post metadata for richer indexing 86 | 87 | 88 | 94 | 95 | - Open Graph title, description, site title, and URL (for Facebook, 96 | LinkedIn, etc.) 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | - Twitter Summary Card metadata 108 | 109 | 110 | 111 | 112 | 113 | - Multilanguage 114 | - Language navigation menu for each page to all the other 115 | translation versions 116 | 117 | 118 | 119 | 120 | 121 | - [Alternate link elements](https://www.w3.org/TR/html5/links.html#rel-alternate) in the `head` section of HTML 122 | 123 | 124 | 125 | 126 | 127 | - Redirects from default language subfolder to site homepage (`/en` -> `/`) 128 | - [Breadcrumbs](https://www.w3.org/TR/html5/common-idioms.html#rel-up) for pages and posts 129 | 130 | 131 | 140 | 141 | # Design Philosophy 142 | 143 | **jekyll-skeleton** has been built with the following principles in 144 | mind: 145 | 146 | - Uses [Yarn](https://github.com/yarnpkg/yarn) to manage libraries, assets, and utilities. 147 | - Bootstrap 4. 148 | - Font Awesome. 149 | - Gem theme independent. 150 | - Optimized for multilanguage. 151 | - Follows `jekyll-seo-tag` usage suggestions. 152 | 153 | # Commands 154 | 155 | ## Install 156 | 157 | ~~~ bash 158 | git clone https://github.com/marcanuy/jekyll-skeleton 159 | cd jekyll-seleton 160 | make install 161 | ~~~ 162 | 163 | ## Serve 164 | 165 | ~~~ bash 166 | make serve 167 | ~~~ 168 | 169 | # Usage 170 | 171 | ## Adding a new language 172 | 173 | Add the language to `_config.yml`: 174 | 175 | defaults: 176 | #languages 177 | - 178 | scope: 179 | path: "" 180 | values: 181 | lang: "en" 182 | layout: default 183 | - 184 | scope: 185 | path: "es" 186 | values: 187 | lang: "es" 188 | 189 | Its name to `_data/locales.yml` and an equivalent to each page in the 190 | language in `/_data/map.yml`: 191 | 192 | - 193 | en: index.html 194 | es: es/index.html 195 | - 196 | en: about.html 197 | es: es/acerca.html 198 | 199 | ## Adding posts 200 | 201 | Add a post in each language located in the language subdirectory: 202 | `/en`, `es`, etc. 203 | 204 | The following properties in posts front-matter are used: 205 | 206 | --- 207 | title: # jekyll-seo-tag - The title of the post, page, or document 208 | description: # jekyll-seo-tag - A short description of the page's content 209 | image: # jekyll-seo-tag - URL to an image associated with the post, page, or document (e.g., /assets/page-pic.jpg) 210 | author: # jekyll-seo-tag - Page-, post-, or document-specific author information (see below) 211 | lang: # jekyll-seo-tag - Page-, post-, or document-specific language information 212 | --- 213 | 214 | # Plugins 215 | 216 | *Jekyll-skeleton* uses the following plugins: 217 | 218 | - A liquid filter plugin 219 | for Jekyll which generates a table of contents. 220 | - Jekyll plugin to silently 221 | generate a sitemaps.org compliant sitemap for your Jekyll site. 222 | - Test your rendered HTML 223 | files to make sure they're accurate. 224 | - A Jekyll plugin to generate 225 | an Atom (RSS-like) feed of your Jekyll posts 226 | - Specify multiple 227 | redirections URLs for pages and posts. 228 | 229 | If you want to host a site derived from this repo in Github, you can 230 | follow this guide: [Automated Deployment Of Jekyll Websites To Github Pages With A Git Push To Github ](https://simpleit.rocks/automated-deployment-of-jekyll-websites-to-github-pages-with-a-git-push-to-github/). 231 | 232 | # Final structure 233 | 234 |
235 | 
236 | $ make build
237 | rm -fr _site/
238 | rm -fr assets/vendor/ #from yarn
239 | rm -fr assets/fonts #fontawesome dependency
240 | rm -fr .sass_cache
241 | bundle install --path vendor/bundler
242 | Warning: the running version of Bundler (1.13.6) is older than the version that created the lockfile (1.15.0). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
243 | Using concurrent-ruby 1.0.5
244 | Using i18n 0.8.1
245 | Using minitest 5.10.2
246 | Using thread_safe 0.3.6
247 | Using public_suffix 2.0.5
248 | Using colorator 1.1.0
249 | Using colored 1.2
250 | Using ffi 1.9.18
251 | Using forwardable-extended 2.6.0
252 | Using mercenary 0.3.6
253 | Using mini_portile2 2.1.0
254 | Using parallel 1.11.2
255 | Using yell 2.0.7
256 | Using sass 3.4.24
257 | Using rb-fsevent 0.9.8
258 | Using kramdown 1.13.2
259 | Using liquid 3.0.6
260 | Using rouge 1.11.1
261 | Using safe_yaml 1.0.4
262 | Using bundler 1.13.6
263 | Using tzinfo 1.2.3
264 | Using addressable 2.5.1
265 | Using ethon 0.10.1
266 | Using rb-inotify 0.9.8
267 | Using pathutil 0.14.0
268 | Using nokogiri 1.7.2
269 | Using jekyll-sass-converter 1.5.0
270 | Using activesupport 5.1.1
271 | Using typhoeus 0.8.0
272 | Using listen 3.0.8
273 | Using jekyll-toc 0.2.1
274 | Using html-proofer 3.7.2
275 | Using jekyll-watch 1.5.0
276 | Using jekyll 3.4.3
277 | Using jekyll-feed 0.9.2
278 | Using jekyll-redirect-from 0.12.1
279 | Using jekyll-seo-tag 2.2.3
280 | Using jekyll-sitemap 1.1.1
281 | Bundle complete! 7 Gemfile dependencies, 38 gems now installed.
282 | Bundled gems are installed into ./vendor/bundler.
283 | yarn install
284 | yarn install v0.24.5
285 | [1/4] Resolving packages...
286 | success Already up-to-date.
287 | Done in 0.38s.
288 | mkdir -p assets/vendor/
289 | cp node_modules/font-awesome/css/font-awesome.min.css assets/vendor/
290 | cp -r node_modules/font-awesome/fonts assets
291 | cp node_modules/jquery/dist/jquery.min.js assets/vendor/
292 | cp node_modules/tether/dist/js/tether.min.js assets/vendor/
293 | cp node_modules/bootstrap/dist/js/bootstrap.min.js assets/vendor/
294 | bundle exec jekyll build
295 | Configuration file: /tmp/jekyll-skeleton/_config.yml
296 |             Source: /tmp/jekyll-skeleton
297 |        Destination: /tmp/jekyll-skeleton/_site
298 |  Incremental build: disabled. Enable with --incremental
299 |       Generating... 
300 |                     done in 5.474 seconds.
301 |  Auto-regeneration: disabled. Use --watch to enable.
302 | 
303 | $ tree -L 3 _site/
304 | _site/
305 | ├── assets
306 | │   ├── fonts
307 | │   │   ├── FontAwesome.otf
308 | │   │   ├── fontawesome-webfont.eot
309 | │   │   ├── fontawesome-webfont.svg
310 | │   │   ├── fontawesome-webfont.ttf
311 | │   │   ├── fontawesome-webfont.woff
312 | │   │   └── fontawesome-webfont.woff2
313 | │   ├── main.css
314 | │   └── vendor
315 | │       ├── bootstrap.min.js
316 | │       ├── font-awesome.min.css
317 | │       ├── jquery.min.js
318 | │       └── tether.min.js
319 | ├── de
320 | │   ├── beispiel-post.html
321 | │   ├── index.html
322 | │   └── unterkategorie1
323 | │       ├── index.html
324 | │       └── post-in-unterkategorie.html
325 | ├── deploy_key.enc
326 | ├── en
327 | │   ├── example-post.html
328 | │   ├── index.html
329 | │   └── subcategory1
330 | │       ├── index.html
331 | │       └── post-in-subdirectory.html
332 | ├── es
333 | │   ├── index.html
334 | │   ├── post-ejemplo.html
335 | │   └── subcategoria1
336 | │       ├── index.html
337 | │       └── post-en-subdirectorio.html
338 | ├── feed.xml
339 | ├── index.html
340 | ├── LICENSE
341 | ├── package.json
342 | ├── README.md
343 | ├── robots.txt
344 | ├── sitemap.xml
345 | └── yarn.lock
346 | 
347 | 9 directories, 32 files
348 | 
349 | $ make check
350 | bundle exec jekyll doctor
351 | Configuration file: /tmp/jekyll-skeleton/_config.yml
352 |   Your test results are in. Everything looks fine.
353 | bundle exec htmlproofer --check-html \
354 | 	--http-status-ignore 999 \
355 | 	--internal-domains marcanuy.github.io,localhost:4000 \
356 | 	--assume-extension \
357 | 	_site
358 | Running ["ScriptCheck", "LinkCheck", "HtmlCheck", "ImageCheck"] on ["_site"] on *.html... 
359 | 
360 | 
361 | Checking 14 external links...
362 | Ran on 13 files!
363 | 
364 | 
365 | HTML-Proofer finished successfully.
366 | 
367 | 
368 | 
369 | 370 | # Questions 371 | 372 | Feel free to open issues and/or contributing! 373 | 374 | # Screenshots 375 | 376 | ## English homepage 377 | 378 | ![English](http://imgur.com/fIi9WUcl.png) 379 | 380 | ## Spanish homepage 381 | 382 | ![Spanish](http://imgur.com/d670IESl.png ) 383 | 384 | ## German post 385 | 386 | ![Deutsch](http://imgur.com/kPQPuuhl.png ) 387 | -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- 1 | jekyll-skeleton 2 | =============== 3 | 4 | [![Build Status](https://travis-ci.org/marcanuy/jekyll-skeleton.svg?branch=master)](https://travis-ci.org/marcanuy/jekyll-skeleton) 5 | 6 | Jekyll scaffolding to start new websites. 7 | 8 | 9 | **Table of Contents** 10 | 11 | - [jekyll-skeleton](#jekyll-skeleton) 12 | - [Overview](#overview) 13 | - [Features](#features) 14 | - [Design Philosophy](#design-philosophy) 15 | - [Commands](#commands) 16 | - [Install](#install) 17 | - [Serve](#serve) 18 | - [Usage](#usage) 19 | - [Adding a new language](#adding-a-new-language) 20 | - [Adding posts](#adding-posts) 21 | - [Plugins](#plugins) 22 | - [Final structure](#final-structure) 23 | - [Questions](#questions) 24 | - [Screenshots](#screenshots) 25 | - [English homepage](#english-homepage) 26 | - [Spanish homepage](#spanish-homepage) 27 | - [German post](#german-post) 28 | 29 | 30 | 31 | # Overview 32 | 33 | This is a basic Jekyll site created with `jekyll new --blank` (without 34 | themes, or example posts) to serve as a starting point for any 35 | website. 36 | 37 | Its purpose is to quickly start new websites cloning this repo and 38 | customizing to your needs, having already all the features I was 39 | adding and configuring every time I created a new Jekyll instance. 40 | 41 | Live demo looks so "*minimalistic*" because it does not use any theme 42 | and its only goal is to show the design of the website navigation and 43 | how to add posts/categories. 44 | 45 | Its structure uses the design described 46 | in 47 | [How To Add Bootstrap 4 To Jekyll The Right Way](https://simpleit.rocks/how-to-add-bootstrap-4-to-jekyll-the-right-way/), 48 | [Multilingual Jekyll Without Plugins](https://simpleit.rocks/multilingual-jekyll-without-plugins/) and 49 | [How To Implement Breadcrumbs On A Jekyll Site With Nested Categories](https://simpleit.rocks/how-to-create-breadcrumbs-with-hierarchical-categories-in-jekyll/) 50 | articles 51 | applied on a blank Jekyll instance with the suggestions provided by 52 | the plugins below. 53 | 54 | Just clone this repo and start building yours. 55 | 56 | git clone git@github.com:marcanuy/jekyll-skeleton.git 57 | 58 | # Features 59 | 60 | - Automatically generates at each jekyll build: 61 | - compliant sitemap at `/sitemap.xml` 62 | - [Atom](https://tools.ietf.org/html/rfc4287) feed at 63 | `/feed.xml`. 64 | - [SASS](http://sass-lang.com/) and easy customization of Bootstrap 4 65 | variables in `/assets/main.scss` and `/_sass/_variables.scss`. 66 | - Automatically adds metadata tags for Search Engines and Social 67 | Networks 68 | - Page title, with site title or description appended 69 | 70 | 71 | ... 72 | 73 | 74 | - Page description 75 | 76 | 77 | 78 | 79 | 80 | - Canonical URL 81 | 82 | 83 | 84 | - Next and previous URLs on paginated pages 85 | - JSON-LD Site and post metadata for richer indexing 86 | 87 | 88 | 94 | 95 | - Open Graph title, description, site title, and URL (for Facebook, 96 | LinkedIn, etc.) 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | - Twitter Summary Card metadata 108 | 109 | 110 | 111 | 112 | 113 | - Multilanguage 114 | - Language navigation menu for each page to all the other 115 | translation versions 116 | 117 | 118 | 119 | 120 | 121 | - [Alternate link elements](https://www.w3.org/TR/html5/links.html#rel-alternate) in the `head` section of HTML 122 | 123 | 124 | 125 | 126 | 127 | - Redirects from default language subfolder to site homepage (`/en` -> `/`) 128 | - [Breadcrumbs](https://www.w3.org/TR/html5/common-idioms.html#rel-up) for pages and posts 129 | 130 | 131 | 140 | 141 | # Design Philosophy 142 | 143 | **jekyll-skeleton** has been built with the following principles in 144 | mind: 145 | 146 | - Uses [Yarn](https://github.com/yarnpkg/yarn) to manage libraries, assets, and utilities. 147 | - Bootstrap 4. 148 | - Font Awesome. 149 | - Gem theme independent. 150 | - Optimized for multilanguage. 151 | - Follows `jekyll-seo-tag` usage suggestions. 152 | 153 | # Commands 154 | 155 | ## Install 156 | 157 | ~~~ bash 158 | git clone https://github.com/marcanuy/jekyll-skeleton 159 | cd jekyll-seleton 160 | make install 161 | ~~~ 162 | 163 | ## Serve 164 | 165 | ~~~ bash 166 | make serve 167 | ~~~ 168 | 169 | # Usage 170 | 171 | ## Adding a new language 172 | 173 | Add the language to `_config.yml`: 174 | 175 | defaults: 176 | #languages 177 | - 178 | scope: 179 | path: "" 180 | values: 181 | lang: "en" 182 | layout: default 183 | - 184 | scope: 185 | path: "es" 186 | values: 187 | lang: "es" 188 | 189 | Its name to `_data/locales.yml` and an equivalent to each page in the 190 | language in `/_data/map.yml`: 191 | 192 | - 193 | en: index.html 194 | es: es/index.html 195 | - 196 | en: about.html 197 | es: es/acerca.html 198 | 199 | ## Adding posts 200 | 201 | Add a post in each language located in the language subdirectory: 202 | `/en`, `es`, etc. 203 | 204 | The following properties in posts front-matter are used: 205 | 206 | --- 207 | title: # jekyll-seo-tag - The title of the post, page, or document 208 | description: # jekyll-seo-tag - A short description of the page's content 209 | image: # jekyll-seo-tag - URL to an image associated with the post, page, or document (e.g., /assets/page-pic.jpg) 210 | author: # jekyll-seo-tag - Page-, post-, or document-specific author information (see below) 211 | lang: # jekyll-seo-tag - Page-, post-, or document-specific language information 212 | --- 213 | 214 | # Plugins 215 | 216 | *Jekyll-skeleton* uses the following plugins: 217 | 218 | - A liquid filter plugin 219 | for Jekyll which generates a table of contents. 220 | - Jekyll plugin to silently 221 | generate a sitemaps.org compliant sitemap for your Jekyll site. 222 | - Test your rendered HTML 223 | files to make sure they're accurate. 224 | - A Jekyll plugin to generate 225 | an Atom (RSS-like) feed of your Jekyll posts 226 | - Specify multiple 227 | redirections URLs for pages and posts. 228 | 229 | If you want to host a site derived from this repo in Github, you can 230 | follow this guide: [Automated Deployment Of Jekyll Websites To Github Pages With A Git Push To Github ](https://simpleit.rocks/automated-deployment-of-jekyll-websites-to-github-pages-with-a-git-push-to-github/). 231 | 232 | # Final structure 233 | 234 |
235 | 
236 | $ make build
237 | rm -fr _site/
238 | rm -fr assets/vendor/ #from yarn
239 | rm -fr assets/fonts #fontawesome dependency
240 | rm -fr .sass_cache
241 | bundle install --path vendor/bundler
242 | Warning: the running version of Bundler (1.13.6) is older than the version that created the lockfile (1.15.0). We suggest you upgrade to the latest version of Bundler by running `gem install bundler`.
243 | Using concurrent-ruby 1.0.5
244 | Using i18n 0.8.1
245 | Using minitest 5.10.2
246 | Using thread_safe 0.3.6
247 | Using public_suffix 2.0.5
248 | Using colorator 1.1.0
249 | Using colored 1.2
250 | Using ffi 1.9.18
251 | Using forwardable-extended 2.6.0
252 | Using mercenary 0.3.6
253 | Using mini_portile2 2.1.0
254 | Using parallel 1.11.2
255 | Using yell 2.0.7
256 | Using sass 3.4.24
257 | Using rb-fsevent 0.9.8
258 | Using kramdown 1.13.2
259 | Using liquid 3.0.6
260 | Using rouge 1.11.1
261 | Using safe_yaml 1.0.4
262 | Using bundler 1.13.6
263 | Using tzinfo 1.2.3
264 | Using addressable 2.5.1
265 | Using ethon 0.10.1
266 | Using rb-inotify 0.9.8
267 | Using pathutil 0.14.0
268 | Using nokogiri 1.7.2
269 | Using jekyll-sass-converter 1.5.0
270 | Using activesupport 5.1.1
271 | Using typhoeus 0.8.0
272 | Using listen 3.0.8
273 | Using jekyll-toc 0.2.1
274 | Using html-proofer 3.7.2
275 | Using jekyll-watch 1.5.0
276 | Using jekyll 3.4.3
277 | Using jekyll-feed 0.9.2
278 | Using jekyll-redirect-from 0.12.1
279 | Using jekyll-seo-tag 2.2.3
280 | Using jekyll-sitemap 1.1.1
281 | Bundle complete! 7 Gemfile dependencies, 38 gems now installed.
282 | Bundled gems are installed into ./vendor/bundler.
283 | yarn install
284 | yarn install v0.24.5
285 | [1/4] Resolving packages...
286 | success Already up-to-date.
287 | Done in 0.38s.
288 | mkdir -p assets/vendor/
289 | cp node_modules/font-awesome/css/font-awesome.min.css assets/vendor/
290 | cp -r node_modules/font-awesome/fonts assets
291 | cp node_modules/jquery/dist/jquery.min.js assets/vendor/
292 | cp node_modules/tether/dist/js/tether.min.js assets/vendor/
293 | cp node_modules/bootstrap/dist/js/bootstrap.min.js assets/vendor/
294 | bundle exec jekyll build
295 | Configuration file: /tmp/jekyll-skeleton/_config.yml
296 |             Source: /tmp/jekyll-skeleton
297 |        Destination: /tmp/jekyll-skeleton/_site
298 |  Incremental build: disabled. Enable with --incremental
299 |       Generating... 
300 |                     done in 5.474 seconds.
301 |  Auto-regeneration: disabled. Use --watch to enable.
302 | 
303 | $ tree -L 3 _site/
304 | _site/
305 | ├── assets
306 | │   ├── fonts
307 | │   │   ├── FontAwesome.otf
308 | │   │   ├── fontawesome-webfont.eot
309 | │   │   ├── fontawesome-webfont.svg
310 | │   │   ├── fontawesome-webfont.ttf
311 | │   │   ├── fontawesome-webfont.woff
312 | │   │   └── fontawesome-webfont.woff2
313 | │   ├── main.css
314 | │   └── vendor
315 | │       ├── bootstrap.min.js
316 | │       ├── font-awesome.min.css
317 | │       ├── jquery.min.js
318 | │       └── tether.min.js
319 | ├── de
320 | │   ├── beispiel-post.html
321 | │   ├── index.html
322 | │   └── unterkategorie1
323 | │       ├── index.html
324 | │       └── post-in-unterkategorie.html
325 | ├── deploy_key.enc
326 | ├── en
327 | │   ├── example-post.html
328 | │   ├── index.html
329 | │   └── subcategory1
330 | │       ├── index.html
331 | │       └── post-in-subdirectory.html
332 | ├── es
333 | │   ├── index.html
334 | │   ├── post-ejemplo.html
335 | │   └── subcategoria1
336 | │       ├── index.html
337 | │       └── post-en-subdirectorio.html
338 | ├── feed.xml
339 | ├── index.html
340 | ├── LICENSE
341 | ├── package.json
342 | ├── README.md
343 | ├── robots.txt
344 | ├── sitemap.xml
345 | └── yarn.lock
346 | 
347 | 9 directories, 32 files
348 | 
349 | $ make check
350 | bundle exec jekyll doctor
351 | Configuration file: /tmp/jekyll-skeleton/_config.yml
352 |   Your test results are in. Everything looks fine.
353 | bundle exec htmlproofer --check-html \
354 | 	--http-status-ignore 999 \
355 | 	--internal-domains marcanuy.github.io,localhost:4000 \
356 | 	--assume-extension \
357 | 	_site
358 | Running ["ScriptCheck", "LinkCheck", "HtmlCheck", "ImageCheck"] on ["_site"] on *.html... 
359 | 
360 | 
361 | Checking 14 external links...
362 | Ran on 13 files!
363 | 
364 | 
365 | HTML-Proofer finished successfully.
366 | 
367 | 
368 | 
369 | 370 | # Questions 371 | 372 | Feel free to open issues and/or contributing! 373 | 374 | # Screenshots 375 | 376 | ## English homepage 377 | 378 | ![English](http://imgur.com/fIi9WUcl.png) 379 | 380 | ## Spanish homepage 381 | 382 | ![Spanish](http://imgur.com/d670IESl.png ) 383 | 384 | ## German post 385 | 386 | ![Deutsch](http://imgur.com/kPQPuuhl.png ) 387 | -------------------------------------------------------------------------------- /assets/vendor/popper.min.js: -------------------------------------------------------------------------------- 1 | /* 2 | Copyright (C) Federico Zivolo 2019 3 | Distributed under the MIT License (license terms are at http://opensource.org/licenses/MIT). 4 | */(function(e,t){'object'==typeof exports&&'undefined'!=typeof module?module.exports=t():'function'==typeof define&&define.amd?define(t):e.Popper=t()})(this,function(){'use strict';function e(e){return e&&'[object Function]'==={}.toString.call(e)}function t(e,t){if(1!==e.nodeType)return[];var o=e.ownerDocument.defaultView,n=o.getComputedStyle(e,null);return t?n[t]:n}function o(e){return'HTML'===e.nodeName?e:e.parentNode||e.host}function n(e){if(!e)return document.body;switch(e.nodeName){case'HTML':case'BODY':return e.ownerDocument.body;case'#document':return e.body;}var i=t(e),r=i.overflow,p=i.overflowX,s=i.overflowY;return /(auto|scroll|overlay)/.test(r+s+p)?e:n(o(e))}function r(e){return 11===e?pe:10===e?se:pe||se}function p(e){if(!e)return document.documentElement;for(var o=r(10)?document.body:null,n=e.offsetParent||null;n===o&&e.nextElementSibling;)n=(e=e.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&'BODY'!==i&&'HTML'!==i?-1!==['TH','TD','TABLE'].indexOf(n.nodeName)&&'static'===t(n,'position')?p(n):n:e?e.ownerDocument.documentElement:document.documentElement}function s(e){var t=e.nodeName;return'BODY'!==t&&('HTML'===t||p(e.firstElementChild)===e)}function d(e){return null===e.parentNode?e:d(e.parentNode)}function a(e,t){if(!e||!e.nodeType||!t||!t.nodeType)return document.documentElement;var o=e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_FOLLOWING,n=o?e:t,i=o?t:e,r=document.createRange();r.setStart(n,0),r.setEnd(i,0);var l=r.commonAncestorContainer;if(e!==l&&t!==l||n.contains(i))return s(l)?l:p(l);var f=d(e);return f.host?a(f.host,t):a(e,d(t).host)}function l(e){var t=1=o.clientWidth&&n>=o.clientHeight}),l=0a[e]&&!t.escapeWithReference&&(n=Q(f[o],a[e]-('right'===e?f.width:f.height))),le({},o,n)}};return l.forEach(function(e){var t=-1===['left','top'].indexOf(e)?'secondary':'primary';f=fe({},f,m[t](e))}),e.offsets.popper=f,e},priority:['left','right','top','bottom'],padding:5,boundariesElement:'scrollParent'},keepTogether:{order:400,enabled:!0,fn:function(e){var t=e.offsets,o=t.popper,n=t.reference,i=e.placement.split('-')[0],r=Z,p=-1!==['top','bottom'].indexOf(i),s=p?'right':'bottom',d=p?'left':'top',a=p?'width':'height';return o[s]r(n[s])&&(e.offsets.popper[d]=r(n[s])),e}},arrow:{order:500,enabled:!0,fn:function(e,o){var n;if(!K(e.instance.modifiers,'arrow','keepTogether'))return e;var i=o.element;if('string'==typeof i){if(i=e.instance.popper.querySelector(i),!i)return e;}else if(!e.instance.popper.contains(i))return console.warn('WARNING: `arrow.element` must be child of its popper element!'),e;var r=e.placement.split('-')[0],p=e.offsets,s=p.popper,d=p.reference,a=-1!==['left','right'].indexOf(r),l=a?'height':'width',f=a?'Top':'Left',m=f.toLowerCase(),h=a?'left':'top',c=a?'bottom':'right',u=S(i)[l];d[c]-us[c]&&(e.offsets.popper[m]+=d[m]+u-s[c]),e.offsets.popper=g(e.offsets.popper);var b=d[m]+d[l]/2-u/2,w=t(e.instance.popper),y=parseFloat(w['margin'+f],10),E=parseFloat(w['border'+f+'Width'],10),v=b-e.offsets.popper[m]-y-E;return v=ee(Q(s[l]-u,v),0),e.arrowElement=i,e.offsets.arrow=(n={},le(n,m,$(v)),le(n,h,''),n),e},element:'[x-arrow]'},flip:{order:600,enabled:!0,fn:function(e,t){if(W(e.instance.modifiers,'inner'))return e;if(e.flipped&&e.placement===e.originalPlacement)return e;var o=v(e.instance.popper,e.instance.reference,t.padding,t.boundariesElement,e.positionFixed),n=e.placement.split('-')[0],i=T(n),r=e.placement.split('-')[1]||'',p=[];switch(t.behavior){case ge.FLIP:p=[n,i];break;case ge.CLOCKWISE:p=G(n);break;case ge.COUNTERCLOCKWISE:p=G(n,!0);break;default:p=t.behavior;}return p.forEach(function(s,d){if(n!==s||p.length===d+1)return e;n=e.placement.split('-')[0],i=T(n);var a=e.offsets.popper,l=e.offsets.reference,f=Z,m='left'===n&&f(a.right)>f(l.left)||'right'===n&&f(a.left)f(l.top)||'bottom'===n&&f(a.top)f(o.right),g=f(a.top)f(o.bottom),b='left'===n&&h||'right'===n&&c||'top'===n&&g||'bottom'===n&&u,w=-1!==['top','bottom'].indexOf(n),y=!!t.flipVariations&&(w&&'start'===r&&h||w&&'end'===r&&c||!w&&'start'===r&&g||!w&&'end'===r&&u),E=!!t.flipVariationsByContent&&(w&&'start'===r&&c||w&&'end'===r&&h||!w&&'start'===r&&u||!w&&'end'===r&&g),v=y||E;(m||b||v)&&(e.flipped=!0,(m||b)&&(n=p[d+1]),v&&(r=z(r)),e.placement=n+(r?'-'+r:''),e.offsets.popper=fe({},e.offsets.popper,C(e.instance.popper,e.offsets.reference,e.placement)),e=P(e.instance.modifiers,e,'flip'))}),e},behavior:'flip',padding:5,boundariesElement:'viewport',flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,o=t.split('-')[0],n=e.offsets,i=n.popper,r=n.reference,p=-1!==['left','right'].indexOf(o),s=-1===['top','left'].indexOf(o);return i[p?'left':'top']=r[o]-(s?i[p?'width':'height']:0),e.placement=T(t),e.offsets.popper=g(i),e}},hide:{order:800,enabled:!0,fn:function(e){if(!K(e.instance.modifiers,'hide','preventOverflow'))return e;var t=e.offsets.reference,o=D(e.instance.modifiers,function(e){return'preventOverflow'===e.name}).boundaries;if(t.bottomo.right||t.top>o.bottom||t.rightwindow.devicePixelRatio||!me),c='bottom'===o?'top':'bottom',g='right'===n?'left':'right',b=B('transform');if(d='bottom'==c?'HTML'===l.nodeName?-l.clientHeight+h.bottom:-f.height+h.bottom:h.top,s='right'==g?'HTML'===l.nodeName?-l.clientWidth+h.right:-f.width+h.right:h.left,a&&b)m[b]='translate3d('+s+'px, '+d+'px, 0)',m[c]=0,m[g]=0,m.willChange='transform';else{var w='bottom'==c?-1:1,y='right'==g?-1:1;m[c]=d*w,m[g]=s*y,m.willChange=c+', '+g}var E={"x-placement":e.placement};return e.attributes=fe({},E,e.attributes),e.styles=fe({},m,e.styles),e.arrowStyles=fe({},e.offsets.arrow,e.arrowStyles),e},gpuAcceleration:!0,x:'bottom',y:'right'},applyStyle:{order:900,enabled:!0,fn:function(e){return V(e.instance.popper,e.styles),j(e.instance.popper,e.attributes),e.arrowElement&&Object.keys(e.arrowStyles).length&&V(e.arrowElement,e.arrowStyles),e},onLoad:function(e,t,o,n,i){var r=L(i,t,e,o.positionFixed),p=O(o.placement,r,t,e,o.modifiers.flip.boundariesElement,o.modifiers.flip.padding);return t.setAttribute('x-placement',p),V(t,{position:o.positionFixed?'fixed':'absolute'}),o},gpuAcceleration:void 0}}},ue}); 5 | //# sourceMappingURL=popper.min.js.map 6 | --------------------------------------------------------------------------------