diff --git a/.bundle/config b/.bundle/config deleted file mode 100644 index 9bc01b4c32..0000000000 --- a/.bundle/config +++ /dev/null @@ -1,3 +0,0 @@ ---- -BUNDLE_PATH: "vendor/bundle" -BUNDLE_DISABLE_SHARED_GEMS: "true" diff --git a/.gitattributes b/.gitattributes index ebe0199207..4d536e4abe 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,5 +1,10 @@ -_assets/css/vendor/* linguist-vendored -_assets/js/plugins/* linguist-vendored -_assets/js/vendor/* linguist-vendored -assets/fonts/* linguist-vendored -assets/js/vendor/* linguist-vendored \ No newline at end of file +assets/fonts/* linguist-vendored +assets/js/main.min.js linguist-vendored +assets/js/lunr/* linguist-vendored +assets/js/plugins/* linguist-vendored +assets/js/vendor/* linguist-vendored +_sass/minimal-mistakes/vendor/* linguist-vendored +CHANGELOG.md text merge=union +docs/_docs/18-history.md text merge=union + +*.md text diff --git a/.gitignore b/.gitignore index c47dba95f3..5c5a91f8f7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,17 +1,29 @@ -*.gem +# Vim +*~ +*.sw[p_] + +# Sublime Text *.sublime-project *.sublime-workspace + +# Ruby Gem +*.gem .bundle +Gemfile.lock +**/vendor/bundle + +# Node.js and NPM +node_modules +npm-debug.log* +package-lock.json +codekit-config.json + +# macOS .DS_Store -.jekyll-metadata + +# Jekyll generated files .jekyll-cache +.jekyll-metadata .sass-cache _asset_bundler_cache _site -codekit-config.json -example/_site -node_modules -npm-debug.log* -/vendor -torrents -Gemfile.lock \ No newline at end of file diff --git a/.vscode/settings.json b/.vscode/settings.json deleted file mode 100644 index 4c754dfed5..0000000000 --- a/.vscode/settings.json +++ /dev/null @@ -1,4 +0,0 @@ -// Place your settings in this file to overwrite default and user settings. -{ - "files.associations": {"*.txt": "markdown"} -} \ No newline at end of file diff --git a/Gemfile b/Gemfile index bc08b6437b..ef95c2c03f 100644 --- a/Gemfile +++ b/Gemfile @@ -1,6 +1,5 @@ source "https://rubygems.org" -gem "jemoji", "~> 0.8" -gem "jekyll-redirect-from", "~>0.16" -gem "kramdown-parser-gfm", "~>1.1" gem "webrick", "~>1.7" -gemspec +gem "kramdown-parser-gfm", "~>1.1" +gem "wdm", "~> 0.1.0" if Gem.win_platform? +gemspec \ No newline at end of file diff --git a/LICENSE.txt b/LICENSE similarity index 79% rename from LICENSE.txt rename to LICENSE index 536ab071ef..a0ac57d935 100644 --- a/LICENSE.txt +++ b/LICENSE @@ -1,6 +1,11 @@ The MIT License (MIT) -Copyright (c) 2017 Michael Rose +(Jekyll Theme) +Copyright (c) 2013-2020 Michael Rose and contributors + +(Nord skin) +Copyright (c) 2016-2021 Arctic Ice Studio development@arcticicestudio.com (https://www.arcticicestudio.com) +Copyright (c) 2016-2021 Sven Greb development@svengreb.de (https://www.svengreb.de) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/_config.yml b/_config.yml index bdbd3b8782..a5c6db63a0 100644 --- a/_config.yml +++ b/_config.yml @@ -5,23 +5,33 @@ # For technical reasons, this file is *NOT* reloaded automatically when you use # `jekyll serve`. If you change this file, please restart the server process. -minimal_mistakes_skin : "nord" +# Theme Settings +# +# Review documentation to determine if you should use `theme` or `remote_theme` +# https://mmistakes.github.io/minimal-mistakes/docs/quick-start-guide/#installing-the-theme + +# theme : "minimal-mistakes-jekyll" +# remote_theme : "mmistakes/minimal-mistakes" +minimal_mistakes_skin : "nord" # "default" # "air", "aqua", "contrast", "dark", "dirt", "neon", "mint", "plum", "sunrise" # Site Settings locale : "en-US" title : "3DS Hacks Guide" title_separator : "-" +subtitle : # site tagline that appears below site title in masthead name : "Nintendo Homebrew" description : "Full sighax CFW Guide" url : "https://3ds.hacks.guide" # the base hostname & protocol for your site e.g. "https://mmistakes.github.io" enforce_ssl : "3ds.hacks.guide" baseurl : # the subpath of your site, e.g. "/blog" repository : "hacks-guide/Guide_3DS" # GitHub username/repo-name e.g. "mmistakes/minimal-mistakes" -teaser : # filename of teaser fallback teaser image placed in /images/, .e.g. "500x300.png" -breadcrumbs : # true, false (default) +teaser : # path of fallback teaser image, e.g. "/assets/images/500x300.png" +logo : # path of logo image to display in the masthead, e.g. "/assets/images/88x88.png" +masthead_title : # overrides the website title displayed in the masthead, use " " for no title +# breadcrumbs : false # true, false (default) words_per_minute : 200 comments: - provider : # false (default), "disqus", "discourse", "facebook", "google-plus", "staticman", "custom" + provider : # false (default), "disqus", "discourse", "facebook", "staticman", "staticman_v2", "utterances", "giscus", "custom" disqus: shortname : # https://help.disqus.com/customer/portal/articles/466208-what-s-a-shortname- discourse: @@ -31,30 +41,41 @@ comments: appid : num_posts : # 5 (default) colorscheme : # "light" (default), "dark" -staticman: - allowedFields : ['name', 'email', 'url', 'message'] - branch : "master" - commitMessage : "New comment." - filename : comment-{@timestamp} - format : "yml" - moderation : true - path : "_data/comments/{options.slug}" - requiredFields : ['name', 'email', 'message'] - transforms: - email : "md5" - generatedFields: - date: - type : "date" - options: - format : "iso8601" # "iso8601" (default), "timestamp-seconds", "timestamp-milliseconds" + utterances: + theme : # "github-light" (default), "github-dark" + issue_term : # "pathname" (default) + giscus: + repo_id : # Shown during giscus setup at https://giscus.app + category_name : # Full text name of the category + category_id : # Shown during giscus setup at https://giscus.app + discussion_term : # "pathname" (default), "url", "title", "og:title" + reactions_enabled : # '1' for enabled (default), '0' for disabled + theme : # "light" (default), "dark", "dark_dimmed", "transparent_dark", "preferred_color_scheme" + staticman: + branch : # "master" + endpoint : # "https://{your Staticman v3 API}/v3/entry/github/" +reCaptcha: + siteKey : + secret : atom_feed: path : # blank (default) uses feed.xml - + hide : # true, false (default) +search : # true, false (default) +search_full_content : # true, false (default) +search_provider : # lunr (default), algolia, google +algolia: + application_id : # YOUR_APPLICATION_ID + index_name : # YOUR_INDEX_NAME + search_only_api_key : # YOUR_SEARCH_ONLY_API_KEY + powered_by : # true (default), false +google: + search_engine_id : # YOUR_SEARCH_ENGINE_ID + instant_search : # false (default), true # SEO Related google_site_verification : jVXoPK_-qzKJp4SScnZYpOIX3yDXfGnAoTBJYixUOwg bing_site_verification : F3532011519E308583A0A2CAF2DD69E8 -alexa_site_verification : yandex_site_verification : +naver_site_verification : # Social Sharing twitter: @@ -73,48 +94,67 @@ social: # Analytics analytics: - provider : "google-universal" # false (default), "google", "google-universal", "custom" + provider : "google-universal" # false (default), "google", "google-universal", "google-gtag", "custom" google: tracking_id : "UA-86465881-1" + anonymize_ip : # true, false (default) # Site Author author: name : "Nintendo Homebrew" - avatar : + avatar : # path of avatar image, e.g. "/assets/images/bio-photo.jpg" bio : "Nintendo Homebrew Community" location : "Nullsec" - email : - uri : - bitbucket : - codepen : - dribbble : - flickr : - facebook : - foursquare : - github : "nh-server" - google_plus : - keybase : - instagram : - lastfm : - linkedin : - pinterest : - soundcloud : - stackoverflow : # "123456/username" (the last part of your profile url, e.g. http://stackoverflow.com/users/123456/username) - steam : - tumblr : - twitter : - vine : - weibo : - xing : - youtube : + email : + links: + # - label: "Email" + # icon: "fas fa-fw fa-envelope-square" + # url: "mailto:your.name@email.com" + # - label: "Website" + # icon: "fas fa-fw fa-link" + # url: "https://your-website.com" + # - label: "Twitter" + # icon: "fab fa-fw fa-twitter-square" + # url: "https://twitter.com/" + # - label: "Facebook" + # icon: "fab fa-fw fa-facebook-square" + # url: "https://facebook.com/" + - label: "GitHub" + icon: "fab fa-fw fa-github" + url: "https://github.com/hacks-guide/Guide_3DS" + # - label: "Instagram" + # icon: "fab fa-fw fa-instagram" + # url: "https://instagram.com/" + +# Site Footer +footer: + links: + # - label: "Twitter" + # icon: "fab fa-fw fa-twitter-square" + # url: + # - label: "Facebook" + # icon: "fab fa-fw fa-facebook-square" + # url: + - label: "GitHub" + icon: "fab fa-fw fa-github" + url: "https://github.com/hacks-guide/Guide_3DS" + # - label: "GitLab" + # icon: "fab fa-fw fa-gitlab" + # url: + # - label: "Bitbucket" + # icon: "fab fa-fw fa-bitbucket" + # url: + # - label: "Instagram" + # icon: "fab fa-fw fa-instagram" + # url: # Reading Files include: - - .htaccess - - _pages - - _pages/en_US + - .htaccess + - _pages + - _pages/en_US exclude: [ "*.sublime-project", "*.sublime-workspace", @@ -134,13 +174,16 @@ exclude: [ gulpfile.js, LICENSE, log, + minimal-mistakes-jekyll.gemspec, node_modules, package.json, + package-lock.json, Rakefile, README, tmp, _pages/af_ZA, _pages/ar_SA, + _pages/bg_BG, _pages/ca_ES, _pages/cs_CZ, _pages/da_DK, @@ -148,11 +191,13 @@ exclude: [ _pages/el_GR, _pages/en_PT, # _pages/en_US, - _pages/es_EM, + _pages/et_EE, + _pages/ca_ES, # _pages/es_ES, # _pages/fi_FI, # _pages/fr_FR, # _pages/he_IL, + _pages/hr_HR, # _pages/hu_HU, _pages/id_ID, # _pages/it_IT, @@ -206,16 +251,23 @@ kramdown: # Sass/SCSS sass: sass_dir: _sass - style: compressed # http://sass-lang.com/documentation/file.SASS_REFERENCE.html#output_style + style: compressed # https://sass-lang.com/documentation/file.SASS_REFERENCE.html#output_style -# Plugins + +# Outputting +# permalink: /:categories/:title/ +# paginate: 5 # amount of posts to show +# paginate_path: /page:num/ +# timezone: # https://en.wikipedia.org/wiki/List_of_tz_database_time_zones + + +# Plugins (previously gems:) plugins: - jekyll-paginate - jekyll-sitemap - jekyll-gist - jekyll-feed - - jemoji - - jekyll-redirect-from + - jekyll-include-cache # mimic GitHub Pages with --safe whitelist: @@ -223,7 +275,7 @@ whitelist: - jekyll-sitemap - jekyll-gist - jekyll-feed - - jemoji + - jekyll-include-cache # Archives @@ -234,8 +286,8 @@ whitelist: # - Archive page should exist at path when using Liquid method or you can # expect broken links (especially with breadcrumbs enabled) # - /tags/my-awesome-tag/index.html ~> path: /tags/ -# - path: /categories/ -# - path: / +# - /categories/my-awesome-category/index.html ~> path: /categories/ +# - /my-awesome-category/index.html ~> path: / category_archive: type: liquid path: /categories/ @@ -256,12 +308,13 @@ tag_archive: # HTML Compression -# - http://jch.penibelst.de/ +# - https://jch.penibelst.de/ compress_html: clippings: all ignore: envs: development + # Defaults defaults: # _pages diff --git a/_includes/analytics-providers/google-gtag.html b/_includes/analytics-providers/google-gtag.html new file mode 100644 index 0000000000..16d0cf176b --- /dev/null +++ b/_includes/analytics-providers/google-gtag.html @@ -0,0 +1,9 @@ + + + diff --git a/_includes/analytics-providers/google-universal.html b/_includes/analytics-providers/google-universal.html index 10d65b2ee4..68c2674ba9 100644 --- a/_includes/analytics-providers/google-universal.html +++ b/_includes/analytics-providers/google-universal.html @@ -1,9 +1,7 @@ + diff --git a/_includes/analytics-providers/google.html b/_includes/analytics-providers/google.html index b591b99543..c5742b9817 100644 --- a/_includes/analytics-providers/google.html +++ b/_includes/analytics-providers/google.html @@ -1,6 +1,9 @@ - \ No newline at end of file + diff --git a/_includes/analytics.html b/_includes/analytics.html index 64a3359aad..371469f0af 100644 --- a/_includes/analytics.html +++ b/_includes/analytics.html @@ -1,10 +1,12 @@ -{% if site.analytics.provider and page.analytics != false %} +{% if jekyll.environment == 'production' and site.analytics.provider and page.analytics != false %} {% case site.analytics.provider %} {% when "google" %} {% include /analytics-providers/google.html %} {% when "google-universal" %} {% include /analytics-providers/google-universal.html %} +{% when "google-gtag" %} + {% include /analytics-providers/google-gtag.html %} {% when "custom" %} {% include /analytics-providers/custom.html %} {% endcase %} diff --git a/_includes/archive-single.html b/_includes/archive-single.html index dc9ac73752..68174807ef 100644 --- a/_includes/archive-single.html +++ b/_includes/archive-single.html @@ -10,29 +10,21 @@ {% assign title = post.title %} {% endif %} -
-
+
+
{% if include.type == "grid" and teaser %}
- +
{% endif %} -

+

{% if post.link %} - {{ title }} Permalink + {{ title }} Permalink {% else %} - {{ title }} + {{ title }} {% endif %}

- {% if post.read_time %} -

{% include read-time.html %}

- {% endif %} + {% include page__meta.html type=include.type %} {% if post.excerpt %}

{{ post.excerpt | markdownify | strip_html | truncate: 160 }}

{% endif %}
diff --git a/_includes/author-profile-custom-links.html b/_includes/author-profile-custom-links.html index 3560e25885..b89ffcb7df 100644 --- a/_includes/author-profile-custom-links.html +++ b/_includes/author-profile-custom-links.html @@ -1,7 +1,7 @@ \ No newline at end of file diff --git a/_includes/author-profile.html b/_includes/author-profile.html index 2d10543126..d384ee7343 100644 --- a/_includes/author-profile.html +++ b/_includes/author-profile.html @@ -1,27 +1,30 @@ -{% if page.author and site.data.authors[page.author] %} - {% assign author = site.data.authors[page.author] %} -{% else %} - {% assign author = site.author %} -{% endif %} +{% assign author = page.author | default: page.authors[0] | default: site.author %} +{% assign author = site.data.authors[author] | default: author %} -
+
{% if author.avatar %}
- {% if author.avatar contains "://" %} - {{ author.name }} + {% if author.home %} + + {{ author.name }} + {% else %} - {{ author.name }} + {{ author.name }} {% endif %}
{% endif %}
-

{{ author.name }}

+ {% if author.home %} +

{{ author.name }}

+ {% else %} +

{{ author.name }}

+ {% endif %} {% if author.bio %} -

- {{ author.bio }} -

+
+ {{ author.bio | markdownify }} +
{% endif %}
@@ -29,15 +32,23 @@ - + \ No newline at end of file diff --git a/_includes/page__date.html b/_includes/page__date.html new file mode 100644 index 0000000000..4f995ed0a6 --- /dev/null +++ b/_includes/page__date.html @@ -0,0 +1,6 @@ +{% assign date_format = site.date_format | default: "%B %-d, %Y" %} +{% if page.last_modified_at %} +

{{ site.data.ui-text[site.locale].date_label | default: "Updated:" }}

+{% elsif page.date %} +

{{ site.data.ui-text[site.locale].date_label | default: "Updated:" }}

+{% endif %} diff --git a/_includes/page__hero.html b/_includes/page__hero.html index 93e9155fb6..dd1c26fbf1 100644 --- a/_includes/page__hero.html +++ b/_includes/page__hero.html @@ -1,25 +1,13 @@ -{% if page.header.image contains "://" %} - {% capture img_path %}{{ page.header.image }}{% endcapture %} -{% else %} - {% capture img_path %}{{ page.header.image | absolute_url }}{% endcapture %} -{% endif %} +{% capture overlay_img_path %}{{ page.header.overlay_image | relative_url }}{% endcapture %} -{% if page.header.cta_url contains "://" %} - {% capture cta_path %}{{ page.header.cta_url }}{% endcapture %} -{% else %} - {% capture cta_path %}{{ page.header.cta_url | absolute_url }}{% endcapture %} -{% endif %} - -{% if page.header.overlay_image contains "://" %} - {% capture overlay_img_path %}{{ page.header.overlay_image }}{% endcapture %} -{% elsif page.header.overlay_image %} - {% capture overlay_img_path %}{{ page.header.overlay_image | absolute_url }}{% endcapture %} -{% endif %} - -{% if page.header.overlay_filter contains "rgba" %} +{% if page.header.overlay_filter contains "gradient" %} {% capture overlay_filter %}{{ page.header.overlay_filter }}{% endcapture %} +{% elsif page.header.overlay_filter contains "rgba" %} + {% capture overlay_filter %}{{ page.header.overlay_filter }}{% endcapture %} + {% capture overlay_filter %}linear-gradient({{ overlay_filter }}, {{ overlay_filter }}){% endcapture %} {% elsif page.header.overlay_filter %} {% capture overlay_filter %}rgba(0, 0, 0, {{ page.header.overlay_filter }}){% endcapture %} + {% capture overlay_filter %}linear-gradient({{ overlay_filter }}, {{ overlay_filter }}){% endcapture %} {% endif %} {% if page.header.image_description %} @@ -31,29 +19,35 @@ {% assign image_description = image_description | markdownify | strip_html | strip_newlines | escape_once %}
{% if page.header.overlay_color or page.header.overlay_image %}
-

+

{% if paginator and site.paginate_show_page_num %} {{ site.title }}{% unless paginator.page == 1 %} {{ site.data.ui-text[site.locale].page | default: "Page" }} {{ paginator.page }}{% endunless %} {% else %} {{ page.title | default: site.title | markdownify | remove: "

" | remove: "

" }} {% endif %}

- {% if page.excerpt %} + {% if page.tagline %} +

{{ page.tagline | markdownify | remove: "

" | remove: "

" }}

+ {% elsif page.header.show_overlay_excerpt != false and page.excerpt %}

{{ page.excerpt | markdownify | remove: "

" | remove: "

" }}

{% endif %} - {% if site.read_time and page.read_time %} -

{% include read-time.html %}

- {% endif %} + {% include page__meta.html %} {% if page.header.cta_url %} -

{{ page.header.cta_label | default: site.data.ui-text[site.locale].more_label | default: "Learn More" }}

+

{{ page.header.cta_label | default: site.data.ui-text[site.locale].more_label | default: "Learn More" }}

+ {% endif %} + {% if page.header.actions %} +

+ {% for action in page.header.actions %} + {{ action.label | default: site.data.ui-text[site.locale].more_label | default: "Learn More" }} + {% endfor %} {% endif %}

{% else %} - {{ image_description }} + {{ image_description }} {% endif %} {% if page.header.caption %} {{ page.header.caption | markdownify | remove: "

" | remove: "

" }}
diff --git a/_includes/page__hero_video.html b/_includes/page__hero_video.html index 8586a95a2b..a313a23d45 100644 --- a/_includes/page__hero_video.html +++ b/_includes/page__hero_video.html @@ -1,4 +1,2 @@ -{% capture video_id %}{{ page.header.video.id }}{% endcapture %} -{% capture video_provider %}{{ page.header.video.provider }}{% endcapture %} - -{% include video id=video_id provider=video_provider %} +{% assign video = page.header.video %} +{% include video id=video.id provider=video.provider danmaku=video.danmaku %} diff --git a/_includes/page__meta.html b/_includes/page__meta.html new file mode 100644 index 0000000000..3d228c9212 --- /dev/null +++ b/_includes/page__meta.html @@ -0,0 +1,31 @@ +{% assign document = post | default: page %} +{% if document.read_time or document.show_date %} +

+ {% if document.show_date and document.date %} + {% assign date = document.date %} + + + {% assign date_format = site.date_format | default: "%B %-d, %Y" %} + + + {% endif %} + + {% if document.read_time and document.show_date %}{% endif %} + + {% if document.read_time %} + {% assign words_per_minute = document.words_per_minute | default: site.words_per_minute | default: 200 %} + {% assign words = document.content | strip_html | number_of_words %} + + + + {% if words < words_per_minute %} + {{ site.data.ui-text[site.locale].less_than | default: "less than" }} 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }} + {% elsif words == words_per_minute %} + 1 {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }} + {% else %} + {{ words | divided_by: words_per_minute }} {{ site.data.ui-text[site.locale].minute_read | default: "minute read" }} + {% endif %} + + {% endif %} +

+{% endif %} diff --git a/_includes/page__taxonomy.html b/_includes/page__taxonomy.html index f10b2026a2..75c76c81dd 100644 --- a/_includes/page__taxonomy.html +++ b/_includes/page__taxonomy.html @@ -4,4 +4,4 @@ {% if site.category_archive.type and page.categories[0] %} {% include category-list.html %} -{% endif %} +{% endif %} \ No newline at end of file diff --git a/_includes/paginator.html b/_includes/paginator.html index cf49ae8a25..bffa079467 100644 --- a/_includes/paginator.html +++ b/_includes/paginator.html @@ -1,13 +1,13 @@ {% if paginator.total_pages > 1 %}