diff --git a/.codespellrc b/.codespellrc new file mode 100644 index 000000000..564fc77c0 --- /dev/null +++ b/.codespellrc @@ -0,0 +1,13 @@ +# Config file for codespell. +# https://github.com/codespell-project/codespell#using-a-config-file + +[codespell] + +# Comma separated list of dirs to be skipped. +skip = _vendor,.cspell.json,chroma.css,chroma_dark.css + +# Comma separated list of words to be ignored. Words must be lowercased. +ignore-words-list = abl,edn,te,ue,trys,januar,womens,crossreferences + +# Check file names as well. +check-filenames = true diff --git a/.cspell.json b/.cspell.json index 6596a160c..8d51085ab 100644 --- a/.cspell.json +++ b/.cspell.json @@ -68,6 +68,7 @@ "# ----------------------------------------------------------------------", "# cspell: ignore hugo terminology", "# ----------------------------------------------------------------------", + "alignx", "attrlink", "canonify", "codeowners", @@ -85,6 +86,7 @@ "stringifier", "struct", "toclevels", + "unmarshal", "unpublishdate", "zgotmplz", "# ----------------------------------------------------------------------", @@ -158,6 +160,8 @@ "# cspell: ignore miscellaneous", "# ----------------------------------------------------------------------", "achristie", + "ccpa", + "crpa", "ddmaurier", "dring", "fleqn", @@ -171,6 +175,7 @@ "rsmith", "tdewolff", "tjones", + "vcard", "wcag", "xfeff" ] diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 000000000..3ba13e0ce --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1 @@ +blank_issues_enabled: false diff --git a/.github/ISSUE_TEMPLATE/default.md b/.github/ISSUE_TEMPLATE/default.md new file mode 100644 index 000000000..ada35b3a5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/default.md @@ -0,0 +1,6 @@ +--- +name: Default +about: This is the default issue template. +labels: + - NeedsTriage +--- diff --git a/.github/workflows/spellcheck.yml b/.github/workflows/spellcheck.yml index 86f8f53a5..e01ab1764 100644 --- a/.github/workflows/spellcheck.yml +++ b/.github/workflows/spellcheck.yml @@ -20,3 +20,8 @@ jobs: incremental_files_only: true inline: warning strict: false + - uses: codespell-project/actions-codespell@v2 + with: + check_filenames: true + check_hidden: true + # by default, codespell uses configuration from the .codespellrc diff --git a/.gitignore b/.gitignore index f9cab2f80..debc86d46 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,13 @@ +.DS_Store +.hugo_build.lock /.idea /.vscode -/public /dist -node_modules +/public +hugo_stats.json +node_modules/ nohup.out -.DS_Store -trace.out -.hugo_build.lock -resources/_gen/images/ \ No newline at end of file +package-lock.json +public/ +resources/ +trace.out \ No newline at end of file diff --git a/LICENSE.md b/LICENSE.md index b09cd7856..979711275 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,201 +1,3 @@ -Apache License - Version 2.0, January 2004 - http://www.apache.org/licenses/ +See [content/LICENSE.md](content/LICENSE.md) for the license of the content of this repository. - TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION - - 1. Definitions. - - "License" shall mean the terms and conditions for use, reproduction, - and distribution as defined by Sections 1 through 9 of this document. - - "Licensor" shall mean the copyright owner or entity authorized by - the copyright owner that is granting the License. - - "Legal Entity" shall mean the union of the acting entity and all - other entities that control, are controlled by, or are under common - control with that entity. For the purposes of this definition, - "control" means (i) the power, direct or indirect, to cause the - direction or management of such entity, whether by contract or - otherwise, or (ii) ownership of fifty percent (50%) or more of the - outstanding shares, or (iii) beneficial ownership of such entity. - - "You" (or "Your") shall mean an individual or Legal Entity - exercising permissions granted by this License. - - "Source" form shall mean the preferred form for making modifications, - including but not limited to software source code, documentation - source, and configuration files. - - "Object" form shall mean any form resulting from mechanical - transformation or translation of a Source form, including but - not limited to compiled object code, generated documentation, - and conversions to other media types. - - "Work" shall mean the work of authorship, whether in Source or - Object form, made available under the License, as indicated by a - copyright notice that is included in or attached to the work - (an example is provided in the Appendix below). - - "Derivative Works" shall mean any work, whether in Source or Object - form, that is based on (or derived from) the Work and for which the - editorial revisions, annotations, elaborations, or other modifications - represent, as a whole, an original work of authorship. For the purposes - of this License, Derivative Works shall not include works that remain - separable from, or merely link (or bind by name) to the interfaces of, - the Work and Derivative Works thereof. - - "Contribution" shall mean any work of authorship, including - the original version of the Work and any modifications or additions - to that Work or Derivative Works thereof, that is intentionally - submitted to Licensor for inclusion in the Work by the copyright owner - or by an individual or Legal Entity authorized to submit on behalf of - the copyright owner. For the purposes of this definition, "submitted" - means any form of electronic, verbal, or written communication sent - to the Licensor or its representatives, including but not limited to - communication on electronic mailing lists, source code control systems, - and issue tracking systems that are managed by, or on behalf of, the - Licensor for the purpose of discussing and improving the Work, but - excluding communication that is conspicuously marked or otherwise - designated in writing by the copyright owner as "Not a Contribution." - - "Contributor" shall mean Licensor and any individual or Legal Entity - on behalf of whom a Contribution has been received by Licensor and - subsequently incorporated within the Work. - - 2. Grant of Copyright License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - copyright license to reproduce, prepare Derivative Works of, - publicly display, publicly perform, sublicense, and distribute the - Work and such Derivative Works in Source or Object form. - - 3. Grant of Patent License. Subject to the terms and conditions of - this License, each Contributor hereby grants to You a perpetual, - worldwide, non-exclusive, no-charge, royalty-free, irrevocable - (except as stated in this section) patent license to make, have made, - use, offer to sell, sell, import, and otherwise transfer the Work, - where such license applies only to those patent claims licensable - by such Contributor that are necessarily infringed by their - Contribution(s) alone or by combination of their Contribution(s) - with the Work to which such Contribution(s) was submitted. If You - institute patent litigation against any entity (including a - cross-claim or counterclaim in a lawsuit) alleging that the Work - or a Contribution incorporated within the Work constitutes direct - or contributory patent infringement, then any patent licenses - granted to You under this License for that Work shall terminate - as of the date such litigation is filed. - - 4. Redistribution. You may reproduce and distribute copies of the - Work or Derivative Works thereof in any medium, with or without - modifications, and in Source or Object form, provided that You - meet the following conditions: - - (a) You must give any other recipients of the Work or - Derivative Works a copy of this License; and - - (b) You must cause any modified files to carry prominent notices - stating that You changed the files; and - - (c) You must retain, in the Source form of any Derivative Works - that You distribute, all copyright, patent, trademark, and - attribution notices from the Source form of the Work, - excluding those notices that do not pertain to any part of - the Derivative Works; and - - (d) If the Work includes a "NOTICE" text file as part of its - distribution, then any Derivative Works that You distribute must - include a readable copy of the attribution notices contained - within such NOTICE file, excluding those notices that do not - pertain to any part of the Derivative Works, in at least one - of the following places: within a NOTICE text file distributed - as part of the Derivative Works; within the Source form or - documentation, if provided along with the Derivative Works; or, - within a display generated by the Derivative Works, if and - wherever such third-party notices normally appear. The contents - of the NOTICE file are for informational purposes only and - do not modify the License. You may add Your own attribution - notices within Derivative Works that You distribute, alongside - or as an addendum to the NOTICE text from the Work, provided - that such additional attribution notices cannot be construed - as modifying the License. - - You may add Your own copyright statement to Your modifications and - may provide additional or different license terms and conditions - for use, reproduction, or distribution of Your modifications, or - for any such Derivative Works as a whole, provided Your use, - reproduction, and distribution of the Work otherwise complies with - the conditions stated in this License. - - 5. Submission of Contributions. Unless You explicitly state otherwise, - any Contribution intentionally submitted for inclusion in the Work - by You to the Licensor shall be under the terms and conditions of - this License, without any additional terms or conditions. - Notwithstanding the above, nothing herein shall supersede or modify - the terms of any separate license agreement you may have executed - with Licensor regarding such Contributions. - - 6. Trademarks. This License does not grant permission to use the trade - names, trademarks, service marks, or product names of the Licensor, - except as required for reasonable and customary use in describing the - origin of the Work and reproducing the content of the NOTICE file. - - 7. Disclaimer of Warranty. Unless required by applicable law or - agreed to in writing, Licensor provides the Work (and each - Contributor provides its Contributions) on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or - implied, including, without limitation, any warranties or conditions - of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A - PARTICULAR PURPOSE. You are solely responsible for determining the - appropriateness of using or redistributing the Work and assume any - risks associated with Your exercise of permissions under this License. - - 8. Limitation of Liability. In no event and under no legal theory, - whether in tort (including negligence), contract, or otherwise, - unless required by applicable law (such as deliberate and grossly - negligent acts) or agreed to in writing, shall any Contributor be - liable to You for damages, including any direct, indirect, special, - incidental, or consequential damages of any character arising as a - result of this License or out of the use or inability to use the - Work (including but not limited to damages for loss of goodwill, - work stoppage, computer failure or malfunction, or any and all - other commercial damages or losses), even if such Contributor - has been advised of the possibility of such damages. - - 9. Accepting Warranty or Additional Liability. While redistributing - the Work or Derivative Works thereof, You may choose to offer, - and charge a fee for, acceptance of support, warranty, indemnity, - or other liability obligations and/or rights consistent with this - License. However, in accepting such obligations, You may act only - on Your own behalf and on Your sole responsibility, not on behalf - of any other Contributor, and only if You agree to indemnify, - defend, and hold each Contributor harmless for any liability - incurred by, or claims asserted against, such Contributor by reason - of your accepting any such warranty or additional liability. - - END OF TERMS AND CONDITIONS - - APPENDIX: How to apply the Apache License to your work. - - To apply the Apache License to your work, attach the following - boilerplate notice, with the fields enclosed by brackets "[]" - replaced with your own identifying information. (Don't include - the brackets!) The text should be enclosed in the appropriate - comment syntax for the file format. We also recommend that a - file or class name and description of purpose be included on the - same "printed page" as the copyright notice for easier - identification within third-party archives. - - Copyright [yyyy] [name of copyright owner] - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the License. - You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. +The theme (layouts, CSS, JavaScript etc.) of this repository has no open source license. It is custom made for the Hugo sites and is not meant for reuse. \ No newline at end of file diff --git a/README.md b/README.md index 7550a93cd..64ba31a48 100644 --- a/README.md +++ b/README.md @@ -16,3 +16,12 @@ Please see the [contributing] section for guidelines, examples, and process. [friends]: https://github.com/gohugoio/hugo/graphs/contributors [go]: https://go.dev/ [contributing]: https://gohugo.io/contribute/documentation + +# Install + +```bash +npm i +hugo server +``` + +**Note:** We're working on removing the need to run `npm i` for local development. Stay tuned. \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_algolia.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_algolia.css deleted file mode 100644 index 0122f9758..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_algolia.css +++ /dev/null @@ -1,11 +0,0 @@ -.searchbox{display:inline-block;position:relative;width:200px;height:32px!important;white-space:nowrap;box-sizing:border-box;visibility:visible!important}.searchbox .algolia-autocomplete{display:block;width:100%;height:100%}.searchbox__wrapper{width:100%;height:100%;z-index:999;position:relative}.searchbox__input{display:inline-block;box-sizing:border-box;transition:box-shadow .4s ease,background .4s ease;border:0;border-radius:16px;box-shadow:inset 0 0 0 1px #ccc;background:#fff!important;padding:0 26px 0 32px;width:100%;height:100%;vertical-align:middle;white-space:normal;font-size:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.searchbox__input::-webkit-search-cancel-button,.searchbox__input::-webkit-search-decoration,.searchbox__input::-webkit-search-results-button,.searchbox__input::-webkit-search-results-decoration{display:none}.searchbox__input:hover{box-shadow:inset 0 0 0 1px #b3b3b3}.searchbox__input:active,.searchbox__input:focus{outline:0;box-shadow:inset 0 0 0 1px #aaa;background:#fff}.searchbox__input::-webkit-input-placeholder{color:#aaa}.searchbox__input:-ms-input-placeholder{color:#aaa}.searchbox__input::-ms-input-placeholder{color:#aaa}.searchbox__input::placeholder{color:#aaa}.searchbox__submit{position:absolute;top:0;margin:0;border:0;border-radius:16px 0 0 16px;background-color:rgba(69,142,225,0);padding:0;width:32px;height:100%;vertical-align:middle;text-align:center;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;right:inherit;left:0}.searchbox__submit:before{display:inline-block;margin-right:-4px;height:100%;vertical-align:middle;content:""}.searchbox__submit:active,.searchbox__submit:hover{cursor:pointer}.searchbox__submit:focus{outline:0}.searchbox__submit svg{width:14px;height:14px;vertical-align:middle;fill:#6d7e96}.searchbox__reset{display:block;position:absolute;top:8px;right:8px;margin:0;border:0;background:none;cursor:pointer;padding:0;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;fill:rgba(0,0,0,.5)}.searchbox__reset.hide{display:none}.searchbox__reset:focus{outline:0}.searchbox__reset svg{display:block;margin:4px;width:8px;height:8px}.searchbox__input:valid~.searchbox__reset{display:block;-webkit-animation-name:sbx-reset-in;animation-name:sbx-reset-in;-webkit-animation-duration:.15s;animation-duration:.15s}@-webkit-keyframes sbx-reset-in{0%{-webkit-transform:translate3d(-20%,0,0);transform:translate3d(-20%,0,0);opacity:0}to{-webkit-transform:none;transform:none;opacity:1}}@keyframes sbx-reset-in{0%{-webkit-transform:translate3d(-20%,0,0);transform:translate3d(-20%,0,0);opacity:0}to{-webkit-transform:none;transform:none;opacity:1}}.algolia-autocomplete.algolia-autocomplete-right .ds-dropdown-menu{right:0!important;left:inherit!important}.algolia-autocomplete.algolia-autocomplete-right .ds-dropdown-menu:before{right:48px}.algolia-autocomplete.algolia-autocomplete-left .ds-dropdown-menu{left:0!important;right:inherit!important}.algolia-autocomplete.algolia-autocomplete-left .ds-dropdown-menu:before{left:48px}.algolia-autocomplete .ds-dropdown-menu{top:-6px;border-radius:4px;margin:6px 0 0;padding:0;text-align:left;height:auto;position:relative;background:transparent;border:none;z-index:999;max-width:600px;min-width:500px;box-shadow:0 1px 0 0 rgba(0,0,0,.2),0 2px 3px 0 rgba(0,0,0,.1)}.algolia-autocomplete .ds-dropdown-menu:before{display:block;position:absolute;content:"";width:14px;height:14px;background:#fff;z-index:1000;top:-7px;border-top:1px solid #d9d9d9;border-right:1px solid #d9d9d9;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);border-radius:2px}.algolia-autocomplete .ds-dropdown-menu .ds-suggestions{position:relative;z-index:1000;margin-top:8px}.algolia-autocomplete .ds-dropdown-menu .ds-suggestions a:hover{text-decoration:none}.algolia-autocomplete .ds-dropdown-menu .ds-suggestion{cursor:pointer}.algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion.suggestion-layout-simple,.algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:rgba(69,142,225,.05)}.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{position:relative;border:1px solid #d9d9d9;background:#fff;border-radius:4px;overflow:auto;padding:0 8px 8px}.algolia-autocomplete .ds-dropdown-menu *{box-sizing:border-box}.algolia-autocomplete .algolia-docsearch-suggestion{display:block;position:relative;padding:0 8px;background:#fff;color:#02060c;overflow:hidden}.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#174d8c;background:rgba(143,187,237,.1);padding:.1em .05em}.algolia-autocomplete .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--category-header-lvl0 .algolia-docsearch-suggestion--highlight,.algolia-autocomplete .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--category-header-lvl1 .algolia-docsearch-suggestion--highlight,.algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{padding:0 0 1px;background:inherit;box-shadow:inset 0 -2px 0 0 rgba(69,142,225,.8);color:inherit}.algolia-autocomplete .algolia-docsearch-suggestion--content{display:block;float:right;width:70%;position:relative;padding:5.33333px 0 5.33333px 10.66667px;cursor:pointer}.algolia-autocomplete .algolia-docsearch-suggestion--content:before{content:"";position:absolute;display:block;top:0;height:100%;width:1px;background:#ddd;left:-1px}.algolia-autocomplete .algolia-docsearch-suggestion--category-header{position:relative;border-bottom:1px solid #ddd;display:none;margin-top:8px;padding:4px 0;font-size:1em;color:#33363d}.algolia-autocomplete .algolia-docsearch-suggestion--wrapper{width:100%;float:left;padding:8px 0 0}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column{float:left;width:30%;text-align:right;position:relative;padding:5.33333px 10.66667px;color:#a4a7ae;font-size:.9em;word-wrap:break-word}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column:before{content:"";position:absolute;display:block;top:0;height:100%;width:1px;background:#ddd;right:0}.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-inline{display:none}.algolia-autocomplete .algolia-docsearch-suggestion--title{margin-bottom:4px;color:#02060c;font-size:.9em;font-weight:700}.algolia-autocomplete .algolia-docsearch-suggestion--text{display:block;line-height:1.2em;font-size:.85em;color:#63676d}.algolia-autocomplete .algolia-docsearch-suggestion--no-results{width:100%;padding:8px 0;text-align:center;font-size:1.2em}.algolia-autocomplete .algolia-docsearch-suggestion--no-results:before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion code{padding:1px 5px;font-size:90%;border:none;color:#222;background-color:#ebebeb;border-radius:3px;font-family:Menlo,Monaco,Consolas,Courier New,monospace}.algolia-autocomplete .algolia-docsearch-suggestion code .algolia-docsearch-suggestion--highlight{background:none}.algolia-autocomplete .algolia-docsearch-suggestion.algolia-docsearch-suggestion__main .algolia-docsearch-suggestion--category-header,.algolia-autocomplete .algolia-docsearch-suggestion.algolia-docsearch-suggestion__secondary{display:block}@media (min-width:768px){.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{display:block}}@media (max-width:768px){.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{display:inline-block;width:auto;float:left;padding:0;color:#02060c;font-size:.9em;font-weight:700;text-align:left;opacity:.5}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:after{content:"|"}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content{display:inline-block;width:auto;text-align:left;float:left;padding:0}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content:before{display:none}}.algolia-autocomplete .suggestion-layout-simple.algolia-docsearch-suggestion{border-bottom:1px solid #eee;padding:8px;margin:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--content{width:100%;padding:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--content:before{display:none}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header{margin:0;padding:0;display:block;width:100%;border:none}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl0,.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl1{opacity:.6;font-size:.85em}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl1:before{background-image:url('data:image/svg+xml;utf8,');content:"";width:10px;height:10px;display:inline-block}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--wrapper{width:100%;float:left;margin:0;padding:0}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--duplicate-content,.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--subcategory-inline{display:none!important}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--title{margin:0;color:#458ee1;font-size:.9em;font-weight:400}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--title:before{content:"#";font-weight:700;color:#458ee1;display:inline-block}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--text{margin:4px 0 0;display:block;line-height:1.4em;padding:5.33333px 8px;background:#f8f8f8;font-size:.85em;opacity:.8}.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{color:#3f4145;font-weight:700;box-shadow:none}.algolia-autocomplete .algolia-docsearch-footer{width:134px;height:20px;z-index:2000;margin-top:10.66667px;float:right;font-size:0;line-height:0}.algolia-autocomplete .algolia-docsearch-footer--logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='168' height='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M78.988.938h16.594a2.968 2.968 0 0 1 2.966 2.966V20.5a2.967 2.967 0 0 1-2.966 2.964H78.988a2.967 2.967 0 0 1-2.966-2.964V3.897A2.961 2.961 0 0 1 78.988.938zm41.937 17.866c-4.386.02-4.386-3.54-4.386-4.106l-.007-13.336 2.675-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-10.846-2.18c.821 0 1.43-.047 1.855-.129v-2.719a6.334 6.334 0 0 0-1.574-.199 5.7 5.7 0 0 0-.897.069 2.699 2.699 0 0 0-.814.24c-.24.116-.439.28-.582.491-.15.212-.219.335-.219.656 0 .628.219.991.616 1.23s.938.362 1.615.362zm-.233-9.7c.883 0 1.629.109 2.231.328.602.218 1.088.525 1.444.915.363.396.609.922.76 1.483.157.56.232 1.175.232 1.85v6.874a32.5 32.5 0 0 1-1.868.314c-.834.123-1.772.185-2.813.185-.69 0-1.327-.069-1.895-.198a4.001 4.001 0 0 1-1.471-.636 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.803 0-.656.13-1.073.384-1.525a3.24 3.24 0 0 1 1.047-1.106c.445-.287.95-.492 1.532-.615a8.8 8.8 0 0 1 1.82-.185 8.404 8.404 0 0 1 1.972.24v-.438c0-.307-.035-.6-.11-.874a1.88 1.88 0 0 0-.384-.73 1.784 1.784 0 0 0-.724-.493 3.164 3.164 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.735 7.735 0 0 0-1.26.307l-.321-2.192c.335-.117.834-.233 1.478-.349a10.98 10.98 0 0 1 2.073-.178zm52.842 9.626c.822 0 1.43-.048 1.854-.13V13.7a6.347 6.347 0 0 0-1.574-.199c-.294 0-.595.021-.896.069a2.7 2.7 0 0 0-.814.24 1.46 1.46 0 0 0-.582.491c-.15.212-.218.335-.218.656 0 .628.218.991.615 1.23.404.245.938.362 1.615.362zm-.226-9.694c.883 0 1.629.108 2.231.327.602.219 1.088.526 1.444.915.355.39.609.923.759 1.483a6.8 6.8 0 0 1 .233 1.852v6.873c-.41.088-1.034.19-1.868.314-.834.123-1.772.184-2.813.184-.69 0-1.327-.068-1.895-.198a4.001 4.001 0 0 1-1.471-.635 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.804 0-.656.13-1.073.384-1.524.26-.45.608-.82 1.047-1.107.445-.286.95-.491 1.532-.614a8.803 8.803 0 0 1 2.751-.13c.329.034.671.096 1.04.185v-.437a3.3 3.3 0 0 0-.109-.875 1.873 1.873 0 0 0-.384-.731 1.784 1.784 0 0 0-.724-.492 3.165 3.165 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.75 7.75 0 0 0-1.26.307l-.321-2.193c.335-.116.834-.232 1.478-.348a11.633 11.633 0 0 1 2.073-.177zm-8.034-1.271a1.626 1.626 0 0 1-1.628-1.62c0-.895.725-1.62 1.628-1.62.904 0 1.63.725 1.63 1.62 0 .895-.733 1.62-1.63 1.62zm1.348 13.22h-2.689V7.27l2.69-.423v11.956zm-4.714 0c-4.386.02-4.386-3.54-4.386-4.107l-.008-13.336 2.676-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-8.698-5.903c0-1.156-.253-2.119-.746-2.788-.493-.677-1.183-1.01-2.067-1.01-.882 0-1.574.333-2.065 1.01-.493.676-.733 1.632-.733 2.788 0 1.168.246 1.953.74 2.63.492.683 1.183 1.018 2.066 1.018.882 0 1.574-.342 2.067-1.019.492-.683.738-1.46.738-2.63zm2.737-.007c0 .902-.13 1.584-.397 2.33a5.52 5.52 0 0 1-1.128 1.906 4.986 4.986 0 0 1-1.752 1.223c-.685.286-1.739.45-2.265.45-.528-.006-1.574-.157-2.252-.45a5.096 5.096 0 0 1-1.744-1.223c-.487-.527-.863-1.162-1.137-1.906a6.345 6.345 0 0 1-.41-2.33c0-.902.123-1.77.397-2.508a5.554 5.554 0 0 1 1.15-1.892 5.133 5.133 0 0 1 1.75-1.216c.679-.287 1.425-.423 2.232-.423.808 0 1.553.142 2.237.423a4.88 4.88 0 0 1 1.753 1.216 5.644 5.644 0 0 1 1.135 1.892c.287.738.431 1.606.431 2.508zm-20.138 0c0 1.12.246 2.363.738 2.882.493.52 1.13.78 1.91.78.424 0 .828-.062 1.204-.178.377-.116.677-.253.917-.417V9.33a10.476 10.476 0 0 0-1.766-.226c-.971-.028-1.71.37-2.23 1.004-.513.636-.773 1.75-.773 2.788zm7.438 5.274c0 1.824-.466 3.156-1.404 4.004-.936.846-2.367 1.27-4.296 1.27-.705 0-2.17-.137-3.34-.396l.431-2.118c.98.205 2.272.26 2.95.26 1.074 0 1.84-.219 2.299-.656.459-.437.684-1.086.684-1.948v-.437a8.07 8.07 0 0 1-1.047.397c-.43.13-.93.198-1.492.198-.739 0-1.41-.116-2.018-.349a4.206 4.206 0 0 1-1.567-1.025c-.431-.45-.774-1.017-1.013-1.694-.24-.677-.363-1.885-.363-2.773 0-.834.13-1.88.384-2.577.26-.696.629-1.298 1.129-1.796.493-.498 1.095-.881 1.8-1.162a6.605 6.605 0 0 1 2.428-.457c.87 0 1.67.109 2.45.24.78.129 1.444.265 1.985.415V18.17z' fill='%235468FF'/%3E%3Cpath d='M6.972 6.677v1.627c-.712-.446-1.52-.67-2.425-.67-.585 0-1.045.13-1.38.391a1.24 1.24 0 0 0-.502 1.03c0 .425.164.765.494 1.02.33.256.835.532 1.516.83.447.192.795.356 1.045.495.25.138.537.332.862.582.324.25.563.548.718.894.154.345.23.741.23 1.188 0 .947-.334 1.691-1.004 2.234-.67.542-1.537.814-2.601.814-1.18 0-2.16-.229-2.936-.686v-1.708c.84.628 1.814.942 2.92.942.585 0 1.048-.136 1.388-.407.34-.271.51-.646.51-1.125 0-.287-.1-.55-.302-.79-.203-.24-.42-.42-.655-.542-.234-.123-.585-.29-1.053-.503a61.27 61.27 0 0 1-.582-.271 13.67 13.67 0 0 1-.55-.287 4.275 4.275 0 0 1-.567-.351 6.92 6.92 0 0 1-.455-.4c-.18-.17-.31-.34-.39-.51-.08-.17-.155-.37-.224-.598a2.553 2.553 0 0 1-.104-.742c0-.915.333-1.638.998-2.17.664-.532 1.523-.798 2.576-.798.968 0 1.793.17 2.473.51zm7.468 5.696v-.287c-.022-.607-.187-1.088-.495-1.444-.309-.357-.75-.535-1.324-.535-.532 0-.99.194-1.373.583-.382.388-.622.949-.717 1.683h3.909zm1.005 2.792v1.404c-.596.34-1.383.51-2.362.51-1.255 0-2.255-.377-3-1.132-.744-.755-1.116-1.744-1.116-2.968 0-1.297.34-2.316 1.021-3.055.68-.74 1.548-1.11 2.6-1.11 1.033 0 1.852.323 2.458.966.606.644.91 1.572.91 2.784 0 .33-.033.676-.096 1.038h-5.314c.107.702.405 1.239.894 1.611.49.372 1.106.558 1.85.558.862 0 1.58-.202 2.155-.606zm6.605-1.77h-1.212c-.596 0-1.045.116-1.349.35-.303.234-.454.532-.454.894 0 .372.117.664.35.877.235.213.575.32 1.022.32.51 0 .912-.142 1.204-.424.293-.281.44-.651.44-1.108v-.91zm-4.068-2.554V9.325c.627-.361 1.457-.542 2.489-.542 2.116 0 3.175 1.026 3.175 3.08V17h-1.548v-.957c-.415.68-1.143 1.02-2.186 1.02-.766 0-1.38-.22-1.843-.661-.462-.442-.694-1.003-.694-1.684 0-.776.293-1.38.878-1.81.585-.431 1.404-.647 2.457-.647h1.34V11.8c0-.554-.133-.971-.399-1.253-.266-.282-.707-.423-1.324-.423a4.07 4.07 0 0 0-2.345.718zm9.333-1.93v1.42c.394-1 1.101-1.5 2.123-1.5.148 0 .313.016.494.048v1.531a1.885 1.885 0 0 0-.75-.143c-.542 0-.989.24-1.34.718-.351.479-.527 1.048-.527 1.707V17h-1.563V8.91h1.563zm5.01 4.084c.022.82.272 1.492.75 2.019.479.526 1.15.79 2.01.79.639 0 1.235-.176 1.788-.527v1.404c-.521.319-1.186.479-1.995.479-1.265 0-2.276-.4-3.031-1.197-.755-.798-1.133-1.792-1.133-2.984 0-1.16.38-2.151 1.14-2.975.761-.825 1.79-1.237 3.088-1.237.702 0 1.346.149 1.93.447v1.436a3.242 3.242 0 0 0-1.77-.495c-.84 0-1.513.266-2.019.798-.505.532-.758 1.213-.758 2.042zM40.24 5.72v4.579c.458-1 1.293-1.5 2.505-1.5.787 0 1.42.245 1.899.734.479.49.718 1.17.718 2.042V17h-1.564v-5.106c0-.553-.14-.98-.422-1.284-.282-.303-.652-.455-1.11-.455-.531 0-1.002.202-1.411.606-.41.405-.615 1.022-.615 1.851V17h-1.563V5.72h1.563zm14.966 10.02c.596 0 1.096-.253 1.5-.758.404-.506.606-1.157.606-1.955 0-.915-.202-1.62-.606-2.114-.404-.495-.92-.742-1.548-.742-.553 0-1.05.224-1.491.67-.442.447-.662 1.133-.662 2.058 0 .958.212 1.67.638 2.138.425.469.946.703 1.563.703zM53.004 5.72v4.42c.574-.894 1.388-1.341 2.44-1.341 1.022 0 1.857.383 2.506 1.149.649.766.973 1.781.973 3.047 0 1.138-.309 2.109-.925 2.912-.617.803-1.463 1.205-2.537 1.205-1.075 0-1.894-.447-2.457-1.34V17h-1.58V5.72h1.58zm9.908 11.104l-3.223-7.913h1.739l1.005 2.632 1.26 3.415c.096-.32.48-1.458 1.15-3.415l.909-2.632h1.66l-2.92 7.866c-.777 2.074-1.963 3.11-3.559 3.11a2.92 2.92 0 0 1-.734-.079v-1.34c.17.042.351.064.543.064 1.032 0 1.755-.57 2.17-1.708z' fill='%235D6494'/%3E%3Cpath d='M89.632 5.967v-.772a.978.978 0 0 0-.978-.977h-2.28a.978.978 0 0 0-.978.977v.793c0 .088.082.15.171.13a7.127 7.127 0 0 1 1.984-.28c.65 0 1.295.088 1.917.259.082.02.164-.04.164-.13m-6.248 1.01l-.39-.389a.977.977 0 0 0-1.382 0l-.465.465a.973.973 0 0 0 0 1.38l.383.383c.062.061.15.047.205-.014.226-.307.472-.601.746-.874.281-.28.568-.526.883-.751.068-.042.075-.137.02-.2m4.16 2.453v3.341c0 .096.104.165.192.117l2.97-1.537c.068-.034.089-.117.055-.184a3.695 3.695 0 0 0-3.08-1.866c-.068 0-.136.054-.136.13m0 8.048a4.489 4.489 0 0 1-4.49-4.482 4.488 4.488 0 0 1 4.49-4.482 4.488 4.488 0 0 1 4.489 4.482 4.484 4.484 0 0 1-4.49 4.482m0-10.85a6.363 6.363 0 1 0 0 12.729 6.37 6.37 0 0 0 6.372-6.368 6.358 6.358 0 0 0-6.371-6.36' fill='%23FFF'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:100%;overflow:hidden;text-indent:-9000px;padding:0!important;width:100%;height:100%;display:block} -/*# sourceMappingURL=docsearch.min.css.map */ -a.algolia-docsearch-suggestion { - text-decoration: none !important; -} -.algolia-docsearch-suggestion--category-header { - background: #0594cb; - padding-left: .25rem !important; - color: white !important; - border-radius: 3px; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_animation.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_animation.css deleted file mode 100644 index 997931ac4..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_animation.css +++ /dev/null @@ -1,21 +0,0 @@ -.animated { - animation-duration: .5s; - animation-fill-mode: forwards; - animation-timing-function: ease-in-out; -} - -@keyframes fadeIn { - from { - opacity: 0; - } - - to { - opacity: 1; - } -} -.fadeIn { - animation-name: fadeIn; -} -.animated-delay-1 { - animation-delay: 0.5s; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_carousel.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_carousel.css deleted file mode 100644 index 11fae8702..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_carousel.css +++ /dev/null @@ -1,25 +0,0 @@ -/* These styles enhance the home page carousel, located here: themes/gohugoioTheme/layouts/partials/home-page-sections/showcase.html */ -.overflow-x-scroll{ - -webkit-overflow-scrolling: touch; -} -.row { - transition: 450ms transform; - font-size: 0; -} -.tile { - transition: 450ms all; -} -.details { - background: -webkit-gradient(linear, left bottom, left top, from(rgba(0,0,0,0.9)), to(rgba(0,0,0,0))); - background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0) 100%); - transition: 450ms opacity; -} -.tile:hover .details { - opacity: 1; -} -.row:hover .tile { - opacity: 0.3; -} -.row:hover .tile:hover { - opacity: 1; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_code.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_code.css deleted file mode 100644 index 9906a13d0..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_code.css +++ /dev/null @@ -1,89 +0,0 @@ -.chroma .lntable pre { - padding: 0; - margin: 0; - border: 0; -} - -.chroma .lntable pre code { - padding: 0; - margin: 0; -} - -code { - padding: 2px 3px; - margin: 0; - font-size: 93.75%; - background-color: rgba(27,31,35,0.05); - border-radius: 3px; -} - -pre code { - display: block; - padding: 1.5em 1.5em; - font-size: .875rem; - line-height: 2; - overflow-x: auto; -} - -pre { - background-color: #fff; - color: #333; - white-space: pre; - hyphens: none; - position: relative; - border-width: 1px; - border-color: #ccc; - border-style: solid; -} - -/* The Pygments highlighter comes with its own styles. */ -.highlight pre { - background-color: inherit; - color: inherit; - padding: 0.5em; - font-size: .875rem; -} - - -/*We are adding the copy button content here so we can change it with javascript. See the "Clipboard scripts"*/ -.copy:after { - content: "Copy" -} -.copied:after { - content: "Copied" -} - -@media (--breakpoint-large) { - .full-width - { - /*width: 100vw; - position: relative; - left: 50%; - right: 50%; - margin-left: -50vw; - margin-right: -50vw;*/ - /*width: 60vw;*/ - /*position: relative; - left: 50%; - right: 50%;*/ - /*margin-left: -30vw;*/ - margin-right: -30vw; - max-width: 100vw; - } -} - -.code-block .line-numbers-rows { - background: #2f3a46; - border: none; - bottom: -50px; - color: #98a4b3; - left: -178px; - padding: 50px 0; - top: -50px; - width: 138px -} - -.code-block .line-numbers-rows>span:before { - color: inherit; - padding-right: 30px -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_color-scheme.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_color-scheme.css deleted file mode 100644 index 1d61a7725..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_color-scheme.css +++ /dev/null @@ -1,38 +0,0 @@ -.primary-color {color: var(--primary-color)} -.bg-primary-color {background-color: var(--primary-color)} -.hover-bg-primary-color:hover {background-color: var(--primary-color)} - -.primary-color-dark {color: var(--primary-color-dark)} -.bg-primary-color-dark {background-color: var(--primary-color-dark)} -.hover-bg-primary-color-dark:hover {background-color: var(--primary-color-dark)} - -.primary-color-light {color: var(--primary-color-light)} -.bg-primary-color-light {background-color: var(--primary-color-light)} -.hover-bg-primary-color-light:hover {background-color: var(--primary-color-light)} - -.accent-color {color: var(--accent-color)} -.bg-accent-color {background-color: var(--accent-color)} -.hover-bg-accent-color:hover {background-color: var(--accent-color)} - -.accent-color-light {color: var(--accent-color-light)} -.hover-accent-color-light:hover {color: var(--accent-color-light)} -.bg-accent-color-light {background-color: var(--accent-color-light)} -.hover-bg-accent-color-light:hover {background-color: var(--accent-color-light)} - -.accent-color-dark {color: var(--accent-color-dark)} -.bg-accent-color-dark {background-color: var(--accent-color-dark)} -.hover-bg-accent-color-dark:hover {background-color: var(--accent-color-dark)} - -.text-color-primary {color: var(--text-color-primary)} -.text-on-primary-color {color: var(--text-on-primary-color)} -.text-color-secondary {color: var(--text-color-secondary)} -.text-color-disabled {color: var(--text-color-disabled)} -.divider-color {color: var(--divider-color)} -.warn-color {color: var(--warn-color)} - - -.nested-links a { - color: var(--primary-color); - text-decoration: none; - -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_columns.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_columns.css deleted file mode 100644 index e1e938c74..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_columns.css +++ /dev/null @@ -1,11 +0,0 @@ -.column-count-2 {column-count: 1} -.column-gap-1 {column-gap: 0} -.break-inside-avoid {break-inside: auto} - - -@media (--breakpoint-large) { - .column-count-3-l {column-count: 3} - .column-count-2-l {column-count: 2} - .column-gap-1-l {column-gap: 1} - .break-inside-avoid-l {break-inside: avoid} -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_content-tables.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_content-tables.css deleted file mode 100644 index 4e092e8bf..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_content-tables.css +++ /dev/null @@ -1,28 +0,0 @@ -.prose table { - width: 100%; - margin-bottom: 3em; - border-collapse: collapse; - border-spacing: 0; - font-size: 1em; - border: 1px solid var(--light-gray); - & th { - background-color: var(--primary-color); - border-bottom: 1px solid var(--primary-color); - color: white; - font-weight: 400; - - text-align: left; - padding: .375em .5em; - } - - & td, & tc { - padding: .75em .5em; - text-align: left; - border-right: 1px solid var(--light-gray); - } - -} - -.prose table tr:nth-child(even) { - background-color: var(--light-gray); -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_content.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_content.css deleted file mode 100644 index 9306f8b2f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_content.css +++ /dev/null @@ -1,53 +0,0 @@ -.prose ul, .prose ol { - margin-bottom: 2em; -} -.prose ul li, .prose ol li { - margin-bottom: .5em; -} -.prose li:hover { - background-color: var(--light-gray) -} -.prose ::selection { - background: var(--primary-color); /* WebKit/Blink Browsers */ - color: white; -} - -.prose-glossary h3 { - margin-top: 0; - font-size: 1.125rem; -} - -.prose-glossary h3:first-of-type { - margin-top: 3em; -} - -.prose-glossary h3 ~ p { - margin: 0.5em 0 2em 0; -} - -body { - -line-height: 1.45; - -} - -p {margin-bottom: 1.3em;} - -h1, h2, h3, h4 { -margin: 1.414em 0 0.5em; - -line-height: 1.2; -} - -h1 { -margin-top: 0; -font-size: 2.441em; -} - -h2 {font-size: 1.953em;} - -h3 {font-size: 1.563em;} - -h4 {font-size: 1.25em;} - -small, .font_small {font-size: 0.8em;} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_definition-lists.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_definition-lists.css deleted file mode 100644 index e28f67d4b..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_definition-lists.css +++ /dev/null @@ -1,9 +0,0 @@ - -dl dt { - font-weight: bold; - font-size: 1.125rem; -} -dd { - margin: .5em 0 2em 0; - padding: 0; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_documentation-styles.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_documentation-styles.css deleted file mode 100644 index 0ea8e9b72..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_documentation-styles.css +++ /dev/null @@ -1,54 +0,0 @@ -.note, -.warning { - - border-left-width: 4px; - border-left-style: solid; - position: relative; - border-color: var(--primary-color); - - display: block; -} -.note #exclamation-icon, -.warning #exclamation-icon { - - fill: var(--primary-color); - position: absolute; - top: 35%; - left: -12px; - /*background-color: white;*/ -} - - .admonition-content { - display: block; - margin: 0px; - padding: .125em 1em; - /*margin-left: 1em;*/ - margin-top: 2em; - margin-bottom: 2em; - overflow-x: auto; - /*font-size: .9375em;*/ - background-color: var(--black-05); - } - - - .hide-child-menu .child-menu { - display: none; - } - .hide-child-menu:hover .child-menu, - .hide-child-menu:focus .child-menu, - .hide-child-menu:active .child-menu { - display: block; - } - - -/*documentation-copy headings exaggerate spacing and size to chunk content */ - .documentation-copy h2 { - margin-top: 3em; - &.minor { - font-size: inherit; - margin-top: inherit; - border-bottom: none; - } - } - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_fluid-type.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_fluid-type.css deleted file mode 100644 index da9f04c81..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_fluid-type.css +++ /dev/null @@ -1,10 +0,0 @@ -.f2-fluid { - font-size: 2.25rem; -} - -@media (--breakpoint-large) { - .f2-fluid { - font-size: 1.25rem; - font-size: calc(0.875rem + 0.5 * ((100vw - 20rem) / 60)); - } -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_font-family.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_font-family.css deleted file mode 100644 index 85b3b6c95..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_font-family.css +++ /dev/null @@ -1,74 +0,0 @@ -/* From https://www.cssfontstack.com */ -code, .code, pre code, .highlight pre { - font-family: 'inconsolata',Menlo,Monaco,'Courier New',monospace; -} - -.sans-serif { - font-family: 'Muli', Avenir, 'Helvetica Neue', Helvetica, Roboto, Noto, 'Segoe UI', Arial, sans-serif; -} - - -.serif { - font-family: Palatino,"Palatino Linotype","Palatino LT STD","Book Antiqua",Georgia,serif; -} - -/* Monospaced Typefaces (for code) */ - - -.courier { - font-family: 'Courier Next', - courier, - monospace; -} - - -/* Sans-Serif Typefaces */ - -.helvetica { - font-family: 'helvetica neue', helvetica, - sans-serif; -} - -.avenir { - font-family: 'avenir next', avenir, - sans-serif; -} - - -/* Serif Typefaces */ - -.athelas { - font-family: athelas, - georgia, - serif; -} - -.georgia { - font-family: georgia, - serif; -} - -.times { - font-family: times, - serif; -} - -.bodoni { - font-family: "Bodoni MT", - serif; -} - -.calisto { - font-family: "Calisto MT", - serif; -} - -.garamond { - font-family: garamond, - serif; -} - -.baskerville { - font-family: baskerville, - serif; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_header-link.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_header-link.css deleted file mode 100644 index 56a16be6d..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_header-link.css +++ /dev/null @@ -1,15 +0,0 @@ -.header-link:after { - position: relative; - left: 0.5em; - opacity: 0; - font-size: 0.8em; - -moz-transition: opacity 0.2s ease-in-out 0.1s; - -ms-transition: opacity 0.2s ease-in-out 0.1s; -} -h2:hover .header-link, -h3:hover .header-link, -h4:hover .header-link, -h5:hover .header-link, -h6:hover .header-link { - opacity: 1; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_hugo-internal-template-styling.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_hugo-internal-template-styling.css deleted file mode 100644 index 0b1df9610..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_hugo-internal-template-styling.css +++ /dev/null @@ -1,52 +0,0 @@ -/* pagination.html: https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/template_embedded.go#L117 */ -.pagination { - margin: 3rem 0; -} - -.pagination li { - display: inline-block; - margin-right: .375rem; - font-size: .875rem; - margin-bottom: 2.5em; -} -.pagination li a { - padding: .5rem .625rem; - background-color: white; - color: #333; - border: 1px solid #ddd; - border-radius: 3px; - text-decoration: none; -} -.pagination li.disabled { - display: none; -} -.pagination li.active a:link, -.pagination li.active a:active, -.pagination li.active a:visited { - background-color: #ddd; -} - -/* Hides non-meaningful TOC items*/ -#TableOfContents ul li ul li ul li{ - display: none; - } - - -#TableOfContents ul li { - color: black; - display: block; - margin-bottom: .375em; - line-height: 1.375; -} - -#TableOfContents ul li a{ - width: 100%; - padding: .25em .375em; - margin-left: -.375em; - -} -#TableOfContents ul li a:hover { - background-color: #999; - color: white; - -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_no-js.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_no-js.css deleted file mode 100644 index 7991450fe..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_no-js.css +++ /dev/null @@ -1,7 +0,0 @@ -.no-js .needs-js { - opacity: 0 -} -.js .needs-js { - opacity: 1; - transition: opacity .15s ease-in; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_print.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_print.css deleted file mode 100644 index c0be3af61..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_print.css +++ /dev/null @@ -1,7 +0,0 @@ -@media print { - #page-footer, - body > footer, - body > nav { - display: none; - } -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_right-sidebar.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_right-sidebar.css deleted file mode 100644 index 757457b2d..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_right-sidebar.css +++ /dev/null @@ -1,11 +0,0 @@ -#right-sidebar { - scrollbar-width: none; /* hide scrollbar: Firefox */ - -ms-overflow-style: none; /* hide scrollbar: Internet Explorer 10+ */ - height: calc(100vh - 9rem); - overflow-y: auto; -} - -#right-sidebar::-webkit-scrollbar { /* hide scrollbar: WebKit */ - width: 0; - height: 0; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_shame.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_shame.css deleted file mode 100644 index 30e0c412d..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_shame.css +++ /dev/null @@ -1,25 +0,0 @@ -/* -Make h6 elements behave like dt elements. Initially implemented to support -linkable glossary entries. - -Yes, it's a hack. That's why it's in the shame file. -*/ - -h6 { - margin-top: 0; - margin-bottom: 0; - font-size: 1.125rem; -} - -h6:first-of-type { - margin-top: 3em; -} - -h6 ~ p { - margin: 0.5em 0 2em 0; -} - -/* QR codes */ -img.qrcode { - width: initial; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_social-icons.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_social-icons.css deleted file mode 100644 index 6cfa7b1b4..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_social-icons.css +++ /dev/null @@ -1,52 +0,0 @@ -.facebook, -.twitter, -.instagram, -.youtube { - fill: #bababa; -} -.facebook:hover { - fill: #3b5998; -} - -.twitter { - fill: #55acee; -} - -.twitter:hover { - fill: #bababa; -} - -.instagram:hover { - fill: #e95950; -} - -.youtube:hover { - fill: #bb0000; -} - -.mstdn { - display: inline-block; - background-color: #282c37; - color: #d9e1e8; - text-decoration: none; - padding: 4px 10px 4px 30px; - border-radius: 4px; - font-size: 16px; - background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2261.076954mm%22%20height%3D%2265.47831mm%22%20viewBox%3D%220%200%20216.4144%20232.00976%22%3E%3Cpath%20d%3D%22M211.80734%20139.0875c-3.18125%2016.36625-28.4925%2034.2775-57.5625%2037.74875-15.15875%201.80875-30.08375%203.47125-45.99875%202.74125-26.0275-1.1925-46.565-6.2125-46.565-6.2125%200%202.53375.15625%204.94625.46875%207.2025%203.38375%2025.68625%2025.47%2027.225%2046.39125%2027.9425%2021.11625.7225%2039.91875-5.20625%2039.91875-5.20625l.8675%2019.09s-14.77%207.93125-41.08125%209.39c-14.50875.7975-32.52375-.365-53.50625-5.91875C9.23234%20213.82%201.40609%20165.31125.20859%20116.09125c-.365-14.61375-.14-28.39375-.14-39.91875%200-50.33%2032.97625-65.0825%2032.97625-65.0825C49.67234%203.45375%2078.20359.2425%20107.86484%200h.72875c29.66125.2425%2058.21125%203.45375%2074.8375%2011.09%200%200%2032.975%2014.7525%2032.975%2065.0825%200%200%20.41375%2037.13375-4.59875%2062.915%22%20fill%3D%22%233088d4%22%2F%3E%3Cpath%20d%3D%22M177.50984%2080.077v60.94125h-24.14375v-59.15c0-12.46875-5.24625-18.7975-15.74-18.7975-11.6025%200-17.4175%207.5075-17.4175%2022.3525v32.37625H96.20734V85.42325c0-14.845-5.81625-22.3525-17.41875-22.3525-10.49375%200-15.74%206.32875-15.74%2018.7975v59.15H38.90484V80.077c0-12.455%203.17125-22.3525%209.54125-29.675%206.56875-7.3225%2015.17125-11.07625%2025.85-11.07625%2012.355%200%2021.71125%204.74875%2027.8975%2014.2475l6.01375%2010.08125%206.015-10.08125c6.185-9.49875%2015.54125-14.2475%2027.8975-14.2475%2010.6775%200%2019.28%203.75375%2025.85%2011.07625%206.36875%207.3225%209.54%2017.22%209.54%2029.675%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"); - background-size: 16px; - background-repeat: no-repeat; - background-position: top 50% left 8px; - transition: all 0.5s; -} -.mstdn:hover { - background-color: #484c56; -} - -.mstdn > span { - color: #9baec8; - font-size: 12px; - padding-left: 3px; -} -.mstdn > span:before { - content: "@"; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_stickyheader.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_stickyheader.css deleted file mode 100644 index 7759bed96..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_stickyheader.css +++ /dev/null @@ -1,15 +0,0 @@ - -@media (min-width: 75em) { - - [data-scrolldir="down"] .sticky { - position: fixed; - top:100px; - right:0; - } - - [data-scrolldir="up"] .sticky { - position: fixed; - top:100px; - right:0; - } -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_svg.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_svg.css deleted file mode 100644 index 299a4a963..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_svg.css +++ /dev/null @@ -1 +0,0 @@ -.fill-current { fill: currentColor; } diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_tabs.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_tabs.css deleted file mode 100644 index 6e0022cc9..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_tabs.css +++ /dev/null @@ -1,34 +0,0 @@ -.tab-button{ - margin-bottom:1px; - position: relative; - z-index: 1; - color:#333; - border-color:#ccc; - outline: none; - background-color:white; -} -.tab-pane code{ - background:#f1f2f2; - border-radius:0; -} -.tab-pane .chroma{ - background:none; - padding:0; -} -.tab-button.active{ - border-bottom-color:#f1f2f2; - background-color: #f1f2f2; -} -.tab-content .tab-pane{ - display: none; -} -.tab-content .tab-pane.active{ - display: block; -} -/* Treatment of copy buttons inside a tab module */ -.tab-content .copy, .tab-content .copied{ - display: none; -} -.tab-content .tab-pane.active + .copy, .tab-content .tab-pane.active + .copied{ - display: block; -} \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_tachyons.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_tachyons.css deleted file mode 100644 index d697c4d85..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_tachyons.css +++ /dev/null @@ -1,94 +0,0 @@ -/*! TACHYONS v4.7.0 | http://tachyons.io */ - -/* - * NOTE: The Tachyons folder is for backup/reference only. This file references the module - * ________ ______ - * ___ __/_____ _________ /______ ______________________ - * __ / _ __ `/ ___/_ __ \_ / / / __ \_ __ \_ ___/ - * _ / / /_/ // /__ _ / / / /_/ // /_/ / / / /(__ ) - * /_/ \__,_/ \___/ /_/ /_/_\__, / \____//_/ /_//____/ - * /____/ - * - * TABLE OF CONTENTS - * - * 1. External Library Includes - * - Normalize.css | http://normalize.css.github.io - * 2. Tachyons Modules - * 3. Variables - * - Media Queries - * - Colors - * 4. Debugging - * - Debug all - * - Debug children - * - */ - - -/* External Library Includes */ -@import 'tachyons/src/_normalize'; - - -/* Modules */ -@import 'tachyons/src/_box-sizing'; -/*@import 'tachyons/src/_aspect-ratios';*/ -@import 'tachyons/src/_images'; -@import 'tachyons/src/_background-size'; -@import 'tachyons/src/_background-position'; -/*@import 'tachyons/src/_outlines';*/ -@import 'tachyons/src/_borders'; -@import 'tachyons/src/_border-colors'; -@import 'tachyons/src/_border-radius'; -@import 'tachyons/src/_border-style'; -@import 'tachyons/src/_border-widths'; -@import 'tachyons/src/_box-shadow'; -/*@import 'tachyons/src/_code';*/ -@import 'tachyons/src/_coordinates'; -@import 'tachyons/src/_clears'; -@import 'tachyons/src/_display'; -@import 'tachyons/src/_flexbox'; -@import 'tachyons/src/_floats'; -/*@import 'tachyons/src/_font-family';*/ -@import 'tachyons/src/_font-style'; -@import 'tachyons/src/_font-weight'; -@import 'tachyons/src/_forms'; -@import 'tachyons/src/_heights'; -@import 'tachyons/src/_letter-spacing'; -@import 'tachyons/src/_line-height'; -@import 'tachyons/src/_links'; -@import 'tachyons/src/_lists'; -@import 'tachyons/src/_max-widths'; -@import 'tachyons/src/_widths'; -@import 'tachyons/src/_overflow'; -@import 'tachyons/src/_position'; -@import 'tachyons/src/_opacity'; -/*@import 'tachyons/src/_rotations';*/ -@import 'tachyons/src/_skins'; -@import 'tachyons/src/_skins-pseudo'; -@import 'tachyons/src/_spacing'; -@import 'tachyons/src/_negative-margins'; -@import 'tachyons/src/_tables'; -@import 'tachyons/src/_text-decoration'; -@import 'tachyons/src/_text-align'; -@import 'tachyons/src/_text-transform'; -@import 'tachyons/src/_type-scale'; -@import 'tachyons/src/_typography'; -@import 'tachyons/src/_utilities'; -@import 'tachyons/src/_visibility'; -@import 'tachyons/src/_white-space'; -@import 'tachyons/src/_vertical-align'; -@import 'tachyons/src/_hovers'; -@import 'tachyons/src/_z-index'; -@import 'tachyons/src/_nested'; -/*@import 'tachyons/src/_styles';*/ - -/* Variables */ -/* Importing here will allow you to override any variables in the modules */ -@import 'tachyons/src/_colors'; -@import 'tachyons/src/_media-queries'; - -/* Debugging */ -/*@import 'tachyons/src/_debug-children'; -@import 'tachyons/src/_debug-grid';*/ - -/* Uncomment out the line below to help debug layout issues */ -/* @import 'tachyons/src/_debug'; */ diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_variables.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_variables.css deleted file mode 100644 index 8701b1530..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/_variables.css +++ /dev/null @@ -1,16 +0,0 @@ -:root { - --primary-color: #0594CB; - --primary-color-dark: #0A1922; - --primary-color-light: #f9f9f9; - --accent-color: #EBB951; - --accent-color-light: #FF4088; - --accent-color-dark: #33ba91; - --text-color-primary: #373737; - --text-on-primary-color: #fff; - --text-color-secondary: #ccc; - --text-color-disabled: #F7f7f7; - --divider-color: #f6f6f6; - --warn-color: red; - - --blue: var(--primary-color); -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/main.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/main.css deleted file mode 100644 index fd0f2a503..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/css/main.css +++ /dev/null @@ -1,39 +0,0 @@ -/*Base Styles*/ -@import '_tachyons'; - -/* purgecss start ignore */ -@import '_header-link'; -@import '_animation'; -@import '_documentation-styles'; - -@import 'docsearch.js/dist/cdn/docsearch.min'; -@import '_carousel'; -@import '_code'; -@import '_tabs'; -@import '_color-scheme'; -@import '_columns'; -@import '_content'; -@import '_content-tables'; -@import '_definition-lists'; -@import '_fluid-type'; -@import '_font-family'; -@import '_hugo-internal-template-styling'; -@import '_no-js'; -@import '_social-icons'; -@import '_stickyheader'; -@import '_right-sidebar'; -@import '_svg'; -@import '_chroma'; -@import '_variables'; -@import '_print'; -@import '_shame'; - -.nested-blockquote blockquote { - border-left: 4px solid var(--primary-color); - padding-left: 1em; -} - -.mw-90 { - max-width:90%; -} -/* purgecss end ignore */ diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/images/sponsors/linode-logo.svg b/_vendor/github.com/gohugoio/gohugoioTheme/assets/images/sponsors/linode-logo.svg deleted file mode 100644 index 7060e856f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/images/sponsors/linode-logo.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/index.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/index.js deleted file mode 100644 index c89af041b..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/index.js +++ /dev/null @@ -1,10 +0,0 @@ -require('typeface-muli'); -import styles from './css/main.css'; -import './js/clipboardjs.js'; -import './js/docsearch.js'; -import './js/lazysizes.js'; -import './js/menutoggle.js'; -import './js/scrolldir.js'; -import './js/smoothscroll.js'; -import './js/tabs.js'; -import './js/nojs.js'; diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/clipboardjs.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/clipboardjs.js deleted file mode 100644 index ffae31c7f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/clipboardjs.js +++ /dev/null @@ -1,30 +0,0 @@ -var Clipboard = require('clipboard/dist/clipboard.js'); -new Clipboard('.copy', { - target: function(trigger) { - if(trigger.classList.contains('copy-toggle')){ - return trigger.previousElementSibling; - } - return trigger.nextElementSibling; - } - }).on('success', function(e) { - successMessage(e.trigger, 'Copied!'); - e.clearSelection(); - }).on('error', function(e) { - successMessage(e.trigger, fallbackMessage(e.action)); -}); - -function successMessage(elem, msg) { - elem.setAttribute('class', 'copied bg-primary-color-dark f6 absolute top-0 right-0 lh-solid hover-bg-primary-color-dark bn white ph3 pv2'); - elem.setAttribute('aria-label', msg); -} - -function fallbackMessage(elem, action) { - var actionMsg = ''; - var actionKey = (action === 'cut' ? 'X' : 'C'); - if (isMac) { - actionMsg = 'Press ⌘-' + actionKey; - } else { - actionMsg = 'Press Ctrl-' + actionKey; - } - return actionMsg; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/docsearch.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/docsearch.js deleted file mode 100644 index e14fb2994..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/docsearch.js +++ /dev/null @@ -1,8 +0,0 @@ -var docsearch = require('docsearch.js/dist/cdn/docsearch.js'); -docsearch({ - appId: 'D1BPLZHGYQ', - apiKey: '6df94e1e5d55d258c56f60d974d10314', - indexName: 'hugodocs', - inputSelector: '#search-input', - debug: true, // Set debug to true if you want to inspect the dropdown -}); diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/filesaver.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/filesaver.js deleted file mode 100644 index e69de29bb..000000000 diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/lazysizes.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/lazysizes.js deleted file mode 100644 index 4eb3950af..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/lazysizes.js +++ /dev/null @@ -1,3 +0,0 @@ -var lazysizes = require('lazysizes'); -// var lsnoscript = require('lazysizes/plugins/noscript/ls.noscript.js'); -var unveilhooks = require('lazysizes/plugins/unveilhooks/ls.unveilhooks.js'); diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/main.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/main.js deleted file mode 100644 index f6d3eac9f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/main.js +++ /dev/null @@ -1,22 +0,0 @@ -import styles from './../css/main.css'; -import './clipboardjs.js' -import './codeblocks.js' -import './docsearch.js' -import './lazysizes.js' -import './menutoggle.js' -import './scrolldir.js' -import './smoothscroll.js' -import './tabs.js' -import './nojs.js' - -// TO use jQuery, just call the modules you want -// var $ = require('jquery/src/core'); -// require('jquery/src/core/init'); -// require('jquery/src/manipulation'); - -// OR, use all of them -// var $ = require('jquery/src/jquery'); - -// And write your code -// $('body').append('

Jquery is working

'); -// diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/menutoggle.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/menutoggle.js deleted file mode 100644 index 40bda0ce9..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/menutoggle.js +++ /dev/null @@ -1,31 +0,0 @@ -// Grab any element that has the 'js-toggle' class and add an event listener for the toggleClass function -var toggleBtns = document.getElementsByClassName('js-toggle') - for (var i = 0; i < toggleBtns.length; i++) { - toggleBtns[i].addEventListener('click', toggleClass, false) - } - -function toggleClass() { - // Define the data target via the dataset "target" (e.g. data-target=".docsmenu") - var content = this.dataset.target.split(' ') - // Find any menu items that are open - var mobileCurrentlyOpen = document.querySelector('.mobilemenu:not(.dn)') - var desktopCurrentlyOpen = document.querySelector('.desktopmenu:not(.dn)') - var desktopActive = document.querySelector('.desktopmenu:not(.dn)') - - // Loop through the targets' divs - for (var i = 0; i < content.length; i++) { - var matches = document.querySelectorAll(content[i]); - //for each, if the div has the 'dn' class (which is "display:none;"), remove it, otherwise, add that class - [].forEach.call(matches, function(dom) { - dom.classList.contains('dn') ? - dom.classList.remove('dn') : - dom.classList.add('dn'); - return false; - }); - // close the currently open menu items - if (mobileCurrentlyOpen) mobileCurrentlyOpen.classList.add('dn') - if (desktopCurrentlyOpen) desktopCurrentlyOpen.classList.add('dn') - if (desktopActive) desktopActive.classList.remove('db') - - } - } diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/nojs.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/nojs.js deleted file mode 100644 index 50b5126a9..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/nojs.js +++ /dev/null @@ -1 +0,0 @@ -document.documentElement.className = document.documentElement.className.replace(/\bno-js\b/, 'js'); diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/scrolldir.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/scrolldir.js deleted file mode 100644 index 0b69978cd..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/scrolldir.js +++ /dev/null @@ -1 +0,0 @@ -var scrollDir = require('scrolldir/dist/scrolldir.auto.min.js'); diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/smoothscroll.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/smoothscroll.js deleted file mode 100644 index 4bb2d99b8..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/smoothscroll.js +++ /dev/null @@ -1,80 +0,0 @@ -// query selector targets Hugo TOC -(function() { - - 'use strict'; - - // Feature Test - if ('querySelector' in document && 'addEventListener' in window && Array.prototype.forEach) { - - // Function to animate the scroll - var smoothScroll = function(anchor, duration) { - - // Calculate how far and how fast to scroll - var startLocation = window.pageYOffset; - var endLocation = anchor.offsetTop; - var distance = endLocation - startLocation; - var increments = distance / (duration / 16); - var stopAnimation; - - // Scroll the page by an increment, and check if it's time to stop - var animateScroll = function() { - window.scrollBy(0, increments); - stopAnimation(); - }; - - // If scrolling down - if (increments >= 0) { - // Stop animation when you reach the anchor OR the bottom of the page - stopAnimation = function() { - var travelled = window.pageYOffset; - if ((travelled >= (endLocation - increments)) || ((window.innerHeight + travelled) >= document.body.offsetHeight)) { - clearInterval(runAnimation); - } - }; - } - // If scrolling up - else { - // Stop animation when you reach the anchor OR the top of the page - stopAnimation = function() { - var travelled = window.pageYOffset; - if (travelled <= (endLocation || 0)) { - clearInterval(runAnimation); - } - }; - } - - // Loop the animation function - var runAnimation = setInterval(animateScroll, 16); - - }; - - // Define smooth scroll links - var scrollToggle = document.querySelectorAll('#TableOfContents ul li a'); - - // For each smooth scroll link - [].forEach.call(scrollToggle, function(toggle) { - - // When the smooth scroll link is clicked - toggle.addEventListener('click', function(e) { - - // Prevent the default link behavior - e.preventDefault(); - - // Get anchor link and calculate distance from the top - var dataID = toggle.getAttribute('href'); - var dataTarget = document.querySelector(dataID); - var dataSpeed = toggle.getAttribute('data-speed'); - - // If the anchor exists - if (dataTarget) { - // Scroll to the anchor - smoothScroll(dataTarget, dataSpeed || 500); - } - - }, false); - - }); - - } - -})(); diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js deleted file mode 100644 index a689d474e..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/js/tabs.js +++ /dev/null @@ -1,43 +0,0 @@ -/** - * Scripts which manages Code Toggle tabs. - */ -var i; -// store tabs variable -var allTabs = document.querySelectorAll("[data-toggle-tab]"); -var allPanes = document.querySelectorAll("[data-pane]"); - -function toggleTabs(event) { - - if(event.target){ - event.preventDefault(); - var clickedTab = event.currentTarget; - var targetKey = clickedTab.getAttribute("data-toggle-tab") - }else { - var targetKey = event - } - // We store the config language selected in users' localStorage - if(window.localStorage){ - window.localStorage.setItem("configLangPref", targetKey) - } - var selectedTabs = document.querySelectorAll("[data-toggle-tab='" + targetKey + "']"); - var selectedPanes = document.querySelectorAll("[data-pane='" + targetKey + "']"); - - for (var i = 0; i < allTabs.length; i++) { - allTabs[i].classList.remove("active"); - allPanes[i].classList.remove("active"); - } - - for (var i = 0; i < selectedTabs.length; i++) { - selectedTabs[i].classList.add("active"); - selectedPanes[i].classList.add("active"); - } - -} - -for (i = 0; i < allTabs.length; i++) { - allTabs[i].addEventListener("click", toggleTabs) -} -// Upon page load, if user has a preferred language in its localStorage, tabs are set to it. -if(window.localStorage.getItem('configLangPref')) { - toggleTabs(window.localStorage.getItem('configLangPref')) -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/output/css/app.css b/_vendor/github.com/gohugoio/gohugoioTheme/assets/output/css/app.css deleted file mode 100644 index 4fd374a1f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/output/css/app.css +++ /dev/null @@ -1,5349 +0,0 @@ -/* muli-200normal - latin */ -@font-face { - font-family: 'Muli'; - font-style: normal; - font-display: swap; - font-weight: 200; - src: - local('Muli Extra Light '), - local('Muli-Extra Light'), - url(/fonts/muli-latin-200.woff2) format('woff2'), - url(/fonts/muli-latin-200.woff) format('woff'); /* Modern Browsers */ -} -/* muli-200italic - latin */ -@font-face { - font-family: 'Muli'; - font-style: italic; - font-display: swap; - font-weight: 200; - src: - local('Muli Extra Light italic'), - local('Muli-Extra Lightitalic'), - url(/fonts/muli-latin-200italic.woff2) format('woff2'), - url(/fonts/muli-latin-200italic.woff) format('woff'); /* Modern Browsers */ -} -/* muli-300normal - latin */ -@font-face { - font-family: 'Muli'; - font-style: normal; - font-display: swap; - font-weight: 300; - src: - local('Muli Light '), - local('Muli-Light'), - url(/fonts/muli-latin-300.woff2) format('woff2'), - url(/fonts/muli-latin-300.woff) format('woff'); /* Modern Browsers */ -} -/* muli-300italic - latin */ -@font-face { - font-family: 'Muli'; - font-style: italic; - font-display: swap; - font-weight: 300; - src: - local('Muli Light italic'), - local('Muli-Lightitalic'), - url(/fonts/muli-latin-300italic.woff2) format('woff2'), - url(/fonts/muli-latin-300italic.woff) format('woff'); /* Modern Browsers */ -} -/* muli-400normal - latin */ -@font-face { - font-family: 'Muli'; - font-style: normal; - font-display: swap; - font-weight: 400; - src: - local('Muli Regular '), - local('Muli-Regular'), - url(/fonts/muli-latin-400.woff2) format('woff2'), - url(/fonts/muli-latin-400.woff) format('woff'); /* Modern Browsers */ -} -/* muli-400italic - latin */ -@font-face { - font-family: 'Muli'; - font-style: italic; - font-display: swap; - font-weight: 400; - src: - local('Muli Regular italic'), - local('Muli-Regularitalic'), - url(/fonts/muli-latin-400italic.woff2) format('woff2'), - url(/fonts/muli-latin-400italic.woff) format('woff'); /* Modern Browsers */ -} -/* muli-600normal - latin */ -@font-face { - font-family: 'Muli'; - font-style: normal; - font-display: swap; - font-weight: 600; - src: - local('Muli SemiBold '), - local('Muli-SemiBold'), - url(/fonts/muli-latin-600.woff2) format('woff2'), - url(/fonts/muli-latin-600.woff) format('woff'); /* Modern Browsers */ -} -/* muli-600italic - latin */ -@font-face { - font-family: 'Muli'; - font-style: italic; - font-display: swap; - font-weight: 600; - src: - local('Muli SemiBold italic'), - local('Muli-SemiBolditalic'), - url(/fonts/muli-latin-600italic.woff2) format('woff2'), - url(/fonts/muli-latin-600italic.woff) format('woff'); /* Modern Browsers */ -} -/* muli-700normal - latin */ -@font-face { - font-family: 'Muli'; - font-style: normal; - font-display: swap; - font-weight: 700; - src: - local('Muli Bold '), - local('Muli-Bold'), - url(/fonts/muli-latin-700.woff2) format('woff2'), - url(/fonts/muli-latin-700.woff) format('woff'); /* Modern Browsers */ -} -/* muli-700italic - latin */ -@font-face { - font-family: 'Muli'; - font-style: italic; - font-display: swap; - font-weight: 700; - src: - local('Muli Bold italic'), - local('Muli-Bolditalic'), - url(/fonts/muli-latin-700italic.woff2) format('woff2'), - url(/fonts/muli-latin-700italic.woff) format('woff'); /* Modern Browsers */ -} -/* muli-800normal - latin */ -@font-face { - font-family: 'Muli'; - font-style: normal; - font-display: swap; - font-weight: 800; - src: - local('Muli ExtraBold '), - local('Muli-ExtraBold'), - url(/fonts/muli-latin-800.woff2) format('woff2'), - url(/fonts/muli-latin-800.woff) format('woff'); /* Modern Browsers */ -} -/* muli-800italic - latin */ -@font-face { - font-family: 'Muli'; - font-style: italic; - font-display: swap; - font-weight: 800; - src: - local('Muli ExtraBold italic'), - local('Muli-ExtraBolditalic'), - url(/fonts/muli-latin-800italic.woff2) format('woff2'), - url(/fonts/muli-latin-800italic.woff) format('woff'); /* Modern Browsers */ -} -/* muli-900normal - latin */ -@font-face { - font-family: 'Muli'; - font-style: normal; - font-display: swap; - font-weight: 900; - src: - local('Muli Black '), - local('Muli-Black'), - url(/fonts/muli-latin-900.woff2) format('woff2'), - url(/fonts/muli-latin-900.woff) format('woff'); /* Modern Browsers */ -} -/* muli-900italic - latin */ -@font-face { - font-family: 'Muli'; - font-style: italic; - font-display: swap; - font-weight: 900; - src: - local('Muli Black italic'), - local('Muli-Blackitalic'), - url(/fonts/muli-latin-900italic.woff2) format('woff2'), - url(/fonts/muli-latin-900italic.woff) format('woff'); /* Modern Browsers */ -} - - -/*Base Styles*/ -/*! TACHYONS v4.7.0 | http://tachyons.io */ -/* - * NOTE: The Tachyons folder is for backup/reference only. This file references the module - * ________ ______ - * ___ __/_____ _________ /______ ______________________ - * __ / _ __ `/ ___/_ __ \_ / / / __ \_ __ \_ ___/ - * _ / / /_/ // /__ _ / / / /_/ // /_/ / / / /(__ ) - * /_/ \__,_/ \___/ /_/ /_/_\__, / \____//_/ /_//____/ - * /____/ - * - * TABLE OF CONTENTS - * - * 1. External Library Includes - * - Normalize.css | http://normalize.css.github.io - * 2. Tachyons Modules - * 3. Variables - * - Media Queries - * - Colors - * 4. Debugging - * - Debug all - * - Debug children - * - */ -/* External Library Includes */ -/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */ -/* Document - ========================================================================== */ -/** - * 1. Correct the line height in all browsers. - * 2. Prevent adjustments of font size after orientation changes in iOS. - */ -html { - line-height: 1.15; /* 1 */ - -webkit-text-size-adjust: 100%; /* 2 */ -} -/* Sections - ========================================================================== */ -/** - * Remove the margin in all browsers. - */ -body { - margin: 0; -} -/** - * Correct the font size and margin on `h1` elements within `section` and - * `article` contexts in Chrome, Firefox, and Safari. - */ -h1 { - font-size: 2em; - margin: 0.67em 0; -} -/* Grouping content - ========================================================================== */ -/** - * 1. Add the correct box sizing in Firefox. - * 2. Show the overflow in Edge and IE. - */ -hr { - -webkit-box-sizing: content-box; - box-sizing: content-box; /* 1 */ - height: 0; /* 1 */ - overflow: visible; /* 2 */ -} -/** - * 1. Correct the inheritance and scaling of font size in all browsers. - * 2. Correct the odd `em` font sizing in all browsers. - */ -pre { - font-family: monospace, monospace; /* 1 */ - font-size: 1em; /* 2 */ -} -/* Text-level semantics - ========================================================================== */ -/** - * Remove the gray background on active links in IE 10. - */ -a { - background-color: transparent; -} -/** - * 1. Remove the bottom border in Chrome 57- - * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. - */ -abbr[title] { - border-bottom: none; /* 1 */ - text-decoration: underline; /* 2 */ - -webkit-text-decoration: underline dotted; - text-decoration: underline dotted; /* 2 */ -} -/** - * Add the correct font weight in Chrome, Edge, and Safari. - */ -b, -strong { - font-weight: bolder; -} -/** - * 1. Correct the inheritance and scaling of font size in all browsers. - * 2. Correct the odd `em` font sizing in all browsers. - */ -code, -kbd, -samp { - font-family: monospace, monospace; /* 1 */ - font-size: 1em; /* 2 */ -} -/** - * Add the correct font size in all browsers. - */ -small { - font-size: 80%; -} -/** - * Prevent `sub` and `sup` elements from affecting the line height in - * all browsers. - */ -sub, -sup { - font-size: 75%; - line-height: 0; - position: relative; - vertical-align: baseline; -} -sub { - bottom: -0.25em; -} -sup { - top: -0.5em; -} -/* Embedded content - ========================================================================== */ -/** - * Remove the border on images inside links in IE 10. - */ -img { - border-style: none; -} -/* Forms - ========================================================================== */ -/** - * 1. Change the font styles in all browsers. - * 2. Remove the margin in Firefox and Safari. - */ -button, -input, -optgroup, -select, -textarea { - font-family: inherit; /* 1 */ - font-size: 100%; /* 1 */ - line-height: 1.15; /* 1 */ - margin: 0; /* 2 */ -} -/** - * Show the overflow in IE. - * 1. Show the overflow in Edge. - */ -button, -input { /* 1 */ - overflow: visible; -} -/** - * Remove the inheritance of text transform in Edge, Firefox, and IE. - * 1. Remove the inheritance of text transform in Firefox. - */ -button, -select { /* 1 */ - text-transform: none; -} -/** - * Correct the inability to style clickable types in iOS and Safari. - */ -button, -[type="button"], -[type="reset"], -[type="submit"] { - -webkit-appearance: button; -} -/** - * Remove the inner border and padding in Firefox. - */ -button::-moz-focus-inner, -[type="button"]::-moz-focus-inner, -[type="reset"]::-moz-focus-inner, -[type="submit"]::-moz-focus-inner { - border-style: none; - padding: 0; -} -/** - * Restore the focus styles unset by the previous rule. - */ -button:-moz-focusring, -[type="button"]:-moz-focusring, -[type="reset"]:-moz-focusring, -[type="submit"]:-moz-focusring { - outline: 1px dotted ButtonText; -} -/** - * Correct the padding in Firefox. - */ -fieldset { - padding: 0.35em 0.75em 0.625em; -} -/** - * 1. Correct the text wrapping in Edge and IE. - * 2. Correct the color inheritance from `fieldset` elements in IE. - * 3. Remove the padding so developers are not caught out when they zero out - * `fieldset` elements in all browsers. - */ -legend { - -webkit-box-sizing: border-box; - box-sizing: border-box; /* 1 */ - color: inherit; /* 2 */ - display: table; /* 1 */ - max-width: 100%; /* 1 */ - padding: 0; /* 3 */ - white-space: normal; /* 1 */ -} -/** - * Add the correct vertical alignment in Chrome, Firefox, and Opera. - */ -progress { - vertical-align: baseline; -} -/** - * Remove the default vertical scrollbar in IE 10+. - */ -textarea { - overflow: auto; -} -/** - * 1. Add the correct box sizing in IE 10. - * 2. Remove the padding in IE 10. - */ -[type="checkbox"], -[type="radio"] { - -webkit-box-sizing: border-box; - box-sizing: border-box; /* 1 */ - padding: 0; /* 2 */ -} -/** - * Correct the cursor style of increment and decrement buttons in Chrome. - */ -[type="number"]::-webkit-inner-spin-button, -[type="number"]::-webkit-outer-spin-button { - height: auto; -} -/** - * 1. Correct the odd appearance in Chrome and Safari. - * 2. Correct the outline style in Safari. - */ -[type="search"] { - -webkit-appearance: textfield; /* 1 */ - outline-offset: -2px; /* 2 */ -} -/** - * Remove the inner padding in Chrome and Safari on macOS. - */ -[type="search"]::-webkit-search-decoration { - -webkit-appearance: none; -} -/** - * 1. Correct the inability to style clickable types in iOS and Safari. - * 2. Change font properties to `inherit` in Safari. - */ -::-webkit-file-upload-button { - -webkit-appearance: button; /* 1 */ - font: inherit; /* 2 */ -} -/* Interactive - ========================================================================== */ -/* - * Add the correct display in Edge, IE 10+, and Firefox. - */ -details { - display: block; -} -/* - * Add the correct display in all browsers. - */ -summary { - display: list-item; -} -/* Misc - ========================================================================== */ -/** - * Add the correct display in IE 10+. - */ -template { - display: none; -} -/** - * Add the correct display in IE 10. - */ -[hidden] { - display: none; -} -/* Modules */ -/* - - BOX SIZING - -*/ -html, -body, -div, -article, -aside, -section, -main, -nav, -footer, -header, -form, -fieldset, -legend, -pre, -code, -a, -h1,h2,h3,h4,h5,h6, -p, -ul, -ol, -li, -dl, -dt, -dd, -blockquote, -figcaption, -figure, -textarea, -table, -td, -th, -tr, -input[type="email"], -input[type="number"], -input[type="password"], -input[type="tel"], -input[type="text"], -input[type="url"], -.border-box { - -webkit-box-sizing: border-box; - box-sizing: border-box; -} -/*@import 'tachyons/src/_aspect-ratios';*/ -/* - - IMAGES - Docs: http://tachyons.io/docs/elements/images/ - -*/ -/* Responsive images! */ -img { max-width: 100%; } -/* - - BACKGROUND SIZE - Docs: http://tachyons.io/docs/themes/background-size/ - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -/* - Often used in combination with background image set as an inline style - on an html element. -*/ -.cover { background-size: cover!important; } -.contain { background-size: contain!important; } -@media screen and (min-width: 30em) { - .cover-ns { background-size: cover!important; } - .contain-ns { background-size: contain!important; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .cover-m { background-size: cover!important; } - .contain-m { background-size: contain!important; } -} -@media screen and (min-width: 60em) { - .cover-l { background-size: cover!important; } - .contain-l { background-size: contain!important; } -} -/* - - BACKGROUND POSITION - - Base: - bg = background - - Modifiers: - -center = center center - -top = top center - -right = center right - -bottom = bottom center - -left = center left - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - - */ -.bg-center { - background-repeat: no-repeat; - background-position: center center; -} -.bg-top { - background-repeat: no-repeat; - background-position: top center; -} -.bg-right { - background-repeat: no-repeat; - background-position: center right; -} -.bg-bottom { - background-repeat: no-repeat; - background-position: bottom center; -} -.bg-left { - background-repeat: no-repeat; - background-position: center left; -} -@media screen and (min-width: 30em) { - .bg-center-ns { - background-repeat: no-repeat; - background-position: center center; - } - - .bg-top-ns { - background-repeat: no-repeat; - background-position: top center; - } - - .bg-right-ns { - background-repeat: no-repeat; - background-position: center right; - } - - .bg-bottom-ns { - background-repeat: no-repeat; - background-position: bottom center; - } - - .bg-left-ns { - background-repeat: no-repeat; - background-position: center left; - } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .bg-center-m { - background-repeat: no-repeat; - background-position: center center; - } - - .bg-top-m { - background-repeat: no-repeat; - background-position: top center; - } - - .bg-right-m { - background-repeat: no-repeat; - background-position: center right; - } - - .bg-bottom-m { - background-repeat: no-repeat; - background-position: bottom center; - } - - .bg-left-m { - background-repeat: no-repeat; - background-position: center left; - } -} -@media screen and (min-width: 60em) { - .bg-center-l { - background-repeat: no-repeat; - background-position: center center; - } - - .bg-top-l { - background-repeat: no-repeat; - background-position: top center; - } - - .bg-right-l { - background-repeat: no-repeat; - background-position: center right; - } - - .bg-bottom-l { - background-repeat: no-repeat; - background-position: bottom center; - } - - .bg-left-l { - background-repeat: no-repeat; - background-position: center left; - } -} -/*@import 'tachyons/src/_outlines';*/ -/* - - BORDERS - Docs: http://tachyons.io/docs/themes/borders/ - - Base: - b = border - - Modifiers: - a = all - t = top - r = right - b = bottom - l = left - n = none - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.ba { border-style: solid; border-width: 1px; } -.bt { border-top-style: solid; border-top-width: 1px; } -.br { border-right-style: solid; border-right-width: 1px; } -.bb { border-bottom-style: solid; border-bottom-width: 1px; } -.bl { border-left-style: solid; border-left-width: 1px; } -.bn { border-style: none; border-width: 0; } -@media screen and (min-width: 30em) { - .ba-ns { border-style: solid; border-width: 1px; } - .bt-ns { border-top-style: solid; border-top-width: 1px; } - .br-ns { border-right-style: solid; border-right-width: 1px; } - .bb-ns { border-bottom-style: solid; border-bottom-width: 1px; } - .bl-ns { border-left-style: solid; border-left-width: 1px; } - .bn-ns { border-style: none; border-width: 0; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .ba-m { border-style: solid; border-width: 1px; } - .bt-m { border-top-style: solid; border-top-width: 1px; } - .br-m { border-right-style: solid; border-right-width: 1px; } - .bb-m { border-bottom-style: solid; border-bottom-width: 1px; } - .bl-m { border-left-style: solid; border-left-width: 1px; } - .bn-m { border-style: none; border-width: 0; } -} -@media screen and (min-width: 60em) { - .ba-l { border-style: solid; border-width: 1px; } - .bt-l { border-top-style: solid; border-top-width: 1px; } - .br-l { border-right-style: solid; border-right-width: 1px; } - .bb-l { border-bottom-style: solid; border-bottom-width: 1px; } - .bl-l { border-left-style: solid; border-left-width: 1px; } - .bn-l { border-style: none; border-width: 0; } -} -/* - - BORDER COLORS - Docs: http://tachyons.io/docs/themes/borders/ - - Border colors can be used to extend the base - border classes ba,bt,bb,br,bl found in the _borders.css file. - - The base border class by default will set the color of the border - to that of the current text color. These classes are for the cases - where you desire for the text and border colors to be different. - - Base: - b = border - - Modifiers: - --color-name = each color variable name is also a border color name - -*/ -.b--black { border-color: #000; } -.b--near-black { border-color: #111; } -.b--dark-gray { border-color: #333; } -.b--mid-gray { border-color: #555; } -.b--gray { border-color: #777; } -.b--silver { border-color: #999; } -.b--light-silver { border-color: #aaa; } -.b--moon-gray { border-color: #ccc; } -.b--light-gray { border-color: #eee; } -.b--near-white { border-color: #f4f4f4; } -.b--white { border-color: #fff; } -.b--white-90 { border-color: rgba(255, 255, 255, .9); } -.b--white-80 { border-color: rgba(255, 255, 255, .8); } -.b--white-70 { border-color: rgba(255, 255, 255, .7); } -.b--white-60 { border-color: rgba(255, 255, 255, .6); } -.b--white-50 { border-color: rgba(255, 255, 255, .5); } -.b--white-40 { border-color: rgba(255, 255, 255, .4); } -.b--white-30 { border-color: rgba(255, 255, 255, .3); } -.b--white-20 { border-color: rgba(255, 255, 255, .2); } -.b--white-10 { border-color: rgba(255, 255, 255, .1); } -.b--white-05 { border-color: rgba(255, 255, 255, .05); } -.b--white-025 { border-color: rgba(255, 255, 255, .025); } -.b--white-0125 { border-color: rgba(255, 255, 255, .0125); } -.b--black-90 { border-color: rgba(0, 0, 0, .9); } -.b--black-80 { border-color: rgba(0, 0, 0, .8); } -.b--black-70 { border-color: rgba(0, 0, 0, .7); } -.b--black-60 { border-color: rgba(0, 0, 0, .6); } -.b--black-50 { border-color: rgba(0, 0, 0, .5); } -.b--black-40 { border-color: rgba(0, 0, 0, .4); } -.b--black-30 { border-color: rgba(0, 0, 0, .3); } -.b--black-20 { border-color: rgba(0, 0, 0, .2); } -.b--black-10 { border-color: rgba(0, 0, 0, .1); } -.b--black-05 { border-color: rgba(0, 0, 0, .05); } -.b--black-025 { border-color: rgba(0, 0, 0, .025); } -.b--black-0125 { border-color: rgba(0, 0, 0, .0125); } -.b--dark-red { border-color: #e7040f; } -.b--red { border-color: #ff4136; } -.b--light-red { border-color: #ff725c; } -.b--orange { border-color: #ff6300; } -.b--gold { border-color: #ffb700; } -.b--yellow { border-color: #ffd700; } -.b--light-yellow { border-color: #fbf1a9; } -.b--purple { border-color: #5e2ca5; } -.b--light-purple { border-color: #a463f2; } -.b--dark-pink { border-color: #d5008f; } -.b--hot-pink { border-color: #ff41b4; } -.b--pink { border-color: #ff80cc; } -.b--light-pink { border-color: #ffa3d7; } -.b--dark-green { border-color: #137752; } -.b--green { border-color: #19a974; } -.b--light-green { border-color: #9eebcf; } -.b--navy { border-color: #001b44; } -.b--dark-blue { border-color: #00449e; } -.b--blue { border-color: #0594CB; } -.b--light-blue { border-color: #96ccff; } -.b--lightest-blue { border-color: #cdecff; } -.b--washed-blue { border-color: #f6fffe; } -.b--washed-green { border-color: #e8fdf5; } -.b--washed-yellow { border-color: #fffceb; } -.b--washed-red { border-color: #ffdfdf; } -.b--transparent { border-color: transparent; } -.b--inherit { border-color: inherit; } -/* - - BORDER RADIUS - Docs: http://tachyons.io/docs/themes/border-radius/ - - Base: - br = border-radius - - Modifiers: - 0 = 0/none - 1 = 1st step in scale - 2 = 2nd step in scale - 3 = 3rd step in scale - 4 = 4th step in scale - - Literal values: - -100 = 100% - -pill = 9999px - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.br0 { border-radius: 0; } -.br1 { border-radius: .125rem; } -.br2 { border-radius: .25rem; } -.br3 { border-radius: .5rem; } -.br4 { border-radius: 1rem; } -.br-100 { border-radius: 100%; } -.br-pill { border-radius: 9999px; } -.br--bottom { - border-top-left-radius: 0; - border-top-right-radius: 0; - } -.br--top { - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; - } -.br--right { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } -.br--left { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } -@media screen and (min-width: 30em) { - .br0-ns { border-radius: 0; } - .br1-ns { border-radius: .125rem; } - .br2-ns { border-radius: .25rem; } - .br3-ns { border-radius: .5rem; } - .br4-ns { border-radius: 1rem; } - .br-100-ns { border-radius: 100%; } - .br-pill-ns { border-radius: 9999px; } - .br--bottom-ns { - border-top-left-radius: 0; - border-top-right-radius: 0; - } - .br--top-ns { - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; - } - .br--right-ns { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - .br--left-ns { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .br0-m { border-radius: 0; } - .br1-m { border-radius: .125rem; } - .br2-m { border-radius: .25rem; } - .br3-m { border-radius: .5rem; } - .br4-m { border-radius: 1rem; } - .br-100-m { border-radius: 100%; } - .br-pill-m { border-radius: 9999px; } - .br--bottom-m { - border-top-left-radius: 0; - border-top-right-radius: 0; - } - .br--top-m { - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; - } - .br--right-m { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - .br--left-m { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } -} -@media screen and (min-width: 60em) { - .br0-l { border-radius: 0; } - .br1-l { border-radius: .125rem; } - .br2-l { border-radius: .25rem; } - .br3-l { border-radius: .5rem; } - .br4-l { border-radius: 1rem; } - .br-100-l { border-radius: 100%; } - .br-pill-l { border-radius: 9999px; } - .br--bottom-l { - border-top-left-radius: 0; - border-top-right-radius: 0; - } - .br--top-l { - border-bottom-left-radius: 0; - border-bottom-right-radius: 0; - } - .br--right-l { - border-top-left-radius: 0; - border-bottom-left-radius: 0; - } - .br--left-l { - border-top-right-radius: 0; - border-bottom-right-radius: 0; - } -} -/* - - BORDER STYLES - Docs: http://tachyons.io/docs/themes/borders/ - - Depends on base border module in _borders.css - - Base: - b = border-style - - Modifiers: - --none = none - --dotted = dotted - --dashed = dashed - --solid = solid - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - - */ -.b--dotted { border-style: dotted; } -.b--dashed { border-style: dashed; } -.b--solid { border-style: solid; } -.b--none { border-style: none; } -@media screen and (min-width: 30em) { - .b--dotted-ns { border-style: dotted; } - .b--dashed-ns { border-style: dashed; } - .b--solid-ns { border-style: solid; } - .b--none-ns { border-style: none; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .b--dotted-m { border-style: dotted; } - .b--dashed-m { border-style: dashed; } - .b--solid-m { border-style: solid; } - .b--none-m { border-style: none; } -} -@media screen and (min-width: 60em) { - .b--dotted-l { border-style: dotted; } - .b--dashed-l { border-style: dashed; } - .b--solid-l { border-style: solid; } - .b--none-l { border-style: none; } -} -/* - - BORDER WIDTHS - Docs: http://tachyons.io/docs/themes/borders/ - - Base: - bw = border-width - - Modifiers: - 0 = 0 width border - 1 = 1st step in border-width scale - 2 = 2nd step in border-width scale - 3 = 3rd step in border-width scale - 4 = 4th step in border-width scale - 5 = 5th step in border-width scale - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.bw0 { border-width: 0; } -.bw1 { border-width: .125rem; } -.bw2 { border-width: .25rem; } -.bw3 { border-width: .5rem; } -.bw4 { border-width: 1rem; } -.bw5 { border-width: 2rem; } -/* Resets */ -.bt-0 { border-top-width: 0; } -.br-0 { border-right-width: 0; } -.bb-0 { border-bottom-width: 0; } -.bl-0 { border-left-width: 0; } -@media screen and (min-width: 30em) { - .bw0-ns { border-width: 0; } - .bw1-ns { border-width: .125rem; } - .bw2-ns { border-width: .25rem; } - .bw3-ns { border-width: .5rem; } - .bw4-ns { border-width: 1rem; } - .bw5-ns { border-width: 2rem; } - .bt-0-ns { border-top-width: 0; } - .br-0-ns { border-right-width: 0; } - .bb-0-ns { border-bottom-width: 0; } - .bl-0-ns { border-left-width: 0; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .bw0-m { border-width: 0; } - .bw1-m { border-width: .125rem; } - .bw2-m { border-width: .25rem; } - .bw3-m { border-width: .5rem; } - .bw4-m { border-width: 1rem; } - .bw5-m { border-width: 2rem; } - .bt-0-m { border-top-width: 0; } - .br-0-m { border-right-width: 0; } - .bb-0-m { border-bottom-width: 0; } - .bl-0-m { border-left-width: 0; } -} -@media screen and (min-width: 60em) { - .bw0-l { border-width: 0; } - .bw1-l { border-width: .125rem; } - .bw2-l { border-width: .25rem; } - .bw3-l { border-width: .5rem; } - .bw4-l { border-width: 1rem; } - .bw5-l { border-width: 2rem; } - .bt-0-l { border-top-width: 0; } - .br-0-l { border-right-width: 0; } - .bb-0-l { border-bottom-width: 0; } - .bl-0-l { border-left-width: 0; } -} -/* - - BOX-SHADOW - Docs: http://tachyons.io/docs/themes/box-shadow/ - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - - */ -.shadow-1 { -webkit-box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .2); box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .2); } -.shadow-2 { -webkit-box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, .2); box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, .2); } -.shadow-3 { -webkit-box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, .2); box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, .2); } -.shadow-4 { -webkit-box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, .2); box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, .2); } -.shadow-5 { -webkit-box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, .2); box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, .2); } -@media screen and (min-width: 30em) { - .shadow-1-ns { -webkit-box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .2); box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .2); } - .shadow-2-ns { -webkit-box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, .2); box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, .2); } - .shadow-3-ns { -webkit-box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, .2); box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, .2); } - .shadow-4-ns { -webkit-box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, .2); box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, .2); } - .shadow-5-ns { -webkit-box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, .2); box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, .2); } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .shadow-1-m { -webkit-box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .2); box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .2); } - .shadow-2-m { -webkit-box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, .2); box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, .2); } - .shadow-3-m { -webkit-box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, .2); box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, .2); } - .shadow-4-m { -webkit-box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, .2); box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, .2); } - .shadow-5-m { -webkit-box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, .2); box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, .2); } -} -@media screen and (min-width: 60em) { - .shadow-1-l { -webkit-box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .2); box-shadow: 0px 0px 4px 2px rgba(0, 0, 0, .2); } - .shadow-2-l { -webkit-box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, .2); box-shadow: 0px 0px 8px 2px rgba(0, 0, 0, .2); } - .shadow-3-l { -webkit-box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, .2); box-shadow: 2px 2px 4px 2px rgba(0, 0, 0, .2); } - .shadow-4-l { -webkit-box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, .2); box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, .2); } - .shadow-5-l { -webkit-box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, .2); box-shadow: 4px 4px 8px 0px rgba(0, 0, 0, .2); } -} -/*@import 'tachyons/src/_code';*/ -/* - - COORDINATES - Docs: http://tachyons.io/docs/layout/position/ - - Use in combination with the position module. - - Base: - top - bottom - right - left - - Modifiers: - -0 = literal value 0 - -1 = literal value 1 - -2 = literal value 2 - --1 = literal value -1 - --2 = literal value -2 - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.top-0 { top: 0; } -.right-0 { right: 0; } -.bottom-0 { bottom: 0; } -.left-0 { left: 0; } -.top-1 { top: 1rem; } -.right-1 { right: 1rem; } -.bottom-1 { bottom: 1rem; } -.left-1 { left: 1rem; } -.top-2 { top: 2rem; } -.right-2 { right: 2rem; } -.bottom-2 { bottom: 2rem; } -.left-2 { left: 2rem; } -.top--1 { top: -1rem; } -.right--1 { right: -1rem; } -.bottom--1 { bottom: -1rem; } -.left--1 { left: -1rem; } -.top--2 { top: -2rem; } -.right--2 { right: -2rem; } -.bottom--2 { bottom: -2rem; } -.left--2 { left: -2rem; } -.absolute--fill { - top: 0; - right: 0; - bottom: 0; - left: 0; -} -@media screen and (min-width: 30em) { - .top-0-ns { top: 0; } - .left-0-ns { left: 0; } - .right-0-ns { right: 0; } - .bottom-0-ns { bottom: 0; } - .top-1-ns { top: 1rem; } - .left-1-ns { left: 1rem; } - .right-1-ns { right: 1rem; } - .bottom-1-ns { bottom: 1rem; } - .top-2-ns { top: 2rem; } - .left-2-ns { left: 2rem; } - .right-2-ns { right: 2rem; } - .bottom-2-ns { bottom: 2rem; } - .top--1-ns { top: -1rem; } - .right--1-ns { right: -1rem; } - .bottom--1-ns { bottom: -1rem; } - .left--1-ns { left: -1rem; } - .top--2-ns { top: -2rem; } - .right--2-ns { right: -2rem; } - .bottom--2-ns { bottom: -2rem; } - .left--2-ns { left: -2rem; } - .absolute--fill-ns { - top: 0; - right: 0; - bottom: 0; - left: 0; - } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .top-0-m { top: 0; } - .left-0-m { left: 0; } - .right-0-m { right: 0; } - .bottom-0-m { bottom: 0; } - .top-1-m { top: 1rem; } - .left-1-m { left: 1rem; } - .right-1-m { right: 1rem; } - .bottom-1-m { bottom: 1rem; } - .top-2-m { top: 2rem; } - .left-2-m { left: 2rem; } - .right-2-m { right: 2rem; } - .bottom-2-m { bottom: 2rem; } - .top--1-m { top: -1rem; } - .right--1-m { right: -1rem; } - .bottom--1-m { bottom: -1rem; } - .left--1-m { left: -1rem; } - .top--2-m { top: -2rem; } - .right--2-m { right: -2rem; } - .bottom--2-m { bottom: -2rem; } - .left--2-m { left: -2rem; } - .absolute--fill-m { - top: 0; - right: 0; - bottom: 0; - left: 0; - } -} -@media screen and (min-width: 60em) { - .top-0-l { top: 0; } - .left-0-l { left: 0; } - .right-0-l { right: 0; } - .bottom-0-l { bottom: 0; } - .top-1-l { top: 1rem; } - .left-1-l { left: 1rem; } - .right-1-l { right: 1rem; } - .bottom-1-l { bottom: 1rem; } - .top-2-l { top: 2rem; } - .left-2-l { left: 2rem; } - .right-2-l { right: 2rem; } - .bottom-2-l { bottom: 2rem; } - .top--1-l { top: -1rem; } - .right--1-l { right: -1rem; } - .bottom--1-l { bottom: -1rem; } - .left--1-l { left: -1rem; } - .top--2-l { top: -2rem; } - .right--2-l { right: -2rem; } - .bottom--2-l { bottom: -2rem; } - .left--2-l { left: -2rem; } - .absolute--fill-l { - top: 0; - right: 0; - bottom: 0; - left: 0; - } -} -/* - - CLEARFIX - http://tachyons.io/docs/layout/clearfix/ - -*/ -/* Nicolas Gallaghers Clearfix solution - Ref: http://nicolasgallagher.com/micro-clearfix-hack/ */ -.cf:before, -.cf:after { content: " "; display: table; } -.cf:after { clear: both; } -.cf { *zoom: 1; } -.cl { clear: left; } -.cr { clear: right; } -.cb { clear: both; } -.cn { clear: none; } -@media screen and (min-width: 30em) { - .cl-ns { clear: left; } - .cr-ns { clear: right; } - .cb-ns { clear: both; } - .cn-ns { clear: none; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .cl-m { clear: left; } - .cr-m { clear: right; } - .cb-m { clear: both; } - .cn-m { clear: none; } -} -@media screen and (min-width: 60em) { - .cl-l { clear: left; } - .cr-l { clear: right; } - .cb-l { clear: both; } - .cn-l { clear: none; } -} -/* - - DISPLAY - Docs: http://tachyons.io/docs/layout/display - - Base: - d = display - - Modifiers: - n = none - b = block - ib = inline-block - it = inline-table - t = table - tc = table-cell - t-row = table-row - t-columm = table-column - t-column-group = table-column-group - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.dn { display: none; } -.di { display: inline; } -.db { display: block; } -.dib { display: inline-block; } -.dit { display: inline-table; } -.dt { display: table; } -.dtc { display: table-cell; } -.dt-row { display: table-row; } -.dt-row-group { display: table-row-group; } -.dt-column { display: table-column; } -.dt-column-group { display: table-column-group; } -/* - This will set table to full width and then - all cells will be equal width -*/ -.dt--fixed { - table-layout: fixed; - width: 100%; -} -@media screen and (min-width: 30em) { - .dn-ns { display: none; } - .di-ns { display: inline; } - .db-ns { display: block; } - .dib-ns { display: inline-block; } - .dit-ns { display: inline-table; } - .dt-ns { display: table; } - .dtc-ns { display: table-cell; } - .dt-row-ns { display: table-row; } - .dt-row-group-ns { display: table-row-group; } - .dt-column-ns { display: table-column; } - .dt-column-group-ns { display: table-column-group; } - - .dt--fixed-ns { - table-layout: fixed; - width: 100%; - } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .dn-m { display: none; } - .di-m { display: inline; } - .db-m { display: block; } - .dib-m { display: inline-block; } - .dit-m { display: inline-table; } - .dt-m { display: table; } - .dtc-m { display: table-cell; } - .dt-row-m { display: table-row; } - .dt-row-group-m { display: table-row-group; } - .dt-column-m { display: table-column; } - .dt-column-group-m { display: table-column-group; } - - .dt--fixed-m { - table-layout: fixed; - width: 100%; - } -} -@media screen and (min-width: 60em) { - .dn-l { display: none; } - .di-l { display: inline; } - .db-l { display: block; } - .dib-l { display: inline-block; } - .dit-l { display: inline-table; } - .dt-l { display: table; } - .dtc-l { display: table-cell; } - .dt-row-l { display: table-row; } - .dt-row-group-l { display: table-row-group; } - .dt-column-l { display: table-column; } - .dt-column-group-l { display: table-column-group; } - - .dt--fixed-l { - table-layout: fixed; - width: 100%; - } -} -/* - - FLEXBOX - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.flex { display: -webkit-box; display: -ms-flexbox; display: flex; } -.inline-flex { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; } -/* 1. Fix for Chrome 44 bug. - * https://code.google.com/p/chromium/issues/detail?id=506893 */ -.flex-auto { - -webkit-box-flex: 1; - -ms-flex: 1 1 auto; - flex: 1 1 auto; - min-width: 0; /* 1 */ - min-height: 0; /* 1 */ -} -.flex-none { -webkit-box-flex: 0; -ms-flex: none; flex: none; } -.flex-column { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; } -.flex-row { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; } -.flex-wrap { -ms-flex-wrap: wrap; flex-wrap: wrap; } -.flex-nowrap { -ms-flex-wrap: nowrap; flex-wrap: nowrap; } -.flex-wrap-reverse { -ms-flex-wrap: wrap-reverse; flex-wrap: wrap-reverse; } -.flex-column-reverse { -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; } -.flex-row-reverse { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } -.items-start { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; } -.items-end { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; } -.items-center { -webkit-box-align: center; -ms-flex-align: center; align-items: center; } -.items-baseline { -webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; } -.items-stretch { -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; } -.self-start { -ms-flex-item-align: start; align-self: flex-start; } -.self-end { -ms-flex-item-align: end; align-self: flex-end; } -.self-center { -ms-flex-item-align: center; align-self: center; } -.self-baseline { -ms-flex-item-align: baseline; align-self: baseline; } -.self-stretch { -ms-flex-item-align: stretch; align-self: stretch; } -.justify-start { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; } -.justify-end { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; } -.justify-center { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; } -.justify-between { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } -.justify-around { -ms-flex-pack: distribute; justify-content: space-around; } -.content-start { -ms-flex-line-pack: start; align-content: flex-start; } -.content-end { -ms-flex-line-pack: end; align-content: flex-end; } -.content-center { -ms-flex-line-pack: center; align-content: center; } -.content-between { -ms-flex-line-pack: justify; align-content: space-between; } -.content-around { -ms-flex-line-pack: distribute; align-content: space-around; } -.content-stretch { -ms-flex-line-pack: stretch; align-content: stretch; } -.order-0 { -webkit-box-ordinal-group: 1; -ms-flex-order: 0; order: 0; } -.order-1 { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } -.order-2 { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; } -.order-3 { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; } -.order-4 { -webkit-box-ordinal-group: 5; -ms-flex-order: 4; order: 4; } -.order-5 { -webkit-box-ordinal-group: 6; -ms-flex-order: 5; order: 5; } -.order-6 { -webkit-box-ordinal-group: 7; -ms-flex-order: 6; order: 6; } -.order-7 { -webkit-box-ordinal-group: 8; -ms-flex-order: 7; order: 7; } -.order-8 { -webkit-box-ordinal-group: 9; -ms-flex-order: 8; order: 8; } -.order-last { -webkit-box-ordinal-group: 100000; -ms-flex-order: 99999; order: 99999; } -.flex-grow-0 { -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; } -.flex-grow-1 { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; } -.flex-shrink-0 { -ms-flex-negative: 0; flex-shrink: 0; } -.flex-shrink-1 { -ms-flex-negative: 1; flex-shrink: 1; } -@media screen and (min-width: 30em) { - .flex-ns { display: -webkit-box; display: -ms-flexbox; display: flex; } - .inline-flex-ns { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; } - .flex-auto-ns { - -webkit-box-flex: 1; - -ms-flex: 1 1 auto; - flex: 1 1 auto; - min-width: 0; /* 1 */ - min-height: 0; /* 1 */ - } - .flex-none-ns { -webkit-box-flex: 0; -ms-flex: none; flex: none; } - .flex-column-ns { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; } - .flex-row-ns { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; } - .flex-wrap-ns { -ms-flex-wrap: wrap; flex-wrap: wrap; } - .flex-nowrap-ns { -ms-flex-wrap: nowrap; flex-wrap: nowrap; } - .flex-wrap-reverse-ns { -ms-flex-wrap: wrap-reverse; flex-wrap: wrap-reverse; } - .flex-column-reverse-ns { -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; } - .flex-row-reverse-ns { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } - .items-start-ns { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; } - .items-end-ns { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; } - .items-center-ns { -webkit-box-align: center; -ms-flex-align: center; align-items: center; } - .items-baseline-ns { -webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; } - .items-stretch-ns { -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; } - - .self-start-ns { -ms-flex-item-align: start; align-self: flex-start; } - .self-end-ns { -ms-flex-item-align: end; align-self: flex-end; } - .self-center-ns { -ms-flex-item-align: center; align-self: center; } - .self-baseline-ns { -ms-flex-item-align: baseline; align-self: baseline; } - .self-stretch-ns { -ms-flex-item-align: stretch; align-self: stretch; } - - .justify-start-ns { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; } - .justify-end-ns { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; } - .justify-center-ns { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; } - .justify-between-ns { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } - .justify-around-ns { -ms-flex-pack: distribute; justify-content: space-around; } - - .content-start-ns { -ms-flex-line-pack: start; align-content: flex-start; } - .content-end-ns { -ms-flex-line-pack: end; align-content: flex-end; } - .content-center-ns { -ms-flex-line-pack: center; align-content: center; } - .content-between-ns { -ms-flex-line-pack: justify; align-content: space-between; } - .content-around-ns { -ms-flex-line-pack: distribute; align-content: space-around; } - .content-stretch-ns { -ms-flex-line-pack: stretch; align-content: stretch; } - - .order-0-ns { -webkit-box-ordinal-group: 1; -ms-flex-order: 0; order: 0; } - .order-1-ns { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } - .order-2-ns { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; } - .order-3-ns { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; } - .order-4-ns { -webkit-box-ordinal-group: 5; -ms-flex-order: 4; order: 4; } - .order-5-ns { -webkit-box-ordinal-group: 6; -ms-flex-order: 5; order: 5; } - .order-6-ns { -webkit-box-ordinal-group: 7; -ms-flex-order: 6; order: 6; } - .order-7-ns { -webkit-box-ordinal-group: 8; -ms-flex-order: 7; order: 7; } - .order-8-ns { -webkit-box-ordinal-group: 9; -ms-flex-order: 8; order: 8; } - .order-last-ns { -webkit-box-ordinal-group: 100000; -ms-flex-order: 99999; order: 99999; } - - .flex-grow-0-ns { -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; } - .flex-grow-1-ns { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; } - - .flex-shrink-0-ns { -ms-flex-negative: 0; flex-shrink: 0; } - .flex-shrink-1-ns { -ms-flex-negative: 1; flex-shrink: 1; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .flex-m { display: -webkit-box; display: -ms-flexbox; display: flex; } - .inline-flex-m { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; } - .flex-auto-m { - -webkit-box-flex: 1; - -ms-flex: 1 1 auto; - flex: 1 1 auto; - min-width: 0; /* 1 */ - min-height: 0; /* 1 */ - } - .flex-none-m { -webkit-box-flex: 0; -ms-flex: none; flex: none; } - .flex-column-m { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; } - .flex-row-m { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; } - .flex-wrap-m { -ms-flex-wrap: wrap; flex-wrap: wrap; } - .flex-nowrap-m { -ms-flex-wrap: nowrap; flex-wrap: nowrap; } - .flex-wrap-reverse-m { -ms-flex-wrap: wrap-reverse; flex-wrap: wrap-reverse; } - .flex-column-reverse-m { -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; } - .flex-row-reverse-m { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } - .items-start-m { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; } - .items-end-m { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; } - .items-center-m { -webkit-box-align: center; -ms-flex-align: center; align-items: center; } - .items-baseline-m { -webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; } - .items-stretch-m { -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; } - - .self-start-m { -ms-flex-item-align: start; align-self: flex-start; } - .self-end-m { -ms-flex-item-align: end; align-self: flex-end; } - .self-center-m { -ms-flex-item-align: center; align-self: center; } - .self-baseline-m { -ms-flex-item-align: baseline; align-self: baseline; } - .self-stretch-m { -ms-flex-item-align: stretch; align-self: stretch; } - - .justify-start-m { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; } - .justify-end-m { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; } - .justify-center-m { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; } - .justify-between-m { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } - .justify-around-m { -ms-flex-pack: distribute; justify-content: space-around; } - - .content-start-m { -ms-flex-line-pack: start; align-content: flex-start; } - .content-end-m { -ms-flex-line-pack: end; align-content: flex-end; } - .content-center-m { -ms-flex-line-pack: center; align-content: center; } - .content-between-m { -ms-flex-line-pack: justify; align-content: space-between; } - .content-around-m { -ms-flex-line-pack: distribute; align-content: space-around; } - .content-stretch-m { -ms-flex-line-pack: stretch; align-content: stretch; } - - .order-0-m { -webkit-box-ordinal-group: 1; -ms-flex-order: 0; order: 0; } - .order-1-m { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } - .order-2-m { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; } - .order-3-m { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; } - .order-4-m { -webkit-box-ordinal-group: 5; -ms-flex-order: 4; order: 4; } - .order-5-m { -webkit-box-ordinal-group: 6; -ms-flex-order: 5; order: 5; } - .order-6-m { -webkit-box-ordinal-group: 7; -ms-flex-order: 6; order: 6; } - .order-7-m { -webkit-box-ordinal-group: 8; -ms-flex-order: 7; order: 7; } - .order-8-m { -webkit-box-ordinal-group: 9; -ms-flex-order: 8; order: 8; } - .order-last-m { -webkit-box-ordinal-group: 100000; -ms-flex-order: 99999; order: 99999; } - - .flex-grow-0-m { -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; } - .flex-grow-1-m { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; } - - .flex-shrink-0-m { -ms-flex-negative: 0; flex-shrink: 0; } - .flex-shrink-1-m { -ms-flex-negative: 1; flex-shrink: 1; } -} -@media screen and (min-width: 60em) { - .flex-l { display: -webkit-box; display: -ms-flexbox; display: flex; } - .inline-flex-l { display: -webkit-inline-box; display: -ms-inline-flexbox; display: inline-flex; } - .flex-auto-l { - -webkit-box-flex: 1; - -ms-flex: 1 1 auto; - flex: 1 1 auto; - min-width: 0; /* 1 */ - min-height: 0; /* 1 */ - } - .flex-none-l { -webkit-box-flex: 0; -ms-flex: none; flex: none; } - .flex-column-l { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; } - .flex-row-l { -webkit-box-orient: horizontal; -webkit-box-direction: normal; -ms-flex-direction: row; flex-direction: row; } - .flex-wrap-l { -ms-flex-wrap: wrap; flex-wrap: wrap; } - .flex-nowrap-l { -ms-flex-wrap: nowrap; flex-wrap: nowrap; } - .flex-wrap-reverse-l { -ms-flex-wrap: wrap-reverse; flex-wrap: wrap-reverse; } - .flex-column-reverse-l { -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; } - .flex-row-reverse-l { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; -ms-flex-direction: row-reverse; flex-direction: row-reverse; } - - .items-start-l { -webkit-box-align: start; -ms-flex-align: start; align-items: flex-start; } - .items-end-l { -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; } - .items-center-l { -webkit-box-align: center; -ms-flex-align: center; align-items: center; } - .items-baseline-l { -webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; } - .items-stretch-l { -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; } - - .self-start-l { -ms-flex-item-align: start; align-self: flex-start; } - .self-end-l { -ms-flex-item-align: end; align-self: flex-end; } - .self-center-l { -ms-flex-item-align: center; align-self: center; } - .self-baseline-l { -ms-flex-item-align: baseline; align-self: baseline; } - .self-stretch-l { -ms-flex-item-align: stretch; align-self: stretch; } - - .justify-start-l { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start; } - .justify-end-l { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end; } - .justify-center-l { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; } - .justify-between-l { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; } - .justify-around-l { -ms-flex-pack: distribute; justify-content: space-around; } - - .content-start-l { -ms-flex-line-pack: start; align-content: flex-start; } - .content-end-l { -ms-flex-line-pack: end; align-content: flex-end; } - .content-center-l { -ms-flex-line-pack: center; align-content: center; } - .content-between-l { -ms-flex-line-pack: justify; align-content: space-between; } - .content-around-l { -ms-flex-line-pack: distribute; align-content: space-around; } - .content-stretch-l { -ms-flex-line-pack: stretch; align-content: stretch; } - - .order-0-l { -webkit-box-ordinal-group: 1; -ms-flex-order: 0; order: 0; } - .order-1-l { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } - .order-2-l { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; } - .order-3-l { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3; } - .order-4-l { -webkit-box-ordinal-group: 5; -ms-flex-order: 4; order: 4; } - .order-5-l { -webkit-box-ordinal-group: 6; -ms-flex-order: 5; order: 5; } - .order-6-l { -webkit-box-ordinal-group: 7; -ms-flex-order: 6; order: 6; } - .order-7-l { -webkit-box-ordinal-group: 8; -ms-flex-order: 7; order: 7; } - .order-8-l { -webkit-box-ordinal-group: 9; -ms-flex-order: 8; order: 8; } - .order-last-l { -webkit-box-ordinal-group: 100000; -ms-flex-order: 99999; order: 99999; } - - .flex-grow-0-l { -webkit-box-flex: 0; -ms-flex-positive: 0; flex-grow: 0; } - .flex-grow-1-l { -webkit-box-flex: 1; -ms-flex-positive: 1; flex-grow: 1; } - - .flex-shrink-0-l { -ms-flex-negative: 0; flex-shrink: 0; } - .flex-shrink-1-l { -ms-flex-negative: 1; flex-shrink: 1; } -} -/* - - FLOATS - http://tachyons.io/docs/layout/floats/ - - 1. Floated elements are automatically rendered as block level elements. - Setting floats to display inline will fix the double margin bug in - ie6. You know... just in case. - - 2. Don't forget to clearfix your floats with .cf - - Base: - f = float - - Modifiers: - l = left - r = right - n = none - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.fl { float: left; _display: inline; } -.fr { float: right; _display: inline; } -.fn { float: none; } -@media screen and (min-width: 30em) { - .fl-ns { float: left; _display: inline; } - .fr-ns { float: right; _display: inline; } - .fn-ns { float: none; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .fl-m { float: left; _display: inline; } - .fr-m { float: right; _display: inline; } - .fn-m { float: none; } -} -@media screen and (min-width: 60em) { - .fl-l { float: left; _display: inline; } - .fr-l { float: right; _display: inline; } - .fn-l { float: none; } -} -/*@import 'tachyons/src/_font-family';*/ -/* - - FONT STYLE - Docs: http://tachyons.io/docs/typography/font-style/ - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.i { font-style: italic; } -.fs-normal { font-style: normal; } -@media screen and (min-width: 30em) { - .i-ns { font-style: italic; } - .fs-normal-ns { font-style: normal; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .i-m { font-style: italic; } - .fs-normal-m { font-style: normal; } -} -@media screen and (min-width: 60em) { - .i-l { font-style: italic; } - .fs-normal-l { font-style: normal; } -} -/* - - FONT WEIGHT - Docs: http://tachyons.io/docs/typography/font-weight/ - - Base - fw = font-weight - - Modifiers: - 1 = literal value 100 - 2 = literal value 200 - 3 = literal value 300 - 4 = literal value 400 - 5 = literal value 500 - 6 = literal value 600 - 7 = literal value 700 - 8 = literal value 800 - 9 = literal value 900 - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.normal { font-weight: normal; } -.b { font-weight: bold; } -.fw1 { font-weight: 100; } -.fw2 { font-weight: 200; } -.fw3 { font-weight: 300; } -.fw4 { font-weight: 400; } -.fw5 { font-weight: 500; } -.fw6 { font-weight: 600; } -.fw7 { font-weight: 700; } -.fw8 { font-weight: 800; } -.fw9 { font-weight: 900; } -@media screen and (min-width: 30em) { - .normal-ns { font-weight: normal; } - .b-ns { font-weight: bold; } - .fw1-ns { font-weight: 100; } - .fw2-ns { font-weight: 200; } - .fw3-ns { font-weight: 300; } - .fw4-ns { font-weight: 400; } - .fw5-ns { font-weight: 500; } - .fw6-ns { font-weight: 600; } - .fw7-ns { font-weight: 700; } - .fw8-ns { font-weight: 800; } - .fw9-ns { font-weight: 900; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .normal-m { font-weight: normal; } - .b-m { font-weight: bold; } - .fw1-m { font-weight: 100; } - .fw2-m { font-weight: 200; } - .fw3-m { font-weight: 300; } - .fw4-m { font-weight: 400; } - .fw5-m { font-weight: 500; } - .fw6-m { font-weight: 600; } - .fw7-m { font-weight: 700; } - .fw8-m { font-weight: 800; } - .fw9-m { font-weight: 900; } -} -@media screen and (min-width: 60em) { - .normal-l { font-weight: normal; } - .b-l { font-weight: bold; } - .fw1-l { font-weight: 100; } - .fw2-l { font-weight: 200; } - .fw3-l { font-weight: 300; } - .fw4-l { font-weight: 400; } - .fw5-l { font-weight: 500; } - .fw6-l { font-weight: 600; } - .fw7-l { font-weight: 700; } - .fw8-l { font-weight: 800; } - .fw9-l { font-weight: 900; } -} -/* - - FORMS - -*/ -.input-reset { - -webkit-appearance: none; - -moz-appearance: none; -} -.button-reset::-moz-focus-inner, -.input-reset::-moz-focus-inner { - border: 0; - padding: 0; -} -/* - - HEIGHTS - Docs: http://tachyons.io/docs/layout/heights/ - - Base: - h = height - min-h = min-height - min-vh = min-height vertical screen height - vh = vertical screen height - - Modifiers - 1 = 1st step in height scale - 2 = 2nd step in height scale - 3 = 3rd step in height scale - 4 = 4th step in height scale - 5 = 5th step in height scale - - -25 = literal value 25% - -50 = literal value 50% - -75 = literal value 75% - -100 = literal value 100% - - -auto = string value of auto - -inherit = string value of inherit - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -/* Height Scale */ -.h1 { height: 1rem; } -.h2 { height: 2rem; } -.h3 { height: 4rem; } -.h4 { height: 8rem; } -.h5 { height: 16rem; } -/* Height Percentages - Based off of height of parent */ -.h-25 { height: 25%; } -.h-50 { height: 50%; } -.h-75 { height: 75%; } -.h-100 { height: 100%; } -.min-h-100 { min-height: 100%; } -/* Screen Height Percentage */ -.vh-25 { height: 25vh; } -.vh-50 { height: 50vh; } -.vh-75 { height: 75vh; } -.vh-100 { height: 100vh; } -.min-vh-100 { min-height: 100vh; } -/* String Properties */ -.h-auto { height: auto; } -.h-inherit { height: inherit; } -@media screen and (min-width: 30em) { - .h1-ns { height: 1rem; } - .h2-ns { height: 2rem; } - .h3-ns { height: 4rem; } - .h4-ns { height: 8rem; } - .h5-ns { height: 16rem; } - .h-25-ns { height: 25%; } - .h-50-ns { height: 50%; } - .h-75-ns { height: 75%; } - .h-100-ns { height: 100%; } - .min-h-100-ns { min-height: 100%; } - .vh-25-ns { height: 25vh; } - .vh-50-ns { height: 50vh; } - .vh-75-ns { height: 75vh; } - .vh-100-ns { height: 100vh; } - .min-vh-100-ns { min-height: 100vh; } - .h-auto-ns { height: auto; } - .h-inherit-ns { height: inherit; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .h1-m { height: 1rem; } - .h2-m { height: 2rem; } - .h3-m { height: 4rem; } - .h4-m { height: 8rem; } - .h5-m { height: 16rem; } - .h-25-m { height: 25%; } - .h-50-m { height: 50%; } - .h-75-m { height: 75%; } - .h-100-m { height: 100%; } - .min-h-100-m { min-height: 100%; } - .vh-25-m { height: 25vh; } - .vh-50-m { height: 50vh; } - .vh-75-m { height: 75vh; } - .vh-100-m { height: 100vh; } - .min-vh-100-m { min-height: 100vh; } - .h-auto-m { height: auto; } - .h-inherit-m { height: inherit; } -} -@media screen and (min-width: 60em) { - .h1-l { height: 1rem; } - .h2-l { height: 2rem; } - .h3-l { height: 4rem; } - .h4-l { height: 8rem; } - .h5-l { height: 16rem; } - .h-25-l { height: 25%; } - .h-50-l { height: 50%; } - .h-75-l { height: 75%; } - .h-100-l { height: 100%; } - .min-h-100-l { min-height: 100%; } - .vh-25-l { height: 25vh; } - .vh-50-l { height: 50vh; } - .vh-75-l { height: 75vh; } - .vh-100-l { height: 100vh; } - .min-vh-100-l { min-height: 100vh; } - .h-auto-l { height: auto; } - .h-inherit-l { height: inherit; } -} -/* - - LETTER SPACING - Docs: http://tachyons.io/docs/typography/tracking/ - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.tracked { letter-spacing: .1em; } -.tracked-tight { letter-spacing: -.05em; } -.tracked-mega { letter-spacing: .25em; } -@media screen and (min-width: 30em) { - .tracked-ns { letter-spacing: .1em; } - .tracked-tight-ns { letter-spacing: -.05em; } - .tracked-mega-ns { letter-spacing: .25em; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .tracked-m { letter-spacing: .1em; } - .tracked-tight-m { letter-spacing: -.05em; } - .tracked-mega-m { letter-spacing: .25em; } -} -@media screen and (min-width: 60em) { - .tracked-l { letter-spacing: .1em; } - .tracked-tight-l { letter-spacing: -.05em; } - .tracked-mega-l { letter-spacing: .25em; } -} -/* - - LINE HEIGHT / LEADING - Docs: http://tachyons.io/docs/typography/line-height - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.lh-solid { line-height: 1; } -.lh-title { line-height: 1.25; } -.lh-copy { line-height: 1.5; } -@media screen and (min-width: 30em) { - .lh-solid-ns { line-height: 1; } - .lh-title-ns { line-height: 1.25; } - .lh-copy-ns { line-height: 1.5; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .lh-solid-m { line-height: 1; } - .lh-title-m { line-height: 1.25; } - .lh-copy-m { line-height: 1.5; } -} -@media screen and (min-width: 60em) { - .lh-solid-l { line-height: 1; } - .lh-title-l { line-height: 1.25; } - .lh-copy-l { line-height: 1.5; } -} -/* - - LINKS - Docs: http://tachyons.io/docs/elements/links/ - -*/ -.link { - text-decoration: none; - -webkit-transition: color .15s ease-in; - transition: color .15s ease-in; -} -.link:link, -.link:visited { - -webkit-transition: color .15s ease-in; - transition: color .15s ease-in; -} -.link:hover { - -webkit-transition: color .15s ease-in; - transition: color .15s ease-in; -} -.link:active { - -webkit-transition: color .15s ease-in; - transition: color .15s ease-in; -} -.link:focus { - -webkit-transition: color .15s ease-in; - transition: color .15s ease-in; - outline: 1px dotted currentColor; -} -/* - - LISTS - http://tachyons.io/docs/elements/lists/ - -*/ -.list { list-style-type: none; } -/* - - MAX WIDTHS - Docs: http://tachyons.io/docs/layout/max-widths/ - - Base: - mw = max-width - - Modifiers - 1 = 1st step in width scale - 2 = 2nd step in width scale - 3 = 3rd step in width scale - 4 = 4th step in width scale - 5 = 5th step in width scale - 6 = 6st step in width scale - 7 = 7nd step in width scale - 8 = 8rd step in width scale - 9 = 9th step in width scale - - -100 = literal value 100% - - -none = string value none - - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -/* Max Width Percentages */ -.mw-100 { max-width: 100%; } -/* Max Width Scale */ -.mw1 { max-width: 1rem; } -.mw2 { max-width: 2rem; } -.mw3 { max-width: 4rem; } -.mw4 { max-width: 8rem; } -.mw5 { max-width: 16rem; } -.mw6 { max-width: 32rem; } -.mw7 { max-width: 48rem; } -.mw8 { max-width: 64rem; } -.mw9 { max-width: 96rem; } -/* Max Width String Properties */ -.mw-none { max-width: none; } -@media screen and (min-width: 30em) { - .mw-100-ns { max-width: 100%; } - - .mw1-ns { max-width: 1rem; } - .mw2-ns { max-width: 2rem; } - .mw3-ns { max-width: 4rem; } - .mw4-ns { max-width: 8rem; } - .mw5-ns { max-width: 16rem; } - .mw6-ns { max-width: 32rem; } - .mw7-ns { max-width: 48rem; } - .mw8-ns { max-width: 64rem; } - .mw9-ns { max-width: 96rem; } - - .mw-none-ns { max-width: none; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .mw-100-m { max-width: 100%; } - - .mw1-m { max-width: 1rem; } - .mw2-m { max-width: 2rem; } - .mw3-m { max-width: 4rem; } - .mw4-m { max-width: 8rem; } - .mw5-m { max-width: 16rem; } - .mw6-m { max-width: 32rem; } - .mw7-m { max-width: 48rem; } - .mw8-m { max-width: 64rem; } - .mw9-m { max-width: 96rem; } - - .mw-none-m { max-width: none; } -} -@media screen and (min-width: 60em) { - .mw-100-l { max-width: 100%; } - - .mw1-l { max-width: 1rem; } - .mw2-l { max-width: 2rem; } - .mw3-l { max-width: 4rem; } - .mw4-l { max-width: 8rem; } - .mw5-l { max-width: 16rem; } - .mw6-l { max-width: 32rem; } - .mw7-l { max-width: 48rem; } - .mw8-l { max-width: 64rem; } - .mw9-l { max-width: 96rem; } - - .mw-none-l { max-width: none; } -} -/* - - WIDTHS - Docs: http://tachyons.io/docs/layout/widths/ - - Base: - w = width - - Modifiers - 1 = 1st step in width scale - 2 = 2nd step in width scale - 3 = 3rd step in width scale - 4 = 4th step in width scale - 5 = 5th step in width scale - - -10 = literal value 10% - -20 = literal value 20% - -25 = literal value 25% - -30 = literal value 30% - -33 = literal value 33% - -34 = literal value 34% - -40 = literal value 40% - -50 = literal value 50% - -60 = literal value 60% - -70 = literal value 70% - -75 = literal value 75% - -80 = literal value 80% - -90 = literal value 90% - -100 = literal value 100% - - -third = 100% / 3 (Not supported in opera mini or IE8) - -two-thirds = 100% / 1.5 (Not supported in opera mini or IE8) - -auto = string value auto - - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -/* Width Scale */ -.w1 { width: 1rem; } -.w2 { width: 2rem; } -.w3 { width: 4rem; } -.w4 { width: 8rem; } -.w5 { width: 16rem; } -.w-10 { width: 10%; } -.w-20 { width: 20%; } -.w-25 { width: 25%; } -.w-30 { width: 30%; } -.w-33 { width: 33%; } -.w-34 { width: 34%; } -.w-40 { width: 40%; } -.w-50 { width: 50%; } -.w-60 { width: 60%; } -.w-70 { width: 70%; } -.w-75 { width: 75%; } -.w-80 { width: 80%; } -.w-90 { width: 90%; } -.w-100 { width: 100%; } -.w-third { width: 33.33333%; } -.w-two-thirds { width: 66.66667%; } -.w-auto { width: auto; } -@media screen and (min-width: 30em) { - .w1-ns { width: 1rem; } - .w2-ns { width: 2rem; } - .w3-ns { width: 4rem; } - .w4-ns { width: 8rem; } - .w5-ns { width: 16rem; } - .w-10-ns { width: 10%; } - .w-20-ns { width: 20%; } - .w-25-ns { width: 25%; } - .w-30-ns { width: 30%; } - .w-33-ns { width: 33%; } - .w-34-ns { width: 34%; } - .w-40-ns { width: 40%; } - .w-50-ns { width: 50%; } - .w-60-ns { width: 60%; } - .w-70-ns { width: 70%; } - .w-75-ns { width: 75%; } - .w-80-ns { width: 80%; } - .w-90-ns { width: 90%; } - .w-100-ns { width: 100%; } - .w-third-ns { width: 33.33333%; } - .w-two-thirds-ns { width: 66.66667%; } - .w-auto-ns { width: auto; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .w1-m { width: 1rem; } - .w2-m { width: 2rem; } - .w3-m { width: 4rem; } - .w4-m { width: 8rem; } - .w5-m { width: 16rem; } - .w-10-m { width: 10%; } - .w-20-m { width: 20%; } - .w-25-m { width: 25%; } - .w-30-m { width: 30%; } - .w-33-m { width: 33%; } - .w-34-m { width: 34%; } - .w-40-m { width: 40%; } - .w-50-m { width: 50%; } - .w-60-m { width: 60%; } - .w-70-m { width: 70%; } - .w-75-m { width: 75%; } - .w-80-m { width: 80%; } - .w-90-m { width: 90%; } - .w-100-m { width: 100%; } - .w-third-m { width: 33.33333%; } - .w-two-thirds-m { width: 66.66667%; } - .w-auto-m { width: auto; } -} -@media screen and (min-width: 60em) { - .w1-l { width: 1rem; } - .w2-l { width: 2rem; } - .w3-l { width: 4rem; } - .w4-l { width: 8rem; } - .w5-l { width: 16rem; } - .w-10-l { width: 10%; } - .w-20-l { width: 20%; } - .w-25-l { width: 25%; } - .w-30-l { width: 30%; } - .w-33-l { width: 33%; } - .w-34-l { width: 34%; } - .w-40-l { width: 40%; } - .w-50-l { width: 50%; } - .w-60-l { width: 60%; } - .w-70-l { width: 70%; } - .w-75-l { width: 75%; } - .w-80-l { width: 80%; } - .w-90-l { width: 90%; } - .w-100-l { width: 100%; } - .w-third-l { width: 33.33333%; } - .w-two-thirds-l { width: 66.66667%; } - .w-auto-l { width: auto; } -} -/* - - OVERFLOW - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - - */ -.overflow-visible { overflow: visible; } -.overflow-hidden { overflow: hidden; } -.overflow-scroll { overflow: scroll; } -.overflow-auto { overflow: auto; } -.overflow-x-visible { overflow-x: visible; } -.overflow-x-hidden { overflow-x: hidden; } -.overflow-x-scroll { overflow-x: scroll; } -.overflow-x-auto { overflow-x: auto; } -.overflow-y-visible { overflow-y: visible; } -.overflow-y-hidden { overflow-y: hidden; } -.overflow-y-scroll { overflow-y: scroll; } -.overflow-y-auto { overflow-y: auto; } -@media screen and (min-width: 30em) { - .overflow-visible-ns { overflow: visible; } - .overflow-hidden-ns { overflow: hidden; } - .overflow-scroll-ns { overflow: scroll; } - .overflow-auto-ns { overflow: auto; } - .overflow-x-visible-ns { overflow-x: visible; } - .overflow-x-hidden-ns { overflow-x: hidden; } - .overflow-x-scroll-ns { overflow-x: scroll; } - .overflow-x-auto-ns { overflow-x: auto; } - - .overflow-y-visible-ns { overflow-y: visible; } - .overflow-y-hidden-ns { overflow-y: hidden; } - .overflow-y-scroll-ns { overflow-y: scroll; } - .overflow-y-auto-ns { overflow-y: auto; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .overflow-visible-m { overflow: visible; } - .overflow-hidden-m { overflow: hidden; } - .overflow-scroll-m { overflow: scroll; } - .overflow-auto-m { overflow: auto; } - - .overflow-x-visible-m { overflow-x: visible; } - .overflow-x-hidden-m { overflow-x: hidden; } - .overflow-x-scroll-m { overflow-x: scroll; } - .overflow-x-auto-m { overflow-x: auto; } - - .overflow-y-visible-m { overflow-y: visible; } - .overflow-y-hidden-m { overflow-y: hidden; } - .overflow-y-scroll-m { overflow-y: scroll; } - .overflow-y-auto-m { overflow-y: auto; } -} -@media screen and (min-width: 60em) { - .overflow-visible-l { overflow: visible; } - .overflow-hidden-l { overflow: hidden; } - .overflow-scroll-l { overflow: scroll; } - .overflow-auto-l { overflow: auto; } - - .overflow-x-visible-l { overflow-x: visible; } - .overflow-x-hidden-l { overflow-x: hidden; } - .overflow-x-scroll-l { overflow-x: scroll; } - .overflow-x-auto-l { overflow-x: auto; } - - .overflow-y-visible-l { overflow-y: visible; } - .overflow-y-hidden-l { overflow-y: hidden; } - .overflow-y-scroll-l { overflow-y: scroll; } - .overflow-y-auto-l { overflow-y: auto; } -} -/* - - POSITIONING - Docs: http://tachyons.io/docs/layout/position/ - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.static { position: static; } -.relative { position: relative; } -.absolute { position: absolute; } -.fixed { position: fixed; } -@media screen and (min-width: 30em) { - .static-ns { position: static; } - .relative-ns { position: relative; } - .absolute-ns { position: absolute; } - .fixed-ns { position: fixed; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .static-m { position: static; } - .relative-m { position: relative; } - .absolute-m { position: absolute; } - .fixed-m { position: fixed; } -} -@media screen and (min-width: 60em) { - .static-l { position: static; } - .relative-l { position: relative; } - .absolute-l { position: absolute; } - .fixed-l { position: fixed; } -} -/* - - OPACITY - Docs: http://tachyons.io/docs/themes/opacity/ - -*/ -.o-100 { opacity: 1; } -.o-90 { opacity: .9; } -.o-80 { opacity: .8; } -.o-70 { opacity: .7; } -.o-60 { opacity: .6; } -.o-50 { opacity: .5; } -.o-40 { opacity: .4; } -.o-30 { opacity: .3; } -.o-20 { opacity: .2; } -.o-10 { opacity: .1; } -.o-05 { opacity: .05; } -.o-025 { opacity: .025; } -.o-0 { opacity: 0; } -/*@import 'tachyons/src/_rotations';*/ -/* - - SKINS - Docs: http://tachyons.io/docs/themes/skins/ - - Classes for setting foreground and background colors on elements. - If you haven't declared a border color, but set border on an element, it will - be set to the current text color. - -*/ -/* Text colors */ -.black-90 { color: rgba(0, 0, 0, .9); } -.black-80 { color: rgba(0, 0, 0, .8); } -.black-70 { color: rgba(0, 0, 0, .7); } -.black-60 { color: rgba(0, 0, 0, .6); } -.black-50 { color: rgba(0, 0, 0, .5); } -.black-40 { color: rgba(0, 0, 0, .4); } -.black-30 { color: rgba(0, 0, 0, .3); } -.black-20 { color: rgba(0, 0, 0, .2); } -.black-10 { color: rgba(0, 0, 0, .1); } -.black-05 { color: rgba(0, 0, 0, .05); } -.white-90 { color: rgba(255, 255, 255, .9); } -.white-80 { color: rgba(255, 255, 255, .8); } -.white-70 { color: rgba(255, 255, 255, .7); } -.white-60 { color: rgba(255, 255, 255, .6); } -.white-50 { color: rgba(255, 255, 255, .5); } -.white-40 { color: rgba(255, 255, 255, .4); } -.white-30 { color: rgba(255, 255, 255, .3); } -.white-20 { color: rgba(255, 255, 255, .2); } -.white-10 { color: rgba(255, 255, 255, .1); } -.black { color: #000; } -.near-black { color: #111; } -.dark-gray { color: #333; } -.mid-gray { color: #555; } -.gray { color: #777; } -.silver { color: #999; } -.light-silver { color: #aaa; } -.moon-gray { color: #ccc; } -.light-gray { color: #eee; } -.near-white { color: #f4f4f4; } -.white { color: #fff; } -.dark-red { color: #e7040f; } -.red { color: #ff4136; } -.light-red { color: #ff725c; } -.orange { color: #ff6300; } -.gold { color: #ffb700; } -.yellow { color: #ffd700; } -.light-yellow { color: #fbf1a9; } -.purple { color: #5e2ca5; } -.light-purple { color: #a463f2; } -.dark-pink { color: #d5008f; } -.hot-pink { color: #ff41b4; } -.pink { color: #ff80cc; } -.light-pink { color: #ffa3d7; } -.dark-green { color: #137752; } -.green { color: #19a974; } -.light-green { color: #9eebcf; } -.navy { color: #001b44; } -.dark-blue { color: #00449e; } -.blue { color: #0594CB; } -.light-blue { color: #96ccff; } -.lightest-blue { color: #cdecff; } -.washed-blue { color: #f6fffe; } -.washed-green { color: #e8fdf5; } -.washed-yellow { color: #fffceb; } -.washed-red { color: #ffdfdf; } -.color-inherit { color: inherit; } -.bg-black-90 { background-color: rgba(0, 0, 0, .9); } -.bg-black-80 { background-color: rgba(0, 0, 0, .8); } -.bg-black-70 { background-color: rgba(0, 0, 0, .7); } -.bg-black-60 { background-color: rgba(0, 0, 0, .6); } -.bg-black-50 { background-color: rgba(0, 0, 0, .5); } -.bg-black-40 { background-color: rgba(0, 0, 0, .4); } -.bg-black-30 { background-color: rgba(0, 0, 0, .3); } -.bg-black-20 { background-color: rgba(0, 0, 0, .2); } -.bg-black-10 { background-color: rgba(0, 0, 0, .1); } -.bg-black-05 { background-color: rgba(0, 0, 0, .05); } -.bg-white-90 { background-color: rgba(255, 255, 255, .9); } -.bg-white-80 { background-color: rgba(255, 255, 255, .8); } -.bg-white-70 { background-color: rgba(255, 255, 255, .7); } -.bg-white-60 { background-color: rgba(255, 255, 255, .6); } -.bg-white-50 { background-color: rgba(255, 255, 255, .5); } -.bg-white-40 { background-color: rgba(255, 255, 255, .4); } -.bg-white-30 { background-color: rgba(255, 255, 255, .3); } -.bg-white-20 { background-color: rgba(255, 255, 255, .2); } -.bg-white-10 { background-color: rgba(255, 255, 255, .1); } -/* Background colors */ -.bg-black { background-color: #000; } -.bg-near-black { background-color: #111; } -.bg-dark-gray { background-color: #333; } -.bg-mid-gray { background-color: #555; } -.bg-gray { background-color: #777; } -.bg-silver { background-color: #999; } -.bg-light-silver { background-color: #aaa; } -.bg-moon-gray { background-color: #ccc; } -.bg-light-gray { background-color: #eee; } -.bg-near-white { background-color: #f4f4f4; } -.bg-white { background-color: #fff; } -.bg-transparent { background-color: transparent; } -.bg-dark-red { background-color: #e7040f; } -.bg-red { background-color: #ff4136; } -.bg-light-red { background-color: #ff725c; } -.bg-orange { background-color: #ff6300; } -.bg-gold { background-color: #ffb700; } -.bg-yellow { background-color: #ffd700; } -.bg-light-yellow { background-color: #fbf1a9; } -.bg-purple { background-color: #5e2ca5; } -.bg-light-purple { background-color: #a463f2; } -.bg-dark-pink { background-color: #d5008f; } -.bg-hot-pink { background-color: #ff41b4; } -.bg-pink { background-color: #ff80cc; } -.bg-light-pink { background-color: #ffa3d7; } -.bg-dark-green { background-color: #137752; } -.bg-green { background-color: #19a974; } -.bg-light-green { background-color: #9eebcf; } -.bg-navy { background-color: #001b44; } -.bg-dark-blue { background-color: #00449e; } -.bg-blue { background-color: #0594CB; } -.bg-light-blue { background-color: #96ccff; } -.bg-lightest-blue { background-color: #cdecff; } -.bg-washed-blue { background-color: #f6fffe; } -.bg-washed-green { background-color: #e8fdf5; } -.bg-washed-yellow { background-color: #fffceb; } -.bg-washed-red { background-color: #ffdfdf; } -.bg-inherit { background-color: inherit; } -/* - - SKINS:PSEUDO - - Customize the color of an element when - it is focused or hovered over. - - */ -.hover-black:hover, -.hover-black:focus { color: #000; } -.hover-near-black:hover, -.hover-near-black:focus { color: #111; } -.hover-dark-gray:hover, -.hover-dark-gray:focus { color: #333; } -.hover-mid-gray:hover, -.hover-mid-gray:focus { color: #555; } -.hover-gray:hover, -.hover-gray:focus { color: #777; } -.hover-silver:hover, -.hover-silver:focus { color: #999; } -.hover-light-silver:hover, -.hover-light-silver:focus { color: #aaa; } -.hover-moon-gray:hover, -.hover-moon-gray:focus { color: #ccc; } -.hover-light-gray:hover, -.hover-light-gray:focus { color: #eee; } -.hover-near-white:hover, -.hover-near-white:focus { color: #f4f4f4; } -.hover-white:hover, -.hover-white:focus { color: #fff; } -.hover-black-90:hover, -.hover-black-90:focus { color: rgba(0, 0, 0, .9); } -.hover-black-80:hover, -.hover-black-80:focus { color: rgba(0, 0, 0, .8); } -.hover-black-70:hover, -.hover-black-70:focus { color: rgba(0, 0, 0, .7); } -.hover-black-60:hover, -.hover-black-60:focus { color: rgba(0, 0, 0, .6); } -.hover-black-50:hover, -.hover-black-50:focus { color: rgba(0, 0, 0, .5); } -.hover-black-40:hover, -.hover-black-40:focus { color: rgba(0, 0, 0, .4); } -.hover-black-30:hover, -.hover-black-30:focus { color: rgba(0, 0, 0, .3); } -.hover-black-20:hover, -.hover-black-20:focus { color: rgba(0, 0, 0, .2); } -.hover-black-10:hover, -.hover-black-10:focus { color: rgba(0, 0, 0, .1); } -.hover-white-90:hover, -.hover-white-90:focus { color: rgba(255, 255, 255, .9); } -.hover-white-80:hover, -.hover-white-80:focus { color: rgba(255, 255, 255, .8); } -.hover-white-70:hover, -.hover-white-70:focus { color: rgba(255, 255, 255, .7); } -.hover-white-60:hover, -.hover-white-60:focus { color: rgba(255, 255, 255, .6); } -.hover-white-50:hover, -.hover-white-50:focus { color: rgba(255, 255, 255, .5); } -.hover-white-40:hover, -.hover-white-40:focus { color: rgba(255, 255, 255, .4); } -.hover-white-30:hover, -.hover-white-30:focus { color: rgba(255, 255, 255, .3); } -.hover-white-20:hover, -.hover-white-20:focus { color: rgba(255, 255, 255, .2); } -.hover-white-10:hover, -.hover-white-10:focus { color: rgba(255, 255, 255, .1); } -.hover-inherit:hover, -.hover-inherit:focus { color: inherit; } -.hover-bg-black:hover, -.hover-bg-black:focus { background-color: #000; } -.hover-bg-near-black:hover, -.hover-bg-near-black:focus { background-color: #111; } -.hover-bg-dark-gray:hover, -.hover-bg-dark-gray:focus { background-color: #333; } -.hover-bg-mid-gray:hover, -.hover-bg-mid-gray:focus { background-color: #555; } -.hover-bg-gray:hover, -.hover-bg-gray:focus { background-color: #777; } -.hover-bg-silver:hover, -.hover-bg-silver:focus { background-color: #999; } -.hover-bg-light-silver:hover, -.hover-bg-light-silver:focus { background-color: #aaa; } -.hover-bg-moon-gray:hover, -.hover-bg-moon-gray:focus { background-color: #ccc; } -.hover-bg-light-gray:hover, -.hover-bg-light-gray:focus { background-color: #eee; } -.hover-bg-near-white:hover, -.hover-bg-near-white:focus { background-color: #f4f4f4; } -.hover-bg-white:hover, -.hover-bg-white:focus { background-color: #fff; } -.hover-bg-transparent:hover, -.hover-bg-transparent:focus { background-color: transparent; } -.hover-bg-black-90:hover, -.hover-bg-black-90:focus { background-color: rgba(0, 0, 0, .9); } -.hover-bg-black-80:hover, -.hover-bg-black-80:focus { background-color: rgba(0, 0, 0, .8); } -.hover-bg-black-70:hover, -.hover-bg-black-70:focus { background-color: rgba(0, 0, 0, .7); } -.hover-bg-black-60:hover, -.hover-bg-black-60:focus { background-color: rgba(0, 0, 0, .6); } -.hover-bg-black-50:hover, -.hover-bg-black-50:focus { background-color: rgba(0, 0, 0, .5); } -.hover-bg-black-40:hover, -.hover-bg-black-40:focus { background-color: rgba(0, 0, 0, .4); } -.hover-bg-black-30:hover, -.hover-bg-black-30:focus { background-color: rgba(0, 0, 0, .3); } -.hover-bg-black-20:hover, -.hover-bg-black-20:focus { background-color: rgba(0, 0, 0, .2); } -.hover-bg-black-10:hover, -.hover-bg-black-10:focus { background-color: rgba(0, 0, 0, .1); } -.hover-bg-white-90:hover, -.hover-bg-white-90:focus { background-color: rgba(255, 255, 255, .9); } -.hover-bg-white-80:hover, -.hover-bg-white-80:focus { background-color: rgba(255, 255, 255, .8); } -.hover-bg-white-70:hover, -.hover-bg-white-70:focus { background-color: rgba(255, 255, 255, .7); } -.hover-bg-white-60:hover, -.hover-bg-white-60:focus { background-color: rgba(255, 255, 255, .6); } -.hover-bg-white-50:hover, -.hover-bg-white-50:focus { background-color: rgba(255, 255, 255, .5); } -.hover-bg-white-40:hover, -.hover-bg-white-40:focus { background-color: rgba(255, 255, 255, .4); } -.hover-bg-white-30:hover, -.hover-bg-white-30:focus { background-color: rgba(255, 255, 255, .3); } -.hover-bg-white-20:hover, -.hover-bg-white-20:focus { background-color: rgba(255, 255, 255, .2); } -.hover-bg-white-10:hover, -.hover-bg-white-10:focus { background-color: rgba(255, 255, 255, .1); } -.hover-dark-red:hover, -.hover-dark-red:focus { color: #e7040f; } -.hover-red:hover, -.hover-red:focus { color: #ff4136; } -.hover-light-red:hover, -.hover-light-red:focus { color: #ff725c; } -.hover-orange:hover, -.hover-orange:focus { color: #ff6300; } -.hover-gold:hover, -.hover-gold:focus { color: #ffb700; } -.hover-yellow:hover, -.hover-yellow:focus { color: #ffd700; } -.hover-light-yellow:hover, -.hover-light-yellow:focus { color: #fbf1a9; } -.hover-purple:hover, -.hover-purple:focus { color: #5e2ca5; } -.hover-light-purple:hover, -.hover-light-purple:focus { color: #a463f2; } -.hover-dark-pink:hover, -.hover-dark-pink:focus { color: #d5008f; } -.hover-hot-pink:hover, -.hover-hot-pink:focus { color: #ff41b4; } -.hover-pink:hover, -.hover-pink:focus { color: #ff80cc; } -.hover-light-pink:hover, -.hover-light-pink:focus { color: #ffa3d7; } -.hover-dark-green:hover, -.hover-dark-green:focus { color: #137752; } -.hover-green:hover, -.hover-green:focus { color: #19a974; } -.hover-light-green:hover, -.hover-light-green:focus { color: #9eebcf; } -.hover-navy:hover, -.hover-navy:focus { color: #001b44; } -.hover-dark-blue:hover, -.hover-dark-blue:focus { color: #00449e; } -.hover-blue:hover, -.hover-blue:focus { color: #0594CB; } -.hover-light-blue:hover, -.hover-light-blue:focus { color: #96ccff; } -.hover-lightest-blue:hover, -.hover-lightest-blue:focus { color: #cdecff; } -.hover-washed-blue:hover, -.hover-washed-blue:focus { color: #f6fffe; } -.hover-washed-green:hover, -.hover-washed-green:focus { color: #e8fdf5; } -.hover-washed-yellow:hover, -.hover-washed-yellow:focus { color: #fffceb; } -.hover-washed-red:hover, -.hover-washed-red:focus { color: #ffdfdf; } -.hover-bg-dark-red:hover, -.hover-bg-dark-red:focus { background-color: #e7040f; } -.hover-bg-red:hover, -.hover-bg-red:focus { background-color: #ff4136; } -.hover-bg-light-red:hover, -.hover-bg-light-red:focus { background-color: #ff725c; } -.hover-bg-orange:hover, -.hover-bg-orange:focus { background-color: #ff6300; } -.hover-bg-gold:hover, -.hover-bg-gold:focus { background-color: #ffb700; } -.hover-bg-yellow:hover, -.hover-bg-yellow:focus { background-color: #ffd700; } -.hover-bg-light-yellow:hover, -.hover-bg-light-yellow:focus { background-color: #fbf1a9; } -.hover-bg-purple:hover, -.hover-bg-purple:focus { background-color: #5e2ca5; } -.hover-bg-light-purple:hover, -.hover-bg-light-purple:focus { background-color: #a463f2; } -.hover-bg-dark-pink:hover, -.hover-bg-dark-pink:focus { background-color: #d5008f; } -.hover-bg-hot-pink:hover, -.hover-bg-hot-pink:focus { background-color: #ff41b4; } -.hover-bg-pink:hover, -.hover-bg-pink:focus { background-color: #ff80cc; } -.hover-bg-light-pink:hover, -.hover-bg-light-pink:focus { background-color: #ffa3d7; } -.hover-bg-dark-green:hover, -.hover-bg-dark-green:focus { background-color: #137752; } -.hover-bg-green:hover, -.hover-bg-green:focus { background-color: #19a974; } -.hover-bg-light-green:hover, -.hover-bg-light-green:focus { background-color: #9eebcf; } -.hover-bg-navy:hover, -.hover-bg-navy:focus { background-color: #001b44; } -.hover-bg-dark-blue:hover, -.hover-bg-dark-blue:focus { background-color: #00449e; } -.hover-bg-blue:hover, -.hover-bg-blue:focus { background-color: #0594CB; } -.hover-bg-light-blue:hover, -.hover-bg-light-blue:focus { background-color: #96ccff; } -.hover-bg-lightest-blue:hover, -.hover-bg-lightest-blue:focus { background-color: #cdecff; } -.hover-bg-washed-blue:hover, -.hover-bg-washed-blue:focus { background-color: #f6fffe; } -.hover-bg-washed-green:hover, -.hover-bg-washed-green:focus { background-color: #e8fdf5; } -.hover-bg-washed-yellow:hover, -.hover-bg-washed-yellow:focus { background-color: #fffceb; } -.hover-bg-washed-red:hover, -.hover-bg-washed-red:focus { background-color: #ffdfdf; } -.hover-bg-inherit:hover, -.hover-bg-inherit:focus { background-color: inherit; } -/* Variables */ -/* - SPACING - Docs: http://tachyons.io/docs/layout/spacing/ - - An eight step powers of two scale ranging from 0 to 16rem. - - Base: - p = padding - m = margin - - Modifiers: - a = all - h = horizontal - v = vertical - t = top - r = right - b = bottom - l = left - - 0 = none - 1 = 1st step in spacing scale - 2 = 2nd step in spacing scale - 3 = 3rd step in spacing scale - 4 = 4th step in spacing scale - 5 = 5th step in spacing scale - 6 = 6th step in spacing scale - 7 = 7th step in spacing scale - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.pa0 { padding: 0; } -.pa1 { padding: .25rem; } -.pa2 { padding: .5rem; } -.pa3 { padding: 1rem; } -.pa4 { padding: 2rem; } -.pa5 { padding: 4rem; } -.pa6 { padding: 8rem; } -.pa7 { padding: 16rem; } -.pl0 { padding-left: 0; } -.pl1 { padding-left: .25rem; } -.pl2 { padding-left: .5rem; } -.pl3 { padding-left: 1rem; } -.pl4 { padding-left: 2rem; } -.pl5 { padding-left: 4rem; } -.pl6 { padding-left: 8rem; } -.pl7 { padding-left: 16rem; } -.pr0 { padding-right: 0; } -.pr1 { padding-right: .25rem; } -.pr2 { padding-right: .5rem; } -.pr3 { padding-right: 1rem; } -.pr4 { padding-right: 2rem; } -.pr5 { padding-right: 4rem; } -.pr6 { padding-right: 8rem; } -.pr7 { padding-right: 16rem; } -.pb0 { padding-bottom: 0; } -.pb1 { padding-bottom: .25rem; } -.pb2 { padding-bottom: .5rem; } -.pb3 { padding-bottom: 1rem; } -.pb4 { padding-bottom: 2rem; } -.pb5 { padding-bottom: 4rem; } -.pb6 { padding-bottom: 8rem; } -.pb7 { padding-bottom: 16rem; } -.pt0 { padding-top: 0; } -.pt1 { padding-top: .25rem; } -.pt2 { padding-top: .5rem; } -.pt3 { padding-top: 1rem; } -.pt4 { padding-top: 2rem; } -.pt5 { padding-top: 4rem; } -.pt6 { padding-top: 8rem; } -.pt7 { padding-top: 16rem; } -.pv0 { - padding-top: 0; - padding-bottom: 0; -} -.pv1 { - padding-top: .25rem; - padding-bottom: .25rem; -} -.pv2 { - padding-top: .5rem; - padding-bottom: .5rem; -} -.pv3 { - padding-top: 1rem; - padding-bottom: 1rem; -} -.pv4 { - padding-top: 2rem; - padding-bottom: 2rem; -} -.pv5 { - padding-top: 4rem; - padding-bottom: 4rem; -} -.pv6 { - padding-top: 8rem; - padding-bottom: 8rem; -} -.pv7 { - padding-top: 16rem; - padding-bottom: 16rem; -} -.ph0 { - padding-left: 0; - padding-right: 0; -} -.ph1 { - padding-left: .25rem; - padding-right: .25rem; -} -.ph2 { - padding-left: .5rem; - padding-right: .5rem; -} -.ph3 { - padding-left: 1rem; - padding-right: 1rem; -} -.ph4 { - padding-left: 2rem; - padding-right: 2rem; -} -.ph5 { - padding-left: 4rem; - padding-right: 4rem; -} -.ph6 { - padding-left: 8rem; - padding-right: 8rem; -} -.ph7 { - padding-left: 16rem; - padding-right: 16rem; -} -.ma0 { margin: 0; } -.ma1 { margin: .25rem; } -.ma2 { margin: .5rem; } -.ma3 { margin: 1rem; } -.ma4 { margin: 2rem; } -.ma5 { margin: 4rem; } -.ma6 { margin: 8rem; } -.ma7 { margin: 16rem; } -.ml0 { margin-left: 0; } -.ml1 { margin-left: .25rem; } -.ml2 { margin-left: .5rem; } -.ml3 { margin-left: 1rem; } -.ml4 { margin-left: 2rem; } -.ml5 { margin-left: 4rem; } -.ml6 { margin-left: 8rem; } -.ml7 { margin-left: 16rem; } -.mr0 { margin-right: 0; } -.mr1 { margin-right: .25rem; } -.mr2 { margin-right: .5rem; } -.mr3 { margin-right: 1rem; } -.mr4 { margin-right: 2rem; } -.mr5 { margin-right: 4rem; } -.mr6 { margin-right: 8rem; } -.mr7 { margin-right: 16rem; } -.mb0 { margin-bottom: 0; } -.mb1 { margin-bottom: .25rem; } -.mb2 { margin-bottom: .5rem; } -.mb3 { margin-bottom: 1rem; } -.mb4 { margin-bottom: 2rem; } -.mb5 { margin-bottom: 4rem; } -.mb6 { margin-bottom: 8rem; } -.mb7 { margin-bottom: 16rem; } -.mt0 { margin-top: 0; } -.mt1 { margin-top: .25rem; } -.mt2 { margin-top: .5rem; } -.mt3 { margin-top: 1rem; } -.mt4 { margin-top: 2rem; } -.mt5 { margin-top: 4rem; } -.mt6 { margin-top: 8rem; } -.mt7 { margin-top: 16rem; } -.mv0 { - margin-top: 0; - margin-bottom: 0; -} -.mv1 { - margin-top: .25rem; - margin-bottom: .25rem; -} -.mv2 { - margin-top: .5rem; - margin-bottom: .5rem; -} -.mv3 { - margin-top: 1rem; - margin-bottom: 1rem; -} -.mv4 { - margin-top: 2rem; - margin-bottom: 2rem; -} -.mv5 { - margin-top: 4rem; - margin-bottom: 4rem; -} -.mv6 { - margin-top: 8rem; - margin-bottom: 8rem; -} -.mv7 { - margin-top: 16rem; - margin-bottom: 16rem; -} -.mh0 { - margin-left: 0; - margin-right: 0; -} -.mh1 { - margin-left: .25rem; - margin-right: .25rem; -} -.mh2 { - margin-left: .5rem; - margin-right: .5rem; -} -.mh3 { - margin-left: 1rem; - margin-right: 1rem; -} -.mh4 { - margin-left: 2rem; - margin-right: 2rem; -} -.mh5 { - margin-left: 4rem; - margin-right: 4rem; -} -.mh6 { - margin-left: 8rem; - margin-right: 8rem; -} -.mh7 { - margin-left: 16rem; - margin-right: 16rem; -} -@media screen and (min-width: 30em) { - .pa0-ns { padding: 0; } - .pa1-ns { padding: .25rem; } - .pa2-ns { padding: .5rem; } - .pa3-ns { padding: 1rem; } - .pa4-ns { padding: 2rem; } - .pa5-ns { padding: 4rem; } - .pa6-ns { padding: 8rem; } - .pa7-ns { padding: 16rem; } - - .pl0-ns { padding-left: 0; } - .pl1-ns { padding-left: .25rem; } - .pl2-ns { padding-left: .5rem; } - .pl3-ns { padding-left: 1rem; } - .pl4-ns { padding-left: 2rem; } - .pl5-ns { padding-left: 4rem; } - .pl6-ns { padding-left: 8rem; } - .pl7-ns { padding-left: 16rem; } - - .pr0-ns { padding-right: 0; } - .pr1-ns { padding-right: .25rem; } - .pr2-ns { padding-right: .5rem; } - .pr3-ns { padding-right: 1rem; } - .pr4-ns { padding-right: 2rem; } - .pr5-ns { padding-right: 4rem; } - .pr6-ns { padding-right: 8rem; } - .pr7-ns { padding-right: 16rem; } - - .pb0-ns { padding-bottom: 0; } - .pb1-ns { padding-bottom: .25rem; } - .pb2-ns { padding-bottom: .5rem; } - .pb3-ns { padding-bottom: 1rem; } - .pb4-ns { padding-bottom: 2rem; } - .pb5-ns { padding-bottom: 4rem; } - .pb6-ns { padding-bottom: 8rem; } - .pb7-ns { padding-bottom: 16rem; } - - .pt0-ns { padding-top: 0; } - .pt1-ns { padding-top: .25rem; } - .pt2-ns { padding-top: .5rem; } - .pt3-ns { padding-top: 1rem; } - .pt4-ns { padding-top: 2rem; } - .pt5-ns { padding-top: 4rem; } - .pt6-ns { padding-top: 8rem; } - .pt7-ns { padding-top: 16rem; } - - .pv0-ns { - padding-top: 0; - padding-bottom: 0; - } - .pv1-ns { - padding-top: .25rem; - padding-bottom: .25rem; - } - .pv2-ns { - padding-top: .5rem; - padding-bottom: .5rem; - } - .pv3-ns { - padding-top: 1rem; - padding-bottom: 1rem; - } - .pv4-ns { - padding-top: 2rem; - padding-bottom: 2rem; - } - .pv5-ns { - padding-top: 4rem; - padding-bottom: 4rem; - } - .pv6-ns { - padding-top: 8rem; - padding-bottom: 8rem; - } - .pv7-ns { - padding-top: 16rem; - padding-bottom: 16rem; - } - .ph0-ns { - padding-left: 0; - padding-right: 0; - } - .ph1-ns { - padding-left: .25rem; - padding-right: .25rem; - } - .ph2-ns { - padding-left: .5rem; - padding-right: .5rem; - } - .ph3-ns { - padding-left: 1rem; - padding-right: 1rem; - } - .ph4-ns { - padding-left: 2rem; - padding-right: 2rem; - } - .ph5-ns { - padding-left: 4rem; - padding-right: 4rem; - } - .ph6-ns { - padding-left: 8rem; - padding-right: 8rem; - } - .ph7-ns { - padding-left: 16rem; - padding-right: 16rem; - } - - .ma0-ns { margin: 0; } - .ma1-ns { margin: .25rem; } - .ma2-ns { margin: .5rem; } - .ma3-ns { margin: 1rem; } - .ma4-ns { margin: 2rem; } - .ma5-ns { margin: 4rem; } - .ma6-ns { margin: 8rem; } - .ma7-ns { margin: 16rem; } - - .ml0-ns { margin-left: 0; } - .ml1-ns { margin-left: .25rem; } - .ml2-ns { margin-left: .5rem; } - .ml3-ns { margin-left: 1rem; } - .ml4-ns { margin-left: 2rem; } - .ml5-ns { margin-left: 4rem; } - .ml6-ns { margin-left: 8rem; } - .ml7-ns { margin-left: 16rem; } - - .mr0-ns { margin-right: 0; } - .mr1-ns { margin-right: .25rem; } - .mr2-ns { margin-right: .5rem; } - .mr3-ns { margin-right: 1rem; } - .mr4-ns { margin-right: 2rem; } - .mr5-ns { margin-right: 4rem; } - .mr6-ns { margin-right: 8rem; } - .mr7-ns { margin-right: 16rem; } - - .mb0-ns { margin-bottom: 0; } - .mb1-ns { margin-bottom: .25rem; } - .mb2-ns { margin-bottom: .5rem; } - .mb3-ns { margin-bottom: 1rem; } - .mb4-ns { margin-bottom: 2rem; } - .mb5-ns { margin-bottom: 4rem; } - .mb6-ns { margin-bottom: 8rem; } - .mb7-ns { margin-bottom: 16rem; } - - .mt0-ns { margin-top: 0; } - .mt1-ns { margin-top: .25rem; } - .mt2-ns { margin-top: .5rem; } - .mt3-ns { margin-top: 1rem; } - .mt4-ns { margin-top: 2rem; } - .mt5-ns { margin-top: 4rem; } - .mt6-ns { margin-top: 8rem; } - .mt7-ns { margin-top: 16rem; } - - .mv0-ns { - margin-top: 0; - margin-bottom: 0; - } - .mv1-ns { - margin-top: .25rem; - margin-bottom: .25rem; - } - .mv2-ns { - margin-top: .5rem; - margin-bottom: .5rem; - } - .mv3-ns { - margin-top: 1rem; - margin-bottom: 1rem; - } - .mv4-ns { - margin-top: 2rem; - margin-bottom: 2rem; - } - .mv5-ns { - margin-top: 4rem; - margin-bottom: 4rem; - } - .mv6-ns { - margin-top: 8rem; - margin-bottom: 8rem; - } - .mv7-ns { - margin-top: 16rem; - margin-bottom: 16rem; - } - - .mh0-ns { - margin-left: 0; - margin-right: 0; - } - .mh1-ns { - margin-left: .25rem; - margin-right: .25rem; - } - .mh2-ns { - margin-left: .5rem; - margin-right: .5rem; - } - .mh3-ns { - margin-left: 1rem; - margin-right: 1rem; - } - .mh4-ns { - margin-left: 2rem; - margin-right: 2rem; - } - .mh5-ns { - margin-left: 4rem; - margin-right: 4rem; - } - .mh6-ns { - margin-left: 8rem; - margin-right: 8rem; - } - .mh7-ns { - margin-left: 16rem; - margin-right: 16rem; - } - -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .pa0-m { padding: 0; } - .pa1-m { padding: .25rem; } - .pa2-m { padding: .5rem; } - .pa3-m { padding: 1rem; } - .pa4-m { padding: 2rem; } - .pa5-m { padding: 4rem; } - .pa6-m { padding: 8rem; } - .pa7-m { padding: 16rem; } - - .pl0-m { padding-left: 0; } - .pl1-m { padding-left: .25rem; } - .pl2-m { padding-left: .5rem; } - .pl3-m { padding-left: 1rem; } - .pl4-m { padding-left: 2rem; } - .pl5-m { padding-left: 4rem; } - .pl6-m { padding-left: 8rem; } - .pl7-m { padding-left: 16rem; } - - .pr0-m { padding-right: 0; } - .pr1-m { padding-right: .25rem; } - .pr2-m { padding-right: .5rem; } - .pr3-m { padding-right: 1rem; } - .pr4-m { padding-right: 2rem; } - .pr5-m { padding-right: 4rem; } - .pr6-m { padding-right: 8rem; } - .pr7-m { padding-right: 16rem; } - - .pb0-m { padding-bottom: 0; } - .pb1-m { padding-bottom: .25rem; } - .pb2-m { padding-bottom: .5rem; } - .pb3-m { padding-bottom: 1rem; } - .pb4-m { padding-bottom: 2rem; } - .pb5-m { padding-bottom: 4rem; } - .pb6-m { padding-bottom: 8rem; } - .pb7-m { padding-bottom: 16rem; } - - .pt0-m { padding-top: 0; } - .pt1-m { padding-top: .25rem; } - .pt2-m { padding-top: .5rem; } - .pt3-m { padding-top: 1rem; } - .pt4-m { padding-top: 2rem; } - .pt5-m { padding-top: 4rem; } - .pt6-m { padding-top: 8rem; } - .pt7-m { padding-top: 16rem; } - - .pv0-m { - padding-top: 0; - padding-bottom: 0; - } - .pv1-m { - padding-top: .25rem; - padding-bottom: .25rem; - } - .pv2-m { - padding-top: .5rem; - padding-bottom: .5rem; - } - .pv3-m { - padding-top: 1rem; - padding-bottom: 1rem; - } - .pv4-m { - padding-top: 2rem; - padding-bottom: 2rem; - } - .pv5-m { - padding-top: 4rem; - padding-bottom: 4rem; - } - .pv6-m { - padding-top: 8rem; - padding-bottom: 8rem; - } - .pv7-m { - padding-top: 16rem; - padding-bottom: 16rem; - } - - .ph0-m { - padding-left: 0; - padding-right: 0; - } - .ph1-m { - padding-left: .25rem; - padding-right: .25rem; - } - .ph2-m { - padding-left: .5rem; - padding-right: .5rem; - } - .ph3-m { - padding-left: 1rem; - padding-right: 1rem; - } - .ph4-m { - padding-left: 2rem; - padding-right: 2rem; - } - .ph5-m { - padding-left: 4rem; - padding-right: 4rem; - } - .ph6-m { - padding-left: 8rem; - padding-right: 8rem; - } - .ph7-m { - padding-left: 16rem; - padding-right: 16rem; - } - - .ma0-m { margin: 0; } - .ma1-m { margin: .25rem; } - .ma2-m { margin: .5rem; } - .ma3-m { margin: 1rem; } - .ma4-m { margin: 2rem; } - .ma5-m { margin: 4rem; } - .ma6-m { margin: 8rem; } - .ma7-m { margin: 16rem; } - - .ml0-m { margin-left: 0; } - .ml1-m { margin-left: .25rem; } - .ml2-m { margin-left: .5rem; } - .ml3-m { margin-left: 1rem; } - .ml4-m { margin-left: 2rem; } - .ml5-m { margin-left: 4rem; } - .ml6-m { margin-left: 8rem; } - .ml7-m { margin-left: 16rem; } - - .mr0-m { margin-right: 0; } - .mr1-m { margin-right: .25rem; } - .mr2-m { margin-right: .5rem; } - .mr3-m { margin-right: 1rem; } - .mr4-m { margin-right: 2rem; } - .mr5-m { margin-right: 4rem; } - .mr6-m { margin-right: 8rem; } - .mr7-m { margin-right: 16rem; } - - .mb0-m { margin-bottom: 0; } - .mb1-m { margin-bottom: .25rem; } - .mb2-m { margin-bottom: .5rem; } - .mb3-m { margin-bottom: 1rem; } - .mb4-m { margin-bottom: 2rem; } - .mb5-m { margin-bottom: 4rem; } - .mb6-m { margin-bottom: 8rem; } - .mb7-m { margin-bottom: 16rem; } - - .mt0-m { margin-top: 0; } - .mt1-m { margin-top: .25rem; } - .mt2-m { margin-top: .5rem; } - .mt3-m { margin-top: 1rem; } - .mt4-m { margin-top: 2rem; } - .mt5-m { margin-top: 4rem; } - .mt6-m { margin-top: 8rem; } - .mt7-m { margin-top: 16rem; } - - .mv0-m { - margin-top: 0; - margin-bottom: 0; - } - .mv1-m { - margin-top: .25rem; - margin-bottom: .25rem; - } - .mv2-m { - margin-top: .5rem; - margin-bottom: .5rem; - } - .mv3-m { - margin-top: 1rem; - margin-bottom: 1rem; - } - .mv4-m { - margin-top: 2rem; - margin-bottom: 2rem; - } - .mv5-m { - margin-top: 4rem; - margin-bottom: 4rem; - } - .mv6-m { - margin-top: 8rem; - margin-bottom: 8rem; - } - .mv7-m { - margin-top: 16rem; - margin-bottom: 16rem; - } - - .mh0-m { - margin-left: 0; - margin-right: 0; - } - .mh1-m { - margin-left: .25rem; - margin-right: .25rem; - } - .mh2-m { - margin-left: .5rem; - margin-right: .5rem; - } - .mh3-m { - margin-left: 1rem; - margin-right: 1rem; - } - .mh4-m { - margin-left: 2rem; - margin-right: 2rem; - } - .mh5-m { - margin-left: 4rem; - margin-right: 4rem; - } - .mh6-m { - margin-left: 8rem; - margin-right: 8rem; - } - .mh7-m { - margin-left: 16rem; - margin-right: 16rem; - } - -} -@media screen and (min-width: 60em) { - .pa0-l { padding: 0; } - .pa1-l { padding: .25rem; } - .pa2-l { padding: .5rem; } - .pa3-l { padding: 1rem; } - .pa4-l { padding: 2rem; } - .pa5-l { padding: 4rem; } - .pa6-l { padding: 8rem; } - .pa7-l { padding: 16rem; } - - .pl0-l { padding-left: 0; } - .pl1-l { padding-left: .25rem; } - .pl2-l { padding-left: .5rem; } - .pl3-l { padding-left: 1rem; } - .pl4-l { padding-left: 2rem; } - .pl5-l { padding-left: 4rem; } - .pl6-l { padding-left: 8rem; } - .pl7-l { padding-left: 16rem; } - - .pr0-l { padding-right: 0; } - .pr1-l { padding-right: .25rem; } - .pr2-l { padding-right: .5rem; } - .pr3-l { padding-right: 1rem; } - .pr4-l { padding-right: 2rem; } - .pr5-l { padding-right: 4rem; } - .pr6-l { padding-right: 8rem; } - .pr7-l { padding-right: 16rem; } - - .pb0-l { padding-bottom: 0; } - .pb1-l { padding-bottom: .25rem; } - .pb2-l { padding-bottom: .5rem; } - .pb3-l { padding-bottom: 1rem; } - .pb4-l { padding-bottom: 2rem; } - .pb5-l { padding-bottom: 4rem; } - .pb6-l { padding-bottom: 8rem; } - .pb7-l { padding-bottom: 16rem; } - - .pt0-l { padding-top: 0; } - .pt1-l { padding-top: .25rem; } - .pt2-l { padding-top: .5rem; } - .pt3-l { padding-top: 1rem; } - .pt4-l { padding-top: 2rem; } - .pt5-l { padding-top: 4rem; } - .pt6-l { padding-top: 8rem; } - .pt7-l { padding-top: 16rem; } - - .pv0-l { - padding-top: 0; - padding-bottom: 0; - } - .pv1-l { - padding-top: .25rem; - padding-bottom: .25rem; - } - .pv2-l { - padding-top: .5rem; - padding-bottom: .5rem; - } - .pv3-l { - padding-top: 1rem; - padding-bottom: 1rem; - } - .pv4-l { - padding-top: 2rem; - padding-bottom: 2rem; - } - .pv5-l { - padding-top: 4rem; - padding-bottom: 4rem; - } - .pv6-l { - padding-top: 8rem; - padding-bottom: 8rem; - } - .pv7-l { - padding-top: 16rem; - padding-bottom: 16rem; - } - - .ph0-l { - padding-left: 0; - padding-right: 0; - } - .ph1-l { - padding-left: .25rem; - padding-right: .25rem; - } - .ph2-l { - padding-left: .5rem; - padding-right: .5rem; - } - .ph3-l { - padding-left: 1rem; - padding-right: 1rem; - } - .ph4-l { - padding-left: 2rem; - padding-right: 2rem; - } - .ph5-l { - padding-left: 4rem; - padding-right: 4rem; - } - .ph6-l { - padding-left: 8rem; - padding-right: 8rem; - } - .ph7-l { - padding-left: 16rem; - padding-right: 16rem; - } - - .ma0-l { margin: 0; } - .ma1-l { margin: .25rem; } - .ma2-l { margin: .5rem; } - .ma3-l { margin: 1rem; } - .ma4-l { margin: 2rem; } - .ma5-l { margin: 4rem; } - .ma6-l { margin: 8rem; } - .ma7-l { margin: 16rem; } - - .ml0-l { margin-left: 0; } - .ml1-l { margin-left: .25rem; } - .ml2-l { margin-left: .5rem; } - .ml3-l { margin-left: 1rem; } - .ml4-l { margin-left: 2rem; } - .ml5-l { margin-left: 4rem; } - .ml6-l { margin-left: 8rem; } - .ml7-l { margin-left: 16rem; } - - .mr0-l { margin-right: 0; } - .mr1-l { margin-right: .25rem; } - .mr2-l { margin-right: .5rem; } - .mr3-l { margin-right: 1rem; } - .mr4-l { margin-right: 2rem; } - .mr5-l { margin-right: 4rem; } - .mr6-l { margin-right: 8rem; } - .mr7-l { margin-right: 16rem; } - - .mb0-l { margin-bottom: 0; } - .mb1-l { margin-bottom: .25rem; } - .mb2-l { margin-bottom: .5rem; } - .mb3-l { margin-bottom: 1rem; } - .mb4-l { margin-bottom: 2rem; } - .mb5-l { margin-bottom: 4rem; } - .mb6-l { margin-bottom: 8rem; } - .mb7-l { margin-bottom: 16rem; } - - .mt0-l { margin-top: 0; } - .mt1-l { margin-top: .25rem; } - .mt2-l { margin-top: .5rem; } - .mt3-l { margin-top: 1rem; } - .mt4-l { margin-top: 2rem; } - .mt5-l { margin-top: 4rem; } - .mt6-l { margin-top: 8rem; } - .mt7-l { margin-top: 16rem; } - - .mv0-l { - margin-top: 0; - margin-bottom: 0; - } - .mv1-l { - margin-top: .25rem; - margin-bottom: .25rem; - } - .mv2-l { - margin-top: .5rem; - margin-bottom: .5rem; - } - .mv3-l { - margin-top: 1rem; - margin-bottom: 1rem; - } - .mv4-l { - margin-top: 2rem; - margin-bottom: 2rem; - } - .mv5-l { - margin-top: 4rem; - margin-bottom: 4rem; - } - .mv6-l { - margin-top: 8rem; - margin-bottom: 8rem; - } - .mv7-l { - margin-top: 16rem; - margin-bottom: 16rem; - } - - .mh0-l { - margin-left: 0; - margin-right: 0; - } - .mh1-l { - margin-left: .25rem; - margin-right: .25rem; - } - .mh2-l { - margin-left: .5rem; - margin-right: .5rem; - } - .mh3-l { - margin-left: 1rem; - margin-right: 1rem; - } - .mh4-l { - margin-left: 2rem; - margin-right: 2rem; - } - .mh5-l { - margin-left: 4rem; - margin-right: 4rem; - } - .mh6-l { - margin-left: 8rem; - margin-right: 8rem; - } - .mh7-l { - margin-left: 16rem; - margin-right: 16rem; - } -} -/* - NEGATIVE MARGINS - - Base: - n = negative - - Modifiers: - a = all - t = top - r = right - b = bottom - l = left - - 1 = 1st step in spacing scale - 2 = 2nd step in spacing scale - 3 = 3rd step in spacing scale - 4 = 4th step in spacing scale - 5 = 5th step in spacing scale - 6 = 6th step in spacing scale - 7 = 7th step in spacing scale - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.na1 { margin: -0.25rem; } -.na2 { margin: -0.5rem; } -.na3 { margin: -1rem; } -.na4 { margin: -2rem; } -.na5 { margin: -4rem; } -.na6 { margin: -8rem; } -.na7 { margin: -16rem; } -.nl1 { margin-left: -0.25rem; } -.nl2 { margin-left: -0.5rem; } -.nl3 { margin-left: -1rem; } -.nl4 { margin-left: -2rem; } -.nl5 { margin-left: -4rem; } -.nl6 { margin-left: -8rem; } -.nl7 { margin-left: -16rem; } -.nr1 { margin-right: -0.25rem; } -.nr2 { margin-right: -0.5rem; } -.nr3 { margin-right: -1rem; } -.nr4 { margin-right: -2rem; } -.nr5 { margin-right: -4rem; } -.nr6 { margin-right: -8rem; } -.nr7 { margin-right: -16rem; } -.nb1 { margin-bottom: -0.25rem; } -.nb2 { margin-bottom: -0.5rem; } -.nb3 { margin-bottom: -1rem; } -.nb4 { margin-bottom: -2rem; } -.nb5 { margin-bottom: -4rem; } -.nb6 { margin-bottom: -8rem; } -.nb7 { margin-bottom: -16rem; } -.nt1 { margin-top: -0.25rem; } -.nt2 { margin-top: -0.5rem; } -.nt3 { margin-top: -1rem; } -.nt4 { margin-top: -2rem; } -.nt5 { margin-top: -4rem; } -.nt6 { margin-top: -8rem; } -.nt7 { margin-top: -16rem; } -@media screen and (min-width: 30em) { - - .na1-ns { margin: -0.25rem; } - .na2-ns { margin: -0.5rem; } - .na3-ns { margin: -1rem; } - .na4-ns { margin: -2rem; } - .na5-ns { margin: -4rem; } - .na6-ns { margin: -8rem; } - .na7-ns { margin: -16rem; } - - .nl1-ns { margin-left: -0.25rem; } - .nl2-ns { margin-left: -0.5rem; } - .nl3-ns { margin-left: -1rem; } - .nl4-ns { margin-left: -2rem; } - .nl5-ns { margin-left: -4rem; } - .nl6-ns { margin-left: -8rem; } - .nl7-ns { margin-left: -16rem; } - - .nr1-ns { margin-right: -0.25rem; } - .nr2-ns { margin-right: -0.5rem; } - .nr3-ns { margin-right: -1rem; } - .nr4-ns { margin-right: -2rem; } - .nr5-ns { margin-right: -4rem; } - .nr6-ns { margin-right: -8rem; } - .nr7-ns { margin-right: -16rem; } - - .nb1-ns { margin-bottom: -0.25rem; } - .nb2-ns { margin-bottom: -0.5rem; } - .nb3-ns { margin-bottom: -1rem; } - .nb4-ns { margin-bottom: -2rem; } - .nb5-ns { margin-bottom: -4rem; } - .nb6-ns { margin-bottom: -8rem; } - .nb7-ns { margin-bottom: -16rem; } - - .nt1-ns { margin-top: -0.25rem; } - .nt2-ns { margin-top: -0.5rem; } - .nt3-ns { margin-top: -1rem; } - .nt4-ns { margin-top: -2rem; } - .nt5-ns { margin-top: -4rem; } - .nt6-ns { margin-top: -8rem; } - .nt7-ns { margin-top: -16rem; } - -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .na1-m { margin: -0.25rem; } - .na2-m { margin: -0.5rem; } - .na3-m { margin: -1rem; } - .na4-m { margin: -2rem; } - .na5-m { margin: -4rem; } - .na6-m { margin: -8rem; } - .na7-m { margin: -16rem; } - - .nl1-m { margin-left: -0.25rem; } - .nl2-m { margin-left: -0.5rem; } - .nl3-m { margin-left: -1rem; } - .nl4-m { margin-left: -2rem; } - .nl5-m { margin-left: -4rem; } - .nl6-m { margin-left: -8rem; } - .nl7-m { margin-left: -16rem; } - - .nr1-m { margin-right: -0.25rem; } - .nr2-m { margin-right: -0.5rem; } - .nr3-m { margin-right: -1rem; } - .nr4-m { margin-right: -2rem; } - .nr5-m { margin-right: -4rem; } - .nr6-m { margin-right: -8rem; } - .nr7-m { margin-right: -16rem; } - - .nb1-m { margin-bottom: -0.25rem; } - .nb2-m { margin-bottom: -0.5rem; } - .nb3-m { margin-bottom: -1rem; } - .nb4-m { margin-bottom: -2rem; } - .nb5-m { margin-bottom: -4rem; } - .nb6-m { margin-bottom: -8rem; } - .nb7-m { margin-bottom: -16rem; } - - .nt1-m { margin-top: -0.25rem; } - .nt2-m { margin-top: -0.5rem; } - .nt3-m { margin-top: -1rem; } - .nt4-m { margin-top: -2rem; } - .nt5-m { margin-top: -4rem; } - .nt6-m { margin-top: -8rem; } - .nt7-m { margin-top: -16rem; } - -} -@media screen and (min-width: 60em) { - .na1-l { margin: -0.25rem; } - .na2-l { margin: -0.5rem; } - .na3-l { margin: -1rem; } - .na4-l { margin: -2rem; } - .na5-l { margin: -4rem; } - .na6-l { margin: -8rem; } - .na7-l { margin: -16rem; } - - .nl1-l { margin-left: -0.25rem; } - .nl2-l { margin-left: -0.5rem; } - .nl3-l { margin-left: -1rem; } - .nl4-l { margin-left: -2rem; } - .nl5-l { margin-left: -4rem; } - .nl6-l { margin-left: -8rem; } - .nl7-l { margin-left: -16rem; } - - .nr1-l { margin-right: -0.25rem; } - .nr2-l { margin-right: -0.5rem; } - .nr3-l { margin-right: -1rem; } - .nr4-l { margin-right: -2rem; } - .nr5-l { margin-right: -4rem; } - .nr6-l { margin-right: -8rem; } - .nr7-l { margin-right: -16rem; } - - .nb1-l { margin-bottom: -0.25rem; } - .nb2-l { margin-bottom: -0.5rem; } - .nb3-l { margin-bottom: -1rem; } - .nb4-l { margin-bottom: -2rem; } - .nb5-l { margin-bottom: -4rem; } - .nb6-l { margin-bottom: -8rem; } - .nb7-l { margin-bottom: -16rem; } - - .nt1-l { margin-top: -0.25rem; } - .nt2-l { margin-top: -0.5rem; } - .nt3-l { margin-top: -1rem; } - .nt4-l { margin-top: -2rem; } - .nt5-l { margin-top: -4rem; } - .nt6-l { margin-top: -8rem; } - .nt7-l { margin-top: -16rem; } -} -/* - - TABLES - Docs: http://tachyons.io/docs/elements/tables/ - -*/ -.collapse { - border-collapse: collapse; - border-spacing: 0; -} -.striped--light-silver:nth-child(odd) { - background-color: #aaa; -} -.striped--moon-gray:nth-child(odd) { - background-color: #ccc; -} -.striped--light-gray:nth-child(odd) { - background-color: #eee; -} -.striped--near-white:nth-child(odd) { - background-color: #f4f4f4; -} -.stripe-light:nth-child(odd) { - background-color: rgba(255, 255, 255, .1); -} -.stripe-dark:nth-child(odd) { - background-color: rgba(0, 0, 0, .1); -} -/* - - TEXT DECORATION - Docs: http://tachyons.io/docs/typography/text-decoration/ - - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.strike { text-decoration: line-through; } -.underline { text-decoration: underline; } -.no-underline { text-decoration: none; } -@media screen and (min-width: 30em) { - .strike-ns { text-decoration: line-through; } - .underline-ns { text-decoration: underline; } - .no-underline-ns { text-decoration: none; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .strike-m { text-decoration: line-through; } - .underline-m { text-decoration: underline; } - .no-underline-m { text-decoration: none; } -} -@media screen and (min-width: 60em) { - .strike-l { text-decoration: line-through; } - .underline-l { text-decoration: underline; } - .no-underline-l { text-decoration: none; } -} -/* - - TEXT ALIGN - Docs: http://tachyons.io/docs/typography/text-align/ - - Base - t = text-align - - Modifiers - l = left - r = right - c = center - j = justify - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.tl { text-align: left; } -.tr { text-align: right; } -.tc { text-align: center; } -.tj { text-align: justify; } -@media screen and (min-width: 30em) { - .tl-ns { text-align: left; } - .tr-ns { text-align: right; } - .tc-ns { text-align: center; } - .tj-ns { text-align: justify; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .tl-m { text-align: left; } - .tr-m { text-align: right; } - .tc-m { text-align: center; } - .tj-m { text-align: justify; } -} -@media screen and (min-width: 60em) { - .tl-l { text-align: left; } - .tr-l { text-align: right; } - .tc-l { text-align: center; } - .tj-l { text-align: justify; } -} -/* - - TEXT TRANSFORM - Docs: http://tachyons.io/docs/typography/text-transform/ - - Base: - tt = text-transform - - Modifiers - c = capitalize - l = lowercase - u = uppercase - n = none - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.ttc { text-transform: capitalize; } -.ttl { text-transform: lowercase; } -.ttu { text-transform: uppercase; } -.ttn { text-transform: none; } -@media screen and (min-width: 30em) { - .ttc-ns { text-transform: capitalize; } - .ttl-ns { text-transform: lowercase; } - .ttu-ns { text-transform: uppercase; } - .ttn-ns { text-transform: none; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .ttc-m { text-transform: capitalize; } - .ttl-m { text-transform: lowercase; } - .ttu-m { text-transform: uppercase; } - .ttn-m { text-transform: none; } -} -@media screen and (min-width: 60em) { - .ttc-l { text-transform: capitalize; } - .ttl-l { text-transform: lowercase; } - .ttu-l { text-transform: uppercase; } - .ttn-l { text-transform: none; } -} -/* - - TYPE SCALE - Docs: http://tachyons.io/docs/typography/scale/ - - Base: - f = font-size - - Modifiers - 1 = 1st step in size scale - 2 = 2nd step in size scale - 3 = 3rd step in size scale - 4 = 4th step in size scale - 5 = 5th step in size scale - 6 = 6th step in size scale - 7 = 7th step in size scale - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large -*/ -/* - * For Hero/Marketing Titles - * - * These generally are too large for mobile - * so be careful using them on smaller screens. - * */ -.f-6, -.f-headline { - font-size: 6rem; -} -.f-5, -.f-subheadline { - font-size: 5rem; -} -/* Type Scale */ -.f1 { font-size: 3rem; } -.f2 { font-size: 2.25rem; } -.f3 { font-size: 1.5rem; } -.f4 { font-size: 1.25rem; } -.f5 { font-size: 1rem; } -.f6 { font-size: .875rem; } -.f7 { font-size: .75rem; } -/* Small and hard to read for many people so use with extreme caution */ -@media screen and (min-width: 30em){ - .f-6-ns, - .f-headline-ns { font-size: 6rem; } - .f-5-ns, - .f-subheadline-ns { font-size: 5rem; } - .f1-ns { font-size: 3rem; } - .f2-ns { font-size: 2.25rem; } - .f3-ns { font-size: 1.5rem; } - .f4-ns { font-size: 1.25rem; } - .f5-ns { font-size: 1rem; } - .f6-ns { font-size: .875rem; } - .f7-ns { font-size: .75rem; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .f-6-m, - .f-headline-m { font-size: 6rem; } - .f-5-m, - .f-subheadline-m { font-size: 5rem; } - .f1-m { font-size: 3rem; } - .f2-m { font-size: 2.25rem; } - .f3-m { font-size: 1.5rem; } - .f4-m { font-size: 1.25rem; } - .f5-m { font-size: 1rem; } - .f6-m { font-size: .875rem; } - .f7-m { font-size: .75rem; } -} -@media screen and (min-width: 60em) { - .f-6-l, - .f-headline-l { - font-size: 6rem; - } - .f-5-l, - .f-subheadline-l { - font-size: 5rem; - } - .f1-l { font-size: 3rem; } - .f2-l { font-size: 2.25rem; } - .f3-l { font-size: 1.5rem; } - .f4-l { font-size: 1.25rem; } - .f5-l { font-size: 1rem; } - .f6-l { font-size: .875rem; } - .f7-l { font-size: .75rem; } -} -/* - - TYPOGRAPHY - http://tachyons.io/docs/typography/measure/ - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -/* Measure is limited to ~66 characters */ -.measure { - max-width: 30em; -} -/* Measure is limited to ~80 characters */ -.measure-wide { - max-width: 34em; -} -/* Measure is limited to ~45 characters */ -.measure-narrow { - max-width: 20em; -} -/* Book paragraph style - paragraphs are indented with no vertical spacing. */ -.indent { - text-indent: 1em; - margin-top: 0; - margin-bottom: 0; -} -.small-caps { - -webkit-font-feature-settings: "c2sc"; - font-feature-settings: "c2sc"; - font-variant: small-caps; -} -/* Combine this class with a width to truncate text (or just leave as is to truncate at width of containing element. */ -.truncate { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; -} -@media screen and (min-width: 30em) { - .measure-ns { - max-width: 30em; - } - .measure-wide-ns { - max-width: 34em; - } - .measure-narrow-ns { - max-width: 20em; - } - .indent-ns { - text-indent: 1em; - margin-top: 0; - margin-bottom: 0; - } - .small-caps-ns { - -webkit-font-feature-settings: "c2sc"; - font-feature-settings: "c2sc"; - font-variant: small-caps; - } - .truncate-ns { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .measure-m { - max-width: 30em; - } - .measure-wide-m { - max-width: 34em; - } - .measure-narrow-m { - max-width: 20em; - } - .indent-m { - text-indent: 1em; - margin-top: 0; - margin-bottom: 0; - } - .small-caps-m { - -webkit-font-feature-settings: "c2sc"; - font-feature-settings: "c2sc"; - font-variant: small-caps; - } - .truncate-m { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } -} -@media screen and (min-width: 60em) { - .measure-l { - max-width: 30em; - } - .measure-wide-l { - max-width: 34em; - } - .measure-narrow-l { - max-width: 20em; - } - .indent-l { - text-indent: 1em; - margin-top: 0; - margin-bottom: 0; - } - .small-caps-l { - -webkit-font-feature-settings: "c2sc"; - font-feature-settings: "c2sc"; - font-variant: small-caps; - } - .truncate-l { - white-space: nowrap; - overflow: hidden; - text-overflow: ellipsis; - } -} -/* - - UTILITIES - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -/* Equivalent to .overflow-y-scroll */ -.overflow-container { - overflow-y: scroll; -} -.center { - margin-right: auto; - margin-left: auto; -} -.mr-auto { margin-right: auto; } -.ml-auto { margin-left: auto; } -@media screen and (min-width: 30em){ - .center-ns { - margin-right: auto; - margin-left: auto; - } - .mr-auto-ns { margin-right: auto; } - .ml-auto-ns { margin-left: auto; } -} -@media screen and (min-width: 30em) and (max-width: 60em){ - .center-m { - margin-right: auto; - margin-left: auto; - } - .mr-auto-m { margin-right: auto; } - .ml-auto-m { margin-left: auto; } -} -@media screen and (min-width: 60em){ - .center-l { - margin-right: auto; - margin-left: auto; - } - .mr-auto-l { margin-right: auto; } - .ml-auto-l { margin-left: auto; } -} -/* - - VISIBILITY - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -/* - Text that is hidden but accessible - Ref: http://snook.ca/archives/html_and_css/hiding-content-for-accessibility -*/ -.clip { - position: fixed !important; - _position: absolute !important; - clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ - clip: rect(1px, 1px, 1px, 1px); -} -@media screen and (min-width: 30em) { - .clip-ns { - position: fixed !important; - _position: absolute !important; - clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ - clip: rect(1px, 1px, 1px, 1px); - } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .clip-m { - position: fixed !important; - _position: absolute !important; - clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ - clip: rect(1px, 1px, 1px, 1px); - } -} -@media screen and (min-width: 60em) { - .clip-l { - position: fixed !important; - _position: absolute !important; - clip: rect(1px 1px 1px 1px); /* IE6, IE7 */ - clip: rect(1px, 1px, 1px, 1px); - } -} -/* - - WHITE SPACE - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.ws-normal { white-space: normal; } -.nowrap { white-space: nowrap; } -.pre { white-space: pre; } -@media screen and (min-width: 30em) { - .ws-normal-ns { white-space: normal; } - .nowrap-ns { white-space: nowrap; } - .pre-ns { white-space: pre; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .ws-normal-m { white-space: normal; } - .nowrap-m { white-space: nowrap; } - .pre-m { white-space: pre; } -} -@media screen and (min-width: 60em) { - .ws-normal-l { white-space: normal; } - .nowrap-l { white-space: nowrap; } - .pre-l { white-space: pre; } -} -/* - - VERTICAL ALIGN - - Media Query Extensions: - -ns = not-small - -m = medium - -l = large - -*/ -.v-base { vertical-align: baseline; } -.v-mid { vertical-align: middle; } -.v-top { vertical-align: top; } -.v-btm { vertical-align: bottom; } -@media screen and (min-width: 30em) { - .v-base-ns { vertical-align: baseline; } - .v-mid-ns { vertical-align: middle; } - .v-top-ns { vertical-align: top; } - .v-btm-ns { vertical-align: bottom; } -} -@media screen and (min-width: 30em) and (max-width: 60em) { - .v-base-m { vertical-align: baseline; } - .v-mid-m { vertical-align: middle; } - .v-top-m { vertical-align: top; } - .v-btm-m { vertical-align: bottom; } -} -@media screen and (min-width: 60em) { - .v-base-l { vertical-align: baseline; } - .v-mid-l { vertical-align: middle; } - .v-top-l { vertical-align: top; } - .v-btm-l { vertical-align: bottom; } -} -/* - - HOVER EFFECTS - Docs: http://tachyons.io/docs/themes/hovers/ - - - Dim - - Glow - - Hide Child - - Underline text - - Grow - - Pointer - - Shadow - -*/ -/* - - Dim element on hover by adding the dim class. - -*/ -.dim { - opacity: 1; - -webkit-transition: opacity .15s ease-in; - transition: opacity .15s ease-in; -} -.dim:hover, -.dim:focus { - opacity: .5; - -webkit-transition: opacity .15s ease-in; - transition: opacity .15s ease-in; -} -.dim:active { - opacity: .8; -webkit-transition: opacity .15s ease-out; transition: opacity .15s ease-out; -} -/* - - Animate opacity to 100% on hover by adding the glow class. - -*/ -.glow { - -webkit-transition: opacity .15s ease-in; - transition: opacity .15s ease-in; -} -.glow:hover, -.glow:focus { - opacity: 1; - -webkit-transition: opacity .15s ease-in; - transition: opacity .15s ease-in; -} -/* - - Hide child & reveal on hover: - - Put the hide-child class on a parent element and any nested element with the - child class will be hidden and displayed on hover or focus. - -
-
Hidden until hover or focus
-
Hidden until hover or focus
-
Hidden until hover or focus
-
Hidden until hover or focus
-
-*/ -.hide-child .child { - opacity: 0; - -webkit-transition: opacity .15s ease-in; - transition: opacity .15s ease-in; -} -.hide-child:hover .child, -.hide-child:focus .child, -.hide-child:active .child { - opacity: 1; - -webkit-transition: opacity .15s ease-in; - transition: opacity .15s ease-in; -} -.underline-hover:hover, -.underline-hover:focus { - text-decoration: underline; -} -/* Can combine this with overflow-hidden to make background images grow on hover - * even if you are using background-size: cover */ -.grow { - -moz-osx-font-smoothing: grayscale; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - -webkit-transform: translateZ(0); - transform: translateZ(0); - -webkit-transition: -webkit-transform 0.25s ease-out; - transition: -webkit-transform 0.25s ease-out; - transition: transform 0.25s ease-out; - transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out; -} -.grow:hover, -.grow:focus { - -webkit-transform: scale(1.05); - transform: scale(1.05); -} -.grow:active { - -webkit-transform: scale(.90); - transform: scale(.90); -} -.grow-large { - -moz-osx-font-smoothing: grayscale; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - -webkit-transform: translateZ(0); - transform: translateZ(0); - -webkit-transition: -webkit-transform .25s ease-in-out; - transition: -webkit-transform .25s ease-in-out; - transition: transform .25s ease-in-out; - transition: transform .25s ease-in-out, -webkit-transform .25s ease-in-out; -} -.grow-large:hover, -.grow-large:focus { - -webkit-transform: scale(1.2); - transform: scale(1.2); -} -.grow-large:active { - -webkit-transform: scale(.95); - transform: scale(.95); -} -/* Add pointer on hover */ -.pointer:hover { - cursor: pointer; -} -/* - Add shadow on hover. - - Performant box-shadow animation pattern from - http://tobiasahlin.com/blog/how-to-animate-box-shadow/ -*/ -.shadow-hover { - cursor: pointer; - position: relative; - -webkit-transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); - transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); -} -.shadow-hover::after { - content: ''; - -webkit-box-shadow: 0px 0px 16px 2px rgba(0, 0, 0, .2); - box-shadow: 0px 0px 16px 2px rgba(0, 0, 0, .2); - border-radius: inherit; - opacity: 0; - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; - z-index: -1; - -webkit-transition: opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); - transition: opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1); -} -.shadow-hover:hover::after, -.shadow-hover:focus::after { - opacity: 1; -} -/* Combine with classes in skins and skins-pseudo for - * many different transition possibilities. */ -.bg-animate, -.bg-animate:hover, -.bg-animate:focus { - -webkit-transition: background-color .15s ease-in-out; - transition: background-color .15s ease-in-out; -} -/* - - Z-INDEX - - Base - z = z-index - - Modifiers - -0 = literal value 0 - -1 = literal value 1 - -2 = literal value 2 - -3 = literal value 3 - -4 = literal value 4 - -5 = literal value 5 - -999 = literal value 999 - -9999 = literal value 9999 - - -max = largest accepted z-index value as integer - - -inherit = string value inherit - -initial = string value initial - -unset = string value unset - - MDN: https://developer.mozilla.org/en/docs/Web/CSS/z-index - Spec: http://www.w3.org/TR/CSS2/zindex.html - Articles: - https://philipwalton.com/articles/what-no-one-told-you-about-z-index/ - - Tips on extending: - There might be a time worth using negative z-index values. - Or if you are using tachyons with another project, you might need to - adjust these values to suit your needs. - -*/ -.z-0 { z-index: 0; } -.z-1 { z-index: 1; } -.z-2 { z-index: 2; } -.z-3 { z-index: 3; } -.z-4 { z-index: 4; } -.z-5 { z-index: 5; } -.z-999 { z-index: 999; } -.z-9999 { z-index: 9999; } -.z-max { - z-index: 2147483647; -} -.z-inherit { z-index: inherit; } -.z-initial { z-index: auto; z-index: initial; } -.z-unset { z-index: unset; } -/* - - NESTED - Tachyons module for styling nested elements - that are generated by a cms. - -*/ -.nested-copy-line-height p, -.nested-copy-line-height ul, -.nested-copy-line-height ol { - line-height: 1.5; -} -.nested-headline-line-height h1, -.nested-headline-line-height h2, -.nested-headline-line-height h3, -.nested-headline-line-height h4, -.nested-headline-line-height h5, -.nested-headline-line-height h6 { - line-height: 1.25; -} -.nested-list-reset ul, -.nested-list-reset ol { - padding-left: 0; - margin-left: 0; - list-style-type: none; -} -.nested-copy-indent p+p { - text-indent: 1em; - margin-top: 0; - margin-bottom: 0; -} -.nested-copy-separator p+p { - margin-top: 1.5em; -} -.nested-img img { - width: 100%; - max-width: 100%; - display: block; -} -.nested-links a { - color: #0594CB; - -webkit-transition: color .15s ease-in; - transition: color .15s ease-in; -} -.nested-links a:hover, -.nested-links a:focus { - color: #96ccff; - -webkit-transition: color .15s ease-in; - transition: color .15s ease-in; -} -/*@import 'tachyons/src/_styles';*/ -/* Variables */ -/* Importing here will allow you to override any variables in the modules */ -/* - - Tachyons - COLOR VARIABLES - - Grayscale - - Solids - - Transparencies - Colors - -*/ -/* - - CUSTOM MEDIA QUERIES - - Media query values can be changed to fit your own content. - There are no magic bullets when it comes to media query width values. - They should be declared in em units - and they should be set to meet - the needs of your content. You can also add additional media queries, - or remove some of the existing ones. - - These media queries can be referenced like so: - - @media (--breakpoint-not-small) { - .medium-and-larger-specific-style { - background-color: red; - } - } - - @media (--breakpoint-medium) { - .medium-screen-specific-style { - background-color: red; - } - } - - @media (--breakpoint-large) { - .large-and-larger-screen-specific-style { - background-color: red; - } - } - -*/ -/* Media Queries */ -/* Debugging */ -/*@import 'tachyons/src/_debug-children'; -@import 'tachyons/src/_debug-grid';*/ -/* Uncomment out the line below to help debug layout issues */ -/* @import 'tachyons/src/_debug'; */ -/* purgecss start ignore */ -.header-link:after { - position: relative; - left: 0.5em; - opacity: 0; - font-size: 0.8em; - -moz-transition: opacity 0.2s ease-in-out 0.1s; - -ms-transition: opacity 0.2s ease-in-out 0.1s; -} -h2:hover .header-link, -h3:hover .header-link, -h4:hover .header-link, -h5:hover .header-link, -h6:hover .header-link { - opacity: 1; -} -.animated { - -webkit-animation-duration: .5s; - animation-duration: .5s; - -webkit-animation-fill-mode: forwards; - animation-fill-mode: forwards; - -webkit-animation-timing-function: ease-in-out; - animation-timing-function: ease-in-out; -} -@-webkit-keyframes fadeIn { - from { - opacity: 0; - } - - to { - opacity: 1; - } -} -@keyframes fadeIn { - from { - opacity: 0; - } - - to { - opacity: 1; - } -} -.fadeIn { - -webkit-animation-name: fadeIn; - animation-name: fadeIn; -} -.animated-delay-1 { - -webkit-animation-delay: 0.5s; - animation-delay: 0.5s; -} -.note, -.warning { - - border-left-width: 4px; - border-left-style: solid; - position: relative; - border-color: #0594CB; - - display: block; -} -.note #exclamation-icon, -.warning #exclamation-icon { - - fill: #0594CB; - position: absolute; - top: 35%; - left: -12px; - /*background-color: white;*/ -} -.admonition-content { - display: block; - margin: 0px; - padding: .125em 1em; - /*margin-left: 1em;*/ - margin-top: 2em; - margin-bottom: 2em; - overflow-x: auto; - /*font-size: .9375em;*/ - background-color: rgba(0, 0, 0, .05); - } -.hide-child-menu .child-menu { - display: none; - } -.hide-child-menu:hover .child-menu, - .hide-child-menu:focus .child-menu, - .hide-child-menu:active .child-menu { - display: block; - } -/*documentation-copy headings exaggerate spacing and size to chunk content */ -.documentation-copy h2 { - margin-top: 3em - } -.documentation-copy h2.minor { - font-size: inherit; - margin-top: inherit; - border-bottom: none; -} -.searchbox{display:inline-block;position:relative;width:200px;height:32px!important;white-space:nowrap;-webkit-box-sizing:border-box;box-sizing:border-box;visibility:visible!important} -.searchbox .algolia-autocomplete{display:block;width:100%;height:100%} -.searchbox__wrapper{width:100%;height:100%;z-index:999;position:relative} -.searchbox__input{display:inline-block;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:background .4s ease,-webkit-box-shadow .4s ease;transition:background .4s ease,-webkit-box-shadow .4s ease;transition:box-shadow .4s ease,background .4s ease;transition:box-shadow .4s ease,background .4s ease,-webkit-box-shadow .4s ease;border:0;border-radius:16px;-webkit-box-shadow:inset 0 0 0 1px #ccc;box-shadow:inset 0 0 0 1px #ccc;background:#fff!important;padding:0 26px 0 32px;width:100%;height:100%;vertical-align:middle;white-space:normal;font-size:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none} -.searchbox__input::-webkit-search-cancel-button,.searchbox__input::-webkit-search-decoration,.searchbox__input::-webkit-search-results-button,.searchbox__input::-webkit-search-results-decoration{display:none} -.searchbox__input:hover{-webkit-box-shadow:inset 0 0 0 1px #b3b3b3;box-shadow:inset 0 0 0 1px #b3b3b3} -.searchbox__input:active,.searchbox__input:focus{outline:0;-webkit-box-shadow:inset 0 0 0 1px #aaa;box-shadow:inset 0 0 0 1px #aaa;background:#fff} -.searchbox__input::-webkit-input-placeholder{color:#aaa} -.searchbox__input:-ms-input-placeholder{color:#aaa} -.searchbox__input::-ms-input-placeholder{color:#aaa} -.searchbox__input::placeholder{color:#aaa} -.searchbox__submit{position:absolute;top:0;margin:0;border:0;border-radius:16px 0 0 16px;background-color:rgba(69, 142, 225, 0);padding:0;width:32px;height:100%;vertical-align:middle;text-align:center;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;right:inherit;left:0} -.searchbox__submit:before{display:inline-block;margin-right:-4px;height:100%;vertical-align:middle;content:""} -.searchbox__submit:active,.searchbox__submit:hover{cursor:pointer} -.searchbox__submit:focus{outline:0} -.searchbox__submit svg{width:14px;height:14px;vertical-align:middle;fill:#6d7e96} -.searchbox__reset{display:block;position:absolute;top:8px;right:8px;margin:0;border:0;background:none;cursor:pointer;padding:0;font-size:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;fill:rgba(0, 0, 0, .5)} -.searchbox__reset.hide{display:none} -.searchbox__reset:focus{outline:0} -.searchbox__reset svg{display:block;margin:4px;width:8px;height:8px} -.searchbox__input:valid~.searchbox__reset{display:block;-webkit-animation-name:sbx-reset-in;animation-name:sbx-reset-in;-webkit-animation-duration:.15s;animation-duration:.15s} -@-webkit-keyframes sbx-reset-in{0%{-webkit-transform:translate3d(-20%,0,0);transform:translate3d(-20%,0,0);opacity:0}to{-webkit-transform:none;transform:none;opacity:1}} -@keyframes sbx-reset-in{0%{-webkit-transform:translate3d(-20%,0,0);transform:translate3d(-20%,0,0);opacity:0}to{-webkit-transform:none;transform:none;opacity:1}} -.algolia-autocomplete.algolia-autocomplete-right .ds-dropdown-menu{right:0!important;left:inherit!important} -.algolia-autocomplete.algolia-autocomplete-right .ds-dropdown-menu:before{right:48px} -.algolia-autocomplete.algolia-autocomplete-left .ds-dropdown-menu{left:0!important;right:inherit!important} -.algolia-autocomplete.algolia-autocomplete-left .ds-dropdown-menu:before{left:48px} -.algolia-autocomplete .ds-dropdown-menu{top:-6px;border-radius:4px;margin:6px 0 0;padding:0;text-align:left;height:auto;position:relative;background:transparent;border:none;z-index:999;max-width:600px;min-width:500px;-webkit-box-shadow:0 1px 0 0 rgba(0, 0, 0, .2),0 2px 3px 0 rgba(0, 0, 0, .1);box-shadow:0 1px 0 0 rgba(0, 0, 0, .2),0 2px 3px 0 rgba(0, 0, 0, .1)} -.algolia-autocomplete .ds-dropdown-menu:before{display:block;position:absolute;content:"";width:14px;height:14px;background:#fff;z-index:1000;top:-7px;border-top:1px solid #d9d9d9;border-right:1px solid #d9d9d9;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);border-radius:2px} -.algolia-autocomplete .ds-dropdown-menu .ds-suggestions{position:relative;z-index:1000;margin-top:8px} -.algolia-autocomplete .ds-dropdown-menu .ds-suggestions a:hover{text-decoration:none} -.algolia-autocomplete .ds-dropdown-menu .ds-suggestion{cursor:pointer} -.algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion.suggestion-layout-simple,.algolia-autocomplete .ds-dropdown-menu .ds-suggestion.ds-cursor .algolia-docsearch-suggestion:not(.suggestion-layout-simple) .algolia-docsearch-suggestion--content{background-color:rgba(69, 142, 225, .05)} -.algolia-autocomplete .ds-dropdown-menu [class^=ds-dataset-]{position:relative;border:1px solid #d9d9d9;background:#fff;border-radius:4px;overflow:auto;padding:0 8px 8px} -.algolia-autocomplete .ds-dropdown-menu *{-webkit-box-sizing:border-box;box-sizing:border-box} -.algolia-autocomplete .algolia-docsearch-suggestion{display:block;position:relative;padding:0 8px;background:#fff;color:#02060c;overflow:hidden} -.algolia-autocomplete .algolia-docsearch-suggestion--highlight{color:#174d8c;background:rgba(143, 187, 237, .1);padding:.1em .05em} -.algolia-autocomplete .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--category-header-lvl0 .algolia-docsearch-suggestion--highlight,.algolia-autocomplete .algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--category-header-lvl1 .algolia-docsearch-suggestion--highlight,.algolia-autocomplete .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{padding:0 0 1px;background:inherit;-webkit-box-shadow:inset 0 -2px 0 0 rgba(69, 142, 225, .8);box-shadow:inset 0 -2px 0 0 rgba(69, 142, 225, .8);color:inherit} -.algolia-autocomplete .algolia-docsearch-suggestion--content{display:block;float:right;width:70%;position:relative;padding:5.33333px 0 5.33333px 10.66667px;cursor:pointer} -.algolia-autocomplete .algolia-docsearch-suggestion--content:before{content:"";position:absolute;display:block;top:0;height:100%;width:1px;background:#ddd;left:-1px} -.algolia-autocomplete .algolia-docsearch-suggestion--category-header{position:relative;border-bottom:1px solid #ddd;display:none;margin-top:8px;padding:4px 0;font-size:1em;color:#33363d} -.algolia-autocomplete .algolia-docsearch-suggestion--wrapper{width:100%;float:left;padding:8px 0 0} -.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column{float:left;width:30%;text-align:right;position:relative;padding:5.33333px 10.66667px;color:#a4a7ae;font-size:.9em;word-wrap:break-word} -.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-column:before{content:"";position:absolute;display:block;top:0;height:100%;width:1px;background:#ddd;right:0} -.algolia-autocomplete .algolia-docsearch-suggestion--subcategory-inline{display:none} -.algolia-autocomplete .algolia-docsearch-suggestion--title{margin-bottom:4px;color:#02060c;font-size:.9em;font-weight:700} -.algolia-autocomplete .algolia-docsearch-suggestion--text{display:block;line-height:1.2em;font-size:.85em;color:#63676d} -.algolia-autocomplete .algolia-docsearch-suggestion--no-results{width:100%;padding:8px 0;text-align:center;font-size:1.2em} -.algolia-autocomplete .algolia-docsearch-suggestion--no-results:before{display:none} -.algolia-autocomplete .algolia-docsearch-suggestion code{padding:1px 5px;font-size:90%;border:none;color:#222;background-color:#ebebeb;border-radius:3px;font-family:Menlo,Monaco,Consolas,Courier New,monospace} -.algolia-autocomplete .algolia-docsearch-suggestion code .algolia-docsearch-suggestion--highlight{background:none} -.algolia-autocomplete .algolia-docsearch-suggestion.algolia-docsearch-suggestion__main .algolia-docsearch-suggestion--category-header,.algolia-autocomplete .algolia-docsearch-suggestion.algolia-docsearch-suggestion__secondary{display:block} -@media (min-width:768px){.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{display:block}} -@media (max-width:768px){.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column{display:inline-block;width:auto;float:left;padding:0;color:#02060c;font-size:.9em;font-weight:700;text-align:left;opacity:.5}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:before{display:none}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--subcategory-column:after{content:"|"}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content{display:inline-block;width:auto;text-align:left;float:left;padding:0}.algolia-autocomplete .algolia-docsearch-suggestion .algolia-docsearch-suggestion--content:before{display:none}} -.algolia-autocomplete .suggestion-layout-simple.algolia-docsearch-suggestion{border-bottom:1px solid #eee;padding:8px;margin:0} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--content{width:100%;padding:0} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--content:before{display:none} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header{margin:0;padding:0;display:block;width:100%;border:none} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl0,.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl1{opacity:.6;font-size:.85em} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--category-header-lvl1:before{background-image:url('data:image/svg+xml;utf8,');content:"";width:10px;height:10px;display:inline-block} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--wrapper{width:100%;float:left;margin:0;padding:0} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--duplicate-content,.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--subcategory-inline{display:none!important} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--title{margin:0;color:#458ee1;font-size:.9em;font-weight:400} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--title:before{content:"#";font-weight:700;color:#458ee1;display:inline-block} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--text{margin:4px 0 0;display:block;line-height:1.4em;padding:5.33333px 8px;background:#f8f8f8;font-size:.85em;opacity:.8} -.algolia-autocomplete .suggestion-layout-simple .algolia-docsearch-suggestion--text .algolia-docsearch-suggestion--highlight{color:#3f4145;font-weight:700;-webkit-box-shadow:none;box-shadow:none} -.algolia-autocomplete .algolia-docsearch-footer{width:134px;height:20px;z-index:2000;margin-top:10.66667px;float:right;font-size:0;line-height:0} -.algolia-autocomplete .algolia-docsearch-footer--logo{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg width='168' height='24' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath d='M78.988.938h16.594a2.968 2.968 0 0 1 2.966 2.966V20.5a2.967 2.967 0 0 1-2.966 2.964H78.988a2.967 2.967 0 0 1-2.966-2.964V3.897A2.961 2.961 0 0 1 78.988.938zm41.937 17.866c-4.386.02-4.386-3.54-4.386-4.106l-.007-13.336 2.675-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-10.846-2.18c.821 0 1.43-.047 1.855-.129v-2.719a6.334 6.334 0 0 0-1.574-.199 5.7 5.7 0 0 0-.897.069 2.699 2.699 0 0 0-.814.24c-.24.116-.439.28-.582.491-.15.212-.219.335-.219.656 0 .628.219.991.616 1.23s.938.362 1.615.362zm-.233-9.7c.883 0 1.629.109 2.231.328.602.218 1.088.525 1.444.915.363.396.609.922.76 1.483.157.56.232 1.175.232 1.85v6.874a32.5 32.5 0 0 1-1.868.314c-.834.123-1.772.185-2.813.185-.69 0-1.327-.069-1.895-.198a4.001 4.001 0 0 1-1.471-.636 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.803 0-.656.13-1.073.384-1.525a3.24 3.24 0 0 1 1.047-1.106c.445-.287.95-.492 1.532-.615a8.8 8.8 0 0 1 1.82-.185 8.404 8.404 0 0 1 1.972.24v-.438c0-.307-.035-.6-.11-.874a1.88 1.88 0 0 0-.384-.73 1.784 1.784 0 0 0-.724-.493 3.164 3.164 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.735 7.735 0 0 0-1.26.307l-.321-2.192c.335-.117.834-.233 1.478-.349a10.98 10.98 0 0 1 2.073-.178zm52.842 9.626c.822 0 1.43-.048 1.854-.13V13.7a6.347 6.347 0 0 0-1.574-.199c-.294 0-.595.021-.896.069a2.7 2.7 0 0 0-.814.24 1.46 1.46 0 0 0-.582.491c-.15.212-.218.335-.218.656 0 .628.218.991.615 1.23.404.245.938.362 1.615.362zm-.226-9.694c.883 0 1.629.108 2.231.327.602.219 1.088.526 1.444.915.355.39.609.923.759 1.483a6.8 6.8 0 0 1 .233 1.852v6.873c-.41.088-1.034.19-1.868.314-.834.123-1.772.184-2.813.184-.69 0-1.327-.068-1.895-.198a4.001 4.001 0 0 1-1.471-.635 3.085 3.085 0 0 1-.951-1.134c-.226-.465-.343-1.12-.343-1.804 0-.656.13-1.073.384-1.524.26-.45.608-.82 1.047-1.107.445-.286.95-.491 1.532-.614a8.803 8.803 0 0 1 2.751-.13c.329.034.671.096 1.04.185v-.437a3.3 3.3 0 0 0-.109-.875 1.873 1.873 0 0 0-.384-.731 1.784 1.784 0 0 0-.724-.492 3.165 3.165 0 0 0-1.143-.205c-.616 0-1.177.075-1.69.164a7.75 7.75 0 0 0-1.26.307l-.321-2.193c.335-.116.834-.232 1.478-.348a11.633 11.633 0 0 1 2.073-.177zm-8.034-1.271a1.626 1.626 0 0 1-1.628-1.62c0-.895.725-1.62 1.628-1.62.904 0 1.63.725 1.63 1.62 0 .895-.733 1.62-1.63 1.62zm1.348 13.22h-2.689V7.27l2.69-.423v11.956zm-4.714 0c-4.386.02-4.386-3.54-4.386-4.107l-.008-13.336 2.676-.424v13.254c0 .322 0 2.358 1.718 2.364v2.248zm-8.698-5.903c0-1.156-.253-2.119-.746-2.788-.493-.677-1.183-1.01-2.067-1.01-.882 0-1.574.333-2.065 1.01-.493.676-.733 1.632-.733 2.788 0 1.168.246 1.953.74 2.63.492.683 1.183 1.018 2.066 1.018.882 0 1.574-.342 2.067-1.019.492-.683.738-1.46.738-2.63zm2.737-.007c0 .902-.13 1.584-.397 2.33a5.52 5.52 0 0 1-1.128 1.906 4.986 4.986 0 0 1-1.752 1.223c-.685.286-1.739.45-2.265.45-.528-.006-1.574-.157-2.252-.45a5.096 5.096 0 0 1-1.744-1.223c-.487-.527-.863-1.162-1.137-1.906a6.345 6.345 0 0 1-.41-2.33c0-.902.123-1.77.397-2.508a5.554 5.554 0 0 1 1.15-1.892 5.133 5.133 0 0 1 1.75-1.216c.679-.287 1.425-.423 2.232-.423.808 0 1.553.142 2.237.423a4.88 4.88 0 0 1 1.753 1.216 5.644 5.644 0 0 1 1.135 1.892c.287.738.431 1.606.431 2.508zm-20.138 0c0 1.12.246 2.363.738 2.882.493.52 1.13.78 1.91.78.424 0 .828-.062 1.204-.178.377-.116.677-.253.917-.417V9.33a10.476 10.476 0 0 0-1.766-.226c-.971-.028-1.71.37-2.23 1.004-.513.636-.773 1.75-.773 2.788zm7.438 5.274c0 1.824-.466 3.156-1.404 4.004-.936.846-2.367 1.27-4.296 1.27-.705 0-2.17-.137-3.34-.396l.431-2.118c.98.205 2.272.26 2.95.26 1.074 0 1.84-.219 2.299-.656.459-.437.684-1.086.684-1.948v-.437a8.07 8.07 0 0 1-1.047.397c-.43.13-.93.198-1.492.198-.739 0-1.41-.116-2.018-.349a4.206 4.206 0 0 1-1.567-1.025c-.431-.45-.774-1.017-1.013-1.694-.24-.677-.363-1.885-.363-2.773 0-.834.13-1.88.384-2.577.26-.696.629-1.298 1.129-1.796.493-.498 1.095-.881 1.8-1.162a6.605 6.605 0 0 1 2.428-.457c.87 0 1.67.109 2.45.24.78.129 1.444.265 1.985.415V18.17z' fill='%235468FF'/%3E%3Cpath d='M6.972 6.677v1.627c-.712-.446-1.52-.67-2.425-.67-.585 0-1.045.13-1.38.391a1.24 1.24 0 0 0-.502 1.03c0 .425.164.765.494 1.02.33.256.835.532 1.516.83.447.192.795.356 1.045.495.25.138.537.332.862.582.324.25.563.548.718.894.154.345.23.741.23 1.188 0 .947-.334 1.691-1.004 2.234-.67.542-1.537.814-2.601.814-1.18 0-2.16-.229-2.936-.686v-1.708c.84.628 1.814.942 2.92.942.585 0 1.048-.136 1.388-.407.34-.271.51-.646.51-1.125 0-.287-.1-.55-.302-.79-.203-.24-.42-.42-.655-.542-.234-.123-.585-.29-1.053-.503a61.27 61.27 0 0 1-.582-.271 13.67 13.67 0 0 1-.55-.287 4.275 4.275 0 0 1-.567-.351 6.92 6.92 0 0 1-.455-.4c-.18-.17-.31-.34-.39-.51-.08-.17-.155-.37-.224-.598a2.553 2.553 0 0 1-.104-.742c0-.915.333-1.638.998-2.17.664-.532 1.523-.798 2.576-.798.968 0 1.793.17 2.473.51zm7.468 5.696v-.287c-.022-.607-.187-1.088-.495-1.444-.309-.357-.75-.535-1.324-.535-.532 0-.99.194-1.373.583-.382.388-.622.949-.717 1.683h3.909zm1.005 2.792v1.404c-.596.34-1.383.51-2.362.51-1.255 0-2.255-.377-3-1.132-.744-.755-1.116-1.744-1.116-2.968 0-1.297.34-2.316 1.021-3.055.68-.74 1.548-1.11 2.6-1.11 1.033 0 1.852.323 2.458.966.606.644.91 1.572.91 2.784 0 .33-.033.676-.096 1.038h-5.314c.107.702.405 1.239.894 1.611.49.372 1.106.558 1.85.558.862 0 1.58-.202 2.155-.606zm6.605-1.77h-1.212c-.596 0-1.045.116-1.349.35-.303.234-.454.532-.454.894 0 .372.117.664.35.877.235.213.575.32 1.022.32.51 0 .912-.142 1.204-.424.293-.281.44-.651.44-1.108v-.91zm-4.068-2.554V9.325c.627-.361 1.457-.542 2.489-.542 2.116 0 3.175 1.026 3.175 3.08V17h-1.548v-.957c-.415.68-1.143 1.02-2.186 1.02-.766 0-1.38-.22-1.843-.661-.462-.442-.694-1.003-.694-1.684 0-.776.293-1.38.878-1.81.585-.431 1.404-.647 2.457-.647h1.34V11.8c0-.554-.133-.971-.399-1.253-.266-.282-.707-.423-1.324-.423a4.07 4.07 0 0 0-2.345.718zm9.333-1.93v1.42c.394-1 1.101-1.5 2.123-1.5.148 0 .313.016.494.048v1.531a1.885 1.885 0 0 0-.75-.143c-.542 0-.989.24-1.34.718-.351.479-.527 1.048-.527 1.707V17h-1.563V8.91h1.563zm5.01 4.084c.022.82.272 1.492.75 2.019.479.526 1.15.79 2.01.79.639 0 1.235-.176 1.788-.527v1.404c-.521.319-1.186.479-1.995.479-1.265 0-2.276-.4-3.031-1.197-.755-.798-1.133-1.792-1.133-2.984 0-1.16.38-2.151 1.14-2.975.761-.825 1.79-1.237 3.088-1.237.702 0 1.346.149 1.93.447v1.436a3.242 3.242 0 0 0-1.77-.495c-.84 0-1.513.266-2.019.798-.505.532-.758 1.213-.758 2.042zM40.24 5.72v4.579c.458-1 1.293-1.5 2.505-1.5.787 0 1.42.245 1.899.734.479.49.718 1.17.718 2.042V17h-1.564v-5.106c0-.553-.14-.98-.422-1.284-.282-.303-.652-.455-1.11-.455-.531 0-1.002.202-1.411.606-.41.405-.615 1.022-.615 1.851V17h-1.563V5.72h1.563zm14.966 10.02c.596 0 1.096-.253 1.5-.758.404-.506.606-1.157.606-1.955 0-.915-.202-1.62-.606-2.114-.404-.495-.92-.742-1.548-.742-.553 0-1.05.224-1.491.67-.442.447-.662 1.133-.662 2.058 0 .958.212 1.67.638 2.138.425.469.946.703 1.563.703zM53.004 5.72v4.42c.574-.894 1.388-1.341 2.44-1.341 1.022 0 1.857.383 2.506 1.149.649.766.973 1.781.973 3.047 0 1.138-.309 2.109-.925 2.912-.617.803-1.463 1.205-2.537 1.205-1.075 0-1.894-.447-2.457-1.34V17h-1.58V5.72h1.58zm9.908 11.104l-3.223-7.913h1.739l1.005 2.632 1.26 3.415c.096-.32.48-1.458 1.15-3.415l.909-2.632h1.66l-2.92 7.866c-.777 2.074-1.963 3.11-3.559 3.11a2.92 2.92 0 0 1-.734-.079v-1.34c.17.042.351.064.543.064 1.032 0 1.755-.57 2.17-1.708z' fill='%235D6494'/%3E%3Cpath d='M89.632 5.967v-.772a.978.978 0 0 0-.978-.977h-2.28a.978.978 0 0 0-.978.977v.793c0 .088.082.15.171.13a7.127 7.127 0 0 1 1.984-.28c.65 0 1.295.088 1.917.259.082.02.164-.04.164-.13m-6.248 1.01l-.39-.389a.977.977 0 0 0-1.382 0l-.465.465a.973.973 0 0 0 0 1.38l.383.383c.062.061.15.047.205-.014.226-.307.472-.601.746-.874.281-.28.568-.526.883-.751.068-.042.075-.137.02-.2m4.16 2.453v3.341c0 .096.104.165.192.117l2.97-1.537c.068-.034.089-.117.055-.184a3.695 3.695 0 0 0-3.08-1.866c-.068 0-.136.054-.136.13m0 8.048a4.489 4.489 0 0 1-4.49-4.482 4.488 4.488 0 0 1 4.49-4.482 4.488 4.488 0 0 1 4.489 4.482 4.484 4.484 0 0 1-4.49 4.482m0-10.85a6.363 6.363 0 1 0 0 12.729 6.37 6.37 0 0 0 6.372-6.368 6.358 6.358 0 0 0-6.371-6.36' fill='%23FFF'/%3E%3C/g%3E%3C/svg%3E");background-repeat:no-repeat;background-position:50%;background-size:100%;overflow:hidden;text-indent:-9000px;padding:0!important;width:100%;height:100%;display:block} -/* These styles enhance the home page carousel, located here: themes/gohugoioTheme/layouts/partials/home-page-sections/showcase.html */ -.overflow-x-scroll{ - -webkit-overflow-scrolling: touch; -} -.row { - -webkit-transition: 450ms -webkit-transform; - transition: 450ms -webkit-transform; - transition: 450ms transform; - transition: 450ms transform, 450ms -webkit-transform; - font-size: 0; -} -.tile { - -webkit-transition: 450ms all; - transition: 450ms all; -} -.details { - background: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, .9)), to(rgba(0, 0, 0, 0))); - background: linear-gradient(to top, rgba(0, 0, 0, .9) 0%, rgba(0, 0, 0, 0) 100%); - -webkit-transition: 450ms opacity; - transition: 450ms opacity; -} -.tile:hover .details { - opacity: 1; -} -.row:hover .tile { - opacity: 0.3; -} -.row:hover .tile:hover { - opacity: 1; -} -.chroma .lntable pre { - padding: 0; - margin: 0; - border: 0; -} -.chroma .lntable pre code { - padding: 0; - margin: 0; -} -code { - padding: 2px 3px; - margin: 0; - font-size: 93.75%; - background-color: rgba(27, 31, 35, .05); - border-radius: 3px; -} -pre code { - display: block; - padding: 1.5em 1.5em; - font-size: .875rem; - line-height: 2; - overflow-x: auto; -} -pre { - background-color: #fff; - color: #333; - white-space: pre; - -webkit-hyphens: none; - -ms-hyphens: none; - hyphens: none; - position: relative; - border-width: 1px; - border-color: #ccc; - border-style: solid; -} -/* The Pygments highlighter comes with its own styles. */ -.highlight pre { - background-color: inherit; - color: inherit; - padding: 0.5em; - font-size: .875rem; -} -/*We are adding the copy button content here so we can change it with javascript. See the "Clipboard scripts"*/ -.copy:after { - content: "Copy" -} -.copied:after { - content: "Copied" -} -@media screen and (min-width: 60em) { - .full-width - { - /*width: 100vw; - position: relative; - left: 50%; - right: 50%; - margin-left: -50vw; - margin-right: -50vw;*/ - /*width: 60vw;*/ - /*position: relative; - left: 50%; - right: 50%;*/ - /*margin-left: -30vw;*/ - margin-right: -30vw; - max-width: 100vw; - } -} -.code-block .line-numbers-rows { - background: #2f3a46; - border: none; - bottom: -50px; - color: #98a4b3; - left: -178px; - padding: 50px 0; - top: -50px; - width: 138px -} -.code-block .line-numbers-rows>span:before { - color: inherit; - padding-right: 30px -} -.tab-button{ - margin-bottom:1px; - position: relative; - z-index: 1; - color:#333; - border-color:#ccc; - outline: none; - background-color:white; -} -.tab-pane code{ - background:#f1f2f2; - border-radius:0; -} -.tab-pane .chroma{ - background:none; - padding:0; -} -.tab-button.active{ - border-bottom-color:#f1f2f2; - background-color: #f1f2f2; -} -.tab-content .tab-pane{ - display: none; -} -.tab-content .tab-pane.active{ - display: block; -} -/* Treatment of copy buttons inside a tab module */ -.tab-content .copy, .tab-content .copied{ - display: none; -} -.tab-content .tab-pane.active + .copy, .tab-content .tab-pane.active + .copied{ - display: block; -} -.primary-color {color: #0594CB} -.bg-primary-color {background-color: #0594CB} -.hover-bg-primary-color:hover {background-color: #0594CB} -.primary-color-dark {color: #0A1922} -.bg-primary-color-dark {background-color: #0A1922} -.hover-bg-primary-color-dark:hover {background-color: #0A1922} -.primary-color-light {color: #f9f9f9} -.bg-primary-color-light {background-color: #f9f9f9} -.hover-bg-primary-color-light:hover {background-color: #f9f9f9} -.accent-color {color: #EBB951} -.bg-accent-color {background-color: #EBB951} -.hover-bg-accent-color:hover {background-color: #EBB951} -.accent-color-light {color: #FF4088} -.hover-accent-color-light:hover {color: #FF4088} -.bg-accent-color-light {background-color: #FF4088} -.hover-bg-accent-color-light:hover {background-color: #FF4088} -.accent-color-dark {color: #33ba91} -.bg-accent-color-dark {background-color: #33ba91} -.hover-bg-accent-color-dark:hover {background-color: #33ba91} -.text-color-primary {color: #373737} -.text-on-primary-color {color: #fff} -.text-color-secondary {color: #ccc} -.text-color-disabled {color: #F7f7f7} -.divider-color {color: #f6f6f6} -.warn-color {color: red} -.nested-links a { - color: #0594CB; - text-decoration: none; - -} -.column-count-2 {-webkit-column-count: 1;column-count: 1} -.column-gap-1 {-webkit-column-gap: 0;column-gap: 0} -.break-inside-avoid {-webkit-column-break-inside: auto;break-inside: auto} -@media screen and (min-width: 60em) { - .column-count-3-l {-webkit-column-count: 3;column-count: 3} - .column-count-2-l {-webkit-column-count: 2;column-count: 2} - .column-gap-1-l {-webkit-column-gap: 1;column-gap: 1} - .break-inside-avoid-l {-webkit-column-break-inside: avoid;break-inside: avoid} -} -.prose ul, .prose ol { - margin-bottom: 2em; -} -.prose ul li, .prose ol li { - margin-bottom: .5em; -} -.prose li:hover { - background-color: #eee -} -.prose ::selection { - background: #0594CB; /* WebKit/Blink Browsers */ - color: white; -} -.prose-glossary h3 { - margin-top: 0; - font-size: 1.125rem; -} -.prose-glossary h3:first-of-type { - margin-top: 3em; -} -.prose-glossary h3 ~ p { - margin: 0.5em 0 2em 0; -} -body { - -line-height: 1.45; - -} -p {margin-bottom: 1.3em;} -h1, h2, h3, h4 { -margin: 1.414em 0 0.5em; - -line-height: 1.2; -} -h1 { -margin-top: 0; -font-size: 2.441em; -} -h2 {font-size: 1.953em;} -h3 {font-size: 1.563em;} -h4 {font-size: 1.25em;} -small, .font_small {font-size: 0.8em;} -.prose table { - width: 100%; - margin-bottom: 3em; - border-collapse: collapse; - border-spacing: 0; - font-size: 1em; - border: 1px solid #eee - -} -.prose table th { - background-color: #0594CB; - border-bottom: 1px solid #0594CB; - color: white; - font-weight: 400; - text-align: left; - padding: .375em .5em; -} -.prose table td, .prose table tc { - padding: .75em .5em; - text-align: left; - border-right: 1px solid #eee; -} -.prose table tr:nth-child(even) { - background-color: #eee; -} -dl dt { - font-weight: bold; - font-size: 1.125rem; -} -dd { - margin: .5em 0 2em 0; - padding: 0; -} -.f2-fluid { - font-size: 2.25rem; -} -@media screen and (min-width: 60em) { - .f2-fluid { - font-size: 1.25rem; - font-size: calc(0.70833rem + 0.83333vw); - } -} -/* From https://www.cssfontstack.com */ -code, .code, pre code, .highlight pre { - font-family: 'inconsolata',Menlo,Monaco,'Courier New',monospace; -} -.sans-serif { - font-family: 'Muli', Avenir, 'Helvetica Neue', Helvetica, Roboto, Noto, 'Segoe UI', Arial, sans-serif; -} -.serif { - font-family: Palatino,"Palatino Linotype","Palatino LT STD","Book Antiqua",Georgia,serif; -} -/* Monospaced Typefaces (for code) */ -.courier { - font-family: 'Courier Next', - courier, - monospace; -} -/* Sans-Serif Typefaces */ -.helvetica { - font-family: 'helvetica neue', helvetica, - sans-serif; -} -.avenir { - font-family: 'avenir next', avenir, - sans-serif; -} -/* Serif Typefaces */ -.athelas { - font-family: athelas, - georgia, - serif; -} -.georgia { - font-family: georgia, - serif; -} -.times { - font-family: times, - serif; -} -.bodoni { - font-family: "Bodoni MT", - serif; -} -.calisto { - font-family: "Calisto MT", - serif; -} -.garamond { - font-family: garamond, - serif; -} -.baskerville { - font-family: baskerville, - serif; -} -/* pagination.html: https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/template_embedded.go#L117 */ -.pagination { - margin: 3rem 0; -} -.pagination li { - display: inline-block; - margin-right: .375rem; - font-size: .875rem; - margin-bottom: 2.5em; -} -.pagination li a { - padding: .5rem .625rem; - background-color: white; - color: #333; - border: 1px solid #ddd; - border-radius: 3px; - text-decoration: none; -} -.pagination li.disabled { - display: none; -} -.pagination li.active a:link, -.pagination li.active a:active, -.pagination li.active a:visited { - background-color: #ddd; -} -/* Hides non-meaningful TOC items*/ -#TableOfContents ul li ul li ul li{ - display: none; - } -#TableOfContents ul li { - color: black; - display: block; - margin-bottom: .375em; - line-height: 1.375; -} -#TableOfContents ul li a{ - width: 100%; - padding: .25em .375em; - margin-left: -.375em; - -} -#TableOfContents ul li a:hover { - background-color: #999; - color: white; - -} -.no-js .needs-js { - opacity: 0 -} -.js .needs-js { - opacity: 1; - -webkit-transition: opacity .15s ease-in; - transition: opacity .15s ease-in; -} -.facebook, -.twitter, -.instagram, -.youtube { - fill: #bababa; -} -.facebook:hover { - fill: #3b5998; -} -.twitter { - fill: #55acee; -} -.twitter:hover { - fill: #bababa; -} -.instagram:hover { - fill: #e95950; -} -.youtube:hover { - fill: #bb0000; -} -.mstdn { - display: inline-block; - background-color: #282c37; - color: #d9e1e8; - text-decoration: none; - padding: 4px 10px 4px 30px; - border-radius: 4px; - font-size: 16px; - background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2261.076954mm%22%20height%3D%2265.47831mm%22%20viewBox%3D%220%200%20216.4144%20232.00976%22%3E%3Cpath%20d%3D%22M211.80734%20139.0875c-3.18125%2016.36625-28.4925%2034.2775-57.5625%2037.74875-15.15875%201.80875-30.08375%203.47125-45.99875%202.74125-26.0275-1.1925-46.565-6.2125-46.565-6.2125%200%202.53375.15625%204.94625.46875%207.2025%203.38375%2025.68625%2025.47%2027.225%2046.39125%2027.9425%2021.11625.7225%2039.91875-5.20625%2039.91875-5.20625l.8675%2019.09s-14.77%207.93125-41.08125%209.39c-14.50875.7975-32.52375-.365-53.50625-5.91875C9.23234%20213.82%201.40609%20165.31125.20859%20116.09125c-.365-14.61375-.14-28.39375-.14-39.91875%200-50.33%2032.97625-65.0825%2032.97625-65.0825C49.67234%203.45375%2078.20359.2425%20107.86484%200h.72875c29.66125.2425%2058.21125%203.45375%2074.8375%2011.09%200%200%2032.975%2014.7525%2032.975%2065.0825%200%200%20.41375%2037.13375-4.59875%2062.915%22%20fill%3D%22%233088d4%22%2F%3E%3Cpath%20d%3D%22M177.50984%2080.077v60.94125h-24.14375v-59.15c0-12.46875-5.24625-18.7975-15.74-18.7975-11.6025%200-17.4175%207.5075-17.4175%2022.3525v32.37625H96.20734V85.42325c0-14.845-5.81625-22.3525-17.41875-22.3525-10.49375%200-15.74%206.32875-15.74%2018.7975v59.15H38.90484V80.077c0-12.455%203.17125-22.3525%209.54125-29.675%206.56875-7.3225%2015.17125-11.07625%2025.85-11.07625%2012.355%200%2021.71125%204.74875%2027.8975%2014.2475l6.01375%2010.08125%206.015-10.08125c6.185-9.49875%2015.54125-14.2475%2027.8975-14.2475%2010.6775%200%2019.28%203.75375%2025.85%2011.07625%206.36875%207.3225%209.54%2017.22%209.54%2029.675%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E"); - background-size: 16px; - background-repeat: no-repeat; - background-position: top 50% left 8px; - -webkit-transition: all 0.5s; - transition: all 0.5s; -} -.mstdn:hover { - background-color: #484c56; -} -.mstdn > span { - color: #9baec8; - font-size: 12px; - padding-left: 3px; -} -.mstdn > span:before { - content: "@"; -} -@media (min-width: 75em) { - - [data-scrolldir="down"] .sticky { - position: fixed; - top:100px; - right:0; - } - - [data-scrolldir="up"] .sticky { - position: fixed; - top:100px; - right:0; - } -} -#right-sidebar { - scrollbar-width: none; /* hide scrollbar: Firefox */ - -ms-overflow-style: none; /* hide scrollbar: Internet Explorer 10+ */ - height: calc(100vh - 9rem); - overflow-y: auto; -} -#right-sidebar::-webkit-scrollbar { /* hide scrollbar: WebKit */ - width: 0; - height: 0; -} -.fill-current { fill: currentColor; } -/* Background */ -.chroma { background-color: #ffffff } -/* Error */ -.chroma .err { color: #a61717; background-color: #e3d2d2 } -/* LineTableTD */ -.chroma .lntd { vertical-align: top; padding: 0; margin: 0; border: 0; } -/* LineTable */ -.chroma .lntable { border-spacing: 0; padding: 0; margin: 0; border: 0; width: auto; overflow: auto; display: block; } -/* LineHighlight */ -.chroma .hl { display: block; width: 100%;background-color: #ffffcc } -/* LineNumbersTable */ -.chroma .lnt { margin-right: 0.4em; padding: 0 0.4em 0 0.4em; } -/* LineNumbers */ -.chroma .ln { margin-right: 0.4em; padding: 0 0.4em 0 0.4em; } -/* Keyword */ -.chroma .k { font-weight: bold } -/* KeywordConstant */ -.chroma .kc { font-weight: bold } -/* KeywordDeclaration */ -.chroma .kd { font-weight: bold } -/* KeywordNamespace */ -.chroma .kn { font-weight: bold } -/* KeywordPseudo */ -.chroma .kp { font-weight: bold } -/* KeywordReserved */ -.chroma .kr { font-weight: bold } -/* KeywordType */ -.chroma .kt { color: #445588; font-weight: bold } -/* NameAttribute */ -.chroma .na { color: #008080 } -/* NameBuiltin */ -.chroma .nb { color: #999999 } -/* NameClass */ -.chroma .nc { color: #445588; font-weight: bold } -/* NameConstant */ -.chroma .no { color: #008080 } -/* NameEntity */ -.chroma .ni { color: #800080 } -/* NameException */ -.chroma .ne { color: #990000; font-weight: bold } -/* NameFunction */ -.chroma .nf { color: #990000; font-weight: bold } -/* NameNamespace */ -.chroma .nn { color: #555555 } -/* NameTag */ -.chroma .nt { color: #000080 } -/* NameVariable */ -.chroma .nv { color: #008080 } -/* LiteralString */ -.chroma .s { color: #bb8844 } -/* LiteralStringAffix */ -.chroma .sa { color: #bb8844 } -/* LiteralStringBacktick */ -.chroma .sb { color: #bb8844 } -/* LiteralStringChar */ -.chroma .sc { color: #bb8844 } -/* LiteralStringDelimiter */ -.chroma .dl { color: #bb8844 } -/* LiteralStringDoc */ -.chroma .sd { color: #bb8844 } -/* LiteralStringDouble */ -.chroma .s2 { color: #bb8844 } -/* LiteralStringEscape */ -.chroma .se { color: #bb8844 } -/* LiteralStringHeredoc */ -.chroma .sh { color: #bb8844 } -/* LiteralStringInterpol */ -.chroma .si { color: #bb8844 } -/* LiteralStringOther */ -.chroma .sx { color: #bb8844 } -/* LiteralStringRegex */ -.chroma .sr { color: #808000 } -/* LiteralStringSingle */ -.chroma .s1 { color: #bb8844 } -/* LiteralStringSymbol */ -.chroma .ss { color: #bb8844 } -/* LiteralNumber */ -.chroma .m { color: #009999 } -/* LiteralNumberBin */ -.chroma .mb { color: #009999 } -/* LiteralNumberFloat */ -.chroma .mf { color: #009999 } -/* LiteralNumberHex */ -.chroma .mh { color: #009999 } -/* LiteralNumberInteger */ -.chroma .mi { color: #009999 } -/* LiteralNumberIntegerLong */ -.chroma .il { color: #009999 } -/* LiteralNumberOct */ -.chroma .mo { color: #009999 } -/* Operator */ -.chroma .o { font-weight: bold } -/* OperatorWord */ -.chroma .ow { font-weight: bold } -/* Comment */ -.chroma .c { color: #999988; font-style: italic } -/* CommentHashbang */ -.chroma .ch { color: #999988; font-style: italic } -/* CommentMultiline */ -.chroma .cm { color: #999988; font-style: italic } -/* CommentSingle */ -.chroma .c1 { color: #999988; font-style: italic } -/* CommentSpecial */ -.chroma .cs { color: #999999; font-weight: bold; font-style: italic } -/* CommentPreproc */ -.chroma .cp { color: #999999; font-weight: bold } -/* CommentPreprocFile */ -.chroma .cpf { color: #999999; font-weight: bold } -/* GenericDeleted */ -.chroma .gd { color: #000000; background-color: #ffdddd } -/* GenericEmph */ -.chroma .ge { font-style: italic } -/* GenericError */ -.chroma .gr { color: #aa0000 } -/* GenericHeading */ -.chroma .gh { color: #999999 } -/* GenericInserted */ -.chroma .gi { color: #000000; background-color: #ddffdd } -/* GenericOutput */ -.chroma .go { color: #888888 } -/* GenericPrompt */ -.chroma .gp { color: #555555 } -/* GenericStrong */ -.chroma .gs { font-weight: bold } -/* GenericSubheading */ -.chroma .gu { color: #aaaaaa } -/* GenericTraceback */ -.chroma .gt { color: #aa0000 } -/* TextWhitespace */ -.chroma .w { color: #bbbbbb } -@media print { - #page-footer, - body > footer, - body > nav { - display: none; - } -} -/* -Make h6 elements behave like dt elements. Initially implemented to support -linkable glossary entries. - -Yes, it's a hack. That's why it's in the shame file. -*/ -h6 { - margin-top: 0; - margin-bottom: 0; - font-size: 1.125rem; -} -h6:first-of-type { - margin-top: 3em; -} -h6 ~ p { - margin: 0.5em 0 2em 0; -} -/* QR codes */ -img.qrcode { - width: auto; - width: initial; -} -.nested-blockquote blockquote { - border-left: 4px solid #0594CB; - padding-left: 1em; -} -.mw-90 { - max-width:90%; -} -/* purgecss end ignore */ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/assets/output/js/app.js b/_vendor/github.com/gohugoio/gohugoioTheme/assets/output/js/app.js deleted file mode 100644 index a3e1801f8..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/assets/output/js/app.js +++ /dev/null @@ -1,17 +0,0 @@ -!function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=1)}([function(t,e,n){!function(e,n){var r=function(t,e,n){"use strict";var r,i;if(function(){var e,n={lazyClass:"lazyload",loadedClass:"lazyloaded",loadingClass:"lazyloading",preloadClass:"lazypreload",errorClass:"lazyerror",autosizesClass:"lazyautosizes",fastLoadedClass:"ls-is-cached",iframeLoadMode:0,srcAttr:"data-src",srcsetAttr:"data-srcset",sizesAttr:"data-sizes",minSize:40,customMedia:{},init:!0,expFactor:1.5,hFac:.8,loadMode:2,loadHidden:!0,ricTimeout:0,throttleDelay:125};for(e in i=t.lazySizesConfig||t.lazysizesConfig||{},n)e in i||(i[e]=n[e])}(),!e||!e.getElementsByClassName)return{init:function(){},cfg:i,noSupport:!0};var o=e.documentElement,s=t.HTMLPictureElement,a=t.addEventListener.bind(t),u=t.setTimeout,c=t.requestAnimationFrame||u,l=t.requestIdleCallback,h=/^picture$/i,f=["load","error","lazyincluded","_lazyloaded"],d={},p=Array.prototype.forEach,g=function(t,e){return d[e]||(d[e]=new RegExp("(\\s|^)"+e+"(\\s|$)")),d[e].test(t.getAttribute("class")||"")&&d[e]},m=function(t,e){g(t,e)||t.setAttribute("class",(t.getAttribute("class")||"").trim()+" "+e)},y=function(t,e){var n;(n=g(t,e))&&t.setAttribute("class",(t.getAttribute("class")||"").replace(n," "))},v=function(t,e,n){var r=n?"addEventListener":"removeEventListener";n&&v(t,e),f.forEach((function(n){t[r](n,e)}))},b=function(t,n,i,o,s){var a=e.createEvent("Event");return i||(i={}),i.instance=r,a.initEvent(n,!o,!s),a.detail=i,t.dispatchEvent(a),a},w=function(e,n){var r;!s&&(r=t.picturefill||i.pf)?(n&&n.src&&!e.getAttribute("srcset")&&e.setAttribute("srcset",n.src),r({reevaluate:!0,elements:[e]})):n&&n.src&&(e.src=n.src)},_=function(t,e){return(getComputedStyle(t,null)||{})[e]},x=function(t,e,n){for(n=n||t.offsetWidth;n0)&&"visible"!=_(i,"overflow")&&(r=i.getBoundingClientRect(),s=z>r.left&&Fr.top-1&&H500&&o.clientWidth>500?500:370:i.expand,r._defEx=d,p=d*i.expFactor,g=i.hFac,U=null,W2&&D>2&&!e.hidden?(W=p,X=0):W=D>1&&X>1&&Q<6?d:0),f!==c&&($=innerWidth+c*g,M=innerHeight+c,l=-1*c,f=c),s=m[n].getBoundingClientRect(),(B=s.bottom)>=l&&(H=s.top)<=M&&(z=s.right)>=l*g&&(F=s.left)<=$&&(B||z||F||H)&&(i.loadHidden||Z(m[n]))&&(R&&Q<3&&!h&&(D<3||X<4)||Y(m[n],c))){if(at(m[n]),u=!0,Q>9)break}else!u&&R&&!a&&Q<4&&X<4&&D>2&&(L[0]||i.preloadAfterLoad)&&(L[0]||!h&&(B||z||F||H||"auto"!=m[n].getAttribute(i.sizesAttr)))&&(a=L[0]||m[n]);a&&!u&&at(a)}},et=function(t){var e,r=0,o=i.throttleDelay,s=i.ricTimeout,a=function(){e=!1,r=n.now(),t()},c=l&&s>49?function(){l(a,{timeout:s}),s!==i.ricTimeout&&(s=i.ricTimeout)}:C((function(){u(a)}),!0);return function(t){var i;(t=!0===t)&&(s=33),e||(e=!0,(i=o-(n.now()-r))<0&&(i=0),t||i<9?c():u(c,i))}}(tt),nt=function(t){var e=t.target;e._lazyCache?delete e._lazyCache:(G(t),m(e,i.loadedClass),y(e,i.loadingClass),v(e,it),b(e,"lazyloaded"))},rt=C(nt),it=function(t){rt({target:t.target})},ot=function(t){var e,n=t.getAttribute(i.srcsetAttr);(e=i.customMedia[t.getAttribute("data-media")||t.getAttribute("media")])&&t.setAttribute("media",e),n&&t.setAttribute("srcset",n)},st=C((function(t,e,n,r,o){var s,a,c,l,f,d;(f=b(t,"lazybeforeunveil",e)).defaultPrevented||(r&&(n?m(t,i.autosizesClass):t.setAttribute("sizes",r)),a=t.getAttribute(i.srcsetAttr),s=t.getAttribute(i.srcAttr),o&&(l=(c=t.parentNode)&&h.test(c.nodeName||"")),d=e.firesLoad||"src"in t&&(a||s||l),f={target:t},m(t,i.loadingClass),d&&(clearTimeout(P),P=u(G,2500),v(t,it,!0)),l&&p.call(c.getElementsByTagName("source"),ot),a?t.setAttribute("srcset",a):s&&!l&&(K.test(t.nodeName)?function(t,e){var n=t.getAttribute("data-load-mode")||i.iframeLoadMode;0==n?t.contentWindow.location.replace(e):1==n&&(t.src=e)}(t,s):t.src=s),o&&(a||l)&&w(t,{src:s})),t._lazyRace&&delete t._lazyRace,y(t,i.lazyClass),S((function(){var e=t.complete&&t.naturalWidth>1;d&&!e||(e&&m(t,i.fastLoadedClass),nt(f),t._lazyCache=!0,u((function(){"_lazyCache"in t&&delete t._lazyCache}),9)),"lazy"==t.loading&&Q--}),!0)})),at=function(t){if(!t._lazyRace){var e,n=V.test(t.nodeName),r=n&&(t.getAttribute(i.sizesAttr)||t.getAttribute("sizes")),o="auto"==r;(!o&&R||!n||!t.getAttribute("src")&&!t.srcset||t.complete||g(t,i.errorClass)||!g(t,i.lazyClass))&&(e=b(t,"lazyunveilread").detail,o&&T.updateElem(t,!0,t.offsetWidth),t._lazyRace=!0,Q++,st(t,e,o,r,n))}},ut=A((function(){i.loadMode=3,et()})),ct=function(){3==i.loadMode&&(i.loadMode=2),ut()},lt=function(){R||(n.now()-q<999?u(lt,999):(R=!0,i.loadMode=3,et(),a("scroll",ct,!0)))},{_:function(){q=n.now(),r.elements=e.getElementsByClassName(i.lazyClass),L=e.getElementsByClassName(i.lazyClass+" "+i.preloadClass),a("scroll",et,!0),a("resize",et,!0),a("pageshow",(function(t){if(t.persisted){var n=e.querySelectorAll("."+i.loadingClass);n.length&&n.forEach&&c((function(){n.forEach((function(t){t.complete&&at(t)}))}))}})),t.MutationObserver?new MutationObserver(et).observe(o,{childList:!0,subtree:!0,attributes:!0}):(o.addEventListener("DOMNodeInserted",et,!0),o.addEventListener("DOMAttrModified",et,!0),setInterval(et,999)),a("hashchange",et,!0),["focus","mouseover","click","load","transitionend","animationend"].forEach((function(t){e.addEventListener(t,et,!0)})),/d$|^c/.test(e.readyState)?lt():(a("load",lt),e.addEventListener("DOMContentLoaded",et),u(lt,2e4)),r.elements.length?(tt(),S._lsFlush()):et()},checkElems:et,unveil:at,_aLSL:ct}),T=(N=C((function(t,e,n,r){var i,o,s;if(t._lazysizesWidth=r,r+="px",t.setAttribute("sizes",r),h.test(e.nodeName||""))for(o=0,s=(i=e.getElementsByTagName("source")).length;o0&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===r(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=(0,a.default)(t,"click",(function(t){return e.onClick(t)}))}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new o.default({action:this.action(e),target:this.target(e),text:this.text(e),container:this.container,trigger:e,emitter:this})}},{key:"defaultAction",value:function(t){return l("action",t)}},{key:"defaultTarget",value:function(t){var e=l("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return l("text",t)}},{key:"destroy",value:function(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["copy","cut"],e="string"==typeof t?[t]:t,n=!!document.queryCommandSupported;return e.forEach((function(t){n=n&&!!document.queryCommandSupported(t)})),n}}]),e}(s.default);function l(t,e){var n="data-clipboard-"+t;if(e.hasAttribute(n))return e.getAttribute(n)}t.exports=c},function(t,e,n){"use strict";var r,i="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},o=function(){function t(t,e){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};this.action=t.action,this.container=t.container,this.emitter=t.emitter,this.target=t.target,this.text=t.text,this.trigger=t.trigger,this.selectedText=""}},{key:"initSelection",value:function(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function(){var t=this,e="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return t.removeFake()},this.fakeHandler=this.container.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[e?"right":"left"]="-9999px";var n=window.pageYOffset||document.documentElement.scrollTop;this.fakeElem.style.top=n+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,this.container.appendChild(this.fakeElem),this.selectedText=(0,a.default)(this.fakeElem),this.copyText()}},{key:"removeFake",value:function(){this.fakeHandler&&(this.container.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(this.container.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function(){this.selectedText=(0,a.default)(this.target),this.copyText()}},{key:"copyText",value:function(){var t=void 0;try{t=document.execCommand(this.action)}catch(e){t=!1}this.handleResult(t)}},{key:"handleResult",value:function(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function(){this.trigger&&this.trigger.focus(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function(){this.removeFake()}},{key:"action",set:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"copy";if(this._action=t,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function(){return this._action}},{key:"target",set:function(t){if(void 0!==t){if(!t||"object"!==(void 0===t?"undefined":i(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function(){return this._target}}]),t}();t.exports=u},function(t,e){t.exports=function(t){var e;if("SELECT"===t.nodeName)t.focus(),e=t.value;else if("INPUT"===t.nodeName||"TEXTAREA"===t.nodeName){var n=t.hasAttribute("readonly");n||t.setAttribute("readonly",""),t.select(),t.setSelectionRange(0,t.value.length),n||t.removeAttribute("readonly"),e=t.value}else{t.hasAttribute("contenteditable")&&t.focus();var r=window.getSelection(),i=document.createRange();i.selectNodeContents(t),r.removeAllRanges(),r.addRange(i),e=r.toString()}return e}},function(t,e){function n(){}n.prototype={on:function(t,e,n){var r=this.e||(this.e={});return(r[t]||(r[t]=[])).push({fn:e,ctx:n}),this},once:function(t,e,n){var r=this;function i(){r.off(t,i),e.apply(n,arguments)}return i._=e,this.on(t,i,n)},emit:function(t){for(var e=[].slice.call(arguments,1),n=((this.e||(this.e={}))[t]||[]).slice(),r=0,i=n.length;r";var r=document.createElement("div");r.appendChild(document.createTextNode(e)),n=n||"";var i=document.createElement("div");i.appendChild(document.createTextNode(n));var s=document.createElement("div");return s.appendChild(document.createTextNode(t)),s.innerHTML.replace(RegExp(o(r.innerHTML),"g"),e).replace(RegExp(o(i.innerHTML),"g"),n)}}},function(t,e,n){"use strict";t.exports={element:null}},function(t,e){var n=Object.prototype.hasOwnProperty,r=Object.prototype.toString;t.exports=function(t,e,i){if("[object Function]"!==r.call(e))throw new TypeError("iterator must be a function");var o=t.length;if(o===+o)for(var s=0;s was loaded but did not call our provided callback"),JSONPScriptError:o("JSONPScriptError"," -{{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/icon-link.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/icon-link.html deleted file mode 100644 index dec9ae48b..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/icon-link.html +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/maintenance-pages-table.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/maintenance-pages-table.html deleted file mode 100644 index f1fb6d059..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/maintenance-pages-table.html +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - {{ range . }} - - - - - - {{ end }} - -
LastModLinkGitHub
{{ .Lastmod.Format "2006-01-02" }} - {{ .Title }} - - - {{ with .GitInfo }}{{ .Subject }}{{ else }}Source{{ end }} - -
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/math.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/math.html deleted file mode 100644 index defcaa055..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/math.html +++ /dev/null @@ -1,9 +0,0 @@ - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-docs-mobile.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-docs-mobile.html deleted file mode 100644 index a8fc27e21..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-docs-mobile.html +++ /dev/null @@ -1,11 +0,0 @@ -{{ $currentPage := . }} -{{ $menu := .Site.Menus.docs.ByWeight }} -
    - {{ range $menu }}{{ $post := printf "%s" .Post }} -
  • - - {{ .Name }} - -
  • - {{end}} -
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-docs.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-docs.html deleted file mode 100644 index 61aa11dde..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-docs.html +++ /dev/null @@ -1,23 +0,0 @@ -{{ $currentPage := . }} - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-global-mobile.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-global-mobile.html deleted file mode 100644 index 6ad98923e..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links-global-mobile.html +++ /dev/null @@ -1,11 +0,0 @@ -{{ $currentPage := . }} -{{ $menu := .Site.Menus.global }} - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links.html deleted file mode 100644 index af3790b16..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-links.html +++ /dev/null @@ -1,37 +0,0 @@ -{{ $currentPage := . }} -{{ $.Scratch.Add "listlinkClasses" "f6 link primary-color-dark hover-white db brand-font ma0 w-100 pv3 ph4" }} - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-mobile.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-mobile.html deleted file mode 100644 index b04866e52..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-mobile.html +++ /dev/null @@ -1,12 +0,0 @@ - -
- {{ partial "nav-links-docs-mobile.html" . }} -
- -
- - - -
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-top.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-top.html deleted file mode 100644 index f64111409..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/nav-top.html +++ /dev/null @@ -1,16 +0,0 @@ -{{ $currentPage := . }} -
- - - {{ partial "nav-links.html" .}} -
- {{ partial "nav-button-open.html" .}} -
-
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/get-featured-image.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/get-featured-image.html deleted file mode 100644 index 79b315a44..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/get-featured-image.html +++ /dev/null @@ -1,24 +0,0 @@ -{{ $images := $.Resources.ByType "image" }} -{{ $featured := $images.GetMatch "*feature*" }} -{{ if not $featured }}{{ $featured = $images.GetMatch "{*cover*,*thumbnail*}" }}{{ end }} -{{ if not $featured }} - {{ $featured = resources.Get "/opengraph/gohugoio-card-base-1.png" }} - {{ $size := 80 }} - {{ $title := $.LinkTitle }} - {{ if gt (len $title) 20 }} - {{ $size = 70 }} - {{ end }} - - {{ $text := $title }} - {{ $textOptions := dict - "color" "#FFF" - "size" $size - "lineSpacing" 10 - "x" 65 "y" 80 - "font" (resources.Get "/opengraph/mulish-black.ttf") - }} - - {{ $featured = $featured | images.Filter (images.Text $text $textOptions) }} -{{ end }} - -{{ return $featured }} \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/opengraph.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/opengraph.html deleted file mode 100644 index 6d195ede6..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/opengraph.html +++ /dev/null @@ -1,42 +0,0 @@ - - - - - -{{- with $.Params.images -}} -{{- range first 6 . }}{{ end -}} -{{- else -}} -{{- $featured := partial "opengraph/get-featured-image.html" . }} -{{- with $featured -}} - -{{- else -}} -{{- with $.Site.Params.images }}{{ end -}} -{{- end -}} -{{- end -}} - -{{- if .IsPage }} -{{- $iso8601 := "2006-01-02T15:04:05-07:00" -}} - -{{ with .PublishDate }}{{ end }} -{{ with .Lastmod }}{{ end }} -{{- end -}} - -{{- with .Params.audio }}{{ end }} -{{- with .Params.locale }}{{ end }} -{{- with .Site.Params.title }}{{ end }} -{{- with .Params.videos }}{{- range . }} - -{{ end }}{{ end }} - -{{- /* If it is part of a series, link to related articles */}} -{{- $permalink := .Permalink }} -{{- $siteSeries := .Site.Taxonomies.series }} -{{ with .Params.series }}{{- range $name := . }} - {{- $series := index $siteSeries ($name | urlize) }} - {{- range $page := first 6 $series.Pages }} - {{- if ne $page.Permalink $permalink }}{{ end }} - {{- end }} -{{ end }}{{ end }} - -{{- /* Facebook Page Admin ID for Domain Insights */}} -{{- with site.Params.social.facebook_admin }}{{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/twitter_cards.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/twitter_cards.html deleted file mode 100644 index 456f87b1c..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/opengraph/twitter_cards.html +++ /dev/null @@ -1,22 +0,0 @@ -{{- with $.Params.images -}} - - -{{ else -}} -{{- $featured := partial "opengraph/get-featured-image.html" . }} -{{- with $featured -}} - - -{{- else -}} -{{- with $.Site.Params.images -}} - - -{{ else -}} - -{{- end -}} -{{- end -}} -{{- end }} - - -{{ with site.Params.social.twitter -}} - -{{ end -}} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/page-edit.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/page-edit.html deleted file mode 100644 index f41e5b791..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/page-edit.html +++ /dev/null @@ -1,3 +0,0 @@ -Improve this page diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/page-header.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/page-header.html deleted file mode 100644 index dcc96242f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/page-header.html +++ /dev/null @@ -1,20 +0,0 @@ -{{ $currentPage := . }} -{{ $currentURL := .RelPermalink }} -
-
    - -
  • - - News: - -
  • - {{ range $name, $taxonomy := .Site.Taxonomies.categories }} - {{ $link := $name | printf "%s%s" "/categories/" | printf "%s/" }} -
  • - - {{ $name | humanize }} - -
  • - {{ end }} -
-
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/pagelayout.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/pagelayout.html deleted file mode 100644 index e6b644b2f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/pagelayout.html +++ /dev/null @@ -1,36 +0,0 @@ -{{ $section_to_display := .section_to_display }} -
- -
-
- {{ partial "nav-links-docs.html" .context }} -
- -
- - -
- {{ $interior_classes := .context.Site.Params.flex_box_interior_classes }} -
- {{ $pages := $section_to_display }} - {{ if in (slice "functions" "methods") $.context.Type }} - {{ $pages = $.context.Pages }} - {{ end }} - {{ range $pages }} - {{ partial "boxes-section-summaries.html" (dict "context" . "classes" $interior_classes "fullcontent" true) }} - {{ end }} -
-
- -
- -
- -
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links-in-section-with-title.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links-in-section-with-title.html deleted file mode 100644 index 71a14c0ef..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links-in-section-with-title.html +++ /dev/null @@ -1,14 +0,0 @@ -{{ if or .PrevInSection .NextInSection }} -{{/* this div holds these a tags as a unit for flex-box display */}} - -{{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links-in-section.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links-in-section.html deleted file mode 100644 index af9f4aac1..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links-in-section.html +++ /dev/null @@ -1,16 +0,0 @@ -{{ if or .PrevInSection .NextInSection }} -{{/* this div holds these a tags as a unit for flex-box display */}} - -{{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links.html deleted file mode 100644 index cd43dd840..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/previous-next-links.html +++ /dev/null @@ -1,25 +0,0 @@ -{{if .Prev }} - - {{ partial "svg/ic_chevron_left_black_24px.svg" (dict "size" "30px") }} {{ .Prev.Title }} - -{{end}} - -{{if .Next }} - - {{ .Next.Title }} {{ partial "svg/ic_chevron_right_black_24px.svg" (dict "size" "30px") }} - -{{end}} - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/related.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/related.html deleted file mode 100644 index 53995a486..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/related.html +++ /dev/null @@ -1,22 +0,0 @@ -{{- $heading := "See also" }} -{{- $related := site.RegularPages.Related . | first 5 }} - -{{- if in (slice "functions" "methods") .Type }} - {{- $related = slice }} - {{- range .Params.action.related }} - {{- with site.GetPage (lower .) }} - {{- $related = $related | append . }} - {{- else }} - {{- errorf "The 'related' partial was unable to get page %s" . }} - {{- end }} - {{- end }} -{{- end }} - -{{- with $related }} -

{{ $heading }}

- -{{- end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/right-sidebar.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/right-sidebar.html deleted file mode 100644 index ecdbeb33f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/right-sidebar.html +++ /dev/null @@ -1,29 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-footer.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-footer.html deleted file mode 100644 index 09c013361..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-footer.html +++ /dev/null @@ -1,48 +0,0 @@ -
-
-
- - - -
- Hugo Logo -
- - - - - - {{ with getenv "REPOSITORY_URL" -}} -

Netlify badge

- {{- end }} - -
- -
  - {{ partial "home-page-sections/sponsors.html" (dict "cx" . "gtag" "footer" "classes_section" "pb3 w-100" "classes_copy" "f7 w-90-ns") }} -
- -
- -
  -

The Hugo logos are copyright © Steve Francia 2013–{{ now.Year }}.

-

The Hugo Gopher is based on an original work by Renée French.

-
- - - -
- {{- partial "nav-mobile.html" . -}} -
- -
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-manifest.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-manifest.html deleted file mode 100644 index 54472ba16..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-manifest.html +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-nav.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-nav.html deleted file mode 100644 index f387d66f3..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-nav.html +++ /dev/null @@ -1,38 +0,0 @@ -{{ $currentPage := . }} - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-scripts.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-scripts.html deleted file mode 100644 index 7dec9de18..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-scripts.html +++ /dev/null @@ -1,17 +0,0 @@ - -{{ $scripts := resources.Get "output/js/app.js" }} -{{ $isDev := eq hugo.Environment "development" }} -{{ if not $isDev }} -{{ $scripts = $scripts | fingerprint }} -{{ end }} -{{ with $scripts }} - {{ if $isDev }} - - {{ else }} - - {{ end }} - {{ $.Scratch.Set "scripts" . }} -{{end}} - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-search.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-search.html deleted file mode 100644 index 8c97ac454..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/site-search.html +++ /dev/null @@ -1,6 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/social-follow.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/social-follow.html deleted file mode 100644 index 243b22ccb..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/social-follow.html +++ /dev/null @@ -1,15 +0,0 @@ -gohugoio -Star diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/summary.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/summary.html deleted file mode 100644 index 0f140cf70..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/summary.html +++ /dev/null @@ -1,13 +0,0 @@ -
-
- {{ humanize .Section }} -

- - {{ .Title }} - -

- -
-
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/Twitter_Logo_Blue.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/Twitter_Logo_Blue.svg deleted file mode 100644 index da9438414..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/Twitter_Logo_Blue.svg +++ /dev/null @@ -1 +0,0 @@ -Twitter_Logo_Blue diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/apple.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/apple.svg deleted file mode 100644 index 6f3c20f76..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/apple.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/clipboard.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/clipboard.svg deleted file mode 100644 index e1b170359..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/clipboard.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/clippy.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/clippy.svg deleted file mode 100644 index e1b170359..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/clippy.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/cloud.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/cloud.svg deleted file mode 100644 index 2ea15de87..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/cloud.svg +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/content.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/content.svg deleted file mode 100644 index bc696b90b..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/content.svg +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/design.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/design.svg deleted file mode 100644 index 9f9d71769..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/design.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/exclamation.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/exclamation.svg deleted file mode 100644 index e69de29bb..000000000 diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/facebook.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/facebook.svg deleted file mode 100644 index 6e6af44a2..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/facebook.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/focus.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/focus.svg deleted file mode 100644 index ed2c929b4..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/focus.svg +++ /dev/null @@ -1,11 +0,0 @@ - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/freebsd.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/freebsd.svg deleted file mode 100644 index 842be09a1..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/freebsd.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/functions.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/functions.svg deleted file mode 100644 index 717a35686..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/functions.svg +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/github-corner.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/github-corner.svg deleted file mode 100644 index 29bc57ad3..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/github-corner.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/github-squared.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/github-squared.svg deleted file mode 100644 index dabc741e0..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/github-squared.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gitter.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gitter.svg deleted file mode 100644 index 9c2de7da2..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gitter.svg +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gme.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gme.svg deleted file mode 100644 index 9ab114aa3..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gme.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/godoc-icon.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/godoc-icon.html deleted file mode 100644 index 1a6b82159..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/godoc-icon.html +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-2.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-2.svg deleted file mode 100644 index 961221f18..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-2.svg +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-front.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-front.svg deleted file mode 100644 index 0f8fbe0d9..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-front.svg +++ /dev/null @@ -1,33 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-homepage.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-homepage.svg deleted file mode 100644 index 36d9f1c41..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-homepage.svg +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-side_path.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-side_path.svg deleted file mode 100644 index 05cfb84d1..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-side_path.svg +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-small.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-small.svg deleted file mode 100644 index bc1e5010c..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher-small.svg +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher.svg deleted file mode 100644 index 7f6ec255c..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/gopher.svg +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/hugo-h-only.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/hugo-h-only.svg deleted file mode 100644 index ea72a6f51..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/hugo-h-only.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/hugo.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/hugo.svg deleted file mode 100644 index 58d025596..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/hugo.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_arrow_drop_down.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_arrow_drop_down.svg deleted file mode 100644 index 3ba28c3f5..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_arrow_drop_down.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_arrow_drop_up.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_arrow_drop_up.svg deleted file mode 100644 index 8ec2eb766..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_arrow_drop_up.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_chevron_left_black_24px.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_chevron_left_black_24px.svg deleted file mode 100644 index da37757cf..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_chevron_left_black_24px.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_chevron_right_black_24px.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_chevron_right_black_24px.svg deleted file mode 100644 index 47689a91e..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/ic_chevron_right_black_24px.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/idea.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/idea.svg deleted file mode 100644 index 5c2ccc2f4..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/idea.svg +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/instagram.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/instagram.svg deleted file mode 100644 index ae915113b..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/instagram.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/javascript.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/javascript.svg deleted file mode 100644 index b0e2f5b0d..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/javascript.svg +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/json.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/json.svg deleted file mode 100644 index d2ba6d0fc..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/json.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/link-ext.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/link-ext.svg deleted file mode 100644 index ba9400b7f..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/link-ext.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/link-permalink.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/link-permalink.svg deleted file mode 100644 index f5de52d02..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/link-permalink.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/md.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/md.svg deleted file mode 100644 index f1a794565..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/md.svg +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/mdsolid.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/mdsolid.svg deleted file mode 100644 index d0d9ae938..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/mdsolid.svg +++ /dev/null @@ -1,7 +0,0 @@ - - - - - Svg Vector Icons : http://www.onlinewebfonts.com/icon - - \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/newlogo.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/newlogo.svg deleted file mode 100644 index 83b706383..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/newlogo.svg +++ /dev/null @@ -1,35 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/sass.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/sass.svg deleted file mode 100644 index da3d9cfcf..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/sass.svg +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/search.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/search.svg deleted file mode 100644 index 181789b54..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/search.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/twitter.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/twitter.svg deleted file mode 100644 index 247ca9062..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/twitter.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/website.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/website.svg deleted file mode 100644 index 2bdcf5f94..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/website.svg +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/windows.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/windows.svg deleted file mode 100644 index fe3bf0296..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/windows.svg +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/yaml.svg b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/yaml.svg deleted file mode 100644 index 59eeb71c2..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/svg/yaml.svg +++ /dev/null @@ -1 +0,0 @@ -icon \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/tags.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/tags.html deleted file mode 100644 index 59e3e51a0..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/tags.html +++ /dev/null @@ -1,37 +0,0 @@ -{{ $currentPageUrl := .RelPermalink }} -{{ if and .Params.tags .Site.Taxonomies.tags }} - {{ $name := index .Params.tags 0 }} - {{ $name := $name | urlize }} - {{ $tags := index .Site.Taxonomies.tags $name }} - -
- -
-{{end}} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/robots.txt b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/robots.txt deleted file mode 100644 index 25b9e9a0d..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/robots.txt +++ /dev/null @@ -1,8 +0,0 @@ -User-agent: * -# robotstxt.org - if ENV production variable is false robots will be disallowed. -{{ if eq (getenv "HUGO_ENV") "production" }} - Disallow: admin/ - Disallow: -{{ else }} - Disallow: / -{{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/articlelist.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/articlelist.html deleted file mode 100644 index 2755b1e2d..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/articlelist.html +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - {{ range $ind, $art := $.Site.Data.articles.article }} - - - - - - {{ end }} - -
Title - Author - Date -
{{$art.title | markdownify }}{{ $art.author | markdownify }}{{ $art.date }}
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/chroma-lexers.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/chroma-lexers.html deleted file mode 100644 index 2e10c3dee..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/chroma-lexers.html +++ /dev/null @@ -1,6 +0,0 @@ -
- {{ range .Site.Data.docs.chroma.lexers }} -
{{ .Name }}
-
{{ with .Aliases }}{{ delimit . ", " }}{{ end }}
- {{ end }} -
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/code.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/code.html deleted file mode 100644 index dd21551cb..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/code.html +++ /dev/null @@ -1,35 +0,0 @@ -{{- /* -Renders syntax highlighted code. - -@param {bool} [copy=false] If true, display a copy to clipboard button. -@param {string} [file] The file name to display above the rendered code. -@param {string} [lang] The code language of the inner content. - -@returns {template.HTML} -*/}} - -{{- /* Get parameters. */}} -{{- $copy := false }} -{{- if in (slice "false" false 0) (.Get "copy") }} - {{- $copy = false }} -{{- else if in (slice "true" true 1) (.Get "copy")}} - {{- $copy = true }} -{{- end }} -{{- $file := or (.Get "file") " " }} -{{- $lang := or (.Get "lang") (path.Ext $file | strings.TrimPrefix ".") "text" }} - -{{- /* Use the go-html-template Chroma lexer for HTML. */}} -{{- if eq $lang "html" }} - {{- $lang = "go-html-template" }} -{{- end }} - -{{- /* Render. */}} -
-
{{ $file | htmlUnescape }}
- {{- if $copy }} - - {{- end }} -
- {{- highlight (trim .Inner "\n\r") $lang }} -
-
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/funcsig.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/funcsig.html deleted file mode 100644 index 4e96504ab..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/funcsig.html +++ /dev/null @@ -1,4 +0,0 @@ -

Syntax

-
-  {{- .Inner -}}
-
diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/gomodules-info.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/gomodules-info.html deleted file mode 100644 index d544cd471..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/gomodules-info.html +++ /dev/null @@ -1,18 +0,0 @@ -{{ $text := ` -Most of the commands for **Hugo Modules** require a newer version (>= 1.18) of Go installed (see https://golang.org/dl/) and the relevant VCS client (e.g. Git, see https://git-scm.com/downloads/ ). -If you have an "older" site running on Netlify, you may have to set GO_VERSION to 1.19 or newer in your Environment settings. - -For more information about Go Modules, see: - -* https://go.dev/wiki/Modules -* https://blog.golang.org/using-go-modules -` }} - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/new-in.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/new-in.html deleted file mode 100644 index 606d2219c..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/new-in.html +++ /dev/null @@ -1,34 +0,0 @@ -{{- /* -Renders a "new in" button indicating the version in which a feature was added. - -When comparing the current version to the specified version, the "new in" -button will be hidden if any of the following conditions is true: - -- The major version difference exceeds the majorVersionDiffThreshold -- The minor version difference exceeds the minorVersionDiffThreshold - -@param {string} version The semantic version string, with or without a leading v. -@returns {template.HTML} - -@example {{< new-in 0.100.0 >}} -*/}} - -{{- /* Set defaults. */}} -{{- $majorVersionDiffThreshold := 0 }} -{{- $minorVersionDiffThreshold := 30 }} -{{- $displayExpirationWarning := true }} - -{{- /* Render. */}} -{{- with $version := .Get 0 | strings.TrimPrefix "v" }} - {{- $majorVersionDiff := sub (index (split hugo.Version ".") 0 | int) (index (split $version ".") 0 | int) }} - {{- $minorVersionDiff := sub (index (split hugo.Version ".") 1 | int) (index (split $version ".") 1 | int) }} - {{- if or (gt $majorVersionDiff $majorVersionDiffThreshold) (gt $minorVersionDiff $minorVersionDiffThreshold) }} - {{- if $displayExpirationWarning }} - {{- warnf "This call to the %q shortcode should be removed: %s. The button is now hidden because the specified version (%s) is older than the display threshold." $.Name $.Position $version }} - {{- end }} - {{- else }} - New in v{{ $version }} - {{- end }} -{{- else }} - {{- errorf "The %q shortcode requires a positional parameter (version). See %s" .Name .Position }} -{{- end -}} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/note.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/note.html deleted file mode 100644 index 99818114e..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/note.html +++ /dev/null @@ -1,7 +0,0 @@ -{{ $_hugo_config := `{ "version": 1 }` }} - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/readfile.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/readfile.html deleted file mode 100644 index de8083443..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/readfile.html +++ /dev/null @@ -1,29 +0,0 @@ -{{- $highlight := or (.Get "highlight") "" }} - -{{- $markdown := false }} -{{- if in (slice "false" false 0) (.Get "markdown") }} - {{- $markdown = false }} -{{- else if in (slice "true" true 1) (.Get "markdown") }} - {{- $markdown = true }} -{{- end }} - -{{- with .Get "file" }} - {{- if os.FileExists . }} - {{- with os.ReadFile . }} - {{- $content := trim . "\n\r" }} - {{- if $markdown }} - {{- $content | markdownify }} - {{- else if $highlight }} - {{- highlight $content $highlight }} - {{- else }} - {{- $content | safeHTML }} - {{- end }} - {{- else }} - {{- errorf "The %q shortcode was unable to read %q. See %s" $.Name . $.Position }} - {{- end }} - {{- else }} - {{- errorf "The %q shortcode was unable to find %q. See %s" $.Name . $.Position }} - {{- end }} -{{- else }} - {{- errorf "The %q shortcode requires a 'file' parameter. See %s" $.Name $.Position }} -{{- end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/todo.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/todo.html deleted file mode 100644 index 50a099267..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/todo.html +++ /dev/null @@ -1 +0,0 @@ -{{ if .Inner }}{{ end }} \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/showcase/list.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/showcase/list.html deleted file mode 100644 index bff52ad8d..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/showcase/list.html +++ /dev/null @@ -1,46 +0,0 @@ -{{ define "main" }} -
-
-

- {{ .Title }} -

-
- {{ .Content }} -
-
-
- {{ range (.Paginate (.Pages | shuffle ) 20).Pages }} - {{template "showcase_items" .}} - {{ end }} -
- -
The Showcase articles are copyrighted by their respective content authors. Any open source license will be attached.
-
-{{ end }} - - -{{define "showcase_items"}} - -
- {{ $img := (.Resources.ByType "image").GetMatch "*featured*" }} - {{ with $img }} - {{ $big := .Fill "1024x512 top" }} - {{ $small := $big.Resize "512x" }} - - {{end}} -
{{/* the margin aligns to the bottom */}} -

- {{- .Title -}} -

-
-
-
- - -{{end}} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/showcase/single.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/showcase/single.html deleted file mode 100644 index 5ae1e07a7..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/showcase/single.html +++ /dev/null @@ -1,106 +0,0 @@ -{{ define "title" }} -Showcase: {{ .Title }} -{{ end }} - -{{ define "main" }} -
- - -
- -
- {{template "sc-details" .}} -
- -
- {{template "sc-main-column" .}} -
- - - -
- -
{{/* bottom row */}} - Last Update: {{ .Lastmod.Format "January 2, 2006" }}
- {{ partial "page-edit.html" . }} -
-
The Showcase articles are copyright the content authors. Any open source license will be attached.
-
-{{ end }} - - - -{{define "sc-main-column"}} - {{ $img := (.Resources.ByType "image").GetMatch "*featured*" }} - {{ with $img }} - {{ $big := .Fill "1024x512 top" }} - {{ $small := $big.Resize "512x" }} - {{ $img.Title }} - {{ end }} - - -{{end}} - -{{define "sc-details"}} - -{{end}} - -{{define "sc-navigation"}} - {{$section := where .Site.RegularPages "Section" .Section}} - {{$number_of_entries := $section | len}} - -{{end}} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/template-func/page.html b/_vendor/github.com/gohugoio/gohugoioTheme/layouts/template-func/page.html deleted file mode 100644 index 8b5f0da85..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/template-func/page.html +++ /dev/null @@ -1,55 +0,0 @@ -{{ $pkg := .Params.package}} -{{ $funcs := index site.Data.docs.tpl.funcs $pkg }} - -{{ range $k, $v := $funcs }} - {{ if $v.Description }} - {{ $func := printf "%s.%s" $pkg $k }} - {{ $id := $func | anchorize | safeURL }} -

- - - - - - - {{ $func }} -

- {{ with $v.Description }} -

- {{ . | $.RenderString | safeHTML }} -

- {{ end }} -

- Syntax -

-
- {{ $pkg }}.{{ $k }} - {{ with $v.Args }} - - {{ delimit $v.Args ", "}} - - {{ end }} - -
- {{ if $v.Examples }} -

- Examples -

- {{ end }} - {{ range $v.Examples }} - {{ $input := index . 0 }} - {{ $result := index . 1 }} - {{ $example := printf "%s ---> %s" $input $result }} - - {{ highlight $example "go-html-template" "" }} - {{ end }} - {{ with $v.Aliases }} -

- Aliases -

-

- {{ delimit . ", "}} -

- {{ end }} - {{ end }} -{{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/package.json b/_vendor/github.com/gohugoio/gohugoioTheme/package.json deleted file mode 100644 index 14d128910..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/package.json +++ /dev/null @@ -1,34 +0,0 @@ -{ - "name": "gohugo-default-styles", - "version": "1.1.0", - "description": "Default Theme for Hugo Sites", - "main": "index.js", - "repository": "", - "author": "budparr", - "license": "MIT", - "scripts": { - "build": "NODE_ENV=production webpack", - "build-dev": "NODE_ENV=development webpack --progress --watch", - "start": "npm run build-dev" - }, - "devDependencies": { - "clean-webpack-plugin": "^1.0.0", - "clipboard": "^2.0.4", - "css-loader": "^1.0.1", - "docsearch.js": "^2.6.1", - "file-loader": "^2.0.0", - "glob-all": "^3.1.0", - "lazysizes": "^5.3.2", - "mini-css-extract-plugin": "^0.4.4", - "postcss": "^7.0.5", - "postcss-cssnext": "^3.1.0", - "postcss-import": "^12.0.1", - "postcss-loader": "^3.0.0", - "purgecss-webpack-plugin": "^1.3.1", - "scrolldir": "^1.4.0", - "tachyons": "^4.7.0", - "typeface-muli": "0.0.54", - "webpack": "^4.25.1", - "webpack-command": "^0.4.2" - } -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/apple-touch-icon.png b/_vendor/github.com/gohugoio/gohugoioTheme/static/apple-touch-icon.png deleted file mode 100644 index ecf1fc020..000000000 Binary files a/_vendor/github.com/gohugoio/gohugoioTheme/static/apple-touch-icon.png and /dev/null differ diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/dist/app.bundle.js b/_vendor/github.com/gohugoio/gohugoioTheme/static/dist/app.bundle.js deleted file mode 100644 index 6391e71e9..000000000 --- a/_vendor/github.com/gohugoio/gohugoioTheme/static/dist/app.bundle.js +++ /dev/null @@ -1,22 +0,0 @@ -!function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var n={};e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=11)}([function(t,e,n){"use strict";var r=function(t){var e=document.createElement("a");return e.className="header-link",e.href="#"+t,e.innerHTML=' ',e},i=function(t,e){for(var n=e.getElementsByTagName("h"+t),i=0;i0&&p.parentNode.classList.add("expand")}}catch(t){a=!0,u=t}finally{try{!s&&l.return&&l.return()}finally{if(a)throw u}}}},function(t,e,n){"use strict";n(13)({apiKey:"167e7998590aebda7f9fedcf86bc4a55",indexName:"hugodocs",inputSelector:"#search-input",debug:!0})},function(t,e,n){"use strict";n(14),n(15)},function(t,e,n){"use strict";function r(){for(var t=this.dataset.target.split(" "),e=document.querySelector(".mobilemenu:not(.dn)"),n=document.querySelector(".desktopmenu:not(.dn)"),r=document.querySelector(".desktopmenu:not(.dn)"),i=0;i=0?function(){var t=window.pageYOffset;(t>=i-s||window.innerHeight+t>=document.body.offsetHeight)&&clearInterval(u)}:function(){window.pageYOffset<=(i||0)&&clearInterval(u)};var u=setInterval(a,16)},e=document.querySelectorAll("#TableOfContents ul li a");[].forEach.call(e,function(e){e.addEventListener("click",function(n){n.preventDefault();var r=e.getAttribute("href"),i=document.querySelector(r),o=e.getAttribute("data-speed");i&&t(i,o||500)},!1)})}}()},function(t,e,n){"use strict";function r(t){if(t.target){t.preventDefault();var e=t.currentTarget,n=e.getAttribute("data-toggle-tab")}else var n=t;window.localStorage&&window.localStorage.setItem("configLangPref",n);for(var r=document.querySelectorAll("[data-toggle-tab='"+n+"']"),i=document.querySelectorAll("[data-pane='"+n+"']"),a=0;a0&&void 0!==arguments[0]?arguments[0]:{};this.action=t.action,this.container=t.container,this.emitter=t.emitter,this.target=t.target,this.text=t.text,this.trigger=t.trigger,this.selectedText=""}},{key:"initSelection",value:function(){this.text?this.selectFake():this.target&&this.selectTarget()}},{key:"selectFake",value:function(){var t=this,e="rtl"==document.documentElement.getAttribute("dir");this.removeFake(),this.fakeHandlerCallback=function(){return t.removeFake()},this.fakeHandler=this.container.addEventListener("click",this.fakeHandlerCallback)||!0,this.fakeElem=document.createElement("textarea"),this.fakeElem.style.fontSize="12pt",this.fakeElem.style.border="0",this.fakeElem.style.padding="0",this.fakeElem.style.margin="0",this.fakeElem.style.position="absolute",this.fakeElem.style[e?"right":"left"]="-9999px";var n=window.pageYOffset||document.documentElement.scrollTop;this.fakeElem.style.top=n+"px",this.fakeElem.setAttribute("readonly",""),this.fakeElem.value=this.text,this.container.appendChild(this.fakeElem),this.selectedText=(0,r.default)(this.fakeElem),this.copyText()}},{key:"removeFake",value:function(){this.fakeHandler&&(this.container.removeEventListener("click",this.fakeHandlerCallback),this.fakeHandler=null,this.fakeHandlerCallback=null),this.fakeElem&&(this.container.removeChild(this.fakeElem),this.fakeElem=null)}},{key:"selectTarget",value:function(){this.selectedText=(0,r.default)(this.target),this.copyText()}},{key:"copyText",value:function(){var t=void 0;try{t=document.execCommand(this.action)}catch(e){t=!1}this.handleResult(t)}},{key:"handleResult",value:function(t){this.emitter.emit(t?"success":"error",{action:this.action,text:this.selectedText,trigger:this.trigger,clearSelection:this.clearSelection.bind(this)})}},{key:"clearSelection",value:function(){this.trigger&&this.trigger.focus(),window.getSelection().removeAllRanges()}},{key:"destroy",value:function(){this.removeFake()}},{key:"action",set:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"copy";if(this._action=t,"copy"!==this._action&&"cut"!==this._action)throw new Error('Invalid "action" value, use either "copy" or "cut"')},get:function(){return this._action}},{key:"target",set:function(t){if(void 0!==t){if(!t||"object"!==(void 0===t?"undefined":i(t))||1!==t.nodeType)throw new Error('Invalid "target" value, use a valid Element');if("copy"===this.action&&t.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if("cut"===this.action&&(t.hasAttribute("readonly")||t.hasAttribute("disabled")))throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');this._target=t}},get:function(){return this._target}}]),t}();t.exports=s})},{select:5}],8:[function(e,n,r){!function(i,o){if("function"==typeof t&&t.amd)t(["module","./clipboard-action","tiny-emitter","good-listener"],o);else if(void 0!==r)o(n,e("./clipboard-action"),e("tiny-emitter"),e("good-listener"));else{var s={exports:{}};o(s,i.clipboardAction,i.tinyEmitter,i.goodListener),i.clipboard=s.exports}}(this,function(t,e,n,r){"use strict";function i(t){return t&&t.__esModule?t:{default:t}}function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function a(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}function u(t,e){var n="data-clipboard-"+t;if(e.hasAttribute(n))return e.getAttribute(n)}var c=i(e),l=i(n),h=i(r),f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},p=function(){function t(t,e){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};this.action="function"==typeof t.action?t.action:this.defaultAction,this.target="function"==typeof t.target?t.target:this.defaultTarget,this.text="function"==typeof t.text?t.text:this.defaultText,this.container="object"===f(t.container)?t.container:document.body}},{key:"listenClick",value:function(t){var e=this;this.listener=(0,h.default)(t,"click",function(t){return e.onClick(t)})}},{key:"onClick",value:function(t){var e=t.delegateTarget||t.currentTarget;this.clipboardAction&&(this.clipboardAction=null),this.clipboardAction=new c.default({action:this.action(e),target:this.target(e),text:this.text(e),container:this.container,trigger:e,emitter:this})}},{key:"defaultAction",value:function(t){return u("action",t)}},{key:"defaultTarget",value:function(t){var e=u("target",t);if(e)return document.querySelector(e)}},{key:"defaultText",value:function(t){return u("text",t)}},{key:"destroy",value:function(){this.listener.destroy(),this.clipboardAction&&(this.clipboardAction.destroy(),this.clipboardAction=null)}}],[{key:"isSupported",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:["copy","cut"],e="string"==typeof t?[t]:t,n=!!document.queryCommandSupported;return e.forEach(function(t){n=n&&!!document.queryCommandSupported(t)}),n}}]),e}(l.default);t.exports=d})},{"./clipboard-action":7,"good-listener":4,"tiny-emitter":6}]},{},[8])(8)})},function(t,e,n){/*! docsearch 2.4.1 | © Algolia | github.com/algolia/docsearch */ -!function(e,n){t.exports=n()}(0,function(){return function(t){function e(r){if(n[r])return n[r].exports;var i=n[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,e),i.l=!0,i.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,r){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:r})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=46)}([function(t,e,n){"use strict";function r(t){return t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}var i=n(1);t.exports={isArray:null,isFunction:null,isObject:null,bind:null,each:null,map:null,mixin:null,isMsie:function(){return!!/(msie|trident)/i.test(navigator.userAgent)&&navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2]},escapeRegExChars:function(t){return t.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},isNumber:function(t){return"number"==typeof t},toStr:function(t){return void 0===t||null===t?"":t+""},cloneDeep:function(t){var e=this.mixin({},t),n=this;return this.each(e,function(t,r){t&&(n.isArray(t)?e[r]=[].concat(t):n.isObject(t)&&(e[r]=n.cloneDeep(t)))}),e},error:function(t){throw new Error(t)},every:function(t,e){var n=!0;return t?(this.each(t,function(r,i){if(!(n=e.call(null,r,i,t)))return!1}),!!n):n},any:function(t,e){var n=!1;return t?(this.each(t,function(r,i){if(e.call(null,r,i,t))return n=!0,!1}),n):n},getUniqueId:function(){var t=0;return function(){return t++}}(),templatify:function(t){if(this.isFunction(t))return t;var e=i.element(t);return"SCRIPT"===e.prop("tagName")?function(){return e.text()}:function(){return String(t)}},defer:function(t){setTimeout(t,0)},noop:function(){},formatPrefix:function(t,e){return e?"":t+"-"},className:function(t,e,n){return(n?"":".")+t+e},escapeHighlightedString:function(t,e,n){e=e||"";var i=document.createElement("div");i.appendChild(document.createTextNode(e)),n=n||"";var o=document.createElement("div");o.appendChild(document.createTextNode(n));var s=document.createElement("div");return s.appendChild(document.createTextNode(t)),s.innerHTML.replace(RegExp(r(i.innerHTML),"g"),e).replace(RegExp(r(o.innerHTML),"g"),n)}}},function(t,e,n){"use strict";t.exports={element:null}},function(t,e){var n=Object.prototype.hasOwnProperty,r=Object.prototype.toString;t.exports=function(t,e,i){if("[object Function]"!==r.call(e))throw new TypeError("iterator must be a function");var o=t.length;if(o===+o)for(var s=0;s was loaded but did not call our provided callback"),JSONPScriptError:i("JSONPScriptError"," {{< /code >}} @@ -192,9 +195,25 @@ See the [inline delimiters](#inline-delimiters) section for details. To use KaTeX instead of MathJax, replace the partial template from [Step 2] with this: {{< code file=layouts/partials/math.html copy=true >}} - - - + + + + {{ end }} + {{ else }} {{ end }} - {{ else }} - {{ $opts := dict "minified" true }} - {{ with . | babel $opts | fingerprint }} - - {{ end }} {{ end }} {{ end }} ``` @@ -72,20 +75,32 @@ module.exports = { ## Options -config -: (`string`) Path to the Babel configuration file. Hugo will, by default, look for a `babel.config.js` in your project. More information on these configuration files can be found here: [babel configuration](https://babeljs.io/docs/en/configuration). +###### compact -minified -: (`bool`) Save as many bytes as possible when printing +(`bool`) Whether to remove optional newlines and whitespace. Enabled when `minified` is `true`. Default is `false` -noComments -: (`bool`) Write comments to generated output (true by default) +###### config -compact -: (`bool`) Do not include superfluous whitespace characters and line terminators. Defaults to `auto` if not set. +(`string`) Path to the Babel configuration file. Hugo will, by default, look for a `babel.config.js` file in the root of your project. See [details](https://babeljs.io/docs/en/configuration). -verbose -: (`bool`) Log everything +###### minified -sourceMap -: (`string`) Output `inline` or `external` sourcemap from the babel compile. External sourcemaps will be written to the target with the output file name + ".map". Input sourcemaps can be read from js.Build and node modules and combined into the output sourcemaps. +(`bool`) Whether to minify the compiled code. Enables the `compact` option. Default is `false`. + +###### noBabelrc + +(`string`) Whether to ignore `.babelrc` and `.babelignore` files. Default is `false`. + +###### noComments + +(`bool`) Whether to remove comments. Default is `false`. + +###### sourceMap + +(`string`) Whether to generate source maps, one of `external`, `inline`, or `none`. Default is `none`. + + + +###### verbose + +(`bool`) Whether to enable verbose logging. Default is `false` diff --git a/content/en/functions/js/Batch.md b/content/en/functions/js/Batch.md index fbc1c7e61..08913f61f 100644 --- a/content/en/functions/js/Batch.md +++ b/content/en/functions/js/Batch.md @@ -1,7 +1,6 @@ --- title: js.Batch description: Build JavaScript bundle groups with global code splitting and flexible hooks/runners setup. -weight: 50 categories: [] keywords: [] action: @@ -13,6 +12,7 @@ action: - functions/resources/Minify returnType: js.Batcher signatures: ['js.Batch [ID]'] +weight: 20 toc: true --- diff --git a/content/en/functions/js/Build.md b/content/en/functions/js/Build.md index 4829f3b83..9bdc2454a 100644 --- a/content/en/functions/js/Build.md +++ b/content/en/functions/js/Build.md @@ -1,17 +1,18 @@ --- title: js.Build -description: Bundles, transpiles, tree shakes, and minifies JavaScript resources. -weight: 30 +description: Bundle, transpile, tree shake, and minify JavaScript resources. categories: [] keywords: [] action: aliases: [] related: + - functions/js/Batch - functions/js/Babel - functions/resources/Fingerprint - functions/resources/Minify returnType: resource.Resource signatures: ['js.Build [OPTIONS] RESOURCE'] +weight: 10 toc: true --- @@ -27,31 +28,37 @@ The `js.Build` function uses the [evanw/esbuild] package to: ```go-html-template {{ with resources.Get "js/main.js" }} - {{ if hugo.IsDevelopment }} - {{ with . | js.Build }} + {{ $opts := dict + "minify" hugo.IsProduction + "sourceMap" (cond hugo.IsProduction "" "external") + "targetPath" "js/main.js" + }} + {{ with . | js.Build $opts }} + {{ if hugo.IsProduction }} + {{ with . | fingerprint }} + + {{ end }} + {{ else }} {{ end }} - {{ else }} - {{ $opts := dict "minify" true }} - {{ with . | js.Build $opts | fingerprint }} - - {{ end }} {{ end }} {{ end }} ``` ## Options -targetPath -: (`string`) If not set, the source path will be used as the base target path. +###### targetPath + +(`string`) If not set, the source path will be used as the base target path. Note that the target path's extension may change if the target MIME type is different, e.g. when the source is TypeScript. -format -: (`string`) The output format. One of: `iife`, `cjs`, `esm`. Default is `iife`, a self-executing function, suitable for inclusion as a ` - {{ end }} - {{ else }} - {{ $opts := dict "minified" true }} - {{ with . | babel $opts | fingerprint }} - - {{ end }} - {{ end }} -{{ end }} -``` - -## Setup - -Step 1 -: Install [Node.js](https://nodejs.org/en/download) - -Step 2 -: Install the required Node.js packages in the root of your project. - -```sh -npm install --save-dev @babel/core @babel/cli -``` - -Step 3 -: Add the babel executable to Hugo's `security.exec.allow` list in your site configuration: - -{{< code-toggle file=hugo >}} -[security.exec] - allow = ['^(dart-)?sass(-embedded)?$', '^go$', '^npx$', '^postcss$', '^babel$'] -{{< /code-toggle >}} - -## Configuration - -We add the main project's `node_modules` to `NODE_PATH` when running Babel and similar tools. There are some known [issues](https://github.com/babel/babel/issues/5618) with Babel in this area, so if you have a `babel.config.js` living in a Hugo Module (and not in the project itself), we recommend using `require` to load the presets/plugins, e.g.: - -```js -module.exports = { - presets: [ - [ - require("@babel/preset-env"), - { - useBuiltIns: "entry", - corejs: 3, - }, - ], - ], -}; -``` - -## Options - -config -: (`string`) Path to the Babel configuration file. Hugo will, by default, look for a `babel.config.js` in your project. More information on these configuration files can be found here: [babel configuration](https://babeljs.io/docs/en/configuration). - -minified -: (`bool`) Save as many bytes as possible when printing - -noComments -: (`bool`) Write comments to generated output (true by default) - -compact -: (`bool`) Do not include superfluous whitespace characters and line terminators. Defaults to `auto` if not set. - -verbose -: (`bool`) Log everything - -sourceMap -: (`string`) Output `inline` or `external` sourcemap from the babel compile. External sourcemaps will be written to the target with the output file name + ".map". Input sourcemaps can be read from js.Build and node modules and combined into the output sourcemaps. diff --git a/content/en/functions/resources/Concat.md b/content/en/functions/resources/Concat.md index 09bde82fe..6e81f3f44 100644 --- a/content/en/functions/resources/Concat.md +++ b/content/en/functions/resources/Concat.md @@ -12,7 +12,7 @@ action: The `resources.Concat` function returns a concatenated slice of resources, caching the result using the target path as its cache key. Each resource must have the same [media type]. -Hugo publishes the resource to the target path when you call its [`Publish`], [`Permalink`], or [`RelPermalink`] method. +Hugo publishes the resource to the target path when you call its [`Publish`], [`Permalink`], or [`RelPermalink`] method. [media type]: https://en.wikipedia.org/wiki/Media_type [`publish`]: /methods/resource/publish/ diff --git a/content/en/functions/resources/GetRemote.md b/content/en/functions/resources/GetRemote.md index 982529077..3b294e5a1 100644 --- a/content/en/functions/resources/GetRemote.md +++ b/content/en/functions/resources/GetRemote.md @@ -18,6 +18,15 @@ action: toc: true --- +{{< new-in 0.141.0 >}} +The `Err` method on the returned resource was removed in v0.141.0. + +Use the [`try`] statement instead, as shown in the [error handling] example below. + +[`try`]: /functions/go-template/try +[error handling]: #error-handling +{{< /new-in >}} + ```go-html-template {{ $url := "https://example.org/images/a.jpg" }} {{ with try (resources.GetRemote $url) }} @@ -35,6 +44,39 @@ toc: true The `resources.GetRemote` function takes an optional map of options. +###### body + +(`string`) The data you want to transmit to the server. + +###### headers + +(`map[string][]string`) The collection of key-value pairs that provide additional information about the request. + +###### key + +(`string`) The cache key. Hugo derives the default value from the URL and options map. See [caching](#caching). + +###### method + +(`string`) The action to perform on the requested resource, typically one of `GET`, `POST`, or `HEAD`. + +###### responseHeaders +{{< new-in 0.143.0 />}} + +(`[]string`) The headers to extract from the server's response, accessible through the resource's [`Data.Headers`] method. Header name matching is case-insensitive. + +[`Data.Headers`]: /methods/resource/data/#headers + +## Options examples + +{{% note %}} +For brevity, the examples below do not include [error handling]. + +[error handling]: #error-handling +{{% /note %}} + +To include a header: + ```go-html-template {{ $url := "https://example.org/api" }} {{ $opts := dict @@ -43,7 +85,7 @@ The `resources.GetRemote` function takes an optional map of options. {{ $resource := resources.GetRemote $url $opts }} ``` -If you need multiple values for the same header key, use a slice: +To specify more than one value for the same header key, use a slice: ```go-html-template {{ $url := "https://example.org/api" }} @@ -53,7 +95,7 @@ If you need multiple values for the same header key, use a slice: {{ $resource := resources.GetRemote $url $opts }} ``` -You can also change the request method and set the request body: +To post data: ```go-html-template {{ $url := "https://example.org/api" }} @@ -65,6 +107,27 @@ You can also change the request method and set the request body: {{ $resource := resources.GetRemote $url $opts }} ``` +To override the default cache key: + +```go-html-template +{{ $url := "https://example.org/images/a.jpg" }} +{{ $opts := dict + "key" (print $url (now.Format "2006-01-02")) +}} +{{ $resource := resources.GetRemote $url $opts }} +``` + +To extract specific headers from the server's response: + +```go-html-template +{{ $url := "https://example.org/images/a.jpg" }} +{{ $opts := dict + "method" "HEAD" + "responseHeaders" (slice "X-Frame-Options" "Server") +}} +{{ $resource := resources.GetRemote $url $opts }} +``` + ## Remote data When retrieving remote data, use the [`transform.Unmarshal`] function to [unmarshal](g) the response. @@ -139,40 +202,6 @@ The [`Data`] method on a resource returned by the `resources.GetRemote` function [`Data`]: /methods/resource/data/ -```go-html-template -{{ $url := "https://example.org/images/a.jpg" }} -{{ with try (resources.GetRemote $url) }} - {{ with .Err }} - {{ errorf "%s" . }} - {{ else with .Value }} - {{ with .Data }} - {{ .ContentLength }} → 42764 - {{ .ContentType }} → image/jpeg - {{ .Status }} → 200 OK - {{ .StatusCode }} → 200 - {{ .TransferEncoding }} → [] - {{ end }} - {{ else }} - {{ errorf "Unable to get remote resource %q" $url }} - {{ end }} -{{ end }} -``` - -ContentLength -: (`int`) The content length in bytes. - -ContentType -: (`string`) The content type. - -Status -: (`string`) The HTTP status text. - -StatusCode -: (`int`) The HTTP status code. - -TransferEncoding -: (`string`) The transfer encoding. - ## Caching Resources returned from `resources.GetRemote` are cached to disk. See [configure file caches] for details. @@ -184,7 +213,8 @@ Override the cache key by setting a `key` in the options map. Use this approach ```go-html-template {{ $url := "https://example.org/images/a.jpg" }} {{ $cacheKey := print $url (now.Format "2006-01-02") }} -{{ $resource := resources.GetRemote $url (dict "key" $cacheKey) }} +{{ $opts := dict "key" $cacheKey }} +{{ $resource := resources.GetRemote $url $opts }} ``` [configure file caches]: /getting-started/configuration/#configure-file-caches diff --git a/content/en/functions/resources/PostCSS.md b/content/en/functions/resources/PostCSS.md index 2389d2ff5..5d3f85a30 100644 --- a/content/en/functions/resources/PostCSS.md +++ b/content/en/functions/resources/PostCSS.md @@ -4,15 +4,10 @@ description: Processes the given resource with PostCSS using any PostCSS plugin. categories: [] keywords: [] action: - related: - - functions/resources/Fingerprint - - functions/resources/Minify - - functions/resources/PostProcess - - functions/css/Sass + related: [] returnType: resource.Resource signatures: ['resources.PostCSS [OPTIONS] RESOURCE'] -toc: true -expiryDate: 2025-06-24 # deprecated 2024-06-24 +expiryDate: 2026-06-24 # deprecated 2024-06-24 in v0.128.0 --- {{% deprecated-in 0.128.0 %}} @@ -20,116 +15,3 @@ Use [`css.PostCSS`] instead. [`css.PostCSS`]: /functions/css/postcss/ {{% /deprecated-in %}} - -```go-html-template -{{ with resources.Get "css/main.css" | postCSS }} - -{{ end }} -``` - -## Setup - -Follow the steps below to transform CSS using any of the available [PostCSS plugins]. - -Step 1 -: Install [Node.js]. - -Step 2 -: Install the required Node.js packages in the root of your project. For example, to add vendor prefixes to your CSS rules: - -```sh -npm i -D postcss postcss-cli autoprefixer -``` - -Step 3 -: Create a PostCSS configuration file in the root of your project. You must name this file `postcss.config.js` or another [supported file name]. For example: - -```js -module.exports = { - plugins: [ - require('autoprefixer') - ] -}; -``` - -{{% note %}} -{{% include "functions/resources/_common/postcss-windows-warning.md" %}} -{{% /note %}} - -Step 4 -: Place your CSS file within the `assets/css` directory. - -Step 5 -: Process the resource with PostCSS: - -```go-html-template -{{ with resources.Get "css/main.css" | postCSS }} - -{{ end }} -``` - -## Options - -The `resources.PostCSS` method takes an optional map of options. - -config -: (`string`) The directory that contains the PostCSS configuration file. Default is the root of the project directory. - -noMap -: (`bool`) Default is `false`. If `true`, disables inline sourcemaps. - -inlineImports -: (`bool`) Default is `false`. Enable inlining of @import statements. It does so recursively, but will only import a file once. URL imports (e.g. `@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');`) and imports with media queries will be ignored. Note that this import routine does not care about the CSS spec, so you can have @import anywhere in the file. Hugo will look for imports relative to the module mount and will respect theme overrides. - -skipInlineImportsNotFound -: (`bool`) Default is `false`. Before Hugo 0.99.0 when `inlineImports` was enabled and we failed to resolve an import, we logged it as a warning. We now fail the build. If you have regular CSS imports in your CSS that you want to preserve, you can either use imports with URL or media queries (Hugo does not try to resolve those) or set `skipInlineImportsNotFound` to true. - -```go-html-template -{{ $opts := dict "config" "config-directory" "noMap" true }} -{{ with resources.Get "css/main.css" | postCSS $opts }} - -{{ end }} -``` - -## No configuration file - -To avoid using a PostCSS configuration file, you can specify a minimal configuration using the options map. - -use -: (`string`) A space-delimited list of PostCSS plugins to use. - -parser -: (`string`) A custom PostCSS parser. - -stringifier -: (`string`) A custom PostCSS stringifier. - -syntax -: (`string`) Custom postcss syntax. - -```go-html-template -{{ $opts := dict "use" "autoprefixer postcss-color-alpha" }} -{{ with resources.Get "css/main.css" | postCSS $opts }} - -{{ end }} -``` - -## Check environment - -The current Hugo environment name (set by `--environment` or in configuration or OS environment) is available in the Node context, which allows constructs like this: - -```js -const autoprefixer = require('autoprefixer'); -const purgecss = require('@fullhuman/postcss-purgecss'); -module.exports = { - plugins: [ - autoprefixer, - process.env.HUGO_ENVIRONMENT !== 'development' ? purgecss : null - ] -} -``` - -[node.js]: https://nodejs.org/en/download -[postcss plugins]: https://www.postcss.parts/ -[supported file name]: https://github.com/postcss/postcss-load-config#usage -[transpile to CSS]: /functions/css/sass/ diff --git a/content/en/functions/resources/PostProcess.md b/content/en/functions/resources/PostProcess.md index 82f02c9e5..b157d5fd9 100644 --- a/content/en/functions/resources/PostProcess.md +++ b/content/en/functions/resources/PostProcess.md @@ -13,33 +13,28 @@ action: toc: true --- -```go-html-template -{{ with resources.Get "css/main.css" }} - {{ if hugo.IsDevelopment }} - - {{ else }} - {{ with . | postCSS | minify | fingerprint | resources.PostProcess }} - - {{ end }} - {{ end }} -{{ end }} -``` +The `resources.PostProcess` function delays resource transformation steps until the build is complete, primarily for tasks like removing unused CSS rules. -Marking a resource with `resources.PostProcess` postpones transformations until the build has finished. +## Example -Call `resources.PostProcess` when one or more of the steps in the transformation chain depends on the result of the build. +In this example, after the build is complete, Hugo will: -A prime use case for this is purging unused CSS rules using the [PurgeCSS] plugin for the PostCSS Node.js package. +1. Purge unused CSS using the [PurgeCSS] plugin for [PostCSS] +2. Add vendor prefixes to CSS rules using the [Autoprefixer] plugin for PostCSS +3. [Minify] the CSS +4. [Fingerprint] the CSS -## CSS Purging - -{{% note %}} -There are several ways to set up CSS purging with PostCSS in Hugo. If you have a simple project, you should consider going the simpler route and drop the use of `resources.PostProcess` and just extract keywords from the templates. See the [Tailwind documentation](https://tailwindcss.com/docs/controlling-file-size/#app) for examples. -{{% /note %}} +[autoprefixer]: https://github.com/postcss/autoprefixer +[fingerprint]: /functions/resources/fingerprint/ +[minify]: /functions/resources/minify/ +[postcss]: /functions/css/postcss/ +[purgecss]: https://purgecss.com/plugins/postcss.html Step 1 : Install [Node.js]. +[node.js]: https://nodejs.org/en/download + Step 2 : Install the required Node.js packages in the root of your project: @@ -48,11 +43,27 @@ npm i -D postcss postcss-cli autoprefixer @fullhuman/postcss-purgecss ``` Step 3 -: Create a PostCSS configuration file in the root of your project. You must name this file `postcss.config.js` or another [supported file name]. For example: +: Enable creation of the `hugo_stats.json` file when building the site. If you are only using this for the production build, consider placing it below [`config/production`]. -```js +[`config/production`]: /getting-started/configuration/#configuration-directory + +{{< code-toggle file=hugo >}} +[build.buildStats] +enable = true +{{< /code-toggle >}} + +See the [configure build] documentation for details and options. + +[configure build]: /getting-started/configuration/#configure-build + +Step 4 +: Create a PostCSS configuration file in the root of your project. + +{{< code file="postcss.config.js" copy=true >}} const autoprefixer = require('autoprefixer'); -const purgecss = require('@fullhuman/postcss-purgecss')({ +const purgeCSSPlugin = require('@fullhuman/postcss-purgecss').default; + +const purgecss = purgeCSSPlugin({ content: ['./hugo_stats.json'], defaultExtractor: content => { const els = JSON.parse(content).htmlElements; @@ -68,26 +79,16 @@ const purgecss = require('@fullhuman/postcss-purgecss')({ module.exports = { plugins: [ + process.env.HUGO_ENVIRONMENT !== 'development' ? purgecss : null, autoprefixer, - process.env.HUGO_ENVIRONMENT !== 'development' ? purgecss : null ] }; -``` +{{< /code >}} {{% note %}} {{% include "functions/resources/_common/postcss-windows-warning.md" %}} {{% /note %}} -Step 4 -: Enable creation of the `hugo_stats.json` file when building the site. If you are only using this for the production build, consider placing it below [`config/production`]. - -{{< code-toggle file=hugo >}} -[build.buildStats] -enable = true -{{< /code-toggle >}} - -See the [configure build] documentation for details and options. - Step 5 : Place your CSS file within the `assets/css` directory. @@ -108,10 +109,10 @@ Step 6 ## Environment variables -Hugo passes these environment variables to PostCSS, which allows you to do something like: +Hugo passes the environment variables below to PostCSS, allowing you to do something like: ```js -process.env.HUGO_ENVIRONMENT === 'production' ? [autoprefixer] : [] +process.env.HUGO_ENVIRONMENT !== 'development' ? purgecss : null, ``` PWD @@ -122,16 +123,16 @@ HUGO_ENVIRONMENT Default is `production` for `hugo` and `development` for `hugo server`. HUGO_PUBLISHDIR -: The absolute path to the publish directory (the `public` directory). Note that the value will always point to a directory on disk even when running `hugo server` in memory mode. If you write to this directory from PostCSS when running the server, you could run the server with one of these flags: +: The absolute path to the publish directory, typically `public`. This value points to a directory on disk, even when rendering to memory with the `--renderToMemory` command line flag. -```sh -hugo server --renderToDisk -hugo server --renderStaticToDisk -``` +HUGO_FILE_X +: Hugo automatically mounts the following files from your project's root directory under `assets/_jsconfig`: -Also, Hugo will add environment variables for all files mounted below `assets/_jsconfig`. A default mount will be set up with files in the project root matching this regexp: `(babel|postcss|tailwind)\.config\.js`. +- `babel.config.js` +- `postcss.config.js` +- `tailwind.config.js` -These will get environment variables named on the form `HUGO_FILE_:filename:` where `:filename:` is all upper case with periods replaced with underscore. This allows you to do something like: +For each file, Hugo creates a corresponding environment variable named `HUGO_FILE_:filename:`, where `:filename:` is the uppercase version of the filename with periods replaced by underscores. This allows you to access these files within your JavaScript, for example: ```js let tailwindConfig = process.env.HUGO_FILE_TAILWIND_CONFIG_JS || './tailwind.config.js'; @@ -150,9 +151,3 @@ You cannot manipulate the values returned from the resource’s methods. For exa {{ $css = $css | css.PostCSS | minify | fingerprint | resources.PostProcess }} {{ $css.RelPermalink | strings.ToUpper }} ``` - -[node.js]: https://nodejs.org/en/download -[supported file name]: https://github.com/postcss/postcss-load-config#usage -[`config/production`]: /getting-started/configuration/#configuration-directory -[configure build]: /getting-started/configuration/#configure-build -[purgecss]: https://github.com/FullHuman/purgecss#readme diff --git a/content/en/functions/resources/ToCSS.md b/content/en/functions/resources/ToCSS.md index b944c72aa..54c34a6b0 100644 --- a/content/en/functions/resources/ToCSS.md +++ b/content/en/functions/resources/ToCSS.md @@ -4,15 +4,10 @@ description: Transpiles Sass to CSS. categories: [] keywords: [] action: - related: - - functions/resources/Fingerprint - - functions/resources/Minify - - functions/css/PostCSS - - functions/resources/PostProcess + related: [] returnType: resource.Resource signatures: ['resources.ToCSS [OPTIONS] RESOURCE'] -toc: true -expiryDate: 2025-06-24 # deprecated 2024-06-24 +expiryDate: 2026-06-24 # deprecated 2024-06-24 in v0.128.0 --- {{% deprecated-in 0.128.0 %}} @@ -20,212 +15,3 @@ Use [`css.Sass`] instead. [`css.Sass`]: /functions/css/sass/ {{% /deprecated-in %}} - -```go-html-template -{{ with resources.Get "sass/main.scss" }} - {{ $opts := dict "transpiler" "libsass" "targetPath" "css/style.css" }} - {{ with . | toCSS $opts }} - {{ if hugo.IsDevelopment }} - - {{ else }} - {{ with . | minify | fingerprint }} - - {{ end }} - {{ end }} - {{ end }} -{{ end }} -``` - -Transpile Sass to CSS using the LibSass transpiler included in Hugo's extended and extended/deploy editions, or [install Dart Sass](#dart-sass) to use the latest features of the Sass language. - -Sass has two forms of syntax: [SCSS] and [indented]. Hugo supports both. - -[scss]: https://sass-lang.com/documentation/syntax#scss -[indented]: https://sass-lang.com/documentation/syntax#the-indented-syntax - -## Options - -transpiler -: (`string`) The transpiler to use, either `libsass` (default) or `dartsass`. Hugo's extended and extended/deploy editions include the LibSass transpiler. To use the Dart Sass transpiler, see the [installation instructions](#dart-sass) below. - -targetPath -: (`string`) If not set, the transformed resource's target path will be the original path of the asset file with its extension replaced by `.css`. - -vars -: (`map`) A map of key-value pairs that will be available in the `hugo:vars` namespace. Useful for [initializing Sass variables from Hugo templates](https://discourse.gohugo.io/t/42053/). - -```scss -// LibSass -@import "hugo:vars"; - -// Dart Sass -@use "hugo:vars" as v; -``` - -outputStyle -: (`string`) Output styles available to LibSass include `nested` (default), `expanded`, `compact`, and `compressed`. Output styles available to Dart Sass include `expanded` (default) and `compressed`. - -precision -: (`int`) Precision of floating point math. Not applicable to Dart Sass. - -enableSourceMap -: (`bool`) If `true`, generates a source map. - -sourceMapIncludeSources -: (`bool`) If `true`, embeds sources in the generated source map. Not applicable to LibSass. - -includePaths -: (`slice`) A slice of paths, relative to the project root, that the transpiler will use when resolving `@use` and `@import` statements. - -```go-html-template -{{ $opts := dict - "transpiler" "dartsass" - "targetPath" "css/style.css" - "vars" site.Params.styles - "enableSourceMap" (not hugo.IsProduction) - "includePaths" (slice "node_modules/bootstrap/scss") -}} -{{ with resources.Get "sass/main.scss" | toCSS $opts | minify | fingerprint }} - -{{ end }} -``` - -## Dart Sass - -The extended version of Hugo includes [LibSass] to transpile Sass to CSS. In 2020, the Sass team deprecated LibSass in favor of [Dart Sass]. - -Use the latest features of the Sass language by installing Dart Sass in your development and production environments. - -### Installation overview - -Dart Sass is compatible with Hugo v0.114.0 and later. - -If you have been using Embedded Dart Sass[^1] with Hugo v0.113.0 and earlier, uninstall Embedded Dart Sass, then install Dart Sass. If you have installed both, Hugo will use Dart Sass. - -If you install Hugo as a [Snap package] there is no need to install Dart Sass. The Hugo Snap package includes Dart Sass. - -[^1]: In 2023, the Sass team deprecated Embedded Dart Sass in favor of Dart Sass. - -### Installing in a development environment - -When you install Dart Sass somewhere in your PATH, Hugo will find it. - -OS|Package manager|Site|Installation -:--|:--|:--|:-- -Linux|Homebrew|[brew.sh]|`brew install sass/sass/sass` -Linux|Snap|[snapcraft.io]|`sudo snap install dart-sass` -macOS|Homebrew|[brew.sh]|`brew install sass/sass/sass` -Windows|Chocolatey|[chocolatey.org]|`choco install sass` -Windows|Scoop|[scoop.sh]|`scoop install sass` - -You may also install [prebuilt binaries] for Linux, macOS, and Windows. - -Run `hugo env` to list the active transpilers. - -### Installing in a production environment - -For [CI/CD] deployments (e.g., GitHub Pages, GitLab Pages, Netlify, etc.) you must edit the workflow to install Dart Sass before Hugo builds the site[^2]. Some providers allow you to use one of the package managers above, or you can download and extract one of the prebuilt binaries. - -[^2]: You do not have to do this if (a) you have not modified the assets cache location, and (b) you have not set `useResourceCacheWhen` to `never` in your [site configuration], and (c) you add and commit your `resources` directory to your repository. - -#### GitHub Pages - -To install Dart Sass for your builds on GitHub Pages, add this step to the GitHub Pages workflow file: - -```yaml -- name: Install Dart Sass - run: sudo snap install dart-sass -``` - -If you are using GitHub Pages for the first time with your repository, GitHub provides a [starter workflow] for Hugo that includes Dart Sass. This is the simplest way to get started. - -#### GitLab Pages - -To install Dart Sass for your builds on GitLab Pages, the `.gitlab-ci.yml` file should look something like this: - -```yaml -variables: - HUGO_VERSION: 0.141.0 - DART_SASS_VERSION: 1.83.4 - GIT_DEPTH: 0 - GIT_STRATEGY: clone - GIT_SUBMODULE_STRATEGY: recursive - TZ: America/Los_Angeles -image: - name: golang:1.20-buster -pages: - script: - # Install Dart Sass - - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - tar -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - cp -r dart-sass/* /usr/local/bin - - rm -rf dart-sass* - # Install Hugo - - curl -LJO https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb - - apt install -y ./hugo_extended_${HUGO_VERSION}_linux-amd64.deb - - rm hugo_extended_${HUGO_VERSION}_linux-amd64.deb - # Build - - hugo --gc --minify - artifacts: - paths: - - public - rules: - - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH -``` - -#### Netlify - -To install Dart Sass for your builds on Netlify, the `netlify.toml` file should look something like this: - -```toml -[build.environment] -HUGO_VERSION = "0.141.0" -DART_SASS_VERSION = "1.83.4" -NODE_VERSION = "22" -TZ = "America/Los_Angeles" - -[build] -publish = "public" -command = """\ - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - tar -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - rm dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - export PATH=/opt/build/repo/dart-sass:$PATH && \ - hugo --gc --minify \ - """ -``` - -### Example - -To transpile with Dart Sass, set `transpiler` to `dartsass` in the options map passed to `resources.ToCSS`. For example: - -```go-html-template -{{ with resources.Get "sass/main.scss" }} - {{ $opts := dict "transpiler" "dartsass" "targetPath" "css/style.css" }} - {{ with . | toCSS $opts }} - {{ if hugo.IsDevelopment }} - - {{ else }} - {{ with . | minify | fingerprint }} - - {{ end }} - {{ end }} - {{ end }} -{{ end }} -``` - -### Miscellaneous - -If you build Hugo from source and run `mage test -v`, the test will fail if you install Dart Sass as a Snap package. This is due to the Snap package's strict confinement model. - -[brew.sh]: https://brew.sh/ -[chocolatey.org]: https://community.chocolatey.org/packages/sass -[ci/cd]: https://en.wikipedia.org/wiki/CI/CD -[dart sass]: https://sass-lang.com/dart-sass -[libsass]: https://sass-lang.com/libsass -[prebuilt binaries]: https://github.com/sass/dart-sass/releases/latest -[scoop.sh]: https://scoop.sh/#/apps?q=sass -[site configuration]: /getting-started/configuration/#configure-build -[snap package]: /installation/linux/#snap -[snapcraft.io]: https://snapcraft.io/dart-sass -[starter workflow]: https://github.com/actions/starter-workflows/blob/main/pages/hugo.yml diff --git a/content/en/functions/strings/Diff/index.md b/content/en/functions/strings/Diff/index.md index da172bbeb..281b76763 100644 --- a/content/en/functions/strings/Diff/index.md +++ b/content/en/functions/strings/Diff/index.md @@ -9,7 +9,7 @@ action: signatures: [strings.Diff OLDNAME OLD NEWNAME NEW] --- -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} Use `strings.Diff` to compare two strings and render a highlighted diff: diff --git a/content/en/functions/strings/TrimSpace.md b/content/en/functions/strings/TrimSpace.md index eef4e8121..7cb293674 100644 --- a/content/en/functions/strings/TrimSpace.md +++ b/content/en/functions/strings/TrimSpace.md @@ -15,7 +15,7 @@ action: signatures: [strings.TrimSpace INPUT] --- -{{< new-in 0.136.3 >}} +{{< new-in 0.136.3 />}} Whitespace characters include `\t`, `\n`, `\v`, `\f`, `\r`, and characters in the [Unicode Space Separator] category. diff --git a/content/en/functions/templates/Defer.md b/content/en/functions/templates/Defer.md index 1d538db4a..c43ef43bf 100644 --- a/content/en/functions/templates/Defer.md +++ b/content/en/functions/templates/Defer.md @@ -12,7 +12,7 @@ action: aliases: [/functions/templates.defer] --- -{{< new-in "0.128.0" >}} +{{< new-in 0.128.0 />}} In some rare use cases, you may need to defer the execution of a template until after all sites and output formats have been rendered. One such example could be [TailwindCSS](/functions/css/tailwindcss/) using the output of [hugo_stats.json](/getting-started/configuration/#configure-build) to determine which classes and other HTML identifiers are being used in the final output: diff --git a/content/en/functions/transform/ToMath.md b/content/en/functions/transform/ToMath.md index 62d1360ce..10cd256c5 100644 --- a/content/en/functions/transform/ToMath.md +++ b/content/en/functions/transform/ToMath.md @@ -13,7 +13,7 @@ aliases: [/functions/tomath] toc: true --- -{{< new-in "0.132.0" >}} +{{< new-in 0.132.0 />}} Hugo uses an embedded instance of the [KaTeX] display engine to render mathematical markup to HTML. You do not need to install the KaTeX display engine. diff --git a/content/en/functions/transform/Unmarshal.md b/content/en/functions/transform/Unmarshal.md index 959f20223..e50fc0ee0 100644 --- a/content/en/functions/transform/Unmarshal.md +++ b/content/en/functions/transform/Unmarshal.md @@ -132,7 +132,7 @@ delimiter comment : (`string`) The comment character used in the CSV. If set, lines beginning with the comment character without preceding whitespace are ignored. -lazyQuotes {{< new-in 0.122.0 >}} +lazyQuotes {{< new-in 0.122.0 />}} : (`bool`) If true, a quote may appear in an unquoted field and a non-doubled quote may appear in a quoted field. Default is `false`. ```go-html-template diff --git a/content/en/functions/transform/XMLEscape.md b/content/en/functions/transform/XMLEscape.md index d0aafc4bd..291f0f622 100644 --- a/content/en/functions/transform/XMLEscape.md +++ b/content/en/functions/transform/XMLEscape.md @@ -10,7 +10,7 @@ action: signatures: [transform.XMLEscape INPUT] --- -{{< new-in 0.121.0 >}} +{{< new-in 0.121.0 />}} The `transform.XMLEscape` function removes [disallowed characters] as defined in the XML specification, then escapes the result by replacing the following characters with [HTML entities]: diff --git a/content/en/getting-started/_index.md b/content/en/getting-started/_index.md index 1648f0224..ca180d999 100644 --- a/content/en/getting-started/_index.md +++ b/content/en/getting-started/_index.md @@ -1,7 +1,7 @@ --- title: Getting started -linkTitle: In this section -description: Quick start and guides for installing Hugo on your preferred operating system. + +description: How to get started with Hugo. categories: [] keywords: [] menu: diff --git a/content/en/getting-started/configuration-build.md b/content/en/getting-started/configuration-build.md index 637bfeb22..791d4bb99 100644 --- a/content/en/getting-started/configuration-build.md +++ b/content/en/getting-started/configuration-build.md @@ -16,21 +16,21 @@ The `build` configuration section contains global build-related configuration op {{< code-toggle config=build />}} -#### buildStats +###### buildStats See [Configure buildStats](#configure-build-stats). -#### cachebusters +###### cachebusters See [Configure Cache Busters](#configure-cache-busters). -#### noJSConfigInAssets +###### noJSConfigInAssets (`bool`) If `true`, turns off writing a `jsconfig.json` into your `assets` directory with mapping of imports from running [js.Build](/hugo-pipes/js). This file is intended to help with intellisense/navigation inside code editors such as [VS Code](https://code.visualstudio.com/). Note that if you do not use `js.Build`, no file will be written. -#### useResourceCacheWhen +###### useResourceCacheWhen -(`string`) When to use the cached resources in `/resources/_gen` for PostCSS and ToCSS. Valid values are `never`, `always` and `fallback`. The last value means that the cache will be tried if PostCSS/extended version is not available. +(`string`) When to use the resource file cache, one of `never`, `fallback`, or `always`. Applicable when transpiling Sass to CSS. Default is `fallback`. ## Configure cache busters @@ -54,7 +54,7 @@ The `build.cachebusters` configuration option was added to support development u target = "$1" {{< /code-toggle >}} -When `buildStats` {{< new-in 0.115.1 >}} is enabled, Hugo writes a `hugo_stats.json` file on each build with HTML classes etc. that's used in the rendered output. Changes to this file will trigger a rebuild of the `styles.css` file. You also need to add `hugo_stats.json` to Hugo's server watcher. See [Hugo Starter Tailwind Basic](https://github.com/bep/hugo-starter-tailwind-basic) for a running example. +When `buildStats` {{< new-in 0.115.1 />}} is enabled, Hugo writes a `hugo_stats.json` file on each build with HTML classes etc. that's used in the rendered output. Changes to this file will trigger a rebuild of the `styles.css` file. You also need to add `hugo_stats.json` to Hugo's server watcher. See [Hugo Starter Tailwind Basic](https://github.com/bep/hugo-starter-tailwind-basic) for a running example. source : A regexp matching file(s) relative to one of the virtual component directories in Hugo, typically `assets/...`. @@ -66,11 +66,11 @@ target {{< code-toggle config=build.buildStats />}} -{{< new-in 0.115.1 >}} +{{< new-in 0.115.1 />}} If `enable` is set to `true`, creates a `hugo_stats.json` file in the root of your project. This file contains arrays of the `class` attributes, `id` attributes, and tags of every HTML element within your published site. Use this file as data source when [removing unused CSS] from your site. This process is also known as pruning, purging, or tree shaking. -[removing unused CSS]: /hugo-pipes/postprocess/#css-purging-with-postcss +[removing unused CSS]: /functions/resources/postprocess/ Exclude `class` attributes, `id` attributes, or tags from `hugo_stats.json` with the `disableClasses`, `disableIDs`, and `disableTags` keys. diff --git a/content/en/getting-started/configuration-markup.md b/content/en/getting-started/configuration-markup.md index f01d0dddd..ef885e44b 100644 --- a/content/en/getting-started/configuration-markup.md +++ b/content/en/getting-started/configuration-markup.md @@ -86,7 +86,7 @@ typographer|[Goldmark Extensions: Typographer]|:heavy_check_mark: #### Extras -{{< new-in 0.126.0 >}} +{{< new-in 0.126.0 />}} Enable [deleted text], [inserted text], [mark text], [subscript], and [superscript] elements in Markdown. @@ -124,7 +124,7 @@ enable = true #### Passthrough -{{< new-in 0.122.0 >}} +{{< new-in 0.122.0 />}} Enable the passthrough extension to include mathematical equations and expressions in Markdown using LaTeX markup. See [mathematics in Markdown] for details. @@ -153,7 +153,7 @@ Most of the Goldmark settings above are self-explanatory, but some require expla ###### duplicateResourceFiles -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} (`bool`) If `true`, shared page resources on multilingual single-host sites will be duplicated for each language. See [multilingual page resources] for details. Default is `false`. @@ -194,7 +194,7 @@ This is also the strategy used by the [anchorize](/functions/urls/anchorize) tem ###### renderHooks.image.enableDefault -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} (`bool`) If `true`, enables Hugo's [embedded image render hook]. Default is `false`. @@ -208,7 +208,7 @@ The embedded image render hook is automatically enabled for multilingual single- ###### renderHooks.link.enableDefault -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} (`bool`) If `true`, enables Hugo's [embedded link render hook]. Default is `false`. diff --git a/content/en/getting-started/configuration.md b/content/en/getting-started/configuration.md index 448689295..23376f68f 100644 --- a/content/en/getting-started/configuration.md +++ b/content/en/getting-started/configuration.md @@ -228,13 +228,13 @@ See [Configure File Caches](#configure-file-caches). ###### canonifyURLs -(`bool`) See [details](/content-management/urls/#canonical-urls) before enabling this feature. Default is `false`. +(`bool`) See [details](/content-management/urls/#canonical-urls) before enabling this feature. Default is `false`. ###### capitalizeListTitles -{{< new-in 0.123.3 >}} +{{< new-in 0.123.3 />}} -(`bool`) Whether to capitalize automatic list titles. Applicable to section, taxonomy, and term pages. Default is `true`. You can change the capitalization style in your site configuration to one of `ap`, `chicago`, `go`, `firstupper`, or `none`. See [details]. +(`bool`) Whether to capitalize automatic list titles. Applicable to section, taxonomy, and term pages. Default is `true`. You can change the capitalization style in your site configuration to one of `ap`, `chicago`, `go`, `firstupper`, or `none`. See [details]. [details]: /getting-started/configuration/#configure-title-case @@ -281,7 +281,7 @@ To remain consistent and prevent unexpected behavior, do not mix these strategie ###### disableDefaultLanguageRedirect -{{< new-in 0.140.0 >}} +{{< new-in 0.140.0 />}} (`bool`) Disables generation of redirect to the default language when DefaultContentLanguageInSubdir is `true`. Default is `false`. @@ -291,7 +291,7 @@ To remain consistent and prevent unexpected behavior, do not mix these strategie ###### disableKinds -(`string slice`) Disable rendering of the specified page [kinds](g), any of `404`, `home`, `page`, `robotstxt`, `rss`, `section`, `sitemap`, `taxonomy`, or `term`. +(`[]string`) Disable rendering of the specified page [kinds](g), any of `404`, `home`, `page`, `robotstxt`, `rss`, `section`, `sitemap`, `taxonomy`, or `term`. ###### disableLanguages @@ -337,7 +337,7 @@ See [Front matter Configuration](#configure-front-matter). (`bool`) Ignore the cache directory. Default is `false`. ###### ignoreLogs -(`string slice`) A slice of message identifiers corresponding to warnings and errors you wish to suppress. See [`erroridf`] and [`warnidf`]. +(`[]string`) A slice of message identifiers corresponding to warnings and errors you wish to suppress. See [`erroridf`] and [`warnidf`]. [`erroridf`]: /functions/fmt/erroridf/ [`warnidf`]: /functions/fmt/warnidf/ @@ -460,7 +460,7 @@ See [Related Content](/content-management/related/#configure-related-content). ###### relativeURLs -(`bool`) See [details](/content-management/urls/#relative-urls) before enabling this feature. Default is `false`. +(`bool`) See [details](/content-management/urls/#relative-urls) before enabling this feature. Default is `false`. ###### removePathAccents @@ -472,9 +472,9 @@ content/post/hügó.md → https://example.org/post/hugo/ ###### renderSegments -{{< new-in 0.124.0 >}} +{{< new-in 0.124.0 />}} -(`string slice`) A list of segments to render. If not set, everything will be rendered. This is more commonly set in a CLI flag, e.g. `hugo --renderSegments segment1,segment2`. The segment names must match the names in the [segments](#configure-segments) configuration. +(`[]string`) A list of segments to render. If not set, everything will be rendered. This is more commonly set in a CLI flag, e.g. `hugo --renderSegments segment1,segment2`. The segment names must match the names in the [segments](#configure-segments) configuration. ###### sectionPagesMenu @@ -541,7 +541,7 @@ See [module configuration](/hugo-modules/configuration/#module-configuration-imp ###### uglyURLs -(`bool` or `map`) Whether to generate uglyURLs. Default is `false`. See [details](/content-management/urls/#appearance). +(`bool` or `map`) Whether to generate uglyURLs. Default is `false`. See [details](/content-management/urls/#appearance). ###### watch @@ -563,7 +563,7 @@ enableemoji: true ## Configure page -{{< new-in 0.133.0 >}} +{{< new-in 0.133.0 />}} These methods on a `Page` object navigate to the next or previous page within a page collection, relative to the current page: @@ -734,7 +734,7 @@ HUGO_ENVIRONMENT HUGO_FILE_LOG_FORMAT : (`string`) A format string for the file path, line number, and column number displayed when reporting errors, or when calling the `Position` method from a shortcode or Markdown render hook. Valid tokens are `:file`, `:line`, and `:col`. Default is `:file::line::col`. -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} HUGO_MEMORYLIMIT : (`int`) The maximum amount of system memory, in gigabytes, that Hugo can use while rendering your site. Default is 25% of total system memory. @@ -876,7 +876,7 @@ This can be set using the `cacheDir` config option or via the OS environment var If this is not set, Hugo will use, in order of preference: 1. If running on Netlify: `/opt/build/cache/hugo_cache/`. This means that if you run your builds on Netlify, all caches configured with `:cacheDir` will be saved and restored on the next build. For other CI vendors, please read their documentation. For an CircleCI example, see [this configuration](https://github.com/bep/hugo-sass-test/blob/6c3960a8f4b90e8938228688bc49bdcdd6b2d99e/.circleci/config.yml). -1. In a `hugo_cache` directory below the OS user cache directory as defined by Go's [os.UserCacheDir](https://pkg.go.dev/os#UserCacheDir). On Unix systems, this is `$XDG_CACHE_HOME` as specified by [basedir-spec-latest](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html) if non-empty, else `$HOME/.cache`. On MacOS, this is `$HOME/Library/Caches`. On Windows, this is`%LocalAppData%`. On Plan 9, this is `$home/lib/cache`. {{< new-in 0.116.0 >}} +1. In a `hugo_cache` directory below the OS user cache directory as defined by Go's [os.UserCacheDir](https://pkg.go.dev/os#UserCacheDir). On Unix systems, this is `$XDG_CACHE_HOME` as specified by [basedir-spec-latest](https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html) if non-empty, else `$HOME/.cache`. On MacOS, this is `$HOME/Library/Caches`. On Windows, this is`%LocalAppData%`. On Plan 9, this is `$home/lib/cache`. {{< new-in 0.116.0 />}} 1. In a `hugo_cache_$USER` directory below the OS temp dir. If you want to know the current value of `cacheDir`, you can run `hugo config`, e.g: `hugo config | grep cachedir`. @@ -890,7 +890,7 @@ If you want to know the current value of `cacheDir`, you can run `hugo config`, ## Configure HTTP cache -{{< new-in 0.127.0 >}} +{{< new-in 0.127.0 />}} Note that this configuration is currently only relevant when using the [resources.GetRemote] function. @@ -936,7 +936,7 @@ polling ## Configure segments -{{< new-in 0.124.0 >}} +{{< new-in 0.124.0 />}} {{% note %}} The `segments` configuration is currently only used to configure partitioned rendering. diff --git a/content/en/getting-started/external-learning-resources/index.md b/content/en/getting-started/external-learning-resources/index.md index 46c66a737..80805d4a6 100644 --- a/content/en/getting-started/external-learning-resources/index.md +++ b/content/en/getting-started/external-learning-resources/index.md @@ -1,5 +1,6 @@ --- title: External learning resources +linkTitle: External resources description: Use these third-party resources to learn Hugo. categories: [getting started] keywords: [books, tutorials, learning, usage] diff --git a/content/en/getting-started/glossary/action.md b/content/en/getting-started/glossary/action.md deleted file mode 100644 index b38df744f..000000000 --- a/content/en/getting-started/glossary/action.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: action ---- - -See [template action](g). diff --git a/content/en/getting-started/glossary/archetype.md b/content/en/getting-started/glossary/archetype.md deleted file mode 100644 index ae427409e..000000000 --- a/content/en/getting-started/glossary/archetype.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: archetype ---- - -An archetype is a template for new content. See [details](/content-management/archetypes/). diff --git a/content/en/getting-started/glossary/argument.md b/content/en/getting-started/glossary/argument.md deleted file mode 100644 index 223f866a4..000000000 --- a/content/en/getting-started/glossary/argument.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: argument ---- - -A [scalar](g), [array](g), [slice](g), [map](g), or [object](g) passed to a [function](g), [method](g), or [shortcode](g). diff --git a/content/en/getting-started/glossary/array.md b/content/en/getting-started/glossary/array.md deleted file mode 100644 index bcd1718bb..000000000 --- a/content/en/getting-started/glossary/array.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: array ---- - -A numbered sequence of [elements](g). Unlike Go's [slice](g) data type, an array has a fixed length. Elements within an array can be [scalars](g), slices, [maps](g), pages, or other arrays. See the [Go documentation](https://go.dev/ref/spec#Array_types) for details. diff --git a/content/en/getting-started/glossary/boolean.md b/content/en/getting-started/glossary/boolean.md deleted file mode 100644 index d9b655396..000000000 --- a/content/en/getting-started/glossary/boolean.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: boolean ---- - -A data type with two possible values, either `true` or `false`. diff --git a/content/en/getting-started/glossary/branch-bundle.md b/content/en/getting-started/glossary/branch-bundle.md deleted file mode 100644 index 1e1e85e4d..000000000 --- a/content/en/getting-started/glossary/branch-bundle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: branch bundle ---- - -A directory that contains an `_index.md` file and zero or more [resources](g). Analogous to a physical branch, a branch bundle may have descendants including leaf bundles and other branch bundles. Top level directories with or without `_index.md` files are also branch bundles. This includes the home page. See [details](/content-management/page-bundles/). diff --git a/content/en/getting-started/glossary/build.md b/content/en/getting-started/glossary/build.md deleted file mode 100644 index b5eed6659..000000000 --- a/content/en/getting-started/glossary/build.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: build ---- - -To generate a static site that includes HTML files and assets such as images, CSS, and JavaScript. The build process includes rendering and resource transformations. diff --git a/content/en/getting-started/glossary/cache.md b/content/en/getting-started/glossary/cache.md deleted file mode 100644 index 139ce9033..000000000 --- a/content/en/getting-started/glossary/cache.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: cache ---- - -A software component that stores data so that future requests for the same data are faster. diff --git a/content/en/getting-started/glossary/chain.md b/content/en/getting-started/glossary/chain.md deleted file mode 100644 index b54c09315..000000000 --- a/content/en/getting-started/glossary/chain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: chain ---- - -Within a template, to connect one or more [identifiers](g) with a dot. An identifier can represent a method, object, or field. For example, `.Site.Params.author.name` or `.Date.UTC.Hour`. diff --git a/content/en/getting-started/glossary/cjk.md b/content/en/getting-started/glossary/cjk.md deleted file mode 100644 index 1f9e14ed2..000000000 --- a/content/en/getting-started/glossary/cjk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: CJK ---- - -A collective term for the Chinese, Japanese, and Korean languages. See [details](https://en.wikipedia.org/wiki/CJK_characters). diff --git a/content/en/getting-started/glossary/cli.md b/content/en/getting-started/glossary/cli.md deleted file mode 100644 index 11602f7e3..000000000 --- a/content/en/getting-started/glossary/cli.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: CLI ---- - -Command line interface. diff --git a/content/en/getting-started/glossary/collection.md b/content/en/getting-started/glossary/collection.md deleted file mode 100644 index 8ff962447..000000000 --- a/content/en/getting-started/glossary/collection.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: collection ---- - -An [array](g), [slice](g), or [map](g). diff --git a/content/en/getting-started/glossary/content-adapter.md b/content/en/getting-started/glossary/content-adapter.md deleted file mode 100644 index a54a36f22..000000000 --- a/content/en/getting-started/glossary/content-adapter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: content adapter ---- - -A template that dynamically creates pages when building a site. For example, use a content adapter to create pages from a remote data source such as JSON, TOML, YAML, or XML. See [details](/content-management/content-adapters/). diff --git a/content/en/getting-started/glossary/content-format.md b/content/en/getting-started/glossary/content-format.md deleted file mode 100644 index 5ed855b90..000000000 --- a/content/en/getting-started/glossary/content-format.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: content format ---- - -A markup language for creating content. Typically Markdown, but may also be HTML, AsciiDoc, Org, Pandoc, or reStructuredText. See [details](/content-management/formats/). diff --git a/content/en/getting-started/glossary/content-type.md b/content/en/getting-started/glossary/content-type.md deleted file mode 100644 index 9e8a720bf..000000000 --- a/content/en/getting-started/glossary/content-type.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: content type ---- - -A classification of content inferred from the top-level directory name or the `type` set in [front matter](g). Pages in the root of the `content` directory, including the home page, are of type "page". Accessed via `.Page.Type` in [templates](g). See [details](/content-management/types/) diff --git a/content/en/getting-started/glossary/content-view.md b/content/en/getting-started/glossary/content-view.md deleted file mode 100644 index a89c50b6e..000000000 --- a/content/en/getting-started/glossary/content-view.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: content view ---- - -A template called with the `.Page.Render` method. See [details](/templates/content-view/). diff --git a/content/en/getting-started/glossary/context.md b/content/en/getting-started/glossary/context.md deleted file mode 100644 index 25faf478a..000000000 --- a/content/en/getting-started/glossary/context.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: context ---- - -Represented by a dot "." within a [template action](g), context is the current location in a data structure. For example, while iterating over a [collection](g) of pages, the context within each iteration is the page's data structure. The context received by each template depends on template type and/or how it was called. See [details](/templates/introduction/#context). diff --git a/content/en/getting-started/glossary/default-sort-order.md b/content/en/getting-started/glossary/default-sort-order.md deleted file mode 100644 index c0f55fbf6..000000000 --- a/content/en/getting-started/glossary/default-sort-order.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: default sort order ---- - -The default sort order for page collections. Hugo sorts by [weight](g), then by date (descending), then by link title, and then by file path. diff --git a/content/en/getting-started/glossary/element.md b/content/en/getting-started/glossary/element.md deleted file mode 100644 index 5c33c55ad..000000000 --- a/content/en/getting-started/glossary/element.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: element ---- - -A member of a slice or array. diff --git a/content/en/getting-started/glossary/field.md b/content/en/getting-started/glossary/field.md deleted file mode 100644 index f49e65c79..000000000 --- a/content/en/getting-started/glossary/field.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: field ---- - -A predefined key-value pair in front matter such as `date` or `title`. See also [parameter](g). diff --git a/content/en/getting-started/glossary/flag.md b/content/en/getting-started/glossary/flag.md deleted file mode 100644 index df9fd21fb..000000000 --- a/content/en/getting-started/glossary/flag.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: flag ---- - -An option passed to a command-line program, beginning with one or two hyphens. See [details](/commands/hugo/). diff --git a/content/en/getting-started/glossary/floating-point.md b/content/en/getting-started/glossary/floating-point.md deleted file mode 100644 index cdf5a2294..000000000 --- a/content/en/getting-started/glossary/floating-point.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: floating point ---- - -A numeric data type with a fractional component. For example, `3.14159`. diff --git a/content/en/getting-started/glossary/fragment.md b/content/en/getting-started/glossary/fragment.md deleted file mode 100644 index b1e3fd7eb..000000000 --- a/content/en/getting-started/glossary/fragment.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: fragment ---- - -The final segment of a URL, beginning with a hash (`#`) mark, that references an `id` attribute of an HTML element on the page. diff --git a/content/en/getting-started/glossary/front-matter.md b/content/en/getting-started/glossary/front-matter.md deleted file mode 100644 index d66e400b4..000000000 --- a/content/en/getting-started/glossary/front-matter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: front matter ---- - -Metadata at the beginning of each content page, separated from the content by format-specific delimiters. See [details](/content-management/front-matter/). diff --git a/content/en/getting-started/glossary/function.md b/content/en/getting-started/glossary/function.md deleted file mode 100644 index d07f4ae6b..000000000 --- a/content/en/getting-started/glossary/function.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: function ---- - -Used within a [template action](g), a function takes one or more [arguments](g) and returns a value. Unlike [methods](g), functions are not associated with an [object](g). See [details](/functions/). diff --git a/content/en/getting-started/glossary/global-resource.md b/content/en/getting-started/glossary/global-resource.md deleted file mode 100644 index e51e68363..000000000 --- a/content/en/getting-started/glossary/global-resource.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: global resource ---- - -A file within the `assets` directory, or within any directory [mounted](/hugo-modules/configuration/#module-configuration-mounts) to the `assets` directory. Capture one or more global resources using the [`resources.Get`], [`resources.GetMatch`], [`resources.Match`], or [`resources.ByType`] functions. - -[`resources.Get`]: /functions/resources/get/ -[`resources.GetMatch`]: /functions/resources/getmatch/ -[`resources.Match`]: /functions/resources/match/ -[`resources.ByType`]: /functions/resources/byType/ diff --git a/content/en/getting-started/glossary/headless-bundle.md b/content/en/getting-started/glossary/headless-bundle.md deleted file mode 100644 index 60da816af..000000000 --- a/content/en/getting-started/glossary/headless-bundle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: headless bundle ---- - -An unpublished leaf or branch bundle whose content and resources you can include in other pages. See [build options](/content-management/build-options/). diff --git a/content/en/getting-started/glossary/identifier.md b/content/en/getting-started/glossary/identifier.md deleted file mode 100644 index eeb17dbf5..000000000 --- a/content/en/getting-started/glossary/identifier.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: identifier ---- - -A string that represents a variable, method, object, or field. It must conform to Go's [language specification](https://go.dev/ref/spec#Identifiers), beginning with a letter or underscore, followed by zero or more letters, digits, or underscores. diff --git a/content/en/getting-started/glossary/integer.md b/content/en/getting-started/glossary/integer.md deleted file mode 100644 index aa61f248f..000000000 --- a/content/en/getting-started/glossary/integer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: integer ---- - -A numeric data type without a fractional component. For example, `42`. diff --git a/content/en/getting-started/glossary/internationalization.md b/content/en/getting-started/glossary/internationalization.md deleted file mode 100644 index aa65f8ffb..000000000 --- a/content/en/getting-started/glossary/internationalization.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: internationalization ---- - -Software design and development efforts that enable [localization](g). See the [W3C definition](https://www.w3.org/International/questions/qa-i18n). Abbreviated i18n. diff --git a/content/en/getting-started/glossary/interpreted-string-literal.md b/content/en/getting-started/glossary/interpreted-string-literal.md deleted file mode 100644 index 97bd8ae67..000000000 --- a/content/en/getting-started/glossary/interpreted-string-literal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: interpreted string literal ---- - -Interpreted string literals are character sequences between double quotes, as in "foo". Within the quotes, any character may appear except a newline and an unescaped double quote. The text between the quotes forms the value of the literal, with backslash escapes interpreted. See [details](https://go.dev/ref/spec#String_literals). diff --git a/content/en/getting-started/glossary/interval.md b/content/en/getting-started/glossary/interval.md deleted file mode 100644 index ad19a402e..000000000 --- a/content/en/getting-started/glossary/interval.md +++ /dev/null @@ -1,11 +0,0 @@ ---- -title: interval ---- - -An [interval](https://en.wikipedia.org/wiki/Interval_(mathematics)) is a range of numbers between two endpoints: closed, open, or half-open. - -- A _closed_ interval, denoted by brackets, includes its endpoints. For example, [0, 1] is the interval where `0 <= x <= 1`. - -- An _open_ interval, denoted by parentheses, excludes its endpoints. For example, (0, 1) is the interval where `0 < x < 1`. - -- A _half-open_ interval includes only one of its endpoints. For example, (0, 1] is the _left-open_ interval where `0 < x <= 1`, while [0, 1) is the _right-open_ interval where `0 <= x < 1`. diff --git a/content/en/getting-started/glossary/kind.md b/content/en/getting-started/glossary/kind.md deleted file mode 100644 index 1434e55c5..000000000 --- a/content/en/getting-started/glossary/kind.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: kind ---- - -See [page kind](g). diff --git a/content/en/getting-started/glossary/leaf-bundle.md b/content/en/getting-started/glossary/leaf-bundle.md deleted file mode 100644 index 88d934cf5..000000000 --- a/content/en/getting-started/glossary/leaf-bundle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: leaf bundle ---- - -A directory that contains an index.md file and zero or more [resources](g). Analogous to a physical leaf, a leaf bundle is at the end of a branch. It has no descendants. See [details](/content-management/page-bundles/). diff --git a/content/en/getting-started/glossary/lexer.md b/content/en/getting-started/glossary/lexer.md deleted file mode 100644 index 93d2ed6c5..000000000 --- a/content/en/getting-started/glossary/lexer.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: lexer ---- - -A software component that identifies keywords, identifiers, operators, numbers, and other basic building blocks of a programming language within the input text. diff --git a/content/en/getting-started/glossary/list-page.md b/content/en/getting-started/glossary/list-page.md deleted file mode 100644 index f17e0ac69..000000000 --- a/content/en/getting-started/glossary/list-page.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: list page ---- - -Any [page kind](g) that receives a page [collection](g) in [context](g). This includes the home page, [section pages](g), [taxonomy pages](g), and [term pages](g). diff --git a/content/en/getting-started/glossary/list-template.md b/content/en/getting-started/glossary/list-template.md deleted file mode 100644 index e3283ff71..000000000 --- a/content/en/getting-started/glossary/list-template.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: list template ---- - -Any template that renders a [list page](g). This includes [home](/templates/types/#home), [section](/templates/types/#section), [taxonomy](/templates/types/#taxonomy), and [term](/templates/types/#term) templates. diff --git a/content/en/getting-started/glossary/localization.md b/content/en/getting-started/glossary/localization.md deleted file mode 100644 index d03dedd9e..000000000 --- a/content/en/getting-started/glossary/localization.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: localization ---- - -Adaptation of a site to meet language and regional requirements. This includes translations, language-specific media, date and currency formats, etc. See [details](/content-management/multilingual/) and the [W3C definition](https://www.w3.org/International/questions/qa-i18n). Abbreviated l10n. diff --git a/content/en/getting-started/glossary/logical-path.md b/content/en/getting-started/glossary/logical-path.md deleted file mode 100644 index 3a2c96f18..000000000 --- a/content/en/getting-started/glossary/logical-path.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: logical path ---- - -{{< new-in 0.123.0 >}} - -A page or page resource identifier derived from the file path, excluding its extension and language identifier. This value is neither a file path nor a URL. Starting with a file path relative to the `content` directory, Hugo determines the logical path by stripping the file extension and language identifier, converting to lower case, then replacing spaces with hyphens. See [examples](/methods/page/path/#examples). diff --git a/content/en/getting-started/glossary/map.md b/content/en/getting-started/glossary/map.md deleted file mode 100644 index aa80357d9..000000000 --- a/content/en/getting-started/glossary/map.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: map ---- - -An unordered group of elements, each indexed by a unique key. See the [Go documentation](https://go.dev/ref/spec#Map_types) for details. diff --git a/content/en/getting-started/glossary/markdown-attribute.md b/content/en/getting-started/glossary/markdown-attribute.md deleted file mode 100644 index ab9a984f5..000000000 --- a/content/en/getting-started/glossary/markdown-attribute.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Markdown attribute ---- - -A list of attributes, containing one or more key-value pairs, separated by spaces or commas, and wrapped by braces. Apply Markdown attributes to images and block-level elements including blockquotes, fenced code blocks, headings, horizontal rules, lists, paragraphs, and tables. See [details](/getting-started/configuration-markup/#goldmark). diff --git a/content/en/getting-started/glossary/marshal.md b/content/en/getting-started/glossary/marshal.md deleted file mode 100644 index 73c59e8b7..000000000 --- a/content/en/getting-started/glossary/marshal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: marshal ---- - -To transform a data structure into a serialized object. For example, transforming a [map](g) into a JSON string. See [unmarshal](g). diff --git a/content/en/getting-started/glossary/method.md b/content/en/getting-started/glossary/method.md deleted file mode 100644 index 960488b4e..000000000 --- a/content/en/getting-started/glossary/method.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: method ---- - -Used within a [template action](g) and associated with an [object](g), a method takes zero or more [arguments](g) and either returns a value or performs an action. For example, `.IsHome` is a method on the `.Page` object which returns `true` if the current page is the home page. See also [function](g). diff --git a/content/en/getting-started/glossary/module.md b/content/en/getting-started/glossary/module.md deleted file mode 100644 index 13a3945ab..000000000 --- a/content/en/getting-started/glossary/module.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: module ---- - -Like a [theme](g), a module is a packaged combination of [archetypes](g), assets, content, data, [templates](g), translation tables, static files, or configuration settings. A module may serve as the basis for a new site, or to augment an existing site. See [details](/hugo-modules/). diff --git a/content/en/getting-started/glossary/node.md b/content/en/getting-started/glossary/node.md deleted file mode 100644 index 2cd1e7b1f..000000000 --- a/content/en/getting-started/glossary/node.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: node ---- - -A class of [page kinds](g) including `home`, `section`, `taxonomy`, and `term`. diff --git a/content/en/getting-started/glossary/object.md b/content/en/getting-started/glossary/object.md deleted file mode 100644 index ea19987c7..000000000 --- a/content/en/getting-started/glossary/object.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: object ---- - -A data structure with or without associated [methods](g). diff --git a/content/en/getting-started/glossary/ordered-taxonomy.md b/content/en/getting-started/glossary/ordered-taxonomy.md deleted file mode 100644 index 7df5ebfe1..000000000 --- a/content/en/getting-started/glossary/ordered-taxonomy.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: ordered taxonomy ---- - -Created by invoking the [`Alphabetical`] or [`ByCount`] method on a [`Taxonomy`](g) object, which is a [map](g), an _ordered taxonomy_ is a [slice](g), where each element is an object that contains the [term](g) and a slice of its [weighted pages](g). - -[`Alphabetical`]: /methods/taxonomy/alphabetical/ -[`ByCount`]: /methods/taxonomy/bycount/ diff --git a/content/en/getting-started/glossary/output-format.md b/content/en/getting-started/glossary/output-format.md deleted file mode 100644 index b4bab9ce7..000000000 --- a/content/en/getting-started/glossary/output-format.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: output format ---- - -Hugo generates one or more files per page when building a site. For example, when rendering home, [section](g), [taxonomy](g), and [term](g) pages, Hugo generates an HTML file and an RSS file. Both HTML and RSS are built-in _output formats_. Create multiple output formats, and control generation based on [page kind](g), or by enabling one or more output formats for one or more pages. See [details]. - -[details]: /templates/output-formats/ diff --git a/content/en/getting-started/glossary/page-bundle.md b/content/en/getting-started/glossary/page-bundle.md deleted file mode 100644 index a82a3d257..000000000 --- a/content/en/getting-started/glossary/page-bundle.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: page bundle ---- - -A directory that encapsulates both content and associated [resources](g). There are two types of page bundles: [leaf bundles](g) and [branch bundles](g). See [details](/content-management/page-bundles/). diff --git a/content/en/getting-started/glossary/page-collection.md b/content/en/getting-started/glossary/page-collection.md deleted file mode 100644 index 13f9eb990..000000000 --- a/content/en/getting-started/glossary/page-collection.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: page collection ---- - -A slice of `Page` objects. diff --git a/content/en/getting-started/glossary/page-kind.md b/content/en/getting-started/glossary/page-kind.md deleted file mode 100644 index a71dbd6b2..000000000 --- a/content/en/getting-started/glossary/page-kind.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: page kind ---- - -A classification of pages, one of `home`, `page`, `section`, `taxonomy`, or `term`. See [details](/methods/page/kind/). - -Note that there are also `RSS`, `sitemap`, `robotsTXT`, and `404` page kinds, but these are only available during the rendering of each of these respective page's kind and therefore *not* available in any of the `Pages` collections. diff --git a/content/en/getting-started/glossary/page-resource.md b/content/en/getting-started/glossary/page-resource.md deleted file mode 100644 index 324f09470..000000000 --- a/content/en/getting-started/glossary/page-resource.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: page resource ---- - -A file within a [page bundle](g). Capture one or more page resources using any of the [`Resources`] methods on a `Page` object. - -[`Resources`]: /methods/page/resources/#methods diff --git a/content/en/getting-started/glossary/pager.md b/content/en/getting-started/glossary/pager.md deleted file mode 100644 index 206f81204..000000000 --- a/content/en/getting-started/glossary/pager.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: pager ---- - -Created during [pagination](g), a pager contains a subset of a list page and navigation links to other pagers. diff --git a/content/en/getting-started/glossary/paginate.md b/content/en/getting-started/glossary/paginate.md deleted file mode 100644 index 1a0b54f1e..000000000 --- a/content/en/getting-started/glossary/paginate.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: paginate ---- - -To split a list page into two or more subsets. diff --git a/content/en/getting-started/glossary/pagination.md b/content/en/getting-started/glossary/pagination.md deleted file mode 100644 index a41f88162..000000000 --- a/content/en/getting-started/glossary/pagination.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: pagination ---- - -The process of [paginating](g) a list page. See [details](/templates/pagination/). diff --git a/content/en/getting-started/glossary/paginator.md b/content/en/getting-started/glossary/paginator.md deleted file mode 100644 index 0358a5ab7..000000000 --- a/content/en/getting-started/glossary/paginator.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: paginator ---- - -A collection of [pagers](g). diff --git a/content/en/getting-started/glossary/parameter.md b/content/en/getting-started/glossary/parameter.md deleted file mode 100644 index 24adcd60e..000000000 --- a/content/en/getting-started/glossary/parameter.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: parameter ---- - -Typically, a user-defined key-value pair at the site or page level, but may also refer to a configuration setting or an [argument](g). See also [field](g). diff --git a/content/en/getting-started/glossary/partial.md b/content/en/getting-started/glossary/partial.md deleted file mode 100644 index e4405d9d9..000000000 --- a/content/en/getting-started/glossary/partial.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: partial ---- - -A [template](g) called from any other template including [shortcodes](g), [render hooks](g), and other partials. A partial either renders something or returns something. A partial can also call itself, for example, to [walk](g) a data structure. diff --git a/content/en/getting-started/glossary/permalink.md b/content/en/getting-started/glossary/permalink.md deleted file mode 100644 index ac3601b26..000000000 --- a/content/en/getting-started/glossary/permalink.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: permalink ---- - -The absolute URL of a published resource or a rendered page, including scheme and host. diff --git a/content/en/getting-started/glossary/pipeline.md b/content/en/getting-started/glossary/pipeline.md deleted file mode 100644 index 17ca8344c..000000000 --- a/content/en/getting-started/glossary/pipeline.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: pipeline ---- - -Within a [template action](g), a pipeline is a possibly chained sequence of values, [function](g) calls, or [method](g) calls. Functions and methods in the pipeline may take multiple [arguments](g). - -A pipeline may be *chained* by separating a sequence of commands with pipeline characters "|". In a chained pipeline, the result of each command is passed as the last argument to the following command. The output of the final command in the pipeline is the value of the pipeline. See the [Go documentation](https://pkg.go.dev/text/template#hdr-Pipelines) for details. diff --git a/content/en/getting-started/glossary/raw-string-literal.md b/content/en/getting-started/glossary/raw-string-literal.md deleted file mode 100644 index add8a0cae..000000000 --- a/content/en/getting-started/glossary/raw-string-literal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: raw string literal ---- - -Raw string literals are character sequences between backticks, as in \`bar\`. Within the backticks, any character may appear except a backtick. Backslashes have no special meaning and the string may contain newlines. Carriage return characters (`\r`) inside raw string literals are discarded from the raw string value. See [details](https://go.dev/ref/spec#String_literals). diff --git a/content/en/getting-started/glossary/regular-page.md b/content/en/getting-started/glossary/regular-page.md deleted file mode 100644 index 265a9cbc0..000000000 --- a/content/en/getting-started/glossary/regular-page.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: regular page ---- - -Content with the "page" [page kind](g). See also [section page](g). diff --git a/content/en/getting-started/glossary/relative-permalink.md b/content/en/getting-started/glossary/relative-permalink.md deleted file mode 100644 index 73d676f1b..000000000 --- a/content/en/getting-started/glossary/relative-permalink.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: relative permalink ---- - -The host-relative URL of a published resource or a rendered page. diff --git a/content/en/getting-started/glossary/remote-resource.md b/content/en/getting-started/glossary/remote-resource.md deleted file mode 100644 index d0d00eae5..000000000 --- a/content/en/getting-started/glossary/remote-resource.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: remote resource ---- - -A file on a remote server, accessible via HTTP or HTTPS with the [`resources.GetRemote`](/functions/resources/getremote) function. diff --git a/content/en/getting-started/glossary/render-hook.md b/content/en/getting-started/glossary/render-hook.md deleted file mode 100644 index bed571972..000000000 --- a/content/en/getting-started/glossary/render-hook.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: render hook ---- - -A [template](g) that overrides standard Markdown rendering. See [details](/render-hooks). diff --git a/content/en/getting-started/glossary/resource-type.md b/content/en/getting-started/glossary/resource-type.md deleted file mode 100644 index d2543dd04..000000000 --- a/content/en/getting-started/glossary/resource-type.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: resource type ---- - -The main type of a resource's [media type]. Content files such as Markdown, HTML, AsciiDoc, Pandoc, reStructuredText, and Emacs Org Mode have resource type `page`. Other resource types include `image`, `video`, etc. Retrieve the resource type using the [`ResourceType`] method on a `Resource` object. - -[media type]: /methods/resource/mediatype/ -[`ResourceType`]: /methods/resource/resourcetype/ diff --git a/content/en/getting-started/glossary/resource.md b/content/en/getting-started/glossary/resource.md deleted file mode 100644 index 6de626a4e..000000000 --- a/content/en/getting-started/glossary/resource.md +++ /dev/null @@ -1,7 +0,0 @@ ---- -title: resource ---- - -Any file consumed by the build process to augment or generate content, structure, behavior, or presentation. For example: images, videos, content snippets, CSS, Sass, JavaScript, and data. - -Hugo supports three types of resources: [global resources](g), [page resources](g), and [remote resources](g). diff --git a/content/en/getting-started/glossary/scalar.md b/content/en/getting-started/glossary/scalar.md deleted file mode 100644 index d1e3cd26c..000000000 --- a/content/en/getting-started/glossary/scalar.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: scalar ---- - -A _scalar_ is a single value, one of [string](g), [integer](g), [floating point](g), or [boolean](g). diff --git a/content/en/getting-started/glossary/scratch-pad.md b/content/en/getting-started/glossary/scratch-pad.md deleted file mode 100644 index fe1fc65a9..000000000 --- a/content/en/getting-started/glossary/scratch-pad.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: scratch pad ---- - -Conceptually, a [map](g) with [methods](g) to set, get, update, and delete values. Attach the data structure to a `Page` or `Site` object using the [`Store`] method, or create a locally scoped scratch pad using the [`newScratch`] function. - -[`Store`]: /methods/page/store/ -[`newScratch`]: /functions/collections/newscratch/ diff --git a/content/en/getting-started/glossary/section-page.md b/content/en/getting-started/glossary/section-page.md deleted file mode 100644 index 060527015..000000000 --- a/content/en/getting-started/glossary/section-page.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: section page ---- - -Content with the "section" [page kind](g). Typically a listing of [regular pages](g) and/or other section pages within the current [section](g). diff --git a/content/en/getting-started/glossary/section.md b/content/en/getting-started/glossary/section.md deleted file mode 100644 index 4e615b112..000000000 --- a/content/en/getting-started/glossary/section.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: section ---- - -A section is a top-level content directory, or any content directory with an `_index.md` file. A content directory with an `_index.md` file is also known as a [branch bundle](g). Section templates receive one or more page [collections](g) in [context](g). See [details](/content-management/sections/). diff --git a/content/en/getting-started/glossary/shortcode.md b/content/en/getting-started/glossary/shortcode.md deleted file mode 100644 index 3bd6f1979..000000000 --- a/content/en/getting-started/glossary/shortcode.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: shortcode ---- - -A [template](g) called from within Markdown, taking zero or more [arguments](g). See [details](/content-management/shortcodes/). diff --git a/content/en/getting-started/glossary/slice.md b/content/en/getting-started/glossary/slice.md deleted file mode 100644 index fa6bc3cc0..000000000 --- a/content/en/getting-started/glossary/slice.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: slice ---- - -A numbered sequence of elements. Unlike Go's [array](g) data type, slices are dynamically sized. [Elements](g) within a slice can be [scalars](g), [arrays](g), [maps](g), pages, or other slices. See the [Go documentation](https://go.dev/ref/spec#Slice_types) for details. diff --git a/content/en/getting-started/glossary/string.md b/content/en/getting-started/glossary/string.md deleted file mode 100644 index daa3a4d9d..000000000 --- a/content/en/getting-started/glossary/string.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: string ---- - -A sequence of bytes. For example, `"What is 6 times 7?"`. diff --git a/content/en/getting-started/glossary/taxonomic-weight.md b/content/en/getting-started/glossary/taxonomic-weight.md deleted file mode 100644 index 7dcb8080d..000000000 --- a/content/en/getting-started/glossary/taxonomic-weight.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: taxonomic weight ---- - -Defined in front matter and unique to each taxonomy, this [weight](g) determines the sort order of page collections contained within a [`Taxonomy`](g) object. See [details](/content-management/taxonomies/#order-taxonomies). diff --git a/content/en/getting-started/glossary/taxonomy-object.md b/content/en/getting-started/glossary/taxonomy-object.md deleted file mode 100644 index 31315b988..000000000 --- a/content/en/getting-started/glossary/taxonomy-object.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: taxonomy object ---- - -A [map](g) of [terms](g) and the [weighted pages](g) associated with each term. diff --git a/content/en/getting-started/glossary/taxonomy-page.md b/content/en/getting-started/glossary/taxonomy-page.md deleted file mode 100644 index bf1b4aafb..000000000 --- a/content/en/getting-started/glossary/taxonomy-page.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: taxonomy page ---- - -Content with the "taxonomy" [page kind](g). Typically a listing of [terms](g) within a given [taxonomy](g). diff --git a/content/en/getting-started/glossary/taxonomy.md b/content/en/getting-started/glossary/taxonomy.md deleted file mode 100644 index f7d38351d..000000000 --- a/content/en/getting-started/glossary/taxonomy.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: taxonomy ---- - -A group of related [terms](g) used to classify content. For example, a "colors" taxonomy might include the terms "red", "green", and "blue". See [details](/content-management/taxonomies/). diff --git a/content/en/getting-started/glossary/template-action.md b/content/en/getting-started/glossary/template-action.md deleted file mode 100644 index ac5fad85e..000000000 --- a/content/en/getting-started/glossary/template-action.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: template action ---- - -A data evaluation or control structure within a [template](g), delimited by "{{" and "}}". See the [Go documentation](https://pkg.go.dev/text/template#hdr-Actions) for details. diff --git a/content/en/getting-started/glossary/template.md b/content/en/getting-started/glossary/template.md deleted file mode 100644 index b8b046092..000000000 --- a/content/en/getting-started/glossary/template.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: template ---- - -A file with [template actions](g), located within the `layouts` directory of a project, theme, or module. See [details](/templates/). diff --git a/content/en/getting-started/glossary/term-page.md b/content/en/getting-started/glossary/term-page.md deleted file mode 100644 index ed9bfec0d..000000000 --- a/content/en/getting-started/glossary/term-page.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: term page ---- - -Content with the "term" [page kind](g). Typically a listing of [regular pages](g) and [section pages](g) with a given [term](g). diff --git a/content/en/getting-started/glossary/term.md b/content/en/getting-started/glossary/term.md deleted file mode 100644 index d04f58b80..000000000 --- a/content/en/getting-started/glossary/term.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: term ---- - -A member of a [taxonomy](g), used to classify content. See [details](/content-management/taxonomies/). diff --git a/content/en/getting-started/glossary/theme.md b/content/en/getting-started/glossary/theme.md deleted file mode 100644 index e5c6ee951..000000000 --- a/content/en/getting-started/glossary/theme.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: theme ---- - -A packaged combination of [archetypes](g), assets, content, data, [templates](g), translation tables, static files, or configuration settings. A theme may serve as the basis for a new site, or to augment an existing site. See also [module](g). diff --git a/content/en/getting-started/glossary/token.md b/content/en/getting-started/glossary/token.md deleted file mode 100644 index 0a5ac22f6..000000000 --- a/content/en/getting-started/glossary/token.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: token ---- - -An identifier within a format string, beginning with a colon and replaced with a value when rendered. For example, use tokens in format strings for both [permalinks](/content-management/urls/#permalinks) and [dates](/functions/time/format/#localization). diff --git a/content/en/getting-started/glossary/unmarshal.md b/content/en/getting-started/glossary/unmarshal.md deleted file mode 100644 index 15db995f0..000000000 --- a/content/en/getting-started/glossary/unmarshal.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: unmarshal ---- - -To transform a serialized object into a data structure. For example, transforming a JSON file into a [map](g) that you can access within a template. See [marshal](g). diff --git a/content/en/getting-started/glossary/variable.md b/content/en/getting-started/glossary/variable.md deleted file mode 100644 index 5a80f4e0a..000000000 --- a/content/en/getting-started/glossary/variable.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: variable ---- - -A user-defined [identifier](g) prepended with a `$` symbol, representing a value of any data type, initialized or assigned within a [template action](g). For example, `$foo` and `$bar` are variables. diff --git a/content/en/getting-started/glossary/walk.md b/content/en/getting-started/glossary/walk.md deleted file mode 100644 index 811495187..000000000 --- a/content/en/getting-started/glossary/walk.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: walk ---- - -To recursively traverse a nested data structure. For example, rendering a multilevel menu. diff --git a/content/en/getting-started/glossary/weight.md b/content/en/getting-started/glossary/weight.md deleted file mode 100644 index 5c04e6ef7..000000000 --- a/content/en/getting-started/glossary/weight.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: weight ---- - -Used to position an element within a collection sorted by weight. Assign weights using non-zero integers. Lighter items float to the top, while heavier items sink to the bottom. Unweighted or zero-weighted elements are placed at the end of the collection. Weights are typically assigned to pages, menu entries, languages, and output formats. diff --git a/content/en/getting-started/glossary/weighted-page.md b/content/en/getting-started/glossary/weighted-page.md deleted file mode 100644 index 88ec816da..000000000 --- a/content/en/getting-started/glossary/weighted-page.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: weighted page ---- - -Contained within a [`Taxonomy`](g) object, a weighted page is a [map](g) with two elements: a `Page` object, and its [taxonomic weight](g) as defined in front matter. Access the elements using the `Page` and `Weight` keys. diff --git a/content/en/getting-started/usage.md b/content/en/getting-started/usage.md index 2e67ecb7e..3380b0ff2 100644 --- a/content/en/getting-started/usage.md +++ b/content/en/getting-started/usage.md @@ -65,7 +65,7 @@ Hugo allows you to set `draft`, `date`, `publishDate`, and `expiryDate` in the [ - The `publishDate` is in the future - The `expiryDate` is in the past -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} {{% note %}} Hugo publishes descendants of draft, future, and expired [node](g) pages. To prevent publication of these descendants, use the [`cascade`] front matter field to cascade [build options] to the descendant pages. diff --git a/content/en/hosting-and-deployment/_index.md b/content/en/hosting-and-deployment/_index.md index b6f54d3fa..a99ffd69c 100644 --- a/content/en/hosting-and-deployment/_index.md +++ b/content/en/hosting-and-deployment/_index.md @@ -1,7 +1,7 @@ --- title: Hosting and deployment -linkTitle: In this section -description: Site builds, automated deployments, and popular hosting solutions. + +description: Services and tools to host and deploy your site. categories: [] keywords: [] menu: @@ -9,7 +9,7 @@ menu: identifier: hosting-and-deployment-in-this-section parent: hosting-and-deployment weight: 1 -weight: 1 +weight: 10 --- Because Hugo renders *static* websites, you can host your new Hugo website virtually anywhere. The following represent only a few of the more popular hosting and automated deployment solutions used by the Hugo community. diff --git a/content/en/hosting-and-deployment/hosting-on-github/index.md b/content/en/hosting-and-deployment/hosting-on-github/index.md index 6c62fb29d..81d6a4c87 100644 --- a/content/en/hosting-and-deployment/hosting-on-github/index.md +++ b/content/en/hosting-and-deployment/hosting-on-github/index.md @@ -188,7 +188,7 @@ The example workflow above includes this step, which typically takes 10‑15 You may remove this step if your site, themes, and modules do not transpile Sass to CSS using the [Dart Sass] transpiler. -[Dart Sass]: /hugo-pipes/transpile-sass-to-css/#dart-sass +[Dart Sass]: /functions/css/sass/#dart-sass ## Other resources diff --git a/content/en/hosting-and-deployment/hosting-on-keycdn.md b/content/en/hosting-and-deployment/hosting-on-keycdn/index.md similarity index 90% rename from content/en/hosting-and-deployment/hosting-on-keycdn.md rename to content/en/hosting-and-deployment/hosting-on-keycdn/index.md index e81129981..3073c7172 100644 --- a/content/en/hosting-and-deployment/hosting-on-keycdn.md +++ b/content/en/hosting-and-deployment/hosting-on-keycdn/index.md @@ -20,7 +20,7 @@ menu: The first step will be to log in to your KeyCDN account and create a new zone. Name this whatever you like and select the [Pull Zone](https://www.keycdn.com/support/create-a-pull-zone/) option. As for the origin URL, your site will be running on [GitLab Pages](https://docs.gitlab.com/ee/user/project/pages/getting_started_part_one.html) with a URL of `https://youruser.gitlab.io/reponame/`. Use this as the Origin URL. -![Screenshot of KeyCDN's pull zone creation page](/images/hosting-and-deployment/hosting-on-keycdn/keycdn-pull-zone.png) +![Screenshot of KeyCDN's pull zone creation page](keycdn-pull-zone.png) While the origin location doesn’t exist yet, you will need to use your new Zone URL address (or [Zone Alias](https://www.keycdn.com/support/create-a-zone-alias/)) in the `.gitlab-ci.yml` file that will be uploaded to your GitLab project. @@ -64,17 +64,17 @@ Using this integration method, you will have to specify the Zone ID and your [K The Secret Variable for your Zone ID should look similar to: -![Screenshot of setting the Zone ID secret variable](/images/hosting-and-deployment/hosting-on-keycdn/secret-zone-id.png) +![Screenshot of setting the Zone ID secret variable](secret-zone-id.png) While the Secret Variable for your API Key will look similar to: -![Screenshot of setting the API Key secret variable](/images/hosting-and-deployment/hosting-on-keycdn/secret-api-key.png) +![Screenshot of setting the API Key secret variable](secret-api-key.png) The Zone ID and API key are used to purge your zone – it’s not strictly needed but otherwise, the CDN might deliver older versions of your assets for quite a while. ## Push your changes to GitLab -Now it’s time to push the newly created repository to GitLab: +Now it's time to push the newly created repository to GitLab: ```sh git remote add origin git@gitlab.com:youruser/ci-example.git diff --git a/static/images/hosting-and-deployment/hosting-on-keycdn/keycdn-pull-zone.png b/content/en/hosting-and-deployment/hosting-on-keycdn/keycdn-pull-zone.png similarity index 100% rename from static/images/hosting-and-deployment/hosting-on-keycdn/keycdn-pull-zone.png rename to content/en/hosting-and-deployment/hosting-on-keycdn/keycdn-pull-zone.png diff --git a/static/images/hosting-and-deployment/hosting-on-keycdn/secret-api-key.png b/content/en/hosting-and-deployment/hosting-on-keycdn/secret-api-key.png similarity index 100% rename from static/images/hosting-and-deployment/hosting-on-keycdn/secret-api-key.png rename to content/en/hosting-and-deployment/hosting-on-keycdn/secret-api-key.png diff --git a/static/images/hosting-and-deployment/hosting-on-keycdn/secret-zone-id.png b/content/en/hosting-and-deployment/hosting-on-keycdn/secret-zone-id.png similarity index 100% rename from static/images/hosting-and-deployment/hosting-on-keycdn/secret-zone-id.png rename to content/en/hosting-and-deployment/hosting-on-keycdn/secret-zone-id.png diff --git a/content/en/hugo-modules/_index.md b/content/en/hugo-modules/_index.md index 87ce33a6c..b6f38924f 100644 --- a/content/en/hugo-modules/_index.md +++ b/content/en/hugo-modules/_index.md @@ -1,7 +1,7 @@ --- title: Hugo Modules -linkTitle: In this section -description: How to use Hugo Modules. + +description: Use Hugo Modules to manage the content, presentation, and behavior of your site. categories: [] keywords: [] menu: diff --git a/content/en/hugo-modules/configuration.md b/content/en/hugo-modules/configuration.md index c6d8c3900..0bc1b47d8 100644 --- a/content/en/hugo-modules/configuration.md +++ b/content/en/hugo-modules/configuration.md @@ -75,7 +75,7 @@ max : (`string`) The maximum Hugo version supported, e.g. `0.55.0` extended -: (`bool`) Whether the extended version of Hugo is required. +: (`bool`) Whether the extended edition of Hugo is required, satisfied by installing either the extended or extended/deploy edition. ## Module configuration: imports @@ -154,21 +154,21 @@ target : (`string`) Where it should be mounted into Hugo's virtual filesystem. It must start with one of Hugo's component directories: `static`, `content`, `layouts`, `data`, `assets`, `i18n`, or `archetypes`. E.g. `content/blog`. disableWatch -{{< new-in 0.128.0 >}} +{{< new-in 0.128.0 />}} : (`bool`) Whether to disable watching in watch mode for this mount. Default is `false`. lang : (`string`) The language code, e.g. "en". Only relevant for `content` mounts, and `static` mounts when in multihost mode. includeFiles -: (`string` or `string slice`) One or more [glob](https://github.com/gobwas/glob) patterns matching files or directories to include. If `excludeFiles` is not set, the files matching `includeFiles` will be the files mounted. +: (`string` or `[]string`) One or more [glob](https://github.com/gobwas/glob) patterns matching files or directories to include. If `excludeFiles` is not set, the files matching `includeFiles` will be the files mounted. The glob patterns are matched to the file names starting from the `source` root, they should have Unix styled slashes even on Windows, `/` matches the mount root and `**` can be used as a super-asterisk to match recursively down all directories, e.g `/posts/**.jpg`. The search is case-insensitive. excludeFiles -: (`string` or `string slice`) One or more glob patterns matching files to exclude. +: (`string` or `[]string`) One or more glob patterns matching files to exclude. ### Example diff --git a/content/en/hugo-modules/use-modules.md b/content/en/hugo-modules/use-modules.md index 6af96c992..f29d4b198 100644 --- a/content/en/hugo-modules/use-modules.md +++ b/content/en/hugo-modules/use-modules.md @@ -148,7 +148,7 @@ use . use ../gohugoioTheme ``` -Using the `use` directive, list all the modules you want to work on, pointing to its relative location. As in the example above, it's recommended to always include the main project (the ".") in the list. +Using the `use` directive, list all the modules you want to work on, pointing to its relative location. As in the example above, it's recommended to always include the main project (the `.`) in the list. With that you can start the Hugo server with that workspace enabled: diff --git a/content/en/hugo-pipes/_index.md b/content/en/hugo-pipes/_index.md index 6e4190b87..5e2d1d416 100755 --- a/content/en/hugo-pipes/_index.md +++ b/content/en/hugo-pipes/_index.md @@ -1,6 +1,6 @@ --- title: Hugo Pipes -linkTitle: In this section +description: Use asset pipelines to transform and optimize images, stylesheets, and JavaScript. categories: [] keywords: [] menu: diff --git a/content/en/hugo-pipes/bundling.md b/content/en/hugo-pipes/bundling.md index 7fc9fc9df..1e0908737 100755 --- a/content/en/hugo-pipes/bundling.md +++ b/content/en/hugo-pipes/bundling.md @@ -9,18 +9,6 @@ menu: parent: hugo-pipes weight: 90 weight: 90 -action: - aliases: [] - returnType: resource.Resource - signatures: ['resources.Concat TARGETPATH [RESOURCE...]'] --- -## Usage - -Asset files of the same MIME type can be bundled into one resource using `resources.Concat` which takes two arguments, the target path for the created resource bundle and a slice of resource objects to be concatenated. - -```go-html-template -{{ $plugins := resources.Get "js/plugins.js" }} -{{ $global := resources.Get "js/global.js" }} -{{ $js := slice $plugins $global | resources.Concat "js/bundle.js" }} -``` +See the [`resources.Concat`](/functions/resources/concat/) function. diff --git a/content/en/hugo-pipes/fingerprint.md b/content/en/hugo-pipes/fingerprint.md index 68e41acd1..78fb18081 100755 --- a/content/en/hugo-pipes/fingerprint.md +++ b/content/en/hugo-pipes/fingerprint.md @@ -1,7 +1,7 @@ --- title: Fingerprint linkTitle: Fingerprinting and SRI hashing -description: Process a given resource, adding a hash string of the resource's content. +description: Cryptographically hash the content of the given resource. categories: [asset management] keywords: [] menu: @@ -9,22 +9,6 @@ menu: parent: hugo-pipes weight: 100 weight: 100 -action: - aliases: [fingerprint] - returnType: resource.Resource - signatures: ['resources.Fingerprint [ALGORITHM] RESOURCE'] --- -## Usage - -Fingerprinting and [SRI](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity) can be applied to any asset file using `resources.Fingerprint` which takes two arguments, the resource object and an optional [hash algorithm](https://en.wikipedia.org/wiki/Secure_Hash_Algorithms). - -The default hash algorithm is `sha256`. Other available algorithms are `sha384` and (as of Hugo `0.55`) `sha512` and `md5`. - -Any so processed asset will bear a `.Data.Integrity` property containing an integrity string, which is made up of the name of the hash algorithm, one hyphen and the base64-encoded hash sum. - -```go-html-template -{{ $js := resources.Get "js/global.js" }} -{{ $secureJS := $js | resources.Fingerprint "sha512" }} - -``` +See the [`resources.Fingerprint`](/functions/resources/fingerprint/) function. diff --git a/content/en/hugo-pipes/minification.md b/content/en/hugo-pipes/minification.md index a5d4724f9..3943d87d0 100755 --- a/content/en/hugo-pipes/minification.md +++ b/content/en/hugo-pipes/minification.md @@ -1,7 +1,7 @@ --- title: Minify linkTitle: Asset minification -description: Minifies a given resource. +description: Minify a given resource. categories: [asset management] keywords: [] menu: @@ -9,19 +9,6 @@ menu: parent: hugo-pipes weight: 80 weight: 80 -action: - aliases: [minify] - returnType: resource.Resource - signatures: [resources.Minify RESOURCE] --- -## Usage - -Any CSS, JS, JSON, HTML, SVG, or XML resource can be minified using `resources.Minify` which takes for argument the resource object. - -```go-html-template -{{ $css := resources.Get "css/main.css" }} -{{ $style := $css | resources.Minify }} -``` - -Note that you can also minify the final HTML output to `/public` by running `hugo --minify`. +See the [`resources.Minify`](/functions/resources/minify/) function. diff --git a/content/en/hugo-pipes/postcss.md b/content/en/hugo-pipes/postcss.md index 8ca983f7e..72a091c8f 100755 --- a/content/en/hugo-pipes/postcss.md +++ b/content/en/hugo-pipes/postcss.md @@ -1,6 +1,6 @@ --- title: PostCSS -description: Process CSS files with PostCSS, using any of the available plugins. +description: Process the given resource with PostCSS using any PostCSS plugin. categories: [asset management] keywords: [] menu: @@ -8,124 +8,6 @@ menu: parent: hugo-pipes weight: 40 weight: 40 -toc: true -action: - aliases: [postCSS] - returnType: resource.Resource - signatures: ['css.PostCSS [OPTIONS] RESOURCE'] --- -## Setup - -Follow the steps below to transform CSS using any of the [available PostCSS plugins](https://www.postcss.parts/). - -Step 1 -: Install [Node.js](https://nodejs.org/en/download). - -Step 2 -: Install the required Node.js packages in the root of your project. For example, to add vendor prefixes to CSS rules: - -```sh -npm i -D postcss postcss-cli autoprefixer -``` - -Step 3 -: Create a PostCSS configuration file in the root of your project. You must name this file `postcss.config.js` or one of the other [supported file names]. For example: - -[supported file names]: https://github.com/postcss/postcss-load-config#usage - -{{< code file=postcss.config.js >}} -module.exports = { - plugins: [ - require('autoprefixer') - ] -}; -{{< /code >}} - -{{% note %}} -If you are a Windows user, and the path to your project contains a space, you must place the PostCSS configuration within the package.json file. See [this example](https://github.com/postcss/postcss-load-config#packagejson) and issue [#7333](https://github.com/gohugoio/hugo/issues/7333). -{{% /note %}} - -Step 4 -: Place your CSS file within the `assets` directory. - -Step 5 -: Capture the CSS file as a resource and pipe it through `css.PostCSS` (alias `postCSS`): - -{{< code file=layouts/partials/css.html >}} -{{ with resources.Get "css/main.css" | postCSS }} - -{{ end }} -{{< /code >}} - -If starting with a Sass file within the `assets` directory: - -{{< code file=layouts/partials/css.html >}} -{{ with resources.Get "sass/main.scss" | toCSS | postCSS }} - -{{ end }} -{{< /code >}} - -## Options - -The `css.PostCSS` method takes an optional map of options. - -config -: (`string`) The directory that contains the PostCSS configuration file. Default is the root of the project directory. - -noMap -: (`bool`) Default is `false`. If `true`, disables inline sourcemaps. - -inlineImports -: (`bool`) Default is `false`. Enable inlining of @import statements. It does so recursively, but will only import a file once. -URL imports (e.g. `@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');`) and imports with media queries will be ignored. -Note that this import routine does not care about the CSS spec, so you can have @import anywhere in the file. -Hugo will look for imports relative to the module mount and will respect theme overrides. - -skipInlineImportsNotFound -: (`bool`) Default is `false`. If you have regular CSS imports in your CSS that you want to preserve, you can either use imports with URL or media queries (Hugo does not try to resolve those) or set `skipInlineImportsNotFound` to true. - -{{< code file=layouts/partials/css.html >}} -{{ $opts := dict "config" "config-directory" "noMap" true }} -{{ with resources.Get "css/main.css" | postCSS $opts }} - -{{ end }} -{{< /code >}} - -## No configuration file - -To avoid using a PostCSS configuration file, you can specify a minimal configuration using the options map. - -use -: (`string`) A space-delimited list of PostCSS plugins to use. - -parser -: (`string`) A custom PostCSS parser. - -stringifier -: (`string`) A custom PostCSS stringifier. - -syntax -: (`string`) Custom postcss syntax. - -{{< code file=layouts/partials/css.html >}} -{{ $opts := dict "use" "autoprefixer postcss-color-alpha" }} -{{ with resources.Get "css/main.css" | postCSS $opts }} - -{{ end }} -{{< /code >}} - -## Check Hugo environment - -The current Hugo environment name (set by `--environment` or in configuration or OS environment) is available in the Node context, which allows constructs like this: - -{{< code file=postcss.config.js >}} -module.exports = { - plugins: [ - require('autoprefixer'), - ...process.env.HUGO_ENVIRONMENT === 'production' - ? [purgecss] - : [] - ] -} -{{< /code >}} +See the [`css.PostCSS`](/functions/css/postcss/) function. diff --git a/content/en/hugo-pipes/postprocess.md b/content/en/hugo-pipes/postprocess.md index 5a0a5797e..e916dfc4d 100755 --- a/content/en/hugo-pipes/postprocess.md +++ b/content/en/hugo-pipes/postprocess.md @@ -1,6 +1,6 @@ --- title: PostProcess -description: Allows delaying of resource transformations to after the build. +description: Process the given resource after the build. categories: [asset management] keywords: [] menu: @@ -8,97 +8,6 @@ menu: parent: hugo-pipes weight: 50 weight: 50 -action: - aliases: [] - returnType: postpub.PostPublishedResource - signatures: [resources.PostProcess RESOURCE] --- -## Usage - -Marking a resource with `resources.PostProcess` delays any transformations to after the build, typically because one or more of the steps in the transformation chain depends on the result of the build (e.g. files in `public`). - -A prime use case for this is [CSS purging with PostCSS](#css-purging-with-postcss). - -There are currently two limitations to this: - -1. This only works in `*.html` templates (i.e. templates that produces HTML files). -1. You cannot manipulate the values returned from the resource's methods. E.g. the `upper` in this example will not work as expected: - - ```go-html-template - {{ $css := resources.Get "css/main.css" }} - {{ $css = $css | css.PostCSS | minify | fingerprint | resources.PostProcess }} - {{ $css.RelPermalink | upper }} - ``` - -## CSS purging with PostCSS - -{{% note %}} -There are several ways to set up CSS purging with PostCSS in Hugo. If you have a simple project, you should consider going the simpler route and drop the use of `resources.PostProcess` and just extract keywords from the templates. See the [Tailwind documentation](https://tailwindcss.com/docs/controlling-file-size/#app) for some examples. -{{% /note %}} - -The below configuration will write a `hugo_stats.json` file to the project root as part of the build. If you're only using this for the production build, you should consider placing it below [`config/production`](/getting-started/configuration/#configuration-directory). - -{{< code-toggle file=hugo >}} -[build.buildStats] - enable = true -{{< /code-toggle >}} - -See the [configure build] documentation for details and options. - -[configure build]: /getting-started/configuration/#configure-build - -`postcss.config.js` - -```js -const purgecss = require('@fullhuman/postcss-purgecss')({ - content: [ './hugo_stats.json' ], - defaultExtractor: (content) => { - let els = JSON.parse(content).htmlElements; - return els.tags.concat(els.classes, els.ids); - } -}); - -module.exports = { - plugins: [ - ...(process.env.HUGO_ENVIRONMENT === 'production' ? [ purgecss ] : []) - ] - }; -``` - -Note that in the example above, the "CSS purge step" will only be applied to the production build. This means that you need to do something like this in your head template to build and include your CSS: - -```go-html-template -{{ $css := resources.Get "css/main.css" }} -{{ $css = $css | css.PostCSS }} -{{ if hugo.IsProduction }} -{{ $css = $css | minify | fingerprint | resources.PostProcess }} -{{ end }} - -``` - -## Hugo environment variables available in PostCSS - -These are the environment variables Hugo passes down to PostCSS (and Babel), which allows you do do `process.env.HUGO_ENVIRONMENT === 'production' ? [autoprefixer] : []` and similar: - -PWD -: The absolute path to the project working directory. - -HUGO_ENVIRONMENT -: The value e.g. set with `hugo -e production` (defaults to `production` for `hugo` and `development` for `hugo server`). - -HUGO_PUBLISHDIR -: The absolute path to the publish directory (the `public` directory). Note that the value will always point to a directory on disk even when running `hugo server` in memory mode. If you write to this directory from PostCSS when running the server, you could run the server with one of these flags: - -```sh -hugo server --renderToDisk -hugo server --renderStaticToDisk -``` - -Also, Hugo will add environment variables for all files mounted below `assets/_jsconfig`. A default mount will be set up with files in the project root matching this regexp: `(babel|postcss|tailwind)\.config\.js`. - -These will get environment variables named on the form `HUGO_FILE_:filename:` where `:filename:` is all upper case with periods replaced with underscore. This allows you to do this and similar: - -```js -let tailwindConfig = process.env.HUGO_FILE_TAILWIND_CONFIG_JS || './tailwind.config.js'; -``` +See the [`resources.PostProcess`](/functions/resources/postprocess/) function. diff --git a/content/en/hugo-pipes/resource-from-string.md b/content/en/hugo-pipes/resource-from-string.md index 53bcfff74..9c943591c 100755 --- a/content/en/hugo-pipes/resource-from-string.md +++ b/content/en/hugo-pipes/resource-from-string.md @@ -1,7 +1,7 @@ --- title: FromString linkTitle: Resource from string -description: Creates a resource from a string. +description: Create a resource from a string. categories: [asset management] keywords: [] menu: @@ -9,26 +9,6 @@ menu: parent: hugo-pipes weight: 110 weight: 110 -action: - aliases: [] - returnType: resource.Resource - signatures: [resources.FromString TARGETPATH STRING] --- -## Usage - -It is possible to create a resource directly from the template using `resources.FromString` which takes two arguments, the target path for the created resource and the given content string. - -The result is cached using the target path as the cache key. - -The following example creates a resource file containing localized variables for every project's languages. - -```go-html-template -{{ $string := (printf "var rootURL = '%s'; var apiURL = '%s';" (absURL "/") (.Param "API_URL")) }} -{{ $targetPath := "js/vars.js" }} -{{ $vars := $string | resources.FromString $targetPath }} -{{ $global := resources.Get "js/global.js" | resources.Minify }} - - - -``` +See the [`resources.FromString`](/functions/resources/fromstring/) function. diff --git a/content/en/hugo-pipes/resource-from-template.md b/content/en/hugo-pipes/resource-from-template.md index 0c81f0c00..76303822d 100755 --- a/content/en/hugo-pipes/resource-from-template.md +++ b/content/en/hugo-pipes/resource-from-template.md @@ -1,7 +1,7 @@ --- title: ExecuteAsTemplate linkTitle: Resource from template -description: Creates a resource from a template +description: Create a resource from a Go template, parsed and executed with the given context. categories: [asset management] keywords: [] menu: @@ -9,30 +9,6 @@ menu: parent: hugo-pipes weight: 120 weight: 120 -action: - aliases: [] - returnType: resource.Resource - signatures: [resources.ExecuteAsTemplate TARGETPATH CONTEXT RESOURCE] --- -## Usage - -In order to use Hugo Pipes function on an asset file containing Go Template magic the function `resources.ExecuteAsTemplate` must be used. - -The function takes three arguments: the target path for the created resource, the template context, and the resource object. The target path is used to cache the result. - -```go-html-template -// assets/sass/template.scss -$backgroundColor: {{ .Param "backgroundColor" }}; -$textColor: {{ .Param "textColor" }}; -body{ - background-color:$backgroundColor; - color: $textColor; -} -// [...] -``` - -```go-html-template -{{ $sassTemplate := resources.Get "sass/template.scss" }} -{{ $style := $sassTemplate | resources.ExecuteAsTemplate "main.scss" . | css.Sass }} -``` +See the [`resources.ExecuteAsTemplate`](/functions/resources/executeastemplate/) function. diff --git a/content/en/hugo-pipes/transpile-sass-to-css.md b/content/en/hugo-pipes/transpile-sass-to-css.md index a7f790c8a..918687b17 100644 --- a/content/en/hugo-pipes/transpile-sass-to-css.md +++ b/content/en/hugo-pipes/transpile-sass-to-css.md @@ -7,208 +7,9 @@ keywords: [] menu: docs: parent: hugo-pipes - returnType: resource.Resource weight: 30 weight: 30 -action: - aliases: [toCSS] - returnType: resource.Resource - signatures: ['css.Sass [OPTIONS] RESOURCE'] -toc: true aliases: [/hugo-pipes/transform-to-css/] --- -## Usage - -Transpile Sass to CSS using the LibSass transpiler included in Hugo's extended and extended/deploy editions, or [install Dart Sass](#dart-sass) to use the latest features of the Sass language. - -```go-html-template -{{ $opts := dict "transpiler" "libsass" "targetPath" "css/style.css" }} -{{ with resources.Get "sass/main.scss" | toCSS $opts | minify | fingerprint }} - -{{ end }} -``` - -Sass has two forms of syntax: [SCSS] and [indented]. Hugo supports both. - -[scss]: https://sass-lang.com/documentation/syntax#scss -[indented]: https://sass-lang.com/documentation/syntax#the-indented-syntax - -## Options - -transpiler -: (`string`) The transpiler to use, either `libsass` (default) or `dartsass`. Hugo's extended and extended/deploy editions include the LibSass transpiler. To use the Dart Sass transpiler, see the [installation instructions](#dart-sass) below. - -targetPath -: (`string`) If not set, the transformed resource's target path will be the original path of the asset file with its extension replaced by `.css`. - -vars -: (`map`) A map of key-value pairs that will be available in the `hugo:vars` namespace. Useful for [initializing Sass variables from Hugo templates](https://discourse.gohugo.io/t/42053/). - -```scss -// LibSass -@import "hugo:vars"; - -// Dart Sass -@use "hugo:vars" as v; -``` - -outputStyle -: (`string`) Output styles available to LibSass include `nested` (default), `expanded`, `compact`, and `compressed`. Output styles available to Dart Sass include `expanded` (default) and `compressed`. - -precision -: (`int`) Precision of floating point math. Not applicable to Dart Sass. - -enableSourceMap -: (`bool`) If `true`, generates a source map. - -sourceMapIncludeSources -: (`bool`) If `true`, embeds sources in the generated source map. Not applicable to LibSass. - -includePaths -: (`slice`) A slice of paths, relative to the project root, that the transpiler will use when resolving `@use` and `@import` statements. - -```go-html-template -{{ $opts := dict - "transpiler" "dartsass" - "targetPath" "css/style.css" - "vars" site.Params.styles - "enableSourceMap" (not hugo.IsProduction) - "includePaths" (slice "node_modules/bootstrap/scss") -}} -{{ with resources.Get "sass/main.scss" | toCSS $opts | minify | fingerprint }} - -{{ end }} -``` - -## Dart Sass - -The extended version of Hugo includes [LibSass] to transpile Sass to CSS. In 2020, the Sass team deprecated LibSass in favor of [Dart Sass]. - -Use the latest features of the Sass language by installing Dart Sass in your development and production environments. - -### Installation overview - -Dart Sass is compatible with Hugo v0.114.0 and later. - -If you have been using Embedded Dart Sass[^1] with Hugo v0.113.0 and earlier, uninstall Embedded Dart Sass, then install Dart Sass. If you have installed both, Hugo will use Dart Sass. - -If you install Hugo as a [Snap package] there is no need to install Dart Sass. The Hugo Snap package includes Dart Sass. - -[^1]: In 2023, the Sass team deprecated Embedded Dart Sass in favor of Dart Sass. - -### Installing in a development environment - -When you install Dart Sass somewhere in your PATH, Hugo will find it. - -OS|Package manager|Site|Installation -:--|:--|:--|:-- -Linux|Homebrew|[brew.sh]|`brew install sass/sass/sass` -Linux|Snap|[snapcraft.io]|`sudo snap install dart-sass` -macOS|Homebrew|[brew.sh]|`brew install sass/sass/sass` -Windows|Chocolatey|[chocolatey.org]|`choco install sass` -Windows|Scoop|[scoop.sh]|`scoop install sass` - -You may also install [prebuilt binaries] for Linux, macOS, and Windows. - -Run `hugo env` to list the active transpilers. - -### Installing in a production environment - -For [CI/CD] deployments (e.g., GitHub Pages, GitLab Pages, Netlify, etc.) you must edit the workflow to install Dart Sass before Hugo builds the site[^2]. Some providers allow you to use one of the package managers above, or you can download and extract one of the prebuilt binaries. - -[^2]: You do not have to do this if (a) you have not modified the assets cache location, and (b) you have not set `useResourceCacheWhen` to `never` in your [site configuration], and (c) you add and commit your `resources` directory to your repository. - -#### GitHub Pages - -To install Dart Sass for your builds on GitHub Pages, add this step to the GitHub Pages workflow file: - -```yaml -- name: Install Dart Sass - run: sudo snap install dart-sass -``` - -If you are using GitHub Pages for the first time with your repository, GitHub provides a [starter workflow] for Hugo that includes Dart Sass. This is the simplest way to get started. - -#### GitLab Pages - -To install Dart Sass for your builds on GitLab Pages, the `.gitlab-ci.yml` file should look something like this: - -```yaml -variables: - HUGO_VERSION: 0.141.0 - DART_SASS_VERSION: 1.83.4 - GIT_DEPTH: 0 - GIT_STRATEGY: clone - GIT_SUBMODULE_STRATEGY: recursive - TZ: America/Los_Angeles -image: - name: golang:1.20-buster -pages: - script: - # Install Dart Sass - - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - tar -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz - - cp -r dart-sass/* /usr/local/bin - - rm -rf dart-sass* - # Install Hugo - - curl -LJO https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_linux-amd64.deb - - apt install -y ./hugo_extended_${HUGO_VERSION}_linux-amd64.deb - - rm hugo_extended_${HUGO_VERSION}_linux-amd64.deb - # Build - - hugo --gc --minify - artifacts: - paths: - - public - rules: - - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH -``` - -#### Netlify - -To install Dart Sass for your builds on Netlify, the `netlify.toml` file should look something like this: - -```toml -[build.environment] -HUGO_VERSION = "0.141.0" -DART_SASS_VERSION = "1.83.4" -NODE_VERSION = "22" -TZ = "America/Los_Angeles" - -[build] -publish = "public" -command = """\ - curl -LJO https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - tar -xf dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - rm dart-sass-${DART_SASS_VERSION}-linux-x64.tar.gz && \ - export PATH=/opt/build/repo/dart-sass:$PATH && \ - hugo --gc --minify \ - """ -``` - -### Example - -To transpile with Dart Sass, set `transpiler` to `dartsass` in the options map passed to `css.Sass`. For example: - -```go-html-template -{{ $opts := dict "transpiler" "dartsass" "targetPath" "css/style.css" }} -{{ with resources.Get "sass/main.scss" | toCSS $opts | minify | fingerprint }} - -{{ end }} -``` - -### Miscellaneous - -If you build Hugo from source and run `mage test -v`, the test will fail if you install Dart Sass as a Snap package. This is due to the Snap package's strict confinement model. - -[brew.sh]: https://brew.sh/ -[chocolatey.org]: https://community.chocolatey.org/packages/sass -[ci/cd]: https://en.wikipedia.org/wiki/CI/CD -[dart sass]: https://sass-lang.com/dart-sass -[libsass]: https://sass-lang.com/libsass -[prebuilt binaries]: https://github.com/sass/dart-sass/releases/latest -[scoop.sh]: https://scoop.sh/#/apps?q=sass -[site configuration]: /getting-started/configuration/#configure-build -[snap package]: /installation/linux/#snap -[snapcraft.io]: https://snapcraft.io/dart-sass -[starter workflow]: https://github.com/actions/starter-workflows/blob/main/pages/hugo.yml +See the [`css.Sass`](/functions/css/sass) function. diff --git a/content/en/installation/_common/01-editions.md b/content/en/installation/_common/01-editions.md index b6fc23c74..11e7e9080 100644 --- a/content/en/installation/_common/01-editions.md +++ b/content/en/installation/_common/01-editions.md @@ -8,9 +8,9 @@ Feature|extended edition|extended/deploy edition :--|:-:|:-: Encode to the WebP format when [processing images]. You can decode WebP images with any edition.|:heavy_check_mark:|:heavy_check_mark: [Transpile Sass to CSS] using the embedded LibSass transpiler. You can use the [Dart Sass] transpiler with any edition.|:heavy_check_mark:|:heavy_check_mark: -Deploy your site directly to a Google Cloud Storage bucket, an AWS S3 bucket, or an Azure Storage container. See [details].|:x:|:heavy_check_mark: +Deploy your site directly to a Google Cloud Storage bucket, an AWS S3 bucket, or an Azure Storage container. See [details].|:x:|:heavy_check_mark: -[dart sass]: /hugo-pipes/transpile-sass-to-css/#dart-sass +[dart sass]: /functions/css/sass/#dart-sass [processing images]: /content-management/image-processing/ -[transpile sass to css]: /hugo-pipes/transpile-sass-to-css/ +[transpile sass to css]: /functions/css/sass/ [details]: /hosting-and-deployment/hugo-deploy/ diff --git a/content/en/installation/_common/02-prerequisites.md b/content/en/installation/_common/02-prerequisites.md index 65ec2a12f..f27d9d56b 100644 --- a/content/en/installation/_common/02-prerequisites.md +++ b/content/en/installation/_common/02-prerequisites.md @@ -29,7 +29,7 @@ Please refer to the relevant documentation for installation instructions: [cloudcannon]: https://cloudcannon.com/ [cloudflare pages]: https://pages.cloudflare.com/ -[dart sass install]: /hugo-pipes/transpile-sass-to-css/#dart-sass +[dart sass install]: /functions/css/sass/#dart-sass [dart sass]: https://sass-lang.com/dart-sass [git install]: https://git-scm.com/book/en/v2/Getting-Started-Installing-Git [git]: https://git-scm.com/ diff --git a/content/en/installation/_index.md b/content/en/installation/_index.md index 7e445a07d..69b3e197e 100644 --- a/content/en/installation/_index.md +++ b/content/en/installation/_index.md @@ -1,6 +1,6 @@ --- title: Installation -linkTitle: In this section + description: Install Hugo on macOS, Linux, Windows, BSD, and on any machine that can run the Go compiler tool chain. aliases: [/getting-started/installing/] categories: [] diff --git a/content/en/installation/windows.md b/content/en/installation/windows.md index e04268cd2..e66878d70 100644 --- a/content/en/installation/windows.md +++ b/content/en/installation/windows.md @@ -55,6 +55,12 @@ scoop install hugo-extended winget install Hugo.Hugo.Extended ``` +To uninstall the extended edition of Hugo: + +```sh +winget uninstall --name "Hugo (Extended)" +``` + [Winget]: https://learn.microsoft.com/en-us/windows/package-manager/ {{% include "installation/_common/04-build-from-source.md" %}} diff --git a/content/en/maintenance/_index.md b/content/en/maintenance/_index.md deleted file mode 100644 index aaee3987d..000000000 --- a/content/en/maintenance/_index.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: Maintenance -description: Some lists useful for the maintenance of the Hugo docs site. -categories: [] -keywords: [] -menu: - docs: - weight: 200 -toc: true ---- diff --git a/content/en/methods/_index.md b/content/en/methods/_index.md index bab637ddb..e45f2fef7 100644 --- a/content/en/methods/_index.md +++ b/content/en/methods/_index.md @@ -1,7 +1,7 @@ --- title: Methods -linkTitle: In this section -description: A list of Hugo template methods including examples. + +description: Use these methods within your templates. categories: [] keywords: [] menu: diff --git a/content/en/methods/page/Ancestors.md b/content/en/methods/page/Ancestors.md index da5cf2ca3..4fb00fc06 100644 --- a/content/en/methods/page/Ancestors.md +++ b/content/en/methods/page/Ancestors.md @@ -16,7 +16,7 @@ action: signatures: [PAGE.Ancestors] --- -{{% include "methods/page/_common/definition-of-section.md" %}} +{{% glossary-term section %}} With this content structure: diff --git a/content/en/methods/page/ContentWithoutSummary.md b/content/en/methods/page/ContentWithoutSummary.md index 44d660cef..527f5d962 100644 --- a/content/en/methods/page/ContentWithoutSummary.md +++ b/content/en/methods/page/ContentWithoutSummary.md @@ -15,7 +15,7 @@ action: signatures: [PAGE.ContentWithoutSummary] --- -{{< new-in 0.134.0 >}} +{{< new-in 0.134.0 />}} Applicable when using manual or automatic [content summaries], the `ContentWithoutSummary` method on a `Page` object renders Markdown and shortcodes to HTML, excluding the content summary from the result. diff --git a/content/en/methods/page/CurrentSection.md b/content/en/methods/page/CurrentSection.md index 17ec652c1..1684ee483 100644 --- a/content/en/methods/page/CurrentSection.md +++ b/content/en/methods/page/CurrentSection.md @@ -16,7 +16,7 @@ action: signatures: [PAGE.CurrentSection] --- -{{% include "methods/page/_common/definition-of-section.md" %}} +{{% glossary-term section %}} {{% note %}} The current section of a [section page](g), [taxonomy page](g), [term page](g), or the home page, is itself. diff --git a/content/en/methods/page/File.md b/content/en/methods/page/File.md index a5b30ddb0..359c1ad2e 100644 --- a/content/en/methods/page/File.md +++ b/content/en/methods/page/File.md @@ -12,7 +12,7 @@ toc: true By default, not all pages are backed by a file, including top level [section pages](g), [taxonomy pages](g), and [term pages](g). By definition, you cannot retrieve file information when the file does not exist. -To back one of the pages above with a file, create an `_index.md` file in the corresponding directory. For example: +To back one of the pages above with a file, create an `_index.md` file in the corresponding directory. For example: ```text content/ @@ -84,7 +84,7 @@ The path separators (slash or backslash) in `Path`, `Dir`, and `Filename` depend ###### IsContentAdapter -{{< new-in 0.126.0 >}} +{{< new-in 0.126.0 />}} (`bool`) Reports whether the file is a [content adapter]. diff --git a/content/en/methods/page/FirstSection.md b/content/en/methods/page/FirstSection.md index b3ae4c04a..29fbdc841 100644 --- a/content/en/methods/page/FirstSection.md +++ b/content/en/methods/page/FirstSection.md @@ -16,7 +16,7 @@ action: signatures: [PAGE.FirstSection] --- -{{% include "methods/page/_common/definition-of-section.md" %}} +{{% glossary-term section %}} {{% note %}} When called on the home page, the `FirstSection` method returns the `Page` object of the home page itself. diff --git a/content/en/methods/page/InSection.md b/content/en/methods/page/InSection.md index 75ceb2239..904f6ce75 100644 --- a/content/en/methods/page/InSection.md +++ b/content/en/methods/page/InSection.md @@ -19,7 +19,7 @@ toc: true The `InSection` method on a `Page` object reports whether the given page is in the given section. Note that the method returns `true` when comparing a page to a sibling. -{{% include "methods/page/_common/definition-of-section.md" %}} +{{% glossary-term section %}} With this content structure: diff --git a/content/en/methods/page/IsAncestor.md b/content/en/methods/page/IsAncestor.md index 17764fbe7..2613a2875 100644 --- a/content/en/methods/page/IsAncestor.md +++ b/content/en/methods/page/IsAncestor.md @@ -17,7 +17,7 @@ action: toc: true --- -{{% include "methods/page/_common/definition-of-section.md" %}} +{{% glossary-term section %}} With this content structure: diff --git a/content/en/methods/page/IsDescendant.md b/content/en/methods/page/IsDescendant.md index f2fc7e339..4ef7c6598 100644 --- a/content/en/methods/page/IsDescendant.md +++ b/content/en/methods/page/IsDescendant.md @@ -16,7 +16,7 @@ action: signatures: [PAGE1.IsDescendant PAGE2] --- -{{% include "methods/page/_common/definition-of-section.md" %}} +{{% glossary-term section %}} With this content structure: diff --git a/content/en/methods/page/Pages.md b/content/en/methods/page/Pages.md index c376bc3b5..8efcde287 100644 --- a/content/en/methods/page/Pages.md +++ b/content/en/methods/page/Pages.md @@ -70,7 +70,7 @@ When rendering lesson-2, the `Pages` method returns: lessons/lesson-2/resources/task-list.md lessons/lesson-2/resources/worksheet.md -In the last example, the collection includes pages in the resources subdirectory. That directory is not a [section](g)---it does not contain an `_index.md` file. Its contents are part of the lesson-2 section. +In the last example, the collection includes pages in the resources subdirectory. That directory is not a [section](g)---it does not contain an `_index.md` file. Its contents are part of the lesson-2 section. {{% note %}} When used with a `Site` object, the `Pages` method recursively returns all pages within the site. See [details]. diff --git a/content/en/methods/page/Parent.md b/content/en/methods/page/Parent.md index db01eb589..4c182f8e1 100644 --- a/content/en/methods/page/Parent.md +++ b/content/en/methods/page/Parent.md @@ -16,7 +16,7 @@ action: signatures: [PAGE.Parent] --- -{{% include "methods/page/_common/definition-of-section.md" %}} +{{% glossary-term section %}} {{% note %}} The parent section of a regular page is the [current section]. diff --git a/content/en/methods/page/Path.md b/content/en/methods/page/Path.md index 657410112..83ad01b94 100644 --- a/content/en/methods/page/Path.md +++ b/content/en/methods/page/Path.md @@ -12,7 +12,7 @@ action: toc: true --- -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} The `Path` method on a `Page` object returns the [logical path](g) of the given page, regardless of whether the page is backed by a file. diff --git a/content/en/methods/page/RegularPages.md b/content/en/methods/page/RegularPages.md index 29a66b48f..08198fca4 100644 --- a/content/en/methods/page/RegularPages.md +++ b/content/en/methods/page/RegularPages.md @@ -67,7 +67,7 @@ When rendering lesson-2, the `RegularPages` method returns: lessons/lesson-2/resources/task-list.md lessons/lesson-2/resources/worksheet.md -In the last example, the collection includes pages in the resources subdirectory. That directory is not a [section](g)---it does not contain an _index.md file. Its contents are part of the lesson-2 section. +In the last example, the collection includes pages in the resources subdirectory. That directory is not a [section](g)---it does not contain an `_index.md` file. Its contents are part of the lesson-2 section. {{% note %}} When used with the `Site` object, the `RegularPages` method recursively returns all regular pages within the site. See [details]. diff --git a/content/en/methods/page/RenderShortcodes.md b/content/en/methods/page/RenderShortcodes.md index 319edea69..3346f0ba1 100644 --- a/content/en/methods/page/RenderShortcodes.md +++ b/content/en/methods/page/RenderShortcodes.md @@ -17,7 +17,7 @@ action: toc: true --- -{{< new-in 0.117.0 >}} +{{< new-in 0.117.0 />}} Use this method in shortcode templates to compose a page from multiple content files, while preserving a global context for footnotes and the table of contents. diff --git a/content/en/methods/page/Resources.md b/content/en/methods/page/Resources.md index 2495ca8df..6c79f58ee 100644 --- a/content/en/methods/page/Resources.md +++ b/content/en/methods/page/Resources.md @@ -71,7 +71,7 @@ When working with global resources instead of page resources, use the [`resource ###### Mount -{{< new-in "0.140.0" >}} +{{< new-in 0.140.0 />}} (`ResourceGetter`) Mounts the given resources from the two arguments base (`string`) to the given target path (`string`) and returns an object that implements [Get](#get). Note that leading slashes in target marks an absolute path. Relative target paths allows you to mount resources relative to another set, e.g. a [Page bundle](/content-management/page-bundles/): diff --git a/content/en/methods/page/Scratch.md b/content/en/methods/page/Scratch.md index 13cd3dff8..436005a94 100644 --- a/content/en/methods/page/Scratch.md +++ b/content/en/methods/page/Scratch.md @@ -1,17 +1,13 @@ --- title: Scratch -description: Returns a "scratch pad" on the given page to store and manipulate data. +description: Returns a "scratch pad" to store and manipulate data, scoped to the current page. categories: [] keywords: [] action: - related: - - methods/page/Store - - functions/collections/NewScratch + related: [] returnType: maps.Scratch signatures: [PAGE.Scratch] -toc: true -aliases: [/extras/scratch/,/doc/scratch/,/functions/scratch] -expiryDate: 2025-11-18 # deprecated 2024-11-18 +expiryDate: 2026-11-18 # deprecated 2024-11-18 (soft) --- {{% deprecated-in 0.138.0 %}} @@ -23,30 +19,3 @@ Beginning with v0.138.0 the `PAGE.Scratch` method is aliased to `PAGE.Store`. [`PAGE.Store`]: /methods/page/store/ {{% /deprecated-in %}} - -The `Scratch` method on a `Page` object creates a [scratch pad](g) to store and manipulate data. To create a scratch pad that is not reset on server rebuilds, use the [`Store`] method instead. - -To create a locally scoped scratch pad that is not attached to a `Page` object, use the [`newScratch`] function. - -[`Store`]: /methods/page/store/ -[`newScratch`]: /functions/collections/newscratch/ - -{{% include "methods/page/_common/scratch-methods.md" %}} - -## Determinate values - -The `Scratch` method is often used to set scratch pad values within a shortcode, a partial template called by a shortcode, or by a Markdown render hook. In all three cases, the scratch pad values are indeterminate until Hugo renders the page content. - -If you need to access a scratch pad value from a parent template, and the parent template has not yet rendered the page content, you can trigger content rendering by assigning the returned value to a [noop](g) variable: - -```go-html-template -{{ $noop := .Content }} -{{ .Store.Get "mykey" }} -``` - -You can also trigger content rendering with the `ContentWithoutSummary`, `FuzzyWordCount`, `Len`, `Plain`, `PlainWords`, `ReadingTime`, `Summary`, `Truncated`, and `WordCount` methods. For example: - -```go-html-template -{{ $noop := .WordCount }} -{{ .Store.Get "mykey" }} -``` diff --git a/content/en/methods/page/Sections.md b/content/en/methods/page/Sections.md index 4cce1a4fb..921e4eb4e 100644 --- a/content/en/methods/page/Sections.md +++ b/content/en/methods/page/Sections.md @@ -16,7 +16,7 @@ action: signatures: [PAGE.Sections] --- -{{% include "methods/page/_common/definition-of-section.md" %}} +{{% glossary-term section %}} With this content structure: diff --git a/content/en/methods/page/Sitemap.md b/content/en/methods/page/Sitemap.md index 3277520fb..065c07c35 100644 --- a/content/en/methods/page/Sitemap.md +++ b/content/en/methods/page/Sitemap.md @@ -15,13 +15,13 @@ Access to the `Sitemap` method on a `Page` object is restricted to [sitemap temp ## Methods changefreq -: (`string`) How frequently a page is likely to change. Valid values are `always`, `hourly`, `daily`, `weekly`, `monthly`, `yearly`, and `never`. With the default value of `""` Hugo will omit this field from the sitemap. See [details](https://www.sitemaps.org/protocol.html#changefreqdef). +: (`string`) How frequently a page is likely to change. Valid values are `always`, `hourly`, `daily`, `weekly`, `monthly`, `yearly`, and `never`. With the default value of `""` Hugo will omit this field from the sitemap. See [details](https://www.sitemaps.org/protocol.html#changefreqdef). ```go-html-template {{ .Sitemap.ChangeFreq }} ``` -disable {{< new-in 0.125.0 >}} +disable {{< new-in 0.125.0 />}} : (`bool`) Whether to disable page inclusion. Default is `false`. Set to `true` in front matter to exclude the page. ```go-html-template @@ -29,7 +29,7 @@ disable {{< new-in 0.125.0 >}} ``` priority -: (`float`) The priority of a page relative to any other page on the site. Valid values range from 0.0 to 1.0. With the default value of `-1` Hugo will omit this field from the sitemap. See [details](https://www.sitemaps.org/protocol.html#priority). +: (`float`) The priority of a page relative to any other page on the site. Valid values range from 0.0 to 1.0. With the default value of `-1` Hugo will omit this field from the sitemap. See [details](https://www.sitemaps.org/protocol.html#priority). ```go-html-template {{ .Sitemap.Priority }} diff --git a/content/en/methods/page/Store.md b/content/en/methods/page/Store.md index af0f78642..769a554f1 100644 --- a/content/en/methods/page/Store.md +++ b/content/en/methods/page/Store.md @@ -1,108 +1,25 @@ --- title: Store -linktitle: PAGE.Store -description: Returns a persistent "scratch pad" on the given page to store and manipulate data. +description: Returns a "scratch pad" to store and manipulate data, scoped to the current page. categories: [] keywords: [] action: related: - - methods/page/scratch - - methods/site/store - - functions/hugo/store - - functions/collections/NewScratch + - methods/site/Store + - methods/shortcode/Store + - functions/hugo/Store + - functions/collections/NewScratch returnType: maps.Scratch signatures: [PAGE.Store] toc: true -aliases: [/functions/store] +aliases: [/functions/store/,/extras/scratch/,/doc/scratch/,/functions/scratch] --- -The `Store` method on a `Page` object creates a persistent [scratch pad](g) to store and manipulate data. To create a locally scoped scratch pad that is not attached to a `Page` object, use the [`newScratch`] function. +Use the `Store` method on a `Page` object to create a [scratch pad](g) to store and manipulate data, scoped to the current page. To create a scratch pad with a different [scope](g), refer to the [scope](#scope) section below. -[`Scratch`]: /methods/page/scratch/ -[`newScratch`]: /functions/collections/newscratch/ +{{% include "_common/store-methods.md" %}} -## Methods - -###### Set - -Sets the value of a given key. - -```go-html-template -{{ .Store.Set "greeting" "Hello" }} -``` - -###### Get - -Gets the value of a given key. - -```go-html-template -{{ .Store.Set "greeting" "Hello" }} -{{ .Store.Get "greeting" }} → Hello -``` - -###### Add - -Adds a given value to existing value(s) of the given key. - -For single values, `Add` accepts values that support Go's `+` operator. If the first `Add` for a key is an array or slice, the following adds will be appended to that list. - -```go-html-template -{{ .Store.Set "greeting" "Hello" }} -{{ .Store.Add "greeting" "Welcome" }} -{{ .Store.Get "greeting" }} → HelloWelcome -``` - -```go-html-template -{{ .Store.Set "total" 3 }} -{{ .Store.Add "total" 7 }} -{{ .Store.Get "total" }} → 10 -``` - -```go-html-template -{{ .Store.Set "greetings" (slice "Hello") }} -{{ .Store.Add "greetings" (slice "Welcome" "Cheers") }} -{{ .Store.Get "greetings" }} → [Hello Welcome Cheers] -``` - -###### SetInMap - -Takes a `key`, `mapKey` and `value` and adds a map of `mapKey` and `value` to the given `key`. - -```go-html-template -{{ .Store.SetInMap "greetings" "english" "Hello" }} -{{ .Store.SetInMap "greetings" "french" "Bonjour" }} -{{ .Store.Get "greetings" }} → map[english:Hello french:Bonjour] -``` - -###### DeleteInMap - -Takes a `key` and `mapKey` and removes the map of `mapKey` from the given `key`. - -```go-html-template -{{ .Store.SetInMap "greetings" "english" "Hello" }} -{{ .Store.SetInMap "greetings" "french" "Bonjour" }} -{{ .Store.DeleteInMap "greetings" "english" }} -{{ .Store.Get "greetings" }} → map[french:Bonjour] -``` - -###### GetSortedMapValues - -Returns an array of values from `key` sorted by `mapKey`. - -```go-html-template -{{ .Store.SetInMap "greetings" "english" "Hello" }} -{{ .Store.SetInMap "greetings" "french" "Bonjour" }} -{{ .Store.GetSortedMapValues "greetings" }} → [Hello Bonjour] -``` - -###### Delete - -Removes the given key. - -```go-html-template -{{ .Store.Set "greeting" "Hello" }} -{{ .Store.Delete "greeting" }} -``` +{{% include "_common/scratch-pad-scope.md" %}} ## Determinate values diff --git a/content/en/methods/page/Title.md b/content/en/methods/page/Title.md index 5c2c98d6b..08fc9f9eb 100644 --- a/content/en/methods/page/Title.md +++ b/content/en/methods/page/Title.md @@ -33,7 +33,7 @@ You can change the capitalization style in your site configuration to one of `ap titleCaseStyle = "firstupper" {{< /code-toggle >}} - See [details]. + See [details]. [`capitalizeListTitles`]: /getting-started/configuration/#capitalizelisttitles [`pluralizeListTitles`]: /getting-started/configuration/#pluralizelisttitles diff --git a/content/en/methods/page/Type.md b/content/en/methods/page/Type.md index 565f6397c..2a2a5c731 100644 --- a/content/en/methods/page/Type.md +++ b/content/en/methods/page/Type.md @@ -7,7 +7,6 @@ action: related: - methods/page/Kind - methods/page/Layout - - methods/page/Type returnType: string signatures: [PAGE.Type] --- diff --git a/content/en/methods/page/_common/definition-of-section.md b/content/en/methods/page/_common/definition-of-section.md deleted file mode 100644 index 4a2e36ff3..000000000 --- a/content/en/methods/page/_common/definition-of-section.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -_comment: Do not remove front matter. ---- - -A _section_ is a top-level content directory, or any content directory with an `_index.md` file. diff --git a/content/en/methods/page/_common/scratch-methods.md b/content/en/methods/page/_common/scratch-methods.md deleted file mode 100644 index 92a97cdd5..000000000 --- a/content/en/methods/page/_common/scratch-methods.md +++ /dev/null @@ -1,86 +0,0 @@ ---- -_comment: Do not remove front matter. ---- - -## Methods - -###### Set - -Sets the value of a given key. - -```go-html-template -{{ .Scratch.Set "greeting" "Hello" }} -``` - -###### Get - -Gets the value of a given key. - -```go-html-template -{{ .Scratch.Set "greeting" "Hello" }} -{{ .Scratch.Get "greeting" }} → Hello -``` - -###### Add - -Adds a given value to existing value(s) of the given key. - -For single values, `Add` accepts values that support Go's `+` operator. If the first `Add` for a key is an array or slice, the following adds will be appended to that list. - -```go-html-template -{{ .Scratch.Set "greeting" "Hello" }} -{{ .Scratch.Add "greeting" "Welcome" }} -{{ .Scratch.Get "greeting" }} → HelloWelcome -``` - -```go-html-template -{{ .Scratch.Set "total" 3 }} -{{ .Scratch.Add "total" 7 }} -{{ .Scratch.Get "total" }} → 10 -``` - -```go-html-template -{{ .Scratch.Set "greetings" (slice "Hello") }} -{{ .Scratch.Add "greetings" (slice "Welcome" "Cheers") }} -{{ .Scratch.Get "greetings" }} → [Hello Welcome Cheers] -``` - -###### SetInMap - -Takes a `key`, `mapKey` and `value` and adds a map of `mapKey` and `value` to the given `key`. - -```go-html-template -{{ .Scratch.SetInMap "greetings" "english" "Hello" }} -{{ .Scratch.SetInMap "greetings" "french" "Bonjour" }} -{{ .Scratch.Get "greetings" }} → map[english:Hello french:Bonjour] -``` - -###### DeleteInMap - -Takes a `key` and `mapKey` and removes the map of `mapKey` from the given `key`. - -```go-html-template -{{ .Scratch.SetInMap "greetings" "english" "Hello" }} -{{ .Scratch.SetInMap "greetings" "french" "Bonjour" }} -{{ .Scratch.DeleteInMap "greetings" "english" }} -{{ .Scratch.Get "greetings" }} → map[french:Bonjour] -``` - -###### GetSortedMapValues - -Returns an array of values from `key` sorted by `mapKey`. - -```go-html-template -{{ .Scratch.SetInMap "greetings" "english" "Hello" }} -{{ .Scratch.SetInMap "greetings" "french" "Bonjour" }} -{{ .Scratch.GetSortedMapValues "greetings" }} → [Hello Bonjour] -``` - -###### Delete - -Removes the given key. - -```go-html-template -{{ .Scratch.Set "greeting" "Hello" }} -{{ .Scratch.Delete "greeting" }} -``` diff --git a/content/en/methods/pager/PageSize.md b/content/en/methods/pager/PageSize.md index 148ad5907..d69c31207 100644 --- a/content/en/methods/pager/PageSize.md +++ b/content/en/methods/pager/PageSize.md @@ -4,11 +4,10 @@ description: Returns the number of pages per pager. categories: [] keywords: [] action: - related: - - methods/page/Paginate + related: [] returnType: int signatures: [PAGER.PageSize] -expiryDate: 2025-06-09 # deprecated 2024-06-09 +expiryDate: 2026-06-09 # deprecated 2024-06-09 in v0.128.0 --- {{% deprecated-in 0.128.0 %}} @@ -16,21 +15,3 @@ Use [`PAGER.PagerSize`] instead. [`PAGER.PagerSize`]: /methods/pager/pagersize/ {{% /deprecated-in %}} - -The number of pages per pager is determined by the optional second argument passed to the [`Paginate`] method, falling back to the `pagerSize` as defined in your [site configuration]. - -[`Paginate`]: /methods/page/paginate/ -[site configuration]: /templates/pagination/#configuration - -```go-html-template -{{ $pages := where site.RegularPages "Type" "posts" }} -{{ $paginator := .Paginate $pages }} - -{{ range $paginator.Pages }} -

{{ .LinkTitle }}

-{{ end }} - -{{ with $paginator }} - {{ .PageSize }} -{{ end }} -``` diff --git a/content/en/methods/pager/PagerSize.md b/content/en/methods/pager/PagerSize.md index 623548398..5f5f7d3a8 100644 --- a/content/en/methods/pager/PagerSize.md +++ b/content/en/methods/pager/PagerSize.md @@ -10,7 +10,7 @@ action: signatures: [PAGER.PagerSize] --- -{{< new-in 0.128.0 >}} +{{< new-in 0.128.0 />}} The number of pages per pager is determined by the optional second argument passed to the [`Paginate`] method, falling back to the `pagerSize` as defined in your [site configuration]. diff --git a/content/en/methods/resource/Colors.md b/content/en/methods/resource/Colors.md index 73fe1e7ae..08f63ae3f 100644 --- a/content/en/methods/resource/Colors.md +++ b/content/en/methods/resource/Colors.md @@ -20,11 +20,11 @@ The `Resources.Colors` method returns a slice of the most dominant colors in an Each color is an object with the following methods: ColorHex -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`string`) Returns the [hexadecimal color] value, prefixed with a hash sign. Luminance -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`float64`) Returns the [relative luminance] of the color in the sRGB colorspace in the range [0, 1]. A value of `0` represents the darkest black, while a value of `1` represents the lightest white. {{% note %}} diff --git a/content/en/methods/resource/Data.md b/content/en/methods/resource/Data.md index f62de34d2..b6744d1be 100644 --- a/content/en/methods/resource/Data.md +++ b/content/en/methods/resource/Data.md @@ -17,6 +17,7 @@ The `Data` method on a resource returned by the [`resources.GetRemote`] function ```go-html-template {{ $url := "https://example.org/images/a.jpg" }} +{{ $opts := dict "responseHeaders" (slice "Server") }} {{ with try (resources.GetRemote $url) }} {{ with .Err }} {{ errorf "%s" . }} @@ -24,6 +25,7 @@ The `Data` method on a resource returned by the [`resources.GetRemote`] function {{ with .Data }} {{ .ContentLength }} → 42764 {{ .ContentType }} → image/jpeg + {{ .Headers }} → map[Server:[Netlify]] {{ .Status }} → 200 OK {{ .StatusCode }} → 200 {{ .TransferEncoding }} → [] @@ -34,19 +36,30 @@ The `Data` method on a resource returned by the [`resources.GetRemote`] function {{ end }} ``` -ContentLength -: (`int`) The content length in bytes. +###### ContentLength -ContentType -: (`string`) The content type. +(`int`) The content length in bytes. -Status -: (`string`) The HTTP status text. +###### ContentType -StatusCode -: (`int`) The HTTP status code. +(`string`) The content type. -TransferEncoding -: (`string`) The transfer encoding. +###### Headers + +(`map[string][]string`) A map of response headers matching those requested in the [`responseHeaders`] option passed to the `resources.GetRemote` function. The header name matching is case-insensitive. In most cases there will be one value per header key. + +[`responseHeaders`]: /functions/resources/getremote/#responseheaders + +###### Status + +(`string`) The HTTP status text. + +###### StatusCode + +(`int`) The HTTP status code. + +###### TransferEncoding + +(`string`) The transfer encoding. [`resources.GetRemote`]: /functions/resources/getremote/ diff --git a/content/en/methods/resource/Err.md b/content/en/methods/resource/Err.md index 776127caf..34ba6f9bc 100644 --- a/content/en/methods/resource/Err.md +++ b/content/en/methods/resource/Err.md @@ -9,7 +9,7 @@ action: - methods/resource/Data returnType: resource.resourceError signatures: [RESOURCE.Err] -expiryDate: 2026-01-16 # deprecated 2025-01-16 +expiryDate: 2027-01-16 # deprecated 2025-01-16 in v0.141.0 --- {{% deprecated-in 0.141.0 %}} diff --git a/content/en/methods/shortcode/Scratch.md b/content/en/methods/shortcode/Scratch.md index b044a66c8..6dd882e24 100644 --- a/content/en/methods/shortcode/Scratch.md +++ b/content/en/methods/shortcode/Scratch.md @@ -1,14 +1,13 @@ --- title: Scratch -description: Returns a "scratch pad" scoped to the shortcode to store and manipulate data. +description: Returns a "scratch pad" to store and manipulate data, scoped to the current shortcode. categories: [] keywords: [] action: - related: - - functions/collections/NewScratch + related: [] returnType: maps.Scratch signatures: [SHORTCODE.Scratch] -expiryDate: 2025-11-18 # deprecated 2024-11-18 +expiryDate: 2026-11-18 # deprecated 2024-11-18 (soft) --- {{% deprecated-in 0.139.0 %}} @@ -20,14 +19,3 @@ Beginning with v0.139.0 the `SHORTCODE.Scratch` method is aliased to `SHORTCODE. [`SHORTCODE.Store`]: /methods/shortcode/store/ {{% /deprecated-in %}} - -The `Scratch` method within a shortcode creates a [scratch pad](g) to store and manipulate data. The scratch pad is scoped to the shortcode. - -{{% note %}} -With the introduction of the [`newScratch`] function, and the ability to [assign values to template variables] after initialization, the `Scratch` method within a shortcode is obsolete. - -[assign values to template variables]: https://go.dev/doc/go1.11#text/template -[`newScratch`]: /functions/collections/newscratch/ -{{% /note %}} - -{{% include "methods/page/_common/scratch-methods.md" %}} diff --git a/content/en/methods/shortcode/Store.md b/content/en/methods/shortcode/Store.md index 2e6c467ce..8d9a8596b 100644 --- a/content/en/methods/shortcode/Store.md +++ b/content/en/methods/shortcode/Store.md @@ -1,21 +1,22 @@ --- title: Store -description: Returns a "Store pad" scoped to the shortcode to store and manipulate data. +description: Returns a "scratch pad" to store and manipulate data, scoped to the current shortcode. categories: [] keywords: [] action: related: - - functions/collections/NewScratch - methods/page/Store - methods/site/Store - functions/hugo/Store - returnType: maps.Store + - functions/collections/NewScratch + returnType: maps.Scratch signatures: [SHORTCODE.Store] +toc: true --- -{{< new-in 0.139.0 >}} +{{< new-in 0.139.0 />}} -The `Store` method within a shortcode creates a [scratch pad](g) to store and manipulate data. The scratch pad is scoped to the shortcode. +Use the `Store` method to create a [scratch pad](g) to store and manipulate data, scoped to the current shortcode. To create a scratch pad with a different [scope](g), refer to the [scope](#scope) section below. {{% note %}} With the introduction of the [`newScratch`] function, and the ability to [assign values to template variables] after initialization, the `Store` method within a shortcode is mostly obsolete. @@ -24,4 +25,6 @@ With the introduction of the [`newScratch`] function, and the ability to [assign [`newScratch`]: /functions/collections/newScratch/ {{% /note %}} -{{% include "methods/page/_common/scratch-methods.md" %}} +{{% include "_common/store-methods.md" %}} + +{{% include "_common/scratch-pad-scope.md" %}} diff --git a/content/en/methods/shortcode/_index.md b/content/en/methods/shortcode/_index.md index d26366844..1c99adba7 100644 --- a/content/en/methods/shortcode/_index.md +++ b/content/en/methods/shortcode/_index.md @@ -7,6 +7,7 @@ keywords: [] menu: docs: parent: methods +aliases: [/variables/shortcodes] --- Use these methods in your shortcode templates. diff --git a/content/en/methods/site/DisqusShortname.md b/content/en/methods/site/DisqusShortname.md index 0e900ac4e..f6fedf4e9 100644 --- a/content/en/methods/site/DisqusShortname.md +++ b/content/en/methods/site/DisqusShortname.md @@ -7,7 +7,7 @@ action: related: [] returnType: string signatures: [SITE.DisqusShortname] -expiryDate: 2024-10-30 # deprecated 2023-10-30 +expiryDate: 2025-10-30 # deprecated 2023-10-30 in v0.120.0 --- {{% deprecated-in 0.120.0 %}} diff --git a/content/en/methods/site/GoogleAnalytics.md b/content/en/methods/site/GoogleAnalytics.md index c58974452..f87e1787e 100644 --- a/content/en/methods/site/GoogleAnalytics.md +++ b/content/en/methods/site/GoogleAnalytics.md @@ -7,7 +7,7 @@ action: related: [] returnType: string signatures: [SITE.GoogleAnalytics] -expiryDate: 2024-10-30 # deprecated 2023-10-30 +expiryDate: 2025-10-30 # deprecated 2023-10-30 in v0.120.0 --- {{% deprecated-in 0.120.0 %}} diff --git a/content/en/methods/site/IsDevelopment.md b/content/en/methods/site/IsDevelopment.md index 6f443316b..51783efb9 100644 --- a/content/en/methods/site/IsDevelopment.md +++ b/content/en/methods/site/IsDevelopment.md @@ -7,7 +7,7 @@ action: related: [] returnType: bool signatures: [SITE.IsDevelopment] -expiryDate: 2024-10-30 # deprecated 2023-10-30 +expiryDate: 2025-10-30 # deprecated 2023-10-30 in v0.120.0 --- {{% deprecated-in 0.120.0 %}} @@ -15,7 +15,3 @@ Use [`hugo.IsDevelopment`] instead. [`hugo.IsDevelopment`]: /functions/hugo/isdevelopment/ {{% /deprecated-in %}} - -```go-html-template -{{ .Site.IsDevelopment }} → true/false -``` diff --git a/content/en/methods/site/IsMultiLingual.md b/content/en/methods/site/IsMultiLingual.md index 7ec938812..10968f14d 100644 --- a/content/en/methods/site/IsMultiLingual.md +++ b/content/en/methods/site/IsMultiLingual.md @@ -7,7 +7,7 @@ action: related: [] returnType: bool signatures: [SITE.IsMultiLingual] -expiryDate: 2025-03-16 # deprecated 2024-03-16 +expiryDate: 2026-03-16 # deprecated 2024-03-16 in 0.124.0 --- {{% deprecated-in 0.124.0 %}} @@ -15,27 +15,3 @@ Use [`hugo.IsMultilingual`] instead. [`hugo.IsMultilingual`]: /functions/hugo/ismultilingual/ {{% /deprecated-in %}} - -Site configuration: - -{{< code-toggle file=hugo >}} -defaultContentLanguage = 'de' -defaultContentLanguageInSubdir = true -[languages] - [languages.de] - languageCode = 'de-DE' - languageName = 'Deutsch' - title = 'Projekt Dokumentation' - weight = 1 - [languages.en] - languageCode = 'en-US' - languageName = 'English' - title = 'Project Documentation' - weight = 2 -{{< /code-toggle >}} - -Template: - -```go-html-template -{{ .Site.IsMultiLingual }} → true -``` diff --git a/content/en/methods/site/IsServer.md b/content/en/methods/site/IsServer.md index a688c553a..8fb5b7bf6 100644 --- a/content/en/methods/site/IsServer.md +++ b/content/en/methods/site/IsServer.md @@ -7,7 +7,7 @@ action: related: [] returnType: bool signatures: [SITE.IsServer] -expiryDate: 2024-10-30 # deprecated 2023-10-30 +expiryDate: 2025-10-30 # deprecated 2023-10-30 in v0.120.0 --- {{% deprecated-in 0.120.0 %}} @@ -15,7 +15,3 @@ Use [`hugo.IsServer`] instead. [`hugo.IsServer`]: /functions/hugo/isserver/ {{% /deprecated-in %}} - -```go-html-template -{{ .Site.IsServer }} → true/false -``` diff --git a/content/en/methods/site/LastChange.md b/content/en/methods/site/LastChange.md index 65925c0eb..f6017df04 100644 --- a/content/en/methods/site/LastChange.md +++ b/content/en/methods/site/LastChange.md @@ -7,7 +7,7 @@ action: related: [] returnType: time.Time signatures: [SITE.LastChange] -expiryDate: 2025-02-19 # deprecated 2024-02-19 +expiryDate: 2026-02-19 # deprecated 2024-02-19 in v0.123.0 --- {{% deprecated-in 0.123.0 %}} @@ -15,14 +15,3 @@ Use [`.Site.Lastmod`] instead. [`.Site.Lastmod`]: /methods/site/lastmod/ {{% /deprecated-in %}} - -The `LastChange` method on a `Site` object returns a [`time.Time`] value. Use this with time [functions] and [methods]. For example: - -```go-html-template -{{ .Site.LastChange | time.Format ":date_long" }} → January 31, 2024 - -``` - -[`time.Time`]: https://pkg.go.dev/time#Time -[functions]: /functions/time/ -[methods]: /methods/time/ diff --git a/content/en/methods/site/Lastmod.md b/content/en/methods/site/Lastmod.md index 081481956..f1663db49 100644 --- a/content/en/methods/site/Lastmod.md +++ b/content/en/methods/site/Lastmod.md @@ -9,7 +9,7 @@ action: signatures: [SITE.Lastmod] --- -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} The `Lastmod` method on a `Site` object returns a [`time.Time`] value. Use this with time [functions] and [methods]. For example: diff --git a/content/en/methods/site/Store.md b/content/en/methods/site/Store.md index 8a6c5b86e..dcc3a0bed 100644 --- a/content/en/methods/site/Store.md +++ b/content/en/methods/site/Store.md @@ -1,7 +1,6 @@ --- title: Store -linktitle: site.Store -description: Returns a persistent "scratch pad" on the given site to store and manipulate data. +description: Returns a "scratch pad" to store and manipulate data, scoped to the current site. categories: [] keywords: [] action: @@ -14,12 +13,9 @@ action: toc: true --- -{{< new-in 0.139.0 >}} +{{< new-in 0.139.0 />}} -The `Store` method on a `Site` object creates a persistent [scratch pad](g) to store and manipulate data. To create a locally scoped scratch pad that is not attached to a `Site` object, use the [`newScratch`] function. - -[`Scratch`]: /methods/site/scratch/ -[`newScratch`]: /functions/collections/newscratch/ +Use the `Store` method on a `Site` object to create a [scratch pad](g) to store and manipulate data, scoped to the current site. To create a scratch pad with a different [scope](g), refer to the [scope](#scope) section below. ## Methods @@ -104,6 +100,8 @@ Removes the given key. {{ site.Store.Delete "greeting" }} ``` +{{% include "_common/scratch-pad-scope.md" %}} + ## Determinate values The `Store` method is often used to set scratch pad values within a shortcode, a partial template called by a shortcode, or by a Markdown render hook. In all three cases, the scratch pad values are indeterminate until Hugo renders the page content. diff --git a/content/en/methods/taxonomy/Page.md b/content/en/methods/taxonomy/Page.md index e148ac5c7..039719b93 100644 --- a/content/en/methods/taxonomy/Page.md +++ b/content/en/methods/taxonomy/Page.md @@ -9,7 +9,7 @@ action: signatures: [TAXONOMY.Page] --- -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} This `TAXONOMY` method returns nil if the taxonomy has no terms, so you must code defensively: diff --git a/content/en/myshowcase/index.md b/content/en/myshowcase/index.md index 969095d12..abb4ad6b2 100644 --- a/content/en/myshowcase/index.md +++ b/content/en/myshowcase/index.md @@ -2,6 +2,7 @@ title: Myshowcase date: 2021-01-14 +draft: true description: "A short description of this page." diff --git a/content/en/news/_index.md b/content/en/news/_index.md index a1959bd1d..c170a69a4 100644 --- a/content/en/news/_index.md +++ b/content/en/news/_index.md @@ -1,7 +1,9 @@ --- title: News +description: Stay up-to-date with the latest news and announcements. outputs: - html - rss aliases: [/release-notes/] +weight: 10 --- diff --git a/content/en/quick-reference/_index.md b/content/en/quick-reference/_index.md index b5f434e2d..f2673ba37 100644 --- a/content/en/quick-reference/_index.md +++ b/content/en/quick-reference/_index.md @@ -1,7 +1,7 @@ --- title: Quick reference guides -linkTitle: In this section -description: Quick reference guides to Hugo's features, functions, and methods. +linktitle: Quick reference +description: Use these quick reference guides for quick access to key information. categories: [] keywords: [] menu: @@ -13,4 +13,4 @@ weight: 10 showSectionMenu: false --- -Quick reference guides to Hugo's features, functions, and methods. +{{% param description %}} diff --git a/content/en/getting-started/glossary/_index.md b/content/en/quick-reference/glossary/_index.md similarity index 58% rename from content/en/getting-started/glossary/_index.md rename to content/en/quick-reference/glossary/_index.md index 001d80fe0..1b5111e8e 100644 --- a/content/en/getting-started/glossary/_index.md +++ b/content/en/quick-reference/glossary/_index.md @@ -1,13 +1,15 @@ --- -title: Glossary of terms +title: Glossary description: Terms commonly used throughout the documentation. -categories: [getting started] +categories: [quick-reference] keywords: [glossary] +hide_in_this_section: true menu: docs: - parent: getting-started - weight: 80 -weight: 80 + parent: quick-reference + weight: 40 +aliases: [/getting-started/glossary/] +weight: 40 layout: single build: render: always diff --git a/content/en/quick-reference/glossary/action.md b/content/en/quick-reference/glossary/action.md new file mode 100644 index 000000000..ced877327 --- /dev/null +++ b/content/en/quick-reference/glossary/action.md @@ -0,0 +1,5 @@ +--- +title: action +--- + +See [_template action_](g). diff --git a/content/en/quick-reference/glossary/archetype.md b/content/en/quick-reference/glossary/archetype.md new file mode 100644 index 000000000..231089c56 --- /dev/null +++ b/content/en/quick-reference/glossary/archetype.md @@ -0,0 +1,6 @@ +--- +title: archetype +details: /content-management/archetypes +--- + +An _archetype_ is a template for new content. diff --git a/content/en/quick-reference/glossary/argument.md b/content/en/quick-reference/glossary/argument.md new file mode 100644 index 000000000..912951d2b --- /dev/null +++ b/content/en/quick-reference/glossary/argument.md @@ -0,0 +1,5 @@ +--- +title: argument +--- + +An _argument_ is a [_scalar_](g), [_array_](g), [_slice_](g), [_map_](g), or [_object_](g) passed to a [_function_](g), [_method_](g), or [_shortcode_](g). diff --git a/content/en/quick-reference/glossary/array.md b/content/en/quick-reference/glossary/array.md new file mode 100644 index 000000000..0df45f212 --- /dev/null +++ b/content/en/quick-reference/glossary/array.md @@ -0,0 +1,6 @@ +--- +title: array +reference: https://go.dev/ref/spec#Array_types +--- + +An _array_ is a numbered sequence of [_elements_](g). Unlike Go's [_slice_](g) data type, an array has a fixed length. Elements within an array can be [_scalars_](g), slices, [_maps_](g), pages, or other arrays. diff --git a/content/en/quick-reference/glossary/asset-pipeline.md b/content/en/quick-reference/glossary/asset-pipeline.md new file mode 100644 index 000000000..5f3264a6e --- /dev/null +++ b/content/en/quick-reference/glossary/asset-pipeline.md @@ -0,0 +1,5 @@ +--- +title: asset pipeline +--- + +An _asset pipeline_ is a system that automates and optimizes the handling of static assets like images, stylesheets, and JavaScript files. diff --git a/content/en/getting-started/glossary/bool.md b/content/en/quick-reference/glossary/bool.md similarity index 51% rename from content/en/getting-started/glossary/bool.md rename to content/en/quick-reference/glossary/bool.md index 7fd7628ca..a4f33b5b9 100644 --- a/content/en/getting-started/glossary/bool.md +++ b/content/en/quick-reference/glossary/bool.md @@ -2,4 +2,4 @@ title: bool --- -See [boolean](g). +See [_boolean_](g). diff --git a/content/en/quick-reference/glossary/boolean.md b/content/en/quick-reference/glossary/boolean.md new file mode 100644 index 000000000..e727c40b0 --- /dev/null +++ b/content/en/quick-reference/glossary/boolean.md @@ -0,0 +1,5 @@ +--- +title: boolean +--- + +A _boolean_ is a data type with two possible values, either `true` or `false`. diff --git a/content/en/quick-reference/glossary/branch-bundle.md b/content/en/quick-reference/glossary/branch-bundle.md new file mode 100644 index 000000000..d5688ba0b --- /dev/null +++ b/content/en/quick-reference/glossary/branch-bundle.md @@ -0,0 +1,6 @@ +--- +title: branch bundle +reference: /content-management/page-bundles +--- + +A _branch bundle_ is a top-level content directory or any content directory containing an `_index.md` file. Analogous to a physical branch, a branch bundle may have descendants including [_leaf bundles_](g) and other branch bundles. A branch bundle may also contain [_page resources_](g) such as images. diff --git a/content/en/quick-reference/glossary/build.md b/content/en/quick-reference/glossary/build.md new file mode 100644 index 000000000..79b7ec74a --- /dev/null +++ b/content/en/quick-reference/glossary/build.md @@ -0,0 +1,5 @@ +--- +title: build +--- + +To _build_ a site is to generate HTML files and assets such as images, CSS files, and JavaScript files. The build process includes rendering and resource transformations. diff --git a/content/en/getting-started/glossary/bundle.md b/content/en/quick-reference/glossary/bundle.md similarity index 100% rename from content/en/getting-started/glossary/bundle.md rename to content/en/quick-reference/glossary/bundle.md diff --git a/content/en/quick-reference/glossary/cache.md b/content/en/quick-reference/glossary/cache.md new file mode 100644 index 000000000..a86068e4a --- /dev/null +++ b/content/en/quick-reference/glossary/cache.md @@ -0,0 +1,5 @@ +--- +title: cache +--- + +A _cache_ is a software component that stores data so that future requests for the same data are faster. diff --git a/content/en/quick-reference/glossary/chain.md b/content/en/quick-reference/glossary/chain.md new file mode 100644 index 000000000..bbbc14f49 --- /dev/null +++ b/content/en/quick-reference/glossary/chain.md @@ -0,0 +1,5 @@ +--- +title: chain +--- + +To _chain_ is to connect one or more [_identifiers_](g) with a dot. An identifier can represent a [_method_](g), [_object_](g), or [_field_](g). For example, `.Site.Params.author.name` or `.Date.UTC.Hour`. diff --git a/content/en/quick-reference/glossary/cjk.md b/content/en/quick-reference/glossary/cjk.md new file mode 100644 index 000000000..05a294d44 --- /dev/null +++ b/content/en/quick-reference/glossary/cjk.md @@ -0,0 +1,5 @@ +--- +title: CJK +--- + +_CJK_ is a collective term for the Chinese, Japanese, and Korean languages. diff --git a/content/en/quick-reference/glossary/cli.md b/content/en/quick-reference/glossary/cli.md new file mode 100644 index 000000000..61269dc8e --- /dev/null +++ b/content/en/quick-reference/glossary/cli.md @@ -0,0 +1,5 @@ +--- +title: CLI +--- + +_CLI_ is an abbreviation of Command Line Interface. diff --git a/content/en/quick-reference/glossary/collection.md b/content/en/quick-reference/glossary/collection.md new file mode 100644 index 000000000..30e1ef805 --- /dev/null +++ b/content/en/quick-reference/glossary/collection.md @@ -0,0 +1,5 @@ +--- +title: collection +--- + +A _collection_ is an [_array_](g), [_slice_](g), or [_map_](g). diff --git a/content/en/quick-reference/glossary/content-adapter.md b/content/en/quick-reference/glossary/content-adapter.md new file mode 100644 index 000000000..974e61dca --- /dev/null +++ b/content/en/quick-reference/glossary/content-adapter.md @@ -0,0 +1,6 @@ +--- +title: content adapter +reference: /content-management/content-adapters +--- + +A _content adapter_ is a template that dynamically creates pages when building a site. For example, use a content adapter to create pages from a remote data source such as JSON, TOML, YAML, or XML. diff --git a/content/en/quick-reference/glossary/content-format.md b/content/en/quick-reference/glossary/content-format.md new file mode 100644 index 000000000..ea459deb7 --- /dev/null +++ b/content/en/quick-reference/glossary/content-format.md @@ -0,0 +1,6 @@ +--- +title: content format +reference: /content-management/formats +--- + +A _content format_ is a markup language for creating content. Typically Markdown, but may also be HTML, AsciiDoc, Org, Pandoc, or reStructuredText. diff --git a/content/en/quick-reference/glossary/content-type.md b/content/en/quick-reference/glossary/content-type.md new file mode 100644 index 000000000..b7ebc5be4 --- /dev/null +++ b/content/en/quick-reference/glossary/content-type.md @@ -0,0 +1,6 @@ +--- +title: content type +reference: /content-management/types +--- + +A _content type_ is a classification of content inferred from the top-level directory name or the `type` set in [front matter](g). Pages in the root of the `content` directory, including the home page, are of type "page". Accessed via `.Page.Type` in [_templates_](g). diff --git a/content/en/quick-reference/glossary/content-view.md b/content/en/quick-reference/glossary/content-view.md new file mode 100644 index 000000000..009981cb5 --- /dev/null +++ b/content/en/quick-reference/glossary/content-view.md @@ -0,0 +1,6 @@ +--- +title: content view +reference: /templates/content-view +--- + +A _content view_ is a template called with the [`Render`](/methods/page/render/) method on a `Page` object. diff --git a/content/en/quick-reference/glossary/context.md b/content/en/quick-reference/glossary/context.md new file mode 100644 index 000000000..75afc709d --- /dev/null +++ b/content/en/quick-reference/glossary/context.md @@ -0,0 +1,6 @@ +--- +title: context +reference: /templates/introduction/#context +--- + +Represented by a dot (`.`) within a [_template action_](g), _context_ is the current location in a data structure. For example, while iterating over a [_collection_](g) of pages, the context within each iteration is the page's data structure. The context received by each template depends on template type and/or how it was called. diff --git a/content/en/quick-reference/glossary/default-sort-order.md b/content/en/quick-reference/glossary/default-sort-order.md new file mode 100644 index 000000000..2b5588d56 --- /dev/null +++ b/content/en/quick-reference/glossary/default-sort-order.md @@ -0,0 +1,5 @@ +--- +title: default sort order +--- + +The _default sort order_ is the default order in which Hugo sorts page collections: by [_weight_](g), then by date (descending), then by link title, and then by file path. diff --git a/content/en/quick-reference/glossary/duration.md b/content/en/quick-reference/glossary/duration.md new file mode 100644 index 000000000..21fd3c832 --- /dev/null +++ b/content/en/quick-reference/glossary/duration.md @@ -0,0 +1,5 @@ +--- +title: duration +--- + +A _duration_ is a data type that represent a length of time, expressed using units such as seconds (represented by `s`), minutes (represented by `m`), and hours (represented by `h`). For example, `42s` means 42 seconds, `6m7s` means 6 minutes and 7 seconds, and `6h7m42s` means 6 hours, 7 minutes, and 42 seconds. diff --git a/content/en/quick-reference/glossary/element.md b/content/en/quick-reference/glossary/element.md new file mode 100644 index 000000000..39f5df656 --- /dev/null +++ b/content/en/quick-reference/glossary/element.md @@ -0,0 +1,5 @@ +--- +title: element +--- + +An _element_ is a member of a [_slice_](g) or [_array_](g). diff --git a/content/en/quick-reference/glossary/embedded-template.md b/content/en/quick-reference/glossary/embedded-template.md new file mode 100644 index 000000000..3a0871690 --- /dev/null +++ b/content/en/quick-reference/glossary/embedded-template.md @@ -0,0 +1,5 @@ +--- +title: embedded template +--- + +An _embedded template_ is a built-in component within the Hugo application. This includes features like [_partials_](g), [_shortcodes_](g), and [_render hooks_](g) that provide pre-defined structures or functionalities for creating website content. diff --git a/content/en/getting-started/glossary/environment.md b/content/en/quick-reference/glossary/environment.md similarity index 70% rename from content/en/getting-started/glossary/environment.md rename to content/en/quick-reference/glossary/environment.md index 9479605cd..6605c2263 100644 --- a/content/en/getting-started/glossary/environment.md +++ b/content/en/quick-reference/glossary/environment.md @@ -2,7 +2,7 @@ title: environment --- -Typically one of `development`, `staging`, or `production`, each environment may exhibit different behavior depending on configuration and template logic. For example, in a production environment you might minify and fingerprint CSS, but that probably doesn't make sense in a development environment. +Typically one of `development`, `staging`, or `production`, each _environment_ may exhibit different behavior depending on configuration and template logic. For example, in a production environment you might minify and fingerprint CSS, but that probably doesn't make sense in a development environment. When running the built-in development server with the `hugo server` command, the environment is set to `development`. When building your site with the `hugo` command, the environment is set to `production`. To override the environment value, use the `--environment` command line flag or the `HUGO_ENVIRONMENT` environment variable. diff --git a/content/en/quick-reference/glossary/field.md b/content/en/quick-reference/glossary/field.md new file mode 100644 index 000000000..a32eb3a6b --- /dev/null +++ b/content/en/quick-reference/glossary/field.md @@ -0,0 +1,5 @@ +--- +title: field +--- + +A _field_ is a predefined key-value pair in front matter such as `date` or `title`. diff --git a/content/en/quick-reference/glossary/flag.md b/content/en/quick-reference/glossary/flag.md new file mode 100644 index 000000000..e7b6c5746 --- /dev/null +++ b/content/en/quick-reference/glossary/flag.md @@ -0,0 +1,6 @@ +--- +title: flag +reference: /commands/hugo +--- + +A _flag_ is an option passed to a command-line program, beginning with one or two hyphens. diff --git a/content/en/getting-started/glossary/float.md b/content/en/quick-reference/glossary/float.md similarity index 100% rename from content/en/getting-started/glossary/float.md rename to content/en/quick-reference/glossary/float.md diff --git a/content/en/quick-reference/glossary/floating-point.md b/content/en/quick-reference/glossary/floating-point.md new file mode 100644 index 000000000..38ba9f012 --- /dev/null +++ b/content/en/quick-reference/glossary/floating-point.md @@ -0,0 +1,5 @@ +--- +title: floating point +--- + +The term _floating point_ refers to a numeric data type with a fractional component. For example, `3.14159`. diff --git a/content/en/quick-reference/glossary/fragment.md b/content/en/quick-reference/glossary/fragment.md new file mode 100644 index 000000000..57ef1b4ef --- /dev/null +++ b/content/en/quick-reference/glossary/fragment.md @@ -0,0 +1,5 @@ +--- +title: fragment +--- + +A _fragment_ is the final segment of a URL, beginning with a hash (`#`) mark, that references an `id` attribute of an HTML element on the page. diff --git a/content/en/quick-reference/glossary/front-matter.md b/content/en/quick-reference/glossary/front-matter.md new file mode 100644 index 000000000..5a3cd3040 --- /dev/null +++ b/content/en/quick-reference/glossary/front-matter.md @@ -0,0 +1,6 @@ +--- +title: front matter +reference: /content-management/front-matter +--- + +The term _front matter_ refers to the metadata at the beginning of each content page, separated from the content by format-specific delimiters. diff --git a/content/en/quick-reference/glossary/function.md b/content/en/quick-reference/glossary/function.md new file mode 100644 index 000000000..a7da52cd2 --- /dev/null +++ b/content/en/quick-reference/glossary/function.md @@ -0,0 +1,6 @@ +--- +title: function +reference: /functions +--- + +Used within a [_template action_](g), a _function_ takes one or more [_arguments_](g) and returns a value. Unlike [_methods_](g), functions are not associated with an [_object_](g). diff --git a/content/en/quick-reference/glossary/glob.md b/content/en/quick-reference/glossary/glob.md new file mode 100644 index 000000000..5243d1ef9 --- /dev/null +++ b/content/en/quick-reference/glossary/glob.md @@ -0,0 +1,6 @@ +--- +title: glob +reference: https://github.com/gobwas/glob?tab=readme-ov-file#example +--- + +A _glob_ is a pattern used to match filenames and paths. It's a shorthand for specifying a set of files, making it easier to work with multiple files at once. diff --git a/content/en/quick-reference/glossary/global-resource.md b/content/en/quick-reference/glossary/global-resource.md new file mode 100644 index 000000000..a4df65f67 --- /dev/null +++ b/content/en/quick-reference/glossary/global-resource.md @@ -0,0 +1,5 @@ +--- +title: global resource +--- + +A _global resource_ is file within the `assets` directory, or within any directory mounted to the `assets` directory. diff --git a/content/en/quick-reference/glossary/headless-bundle.md b/content/en/quick-reference/glossary/headless-bundle.md new file mode 100644 index 000000000..ac7bf79c8 --- /dev/null +++ b/content/en/quick-reference/glossary/headless-bundle.md @@ -0,0 +1,6 @@ +--- +title: headless bundle +reference: /content-management/build-options/ +--- + +A _headless bundle_ is an unpublished [_leaf bundle_](g) or an unpublished [_branch bundle_](g) whose content and resources you can include in other pages. diff --git a/content/en/quick-reference/glossary/i18n.md b/content/en/quick-reference/glossary/i18n.md new file mode 100644 index 000000000..168828aa8 --- /dev/null +++ b/content/en/quick-reference/glossary/i18n.md @@ -0,0 +1,5 @@ +--- +title: i18n +--- + +See [_internationalization_](g). diff --git a/content/en/quick-reference/glossary/identifier.md b/content/en/quick-reference/glossary/identifier.md new file mode 100644 index 000000000..f53472fa7 --- /dev/null +++ b/content/en/quick-reference/glossary/identifier.md @@ -0,0 +1,5 @@ +--- +title: identifier +--- + +An _identifier_ is a string that represents a variable, method, object, or field. It must conform to Go's [language specification](https://go.dev/ref/spec#Identifiers), beginning with a letter or underscore, followed by zero or more letters, digits, or underscores. diff --git a/content/en/getting-started/glossary/int.md b/content/en/quick-reference/glossary/int.md similarity index 50% rename from content/en/getting-started/glossary/int.md rename to content/en/quick-reference/glossary/int.md index 1077ee5e0..0896f1ce7 100644 --- a/content/en/getting-started/glossary/int.md +++ b/content/en/quick-reference/glossary/int.md @@ -2,4 +2,4 @@ title: int --- -See [integer](g). +See [_integer_](g). diff --git a/content/en/quick-reference/glossary/integer.md b/content/en/quick-reference/glossary/integer.md new file mode 100644 index 000000000..0af821300 --- /dev/null +++ b/content/en/quick-reference/glossary/integer.md @@ -0,0 +1,5 @@ +--- +title: integer +--- + +An _integer_ is a numeric data type without a fractional component. For example, `42`. diff --git a/content/en/quick-reference/glossary/internationalization.md b/content/en/quick-reference/glossary/internationalization.md new file mode 100644 index 000000000..4e8b0199c --- /dev/null +++ b/content/en/quick-reference/glossary/internationalization.md @@ -0,0 +1,5 @@ +--- +title: internationalization +--- + +The term _internationalization_ refers to software design and development efforts that enable [_localization_](g). diff --git a/content/en/quick-reference/glossary/interpreted-string-literal.md b/content/en/quick-reference/glossary/interpreted-string-literal.md new file mode 100644 index 000000000..a5d2cd326 --- /dev/null +++ b/content/en/quick-reference/glossary/interpreted-string-literal.md @@ -0,0 +1,6 @@ +--- +title: interpreted string literal +reference: https://go.dev/ref/spec#String_literals +--- + +An _interpreted string literal_ is a character sequences between double quotes, as in "foo". Within the quotes, any character may appear except a newline and an unescaped double quote. The text between the quotes forms the value of the literal, with backslash escapes interpreted. diff --git a/content/en/quick-reference/glossary/interval.md b/content/en/quick-reference/glossary/interval.md new file mode 100644 index 000000000..f1ce7bc93 --- /dev/null +++ b/content/en/quick-reference/glossary/interval.md @@ -0,0 +1,11 @@ +--- +title: interval +--- + +An [_interval_](https://en.wikipedia.org/wiki/Interval_(mathematics)) is a range of numbers between two endpoints: closed, open, or half-open. + +- A _closed interval_, denoted by brackets, includes its endpoints. For example, [0, 1] is the interval where `0 <= x <= 1`. + +- An _open interval_, denoted by parentheses, excludes its endpoints. For example, (0, 1) is the interval where `0 < x < 1`. + +- A _half-open interval_ includes only one of its endpoints. For example, (0, 1] is the _left-open_ interval where `0 < x <= 1`, while [0, 1) is the _right-open_ interval where `0 <= x < 1`. diff --git a/content/en/quick-reference/glossary/kind.md b/content/en/quick-reference/glossary/kind.md new file mode 100644 index 000000000..a214dfbf1 --- /dev/null +++ b/content/en/quick-reference/glossary/kind.md @@ -0,0 +1,5 @@ +--- +title: kind +--- + +See [_page kind_](g). diff --git a/content/en/quick-reference/glossary/l10n.md b/content/en/quick-reference/glossary/l10n.md new file mode 100644 index 000000000..013d0ab55 --- /dev/null +++ b/content/en/quick-reference/glossary/l10n.md @@ -0,0 +1,5 @@ +--- +title: l10n +--- + +See [_localization_](g). diff --git a/content/en/getting-started/glossary/layout.md b/content/en/quick-reference/glossary/layout.md similarity index 52% rename from content/en/getting-started/glossary/layout.md rename to content/en/quick-reference/glossary/layout.md index 706e9439d..a4e6b33f1 100644 --- a/content/en/getting-started/glossary/layout.md +++ b/content/en/quick-reference/glossary/layout.md @@ -2,4 +2,4 @@ title: layout --- -See [template](g). +See [_template_](g). diff --git a/content/en/quick-reference/glossary/leaf-bundle.md b/content/en/quick-reference/glossary/leaf-bundle.md new file mode 100644 index 000000000..aa41384ee --- /dev/null +++ b/content/en/quick-reference/glossary/leaf-bundle.md @@ -0,0 +1,6 @@ +--- +title: leaf bundle +reference: /content-management/page-bundles/ +--- + +A _leaf bundle_ is a directory that contains an `index.md` file and zero or more [_resources_](g). Analogous to a physical leaf, a leaf bundle is at the end of a [_branch bundle_](g). It has no descendants. diff --git a/content/en/quick-reference/glossary/lexer.md b/content/en/quick-reference/glossary/lexer.md new file mode 100644 index 000000000..a46223148 --- /dev/null +++ b/content/en/quick-reference/glossary/lexer.md @@ -0,0 +1,5 @@ +--- +title: lexer +--- + +A _lexer_ is a software component that identifies keywords, identifiers, operators, numbers, and other basic building blocks of a programming language within the input text. diff --git a/content/en/quick-reference/glossary/list-page.md b/content/en/quick-reference/glossary/list-page.md new file mode 100644 index 000000000..b58ee4a35 --- /dev/null +++ b/content/en/quick-reference/glossary/list-page.md @@ -0,0 +1,5 @@ +--- +title: list page +--- + +A list page is any [_page kind_](g) that receives a page [_collection_](g) in [_context_](g). This includes the home page, [section pages](g), [taxonomy pages](g), and [term pages](g). diff --git a/content/en/quick-reference/glossary/list-template.md b/content/en/quick-reference/glossary/list-template.md new file mode 100644 index 000000000..9a12a275f --- /dev/null +++ b/content/en/quick-reference/glossary/list-template.md @@ -0,0 +1,5 @@ +--- +title: list template +--- + +A _list template_ is any [_template_](g) that renders a [_list page_](g). This includes home, [_section_](g), [_taxonomy_](g), and [_term_](g) templates. diff --git a/content/en/quick-reference/glossary/localization.md b/content/en/quick-reference/glossary/localization.md new file mode 100644 index 000000000..01f450635 --- /dev/null +++ b/content/en/quick-reference/glossary/localization.md @@ -0,0 +1,6 @@ +--- +title: localization +reference: /content-management/multilingual/ +--- + +The term _localization_ refers to the process of adapting a site to meet language and regional requirements. This includes translations, date formats, number formats, currency formats, and collation order. diff --git a/content/en/quick-reference/glossary/logical-path.md b/content/en/quick-reference/glossary/logical-path.md new file mode 100644 index 000000000..aa5ce9374 --- /dev/null +++ b/content/en/quick-reference/glossary/logical-path.md @@ -0,0 +1,8 @@ +--- +title: logical path +reference: /methods/page/path/#examples +--- + +{{< new-in 0.123.0 />}} + +A _logical path_ is a page or page resource identifier derived from the file path, excluding its extension and language identifier. This value is neither a file path nor a URL. Starting with a file path relative to the `content` directory, Hugo determines the logical path by stripping the file extension and language identifier, converting to lower case, then replacing spaces with hyphens. diff --git a/content/en/quick-reference/glossary/map.md b/content/en/quick-reference/glossary/map.md new file mode 100644 index 000000000..b4605d20b --- /dev/null +++ b/content/en/quick-reference/glossary/map.md @@ -0,0 +1,6 @@ +--- +title: map +reference: https://go.dev/ref/spec#Map_types +--- + +A _map_ is an unordered group of elements, each indexed by a unique key. diff --git a/content/en/quick-reference/glossary/markdown-attribute.md b/content/en/quick-reference/glossary/markdown-attribute.md new file mode 100644 index 000000000..ccbcefd66 --- /dev/null +++ b/content/en/quick-reference/glossary/markdown-attribute.md @@ -0,0 +1,6 @@ +--- +title: Markdown attribute +reference: /content-management/markdown-attributes/ +--- + +A _Markdown attribute_ is a key-value pair attached to a Markdown element. These attributes are commonly used to add HTML attributes, like `class` and `id`, to the element when it's rendered into HTML. They provide a way to extend the basic Markdown syntax and add more semantic meaning or styling hooks to your content. diff --git a/content/en/quick-reference/glossary/marshal.md b/content/en/quick-reference/glossary/marshal.md new file mode 100644 index 000000000..3bb1623f5 --- /dev/null +++ b/content/en/quick-reference/glossary/marshal.md @@ -0,0 +1,6 @@ +--- +title: marshal +reference: /functions/transform/remarshal/ +--- + +To _marshal_ is to transform a data structure into a serialized object. For example, transforming a [_map_](g) into a JSON string. diff --git a/content/en/quick-reference/glossary/method.md b/content/en/quick-reference/glossary/method.md new file mode 100644 index 000000000..b7618bbf9 --- /dev/null +++ b/content/en/quick-reference/glossary/method.md @@ -0,0 +1,5 @@ +--- +title: method +--- + +Used within a [_template action_](g) and associated with an [_object_](g), a _method_ takes zero or more [_arguments_](g) and either returns a value or performs an action. For example, `.IsHome` is a method on the `.Page` object which returns `true` if the current page is the home page. See also [_function_](g). diff --git a/content/en/quick-reference/glossary/module.md b/content/en/quick-reference/glossary/module.md new file mode 100644 index 000000000..90c8ff80b --- /dev/null +++ b/content/en/quick-reference/glossary/module.md @@ -0,0 +1,6 @@ +--- +title: module +reference: /hugo-modules/ +--- + +A _module_ is a packaged combination of [_archetypes_](g), assets, content, data, [_templates_](g), translation tables, static files, or configuration settings. A module may serve as the basis for a new site, or to augment an existing site. diff --git a/content/en/quick-reference/glossary/node.md b/content/en/quick-reference/glossary/node.md new file mode 100644 index 000000000..b722e07c8 --- /dev/null +++ b/content/en/quick-reference/glossary/node.md @@ -0,0 +1,5 @@ +--- +title: node +--- + +A _node_ is a class of [_page kinds_](g) including `home`, `section`, `taxonomy`, and `term`. diff --git a/content/en/getting-started/glossary/noop.md b/content/en/quick-reference/glossary/noop.md similarity index 100% rename from content/en/getting-started/glossary/noop.md rename to content/en/quick-reference/glossary/noop.md diff --git a/content/en/quick-reference/glossary/object.md b/content/en/quick-reference/glossary/object.md new file mode 100644 index 000000000..216609d0d --- /dev/null +++ b/content/en/quick-reference/glossary/object.md @@ -0,0 +1,5 @@ +--- +title: object +--- + +An _object_ is a data structure with or without associated [_methods_](g). diff --git a/content/en/quick-reference/glossary/ordered-taxonomy.md b/content/en/quick-reference/glossary/ordered-taxonomy.md new file mode 100644 index 000000000..7e0e2763d --- /dev/null +++ b/content/en/quick-reference/glossary/ordered-taxonomy.md @@ -0,0 +1,8 @@ +--- +title: ordered taxonomy +--- + +Created by invoking the [`Alphabetical`] or [`ByCount`] method on a [`Taxonomy`](g) object, which is a [_map_](g), an _ordered taxonomy_ is a [_slice_](g), where each element is an object that contains the [_term_](g) and a slice of its [weighted pages](g). + +[`Alphabetical`]: /methods/taxonomy/alphabetical/ +[`ByCount`]: /methods/taxonomy/bycount/ diff --git a/content/en/quick-reference/glossary/output-format.md b/content/en/quick-reference/glossary/output-format.md new file mode 100644 index 000000000..9004dc223 --- /dev/null +++ b/content/en/quick-reference/glossary/output-format.md @@ -0,0 +1,6 @@ +--- +title: output format +reference: /templates/output-formats/ +--- + +An _output format_ is a collection of settings that defines how Hugo renders a file when building a site. For example, `html`, `rss`, and `json` are built-in output formats. You can create multiple output formats and control their generation based on [page kind](g), or by enabling one or more output formats for specific pages. diff --git a/content/en/quick-reference/glossary/page-bundle.md b/content/en/quick-reference/glossary/page-bundle.md new file mode 100644 index 000000000..af76da2aa --- /dev/null +++ b/content/en/quick-reference/glossary/page-bundle.md @@ -0,0 +1,6 @@ +--- +title: page bundle +reference: /content-management/page-bundles/ +--- + +A _page bundle_ is a directory that encapsulates both content and associated [_resources_](g). There are two types of page bundles: [_leaf bundles_](g) and [_branch bundles_](g). diff --git a/content/en/quick-reference/glossary/page-collection.md b/content/en/quick-reference/glossary/page-collection.md new file mode 100644 index 000000000..f078ecf27 --- /dev/null +++ b/content/en/quick-reference/glossary/page-collection.md @@ -0,0 +1,5 @@ +--- +title: page collection +--- + +A _page collection_ is a slice of `Page` objects. diff --git a/content/en/quick-reference/glossary/page-kind.md b/content/en/quick-reference/glossary/page-kind.md new file mode 100644 index 000000000..ee47fe010 --- /dev/null +++ b/content/en/quick-reference/glossary/page-kind.md @@ -0,0 +1,6 @@ +--- +title: page kind +reference: /methods/page/kind/ +--- + +A _page kind_ is a classification of pages, one of `home`, `page`, `section`, `taxonomy`, or `term`. diff --git a/content/en/quick-reference/glossary/page-resource.md b/content/en/quick-reference/glossary/page-resource.md new file mode 100644 index 000000000..dab119eb4 --- /dev/null +++ b/content/en/quick-reference/glossary/page-resource.md @@ -0,0 +1,5 @@ +--- +title: page resource +--- + +A _page resource_ is a file within a [_page bundle_](g). diff --git a/content/en/quick-reference/glossary/pager.md b/content/en/quick-reference/glossary/pager.md new file mode 100644 index 000000000..f58874e4a --- /dev/null +++ b/content/en/quick-reference/glossary/pager.md @@ -0,0 +1,5 @@ +--- +title: pager +--- + +Created during [_pagination_](g), a _pager_ contains a subset of a list page and navigation links to other pagers. diff --git a/content/en/quick-reference/glossary/paginate.md b/content/en/quick-reference/glossary/paginate.md new file mode 100644 index 000000000..d2467e098 --- /dev/null +++ b/content/en/quick-reference/glossary/paginate.md @@ -0,0 +1,5 @@ +--- +title: paginate +--- + +To _paginate_ is to split a list page into two or more subsets. diff --git a/content/en/quick-reference/glossary/pagination.md b/content/en/quick-reference/glossary/pagination.md new file mode 100644 index 000000000..136341dbf --- /dev/null +++ b/content/en/quick-reference/glossary/pagination.md @@ -0,0 +1,6 @@ +--- +title: pagination +reference: /templates/pagination +--- + +The term _pagination_ refers to the process of [_paginating_](g) a list page. diff --git a/content/en/quick-reference/glossary/paginator.md b/content/en/quick-reference/glossary/paginator.md new file mode 100644 index 000000000..4d197348d --- /dev/null +++ b/content/en/quick-reference/glossary/paginator.md @@ -0,0 +1,5 @@ +--- +title: paginator +--- + +A _paginator_ is a collection of [_pagers_](g). diff --git a/content/en/quick-reference/glossary/parameter.md b/content/en/quick-reference/glossary/parameter.md new file mode 100644 index 000000000..f1a45ea34 --- /dev/null +++ b/content/en/quick-reference/glossary/parameter.md @@ -0,0 +1,5 @@ +--- +title: parameter +--- + +A _parameter_ is typically a user-defined key-value pair at the site or page level, but may also refer to a configuration setting or an [_argument_](g). diff --git a/content/en/quick-reference/glossary/partial.md b/content/en/quick-reference/glossary/partial.md new file mode 100644 index 000000000..a5dd5e51a --- /dev/null +++ b/content/en/quick-reference/glossary/partial.md @@ -0,0 +1,5 @@ +--- +title: partial +--- + +A _partial_ is a [_template_](g) called from any other template including [_shortcodes_](g), [render hooks](g), and other partials. A partial either renders something or returns something. A partial can also call itself, for example, to [_walk_](g) a data structure. diff --git a/content/en/quick-reference/glossary/permalink.md b/content/en/quick-reference/glossary/permalink.md new file mode 100644 index 000000000..45651de83 --- /dev/null +++ b/content/en/quick-reference/glossary/permalink.md @@ -0,0 +1,5 @@ +--- +title: permalink +--- + +A _permalink_ is the absolute URL of a published resource or a rendered page, including scheme and host. diff --git a/content/en/getting-started/glossary/pipe.md b/content/en/quick-reference/glossary/pipe.md similarity index 50% rename from content/en/getting-started/glossary/pipe.md rename to content/en/quick-reference/glossary/pipe.md index 4daab1999..f587eeccf 100644 --- a/content/en/getting-started/glossary/pipe.md +++ b/content/en/quick-reference/glossary/pipe.md @@ -2,4 +2,4 @@ title: pipe --- -See [pipeline](g). +See [_pipeline_](g). diff --git a/content/en/quick-reference/glossary/pipeline.md b/content/en/quick-reference/glossary/pipeline.md new file mode 100644 index 000000000..2bb3fa3b7 --- /dev/null +++ b/content/en/quick-reference/glossary/pipeline.md @@ -0,0 +1,7 @@ +--- +title: pipeline +--- + +Within a [_template action_](g), a _pipeline_ is a possibly chained sequence of values, [_function_](g) calls, or [_method_](g) calls. Functions and methods in the pipeline may take multiple [_arguments_](g). + +A pipeline may be *chained* by separating a sequence of commands with pipeline characters (`|`). In a chained pipeline, the result of each command is passed as the last argument to the following command. The output of the final command in the pipeline is the value of the pipeline. diff --git a/content/en/quick-reference/glossary/pretty-url.md b/content/en/quick-reference/glossary/pretty-url.md new file mode 100644 index 000000000..b15ef9f0f --- /dev/null +++ b/content/en/quick-reference/glossary/pretty-url.md @@ -0,0 +1,5 @@ +--- +title: pretty URL +--- + +A _pretty URL_ is a URL that does not include a file extension. diff --git a/content/en/getting-started/glossary/publish.md b/content/en/quick-reference/glossary/publish.md similarity index 57% rename from content/en/getting-started/glossary/publish.md rename to content/en/quick-reference/glossary/publish.md index 1a7a491af..743e87a3e 100644 --- a/content/en/getting-started/glossary/publish.md +++ b/content/en/quick-reference/glossary/publish.md @@ -2,4 +2,4 @@ title: publish --- -See [build](g). +See [_build_](g). diff --git a/content/en/quick-reference/glossary/raw-string-literal.md b/content/en/quick-reference/glossary/raw-string-literal.md new file mode 100644 index 000000000..7465c6837 --- /dev/null +++ b/content/en/quick-reference/glossary/raw-string-literal.md @@ -0,0 +1,6 @@ +--- +title: raw string literal +reference: https://go.dev/ref/spec#String_literals +--- + +A _raw string literal_ is a character sequences between backticks, as in \`bar\`. Within the backticks, any character may appear except a backtick. Backslashes have no special meaning and the string may contain newlines. Carriage return characters (`\r`) inside raw string literals are discarded from the raw string value. diff --git a/content/en/quick-reference/glossary/regular-page.md b/content/en/quick-reference/glossary/regular-page.md new file mode 100644 index 000000000..084408e57 --- /dev/null +++ b/content/en/quick-reference/glossary/regular-page.md @@ -0,0 +1,5 @@ +--- +title: regular page +--- + +A _regular page_ is a page with the "page" [_page kind_](g). See also [_section page_](g). diff --git a/content/en/quick-reference/glossary/relative-permalink.md b/content/en/quick-reference/glossary/relative-permalink.md new file mode 100644 index 000000000..a272133a3 --- /dev/null +++ b/content/en/quick-reference/glossary/relative-permalink.md @@ -0,0 +1,5 @@ +--- +title: relative permalink +--- + +A _relative permalink_ is the host-relative URL of a published resource or a rendered page. diff --git a/content/en/quick-reference/glossary/remote-resource.md b/content/en/quick-reference/glossary/remote-resource.md new file mode 100644 index 000000000..163749763 --- /dev/null +++ b/content/en/quick-reference/glossary/remote-resource.md @@ -0,0 +1,5 @@ +--- +title: remote resource +--- + +A _remote resource_ is a file on a remote server, accessible via HTTP or HTTPS. diff --git a/content/en/quick-reference/glossary/render-hook.md b/content/en/quick-reference/glossary/render-hook.md new file mode 100644 index 000000000..2cdb98e05 --- /dev/null +++ b/content/en/quick-reference/glossary/render-hook.md @@ -0,0 +1,6 @@ +--- +title: render hook +reference: /render-hooks +--- + +A _render hook_ is a [_template_](g) that overrides standard Markdown rendering. diff --git a/content/en/quick-reference/glossary/resource-type.md b/content/en/quick-reference/glossary/resource-type.md new file mode 100644 index 000000000..64d9c27ab --- /dev/null +++ b/content/en/quick-reference/glossary/resource-type.md @@ -0,0 +1,8 @@ +--- +title: resource type +--- + +A _resource type_ is the main type of a resource's [media type]. Content files such as Markdown, HTML, AsciiDoc, Pandoc, reStructuredText, and Emacs Org Mode have resource type `page`. Other resource types include `image`, `video`, etc. Retrieve the resource type using the [`ResourceType`] method on a `Resource` object. + +[media type]: /methods/resource/mediatype/ +[`ResourceType`]: /methods/resource/resourcetype/ diff --git a/content/en/quick-reference/glossary/resource.md b/content/en/quick-reference/glossary/resource.md new file mode 100644 index 000000000..bd3a9d10d --- /dev/null +++ b/content/en/quick-reference/glossary/resource.md @@ -0,0 +1,7 @@ +--- +title: resource +--- + +A _resource_ is any file consumed by the build process to augment or generate content, structure, behavior, or presentation. For example: images, videos, content snippets, CSS, Sass, JavaScript, and data. + +Hugo supports three types of resources: [_global resources_](g), [_page resources_](g), and [_remote resources_](g). diff --git a/content/en/quick-reference/glossary/scalar.md b/content/en/quick-reference/glossary/scalar.md new file mode 100644 index 000000000..63ae27d3f --- /dev/null +++ b/content/en/quick-reference/glossary/scalar.md @@ -0,0 +1,5 @@ +--- +title: scalar +--- + +A _scalar_ is a single value, one of [_string_](g), [_integer_](g), [floating point](g), or [_boolean_](g). diff --git a/content/en/quick-reference/glossary/scope.md b/content/en/quick-reference/glossary/scope.md new file mode 100644 index 000000000..5a13312a6 --- /dev/null +++ b/content/en/quick-reference/glossary/scope.md @@ -0,0 +1,5 @@ +--- +title: scope +--- + +The term _scope_ refers to the specific region of code where a [_variable_](g) or [_object_](g) is accessible. For example, a variable initialized in one [template](g) is not available within another. diff --git a/content/en/quick-reference/glossary/scratch-pad.md b/content/en/quick-reference/glossary/scratch-pad.md new file mode 100644 index 000000000..f94d4fd5b --- /dev/null +++ b/content/en/quick-reference/glossary/scratch-pad.md @@ -0,0 +1,8 @@ +--- +title: scratch pad +--- + +Conceptually, a _scratch pad_ is a [_map_](g) with [_methods_](g) to set, get, update, and delete values. Attach the data structure to a `Page` or `Site` object using the [`Store`] method, or create a locally scoped scratch pad using the [`newScratch`] function. + +[`Store`]: /methods/page/store/ +[`newScratch`]: /functions/collections/newscratch/ diff --git a/content/en/quick-reference/glossary/section-page.md b/content/en/quick-reference/glossary/section-page.md new file mode 100644 index 000000000..fd84ed5f2 --- /dev/null +++ b/content/en/quick-reference/glossary/section-page.md @@ -0,0 +1,5 @@ +--- +title: section page +--- + +A _section page_ is a page with the "section" [_page kind_](g). Typically a listing of [_regular pages_](g) and/or other section pages within the current [_section_](g). diff --git a/content/en/quick-reference/glossary/section.md b/content/en/quick-reference/glossary/section.md new file mode 100644 index 000000000..45d1203e0 --- /dev/null +++ b/content/en/quick-reference/glossary/section.md @@ -0,0 +1,5 @@ +--- +title: section +--- + +A _section_ is a top-level content directory or any content directory containing an `_index.md` file. diff --git a/content/en/quick-reference/glossary/segment.md b/content/en/quick-reference/glossary/segment.md new file mode 100644 index 000000000..5851a8825 --- /dev/null +++ b/content/en/quick-reference/glossary/segment.md @@ -0,0 +1,5 @@ +--- +title: segment +--- + +A _segment_ is a subset of a site, filtered by [_logical path_](g), language, [_page kind_](g), or [_output format_](g). diff --git a/content/en/quick-reference/glossary/shortcode.md b/content/en/quick-reference/glossary/shortcode.md new file mode 100644 index 000000000..bfc2f6c51 --- /dev/null +++ b/content/en/quick-reference/glossary/shortcode.md @@ -0,0 +1,6 @@ +--- +title: shortcode +reference: /content-management/shortcodes +--- + +A _shortcode_ is a [_template_](g) invoked within markup, accepting any number of [_arguments_](g). They can be used with any [content format](g) to insert elements such as videos, images, and social media embeds into your content. diff --git a/content/en/quick-reference/glossary/slice.md b/content/en/quick-reference/glossary/slice.md new file mode 100644 index 000000000..5d83bed6b --- /dev/null +++ b/content/en/quick-reference/glossary/slice.md @@ -0,0 +1,6 @@ +--- +title: slice +reference: https://go.dev/ref/spec#Slice_types +--- + +A _slice_ is a numbered sequence of elements. Unlike Go's [_array_](g) data type, slices are dynamically sized. [_Elements_](g) within a slice can be [_scalars_](g), [_arrays_](g), [_maps_](g), pages, or other slices. diff --git a/content/en/quick-reference/glossary/string.md b/content/en/quick-reference/glossary/string.md new file mode 100644 index 000000000..54ed4c1d1 --- /dev/null +++ b/content/en/quick-reference/glossary/string.md @@ -0,0 +1,5 @@ +--- +title: string +--- + +A _string_ is a sequence of bytes. For example, `"What is 6 times 7?"`. diff --git a/content/en/quick-reference/glossary/taxonomic-weight.md b/content/en/quick-reference/glossary/taxonomic-weight.md new file mode 100644 index 000000000..682bc056c --- /dev/null +++ b/content/en/quick-reference/glossary/taxonomic-weight.md @@ -0,0 +1,6 @@ +--- +title: taxonomic weight +reference: content-management/taxonomies/#order-taxonomies +--- + +Defined in front matter and unique to each taxonomy, a _taxonomic weight_ is a [_weight_](g) that determines the sort order of page collections contained within a [`Taxonomy`](g) object. diff --git a/content/en/quick-reference/glossary/taxonomy-object.md b/content/en/quick-reference/glossary/taxonomy-object.md new file mode 100644 index 000000000..590490377 --- /dev/null +++ b/content/en/quick-reference/glossary/taxonomy-object.md @@ -0,0 +1,5 @@ +--- +title: taxonomy object +--- + +A _taxonomy object_ is a [_map_](g) of [_terms_](g) and the [weighted pages](g) associated with each term. diff --git a/content/en/quick-reference/glossary/taxonomy-page.md b/content/en/quick-reference/glossary/taxonomy-page.md new file mode 100644 index 000000000..6b62f0912 --- /dev/null +++ b/content/en/quick-reference/glossary/taxonomy-page.md @@ -0,0 +1,5 @@ +--- +title: taxonomy page +--- + +A _taxonomy page_ is a page with the "taxonomy" [_page kind_](g). Typically a listing of [_terms_](g) within a given [_taxonomy_](g). diff --git a/content/en/quick-reference/glossary/taxonomy.md b/content/en/quick-reference/glossary/taxonomy.md new file mode 100644 index 000000000..ce35a634c --- /dev/null +++ b/content/en/quick-reference/glossary/taxonomy.md @@ -0,0 +1,5 @@ +--- +title: taxonomy +reference: /content-management/taxonomies +--- +A _taxonomy_ is a group of related [_terms_](g) used to classify content. For example, a "colors" taxonomy might include the terms "red", "green", and "blue". diff --git a/content/en/quick-reference/glossary/template-action.md b/content/en/quick-reference/glossary/template-action.md new file mode 100644 index 000000000..d9a6c635c --- /dev/null +++ b/content/en/quick-reference/glossary/template-action.md @@ -0,0 +1,6 @@ +--- +title: template action +reference: https://pkg.go.dev/text/template#hdr-Actions +--- + +A data evaluation or control structure within a [_template_](g), delimited by "{{" and "}}". diff --git a/content/en/quick-reference/glossary/template.md b/content/en/quick-reference/glossary/template.md new file mode 100644 index 000000000..d442c0a22 --- /dev/null +++ b/content/en/quick-reference/glossary/template.md @@ -0,0 +1,6 @@ +--- +title: template +reference: /templates +--- + +A _template_ is a file with [_template actions_](g), located within the `layouts` directory of a project, theme, or module. diff --git a/content/en/quick-reference/glossary/term-page.md b/content/en/quick-reference/glossary/term-page.md new file mode 100644 index 000000000..78eabc11f --- /dev/null +++ b/content/en/quick-reference/glossary/term-page.md @@ -0,0 +1,5 @@ +--- +title: term page +--- + +A _term page_ is a page with the "term" [_page kind_](g). Typically a listing of [_regular pages_](g) and [_section pages_](g) with a given [_term_](g). diff --git a/content/en/quick-reference/glossary/term.md b/content/en/quick-reference/glossary/term.md new file mode 100644 index 000000000..cafd92585 --- /dev/null +++ b/content/en/quick-reference/glossary/term.md @@ -0,0 +1,6 @@ +--- +title: term +reference: /content-management/taxonomies +--- + +A _term_ is a member of a [_taxonomy_](g), used to classify content. diff --git a/content/en/quick-reference/glossary/theme.md b/content/en/quick-reference/glossary/theme.md new file mode 100644 index 000000000..84b9c684a --- /dev/null +++ b/content/en/quick-reference/glossary/theme.md @@ -0,0 +1,5 @@ +--- +title: theme +--- + +A _theme_ is a packaged combination of [_archetypes_](g), assets, content, data, [_templates_](g), translation tables, static files, or configuration settings. A theme may serve as the basis for a new site, or to augment an existing site. diff --git a/content/en/quick-reference/glossary/token.md b/content/en/quick-reference/glossary/token.md new file mode 100644 index 000000000..f8c12d570 --- /dev/null +++ b/content/en/quick-reference/glossary/token.md @@ -0,0 +1,5 @@ +--- +title: token +--- + +A _token_ is an identifier within a format string, beginning with a colon and replaced with a value when rendered. For example, use tokens in format strings for both [permalinks](/content-management/urls/#permalinks) and [dates](/functions/time/format/#localization). diff --git a/content/en/getting-started/glossary/type.md b/content/en/quick-reference/glossary/type.md similarity index 100% rename from content/en/getting-started/glossary/type.md rename to content/en/quick-reference/glossary/type.md diff --git a/content/en/quick-reference/glossary/ugly-url.md b/content/en/quick-reference/glossary/ugly-url.md new file mode 100644 index 000000000..4083f9378 --- /dev/null +++ b/content/en/quick-reference/glossary/ugly-url.md @@ -0,0 +1,5 @@ +--- +title: ugly URL +--- + +An _ugly URL_ is a URL that includes a file extension. diff --git a/content/en/quick-reference/glossary/unmarshal.md b/content/en/quick-reference/glossary/unmarshal.md new file mode 100644 index 000000000..0ed548a21 --- /dev/null +++ b/content/en/quick-reference/glossary/unmarshal.md @@ -0,0 +1,6 @@ +--- +title: unmarshal +reference: /functions/transform/unmarshal/ +--- + +To _unmarshal_ is to transform a serialized object into a data structure. For example, transforming a JSON file into a [_map_](g) that you can access within a template. diff --git a/content/en/quick-reference/glossary/variable.md b/content/en/quick-reference/glossary/variable.md new file mode 100644 index 000000000..f8139a41f --- /dev/null +++ b/content/en/quick-reference/glossary/variable.md @@ -0,0 +1,5 @@ +--- +title: variable +--- + +A _variable_ is a user-defined [_identifier_](g) prepended with a `$` symbol, representing a value of any data type, initialized or assigned within a [_template action_](g). For example, `$foo` and `$bar` are variables. diff --git a/content/en/quick-reference/glossary/walk.md b/content/en/quick-reference/glossary/walk.md new file mode 100644 index 000000000..09f9ecb20 --- /dev/null +++ b/content/en/quick-reference/glossary/walk.md @@ -0,0 +1,5 @@ +--- +title: walk +--- + +To _walk_ is to recursively traverse a nested data structure. For example, rendering a multilevel menu. diff --git a/content/en/quick-reference/glossary/weight.md b/content/en/quick-reference/glossary/weight.md new file mode 100644 index 000000000..deb9e6dc0 --- /dev/null +++ b/content/en/quick-reference/glossary/weight.md @@ -0,0 +1,5 @@ +--- +title: weight +--- + +A _weight_ is a numeric value used to position an element within a sorted [collection](g). Assign weights using non-zero integers. Lighter items float to the top, while heavier items sink to the bottom. Unweighted or zero-weighted elements are placed at the end of the collection. Weights are typically assigned to pages, menu entries, languages, and output formats. diff --git a/content/en/quick-reference/glossary/weighted-page.md b/content/en/quick-reference/glossary/weighted-page.md new file mode 100644 index 000000000..e6cf8d6db --- /dev/null +++ b/content/en/quick-reference/glossary/weighted-page.md @@ -0,0 +1,5 @@ +--- +title: weighted page +--- + +Contained within a [_taxonomy object_](g), a _weighted page_ is a [_map_](g) with two [_elements_](g): a `Page` object, and its [_taxonomic weight_](g) as defined in front matter. Access the elements using the `Page` and `Weight` keys. diff --git a/content/en/getting-started/glossary/zero-time.md b/content/en/quick-reference/glossary/zero-time.md similarity index 100% rename from content/en/getting-started/glossary/zero-time.md rename to content/en/quick-reference/glossary/zero-time.md diff --git a/content/en/quick-reference/methods.md b/content/en/quick-reference/methods.md index abd1db709..5b4797f3a 100644 --- a/content/en/quick-reference/methods.md +++ b/content/en/quick-reference/methods.md @@ -6,8 +6,8 @@ keywords: [] menu: docs: parent: quick-reference - weight: 40 -weight: 40 + weight: 50 +weight: 50 toc: true --- diff --git a/content/en/quick-reference/page-collections.md b/content/en/quick-reference/page-collections.md index c86929b5b..836af3ea2 100644 --- a/content/en/quick-reference/page-collections.md +++ b/content/en/quick-reference/page-collections.md @@ -6,8 +6,8 @@ keywords: [] menu: docs: parent: quick-reference - weight: 50 -weight: 50 + weight: 60 +weight: 60 toc: true --- diff --git a/content/en/render-hooks/_common/pageinner.md b/content/en/render-hooks/_common/pageinner.md index 92bd63c56..6f2622880 100644 --- a/content/en/render-hooks/_common/pageinner.md +++ b/content/en/render-hooks/_common/pageinner.md @@ -4,7 +4,7 @@ _comment: Do not remove front matter. ## PageInner details -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} The primary use case for `PageInner` is to resolve links and [page resources](g) relative to an included `Page`. For example, create an "include" shortcode to compose a page from multiple content files, while preserving a global context for footnotes and the table of contents: diff --git a/content/en/render-hooks/_index.md b/content/en/render-hooks/_index.md index 8cf72c4e8..668808f44 100644 --- a/content/en/render-hooks/_index.md +++ b/content/en/render-hooks/_index.md @@ -1,6 +1,6 @@ --- title: Render hooks -linkTitle: In this section + description: Create render hooks to override the rendering of Markdown to HTML. categories: [] keywords: [] diff --git a/content/en/render-hooks/blockquotes.md b/content/en/render-hooks/blockquotes.md index b0fee7239..bdeb06af9 100755 --- a/content/en/render-hooks/blockquotes.md +++ b/content/en/render-hooks/blockquotes.md @@ -12,7 +12,7 @@ weight: 30 toc: true --- -{{< new-in 0.132.0 >}} +{{< new-in 0.132.0 />}} ## Context @@ -24,13 +24,13 @@ Blockquote render hook templates receive the following [context](g): ###### AlertTitle -{{< new-in 0.134.0 >}} +{{< new-in 0.134.0 />}} (`template.HTML`) Applicable when [`Type`](#type) is `alert`, this is the alert title. See the [alerts](#alerts) section below. ###### AlertSign -{{< new-in 0.134.0 >}} +{{< new-in 0.134.0 />}} (`string`) Applicable when [`Type`](#type) is `alert`, this is the alert sign. Typically used to indicate whether an alert is graphically foldable, this is one of `+`, `-`, or an empty string. See the [alerts](#alerts) section below. diff --git a/content/en/render-hooks/code-blocks.md b/content/en/render-hooks/code-blocks.md index 5022fd3ae..7999dbeb8 100755 --- a/content/en/render-hooks/code-blocks.md +++ b/content/en/render-hooks/code-blocks.md @@ -78,7 +78,7 @@ Code block render hook templates receive the following [context](g): ###### PageInner -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} (`page`) A reference to a page nested via the [`RenderShortcodes`] method. [See details](#pageinner-details). diff --git a/content/en/render-hooks/headings.md b/content/en/render-hooks/headings.md index 2b32797cc..7c9d6b6fe 100755 --- a/content/en/render-hooks/headings.md +++ b/content/en/render-hooks/headings.md @@ -41,7 +41,7 @@ title = true ###### PageInner -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} (`page`) A reference to a page nested via the [`RenderShortcodes`] method. [See details](#pageinner-details). diff --git a/content/en/render-hooks/images.md b/content/en/render-hooks/images.md index 900df3c2f..63f294081 100755 --- a/content/en/render-hooks/images.md +++ b/content/en/render-hooks/images.md @@ -59,7 +59,7 @@ block = true ###### PageInner -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} (`page`) A reference to a page nested via the [`RenderShortcodes`] method. [See details](#pageinner-details). @@ -122,7 +122,7 @@ wrapStandAloneImageWithinParagraph = false ## Default -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} Hugo includes an [embedded image render hook] to resolve Markdown image destinations. Disabled by default, you can enable it in your site configuration: diff --git a/content/en/render-hooks/links.md b/content/en/render-hooks/links.md index 7700a540e..89044c662 100755 --- a/content/en/render-hooks/links.md +++ b/content/en/render-hooks/links.md @@ -38,7 +38,7 @@ Link render hook templates receive the following context: ###### PageInner -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} (`page`) A reference to a page nested via the [`RenderShortcodes`] method. [See details](#pageinner-details). @@ -90,7 +90,7 @@ To include a `rel` attribute set to `external` for external links: ## Default -{{< new-in 0.123.0 >}} +{{< new-in 0.123.0 />}} Hugo includes an [embedded link render hook] to resolve Markdown link destinations. Disabled by default, you can enable it in your site configuration: diff --git a/content/en/render-hooks/passthrough.md b/content/en/render-hooks/passthrough.md index 95bc54d88..798225061 100755 --- a/content/en/render-hooks/passthrough.md +++ b/content/en/render-hooks/passthrough.md @@ -12,7 +12,7 @@ weight: 80 toc: true --- -{{< new-in 0.132.0 >}} +{{< new-in 0.132.0 />}} ## Overview diff --git a/content/en/render-hooks/tables.md b/content/en/render-hooks/tables.md index 4252d6de0..d131664fc 100755 --- a/content/en/render-hooks/tables.md +++ b/content/en/render-hooks/tables.md @@ -12,7 +12,7 @@ weight: 90 toc: true --- -{{< new-in 0.134.0 >}} +{{< new-in 0.134.0 />}} ## Context diff --git a/content/en/shortcodes/_index.md b/content/en/shortcodes/_index.md index e525ef5ef..2d9a8fdd6 100644 --- a/content/en/shortcodes/_index.md +++ b/content/en/shortcodes/_index.md @@ -1,6 +1,6 @@ --- title: Shortcodes -linkTitle: In this section + description: Insert elements such as videos, images, and social media embeds into your content using Hugo's embedded shortcodes. categories: [] keywords: [] diff --git a/content/en/shortcodes/comment.md b/content/en/shortcodes/comment.md index 208277bf5..1600c09d3 100755 --- a/content/en/shortcodes/comment.md +++ b/content/en/shortcodes/comment.md @@ -9,7 +9,7 @@ menu: parent: shortcodes weight: weight: -expiryDate: 2025-01-22 # with v0.142.0 and later use HTML comments instead +expiryDate: 2025-01-22 # deprecated 2025-02-01 in v0.143.0 and immediately removed from the documentation --- {{% note %}} @@ -18,7 +18,7 @@ To override Hugo's embedded `comment` shortcode, copy the [source code] to a fil [source code]: {{% eturl comment %}} {{% /note %}} -{{< new-in "0.137.1" >}} +{{< new-in 0.137.1 />}} Use the `comment` shortcode to include comments in your content. Hugo will ignore the text within these comments when rendering your site. diff --git a/content/en/shortcodes/details.md b/content/en/shortcodes/details.md index f6e5ae691..f30f81d75 100755 --- a/content/en/shortcodes/details.md +++ b/content/en/shortcodes/details.md @@ -11,7 +11,7 @@ weight: toc: true --- -{{< new-in 0.140.0 >}} +{{< new-in 0.140.0 />}} {{% note %}} To override Hugo's embedded `details` shortcode, copy the [source code] to a file with the same name in the `layouts/shortcodes` directory. diff --git a/content/en/shortcodes/gist.md b/content/en/shortcodes/gist.md index dc85f282c..1c740bccb 100755 --- a/content/en/shortcodes/gist.md +++ b/content/en/shortcodes/gist.md @@ -8,13 +8,19 @@ menu: parent: shortcodes weight: weight: +expiryDate: 2027-02-01 # deprecated 2025-02-01 in v0.143.0 --- -{{% note %}} -To override Hugo's embedded `gist` shortcode, copy the [source code] to a file with the same name in the `layouts/shortcodes` directory. +{{% deprecated-in 0.143.0 %}} +The `gist` shortcode was deprecated in version 0.143.0 and will be removed in a future release. To continue embedding GitHub Gists in your content, you'll need to create a custom shortcode: -[source code]: {{% eturl gist %}} -{{% /note %}} +1. Create a new file: Create a file named `gist.html` within the `layouts/shortcodes` directory. +2. Copy the source code: Paste the [original source code] of the gist shortcode into the newly created `gist.html` file. + +This will allow you to maintain the functionality of embedding GitHub Gists in your content after the deprecation of the original shortcode. + +[original source code]: {{% eturl gist %}} +{{% /deprecated-in %}} To display a GitHub gist with this URL: @@ -28,14 +34,8 @@ Include this in your Markdown: {{}} ``` -This will display all files in the gist alphabetically by file name. - -{{< gist jmooring 23932424365401ffa5e9d9810102a477 >}} - To display a specific file within the gist: ```text {{}} ``` - -{{< gist jmooring 23932424365401ffa5e9d9810102a477 list.html >}} diff --git a/content/en/shortcodes/param.md b/content/en/shortcodes/param.md index 70866d4ba..bff659ec1 100755 --- a/content/en/shortcodes/param.md +++ b/content/en/shortcodes/param.md @@ -27,7 +27,7 @@ params: size: medium --- -We found a {{}} shirt. +We found a {{%/* param "color" */%}} shirt. {{< /code >}} Hugo renders this to: @@ -39,5 +39,5 @@ Hugo renders this to: Access nested values by [chaining](g) the [identifiers](g): ```text -{{}} +{{%/* param my.nested.param */%}} ``` diff --git a/content/en/shortcodes/qr.md b/content/en/shortcodes/qr.md index 15e06cbc3..a7a6d92cb 100755 --- a/content/en/shortcodes/qr.md +++ b/content/en/shortcodes/qr.md @@ -11,7 +11,7 @@ weight: toc: true --- -{{< new-in 0.141.0 >}} +{{< new-in 0.141.0 />}} {{% note %}} To override Hugo's embedded `qr` shortcode, copy the [source code] to a file with the same name in the `layouts/shortcodes` directory. @@ -44,7 +44,7 @@ https://gohugo.io Both of the above produce this image: -{{< qr text="https://gohugo.io" class="qrcode" />}} +{{< qr text="https://gohugo.io" class="qrcode" targetDir="images/qr" />}} To create a QR code for a phone number: @@ -52,7 +52,7 @@ To create a QR code for a phone number: {{}} ``` -{{< qr text="tel:+12065550101" class="qrcode" />}} +{{< qr text="tel:+12065550101" class="qrcode" targetDir="images/qr" />}} To create a QR code containing contact information in the [vCard] format: @@ -72,7 +72,7 @@ END:VCARD {{}} ``` -{{< qr level="low" scale=2 alt="QR code of vCard for John Smith" class="qrcode" >}} +{{< qr level="low" scale=2 alt="QR code of vCard for John Smith" class="qrcode" targetDir="images/qr" >}} BEGIN:VCARD VERSION:2.1 N;CHARSET=UTF-8:Smith;John;R.;Dr.;PhD diff --git a/content/en/shortcodes/vimeo.md b/content/en/shortcodes/vimeo.md index b82ad86d4..5ecdf5d02 100755 --- a/content/en/shortcodes/vimeo.md +++ b/content/en/shortcodes/vimeo.md @@ -46,7 +46,7 @@ id title : (`string`) The `title` attribute of the `iframe` element. -If you proivde a `class` or `title` you must use a named parameter for the `id`. +If you provide a `class` or `title` you must use a named parameter for the `id`. ```text {{}} diff --git a/content/en/shortcodes/x.md b/content/en/shortcodes/x.md index 6995d727f..e27bc996a 100755 --- a/content/en/shortcodes/x.md +++ b/content/en/shortcodes/x.md @@ -11,7 +11,7 @@ weight: toc: true --- -{{< new-in 0.141.0 >}} +{{< new-in 0.141.0 />}} {{% note %}} To override Hugo's embedded `x` shortcode, copy the [source code] to a file with the same name in the `layouts/shortcodes` directory. diff --git a/content/en/shortcodes/youtube.md b/content/en/shortcodes/youtube.md index 51e47a0c9..546529500 100755 --- a/content/en/shortcodes/youtube.md +++ b/content/en/shortcodes/youtube.md @@ -41,38 +41,38 @@ id : (`string`) The video `id`. Optional if the `id` is provided as a positional argument as shown in the example above. allowFullScreen -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`bool`) Whether the `iframe` element can activate full screen mode. Default is `true`. autoplay - {{< new-in 0.125.0 >}} + {{< new-in 0.125.0 />}} : (`bool`) Whether to automatically play the video. Forces `mute` to `true`. Default is `false`. class : (`string`) The `class` attribute of the wrapping `div` element. When specified, removes the `style` attributes from the `iframe` element and its wrapping `div` element. controls -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`bool`) Whether to display the video controls. Default is `true`. end -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`int`) The time, measured in seconds from the start of the video, when the player should stop playing the video. loading -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`string`) The loading attribute of the `iframe` element, either `eager` or `lazy`. Default is `eager`. loop -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`bool`) Whether to indefinitely repeat the video. Ignores the `start` and `end` arguments after the first play. Default is `false`. mute -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`bool`) Whether to mute the video. Always `true` when `autoplay` is `true`. Default is `false`. start -{{< new-in 0.125.0 >}} +{{< new-in 0.125.0 />}} : (`int`) The time, measured in seconds from the start of the video, when the player should start playing the video. title diff --git a/content/en/templates/404.md b/content/en/templates/404.md index 39df75c3d..ae18428fb 100644 --- a/content/en/templates/404.md +++ b/content/en/templates/404.md @@ -38,16 +38,16 @@ Your production server redirects the browser to the 404 page when a page is not Host|Capabilities and configuration :--|:-- -Amazon CloudFront|See [details](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/GeneratingCustomErrorResponses.html). -Amazon S3|See [details](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CustomErrorDocSupport.html). -Apache|See [details](https://httpd.apache.org/docs/2.4/custom-error.html). -Azure Static Web Apps|See [details](https://learn.microsoft.com/en-us/azure/static-web-apps/configuration#response-overrides). -Azure Storage|See [details](https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website#setting-up-a-static-website). -Caddy|See [details](https://caddyserver.com/docs/caddyfile/directives/handle_errors). -Cloudflare Pages|See [details](https://developers.cloudflare.com/pages/configuration/serving-pages/#not-found-behavior). -DigitalOcean App Platform|See [details](https://docs.digitalocean.com/products/app-platform/how-to/manage-static-sites/#configure-a-static-site). -Firebase|See [details](https://firebase.google.com/docs/hosting/full-config#404). +Amazon CloudFront|See [details](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/GeneratingCustomErrorResponses.html). +Amazon S3|See [details](https://docs.aws.amazon.com/AmazonS3/latest/userguide/CustomErrorDocSupport.html). +Apache|See [details](https://httpd.apache.org/docs/2.4/custom-error.html). +Azure Static Web Apps|See [details](https://learn.microsoft.com/en-us/azure/static-web-apps/configuration#response-overrides). +Azure Storage|See [details](https://learn.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website#setting-up-a-static-website). +Caddy|See [details](https://caddyserver.com/docs/caddyfile/directives/handle_errors). +Cloudflare Pages|See [details](https://developers.cloudflare.com/pages/configuration/serving-pages/#not-found-behavior). +DigitalOcean App Platform|See [details](https://docs.digitalocean.com/products/app-platform/how-to/manage-static-sites/#configure-a-static-site). +Firebase|See [details](https://firebase.google.com/docs/hosting/full-config#404). GitHub Pages|Redirection to is automatic and not configurable. -GitLab Pages|See [details](https://docs.gitlab.com/ee/user/project/pages/introduction.html#custom-error-codes-pages). -NGINX|See [details](https://nginx.org/en/docs/http/ngx_http_core_module.html#error_page). -Netlify|See [details](https://docs.netlify.com/routing/redirects/redirect-options/). +GitLab Pages|See [details](https://docs.gitlab.com/ee/user/project/pages/introduction.html#custom-error-codes-pages). +NGINX|See [details](https://nginx.org/en/docs/http/ngx_http_core_module.html#error_page). +Netlify|See [details](https://docs.netlify.com/routing/redirects/redirect-options/). diff --git a/content/en/templates/_index.md b/content/en/templates/_index.md index 0d8f0a0ec..d205c9218 100644 --- a/content/en/templates/_index.md +++ b/content/en/templates/_index.md @@ -1,7 +1,7 @@ --- title: Templates -linkTitle: In this section -description: Go templating, template types and lookup order, shortcodes, and data. + +description: Create templates to render your content, resources, and data. categories: [] keywords: [] menu: diff --git a/content/en/templates/embedded.md b/content/en/templates/embedded.md index 246381db2..2e571256e 100644 --- a/content/en/templates/embedded.md +++ b/content/en/templates/embedded.md @@ -34,7 +34,7 @@ To include the embedded template: {{ template "_internal/disqus.html" . }} ``` -### Configure Disqus +### Configuration {#configuration-disqus} To use Hugo's Disqus template, first set up a single configuration value: @@ -55,6 +55,15 @@ You can also set the following in the front matter for a given piece of content: - `disqus_title` - `disqus_url` +### Privacy {#privacy-disqus} + +Adjust the relevant privacy settings in your site configuration. + +{{< code-toggle config=privacy.disqus />}} + +disable +: (`bool`) Whether to disable the template. Default is `false`. + ## Google Analytics {{% note %}} @@ -76,7 +85,7 @@ To include the embedded template: {{ template "_internal/google_analytics.html" . }} ``` -### Configure Google Analytics +### Configuration {#configuration-google-analytics} Provide your tracking ID in your configuration file: @@ -87,6 +96,18 @@ id = "G-MEASUREMENT_ID" To use this value in your own template, access the configured ID with `{{ site.Config.Services.GoogleAnalytics.ID }}`. +### Privacy {#privacy-google-analytics} + +Adjust the relevant privacy settings in your site configuration. + +{{< code-toggle config=privacy.googleAnalytics />}} + +disable +: (`bool`) Whether to disable the template. Default is `false`. + +respectDoNotTrack +: (`bool`) Whether to respect the browser's "do not track" setting. Default is `false`. + ## Open Graph {{% note %}} @@ -107,7 +128,7 @@ To include the embedded template: {{ template "_internal/opengraph.html" . }} ``` -### Configure Open Graph +### Configuration {#configuration-open-graph} Hugo's Open Graph template is configured using a mix of configuration settings and [front matter](/content-management/front-matter/) on individual pages. @@ -187,7 +208,7 @@ To include the embedded template: {{ template "_internal/twitter_cards.html" . }} ``` -### Configure X (Twitter) Cards +### Configuration {#configuration-x-cards} Hugo's X (Twitter) Card template is configured using a mix of configuration settings and [front-matter](/content-management/front-matter/) values on individual pages. diff --git a/content/en/templates/home.md b/content/en/templates/home.md index 088f40f26..18114eb0f 100644 --- a/content/en/templates/home.md +++ b/content/en/templates/home.md @@ -1,5 +1,5 @@ --- -title: Home templates +title: Home page templates description: The home page of a website is often formatted differently than the other pages. For this reason, Hugo makes it easy for you to define your new site's home page as a unique template. categories: [templates] keywords: [] @@ -12,43 +12,53 @@ toc: true aliases: [/layout/homepage/,/templates/homepage-template/,/templates/homepage/] --- -The home template is the *only* required template for building a site and therefore useful when bootstrapping a new site and template. It is also the only required template if you are developing a single-page website. +## Introduction -{{< youtube ut1xtRZ1QOA >}} - -## Home template lookup order - -See [Template Lookup](/templates/lookup-order/). - -## Add content and front matter to the home page - -The home page accepts content and front matter from an `_index.md` file. This file should live at the root of your `content` directory (i.e., `content/_index.md`). You can then add body copy and metadata to your home page the way you would any other content file. - -See the home template below or [Content Organization][contentorg] for more information on the role of `_index.md` in adding content and front matter to list pages. - -## Example home template +A home page template is used to render your site's home page, and is the only template required for a single-page website. For example, the home page template below inherits the site's shell from the base template and renders the home page content, such as a list of other pages. {{< code file=layouts/_default/home.html >}} {{ define "main" }} -
-
-

{{ .Title }}

- {{ with .Params.subtitle }} - {{ . }} - {{ end }} -
-
- - {{ .Content }} -
-
- {{ range first 10 .Site.RegularPages }} - {{ .Render "summary" }} - {{ end }} -
-
+ {{ .Content }} + {{ range site.RegularPages }} +

{{ .LinkTitle }}

+ {{ end }} {{ end }} {{< /code >}} -[contentorg]: /content-management/organization/ -[lookup]: /templates/lookup-order/ +{{% include "templates/_common/filter-sort-group.md" %}} + +## Lookup order + +Hugo's [template lookup order] determines the template path, allowing you to create unique templates for any page. + +[template lookup order]: /templates/lookup-order/#home-templates + +{{% note %}} +You must have thorough understanding of the template lookup order when creating templates. Template selection is based on template type, page kind, content type, section, language, and output format. +{{% /note %}} + +## Content and front matter + +The home page template uses content and front matter from an `_index.md` file located in the root of your content directory. + +{{< code-toggle file=content/_index.md fm=true >}} +--- +title: The Home Page +date: 2025-01-30T03:36:57-08:00 +draft: false +params: + subtitle: The Subtitle +--- +{{< /code-toggle >}} + +The home page template below inherits the site's shell from the base template, renders the subtitle and content as defined in the `_index.md` file, then renders of list of the site's [regular pages](g). + +{{< code file=layouts/_default/home.html >}} +{{ define "main" }} +

{{ .Params.Subtitle }}

+ {{ .Content }} + {{ range site.RegularPages }} +

{{ .LinkTitle }}

+ {{ end }} +{{ end }} +{{< /code >}} diff --git a/content/en/templates/output-formats.md b/content/en/templates/output-formats.md index c81d58488..c81a81264 100644 --- a/content/en/templates/output-formats.md +++ b/content/en/templates/output-formats.md @@ -22,7 +22,7 @@ This is the full set of built-in media types in Hugo: {{< datatable "config" "mediaTypes" "_key" "suffixes" >}} -**Note:** +Notes: - It is possible to add custom media types or change the defaults; e.g., if you want to change the suffix for `text/html` to `asp`. - `Suffixes` are the values that will be used for URLs and file names for that media type in Hugo. @@ -41,7 +41,7 @@ To add or modify a media type, define it in a `mediaTypes` section in your [site The above example adds one new media type, `text/enriched`, and changes the suffix for the built-in `text/html` media type. -**Note:** these media types are configured for **your output formats**. If you want to redefine one of Hugo's default output formats (e.g. `HTML`), you also need to redefine the media type. So, if you want to change the suffix of the `HTML` output format from `html` (default) to `htm`: +These media types are configured for your output formats. If you want to redefine one of Hugo's default output formats, you also need to redefine the media type. So, if you want to change the suffix of the `HTML` output format from `html` (default) to `htm`: {{< code-toggle file=hugo >}} [mediaTypes] @@ -65,7 +65,8 @@ This is the full set of Hugo's built-in output formats: {{< datatable "config" "outputFormats" "_key" "baseName" "isHTML" "isPlainText" "mediaType" "noUgly" "path" "permalinkable" "protocol" "rel" >}} -- A page can be output in as many output formats as you want, and you can have an infinite amount of output formats defined **as long as they resolve to a unique path on the file system**. In the above table, the best example of this is `amp` vs. `html`. `amp` has the value `amp` for `path` so it doesn't overwrite the `html` version; e.g. we can now have both `/index.html` and `/amp/index.html`. +- A page can be output in as many output formats as you want, and you can have an infinite amount of output formats defined as long as they resolve to a unique path on the file system. In the above table, the best example of this is `amp` vs. `html`. `amp` has the value `amp` for `path` so it doesn't overwrite the `html` version; e.g. we can now have both `/index.html` and `/amp/index.html`. + - The `mediaType` must match a defined media type. - You can define new output formats or redefine built-in output formats; e.g., if you want to put `amp` pages in a different path. @@ -89,10 +90,10 @@ baseName : (`string`) The base name of the published file. Default is `index`. isHTML -: (`bool`) If `true`, classifies the output format as HTML. Hugo uses this value to determine when to create alias redirects, when to inject the LiveReload script, etc. Default is `false`. +: (`bool`) Whether to classify the output format as HTML. Hugo uses this value to determine when to create alias redirects, when to inject the LiveReload script, etc. Default is `false`. isPlainText -: (`bool`) If `true`, Hugo parses templates for this output format with Go's [text/template] package instead of the [html/template] package. Default is `false`. +: (`bool`) Whether to parse templates for this output format with Go's [text/template] package instead of the [html/template] package. Default is `false`. [html/template]: https://pkg.go.dev/html/template [text/template]: https://pkg.go.dev/text/template @@ -103,12 +104,12 @@ mediaType [media type]: https://en.wikipedia.org/wiki/Media_type notAlternative -: (`bool`) If `true`, excludes this output format from the values returned by the [`AlternativeOutputFormats`] method on a `Page` object. Default is `false`. +: (`bool`) Whether to exclude this output format from the values returned by the [`AlternativeOutputFormats`] method on a `Page` object. Default is `false`. [`AlternativeOutputFormats`]: /methods/page/alternativeoutputformats/ noUgly -: (`bool`) If `true`, disables ugly URLs for this output format when `uglyURLs` is `true` in your site configuration. Default is `false`. +: (`bool`) Whether to disable ugly URLs for this output format when `uglyURLs` is `true` in your site configuration. Default is `false`. path : (`string`) The path to the directory containing the published files, relative to the root of the publish directory. @@ -126,10 +127,10 @@ rel : (`string`) If provided, you can assign this value to `rel` attributes in `link` elements when iterating over output formats in your templates. Default is `alternate`. root -: (`bool`) If `true`, files will be published to the root of the publish directory. Default is `false`. +: (`bool`) Whether to publish files to the root of the publish directory. Default is `false`. ugly -: (`bool`) If `true`, enables uglyURLs for this output format when `uglyURLs` is `false` in your site configuration. Default is `false`. +: (`bool`) Whether to enable uglyURLs for this output format when `uglyURLs` is `false` in your site configuration. Default is `false`. weight : (`int`) When set to a non-zero value, Hugo uses the `weight` as the first criteria when sorting output formats, falling back to the name of the output format. Lighter items float to the top, while heavier items sink to the bottom. Hugo renders output formats sequentially based on the sort order. @@ -160,11 +161,11 @@ Example from site configuration file: page = ["html"] {{}} -Note that in the above examples, the _output formats_ for `section`, +Note that in the examples above, the output formats for `section`, `taxonomy` and `term` will stay at their default value `['html','rss']`. -* The `outputs` definition is per page [`Kind`]. -* The names (e.g. `html`, `amp`) must match the `name` of a defined output format, and can be overridden per page in front matter. +- The `outputs` definition is per page [`Kind`]. +- The names (e.g. `html`, `amp`) must match the `name` of a defined output format, and can be overridden per page in front matter. The following is an example of front matter in a content file that defines output formats for the rendered `Page`: @@ -196,7 +197,8 @@ The [`Permalink`] and [`RelPermalink`] methods on a `Page` object return the fir [`Permalink`]: /methods/page/permalink [`RelPermalink`]: /methods/page/relpermalink -__from `single.json.json`:__ +From `single.json.json`: + ```go-html-template {{ .RelPermalink }} → /that-page/ {{ with .OutputFormats.Get "json" }} @@ -206,7 +208,7 @@ __from `single.json.json`:__ In order for them to return the output format of the current template file instead, the given output format should have its `permalinkable` setting set to true. -**Same template file as above with json output format's `permalinkable` set to true:** +This is the same template file as above with the `json` output format's `permalinkable` parameter set to `true`: ```go-html-template {{ .RelPermalink }} → /that-page/index.json @@ -215,34 +217,25 @@ In order for them to return the output format of the current template file inste {{ end }} ``` -From content files, you can use the `ref` or `relref` shortcodes: +## Template lookup order -```go-html-template -[Neat]({{}}) -[Who]({{}}) +Each output format requires a template conforming to the [template lookup order]. + +For the highest specificity in the template lookup order, include the page kind, output format, and suffix in the file name: + +[template lookup order]: /templates/lookup-order/ + +```text +[page kind].[output format].[suffix] ``` -## Templates for your output formats +For example, for section pages: -Each output format requires a corresponding template conforming to the [template lookup order](/templates/lookup-order/). Hugo considers both output format and suffix when selecting a template. - -For example, to generate a JSON file for the home page, the template with highest specificity is `layouts/index.json.json`. - -Hugo will now also detect the media type and output format of partials, if possible, and use that information to decide if the partial should be parsed as a plain text template or not. - -Hugo will look for the name given, so you can name it whatever you want. But if you want it treated as plain text, you should use the file suffix and, if needed, the name of the Output Format. The pattern is as follows: - -```go-html-template -[partial name].[OutputFormat].[suffix] -``` - -The partial below is a plain text template . The output format is `csv`, and since this is the only output format with the suffix `csv`, we don't need to include the output format `name`): - -```go-html-template -{{ partial "mytextpartial.csv" . }} -``` +Output format|Template path +:--|:-- +`html`|`layouts/_default/section.html.html` +`json`|`layouts/_default/section.json.json` +`rss`|`layouts/_default/section.rss.xml` [site configuration]: /getting-started/configuration/ -[lookup order]: /templates/lookup-order/ -[media type]: https://en.wikipedia.org/wiki/Media_type [`kind`]: /methods/page/kind/ diff --git a/content/en/templates/section.md b/content/en/templates/section.md index 28d931534..339fe6389 100644 --- a/content/en/templates/section.md +++ b/content/en/templates/section.md @@ -1,6 +1,6 @@ --- title: Section templates -description: Use section templates to list members of a section. +description: Create a section template to list its members. categories: [templates] keywords: [] menu: diff --git a/content/en/templates/shortcode.md b/content/en/templates/shortcode.md index 452aeda59..c73874673 100644 --- a/content/en/templates/shortcode.md +++ b/content/en/templates/shortcode.md @@ -1,7 +1,6 @@ --- -title: Create your own shortcodes -linkTitle: Shortcode templates -description: You can extend Hugo's embedded shortcodes by creating your own using the same templating syntax as that for single and list pages. +title: Shortcode templates +description: Create custom shortcodes to simplify and standardize content creation. categories: [templates] keywords: [] menu: @@ -13,31 +12,54 @@ aliases: [/templates/shortcode-templates/] toc: true --- -Shortcodes are a means to consolidate templating into small, reusable snippets that you can embed directly inside your content. - {{% note %}} -Hugo also ships with embedded shortcodes for common use cases. (See [Content Management: Shortcodes](/content-management/shortcodes/).) +Before creating custom shortcodes, please review the [shortcodes] page in the [content management] section. Understanding the usage details will help you design and create better templates. + +[shortcodes]: /content-management/shortcodes/ +[content management]: /content-management/shortcodes/ {{% /note %}} -## Create custom shortcodes +## Introduction -Hugo's embedded shortcodes cover many common, but not all, use cases. Luckily, Hugo provides the ability to easily create custom shortcodes to meet your website's needs. +Hugo provides [embedded shortcodes] for many common tasks, but you'll likely need to create your own for more specific needs. Some examples of custom shortcodes you might develop include: -{{< youtube Eu4zSaKOY4A >}} +- Audio players +- Video players +- Image galleries +- Diagrams +- Maps +- Tables +- And many other custom elements -### File location +[embedded shortcodes]: /shortcodes/ -To create a shortcode, place an HTML template in the `layouts/shortcodes` directory. Consider the file name carefully since the shortcode name will mirror that of the file but without the `.html` extension. For example, `layouts/shortcodes/myshortcode.html` will be called with either `{{}}` or `{{%/* myshortcode /*/%}}`. +## Directory structure -You can organize your shortcodes in subdirectories, e.g. in `layouts/shortcodes/boxes`. These shortcodes would then be accessible with their relative path, e.g: +Create shortcode templates within the `layouts/shortcodes` directory, either at its root or organized into subdirectories. -```go-html-template -{{}} +```text +layouts/ +└── shortcodes/ + ├── diagrams/ + │ ├── kroki.html + │ └── plotly.html + ├── media/ + │ ├── audio.html + │ ├── gallery.html + │ └── video.html + ├── capture.html + ├── column.html + ├── include.html + └── row.html ``` -Note the forward slash. +When calling a shortcode in a subdirectory, specify its path relative to the `shortcode` directory, excluding the file extension. -### Template lookup order +```text +{{}} +``` + +## Lookup order Hugo selects shortcode templates based on the shortcode name, the current output format, and the current language. The examples below are sorted by specificity in descending order. The least specific path is at the bottom of the list. @@ -50,277 +72,225 @@ foo|html|en|`layouts/shortcodes/foo.html.en.html` Shortcode name|Output format|Language|Template path :--|:--|:--|:-- -foo|rss|en|`layouts/shortcodes/foo.en.xml` -foo|rss|en|`layouts/shortcodes/foo.rss.xml` -foo|rss|en|`layouts/shortcodes/foo.en.html` -foo|rss|en|`layouts/shortcodes/foo.rss.en.xml` -foo|rss|en|`layouts/shortcodes/foo.xml` -foo|rss|en|`layouts/shortcodes/foo.html.en.html` -foo|rss|en|`layouts/shortcodes/foo.html.html` -foo|rss|en|`layouts/shortcodes/foo.html` +foo|json|en|`layouts/shortcodes/foo.en.json` +foo|json|en|`layouts/shortcodes/foo.json` +foo|json|en|`layouts/shortcodes/foo.json.json` +foo|json|en|`layouts/shortcodes/foo.json.en.json` -Note that templates provided by a theme or module always take precedence. +## Methods -### Positional vs. named arguments +Use these methods in your shortcode templates. Refer to each methods's documentation for details and examples. -You can create shortcodes using the following types of arguments: +{{< list-pages-in-section path=/methods/shortcode >}} -* Positional arguments -* Named arguments -* Positional *or* named arguments +## Examples -In shortcodes with positional arguments, the order of the arguments is important. If a shortcode has a single required value, positional arguments require less typing from content authors. +These examples range in complexity from simple to moderately advanced, with some simplified for clarity. -For more complex layouts with multiple or optional arguments, named arguments work best. While less terse, named arguments require less memorization from a content author and can be added in a shortcode declaration in any order. +### Insert year -Allowing both types of arguments is useful for complex layouts where you want to set default values that can be easily overridden by users. - -### Access arguments - -All shortcode arguments can be accessed via the `.Get` method. Whether you pass a string or a number to the `.Get` method depends on whether you are accessing a named or positional argument, respectively. - -To access an argument by name, use the `.Get` method followed by the named argument as a quoted string: - -```go-html-template -{{ .Get "class" }} -``` - -To access an argument by position, use the `.Get` followed by a numeric position, keeping in mind that positional arguments are zero-indexed: - -```go-html-template -{{ .Get 0 }} -``` - -For the second position, you would just use: - -```go-html-template -{{ .Get 1 }} -``` - -`with` is great when the output depends on a argument being set: - -```go-html-template -{{ with .Get "class" }} class="{{ . }}"{{ end }} -``` - -`.Get` can also be used to check if a argument has been provided. This is -most helpful when the condition depends on either of the values, or both: - -```go-html-template -{{ if or (.Get "title") (.Get "alt") }} alt="{{ with .Get "alt" }}{{ . }}{{ else }}{{ .Get "title" }}{{ end }}"{{ end }} -``` - -#### `.Inner` - -The `.Inner` method returns the content between the opening and closing shortcode tags. To check if `.Inner` returns anything other than whitespace: - -```go-html-template -{{ if strings.ContainsNonSpace .Inner }} - Inner is not empty -{{ end }} -``` - -{{% note %}} -Any shortcode that calls the `.Inner` method must be closed or self-closed. To call a shortcode using the self-closing syntax. - -```go-html-template -{{}} -``` - -{{% /note %}} - -#### `.Params` - -The `.Params` method in shortcodes returns the arguments passed to the shortcode for more complicated use cases. You can also access higher-scoped arguments with the following logic: - -$.Params -: these are the arguments passed directly into the shortcode declaration (e.g., a YouTube video ID) - -$.Page.Params -: refers to the page's parameters; the "page" in this case refers to the content file in which the shortcode is declared (e.g., a `shortcode_color` field in a content's front matter could be accessed via `$.Page.Params.shortcode_color`). - -$.Site.Params -: refers to parameters defined in your site configuration. - -#### `.IsNamedParams` - -The `.IsNamedParams` method checks whether the shortcode declaration uses named arguments and returns a boolean value. - -For example, you could create an `image` shortcode that can take either a `src` named argument or the first positional argument, depending on the preference of the content's author. Let's assume the `image` shortcode is called as follows: - -```go-html-template -{{}} -``` - -You could then include the following as part of your shortcode templating: - -```go-html-template -{{ if .IsNamedParams }} - -{{ else }} - -{{ end }} -``` - -See the [example Vimeo shortcode][vimeoexample] below for `.IsNamedParams` in action. - -{{% note %}} -While you can create shortcode templates that accept both positional and named arguments, you *cannot* declare shortcodes in content with a mix of argument types. Therefore, a shortcode declared like `{{}}` will return an error. -{{% /note %}} - -Shortcodes can also be nested. In a nested shortcode, you can access the parent shortcode context with the [`.Parent`] shortcode method. This can be very useful for inheritance from the root. - -### Checking for existence - -You can check if a specific shortcode is used on a page by calling `.HasShortcode` in that page template, providing the name of the shortcode. This is useful when you want to include specific scripts or styles in the header that are only used by that shortcode. - -## Custom shortcode examples - -The following are examples of the different types of shortcodes you can create via shortcode template files in `/layouts/shortcodes`. - -### Single-word example: `year` - -Let's assume you would like to keep mentions of your copyright year current in your content files without having to continually review your Markdown. Your goal is to be able to call the shortcode as follows: - -```go-html-template -{{}} -``` +Create a shortcode to insert the current year: {{< code file=layouts/shortcodes/year.html >}} -{{ now.Format "2006" }} +{{- now.Format "2006" -}} {{< /code >}} -### Single positional example: `youtube` +Then call the shortcode from within your markup: -Embedded videos are a common addition to Markdown content. The following is the code used by [Hugo's built-in YouTube shortcode][youtubeshortcode]: +{{< code file=content/example.md >}} +This is {{}}, and look at how far we've come. +{{< /code >}} -```go-html-template -{{}} +This shortcode can be used inline or as a block on its own line. If a shortcode might be used inline, remove the surrounding [whitespace] by using [template action](g) delimiters with hyphens. + +[whitespace]: /templates/introduction/#whitespace + +### Insert image + +This example assumes the following content structure, where `content/example/index.md` is a [page bundle](g) containing one or more [page resources](g). + +```text +content/ +├── example/ +│ ├── a.jpg +│ └── index.md +└── _index.md ``` -Would load the template at `/layouts/shortcodes/youtube.html`: +Create a shortcode to capture an image as a page resource, resize it to the given width, convert it to the WebP format, and add an `alt` attribute: -{{< code file=layouts/shortcodes/youtube.html >}} -
- -
+{{< code file=layouts/shortcodes/image.html >}} +{{- with .Page.Resources.Get (.Get "path") }} + {{- with .Process (printf "resize %dx wepb" ($.Get "width")) }} + {{ $.Get + {{- end }} +{{- end -}} {{< /code >}} -{{< code file=youtube-embed.html >}} -
- -
+Then call the shortcode from within your markup: + +{{< code file=content/example/index.md >}} +{{}} {{< /code >}} -### Single named example: `image` +The example above uses: -Let's say you want to create your own `img` shortcode rather than use Hugo's built-in [`figure` shortcode][figure]. Your goal is to be able to call the shortcode as follows in your content files: +- The [`with`] statement to rebind the [context](g) after each successful operation +- The [`Get`] method to retrieve arguments by name +- The `$` to access the template context -{{< code file=content-image.md >}} -{{}} +[`get`]: /methods/shortcode/get/ +[`with`]: /functions/go-template/with/ + +{{% note %}} +Make sure that you thoroughly understand the concept of context. The most common templating errors made by new users relate to context. + +Read more about context in the [introduction to templating]. + +[introduction to templating]: /templates/introduction/ +{{% /note %}} + +### Insert image with error handling + +The previous example, while functional, silently fails if the image is missing, and does not gracefully exit if a required argument is missing. We'll add error handling to address these issues: + +{{< code file=layouts/shortcodes/image.html >}} +{{ with .Get "path" }} + {{- with $r := $.Page.Resources.Get ($.Get "path") }} + {{- with $.Get "width" }} + {{- with $r.Process (printf "resize %dx wepb" ($.Get "width" )) }} + {{- $alt := or ($.Get "alt") "" }} + {{ $alt }} + {{- end }} + {{- else }} + {{- errorf "The %q shortcode requires a 'width' argument: see %s" $.Name $.Position }} + {{- end }} + {{- else }} + {{ warnf "The %q shortcode was unable to find %s: see %s" $.Name ($.Get "path") $.Position }} + {{- end }} +{{- else }} + {{ errorf "The %q shortcode requires a 'path' argument: see %s" .Name .Position }} +{{- end -}} {{< /code >}} -You have created the shortcode at `/layouts/shortcodes/img.html`, which loads the following shortcode template: +This template throws an error and gracefully fails the build if the author neglected to provide a `path` or `width` argument, and it emits a warning if it cannot find the image at the specified path. If the author does not provide an `alt` argument, the `alt` attribute is set to an empty string. -{{< code file=layouts/shortcodes/img.html >}} - -
- {{ with .Get "link" }}{{ end }} - - {{ if .Get "link" }}{{ end }} - {{ if or (or (.Get "title") (.Get "caption")) (.Get "attr") }} -
{{ if isset .Params "title" }} -

{{ .Get "title" }}

{{ end }} - {{ if or (.Get "caption") (.Get "attr") }}

- {{ .Get "caption" }} - {{ with .Get "attrlink" }} {{ end }} - {{ .Get "attr" }} - {{ if .Get "attrlink" }} {{ end }} -

{{ end }} -
- {{ end }} -
- -{{< /code >}} +The [`Name`] and [`Position`] methods provide helpful context for errors and warnings. For example, a missing `width` argument causes the shortcode to throw this error: -Would be rendered as: +[`name`]: /methods/shortcode/name/ +[`position`]: /methods/shortcode/position/ -{{< code file=img-output.html >}} -
- -
-

Steve Francia

-
-
-{{< /code >}} - -### Single flexible example: `vimeo` - -```go-html-template -{{}} -{{}} +```text +ERROR The "image" shortcode requires a 'width' argument: see "/home/user/project/content/example/index.md:7:1" ``` -Would load the template found at `/layouts/shortcodes/vimeo.html`: +### Positional arguments -{{< code file=layouts/shortcodes/vimeo.html >}} -{{ if .IsNamedParams }} -
- -
-{{ else }} -
- -
-{{ end }} +Shortcode arguments can be [named or positional]. We used named arguments previously; let's explore positional arguments. Here's the named argument version of our example: + +[named or positional]: /content-management/shortcodes/#arguments + +{{< code file=content/example/index.md >}} +{{}} {{< /code >}} -Would be rendered as: +Here's how to call it with positional arguments: -{{< code file=vimeo-iframes.html >}} -
- -
-
- +{{< code file=content/example/index.md >}} +{{}} +{{< /code >}} + +Using the `Get` method with zero-indexed keys, we'll initialize variables with descriptive names in our template: + +{{< code file=layouts/shortcodes/image.html >}} +{{- $path := .Get 0 }} +{{- $width := .Get 1 }} +{{- $alt := .Get 2 }} +{{< /code >}} + +{{% note %}} +Positional arguments work well for frequently used shortcodes with one or two arguments. Since you'll use them often, the argument order will be easy to remember. For less frequently used shortcodes, or those with more than two arguments, named arguments improve readability and reduce the chance of errors. +{{% /note %}} + +### Named and positional arguments + +You can create a shortcode that will accept both named and positional arguments, but not at the same time. Use the [`IsNamedParams`] method to determine whether the shortcode call used named or positional arguments: + +{{< code file=layouts/shortcodes/image.html >}} +{{- $path := cond (.IsNamedParams) (.Get "path") (.Get 0) }} +{{- $width := cond (.IsNamedParams) (.Get "width") (.Get 1) }} +{{- $alt := cond (.IsNamedParams) (.Get "alt") (.Get 2) }} +{{< /code >}} + +This example uses the `cond` alias for the [`compare.Conditional`] function to get the argument by name if `IsNamedParams` returns `true`, otherwise get the argument by position. + +[`compare.Conditional`]: /functions/compare/conditional/ +[`IsNamedParams`]: /methods/shortcode/isnamedparams/ + +### Argument collection + +Use the [`Params`] method to access the arguments as a collection. + +[`Params`]: /methods/shortcode/params/ + +When using named arguments, the `Params` method returns a map: + +{{< code file=content/example/index.md >}} +{{}} +{{< /code >}} + +{{< code file=layouts/shortcodes/image.html >}} +{{- .Params.path }} → a.jpg +{{- .Params.width }} → 300 +{{- .Params.alt }} → A white kitten +{{< /code >}} + + When using positional arguments, the `Params` method returns a slice: + +{{< code file=content/example/index.md >}} +{{}} +{{< /code >}} + +{{< code file=layouts/shortcodes/image.html >}} +{{- index .Params 0 }} → a.jpg +{{- index .Params 1 }} → 300 +{{- index .Params 1 }} → A white kitten +{{< /code >}} + +Combine the `Params` method with the [`collections.IsSet`] function to determine if a parameter is set, even if its value is falsy. + +[`collections.IsSet`]: /functions/collections/isset/ + +### Inner content + +Extract the content enclosed within shortcode tags using the [`Inner`] method. This example demonstrates how to pass both content and a title to a shortcode. The shortcode then generates a `div` element containing an `h2` element (displaying the title) and the provided content. + +[`Inner`]: /methods/shortcode/inner/ + +{{< code file=content/example.md >}} +{{}} +This is a **bold** word, and this is an _emphasized_ word. +{{}} +{{< /code >}} + +{{< code file=layouts/shortcodes/contrived.html >}} +
+

{{ .Get "title" }}

+ {{ .Inner | .Page.RenderString }}
{{< /code >}} -### Paired example: `highlight` +The preceding example called the shortcode using [standard notation], requiring us to process the inner content with the [`RenderString`] method to convert the Markdown to HTML. This conversion is unnecessary when calling a shortcode using [Markdown notation]. -The following is taken from `highlight`, which is a [built-in shortcode] that ships with Hugo. +[`RenderString`]: /methods/page/renderstring/ +[markdown notation]: /content-management/shortcodes/#markdown-notation +[standard notation]: /content-management/shortcodes/#standard-notation -{{< code file=highlight-example.md >}} -{{}} - - This HTML - -{{}} -{{< /code >}} +### Nesting -The template for the `highlight` shortcode uses the following code, which is already included in Hugo: +The [`Parent`] method provides access to the parent shortcode context when the shortcode in question is called within the context of a parent shortcode. This provides an inheritance model. -```go-html-template -{{ .Get 0 | highlight .Inner }} -``` - -The rendered output of the HTML example code block will be as follows: - -{{< code file=syntax-highlighted.html >}} -
<html>
-    <body> This HTML </body>
-</html>
-
-{{< /code >}} - -### Nested shortcode: image gallery - -Hugo's [`.Parent`] shortcode method provides access to the parent shortcode context when the shortcode in question is called within the context of a parent shortcode. This provides an inheritance model. +[`Parent`]: /methods/shortcode/parent/ The following example is contrived but demonstrates the concept. Assume you have a `gallery` shortcode that expects one named `class` argument: @@ -333,23 +303,24 @@ The following example is contrived but demonstrates the concept. Assume you have You also have an `img` shortcode with a single named `src` argument that you want to call inside of `gallery` and other shortcodes, so that the parent defines the context of each `img`: {{< code file=layouts/shortcodes/img.html >}} -{{- $src := .Get "src" -}} -{{- with .Parent -}} +{{ $src := .Get "src" }} +{{ with .Parent }} -{{- else -}} +{{ else }} -{{- end -}} +{{ end }} {{< /code >}} You can then call your shortcode in your content as follows: -```go-html-template +{{< code file=content/example.md >}} {{}} {{}} {{}} {{}} {{}} -``` +{{< /code >}} + This will output the following HTML. Note how the first two `img` shortcodes inherit the `class` value of `content-gallery` set with the call to the parent `gallery`, whereas the third `img` only uses `src`: @@ -361,62 +332,30 @@ This will output the following HTML. Note how the first two `img` shortcodes inh ``` -## Error handling in shortcodes +### Other examples -Use the [`errorf`] template function with the [`Name`] and [`Position`] shortcode methods to generate useful error messages: +For guidance, consider examining Hugo's embedded shortcodes. The source code, available on [GitHub], can provide a useful model. -{{< code file=layouts/shortcodes/greeting.html >}} -{{ with .Get "name" }} -

Hello, my name is {{ . }}.

-{{ else }} - {{ errorf "The %q shortcode requires a 'name' argument. See %s" .Name .Position }} -{{ end }} +[GitHub]: https://github.com/gohugoio/hugo/tree/master/tpl/tplimpl/embedded/templates/shortcodes + +## Detection + +The [`HasShortcode`] method allows you to check if a specific shortcode has been called on a page. For example, consider a custom audio shortcode: + +{{< code file=content/example.md >}} +{{}} {{< /code >}} -When the above fails, you will see an `ERROR` message such as: +You can use the `HasShortcode` method in your base template to conditionally load CSS if the audio shortcode was used on the page: -```sh -ERROR The "greeting" shortcode requires a 'name' argument. See "/home/user/project/content/_index.md:12:1" -``` +{{< code file=layouts/_default/baseof.html >}} + + ... + {{ if .HasShortcode "audio" }} + + {{ end }} + ... + +{{< /code >}} -## Inline shortcodes - -You can also implement your shortcodes inline -- e.g. where you use them in the content file. This can be useful for scripting that you only need in one place. - -This feature is disabled by default, but can be enabled in your site configuration: - -{{< code-toggle file=hugo >}} -[security] -enableInlineShortcodes = true -{{< /code-toggle >}} - -It is disabled by default for security reasons. The security model used by Hugo's template handling assumes that template authors are trusted, but that the content files are not, so the templates are injection-safe from malformed input data. But in most situations you have full control over the content, too, and then `enableInlineShortcodes = true` would be considered safe. But it's something to be aware of: It allows ad-hoc [Go Text templates](https://golang.org/pkg/text/template/) to be executed from the content files. - -And once enabled, you can do this in your content files: - - ```go-html-template - {{}}{{ now }}{{}} - ``` - -The above will print the current date and time. - -Note that an inline shortcode's inner content is parsed and executed as a Go text template with the same context as a regular shortcode template. - -This means that the current page can be accessed via `.Page.Title` etc. This also means that there are no concept of "nested inline shortcodes". - -The same inline shortcode can be reused later in the same content file, with different arguments if needed, using the self-closing syntax: - - ```go-html-template -{{}} -``` - -[`.Parent`]: /methods/shortcode/parent/ -[`errorf`]: /functions/fmt/errorf/ -[`Name`]: /methods/shortcode/name/ -[`Position`]: /methods/shortcode/position/ -[built-in shortcode]: /content-management/shortcodes/ -[figure]: /shortcodes/figure/ -[lookup order]: /templates/lookup-order/ -[source organization]: /getting-started/directory-structure/ -[vimeoexample]: #single-flexible-example-vimeo -[youtubeshortcode]: /shortcodes/youtube/ +[`HasShortcode`]: /methods/page/hasshortcode/ diff --git a/content/en/templates/sitemap.md b/content/en/templates/sitemap.md index 166f54933..b21372040 100644 --- a/content/en/templates/sitemap.md +++ b/content/en/templates/sitemap.md @@ -33,16 +33,16 @@ These are the default sitemap configuration values. They apply to all pages unle {{< code-toggle config=sitemap />}} changefreq -: (`string`) How frequently a page is likely to change. Valid values are `always`, `hourly`, `daily`, `weekly`, `monthly`, `yearly`, and `never`. With the default value of `""` Hugo will omit this field from the sitemap. See [details](https://www.sitemaps.org/protocol.html#changefreqdef). +: (`string`) How frequently a page is likely to change. Valid values are `always`, `hourly`, `daily`, `weekly`, `monthly`, `yearly`, and `never`. With the default value of `""` Hugo will omit this field from the sitemap. See [details](https://www.sitemaps.org/protocol.html#changefreqdef). -disable {{< new-in 0.125.0 >}} +disable {{< new-in 0.125.0 />}} : (`bool`) Whether to disable page inclusion. Default is `false`. Set to `true` in front matter to exclude the page. filename : (`string`) The name of the generated file. Default is `sitemap.xml`. priority -: (`float`) The priority of a page relative to any other page on the site. Valid values range from 0.0 to 1.0. With the default value of `-1` Hugo will omit this field from the sitemap. See [details](https://www.sitemaps.org/protocol.html#priority). +: (`float`) The priority of a page relative to any other page on the site. Valid values range from 0.0 to 1.0. With the default value of `-1` Hugo will omit this field from the sitemap. See [details](https://www.sitemaps.org/protocol.html#priority). ## Override default values diff --git a/content/en/templates/types/index.md b/content/en/templates/types/index.md index 0bd72ccc4..8369917bf 100644 --- a/content/en/templates/types/index.md +++ b/content/en/templates/types/index.md @@ -48,9 +48,7 @@ Hugo's [template lookup order] determines the template path, allowing you to cre [template lookup order]: /templates/lookup-order/ {{% note %}} -You must have thorough understanding of the [template lookup order] when creating templates. Template selection is based on template type, page kind, content type, section, language, and output format. - -[template lookup order]: /templates/lookup-order/ +You must have thorough understanding of the template lookup order when creating templates. Template selection is based on template type, page kind, content type, section, language, and output format. {{% /note %}} The purpose of each template type is described below. @@ -88,9 +86,7 @@ Learn more about [base templates](/templates/base/). ## Home -A home template renders your site's home page. For a single page site this is the only required template. - -For example, the home template below inherits the site's shell from the base template, and renders the home page content with a list of pages. +A home page template is used to render your site's home page, and is the only template required for a single-page website. For example, the home page template below inherits the site's shell from the base template and renders the home page content, such as a list of other pages. {{< code file=layouts/_default/home.html >}} {{ define "main" }} @@ -103,7 +99,7 @@ For example, the home template below inherits the site's shell from the base tem {{% include "templates/_common/filter-sort-group.md" %}} -Learn more about [home templates](/templates/home/). +Learn more about [home page templates](/templates/home/). ## Single @@ -241,7 +237,7 @@ For example, the render hook template below adds a `rel` attribute to external l {{- with .Title }} title="{{ . }}"{{ end -}} {{- if $u.IsAbs }} rel="external"{{ end -}} > - {{- with .Text | safeHTML }}{{ . }}{{ end -}} + {{- with .Text }}{{ . }}{{ end -}} {{- /* chomp trailing newline */ -}} {{< /code >}} @@ -260,10 +256,10 @@ For example, the shortcode template below renders an audio element from a [globa {{ end }} {{< /code >}} -Call the shortcode from your content page: +Then call the shortcode from within markup: {{< code file=content/example.md >}} -{{}} +{{}} {{< /code >}} Learn more about [shortcode templates](/templates/shortcode/). diff --git a/content/en/tools/_index.md b/content/en/tools/_index.md index 9cd72853a..a4df23800 100644 --- a/content/en/tools/_index.md +++ b/content/en/tools/_index.md @@ -1,7 +1,7 @@ --- title: Developer tools -linkTitle: In this section -description: In addition to Hugo's powerful CLI, there is a large number of community-developed tool chains for Hugo developers. + +description: Third-party tools to help you create and manage sites. categories: [] keywords: [] menu: diff --git a/content/en/tools/search.md b/content/en/tools/search.md index 73aea7ce4..152774304 100644 --- a/content/en/tools/search.md +++ b/content/en/tools/search.md @@ -29,7 +29,7 @@ A static website with a dynamic search function? Yes, Hugo provides an alternati : A bit like Hugo-lunr, but Hugo-lunr-zh can help you separate the Chinese keywords. [GitHub Gist for Fuse.js integration](https://gist.github.com/eddiewebb/735feb48f50f0ddd65ae5606a1cb41ae) -: This gist demonstrates how to leverage Hugo's existing build time processing to generate a searchable JSON index used by [Fuse.js](https://fusejs.io/) on the client-side. Although this gist uses Fuse.js for fuzzy matching, any client-side search tool capable of reading JSON indexes will work. Does not require npm, grunt, or other build-time tools except Hugo! +: This gist demonstrates how to leverage Hugo's existing build time processing to generate a searchable JSON index used by [Fuse.js](https://fusejs.io/) on the client side. Although this gist uses Fuse.js for fuzzy matching, any client-side search tool capable of reading JSON indexes will work. Does not require npm, grunt, or other build-time tools except Hugo! [hugo-search-index](https://www.npmjs.com/package/hugo-search-index) : A library containing Gulp tasks and a prebuilt browser script that implements search. Gulp generates a search index from project Markdown files. diff --git a/content/en/troubleshooting/_index.md b/content/en/troubleshooting/_index.md index 92ba6bc6d..a113fa9cf 100644 --- a/content/en/troubleshooting/_index.md +++ b/content/en/troubleshooting/_index.md @@ -1,6 +1,6 @@ --- title: Troubleshooting -linkTitle: In this section + description: Use these techniques when troubleshooting your site. categories: [] keywords: [] diff --git a/content/en/troubleshooting/deprecation.md b/content/en/troubleshooting/deprecation.md index 81f2724a3..5dd9f3fa6 100644 --- a/content/en/troubleshooting/deprecation.md +++ b/content/en/troubleshooting/deprecation.md @@ -29,10 +29,16 @@ Common [reasons for deprecation]: After the project team deprecates something in code, Hugo will: -1. Log an INFO message for 6 minor releases[^1] -1. Log a WARN message for another 6 minor releases +1. Log an INFO message for 3 minor releases[^1] +1. Log a WARN message for another 12 minor releases 1. Log an ERROR message and fail the build thereafter +The project team will: + +1. On the deprecation date, update the documentation with a note describing the deprecation and any relevant alternatives. +1. Remove the code six or more minor releases after Hugo begins logging ERROR messages and failing the build. At that point, Hugo will throw an error, but the error message will no longer mention the deprecation. +1. Remove the corresponding documentation two years after the deprecation date. + To see the INFO messages, you must use the `--logLevel` command line flag: ```text diff --git a/content/en/troubleshooting/faq.md b/content/en/troubleshooting/faq.md index 4891c566b..2edb309be 100644 --- a/content/en/troubleshooting/faq.md +++ b/content/en/troubleshooting/faq.md @@ -51,11 +51,11 @@ If the answer to any of these questions is yes, either change the field values, ###### Why can't I see any of a page's descendants? -You may have an `index.md` file instead of an `_index.md` file. See [details](/content-management/page-bundles/). +You may have an `index.md` file instead of an `_index.md` file. See [details](/content-management/page-bundles/). -###### What is the difference between an index.md file and an _index.md file? +###### What is the difference between an `index.md` file and an `_index.md` file? -A directory with an `index.md file` is a [leaf bundle](g). A directory with an `_index.md` file is a [branch bundle](g). See [details](/content-management/page-bundles/). +A directory with an `index.md file` is a [leaf bundle](g). A directory with an `_index.md` file is a [branch bundle](g). See [details](/content-management/page-bundles/). ###### Why is my partial template not rendered as expected? diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/data/sponsors.toml b/data/sponsors.toml similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/data/sponsors.toml rename to data/sponsors.toml diff --git a/go.mod b/go.mod index 56a48deac..4b9e0a369 100644 --- a/go.mod +++ b/go.mod @@ -1,5 +1,3 @@ module github.com/gohugoio/hugoDocs go 1.22.0 - -require github.com/gohugoio/gohugoioTheme v0.0.0-20250116152525-2d382cae7743 // indirect diff --git a/hugo.toml b/hugo.toml index 2a271b6e3..c0094725f 100644 --- a/hugo.toml +++ b/hugo.toml @@ -1,9 +1,7 @@ -# This his the main configuration file. There are also environment specific configuration stored in the /config directory. - baseURL = "https://gohugo.io/" defaultContentLanguage = "en" enableEmoji = true -ignoreErrors = ["error-remote-getjson", "error-missing-instagram-accesstoken"] +ignoreLogs = ["error-missing-instagram-accesstoken"] languageCode = "en-us" pluralizeListTitles = false timeZone = "Europe/Oslo" @@ -13,90 +11,164 @@ title = "Hugo" disableAliases = true [pagination] -pagerSize = 100 + pagerSize = 100 [services.googleAnalytics] -ID = 'G-MBZGKNMDWC' - -[minify] - [minify.tdewolff] - [minify.tdewolff.html] - keepWhitespace = true - -[module] - [module.hugoVersion] - min = "0.56.0" - [[module.imports]] - path = "github.com/gohugoio/gohugoioTheme" + ID = 'G-MBZGKNMDWC' [outputs] - home = ["HTML", "RSS", "REDIR", "HEADERS"] - section = ["HTML"] + home = ["html", "rss", "redir", "headers"] + section = ["html"] + page = ["html"] + taxonomy = ["html"] + term = ["html"] -[mediaTypes] - [mediaTypes."text/netlify"] - delimiter = "" +[params] + description = "The world’s fastest framework for building websites" + ghrepo = "https://github.com/gohugoio/hugoDocs/" + + [params.render_hooks.link] + errorLevel = 'warning' # ignore (default), warning, or error (fails the build) + +[languages] + [languages.en] + languageName = "English" + weight = 1 + +[security] + enableInlineShortcodes = false + [security.funcs] + getenv = ['^HUGO_', '^REPOSITORY_URL$', '^BRANCH$'] + [security.http] + methods = ['(?i)GET|POST'] + urls = ['.*'] [outputFormats] - [outputFormats.REDIR] - mediatype = "text/netlify" - baseName = "_redirects" - isPlainText = true - notAlternative = true - [outputFormats.HEADERS] - mediatype = "text/netlify" - baseName = "_headers" - isPlainText = true - notAlternative = true + [outputFormats.redir] + mediatype = "text/netlify" + baseName = "_redirects" + isPlainText = true + [outputFormats.headers] + mediatype = "text/netlify" + baseName = "_headers" + isPlainText = true + notAlternative = true -[caches] - [caches.getjson] - dir = ":cacheDir/:project" - maxAge = -1 - [caches.getcsv] - dir = ":cacheDir/:project" - maxAge = -1 - [caches.images] - dir = ":cacheDir/images" - maxAge = "1440h" - [caches.assets] - dir = ":resourceDir/_gen" - maxAge = -1 - [caches.getresource] - dir = ":cacheDir/:project" - maxage = '1h' +[markup] + [markup.highlight] + style = 'solarized-dark' + lineNumbersInTable = true + noClasses = false + wrapperClass = 'highlight not-prose' -[related] - threshold = 80 - includeNewer = true - toLower = false - [[related.indices]] - name = "keywords" - weight = 60 - [[related.indices]] - # Can be used as a front matter slice to link to other page fragments (headings) using their ID. - # This isn't particular useful in the current docs, but we're planning on getting a auto generated - # reference section with a better ID setup. - # For now, we just use it to give pages with same headings some similarity score. - name = "fragmentrefs" - type = "fragments" - applyFilter = false - weight = 60 - cardinalityThreshold = 50 + [markup.goldmark.renderer] + hardWraps = false + unsafe = false + xhtml = false -[imaging] - # See https://github.com/disintegration/imaging - # CatmullRom is a sharp bicubic filter which should fit the docs site well with its many screenshots. - # Note that you can also set this per image processing. - resampleFilter = "CatmullRom" - # Default JPEG quality setting. Default is 75. - quality = 75 - anchor = "smart" + [markup.goldmark.extensions] + definitionList = true + footnote = true + linkify = true + strikethrough = true + table = true + taskList = true + typographer = true -[taxonomies] - category = "categories" + [markup.goldmark.extensions.passthrough] + enable = true -[[cascade]] -categories = ['commands'] -[cascade._target] -path = '/commands/**' + [markup.goldmark.extensions.passthrough.delimiters] + block = [['\[', '\]'], ['$$', '$$']] + inline = [['\(', '\)']] + + [markup.goldmark.parser] + autoHeadingID = true + autoHeadingIDType = "github" + + [markup.goldmark.parser.attribute] + block = true + title = true + +[mediaTypes] + [mediaTypes."text/netlify"] + delimiter = "" + +[module] + [module.hugoVersion] + min = "0.141.0" + [[module.mounts]] + source = "assets" + target = "assets" + [[module.mounts]] + lang = 'en' + source = 'content/en' + target = 'content' + [[module.mounts]] + source = "hugo_stats.json" + target = "assets/notwatching/hugo_stats.json" + disableWatch = true + +[build] + [build.buildStats] + disableIDs = true + enable = true + [[build.cachebusters]] + source = "assets/notwatching/hugo_stats\\.json" + target = "css" + [[build.cachebusters]] + source = "(postcss|tailwind)\\.config\\.js" + target = "css" + +[server] + [[server.headers]] + for = "/*" + + [server.headers.values] + X-Frame-Options = "DENY" + X-XSS-Protection = "1; mode=block" + X-Content-Type-Options = "nosniff" + Referrer-Policy = "no-referrer" + + [[server.headers]] + for = "/**.{css,js}" + +[minify] + [minify.tdewolff] + [minify.tdewolff.html] + keepSpecialComments = true + keepWhitespace = false + +######## GLOBAL ITEMS TO BE SHARED WITH THE HUGO SITES ######## +[menus] + [[menus.global]] + name = 'News' + weight = 1 + identifier = 'news' + pageRef = '/news/' + + [[menus.global]] + name = 'Docs' + weight = 5 + identifier = 'docs' + url = '/documentation/' + + [[menus.global]] + name = 'Themes' + weight = 10 + identifier = 'themes' + url = 'https://themes.gohugo.io/' + + [[menus.global]] + name = 'Community' + weight = 150 + identifier = 'community' + post = 'external' + url = 'https://discourse.gohugo.io/' + + [[menus.global]] + name = 'GitHub' + weight = 200 + identifier = 'github' + post = 'external' + url = 'https://github.com/gohugoio/hugo' diff --git a/hugo.work b/hugo.work index b2ae38c07..02c0ba91f 100644 --- a/hugo.work +++ b/hugo.work @@ -1,4 +1,4 @@ go 1.22.0 use . -use ../gohugoioTheme + diff --git a/layouts/404.html b/layouts/404.html new file mode 100644 index 000000000..bb92ea160 --- /dev/null +++ b/layouts/404.html @@ -0,0 +1,22 @@ +{{ define "main" }} +
+
+

+ Page not found + gopher +

+ + +
+
+{{ end }} diff --git a/layouts/_default/_markup/render-heading.html b/layouts/_default/_markup/render-heading.html new file mode 100644 index 000000000..c0e6c63ec --- /dev/null +++ b/layouts/_default/_markup/render-heading.html @@ -0,0 +1,10 @@ +{{ .Text | safeHTML }} + {{- if in (slice 2 3 4 6) .Level }}{{" " -}} + + + + + + +{{- end -}} + diff --git a/layouts/_default/_markup/render-link.html b/layouts/_default/_markup/render-link.html index a0ee6b190..726610258 100644 --- a/layouts/_default/_markup/render-link.html +++ b/layouts/_default/_markup/render-link.html @@ -185,7 +185,7 @@ either of these shortcodes in conjunction with this render hook. {{- end }} {{- /* Render anchor element. */ -}} - + + + + + {{ .Title }} + + + + {{ partial "layouts/head/head-js.html" . }} + {{ with (templates.Defer (dict "key" "global")) }} + {{ $t := debug.Timer "tailwindcss" }} + {{ with resources.Get "css/styles.css" }} + {{ $opts := dict + "inlineImports" true + "minify" (not hugo.IsDevelopment) + }} + {{ with . | css.TailwindCSS $opts }} + {{ partial "helpers/linkcss.html" (dict "r" .) }} + {{ end }} + {{ end }} + {{ $t.Stop }} + {{ end }} + {{ partial "layouts/head/head.html" . }} + + + {{ partial "layouts/hooks/body-start.html" . }} + {{/* Layout. */}} + {{ block "header" . }} + {{ partial "layouts/header/header.html" . }} + {{ end }} + {{ block "hero" . }} + {{ end }} +
+
+ {{ block "main" . }}{{ end }} +
+ {{ block "rightsidebar" . }} + + {{ end }} +
+ {{/* Common icons. */}} + {{ partial "layouts/icons.html" . }} + {{/* Footer. */}} + {{ block "footer" . }} + {{ partial "layouts/footer.html" . }} + {{ end }} + {{ partial "layouts/hooks/body-end.html" . }} + + diff --git a/layouts/_default/list.html b/layouts/_default/list.html new file mode 100644 index 000000000..76513788f --- /dev/null +++ b/layouts/_default/list.html @@ -0,0 +1,67 @@ +{{ define "main" }} + {{ $pages := "" }} + {{ $showDate := false }} + {{ if .IsPage }} + {{/* We currently have a slightly odd content structure with no top level /docs section. */}} + {{ $pages = .CurrentSection.Pages }} + {{ else }} + {{ if eq .Section "news" }} + {{ $pages = partial "news/get-news-items.html" . }} + {{ $showDate = true }} + {{ else }} + {{ $pages = .Pages }} + {{ end }} + {{ end }} + + +
+ {{ partial "layouts/docsheader.html" . }} + +
+{{ end }} + +{{ define "rightsidebar" }} + {{ printf "%c" '\u00A0' }} +{{ end }} diff --git a/layouts/_default/single.html b/layouts/_default/single.html new file mode 100644 index 000000000..b6587633b --- /dev/null +++ b/layouts/_default/single.html @@ -0,0 +1,71 @@ +{{ define "main" }} + {{ $ttop := debug.Timer "single" }} +
+ {{ partial "layouts/docsheader.html" . }} +
+ {{ with .Params.description }} +
+ {{ . | markdownify }} +
+ {{ end }} + + {{ $t := debug.Timer "single.categories" }} + {{ $categories := .GetTerms "categories" }} + {{ with $categories }} +
+ {{ range . }} + {{ $text := .LinkTitle }} + {{ $class := "" }} + {{ range (slice true false ) }} + {{ $color := partial "helpers/funcs/color-from-string.html" (dict "text" $text "dark" . "--single" "green" ) }} + + {{ $prefix := "" }} + {{ if . }} + {{ $prefix = "dark:" }} + {{ end }} + {{ $class = printf "%sbg-%s-%d %stext-%s-%d border %sborder-%s-%d" + $prefix $color.color $color.shade1 + $prefix $color.color $color.shade2 + $prefix $color.color $color.shade3 + }} + {{ end }} + + + + {{ .LinkTitle }} + + {{ end }} +
+ {{ end }} + {{ $t.Stop }} + + {{ if .Params.action.signatures }} +
+ {{- partial "docs/functions-signatures.html" . -}} + {{- partial "docs/functions-return-type.html" . -}} + {{- partial "docs/functions-aliases.html" . -}} +
+ {{ end }} + {{ $t := debug.Timer "single.content" }} + {{ .Content }} + {{ $t.Stop }} + {{ $t := debug.Timer "single.page-edit" }} + {{ partial "layouts/page-edit.html" . }} + {{ $t.Stop }} +
+
+ {{ $ttop.Stop }} +{{ end }} + +{{ define "rightsidebar_content" }} + {{/* in-this-section.html depends on these being reneredc first. */}} + {{ $related := partial "layouts/related.html" . }} + {{ $toc := partial "layouts/toc.html" . }} + {{ if not .Params.hide_in_this_section }} + {{ partial "layouts/in-this-section.html" . }} + {{ end }} + {{ $related }} + {{ $toc }} +{{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/index.headers b/layouts/index.headers similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/index.headers rename to layouts/index.headers diff --git a/layouts/index.html b/layouts/index.html new file mode 100644 index 000000000..50dc2fbf3 --- /dev/null +++ b/layouts/index.html @@ -0,0 +1,52 @@ +{{ define "main" }} +
+ {{ partial "layouts/home/opensource.html" . }} +
+ {{ partial "layouts/home/sponsors.html" (dict "ctx" . "gtag" "home" ) }} +
+ {{ partial "layouts/home/features.html" . }} +
+{{ end }} + +{{ define "hero" }} +
+
+
+ Hugo Logo +

+ The world’s fastest framework for building websites +

+
+ Hugo is one of the most popular open-source static site generators. + With its amazing speed and flexibility, Hugo makes building websites + fun again. +
+
+ {{ with site.GetPage "/getting-started" }} + {{ .LinkTitle }} + {{ end }} +
+ {{ partial "layouts/search/button.html" (dict "page" . "standalone" true) }} +
+
+
+
+
+{{ end }} + +{{ define "rightsidebar" }} + {{ printf "%c" '\u00A0' }} +{{ end }} + +{{ define "leftsidebar" }} + {{ printf "%c" '\u00A0' }} +{{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/index.redir b/layouts/index.redir similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/index.redir rename to layouts/index.redir diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/index.rss.xml b/layouts/index.rss.xml similarity index 95% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/index.rss.xml rename to layouts/index.rss.xml index 26afc1816..460c4d30e 100644 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/index.rss.xml +++ b/layouts/index.rss.xml @@ -9,7 +9,7 @@ {{- with site.Copyright }} {{ . }} {{- end }} - {{- with .OutputFormats.Get "RSS" }} + {{- with .OutputFormats.Get "rss" }} {{ printf "" .Permalink .MediaType | safeHTML }} {{- end }} @@ -17,7 +17,7 @@ {{- /* Get releases from GitHub. */}} {{- $u := "https://api.github.com/repos/gohugoio/hugo/releases" }} - {{- $releases := partial "utilities/get-remote-data.html" $u }} + {{- $releases := partial "helpers/funcs/get-remote-data.html" $u }} {{- $releases = where $releases "draft" false }} {{- $releases = where $releases "prerelease" false }} {{- range $releases | first 20 }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/docs/functions-aliases.html b/layouts/partials/docs/functions-aliases.html similarity index 56% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/docs/functions-aliases.html rename to layouts/partials/docs/functions-aliases.html index 3db9db4dc..dc562307a 100644 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/docs/functions-aliases.html +++ b/layouts/partials/docs/functions-aliases.html @@ -3,10 +3,10 @@ {{- if gt (len .) 1 }} {{- $label = "Aliases" }} {{- end }} -

{{ $label }}

+

{{ $label }}

{{- range . }} -
+    
{{- . -}} -
+
{{- end }} {{- end -}} diff --git a/layouts/partials/docs/functions-return-type.html b/layouts/partials/docs/functions-return-type.html new file mode 100644 index 000000000..13c8c96f4 --- /dev/null +++ b/layouts/partials/docs/functions-return-type.html @@ -0,0 +1,6 @@ +{{- with .Params.action.returnType }} +

Returns

+
+ {{- . -}} +
+{{- end -}} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/docs/functions-signatures.html b/layouts/partials/docs/functions-signatures.html similarity index 63% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/docs/functions-signatures.html rename to layouts/partials/docs/functions-signatures.html index dce160227..35d950265 100644 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/docs/functions-signatures.html +++ b/layouts/partials/docs/functions-signatures.html @@ -1,12 +1,12 @@ {{- with .Params.action.signatures }} -

Syntax

+

Syntax

{{- range . }} {{- $signature := . }} {{- if $.Params.function.returnType }} {{- $signature = printf "%s ⟼ %s" . $.Params.function.returnType }} {{- end }} -
+    
{{- $signature -}} -
+ {{- end }} {{- end -}} diff --git a/layouts/partials/helpers/funcs/color-from-string.html b/layouts/partials/helpers/funcs/color-from-string.html new file mode 100644 index 000000000..cd599530b --- /dev/null +++ b/layouts/partials/helpers/funcs/color-from-string.html @@ -0,0 +1,25 @@ +{{ $colors := slice "slate" "green" "cyan" "blue" }} +{{ with .single }} + {{ $colors = slice . }} +{{ end }} + +{{ $shades := slice 300 400 500 }} +{{ if not .dark }} + {{ $shades = slice 700 800 }} +{{ end }} +{{ $hash := (hash.FNV32a .text) }} +{{ $i := mod $hash (len $colors) }} +{{ $j := mod $hash (len $shades) }} +{{ $color := index $colors $i }} +{{ $shade1 := index $shades $j }} +{{ $shade2 := 0 }} +{{ $shade3 := 0 }} +{{ if gt $shade1 500 }} + {{ $shade2 = math.Min (sub $shade1 500) 100 | int }} + {{ $shade3 = sub $shade1 100 }} +{{ else }} + {{ $shade2 = math.Max (add $shade1 500) 700 | int }} + {{ $shade3 = add $shade1 200 }} +{{ end }} +{{ $res := dict "color" $color "shade1" $shade1 "shade2" $shade2 "shade3" $shade3 }} +{{ return $res }} diff --git a/layouts/partials/helpers/funcs/get-github-info.html b/layouts/partials/helpers/funcs/get-github-info.html new file mode 100644 index 000000000..7e2dc89fa --- /dev/null +++ b/layouts/partials/helpers/funcs/get-github-info.html @@ -0,0 +1,28 @@ +{{ $url := "https://api.github.com/repos/gohugoio/hugo" }} +{{ $cacheKey := print $url (now.Format "2006-01-02") }} +{{ $headers := dict }} +{{ with os.Getenv "HUGO_GH_TOKEN" }} + {{ $headers = dict "Authorization" (printf "Bearer %s" .) }} +{{ end }} +{{ $opts := dict "headers" $headers "key" $cacheKey }} +{{ $githubRepoInfo := dict }} +{{ with try (resources.GetRemote $url $opts) }} + {{ with .Err }} + {{ warnf "Failed to get GitHub repo info: %s" . }} + {{ else with (.Value | transform.Unmarshal) }} + {{ $githubRepoInfo = dict + "html_url" .html_url + "stargazers_url" .stargazers_url + "watchers_count" .watchers_count + "stargazers_count" .stargazers_count + "forks_count" .forks_count + "contributors_url" .contributors_url + "releases_url" .releases_url + "forks_count" .forks_count + }} + {{ else }} + {{ errorf "Unable to get remote resource %q" $url }} + {{ end }} +{{ end }} + +{{ return $githubRepoInfo }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/utilities/get-remote-data.html b/layouts/partials/helpers/funcs/get-remote-data.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/utilities/get-remote-data.html rename to layouts/partials/helpers/funcs/get-remote-data.html diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/gtag.html b/layouts/partials/helpers/gtag.html similarity index 80% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/gtag.html rename to layouts/partials/helpers/gtag.html index 7c6a9ade5..59bf36ba2 100644 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/partials/gtag.html +++ b/layouts/partials/helpers/gtag.html @@ -1,11 +1,13 @@ {{ with site.Config.Services.GoogleAnalytics.ID }} - + +{{ else }} + {{ with $r | fingerprint }} + + {{ end }} +{{ end }} diff --git a/layouts/partials/helpers/picture.html b/layouts/partials/helpers/picture.html new file mode 100644 index 000000000..7f30f1437 --- /dev/null +++ b/layouts/partials/helpers/picture.html @@ -0,0 +1,25 @@ +{{ $image := .image }} +{{ $width := .width | default 1000 }} +{{ $width1x := div $width 2 }} +{{ $imageWebp := $image.Resize (printf "%dx webp" $width) }} +{{ $image1x := $image.Resize (printf "%dx" $width1x) }} +{{ $image1xWebp := $image.Resize (printf "%dx webp" $width1x) }} +{{ $class := .class | default "h-64 tablet:h-96 lg:h-full w-full object-cover lg:absolute" }} + + + + + + + diff --git a/layouts/partials/layouts/blocks/alert.html b/layouts/partials/layouts/blocks/alert.html new file mode 100644 index 000000000..705ce0e7e --- /dev/null +++ b/layouts/partials/layouts/blocks/alert.html @@ -0,0 +1,27 @@ +{{ $title := .title | default "" }} +{{ $color := .color | default "yellow" }} +{{ $icon := .icon | default "exclamation" }} +{{ $text := .text | default "" }} +{{ $class := .class | default "mt-6 mb-8" }} +
+
+
+ + + +
+
+ {{ with $title }} +

+ {{ . }} +

+ {{ end }} +
+

+ {{ $text }} +

+
+
+
+
diff --git a/layouts/partials/layouts/blocks/modal.html b/layouts/partials/layouts/blocks/modal.html new file mode 100644 index 000000000..7d825c06e --- /dev/null +++ b/layouts/partials/layouts/blocks/modal.html @@ -0,0 +1,30 @@ +
+
+ {{ .modal_button }} +
+ +
diff --git a/layouts/partials/layouts/breadcrumbs.html b/layouts/partials/layouts/breadcrumbs.html new file mode 100644 index 000000000..d0628c7ee --- /dev/null +++ b/layouts/partials/layouts/breadcrumbs.html @@ -0,0 +1,44 @@ +{{ $documentation := site.GetPage "/documentation" }} + + + + +{{ define "breadcrumbs-arrow" }} + + + +{{ end }} diff --git a/layouts/partials/layouts/docsheader.html b/layouts/partials/layouts/docsheader.html new file mode 100644 index 000000000..7e8e950f3 --- /dev/null +++ b/layouts/partials/layouts/docsheader.html @@ -0,0 +1,9 @@ +
+ {{ partial "layouts/breadcrumbs.html" . }} + {{ if and .IsPage (not (eq .Layout "list")) }} +

+ {{ .Title }} +

+ {{ end }} +
diff --git a/layouts/partials/layouts/explorer.html b/layouts/partials/layouts/explorer.html new file mode 100644 index 000000000..bb6f8e96a --- /dev/null +++ b/layouts/partials/layouts/explorer.html @@ -0,0 +1,47 @@ +{{/* This is currently not in use, but kept in case I change my mind. */}} + + +{{ define "docs-explorer-section" }} + {{ $p := .p }} + {{ $level := .level }} + {{ $pleft := $level }} + {{ if gt $level 0 }} + {{ $pleft = add $level 1 }} + {{ end }} + {{ $pl := printf "pl-%d" $pleft }} + {{ $pages := $p.Sections }} + + {{ range $pages }} + {{ $hasChildren := gt (len .Pages) 0 }} + {{ $class := cond (eq $level 0) "text-primary hover:text-primary/70" "text-gray-900 dark:text-gray-400 hover:dark:text-gray-300" }} +
  • + + {{ .LinkTitle }} + + {{ if $hasChildren }} +
      + {{ template "docs-explorer-section" (dict "p" . "level" (add $level 1)) }} +
    + {{ end }} +
  • + {{ end }} + +{{ end }} diff --git a/layouts/partials/layouts/footer.html b/layouts/partials/layouts/footer.html new file mode 100644 index 000000000..99a856f7e --- /dev/null +++ b/layouts/partials/layouts/footer.html @@ -0,0 +1,72 @@ +
    +
    +
    + {{/* Column 1 */}} +
    +
    + By the + Hugo Authors
    +
    + + Hugo Logo + + +
    + + {{/* Sponsors */}} +
    + {{ partial "layouts/home/sponsors.html" (dict + "ctx" . + "gtag" "footer" + + ) + }} +
    +
    +
    +

    + The Hugo logos are copyright © Steve Francia 2013–{{ now.Year }}. The + Hugo Gopher is based on an original work by Renée French. +

    +
    +
    +
    diff --git a/layouts/partials/layouts/head/head-js.html b/layouts/partials/layouts/head/head-js.html new file mode 100644 index 000000000..d83efcd0f --- /dev/null +++ b/layouts/partials/layouts/head/head-js.html @@ -0,0 +1,11 @@ +{{ $githubInfo := partialCached "helpers/funcs/get-github-info.html" . "-" }} +{{ $opts := dict "minify" true }} +{{ with resources.Get "js/head-early.js" | js.Build $opts }} + {{ partial "helpers/linkjs.html" (dict "r" . "attributes" (dict "async" "")) }} +{{ end }} +{{ with resources.Get "js/main.js" | js.Build $opts }} + {{ partial "helpers/linkjs.html" (dict "r" . "attributes" (dict "defer" "")) }} +{{ end }} +{{ with resources.Get "js/turbo.js" | js.Build $opts }} + {{ partial "helpers/linkjs.html" (dict "r" . "attributes" (dict "defer" "")) }} +{{ end }} diff --git a/layouts/partials/layouts/head/head.html b/layouts/partials/layouts/head/head.html new file mode 100644 index 000000000..391e80dca --- /dev/null +++ b/layouts/partials/layouts/head/head.html @@ -0,0 +1,52 @@ + + + + +{{ hugo.Generator }} + +{{ if hugo.IsProduction }} + +{{ else }} + +{{ end }} + + + {{ with .Title }}{{ . }} |{{ end }} + {{ .Site.Title }} + + + + + + + + + + + +{{ range .AlternativeOutputFormats -}} + +{{ end -}} + + + + + + +{{ partial "opengraph/opengraph.html" . }} +{{- template "_internal/schema.html" . -}} +{{- template "_internal/twitter_cards.html" . -}} + +{{ if hugo.IsProduction }} + {{ partial "helpers/gtag.html" . }} +{{ end }} diff --git a/layouts/partials/layouts/header/githubstars.html b/layouts/partials/layouts/header/githubstars.html new file mode 100644 index 000000000..75db5682a --- /dev/null +++ b/layouts/partials/layouts/header/githubstars.html @@ -0,0 +1,16 @@ +{{ with partialCached "helpers/funcs/get-github-info.html" . "-" }} + + + + + + + + {{ printf "%0.1fk" (div .stargazers_count 1000) }} + + +{{ end }} diff --git a/layouts/partials/layouts/header/header.html b/layouts/partials/layouts/header/header.html new file mode 100644 index 000000000..079c40bae --- /dev/null +++ b/layouts/partials/layouts/header/header.html @@ -0,0 +1,44 @@ +
    +
    + {{ with site.Home }} + HUGO + {{ end }} +
    +
    + {{ range .Site.Menus.global }} + {{ .Name }} + {{ end }} + +
    + +
    + {{/* Search. */}} + {{ partial "layouts/search/input.html" . }} +
    +
    + {{/* QR code. */}} + {{ partial "layouts/header/qr.html" . }} + {{/* Theme selector. */}} + {{ partial "layouts/header/theme.html" . }} + + {{/* Social. */}} + +
    +
    diff --git a/layouts/partials/layouts/header/qr.html b/layouts/partials/layouts/header/qr.html new file mode 100644 index 000000000..3d3f62e17 --- /dev/null +++ b/layouts/partials/layouts/header/qr.html @@ -0,0 +1,25 @@ +{{ $t := debug.Timer "qr" }} +{{ $qr := partial "partials/_inline/qr" (dict + "page" $ + "img_class" "w-10 bg-white view-transition-qr" ) +}} +{{ $qrBig := partial "partials/_inline/qr" (dict "page" $ "img_class" "w-64 p-4") }} +{{ $t.Stop }} + + +{{ define "partials/_inline/qr" }} + {{ $img_class := .img_class | default "w-10" }} + {{ with images.QR $.page.Permalink (dict "targetDir" "images/qr") }} + + QR code linking to {{ $.page.Permalink }} + {{ end }} +{{ end }} diff --git a/layouts/partials/layouts/header/theme.html b/layouts/partials/layouts/header/theme.html new file mode 100644 index 000000000..e0b356d1d --- /dev/null +++ b/layouts/partials/layouts/header/theme.html @@ -0,0 +1,35 @@ +
    + +
    diff --git a/layouts/partials/layouts/home/features.html b/layouts/partials/layouts/home/features.html new file mode 100644 index 000000000..527c98cb1 --- /dev/null +++ b/layouts/partials/layouts/home/features.html @@ -0,0 +1,56 @@ +{{/* icons source: https://heroicons.com/ */}} +{{ $dataTOML := ` + [[features]] + heading = "Optimized for speed" + copy = "Written in Go, optimized for speed and designed for flexibility. With its advanced templating system and fast asset pipelines, Hugo renders a large site in seconds, often less." + icon = """ + + + """ + [[features]] + heading = "Flexible framework" + copy = "With its multilingual support, and powerful taxonomy system, Hugo is widely used to create documentation sites, landing pages, corporate, government, nonprofit, education, news, event, and project sites." + icon = """ + + + """ + [[features]] + heading = "Fast assets pipeline" + copy = "Image processing (convert, resize, crop, rotate, adjust colors, apply filters, overlay text and images, and extract EXIF data), JavaScript bundling (tree shake, code splitting), Sass processing, great TailwindCSS support." + icon = """ + + + """ + [[features]] + heading = "Embedded web server" + copy = "Use Hugo's embedded web server during development to instantly see changes to content, structure, behavior, and presentation. " + icon = """ + + + """ + ` +}} +{{ $data := $dataTOML | transform.Unmarshal }} +
    +
    +
    + {{ range $data.features }} +
    +
    +
    + {{ .icon | safeHTML }} +
    + {{ .heading }} +
    +
    + {{ .copy }} +
    +
    + {{ end }} + +
    +
    +
    diff --git a/layouts/partials/layouts/home/opensource.html b/layouts/partials/layouts/home/opensource.html new file mode 100644 index 000000000..b64bdd22b --- /dev/null +++ b/layouts/partials/layouts/home/opensource.html @@ -0,0 +1,110 @@ +{{ $githubInfo := partialCached "helpers/funcs/get-github-info.html" . "-" }} +
    +
    +
    +
    +

    + Open source +

    +

    + Hugo is open source and free to use. It is distributed under the + Apache 2.0 License. +

    +
    +
    +
    + + + + Popular. +
    +
    + As of writing this, Hugo has + {{ $githubInfo.stargazers_count }} + stars on GitHub. Join the crowd and hit the + Star button. +
    +
    +
    +
    + + + + Active. +
    +
    + Hugo has a large and active community. If you have questions or + need help, you can ask in the + Hugo forums. +
    +
    +
    +
    + + + + Frequent releases. +
    +
    + Hugo has a fast + release + cycle. The project is actively maintained and new features are + added regularly. +
    +
    +
    +
    +
    + {{ partial "helpers/picture.html" (dict + "image" (resources.Get "images/hugo-github-screenshot.png") + "alt" "Hugo GitHub Repository" + "width" 640 + "class" "w-full max-w-[38rem] ring-1 shadow-xl dark:shadow-gray-500 ring-gray-400/10") + }} +
    +
    diff --git a/layouts/partials/layouts/home/sponsors.html b/layouts/partials/layouts/home/sponsors.html new file mode 100644 index 000000000..1f92e1174 --- /dev/null +++ b/layouts/partials/layouts/home/sponsors.html @@ -0,0 +1,43 @@ +{{ $gtag := .gtag | default "unknown" }} +{{ $gtag := .gtag | default "unknown" }} +{{ $isFooter := (eq $gtag "footer") }} +{{ $utmSource := cond $isFooter "hugofooter" "hugohome" }} +{{ $containerClass := .containerClass | default "mx-auto max-w-7xl px-6 lg:px-8" }} +{{/* TODO1 prod: onclick="trackOutboundLink({{ printf "'%s', '%s'" $gtagID $url | safeJS }});" +*/}} +{{ with .ctx.Site.Data.sponsors }} +
    +

    Hugo Sponsors

    +
    + {{ range .banners }} +
    + {{ $query_params := .query_params | default "" }} + {{ $url := .link }} + {{ if not .no_query_params }} + {{ $url = printf "%s?%s%s" .link $query_params (querify "utm_source" (.utm_source | default $utmSource ) "utm_medium" (.utm_medium | default "banner") "utm_campaign" (.utm_campaign | default "hugosponsor") "utm_content" (.utm_content | default "gohugoio")) | safeURL }} + {{ end }} + {{ $logo := resources.Get .logo }} + {{ $gtagID := printf "Sponsor %s %s" .name $gtag | title }} + + + +
    + {{ end }} +
    +
    +{{ end }} diff --git a/layouts/partials/layouts/hooks/body-end.html b/layouts/partials/layouts/hooks/body-end.html new file mode 100644 index 000000000..ba4a81300 --- /dev/null +++ b/layouts/partials/layouts/hooks/body-end.html @@ -0,0 +1 @@ +{{/* Empty for now */}} diff --git a/layouts/partials/layouts/hooks/body-start.html b/layouts/partials/layouts/hooks/body-start.html new file mode 100644 index 000000000..3430bd846 --- /dev/null +++ b/layouts/partials/layouts/hooks/body-start.html @@ -0,0 +1,3 @@ +{{ with resources.Get "js/body-start.js" | js.Build (dict "minify" true) }} + {{ partial "helpers/linkjs.html" (dict "r" . "attributes" (dict "" "")) }} +{{ end }} diff --git a/layouts/partials/layouts/icons.html b/layouts/partials/layouts/icons.html new file mode 100644 index 000000000..c7194bc03 --- /dev/null +++ b/layouts/partials/layouts/icons.html @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/layouts/partials/layouts/in-this-section.html b/layouts/partials/layouts/in-this-section.html new file mode 100644 index 000000000..8be8cff8b --- /dev/null +++ b/layouts/partials/layouts/in-this-section.html @@ -0,0 +1,32 @@ +{{- with .CurrentSection.RegularPages }} + {{ $hasTocOrRelated := or ($.Store.Get "hasToc") ($.Store.Get "hasRelated") }} +
    +

    + In this section +

    + + +
    +{{- end }} diff --git a/layouts/partials/layouts/page-edit.html b/layouts/partials/layouts/page-edit.html new file mode 100644 index 000000000..b6f76a560 --- /dev/null +++ b/layouts/partials/layouts/page-edit.html @@ -0,0 +1,24 @@ +
    +
    + +
    + Last updated: + {{ .Lastmod.Format "January 2, 2006" }}{{ with .GitInfo }} + : + {{ .Subject }} ({{ .AbbreviatedHash }}) + {{ end }} +
    + + {{ with .File }} + {{ $href := printf "%sedit/master/content/%s/%s" site.Params.ghrepo $.Lang .Path }} + + Improve this page + + {{ end }} +
    diff --git a/layouts/partials/layouts/related.html b/layouts/partials/layouts/related.html new file mode 100644 index 000000000..16a04dce1 --- /dev/null +++ b/layouts/partials/layouts/related.html @@ -0,0 +1,37 @@ +{{- $heading := "See also" }} +{{- $related := slice }} + +{{- if .Params.action.related }} + {{- $related = slice }} + {{- range .Params.action.related }} + {{- $path := . | lower }} + {{- with or (site.GetPage $path) ($.GetPage $path) }} + {{- $related = $related | append . }} + {{- else }} + {{/* TODO1 make error */}} + {{- warnf "The 'related' partial was unable to get page %s" . }} + {{- end }} + {{- end }} +{{- else }} + {{- $related = site.RegularPages.Related . }} +{{- end }} +{{/* Avoid repeating pages that's listed in In this section. */}} +{{- $related = $related | complement .CurrentSection.RegularPages | first 7 }} +{{- with $related }} + {{ $.Store.Set "hasRelated" true }} +

    + {{ $heading }} +

    + +{{- end }} diff --git a/layouts/partials/layouts/search/button.html b/layouts/partials/layouts/search/button.html new file mode 100644 index 000000000..3dcb1eb9d --- /dev/null +++ b/layouts/partials/layouts/search/button.html @@ -0,0 +1,19 @@ + diff --git a/layouts/partials/layouts/search/input.html b/layouts/partials/layouts/search/input.html new file mode 100644 index 000000000..5f5ff07b9 --- /dev/null +++ b/layouts/partials/layouts/search/input.html @@ -0,0 +1,4 @@ +
    + {{ partial "layouts/search/button.html" (dict "page" . "standalone" false) }} + {{ partial "layouts/search/results.html" . }} +
    diff --git a/layouts/partials/layouts/search/results.html b/layouts/partials/layouts/search/results.html new file mode 100644 index 000000000..6ef519615 --- /dev/null +++ b/layouts/partials/layouts/search/results.html @@ -0,0 +1,82 @@ + diff --git a/layouts/partials/layouts/toc.html b/layouts/partials/layouts/toc.html new file mode 100644 index 000000000..06946d885 --- /dev/null +++ b/layouts/partials/layouts/toc.html @@ -0,0 +1,42 @@ +{{ with .Fragments.Headings }} + {{ $.Store.Set "hasToc" true }} +
    +

    + On this page +

    + +
    +{{ end }} + +{{ define "render-toc-level" }} + {{ range . }} + {{ if and .ID (or (ge .Level 2) (lt .Level 4)) }} +
  • + + {{ .Title | safeHTML }} + +
  • + {{ end }} + {{ with .Headings }} +
      + {{ template "render-toc-level" . }} +
    + {{ end }} + {{ end }} +{{ end }} diff --git a/layouts/partials/news/get-news-items.html b/layouts/partials/news/get-news-items.html new file mode 100644 index 000000000..cb1a930d3 --- /dev/null +++ b/layouts/partials/news/get-news-items.html @@ -0,0 +1,45 @@ +{{ $news_items := slice }} + +{{/* Get releases from GitHub. */}} +{{ $u := "https://api.github.com/repos/gohugoio/hugo/releases" }} +{{ $releases := partial "helpers/funcs/get-remote-data.html" $u }} +{{ $releases = where $releases "draft" false }} +{{ $releases = where $releases "prerelease" false }} +{{ range $releases | first 20 }} + {{ $publishDate := .published_at | time.AsTime }} + + {{/* Correct the v0.138.0 release date. See https://github.com/gohugoio/hugo/issues/13066. */}} + {{ if eq .name "v0.138.0" }} + {{ $publishDate = "2024-11-06T11:22:34Z" | time.AsTime }} + {{ end }} + + {{ $ctx := dict + "Date" $publishDate + "Title" (printf "Release %s" .name) + "LinkTitle" (printf "Release %s" .name) + "Permalink" .html_url + "RelPermalink" .html_url + "Section" "news" + "Summary" "" + }} + {{ $news_items = $news_items | append $ctx }} +{{ end }} + +{{/* Get content pages from news section. */}} +{{ range .Pages }} + {{ $ctx := dict + "Date" .Date + "Title" .Title + "LinkTitle" .Title + "RelPermalink" .RelPermalink + "Section" "news" + "Summary" .Summary + "Params" (dict "description" .Description) + }} + {{ $news_items = $news_items | append $ctx }} +{{ end }} + +{{/* Sort by date (descending) and render. */}} +{{ $news_items = sort $news_items "Date" "desc" }} + +{{ return $news_items }} diff --git a/layouts/partials/opengraph/get-featured-image.html b/layouts/partials/opengraph/get-featured-image.html new file mode 100644 index 000000000..50ee2a44d --- /dev/null +++ b/layouts/partials/opengraph/get-featured-image.html @@ -0,0 +1,26 @@ +{{ $images := $.Resources.ByType "image" }} +{{ $featured := $images.GetMatch "*feature*" }} +{{ if not $featured }} + {{ $featured = $images.GetMatch "{*cover*,*thumbnail*}" }} +{{ end }} +{{ if not $featured }} + {{ $featured = resources.Get "/opengraph/gohugoio-card-base-1.png" }} + {{ $size := 80 }} + {{ $title := $.LinkTitle }} + {{ if gt (len $title) 20 }} + {{ $size = 70 }} + {{ end }} + + {{ $text := $title }} + {{ $textOptions := dict + "color" "#FFF" + "size" $size + "lineSpacing" 10 + "x" 65 "y" 80 + "font" (resources.Get "/opengraph/mulish-black.ttf") + }} + + {{ $featured = $featured | images.Filter (images.Text $text $textOptions) }} +{{ end }} + +{{ return $featured }} diff --git a/layouts/partials/opengraph/opengraph.html b/layouts/partials/opengraph/opengraph.html new file mode 100644 index 000000000..1c89b0814 --- /dev/null +++ b/layouts/partials/opengraph/opengraph.html @@ -0,0 +1,84 @@ + + + + + +{{- with $.Params.images -}} + {{- range first 6 . }} + + {{ end -}} +{{- else -}} + {{- $featured := partial "opengraph/get-featured-image.html" . }} + {{- with $featured -}} + + {{- else -}} + {{- with $.Site.Params.images }} + + {{ end -}} + {{- end -}} +{{- end -}} + +{{- if .IsPage }} + {{- $iso8601 := "2006-01-02T15:04:05-07:00" -}} + + {{ with .PublishDate }} + + {{ end }} + {{ with .Lastmod }} + + {{ end }} +{{- end -}} + +{{- with .Params.audio }}{{ end }} +{{- with .Params.locale }} + +{{ end }} +{{- with .Site.Params.title }} + +{{ end }} +{{- with .Params.videos }} + {{- range . }} + + {{ end }} + +{{ end }} + +{{- /* If it is part of a series, link to related articles */}} +{{- $permalink := .Permalink }} +{{- $siteSeries := .Site.Taxonomies.series }} +{{ with .Params.series }} + {{- range $name := . }} + {{- $series := index $siteSeries ($name | urlize) }} + {{- range $page := first 6 $series.Pages }} + {{- if ne $page.Permalink $permalink }} + + {{ end }} + {{- end }} + {{ end }} + +{{ end }} + +{{- /* Facebook Page Admin ID for Domain Insights */}} +{{- with site.Params.social.facebook_admin }} + +{{ end }} diff --git a/layouts/shortcodes/chroma-lexers.html b/layouts/shortcodes/chroma-lexers.html new file mode 100644 index 000000000..38241be33 --- /dev/null +++ b/layouts/shortcodes/chroma-lexers.html @@ -0,0 +1,7 @@ +
    + {{ range .Site.Data.docs.chroma.lexers }} +
    {{ .Name }}
    +
    {{ with .Aliases }}{{ delimit . ", " }}{{ end }}
    + {{ end }} +
    + \ No newline at end of file diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/code-toggle.html b/layouts/shortcodes/code-toggle.html similarity index 59% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/code-toggle.html rename to layouts/shortcodes/code-toggle.html index d1131132d..4e64fded0 100644 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/code-toggle.html +++ b/layouts/shortcodes/code-toggle.html @@ -60,27 +60,43 @@ {{- else }} {{- $code = $.Inner }} {{- end }} -
    -
    - {{- with $file }} -
    +
    + + + +
    -
    - {{- range $langs }} + {{ end }} + + {{ if $code }} + {{ range $i, $lang := $langs }}
    + class="max-h-96 overflow-y-auto border-l-1 border-b-1 border-r-1 border-gray-300 dark:border-gray-700" + x-ref="{{ $lang }}" + x-cloak + x-transition:enter.opacity.duration.300ms + x-show="$store.nav.userSettings.settings.configFileType === '{{ index $langs $i }}'"> {{- $hCode := $code | transform.Remarshal . }} {{- if and $fm (in (slice "toml" "yaml") .) }} {{- $hCode = printf "%s\n%s\n%s" $placeHolder $hCode $placeHolder }} @@ -88,14 +104,6 @@ {{- $hCode = $hCode | replaceRE `\n+` "\n" }} {{ highlight $hCode . "" | replaceRE $placeHolder (index $delimiters .) | safeHTML }}
    - {{- if $copy }} - - {{- /* Functionality located within filesaver.js The copy here is located in the css with .copy class so it can be replaced with JS on success */}} - {{- end }} - {{- end }} -
    + {{ end }} + {{ end }}
    diff --git a/layouts/shortcodes/code.html b/layouts/shortcodes/code.html new file mode 100644 index 000000000..1ccb44b7d --- /dev/null +++ b/layouts/shortcodes/code.html @@ -0,0 +1,38 @@ +{{- $codeLang := or (.Get "lang") "" }} +
    + {{ if (.Get "copy") }} + + + + {{ end }} + {{- with .Get "file" -}} + {{- if not $codeLang }} + {{- $ext := strings.TrimPrefix "." (path.Ext .) }} + {{- $codeLang = cond (eq $ext "html") "go-html-template" $ext }} + {{- end }} +
    + {{ . }} +
    + {{- end -}} + + +
    + {{ $inner := trim .Inner "\n" | safeHTML }} + {{ if .Get "nocode" }} + {{ $inner }} + {{ else }} + {{ with $codeLang }} + {{ highlight $inner . "" }} + {{ else }} +
    {{ $inner }}
    +        
    + {{ end }} + {{ end }} +
    +
    diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/datatable-filtered.html b/layouts/shortcodes/datatable-filtered.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/datatable-filtered.html rename to layouts/shortcodes/datatable-filtered.html diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/datatable.html b/layouts/shortcodes/datatable.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/datatable.html rename to layouts/shortcodes/datatable.html diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/deprecated-in.html b/layouts/shortcodes/deprecated-in.html similarity index 61% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/deprecated-in.html rename to layouts/shortcodes/deprecated-in.html index 7219d7f54..0272ea4a6 100644 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/deprecated-in.html +++ b/layouts/shortcodes/deprecated-in.html @@ -3,12 +3,15 @@ {{ with .Get 0 }} {{ $version := printf "v%v" (strings.TrimLeft "vV" .) }} {{ $href := printf "https://github.com/gohugoio/hugo/releases/tag/%s" $version }} - + {{ $text := (printf `Deprecated in %s. +%s` $href $version $.Inner) | safeHTML }} + + {{ partial "layouts/blocks/alert.html" (dict + "text" $text + "color" "orange" + "icon" "exclamation" + ) +}} {{ else }} {{ errorf "The %q shortcode requires a single positional parameter indicating version. See %s" .Name .Position }} {{ end }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/eturl.html b/layouts/shortcodes/eturl.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/eturl.html rename to layouts/shortcodes/eturl.html diff --git a/layouts/shortcodes/glossary-term.html b/layouts/shortcodes/glossary-term.html index 92ad93340..7aace730e 100644 --- a/layouts/shortcodes/glossary-term.html +++ b/layouts/shortcodes/glossary-term.html @@ -9,12 +9,12 @@ Renders the definition of the given glossary term. */}} {{- with .Get 0 }} - {{- $path := printf "/getting-started/glossary/%s" (urlize .) }} + {{- $path := printf "/quick-reference/glossary/%s" (urlize .) }} {{- with site.GetPage $path }} -{{ .RenderShortcodes }}{{/* Do not indent. */}} +{{ .RenderShortcodes }} {{/* Do not indent. Do not remove non-breaking space. */}} {{- else }} {{- errorf "The glossary term (%s) shortcode was unable to find %s: see %s" $.Name $path $.Position }} {{- end }} {{- else }} {{- errorf "The glossary term (%s) shortcode requires one positional parameter: see %s" $.Name $.Position }} -{{- end }} +{{- end -}} diff --git a/layouts/shortcodes/glossary.html b/layouts/shortcodes/glossary.html index 3273efd8c..e91be32ce 100644 --- a/layouts/shortcodes/glossary.html +++ b/layouts/shortcodes/glossary.html @@ -13,13 +13,12 @@ shortcode. @example {{% glossary %}} */}} -{{- $path := "/getting-started/glossary" }} +{{- $path := "/quick-reference/glossary" }} {{- with site.GetPage $path }} - {{- with $p := .Pages.ByTitle }} {{- /* Build and render alphabetical index. */}} {{- $m := dict }} - {{- range $p }} + {{- range $p := .Pages.ByTitle }} {{- $k := substr .Title 0 1 | strings.ToUpper }} {{- if index $m $k }} {{- continue }} @@ -32,12 +31,26 @@ shortcode. {{- end }} {{- /* Render glossary terms. */}} - {{- range $p }} + {{- range $p := .Pages.ByTitle }} ###### {{ .Title }}{{/* Do not indent. */}} {{ .RenderShortcodes }}{{/* Do not indent. */}} + {{- with .Params.reference }} + {{- $destination := "" }} + {{- with $u := urls.Parse . }} + {{- if $u.IsAbs }} + {{- $destination = $u.String }} + {{- else }} + {{- with site.GetPage $u.Path -}} + {{- $destination = .RelPermalink }} + {{- else }} + {{- errorf "The %q shortcode was unable to find the reference link %s: see %s" $.Name . $p.String }} + {{- end }} + {{- end }} + {{- end -}} + See [details]({{ $destination }}).{{/* Do not indent. */}} + {{- end }} {{- end }} - {{- end }} {{- else }} {{- errorf "The %q shortcode was unable to get %s: see %s" .Name $path .Position}} {{- end }} diff --git a/layouts/shortcodes/gomodules-info.html b/layouts/shortcodes/gomodules-info.html new file mode 100644 index 000000000..126d846c0 --- /dev/null +++ b/layouts/shortcodes/gomodules-info.html @@ -0,0 +1,12 @@ +{{ $text := ` + Most of the commands for **Hugo Modules** require a newer version (>= 1.18) of Go installed (see https://golang.org/dl/) and the relevant VCS client (e.g. Git, see https://git-scm.com/downloads/ ). + If you have an "older" site running on Netlify, you may have to set GO_VERSION to 1.19 or newer in your Environment settings. + + For more information about Go Modules, see: + + * https://go.dev/wiki/Modules + * https://blog.golang.org/using-go-modules + ` +}} + +{{ partial "layouts/blocks/alert.html" (dict "title" "Go Modules" "text" ($text | markdownify) "color" "orange" "icon" "exclamation") }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/hl.html b/layouts/shortcodes/hl.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/hl.html rename to layouts/shortcodes/hl.html diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/img.html b/layouts/shortcodes/img.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/img.html rename to layouts/shortcodes/img.html diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/imgproc.html b/layouts/shortcodes/imgproc.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/imgproc.html rename to layouts/shortcodes/imgproc.html diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/include.html b/layouts/shortcodes/include.html similarity index 76% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/include.html rename to layouts/shortcodes/include.html index 9456e197e..b4a20cd72 100644 --- a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/include.html +++ b/layouts/shortcodes/include.html @@ -10,10 +10,11 @@ You must call this shortcode using the {{% %}} notation. */}} {{- with .Get 0 }} - {{- with $.Page.GetPage . }} + {{- with or ($.Page.GetPage .) (site.GetPage .) }} {{- .RenderShortcodes }} {{- else }} - {{- errorf "The %q shortcode was unable to find %q. See %s" $.Name . $.Position }} + {{/* TODO1 make error */}} + {{- warnf "The %q shortcode was unable to find %q. See %s" $.Name . $.Position }} {{- end }} {{- else }} {{- errorf "The %q shortcode requires a positional parameter indicating the path of the file to include. See %s" .Name .Position }} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/list-pages-in-section.html b/layouts/shortcodes/list-pages-in-section.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/list-pages-in-section.html rename to layouts/shortcodes/list-pages-in-section.html diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/module-mounts-note.html b/layouts/shortcodes/module-mounts-note.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/module-mounts-note.html rename to layouts/shortcodes/module-mounts-note.html diff --git a/layouts/shortcodes/new-in.html b/layouts/shortcodes/new-in.html new file mode 100644 index 000000000..e99cc7bcf --- /dev/null +++ b/layouts/shortcodes/new-in.html @@ -0,0 +1,66 @@ +{{- /* + Renders a "new in" button indicating the version in which a feature was added. + + When comparing the current version to the specified version, the "new in" + button will be hidden if any of the following conditions is true: + + - The major version difference exceeds the majorVersionDiffThreshold + - The minor version difference exceeds the minorVersionDiffThreshold + + @param {string} version The semantic version string, with or without a leading v. + @returns {template.HTML} + + @examples {{< new-in 0.100.0 / +>}} + +{{< new-in 0.100.0 >}} +Some descriptive text here. +{{< /new-in >}} +*/}} +{{ $_hugo_config := `{ "version": 1 }` }} + +{{- /* Set defaults. */}} +{{- $majorVersionDiffThreshold := 0 }} +{{- $minorVersionDiffThreshold := 30 }} +{{- $displayExpirationWarning := true }} + +{{- /* Render. */}} +{{- with $version := .Get 0 | strings.TrimPrefix "v" }} + {{- $majorVersionDiff := sub (index (split hugo.Version ".") 0 | int) (index (split $version ".") 0 | int) }} + {{- $minorVersionDiff := sub (index (split hugo.Version ".") 1 | int) (index (split $version ".") 1 | int) }} + {{- if or (gt $majorVersionDiff $majorVersionDiffThreshold) (gt $minorVersionDiff $minorVersionDiffThreshold) }} + {{- if $displayExpirationWarning }} + {{- warnf "This call to the %q shortcode should be removed: %s. The button is now hidden because the specified version (%s) is older than the display threshold." $.Name $.Position $version }} + {{- end }} + {{- else }} + {{- $href := printf "https://github.com/gohugoio/hugo/releases/tag/v%s" $version }} + {{- with $.Inner }} + {{ $text := printf `

    New in v%s.

    %s` + $href $version (. | $.Page.RenderString (dict "display" "block")) + }} + + {{ partial "layouts/blocks/alert.html" (dict + "text" ($text | safeHTML) + "color" "green" + "icon" "exclamation" + ) + }} + {{- else }} + + + + + + New in + v{{ $version }} + + + {{- end }} + {{- end }} +{{- else }} + {{- errorf "The %q shortcode requires a positional parameter (version). See %s" .Name .Position }} +{{- end -}} diff --git a/layouts/shortcodes/note.html b/layouts/shortcodes/note.html new file mode 100644 index 000000000..b18d53bc7 --- /dev/null +++ b/layouts/shortcodes/note.html @@ -0,0 +1,7 @@ +{{ $_hugo_config := `{ "version": 1 }` }} +{{ partial "layouts/blocks/alert.html" (dict + "text" .Inner + "color" "blue" + "icon" "exclamation" + ) +}} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/quick-reference.html b/layouts/shortcodes/quick-reference.html similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/layouts/shortcodes/quick-reference.html rename to layouts/shortcodes/quick-reference.html diff --git a/layouts/shortcodes/readfile.html b/layouts/shortcodes/readfile.html new file mode 100644 index 000000000..1a7d6a320 --- /dev/null +++ b/layouts/shortcodes/readfile.html @@ -0,0 +1 @@ +TODO readfile.html diff --git a/netlify.toml b/netlify.toml index 52699de3a..0cd557e7c 100644 --- a/netlify.toml +++ b/netlify.toml @@ -3,7 +3,7 @@ command = "hugo --gc --minify" [build.environment] - HUGO_VERSION = "0.142.0" + HUGO_VERSION = "0.143.1" [context.production.environment] HUGO_ENV = "production" @@ -16,7 +16,7 @@ HUGO_ENV = "production" [context.deploy-preview] - command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL" + command = "hugo --gc --minify --buildFuture -b $DEPLOY_PRIME_URL --enableGitInfo" [context.branch-deploy] command = "hugo --gc --minify -b $DEPLOY_PRIME_URL" @@ -24,7 +24,32 @@ [context.next.environment] HUGO_ENABLEGITINFO = "true" -[[redirects]] - from = "/npmjs/*" - to = "/npmjs/" - status = 200 +[[headers]] + for = "/*.jpg" + + [headers.values] + Cache-Control = "public, max-age=31536000" + +[[headers]] + for = "/*.png" + + [headers.values] + Cache-Control = "public, max-age=31536000" + +[[headers]] + for = "/*.css" + + [headers.values] + Cache-Control = "public, max-age=31536000" + +[[headers]] + for = "/*.js" + + [headers.values] + Cache-Control = "public, max-age=31536000" + +[[headers]] + for = "/*.ttf" + + [headers.values] + Cache-Control = "public, max-age=31536000" diff --git a/package.json b/package.json new file mode 100644 index 000000000..92339ba25 --- /dev/null +++ b/package.json @@ -0,0 +1,22 @@ +{ + "name": "hugoDocs", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "author": "", + "license": "", + "devDependencies": { + "@tailwindcss/cli": "^4.0.0", + "@tailwindcss/typography": "^0.5.15", + "tailwindcss": "^4.0.0" + }, + "dependencies": { + "@alpinejs/focus": "^3.14.8", + "@alpinejs/persist": "^3.14.8", + "@hotwired/turbo": "^8.0.12", + "alpinejs": "^3.14.8" + } +} diff --git a/pull-theme.sh b/pull-theme.sh deleted file mode 100755 index 828b6cfb4..000000000 --- a/pull-theme.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash - -git subtree pull --prefix=themes/gohugoioTheme/ git@github.com:gohugoio/gohugoioTheme.git master --squash - diff --git a/src/css/_chroma.css b/src/css/_chroma.css deleted file mode 100644 index 1ad06604b..000000000 --- a/src/css/_chroma.css +++ /dev/null @@ -1,43 +0,0 @@ -/* Background */ .chroma { background-color: #f0f0f0 } -/* Error */ .chroma .ss4 { } -/* LineHighlight */ .chroma .hl { background-color: #ffffcc; display: block; width: 100% } -/* LineNumbers */ .chroma .ln { ; margin-right: 0.4em; padding: 0 0.4em 0 0.4em; } -/* Keyword */ .chroma .s3e8 { color: #007020; font-weight: bold } -/* KeywordPseudo */ .chroma .s3ec { color: #007020 } -/* KeywordType */ .chroma .s3ee { color: #902000 } -/* NameAttribute */ .chroma .s7d1 { color: #4070a0 } -/* NameBuiltin */ .chroma .s7d2 { color: #007020 } -/* NameClass */ .chroma .s7d4 { color: #0e84b5; font-weight: bold } -/* NameConstant */ .chroma .s7d5 { color: #60add5 } -/* NameDecorator */ .chroma .s7d6 { color: #555555; font-weight: bold } -/* NameEntity */ .chroma .s7d7 { color: #d55537; font-weight: bold } -/* NameException */ .chroma .s7d8 { color: #007020 } -/* NameFunction */ .chroma .s7d9 { color: #06287e } -/* NameLabel */ .chroma .s7dc { color: #002070; font-weight: bold } -/* NameNamespace */ .chroma .s7dd { color: #0e84b5; font-weight: bold } -/* NameTag */ .chroma .s7e2 { color: #062873; font-weight: bold } -/* NameVariable */ .chroma .s7e3 { color: #bb60d5 } -/* LiteralString */ .chroma .sc1c { color: #4070a0 } -/* LiteralStringDoc */ .chroma .sc23 { color: #4070a0; font-style: italic } -/* LiteralStringEscape */ .chroma .sc25 { color: #4070a0; font-weight: bold } -/* LiteralStringInterpol */ .chroma .sc27 { color: #70a0d0; font-style: italic } -/* LiteralStringOther */ .chroma .sc29 { color: #c65d09 } -/* LiteralStringRegex */ .chroma .sc2a { color: #235388 } -/* LiteralStringSymbol */ .chroma .sc2c { color: #517918 } -/* LiteralNumber */ .chroma .sc80 { color: #40a070 } -/* Operator */ .chroma .sfa0 { color: #666666 } -/* OperatorWord */ .chroma .sfa1 { color: #007020; font-weight: bold } -/* Comment */ .chroma .s1770 { color: #60a0b0; font-style: italic } -/* CommentSpecial */ .chroma .s1774 { color: #60a0b0; background-color: #fff0f0 } -/* CommentPreproc */ .chroma .s17d4 { color: #007020 } -/* GenericDeleted */ .chroma .s1b59 { color: #a00000 } -/* GenericEmph */ .chroma .s1b5a { font-style: italic } -/* GenericError */ .chroma .s1b5b { color: #ff0000 } -/* GenericHeading */ .chroma .s1b5c { color: #000080; font-weight: bold } -/* GenericInserted */ .chroma .s1b5d { color: #00a000 } -/* GenericOutput */ .chroma .s1b5e { color: #888888 } -/* GenericPrompt */ .chroma .s1b5f { color: #c65d09; font-weight: bold } -/* GenericStrong */ .chroma .s1b60 { font-weight: bold } -/* GenericSubheading */ .chroma .s1b61 { color: #800080; font-weight: bold } -/* GenericTraceback */ .chroma .s1b62 { color: #0044dd } -/* TextWhitespace */ .chroma .s1f41 { color: #bbbbbb } diff --git a/src/package-lock.json b/src/package-lock.json deleted file mode 100644 index 48e341a09..000000000 --- a/src/package-lock.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "lockfileVersion": 1 -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-144x144.png b/static/android-chrome-144x144.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-144x144.png rename to static/android-chrome-144x144.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-192x192.png b/static/android-chrome-192x192.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-192x192.png rename to static/android-chrome-192x192.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-256x256.png b/static/android-chrome-256x256.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-256x256.png rename to static/android-chrome-256x256.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-36x36.png b/static/android-chrome-36x36.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-36x36.png rename to static/android-chrome-36x36.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-48x48.png b/static/android-chrome-48x48.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-48x48.png rename to static/android-chrome-48x48.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-72x72.png b/static/android-chrome-72x72.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-72x72.png rename to static/android-chrome-72x72.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-96x96.png b/static/android-chrome-96x96.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/android-chrome-96x96.png rename to static/android-chrome-96x96.png diff --git a/static/apple-touch-icon.png b/static/apple-touch-icon.png index 50e23ce1d..ecf1fc020 100644 Binary files a/static/apple-touch-icon.png and b/static/apple-touch-icon.png differ diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/browserconfig.xml b/static/browserconfig.xml similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/browserconfig.xml rename to static/browserconfig.xml diff --git a/static/css/hugofont.css b/static/css/hugofont.css deleted file mode 100644 index 09d6ce070..000000000 --- a/static/css/hugofont.css +++ /dev/null @@ -1,184 +0,0 @@ -@font-face { - font-family: 'hugo'; - src:url('../fonts/hugo.eot'); - src:url('../fonts/hugo.eot?#iefix') format('embedded-opentype'), - url('../fonts/hugo.woff') format('woff'), - url('../fonts/hugo.ttf') format('truetype'), - url('../fonts/hugo.svg#hugo') format('svg'); - font-weight: normal; - font-style: normal; -} - -[class^="icon-"], [class*=" icon-"] { - font-family: 'hugo'; - speak: none; - font-style: normal; - font-weight: normal; - font-variant: normal; - text-transform: none; - line-height: 1; - - /* Better Font Rendering =========== */ - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; -} - -.icon-home:before { - content: "\21"; -} -.icon-html5:before { - content: "\23"; -} -.icon-css3:before { - content: "\24"; -} -.icon-console:before { - content: "\25"; -} -.icon-link:before { - content: "\26"; -} -.icon-fire:before { - content: "\28"; -} -.icon-check-alt:before { - content: "\29"; -} -.icon-hugo_serif:before { - content: "\e600"; -} -.icon-x-altx-alt:before { - content: "\2a"; -} -.icon-circlestar:before { - content: "\2b"; -} -.icon-file-css:before { - content: "\2c"; -} -.icon-radio-checked:before { - content: "\2e"; -} -.icon-quote:before { - content: "\44"; -} -.icon-airplane2:before { - content: "\45"; -} -.icon-heart:before { - content: "\46"; -} -.icon-rocket:before { - content: "\47"; -} -.icon-house:before { - content: "\48"; -} -.icon-arrow-right:before { - content: "\e001"; -} -.icon-arrow-left:before { - content: "\e002"; -} -.icon-flow-branch:before { - content: "\e004"; -} -.icon-pen:before { - content: "\e005"; -} -.icon-idea:before { - content: "\3b"; -} -.icon-gears:before { - content: "\3c"; -} -.icon-talking:before { - content: "\3d"; -} -.icon-tag:before { - content: "\3e"; -} -.icon-rocket2:before { - content: "\3f"; -} -.icon-octocat:before { - content: "\41"; -} -.icon-announce:before { - content: "\42"; -} -.icon-edit:before { - content: "\43"; -} -.icon-power-cord:before { - content: "\50"; -} -.icon-apple:before { - content: "\51"; -} -.icon-windows8:before { - content: "\52"; -} -.icon-tux:before { - content: "\53"; -} -.icon-file-xml:before { - content: "\54"; -} -.icon-fork:before { - content: "\55"; -} -.icon-arrow-down:before { - content: "\56"; -} -.icon-pacman:before { - content: "\e000"; -} -.icon-embed:before { - content: "\2f"; -} -.icon-code:before { - content: "\30"; -} -.icon-cc:before { - content: "\31"; -} -.icon-cc-by:before { - content: "\32"; -} -.icon-cc-nc:before { - content: "\33"; -} -.icon-beaker-alt:before { - content: "\39"; -} -.icon-w3c:before { - content: "\3a"; -} -.icon-bolt:before { - content: "\49"; -} -.icon-flow-tree:before { - content: "\4a"; -} -.icon-twitter:before { - content: "\4b"; -} -.icon-beaker:before { - content: "\4c"; -} -.icon-images:before { - content: "\4d"; -} -.icon-bubbles:before { - content: "\4e"; -} -.icon-meter2:before { - content: "\4f"; -} -.icon-hugo_sans:before { - content: "\68"; -} -.icon-spf13:before { - content: "\27"; -} diff --git a/static/css/style.css b/static/css/style.css deleted file mode 100644 index 312c247c9..000000000 --- a/static/css/style.css +++ /dev/null @@ -1,684 +0,0 @@ -/* Import fonts */ -@import url(//fonts.googleapis.com/css?family=Lato:300,400,700,900,300italic,400italic,700italic,900italic); - -/* ****************************** - For the github btn -****************************** */ - -.github-btn { - font-size: 11px; -} -.github-btn, -.github-btn .btn { - font-weight: bold; -} -.github-btn .btn-default { - text-shadow: 0 1px 0 #fff; - background-image: -webkit-gradient(linear, left 0%, left 100%, from(#ffffff), to(#e0e0e0)); - background-image: -webkit-linear-gradient(top, #ffffff, 0%, #e0e0e0, 100%); - background-image: -moz-linear-gradient(top, #ffffff 0%, #e0e0e0 100%); - background-image: linear-gradient(to bottom, #ffffff 0%, #e0e0e0 100%); - background-repeat: repeat-x; - border-color: #dbdbdb; - border-color: #ccc; - filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe0e0e0', GradientType=0); -} - -.github-btn .btn-default:hover, .github-btn .btn-default:focus { - background-color: #e0e0e0; - background-position: 0 -15px; - color: #333; - border-color: #adadad; -} - -.nav-github { - width: 325px; -} - .nav-github > span { - padding-right: 0.5em; - } - - .icon-github { - display: inline-block; - font-family: FontAwesome; - font-style: normal; - font-weight: normal; - line-height: 1; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - } - - .github-watchers .icon-github:before{ - content: "\f005"; - } - - .github-forks .icon-github:before{ - content: "\f126"; - } - -.gh-count{ - padding: 2px 5px 3px 4px; - color: #555; - text-decoration: none; - text-shadow:0 1px 0 #fff; - white-space:nowrap; - cursor:pointer; - border-radius:3px; - position:relative; - display:none; - margin-left:4px; - background-color:#fafafa; - border:1px solid #d4d4d4; -} - -.gh-count:hover,.gh-count:focus{color:#4183c4;text-decoration: none;} -.gh-count:before,.gh-count:after{content:' ';position:absolute;display:inline-block;width:0;height:0;border-color:transparent;border-style:solid} -.gh-count:before{top:50%;left:-3px;margin-top:-4px;border-width:4px 4px 4px 0;border-right-color:#fafafa} -.gh-count:after{top:50%;left:-4px;z-index:-1;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#d4d4d4} - -thead { - font-weight: bold; -} - -table { - width: 100%; -} - - -h1, h2, h3 { - margin-top: .8em; - margin-bottom: .7em; -} - -pre code { - font-size: 15px !important; - font-family: Menlo, Consolas, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', Monaco, 'Droid Sans Mono', monospace; -} - -body { - color: #353b44; - background: #edece4; - font-family: 'Lato', sans-serif; - padding: 0px !important; - margin: 0px !important; - font-size: 16px !important; - font-weight: 400; -} - -h2,h3,h4,h5{ - font-weight: 700; -} - - -h1[id]:before, h2[id]:before, h3[id]:before, h4[id]:before, h5[id]:before { - display: block; - content: " "; - margin-top: -75px; - height: 75px; - visibility: hidden; -} - -label{ - font-weight: 400; -} - -.sidebar-menu .fa { - width: 30px; - text-align: center; -} - -a, a:hover, a:focus { - text-decoration: none; - outline: none; - outline: 0; -} - -img { - max-width: 100%; - height: auto; -} - -.panel-body a { - line-height: 1.1; - display: inline-block; -} -.panel-body a:after { - display: block; - content: ""; - height: 1px; - width: 0%; - background-color: #ff4088; - -webkit-transition: width 0.5s ease; - -moz-transition: width 0.5s ease; - -ms-transition: width 0.5s ease; - transition: width 0.5s ease; -} - -.panel-body a:hover:after, .panel-body a:focus:after { - width: 100%; -} - -input:focus, textarea:focus { outline: none; } -*:focus {outline: none;} -::selection { - background: #ff4088; - color: #fff; -} -::-moz-selection { - background: #ff4088; - color: #fff; -} - -#container { - width: 100%; - height: 100%; -} - -/*sidebar navigation*/ - -#sidebar { - width: 214px; - height: 100%; - position: fixed; - background: #ffffff; - overflow-y: auto; -} - - -ul.sidebar-menu , ul.sidebar-menu li ul.sub{ - margin: -2px 0 0; - padding: 0; -} - -ul.sidebar-menu { - margin-top: 60px; -} - -#sidebar > ul > li > ul.sub { - display: none; -} - -#sidebar > ul > li.active > ul.sub, #sidebar > ul > li > ul.sub > li > a { - display: block; -} - -ul.sidebar-menu li ul.sub li{ - background: #eeeeee; - margin-bottom: 0; - margin-left: 0; - margin-right: 0; -} - -ul.sidebar-menu li ul.sub li:last-child{ - border-radius: 0 0 4px 4px; - -webkit-border-radius: 0 0 4px 4px; -} - -ul.sidebar-menu li ul.sub li a { - font-size: 12px; - padding: 0 0 0 32px; - line-height: 35px; - height: 35px; - -webkit-transition: all 0.3s ease; - -moz-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - -ms-transition: all 0.3s ease; - transition: all 0.3s ease; - color: #656C73; - font-size: 14px; -} - -ul.sidebar-menu li ul.sub li a:hover, ul.sidebar-menu li ul.sub li.active a { - color: #ff4088; - -webkit-transition: all 0.3s ease; - -moz-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - -ms-transition: all 0.3s ease; - transition: all 0.3s ease; - display: block; -} - -ul.sidebar-menu li{ - line-height: 20px !important; -} - -ul.sidebar-menu li.sub-menu{ - line-height: 15px; - font-size: 16px; -} - -ul.sidebar-menu li a span{ - display: inline-block; -} - -ul.sidebar-menu li a{ - color: #72767D; - text-decoration: none; - display: block; - padding: 10px 0 10px 10px; - font-size: 16px; - font-weight: 400; - outline: none; - -webkit-transition: all 0.3s ease; - -moz-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - -ms-transition: all 0.3s ease; - transition: all 0.3s ease; - border-right: 1px solid #D7D7D7; - border-bottom: 1px solid #D7D7D7; - white-space: nowrap; -} - -ul.sidebar-menu li.active a, ul.sidebar-menu li a:hover, ul.sidebar-menu li a:focus { - background: #eeeeee; - color: #ff4088; - display: block; - /*border-radius: 4px; - -webkit-border-radius: 4px;*/ - -webkit-transition: all 0.3s ease; - -moz-transition: all 0.3s ease; - -o-transition: all 0.3s ease; - -ms-transition: all 0.3s ease; - transition: all 0.3s ease; -} -ul.sidebar-menu li a:hover, ul.sidebar-menu li a:focus { - border-bottom: 1px solid #ff4088; -} -/*ul.sidebar-menu li.active a,*/ ul.sidebar-menu .sub-menu li.active a{ - border-bottom: 1px solid #ff4088; -} - -ul.sidebar-menu li a i { - font-size: 18px; - padding-right: 6px; - /*color: #ff4088;*/ -} - -ul.sidebar-menu li a:hover i, ul.sidebar-menu li a:focus i { - color: #ff4088; -} - -ul.sidebar-menu li.active a i { - color: #ff4088; -} - - -#sidebar ul > li > a .menu-arrow { - float: right; - margin-right: 8px; - margin-top: 6px; -} - -@-moz-document url-prefix() { - #sidebar ul > li > a .menu-arrow { - float: right; - margin-right: 8px; - margin-top: -16px; - } -} - -#main-content { - margin-left: 200px; - line-height: 1.8; - font-size: 18px; -} - -.header { - min-height: 60px; - padding: 0 10px; -} -.header { - position: fixed; - left: 0; - right: 0; - z-index: 1002; - text-align:center; -} - - -.black-bg { - background: rgba(20,20,20,0.9); - border-bottom: 1px solid #f1f2f7; -} - -.wrapper { - display: inline-block; - margin-top: 60px; - padding: 0px 15px 15px 0px; - width: 100%; -} - -a.logo { - font-size: 22px; - font-weight: 400; - color: #8E8E93; - float: left; - margin-top: 10px; - text-transform: uppercase; -} - -a.logo:hover, a.logo:focus { - text-decoration: none; - outline: none; -} - -h1.top-menu { - margin-top: -5px; -} -.title-row { - margin-top: 15px; - margin-left: 16px; - color: #EEE; -} -.notification-row { - float: right; - margin-top: 15px; - margin-left: 65px; -} - - -.top-nav { - margin-top: 15px; -} - -/*--sidebar toggle---*/ - -.toggle-nav { - float: left; - padding-right: 5px; - margin-top: 20px; - cursor: pointer; - color: gray; -} - -.toggle-nav .icon-reorder { - cursor: pointer; - display: inline-block; - font-size: 20px; -} - - -@-webkit-keyframes square { - 0% { background-position: 0 0; } - 25% { background-position: 100% 0; } - 50% { background-position: 100% 100%; } - 75% { background-position: 0 100%; } - 100% { background-position: 0 0; } -} - -@-ms-keyframes square { - 0% { background-position: 0 0; } - 25% { background-position: 100% 0; } - 50% { background-position: 100% 100%; } - 75% { background-position: 0 100%; } - 100% { background-position: 0 0; } -} - -@keyframes square { - 0% { background-position: 0 0; } - 25% { background-position: 100% 0; } - 50% { background-position: 100% 100%; } - 75% { background-position: 0 100%; } - 100% { background-position: 0 0; } -} - -.navigation { - position: absolute; - top: 0; - bottom: 0; - margin: 0; - max-width: 150px; - min-width: 90px; - width:100%; - min-height:1200px; - cursor:pointer; - display: flex; - justify-content: center; - align-content: center; - flex-direction: column; - font-size: 6em; - color: rgba(0,0,0,0.5); - text-align: center; - -webkit-transition: all 350ms ease; - transition: all 350ms ease; -} - -.navigation.next { - right:0; -} - - -.navigation:hover { - background-color: rgba(0,0,0,0.1); -} - -/* Google Custom Search box */ - -input.gsc-input, -.gsc-input-box, -.gsc-input-box-hover, -.gsc-input-box-focus, -.gsc-search-button, -.gsc-inline-block { - box-sizing: content-box; - line-height: normal; -} - -.gsc-control-cse { - padding: 0.1em 0 0.5em 1em !important; - width: 16em !important; - float: right; -} - -input.gsc-search-button-v2 { - padding: 6px 12px !important; -} - -.gsc-search-box-tools .gsc-search-box .gsc-input { - padding-right: 1px !important; -} - -/* Styled keypress from Wikipedia */ - -kbd { - border: 1px solid #aaa; - -moz-border-radius: 0.2em; - -webkit-border-radius: 0.2em; - border-radius: 0.2em; - -moz-box-shadow: 0.1em 0.2em 0.2em #ddd; - -webkit-box-shadow: 0.1em 0.2em 0.2em #ddd; - box-shadow: 0.1em 0.2em 0.2em #ddd; - background-color: #f9f9f9; - background-image: -moz-linear-gradient(top, #eee, #f9f9f9, #eee); - background-image: -o-linear-gradient(top, #eee, #f9f9f9, #eee); - background-image: -webkit-linear-gradient(top, #eee, #f9f9f9, #eee); - background-image: linear-gradient(to bottom, #eee, #f9f9f9, #eee); - padding: 0.1em 0.3em; - font-family: inherit; - font-size: 0.85em; -} - -/* For definitions of variables */ - -dl { - margin: 1em; - border-bottom: 1px solid #ccc; -} - -dt { - float: left; - clear: left; - width: 9.5em; - margin: 0.125em; - padding: 2px 4px; -} - -dd { - padding: 0.2em 0 0.2em 10em; - border-top: 1px solid #ccc; -} - -/* Prevent linebreak right after an icon */ -#main-content .fa { - display: inline; -} - -/* Logo for FreeBSD until Font Awesome adds it, see https://github.com/FortAwesome/Font-Awesome/issues/1116 */ -i.freebsd-19px:before { - content: url(/img/freebsd-19px.svg); - vertical-align: -7%; -} - -/* Responsive videos */ -.video-container { - position: relative; - padding-bottom: 56.25%; /* 16:9 */ - padding-top: 30px; - height: 0; - overflow: hidden; - margin: 20px 0; -} - -.video-container iframe, -.video-container object, -.video-container embed { - position: absolute; - top: 0; - left: 0; - width: 100%; - height: 100%; -} - -/* Google custom search */ -.cse { - margin-top: 20px; - padding-right: 20px; -} - - -/* Table of contents */ - -.toc ul { list-style: none; margin: 0; padding: 0 5px; } -.toc ul li { display: inline; } -#TableOfContents > ul > li > ul > li > ul li { margin-right: 8px; } -#TableOfContents > ul > li > ul > li > a, #TableOfContents > ul > li > a { font-weight: bold; background-color: #eeeeee; padding: 0 10px; margin: 0 2px; } -#TableOfContents > ul > li > ul > li > a { font-style: italic; } -.toc.compact ul > li > ul > li > ul { display: none; } - -#toc { - position:fixed; - background-color: rgba(0, 0, 0, 0.1); - padding: 10px 50px 10px 20px; -} - -.showcase-container { - display: inline-block; - position: relative; - width: 100%; -} - -.showcase-container img { - border: 1px solid #555; -} - -.showcase-container h4 { - margin-top: 0; - margin-bottom: 0; -} -.dummy { - padding-top: 90%; /* Making rows line up even if img proportions off */ -} - -.thumbnail { - position: absolute; - top: 0; - bottom: 0; - left: 0; - right: 0; -} - -@media(max-width:1200px) { - .toc { - display: none; - } -} - - -/* Footer panel */ -.footer-panel { - width: 100%; - border-top:1px #efefef solid; - line-height: 30px; - padding: 25px 0px 15px; - margin-top: 15px; - background: #f9f9f9; - display: inline-block; - float: left; -} - -.footer-panel p { - padding-left: 20px; - padding-right: 20px; - font-size: medium; - font-style: italic; -} - - -/* Search form */ -#search-input { - width: 100%; - border: 1px solid #B3B3B3; - border-radius: 3px; - padding: 5px; -} - -#search-input:focus { - border-color: #F04A9C; -} - -/* Search result wrapper */ -.algolia-autocomplete { - width: 100%; -} - -/* List of search results */ -.aa-dropdown-menu { - box-sizing: border-box; - width: 100%; - background-color: #FFFFFF; - border: 1px solid #B3B3B3; - padding: 0; - font-size: 16px; - margin: 4 0 4 0; -} - -/* Highlight terms in search result headers */ -.algolia-docsearch-suggestion--category-header .algolia-docsearch-suggestion--highlight { - background-color: #F04A9C; -} - -/* Highlight terms in search result body */ -.algolia-docsearch-suggestion--highlight { - color: #F04A9C; - font-weight: 900; -} - -/* Currently selected search result */ -.aa-cursor .algolia-docsearch-suggestion--content { - color: inherit; -} - -.aa-cursor .algolia-docsearch-suggestion { - background: #EFEFEF; - color: #353B44; -} - -.algolia-docsearch-suggestion { - font-size: 16px; - color: #9AA2AB; -} - -.algolia-docsearch-suggestion--category-header, -.algolia-docsearch-suggestion--subcategory-column { - display: none !important; -} diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/favicon-16x16.png b/static/favicon-16x16.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/favicon-16x16.png rename to static/favicon-16x16.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/favicon-32x32.png b/static/favicon-32x32.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/favicon-32x32.png rename to static/favicon-32x32.png diff --git a/static/favicon.ico b/static/favicon.ico index 36693330b..dc007a99e 100644 Binary files a/static/favicon.ico and b/static/favicon.ico differ diff --git a/static/fonts/Mulish-Italic-VariableFont_wght.ttf b/static/fonts/Mulish-Italic-VariableFont_wght.ttf new file mode 100644 index 000000000..e5425c75e Binary files /dev/null and b/static/fonts/Mulish-Italic-VariableFont_wght.ttf differ diff --git a/static/fonts/Mulish-VariableFont_wght.ttf b/static/fonts/Mulish-VariableFont_wght.ttf new file mode 100644 index 000000000..410f7aa63 Binary files /dev/null and b/static/fonts/Mulish-VariableFont_wght.ttf differ diff --git a/static/fonts/hugo.eot b/static/fonts/hugo.eot deleted file mode 100644 index b92f00f93..000000000 Binary files a/static/fonts/hugo.eot and /dev/null differ diff --git a/static/fonts/hugo.svg b/static/fonts/hugo.svg deleted file mode 100644 index 7913f7c1f..000000000 --- a/static/fonts/hugo.svg +++ /dev/null @@ -1,63 +0,0 @@ - - - -Generated by IcoMoon - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/static/fonts/hugo.ttf b/static/fonts/hugo.ttf deleted file mode 100644 index 962914d33..000000000 Binary files a/static/fonts/hugo.ttf and /dev/null differ diff --git a/static/fonts/hugo.woff b/static/fonts/hugo.woff deleted file mode 100644 index 4693fbe7f..000000000 Binary files a/static/fonts/hugo.woff and /dev/null differ diff --git a/static/images/blog/hugo-26-poster.png b/static/images/blog/hugo-26-poster.png deleted file mode 100644 index 827f1f7bb..000000000 Binary files a/static/images/blog/hugo-26-poster.png and /dev/null differ diff --git a/static/images/blog/hugo-27-poster.png b/static/images/blog/hugo-27-poster.png deleted file mode 100644 index 69efa36bc..000000000 Binary files a/static/images/blog/hugo-27-poster.png and /dev/null differ diff --git a/static/images/blog/hugo-28-poster.png b/static/images/blog/hugo-28-poster.png deleted file mode 100644 index ae3d6ac16..000000000 Binary files a/static/images/blog/hugo-28-poster.png and /dev/null differ diff --git a/static/images/blog/hugo-29-poster.png b/static/images/blog/hugo-29-poster.png deleted file mode 100644 index dbe2d434f..000000000 Binary files a/static/images/blog/hugo-29-poster.png and /dev/null differ diff --git a/static/images/blog/hugo-30-poster.png b/static/images/blog/hugo-30-poster.png deleted file mode 100644 index 214369e89..000000000 Binary files a/static/images/blog/hugo-30-poster.png and /dev/null differ diff --git a/static/images/blog/hugo-31-poster.png b/static/images/blog/hugo-31-poster.png deleted file mode 100644 index e11e53aa7..000000000 Binary files a/static/images/blog/hugo-31-poster.png and /dev/null differ diff --git a/static/images/blog/hugo-32-poster.png b/static/images/blog/hugo-32-poster.png deleted file mode 100644 index f915247ad..000000000 Binary files a/static/images/blog/hugo-32-poster.png and /dev/null differ diff --git a/static/images/blog/hugo-bug-poster.png b/static/images/blog/hugo-bug-poster.png deleted file mode 100644 index cd236682d..000000000 Binary files a/static/images/blog/hugo-bug-poster.png and /dev/null differ diff --git a/static/images/blog/hugo-http2-push.png b/static/images/blog/hugo-http2-push.png deleted file mode 100644 index 1ddfd4653..000000000 Binary files a/static/images/blog/hugo-http2-push.png and /dev/null differ diff --git a/static/images/blog/sunset.jpg b/static/images/blog/sunset.jpg deleted file mode 100644 index 4dbcc0836..000000000 Binary files a/static/images/blog/sunset.jpg and /dev/null differ diff --git a/static/images/contribute/development/accept-cla.png b/static/images/contribute/development/accept-cla.png deleted file mode 100644 index 272de935e..000000000 Binary files a/static/images/contribute/development/accept-cla.png and /dev/null differ diff --git a/static/images/contribute/development/copy-remote-url.png b/static/images/contribute/development/copy-remote-url.png deleted file mode 100644 index a97a8f48f..000000000 Binary files a/static/images/contribute/development/copy-remote-url.png and /dev/null differ diff --git a/static/images/contribute/development/forking-a-repository.png b/static/images/contribute/development/forking-a-repository.png deleted file mode 100644 index b2566b841..000000000 Binary files a/static/images/contribute/development/forking-a-repository.png and /dev/null differ diff --git a/static/images/contribute/development/open-pull-request.png b/static/images/contribute/development/open-pull-request.png deleted file mode 100644 index 3f8328964..000000000 Binary files a/static/images/contribute/development/open-pull-request.png and /dev/null differ diff --git a/static/images/gohugoio-card-1.png b/static/images/gohugoio-card-1.png deleted file mode 100644 index 09953aed9..000000000 Binary files a/static/images/gohugoio-card-1.png and /dev/null differ diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/images/gopher-hero.svg b/static/images/gopher-hero.svg similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/images/gopher-hero.svg rename to static/images/gopher-hero.svg diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/images/gopher-side_color.svg b/static/images/gopher-side_color.svg similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/images/gopher-side_color.svg rename to static/images/gopher-side_color.svg diff --git a/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-build-settings.png b/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-build-settings.png deleted file mode 100644 index 1ec752428..000000000 Binary files a/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-build-settings.png and /dev/null differ diff --git a/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-connect-repo.gif b/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-connect-repo.gif deleted file mode 100644 index 6c57cf3b2..000000000 Binary files a/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-connect-repo.gif and /dev/null differ diff --git a/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-gettingstarted.png b/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-gettingstarted.png deleted file mode 100644 index 3b17e2b01..000000000 Binary files a/static/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-gettingstarted.png and /dev/null differ diff --git a/static/images/hosting-and-deployment/hosting-on-azure/basic-app-details.png b/static/images/hosting-and-deployment/hosting-on-azure/basic-app-details.png deleted file mode 100644 index 6cd39424e..000000000 Binary files a/static/images/hosting-and-deployment/hosting-on-azure/basic-app-details.png and /dev/null differ diff --git a/static/images/hosting-and-deployment/hosting-on-azure/create-in-portal.png b/static/images/hosting-and-deployment/hosting-on-azure/create-in-portal.png deleted file mode 100644 index 07dffbae6..000000000 Binary files a/static/images/hosting-and-deployment/hosting-on-azure/create-in-portal.png and /dev/null differ diff --git a/static/images/hosting-and-deployment/hosting-on-bitbucket/bitbucket-blog-post.png b/static/images/hosting-and-deployment/hosting-on-bitbucket/bitbucket-blog-post.png deleted file mode 100644 index b78f6fd15..000000000 Binary files a/static/images/hosting-and-deployment/hosting-on-bitbucket/bitbucket-blog-post.png and /dev/null differ diff --git a/static/images/hosting-and-deployment/hosting-on-bitbucket/bitbucket-create-repo.png b/static/images/hosting-and-deployment/hosting-on-bitbucket/bitbucket-create-repo.png deleted file mode 100644 index e97f13465..000000000 Binary files a/static/images/hosting-and-deployment/hosting-on-bitbucket/bitbucket-create-repo.png and /dev/null differ diff --git a/static/images/hugo-content-bundles.png b/static/images/hugo-content-bundles.png deleted file mode 100644 index 501e671e2..000000000 Binary files a/static/images/hugo-content-bundles.png and /dev/null differ diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/images/hugo-logo-wide.svg b/static/images/hugo-logo-wide.svg similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/images/hugo-logo-wide.svg rename to static/images/hugo-logo-wide.svg diff --git a/static/images/icon-custom-outputs.svg b/static/images/icon-custom-outputs.svg deleted file mode 100644 index ccf581f31..000000000 --- a/static/images/icon-custom-outputs.svg +++ /dev/null @@ -1,36 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/manifest.json b/static/manifest.json similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/manifest.json rename to static/manifest.json diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/mstile-144x144.png b/static/mstile-144x144.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/mstile-144x144.png rename to static/mstile-144x144.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/mstile-150x150.png b/static/mstile-150x150.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/mstile-150x150.png rename to static/mstile-150x150.png diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/mstile-310x310.png b/static/mstile-310x310.png similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/mstile-310x310.png rename to static/mstile-310x310.png diff --git a/static/npmjs/index.html b/static/npmjs/index.html deleted file mode 100644 index 88dd510af..000000000 --- a/static/npmjs/index.html +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/_vendor/github.com/gohugoio/gohugoioTheme/static/safari-pinned-tab.svg b/static/safari-pinned-tab.svg similarity index 100% rename from _vendor/github.com/gohugoio/gohugoioTheme/static/safari-pinned-tab.svg rename to static/safari-pinned-tab.svg diff --git a/static/shared/branding/hugo-tall.png b/static/shared/branding/hugo-tall.png deleted file mode 100644 index 001ce5eb3..000000000 Binary files a/static/shared/branding/hugo-tall.png and /dev/null differ diff --git a/static/shared/branding/made-with-hugo-dark.png b/static/shared/branding/made-with-hugo-dark.png deleted file mode 100644 index c6cadf283..000000000 Binary files a/static/shared/branding/made-with-hugo-dark.png and /dev/null differ diff --git a/static/shared/branding/made-with-hugo-long-dark.png b/static/shared/branding/made-with-hugo-long-dark.png deleted file mode 100644 index 1e49995fb..000000000 Binary files a/static/shared/branding/made-with-hugo-long-dark.png and /dev/null differ diff --git a/static/shared/branding/made-with-hugo-long.png b/static/shared/branding/made-with-hugo-long.png deleted file mode 100644 index c5df534cf..000000000 Binary files a/static/shared/branding/made-with-hugo-long.png and /dev/null differ diff --git a/static/shared/branding/made-with-hugo.png b/static/shared/branding/made-with-hugo.png deleted file mode 100644 index 52dfd19e5..000000000 Binary files a/static/shared/branding/made-with-hugo.png and /dev/null differ diff --git a/static/shared/branding/powered-by-hugo-dark.png b/static/shared/branding/powered-by-hugo-dark.png deleted file mode 100644 index a8e2ebc80..000000000 Binary files a/static/shared/branding/powered-by-hugo-dark.png and /dev/null differ diff --git a/static/shared/branding/powered-by-hugo-long-dark.png b/static/shared/branding/powered-by-hugo-long-dark.png deleted file mode 100644 index 1b760b1bf..000000000 Binary files a/static/shared/branding/powered-by-hugo-long-dark.png and /dev/null differ diff --git a/static/shared/branding/powered-by-hugo-long.png b/static/shared/branding/powered-by-hugo-long.png deleted file mode 100644 index 37131359d..000000000 Binary files a/static/shared/branding/powered-by-hugo-long.png and /dev/null differ diff --git a/static/shared/branding/powered-by-hugo.png b/static/shared/branding/powered-by-hugo.png deleted file mode 100644 index 27ff099d5..000000000 Binary files a/static/shared/branding/powered-by-hugo.png and /dev/null differ diff --git a/tailwind.config.js b/tailwind.config.js new file mode 100644 index 000000000..9d3c29050 --- /dev/null +++ b/tailwind.config.js @@ -0,0 +1 @@ +/* Empty for now. */