Compare commits

..

329 Commits

Author SHA1 Message Date
panr 9f2097f3f0 Fix head partial. 2020-09-06 00:52:53 +02:00
panr a6f223f522 Webpack is back! 2020-09-06 00:31:23 +02:00
Radek Kozieł 0aae2e9ff4 Update README and make the instruction more clear. 2020-08-24 16:13:23 +02:00
Radek Kozieł e679f013c1 Update theme.toml 2020-08-12 08:44:40 +02:00
Radek Kozieł eac693c55f Update README.md 2020-08-12 08:44:16 +02:00
panr e6be81c664 Show a twitter card without any condition. 2020-08-10 00:13:56 +02:00
Radek Kozieł 80fa802fa6 Merge pull request #177 from arminfriedl/master
Only add twitter card if twitter defined
2020-08-10 00:10:59 +02:00
panr fdd39516c3 Add COMMUNITY-FEATURES.md 2020-08-09 23:51:04 +02:00
panr b0e10e1dca Update README 2020-08-09 23:49:38 +02:00
Radek Kozieł e475eb88ef Update README.md 2020-08-09 23:49:38 +02:00
Radek Kozieł d644337551 Update README.md 2020-08-09 23:49:38 +02:00
panr c12cc903bd Update README. 2020-08-09 23:49:38 +02:00
panr 9c6d80f31f Update README. 2020-08-09 23:49:38 +02:00
panr 0759309c59 Webpack -> Hugo Pipes 2020-08-09 23:49:38 +02:00
Armin Friedl 55b6d6bf28 Only add twitter card if twitter defined
Removes warning
`WARNING: calling IsSet with unsupported type "invalid" (<nil>) will always return false.`
in newer hugo versions.
2020-08-09 08:17:04 +02:00
Radek Kozieł 73373847d8 Merge pull request #169 from classx/patch-1
Update USERS.md
2020-08-09 00:22:36 +02:00
Radek Kozieł a4a96bea35 Merge branch 'master' into patch-1 2020-08-09 00:22:26 +02:00
Radek Kozieł 33966cdf64 Merge pull request #168 from wbogocki/patch-1
Update USERS.md
2020-08-09 00:21:58 +02:00
Radek Kozieł 6eca4d4826 Merge branch 'master' into patch-1 2020-08-09 00:21:45 +02:00
Radek Kozieł 2d26fb1cf0 Merge pull request #167 from cindrmon/patch-2
Update USERS.md
2020-08-09 00:21:16 +02:00
Radek Kozieł c80302a67d Merge pull request #170 from panr/dependabot/npm_and_yarn/elliptic-6.5.3
Bump elliptic from 6.5.2 to 6.5.3
2020-07-30 16:59:00 +02:00
dependabot[bot] 087d77a0e6 Bump elliptic from 6.5.2 to 6.5.3
Bumps [elliptic](https://github.com/indutny/elliptic) from 6.5.2 to 6.5.3.
- [Release notes](https://github.com/indutny/elliptic/releases)
- [Commits](https://github.com/indutny/elliptic/compare/v6.5.2...v6.5.3)

Signed-off-by: dependabot[bot] <support@github.com>
2020-07-30 13:54:06 +00:00
classx de6feb37b8 Update USERS.md 2020-07-30 13:34:38 +03:00
Wojciech Bogócki 8404f40c2c Update USERS.md 2020-07-29 07:06:04 +08:00
Dominic F 1703c16b7f Update USERS.md 2020-07-27 11:41:51 +08:00
Radek Kozieł 6404a48fe3 Merge pull request #161 from panr/dependabot/npm_and_yarn/lodash-4.17.19
Bump lodash from 4.17.15 to 4.17.19
2020-07-19 17:45:47 +02:00
dependabot[bot] c5e838481d Bump lodash from 4.17.15 to 4.17.19
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.15 to 4.17.19.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.15...4.17.19)

Signed-off-by: dependabot[bot] <support@github.com>
2020-07-16 21:32:29 +00:00
Radek Kozieł bc29541514 Merge pull request #160 from RaZnAr0k/patch-1
Update USERS.md
2020-07-10 17:40:55 +02:00
RaZnAr0k a020860014 Update USERS.md 2020-07-10 15:54:32 +08:00
panr 5a0af3384d Fix accessibility issues and re-format templates 2020-06-18 00:40:31 +02:00
panr 04d9175af8 Update styling 2020-06-18 00:21:19 +02:00
Radek Kozieł d450f681f0 Update README.md 2020-06-17 16:55:32 +02:00
panr 0925abe5d8 Add terms.html template.
Add index.html template.
Fix list.html template.
2020-06-17 16:52:06 +02:00
Radek Kozieł b19e56a9d8 Merge pull request #150 from FizzyGalacticus/color-per-page
Add color-per-page support
2020-06-17 16:20:06 +02:00
Radek Kozieł ebbeedc014 Update README.md 2020-06-13 15:56:57 +02:00
panr 9cbc71f5c3 Update collapsable code shortcode with isCollapsed prop 2020-06-13 09:51:22 +02:00
panr cf59a36030 Add a collapsable code shortcode 2020-06-10 00:16:28 +02:00
Dustin L. Dodson e7fd995590 Add color-per-page support, addresses #20 2020-05-30 17:23:49 -07:00
panr 0a9b08f405 Fix styling for the index content 2020-05-29 00:50:00 +02:00
Radek Kozieł 3ade628cfc Merge pull request #104 from nuno-silva/index
[WIP] Feature request: display index page content
2020-05-29 00:36:43 +02:00
panr 8ace31592e Fix conflicts 2020-05-29 00:25:49 +02:00
panr 7c77a416df Update 404 page 2020-05-29 00:22:42 +02:00
panr abab5c6dcd Update list styling 2020-05-29 00:22:42 +02:00
Radek Kozieł e2bb4583b1 Update USERS.md 2020-05-29 00:22:15 +02:00
elraro 2d0de8e812 Update USERS.md 2020-05-29 00:22:15 +02:00
Scott Anderson 72bdbc99ce remove pagnitaiton form sigle pages 2020-05-29 00:21:45 +02:00
Hritik Vijay 3ef14f49b2 Update USERS.md 2020-05-29 00:21:45 +02:00
Harsh Pandey 9271d6ebf9 Made changes which were causing builds to fail
I updated ne to not and now it builds perfectly on zeit and netlify
2020-05-29 00:21:45 +02:00
Joel Knight bcd630ad2e Hide header and pagination footer when printing
Since the header and pagination footer contain links that help a reader
navigate the site in a browser, they serve little value on a printed
copy.
2020-05-29 00:21:45 +02:00
Joel Knight ca115e308e Don't truncate content in Firefox print preview 2020-05-29 00:21:45 +02:00
willstocks 4ef42a15b2 Implement multi-layer fallback
Cover image for anything that's not home (with fallback to favicon where cover is not set), and for anything that is home we use the favicon with fallback to the default color block

Co-Authored-By: Radek Kozieł <radoslaw.koziel@gmail.com>
2020-05-29 00:21:45 +02:00
panr a52bef65ce Fix dependecies 2020-05-29 00:21:45 +02:00
Bernardo Gameiro 583d6c51c3 Update USERS.md 2020-05-29 00:21:44 +02:00
Ben Coleman 0570ab80bb Use description for og:description 2020-05-29 00:21:16 +02:00
Nanda Gopal 71618345a6 Updatr USERS.md 2020-05-29 00:21:16 +02:00
willstocks a53fe97fa1 Only populate og:image with cover if is set 2020-05-29 00:21:16 +02:00
willstocks c6a38c4b85 Add authorTwitter to post archetype
For Twitter cards
2020-05-29 00:21:16 +02:00
willstocks 76f28fb7ba Update twitter:creator with cleaner/multiple fallbacks 2020-05-29 00:21:16 +02:00
willstocks 3d067dea1b Only use isset check for twitter:site param
See https://gohugo.io/functions/isset/ - consistent with all other param checks in file
2020-05-29 00:21:16 +02:00
willstocks 8b51d587d8 Separate twitter card params 2020-05-29 00:21:16 +02:00
willstocks b9cfb8d360 Tweak twitter card tags to cater for new params 2020-05-29 00:21:16 +02:00
willstocks 87d7bf9ca1 Remove erroneous |
Co-Authored-By: Radek Kozieł <radoslaw.koziel@gmail.com>
2020-05-29 00:21:16 +02:00
willstocks 639fd7f5b1 Amend twitter params 2020-05-29 00:21:16 +02:00
willstocks 1dcf383f7d Twitter card + OG markup fixes
Remove Twitter card title, description and image (twitter cards fall back to OG markup for these elements).
Fix og:image url for non-home content
Conditionally show twitter:site tag
2020-05-29 00:21:16 +02:00
willstocks aaada1ee03 Include Twitter Card parameters 2020-05-29 00:21:16 +02:00
willstocks f2fd8fbc63 Fix twitter image url for non-home
Co-Authored-By: Radek Kozieł <radoslaw.koziel@gmail.com>
2020-05-29 00:21:16 +02:00
willstocks 1d47e2102a Update USERS.md 2020-05-29 00:21:16 +02:00
willstocks d8c6eca445 Add owner as a param for Twitter Card (creator) 2020-05-29 00:21:16 +02:00
willstocks 6a6a3ae75c Fix OpenGraph and Twitter meta tags
Title tags could be a little bloated as the subtitle was being appended. This should fall in to the description instead.
Also, if not looking at an individual post, there was no author being defined or site image.
2020-05-29 00:21:16 +02:00
willstocks d498a48f49 Update head.html 2020-05-29 00:21:16 +02:00
Zhai2333 11074eeb07 [^] upd: Update 404 2020-05-29 00:21:16 +02:00
Zhai2333 1a47dec920 [+] add: 404 Page 2020-05-29 00:21:16 +02:00
Dave Derderian bb19133255 remove site.params.toctile from if condition 2020-05-29 00:18:15 +02:00
Dave Derderian 460409971b add conditional table of contents 2020-05-29 00:16:13 +02:00
panr 67a5a0c82c Update 404 page 2020-05-29 00:07:58 +02:00
Radek Kozieł cf990015dd Merge pull request #51 from mochaaP/404-page
Add 404 Page
2020-05-28 23:57:19 +02:00
panr 72840fc527 Update list styling 2020-05-28 20:06:21 +02:00
Radek Kozieł 565186853e Merge pull request #27 from funayman/add-toc
Add conditional table of contents
2020-05-28 18:32:33 +02:00
Radek Kozieł 58ba445c9f Merge pull request #142 from Hritik14/patch-1
Update USERS.md
2020-05-17 23:56:45 +02:00
Radek Kozieł 7c754f2db2 Update USERS.md 2020-05-17 23:56:22 +02:00
Radek Kozieł d62c409035 Merge pull request #143 from return-to-libc/master
Update USERS.md
2020-05-17 23:55:37 +02:00
elraro 0afe80acc8 Update USERS.md 2020-05-01 02:10:29 +02:00
Alberto 25b1edd1db Merge pull request #1 from panr/master
remove pagnitaiton form sigle pages
2020-05-01 02:00:19 +02:00
Radek Kozieł ca56210123 Merge pull request #141 from billyogat/single-pages
remove pagination form sigle pages
2020-04-27 18:45:34 +02:00
Scott Anderson c5ee41ddae remove pagnitaiton form sigle pages 2020-04-27 09:14:14 -04:00
Hritik Vijay f5ef1950c8 Update USERS.md 2020-04-21 22:33:46 +05:30
Radek Kozieł e877df5bae Merge pull request #140 from brotherlymite/patch-1
Made changes which were causing builds to fail
2020-04-19 19:46:50 +02:00
Harsh Pandey 1a181e05ae Made changes which were causing builds to fail
I updated ne to not and now it builds perfectly on zeit and netlify
2020-04-19 17:47:49 +05:30
Radek Kozieł 10351a6b9d Merge pull request #136 from knightjoel/issue/135
Don't truncate content in Firefox print preview
2020-04-14 01:47:07 +02:00
Radek Kozieł 0efdbb73f4 Merge pull request #137 from knightjoel/pr/cleaner_print
Hide header and pagination footer when printing
2020-04-14 01:38:39 +02:00
Joel Knight 3a0f200a91 Hide header and pagination footer when printing
Since the header and pagination footer contain links that help a reader
navigate the site in a browser, they serve little value on a printed
copy.
2020-04-05 15:22:18 -06:00
Joel Knight d56bb5398e Don't truncate content in Firefox print preview 2020-04-05 15:19:05 -06:00
Radek Kozieł e70a99243e Merge pull request #128 from willstocks/master
Only populate og:image with cover if is set
2020-04-04 17:21:37 +02:00
willstocks cd5a89ba3a Implement multi-layer fallback
Cover image for anything that's not home (with fallback to favicon where cover is not set), and for anything that is home we use the favicon with fallback to the default color block

Co-Authored-By: Radek Kozieł <radoslaw.koziel@gmail.com>
2020-04-03 10:59:22 +01:00
Radek Kozieł f8ce76b7de Merge pull request #132 from nebloc/master
Use description for og:description
2020-04-01 19:50:07 +02:00
Radek Kozieł 944b03d983 Merge pull request #131 from Nanda-G/master
Update USERS.md
2020-04-01 19:48:25 +02:00
Radek Kozieł f8eb2e304f Merge branch 'master' into master 2020-04-01 19:48:17 +02:00
Radek Kozieł c21569654e Merge pull request #134 from BGameiro2000/patch-1
Update USERS.md
2020-04-01 19:47:39 +02:00
panr ce71263767 Fix dependecies 2020-04-01 19:47:02 +02:00
Bernardo Gameiro 5f72bf78e9 Update USERS.md 2020-03-31 21:54:35 +01:00
Ben Coleman 9143918f5a Use description for og:description 2020-03-29 16:07:41 +01:00
Nanda Gopal faf59f6d5d Updatr USERS.md 2020-03-29 16:27:33 +05:30
willstocks 18af67974a Only populate og:image with cover if is set 2020-03-23 08:47:31 +00:00
Radek Kozieł bd1f2c75d0 Merge pull request #126 from willstocks/master
Tweak OpenGraph and Twitter meta tags
2020-03-20 18:15:30 +01:00
willstocks 801db391a8 Add authorTwitter to post archetype
For Twitter cards
2020-03-20 10:53:10 +00:00
willstocks 9d64a69092 Update twitter:creator with cleaner/multiple fallbacks 2020-03-20 09:21:20 +00:00
willstocks 5ede34df2c Only use isset check for twitter:site param
See https://gohugo.io/functions/isset/ - consistent with all other param checks in file
2020-03-18 11:24:24 +00:00
willstocks 6f5e42002e Separate twitter card params 2020-03-18 11:20:39 +00:00
willstocks b39a2e93b7 Tweak twitter card tags to cater for new params 2020-03-18 11:20:14 +00:00
willstocks 22098b16d9 Remove erroneous |
Co-Authored-By: Radek Kozieł <radoslaw.koziel@gmail.com>
2020-03-18 11:12:36 +00:00
willstocks a89e972309 Amend twitter params 2020-03-16 11:07:04 +00:00
willstocks a6ae1efab1 Twitter card + OG markup fixes
Remove Twitter card title, description and image (twitter cards fall back to OG markup for these elements).
Fix og:image url for non-home content
Conditionally show twitter:site tag
2020-03-16 11:05:35 +00:00
willstocks 1b00e7e317 Include Twitter Card parameters 2020-03-16 11:01:48 +00:00
willstocks 7f0bda3358 Fix twitter image url for non-home
Co-Authored-By: Radek Kozieł <radoslaw.koziel@gmail.com>
2020-03-16 10:52:14 +00:00
horochx 0b0c32c626 Change the style of the last update time 2020-03-11 23:05:58 +08:00
horochx 145a758159 Merge remote-tracking branch 'upstream/master' 2020-03-10 22:26:40 +08:00
willstocks a3f51f61c7 Update USERS.md 2020-03-10 13:57:17 +00:00
willstocks 6ed6715b5b Add owner as a param for Twitter Card (creator) 2020-03-10 12:28:08 +00:00
willstocks b226e1dc8c Fix OpenGraph and Twitter meta tags
Title tags could be a little bloated as the subtitle was being appended. This should fall in to the description instead.
Also, if not looking at an individual post, there was no author being defined or site image.
2020-03-10 12:08:33 +00:00
willstocks 6ef1bb1686 Update head.html 2020-03-10 12:03:11 +00:00
Radek Kozieł 0dc364f3e2 Merge pull request #113 from knightjoel/issue/26
Import shortcode to activate PrismJS plugins
2020-02-01 13:23:16 +01:00
Radek Kozieł 0b541b6f54 Merge pull request #124 from superusercode/patch-1
fix spelling error in example site
2020-02-01 13:07:07 +01:00
Code 6c186bd043 fix spelling error in example 2020-01-29 00:33:04 -05:00
Radek Kozieł 8ac2551ee2 Merge pull request #123 from oberbaum/patch-1
Update USERS.md
2020-01-28 08:53:21 +01:00
oberbaum 172708334f Update USERS.md 2020-01-27 23:27:42 +01:00
Joel Knight a1c203cb17 Apply suggestions from code review
Co-Authored-By: Radek Kozie. <radoslaw.koziel@gmail.com>
2020-01-26 14:53:18 -07:00
Joel Knight 92cc5bcd23 Apply suggestions from code review
Co-Authored-By: Radek Kozieł <radoslaw.koziel@gmail.com>
2020-01-25 21:18:08 -07:00
panr 7c5c62e630 A little fix for anchor appearance 2020-01-24 08:21:30 +01:00
Radek Kozieł 49c8679b6c Merge pull request #120 from sophiabrandt/add-anchor-links
[feature] add anchor icon to heading anchors
2020-01-24 08:18:40 +01:00
Sophia Brandt ff3aa2316b improve: add fixes/suggestions from panr 2020-01-23 21:04:09 +01:00
Sophia Brandt e8fdb4e084 Update layouts/_default/single.html
Co-Authored-By: Radek Kozieł <radoslaw.koziel@gmail.com>
2020-01-23 20:56:58 +01:00
Sophia Brandt 2ab90a708e merge latest upstream 2020-01-23 20:50:13 +01:00
panr 0ff712efdb Update yarn.lock 2020-01-23 19:59:56 +01:00
Radek Kozieł 98ab575126 Merge pull request #116 from wooseopkim/feature/google-analytics
Add Google Analytics template
2020-01-23 19:37:43 +01:00
Radek Kozieł e61ad0ef07 Merge pull request #114 from dseverboven/patch-1
Update USERS.md
2020-01-23 19:36:25 +01:00
Radek Kozieł 4d7a3c2db3 Merge branch 'master' into patch-1 2020-01-23 19:36:10 +01:00
Radek Kozieł b6a5436f40 Merge pull request #119 from sophiabrandt/patch-1
add new user
2020-01-23 19:33:30 +01:00
Radek Kozieł 4f23e52472 Merge branch 'master' into patch-1 2020-01-23 19:33:00 +01:00
Radek Kozieł d30e8a50b0 Merge pull request #122 from qbunt/master
Added qbunt.com to USERS.md
2020-01-23 18:56:08 +01:00
Jeremy Bunting 62531797e7 Added qbunt.com to USERS.md
Thanks for the theme, it's been amazing!
2020-01-22 08:58:55 -05:00
panr 20ce063397 Upload compiled style.css after line-numbers changes 2020-01-22 08:46:35 +01:00
panr 2fcbefa09f Fix line numbers alignment 2020-01-21 08:35:11 +01:00
panr 2bb3d3d49b Fix line-numbers and highlight styling 2020-01-20 00:02:26 +01:00
Radek Kozieł 3f6db97f02 Update README.md 2020-01-18 20:13:29 +01:00
Radek Kozieł c567dd61f9 Fix buymeacoffee buttton in README 2020-01-18 20:13:03 +01:00
Radek Kozieł c6c3eb8d54 Update README.md 2020-01-18 19:41:49 +01:00
Radek Kozieł 6c467105a2 Add sponsoring option and fix typo 2020-01-18 19:38:49 +01:00
Sophia Brandt 3aeb73a422 add anchor icon to heading anchors 2020-01-17 13:11:41 +01:00
Sophia Brandt 4b05a64b5a add new user
add www.rockyourcode.com
2020-01-17 07:55:23 +01:00
Wooseop Kim fa95894458 Add Google Analytics template 2020-01-15 22:41:43 +09:00
Dawson Verboven 9e38f9ec99 Update USERS.md
added https://dawsonverboven.com/
2020-01-08 21:39:06 -08:00
Joel Knight ce97879d6c Import shortcode to activate PrismJS plugins
The shortcode takes named parameters that are relevant to the PrismJS
plugins that Terminal bundles.

- lang: the language contained in the code block
- line: the line number(s) to highlight
- line-numbers: displays line numbers in the margin
- command-line: activates the command-line plugin which modifies the
output to show a command line
- user: the username to display in the prompt (used with the command-line
parameter)
- host: the hostname to display in the prompt (used with the
command-line parameter)
- prompt: override the default prompt (used with the command-line
parameter)
- output: specifies which line(s) contain CLI output (used with the
command-line parameter)

Example:

{{< prismjs lang="bash" line="1,10-13" line-numbers="true"
command-line="true" host="jump1" user="joel" output="2-9" >}}
2020-01-08 21:43:39 -07:00
Radek Kozieł 48233660d8 Merge pull request #111 from turbo/patch-1
Add highlighting to README/config
2020-01-06 16:21:42 +01:00
turbo d2dc6b7bb9 Add highlighting to README/config 2020-01-06 13:34:17 +01:00
panr ec262730ac Fix/Change code block styling 2020-01-06 09:31:18 +01:00
panr 7ac0deff87 Add param to set default size for headings 2020-01-05 10:44:58 +01:00
Radek Kozieł ee93a3dcd5 Merge pull request #106 from andreacaravano/patch-1
Update USERS.md
2019-12-29 18:57:51 +01:00
Andrea 8d2bb3cda7 Update USERS.md 2019-12-22 19:41:07 +01:00
Nuno Silva 10eae069d0 display index page content 2019-12-13 16:32:14 +00:00
Radek Kozieł 2a34760541 Update USERS.md 2019-12-01 09:48:29 +01:00
Radek Kozieł 791799e1d6 Merge pull request #103 from jTanG0506/patch-1
Update USERS.md
2019-12-01 09:47:52 +01:00
Jonathan Tang f4be21a1c3 Update USERS.md 2019-12-01 00:10:33 +00:00
Radek Kozieł ec1af25439 Merge pull request #100 from naxxfish/master
Add naxxfish.net to USERS.md
2019-11-10 09:24:13 +01:00
horochx 5786d01c09 build css 2019-11-06 23:02:00 +08:00
horochx c297ba66fc Change the showLastUpdated field in README.md to the default value 2019-11-06 22:54:24 +08:00
horochx ddd24c6c98 Merge branch 'master' of https://github.com/panr/hugo-theme-terminal 2019-11-06 22:46:47 +08:00
Chris Roberts 5d4b70d3a7 Add naxxfish.net to USERS.md 2019-11-03 15:56:07 +00:00
Radek Kozieł 2ea0eeeb7a Merge pull request #93 from jpanther/style-fixes
Fix unused blockquote style
2019-11-03 10:06:37 +01:00
Radek Kozieł fe147db973 Merge pull request #90 from eidoom/patch-1
Update USERS.md
2019-11-03 09:53:54 +01:00
Radek Kozieł 69bf17a9ad Merge branch 'master' into patch-1 2019-11-03 09:53:46 +01:00
Radek Kozieł b9c70a23ac Merge pull request #95 from schachem/patch-1
Update USERS.md
2019-11-03 09:53:16 +01:00
Radek Kozieł 0d3e1e62ab Merge branch 'master' into patch-1 2019-11-03 09:53:09 +01:00
Radek Kozieł 7b5dfbae03 Merge pull request #98 from kosmonavtika/patch-1
add lunar.computer
2019-11-03 09:52:33 +01:00
kosmonavtika e687203739 add lunar.computer 2019-10-31 22:47:46 +01:00
schachem 64dea526de Update USERS.md 2019-10-27 22:04:47 +01:00
James Panther 1c40487df6 Remove unused blockquote style 2019-10-25 09:38:15 +11:00
Radek Kozieł dc93a293fd Merge pull request #92 from panr/dependabot/npm_and_yarn/mixin-deep-1.3.2
Bump mixin-deep from 1.3.1 to 1.3.2
2019-10-23 11:01:50 +02:00
dependabot[bot] cedfaf6c5c Bump mixin-deep from 1.3.1 to 1.3.2
Bumps [mixin-deep](https://github.com/jonschlinkert/mixin-deep) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/jonschlinkert/mixin-deep/releases)
- [Commits](https://github.com/jonschlinkert/mixin-deep/compare/1.3.1...1.3.2)

Signed-off-by: dependabot[bot] <support@github.com>
2019-10-23 08:58:23 +00:00
Radek Kozieł f8fa62605d Merge pull request #91 from stanleynguyen/patch-1
Update USERS.md
2019-10-23 10:57:08 +02:00
Stanley Nguyen 53c70531d5 Update USERS.md 2019-10-23 11:57:24 +08:00
Ryan Moodie 9d8b8d51fa Update USERS.md 2019-10-15 19:18:57 +01:00
horochx 213a39bcad Add last updated display, params.showLastUpdated and update README.md 2019-10-04 22:41:43 +08:00
Radek Kozieł 5f9bb738cd Merge pull request #83 from amine250/patch-1
Update USERS.md
2019-09-24 09:35:09 +02:00
Amine 9a41d82cb8 Update USERS.md
Add zaine.me website
2019-09-16 01:47:48 +02:00
panr a81cf2dc29 Fix post width 2019-09-10 09:29:14 +02:00
Radek Kozieł fa71c00418 Merge pull request #82 from kongdivin/fix-page-navigation
Fix page navigation buttons
2019-09-10 09:26:00 +02:00
panr e40996148a Revert "Fix post list width"
This reverts commit 7652ceaa86.
2019-09-10 09:25:49 +02:00
Radek Kozieł c3ea6296af Merge pull request #80 from rpartha/rpartha-add-user
Update USERS.md
2019-09-10 09:22:52 +02:00
panr 7652ceaa86 Fix post list width 2019-09-10 09:21:50 +02:00
Divin Kong 2805450761 Fix page navigation buttons
Fixes panr/hugo-theme-terminal#81
2019-09-07 16:44:23 -07:00
Radek Kozieł 5057fd5521 Update theme.toml 2019-08-30 09:07:13 +02:00
Ramaseshan Parthasarathy 99513dfa64 Update USERS.md 2019-08-29 22:55:07 -04:00
Zhai2333 1d9856db28 [^] upd: Update 404 2019-08-28 15:37:08 +08:00
panr fbcf98ae95 Make the font a little more dense 2019-08-25 10:08:21 +02:00
panr 060587ba38 Fix list.html 2019-08-25 09:38:23 +02:00
Radek Kozieł 8d8e93fa8d Merge pull request #72 from MoritzFago/fix-atribution
Fix attribution if copyright is set by user.
2019-08-24 08:06:18 +02:00
Radek Kozieł 4a4a820997 Merge pull request #73 from eldraco19/patch-1
Update USERS.md
2019-08-24 08:03:18 +02:00
Radek Kozieł f06332421c Merge pull request #74 from wilsandbrink/master
fixes broken page list
2019-08-14 23:00:51 +02:00
William Sandbrink 3d20322e3a fixes broken page list 2019-08-14 22:08:50 +02:00
Radek Kozieł 06b8259668 Update README.md 2019-08-13 16:41:24 +02:00
Radek Kozieł 2307f19909 Merge pull request #33 from Rinma/add-language-selector
Added option for language selector
2019-08-13 16:40:04 +02:00
Marvin Dalheimer 63b2c69f85 Remove unused css classes 2019-08-13 13:16:18 +02:00
Marvin Dalheimer 28dd0fadf9 Use ul instead of div and BEM naming 2019-08-13 08:44:40 +02:00
Marvin Dalheimer 270a135fca Add body listener for trigger closing language box 2019-08-13 08:44:06 +02:00
Ayush Karn d2a00d0517 Update USERS.md 2019-08-11 15:20:53 +05:30
Moritz Fago 2bb48d5952 Fix attribution if copyright is set by user. 2019-08-09 01:44:24 +02:00
panr 24e901f460 Add keywords support to single page 2019-08-08 21:56:25 +02:00
Radek Kozieł 9c25182806 Merge pull request #71 from b0wter/master
Fixed broken link to post archtype.
2019-08-03 23:15:16 +02:00
Radek Kozieł 209f36287f Merge pull request #70 from nikodemusk/patch-1
Added my site to the list of Terminal users
2019-08-03 23:14:36 +02:00
Radek Kozieł 05da53db3a Merge pull request #68 from sagarladla/patch-1
Update USERS.md
2019-08-03 23:10:32 +02:00
Radek Kozieł 4739739afc Merge branch 'master' into patch-1 2019-08-03 23:10:24 +02:00
Radek Kozieł a13e8a1a7e Merge pull request #62 from sunshinekitty/patch-1
Update USERS.md
2019-08-03 23:09:52 +02:00
b0wter 974dec46bb Fixed broken link to post archtype. 2019-07-27 21:23:53 +02:00
Nikodemus Karlsson c4086a4f14 Added my site to the list of Terminal users 2019-07-25 07:22:09 +02:00
Sagar Ladla 924a8c48a5 Update USERS.md 2019-07-21 03:50:09 +05:30
Radek Kozieł eb2d4eacff Merge pull request #64 from panr/dependabot/npm_and_yarn/lodash-4.17.14
Bump lodash from 4.17.11 to 4.17.14
2019-07-11 12:31:21 +02:00
Radek Kozieł f027e3ff0d Merge pull request #65 from panr/dependabot/npm_and_yarn/lodash.template-4.5.0
Bump lodash.template from 4.4.0 to 4.5.0
2019-07-11 12:31:11 +02:00
dependabot[bot] 52c6c4c7a8 Bump lodash.template from 4.4.0 to 4.5.0
Bumps [lodash.template](https://github.com/lodash/lodash) from 4.4.0 to 4.5.0.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.4.0...4.5.0)

Signed-off-by: dependabot[bot] <support@github.com>
2019-07-11 10:13:34 +00:00
dependabot[bot] 35da736903 Bump lodash from 4.17.11 to 4.17.14
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.11 to 4.17.14.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.11...4.17.14)

Signed-off-by: dependabot[bot] <support@github.com>
2019-07-11 10:13:29 +00:00
Radek Kozieł 86bfa30e14 Merge pull request #63 from panr/dependabot/npm_and_yarn/lodash.merge-4.6.2
Bump lodash.merge from 4.6.1 to 4.6.2
2019-07-11 08:32:45 +02:00
dependabot[bot] 056f7665d7 Bump lodash.merge from 4.6.1 to 4.6.2
Bumps [lodash.merge](https://github.com/lodash/lodash) from 4.6.1 to 4.6.2.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/commits)

Signed-off-by: dependabot[bot] <support@github.com>
2019-07-11 06:32:33 +00:00
Radek Kozieł 6c2ad3a669 Merge pull request #61 from fengsi/patch-1
OCD cleanup
2019-07-08 17:03:58 +02:00
Alex 950e9a63e4 Update USERS.md
add my blog :-)
2019-07-07 15:09:46 -06:00
Si Feng 0514e772ac OCD cleanup 2019-06-27 11:51:56 -07:00
Radek Kozieł 016f54c162 Merge pull request #59 from Gazzini/patch-1
adds johngazzini.com to Users.md
2019-06-25 20:16:51 +02:00
John Gazzini c2e83bf417 adds johngazzini.com to Users.md 2019-06-22 23:58:05 -05:00
Radek Kozieł 4b147d17d3 Merge pull request #58 from fengsi/patch-1
Update USERS.md
2019-06-20 23:45:03 +02:00
Radek Kozieł 899bc2ab47 Merge branch 'master' into patch-1 2019-06-20 23:44:55 +02:00
Radek Kozieł eb8cd5216e Merge pull request #57 from ben-on-vms/master
Update USERS.md
2019-06-20 23:43:44 +02:00
Si Feng e59e0170c3 Update USERS.md 2019-06-20 12:00:01 -07:00
ben-on-vms 85f01b1cc2 Update USERS.md 2019-06-20 19:12:31 +01:00
Radek Kozieł 02238f6e0f Merge pull request #53 from mserajnik/custom-css-link
Only insert custom CSS link if the file exists
2019-06-15 17:00:16 +02:00
Michael Serajnik 79b040a3ec Only insert custom CSS link if the file exists 2019-06-15 15:55:40 +02:00
Radek Kozieł 30410267ec Merge pull request #52 from Zhai2333/date-fix
Fix 0001-01-01 when date is none.
2019-06-14 19:05:06 +02:00
Zhai2333 786243dc1d [*] fix: 0001-01-01 when doesn't provide a date 2019-06-09 17:59:20 +08:00
Zhai2333 fda8cb9d20 [+] add: 404 Page 2019-06-09 17:52:52 +08:00
panr ae19c84baf Update packages 2019-06-08 12:47:07 +02:00
Zhai2333 83381f44e1 Update Gitignore 2019-06-08 13:57:55 +08:00
Radek Kozieł 5091a93ea2 Merge pull request #35 from Rinma/lang-sensitiv-tags
made tag link language-sensitiv
2019-05-24 09:51:47 +02:00
panr f7b4d6c934 Fix archetype name #42 2019-05-24 09:43:38 +02:00
panr 64b59a4e59 Fix RSS links #41 2019-05-24 09:36:06 +02:00
Radek Kozieł 2781f35b83 Merge pull request #40 from vaibhav-y/patch-1
Add calloc.net to USERS.md
2019-05-21 20:32:45 +02:00
Radek Kozieł 26c5ebfc20 Merge branch 'master' into patch-1 2019-05-21 20:32:37 +02:00
Radek Kozieł 39407e9dc1 Merge pull request #44 from Pneumaticat/patch-1
Add potatofrom.space to USERS.md
2019-05-21 20:32:07 +02:00
Radek Kozieł 46645d2782 Merge branch 'master' into patch-1 2019-05-21 20:31:58 +02:00
Radek Kozieł a69547e06e Merge pull request #45 from horochx/patch-1
Update USERS.md
2019-05-21 20:30:36 +02:00
horochx f1ff5d0c66 Update USERS.md 2019-05-19 14:39:01 +08:00
Kevin Liu 4c9b24ea14 Add potatofrom.space to USERS.md 2019-05-12 11:14:06 -04:00
Vaibhav Yenamandra 57ab52dd84 Add @vaibhav-y to USERS.md 2019-04-29 22:10:52 -04:00
Marvin Dalheimer bc9b801e5f made tag link language-sensitiv 2019-04-05 08:18:21 +02:00
Radek Kozieł a28c65d411 Update USERS.md 2019-04-03 00:11:03 +02:00
Radek Kozieł f901435935 Merge pull request #34 from mike-alex/patch-1
Update USERS.md
2019-04-03 00:10:46 +02:00
Mike alex 108a966b12 Update USERS.md
add my blog with the theme terminal
2019-04-02 00:13:19 -06:00
Marvin Dalheimer 10b545bb86 Added option for language selector
Implemented a language selector submenu that can be turned on or off by a config value.

Resolves: panr/hugo-theme-terminal#31
2019-04-01 21:44:39 +02:00
Radek Kozieł 3f58f9834f Merge pull request #32 from devmaster64/patch-1
Add devmaster64's blog to users.md
2019-04-01 17:48:47 +02:00
devmaster64 c2c43bb34a Add devmaster64's blog to users.md 2019-04-01 20:10:28 +05:30
Radek Kozieł dbeb0f7c98 Merge branch 'master' into add-toc 2019-03-31 19:42:05 +02:00
panr bacfb1a95a Remove unnecessary code 2019-03-31 19:38:11 +02:00
Radek Kozieł 6bf52c0f77 Update post.md 2019-03-31 19:31:34 +02:00
Radek Kozieł bccf419102 Update README.md 2019-03-31 19:30:56 +02:00
panr e938e972b6 Fix format 2019-03-31 19:28:38 +02:00
panr 13e0079b23 Add post archetype 2019-03-31 19:24:16 +02:00
panr 50e36736c6 Allow to show full content on list 2019-03-31 19:18:43 +02:00
Dave Derderian 034efcb463 remove unnecessary if statement 2019-03-25 13:12:59 +09:00
Dave Derderian 5efec67714 remove site.params.toctile from if condition 2019-03-25 12:00:41 +09:00
Dave Derderian 5987519fd6 add global, local, default TOC 2019-03-25 11:56:59 +09:00
Dave Derderian 3cf9638af1 add conditional table of contents 2019-03-21 08:40:07 +09:00
panr bca791fe8c Fix menuMore null error 2019-03-17 17:49:06 +01:00
Radek Kozieł 54e5006109 Merge pull request #19 from RPGillespie6/make_favicon_configurable
Make favicon configurable
2019-03-16 18:00:27 +01:00
RPGillespie6 27462e1893 Make favicon configurable
Fix #18
2019-03-13 18:56:57 -04:00
Radek Kozieł 9928ada9ad Update README.md 2019-03-06 01:13:31 +01:00
Radek Kozieł ba816147f5 Update README.md 2019-03-06 01:03:29 +01:00
Radek Kozieł e55014bdbc Create USERS.md 2019-03-06 01:02:32 +01:00
Radek Kozieł b484629dc5 Update README.md 2019-03-06 01:01:50 +01:00
Radek Kozieł 0d246fc9f1 Update README.md 2019-03-06 01:00:08 +01:00
Radek Kozieł efad1bff26 Merge pull request #16 from kalbasit/hugo-theme-terminal_allow-custom-javascript
render an extended placeholder for head and footer
2019-03-06 00:49:59 +01:00
Wael M. Nasreddine 00296f07b4 rename the partials to extended_head and extended_footer 2019-03-04 14:20:48 -08:00
Wael M. Nasreddine c375d4ce5d remove the example header and footer 2019-03-04 14:18:30 -08:00
panr 880c995489 Rebuild theme 2019-03-02 01:27:19 +01:00
Radek Kozieł 4eedc6a39a Update config.toml 2019-03-02 01:17:33 +01:00
Radek Kozieł c8f251ce9c Update README.md 2019-03-02 01:16:46 +01:00
Radek Kozieł 7ad1783021 Merge pull request #1 from newhinton/master
Add ability to center the content via Parameter
2019-03-02 01:13:49 +01:00
Radek Kozieł 70cf7406fd Update README.md 2019-03-02 01:13:27 +01:00
newhinton 8fe7d51b94 Merge branch 'master' into master 2019-02-28 14:57:20 +01:00
Wael M. Nasreddine 4b959d0aa6 partials/footer: render a placeholder custom_footer.html 2019-02-26 00:38:49 -08:00
Wael M. Nasreddine 1cf2b933a3 partials/head: render a placeholder custom_head.html 2019-02-26 00:35:27 -08:00
Felix Nüsse 88ed5a0bef Updated CSS and refined width-logic 2019-02-26 09:30:10 +01:00
Radek Kozieł 487876daf1 Merge pull request #15 from stav/master
Use correct stylesheet name
2019-02-26 00:18:32 +01:00
Steven Almeroth 20b48f398e Use correct stylesheet name 2019-02-25 15:13:28 -05:00
Radek Kozieł 077fade121 Merge pull request #12 from andreas-h/patch-1
Fix typo in comment
2019-02-24 18:02:57 +01:00
Andreas Hilboll bb7ad5779f Fix typo in comment 2019-02-24 13:53:19 +01:00
Radek Kozieł 7cb7fc284c Update README.md
Co-Authored-By: newhinton <newhinton@users.noreply.github.com>
2019-02-17 11:10:21 +01:00
panr d005155fa5 Add comment partial 2019-02-15 00:38:45 +01:00
Radek Kozieł 51d1b12820 Merge pull request #7 from sgaduuw/trailingslash
Add a trailing slash to URLs generated for tags
2019-02-14 02:08:56 +01:00
Eelco Wesemann d4f8fea87c Add a trailing slash to URLs generated for tags 2019-02-13 13:00:20 +01:00
Radek Kozieł b746766d0e Merge pull request #5 from ffluegel/patch-1
Removed inline style
2019-02-11 10:11:02 +01:00
panr 4e7ac981d2 Fixes 2019-02-09 09:11:56 +01:00
ffluegel 7a5bad13b3 Update style.css 2019-02-09 01:22:16 +01:00
ffluegel ec98c7bc11 Update header.css 2019-02-09 01:19:37 +01:00
ffluegel 4f399128b2 Removed inline style 2019-02-09 01:07:00 +01:00
panr 8a8e73461e Change post cover path 2019-02-09 00:40:11 +01:00
panr fd42c5953e Update dependencies 2019-02-09 00:35:54 +01:00
panr 36bae52cd3 Fix layout 2019-02-09 00:33:42 +01:00
Radek Kozieł 6a0931d54a Merge pull request #3 from sgaduuw/sgaduuw-fix-h1
Fix h1 close tag for post-title
2019-02-06 10:58:43 +01:00
Eelco Wesemann 90cd4fe1b6 Fix h1 close tag for post-title 2019-02-05 10:49:54 +01:00
Felix Nüsse db29d33536 updated readme
Signed-off-by: Felix Nüsse <Felix.nuesse@t-online.de>
2019-02-03 16:01:43 +01:00
Felix Nüsse 0d2a41242a added parameter for centered view
Signed-off-by: Felix Nüsse <Felix.nuesse@t-online.de>
2019-02-03 16:00:13 +01:00
panr e6f8847460 Fix menu 2019-02-01 16:00:11 +01:00
panr 4a462a4a21 Update README 2019-02-01 10:15:28 +01:00
panr ebdcc29a72 Add table and figure styles 2019-02-01 09:26:51 +01:00
panr 88d7d5ddba Add menu trigger to desktop 2019-02-01 08:39:12 +01:00
panr 4254f4c314 Add menu item counter to config 2019-01-31 22:06:54 +01:00
panr 02f9e07029 Add homepage to theme.toml 2019-01-30 10:32:30 +01:00
panr 446691ba59 Fix layout and code highlighting 2019-01-29 18:59:59 +01:00
Radek Kozieł cdc9966d26 Update theme.toml 2019-01-29 18:14:06 +01:00
panr a459eacc56 Move hello.jpg to exampleSite 2019-01-29 14:54:10 +01:00
panr 802b2f1312 Fix typos 2019-01-29 11:18:14 +01:00
panr e65d3fbbc8 Typo fixes 2019-01-29 11:07:58 +01:00
panr 6c68bd63ae Fix absURL paths and exampleSite 2019-01-29 10:48:49 +01:00
Radek Kozieł abf763d2cc Update README.md 2019-01-29 09:10:06 +01:00
Radek Kozieł fcc952469c Update config.toml 2019-01-29 09:09:40 +01:00
panr da3f788741 Fix typo 2019-01-28 16:52:00 +01:00
panr 0b31242d03 Fix demo content & readme 2019-01-28 16:41:56 +01:00
panr 92bb0e7ac1 Font fixes 2019-01-28 09:34:12 +01:00
Radek Kozieł baf5066f1c Update README.md 2019-01-28 01:36:15 +01:00
panr f7703b5d09 Fix typos and Readme 2019-01-28 01:28:30 +01:00
panr 410393558b Fix example config 2019-01-28 01:24:55 +01:00
panr 4b207e3849 Compile files 2019-01-28 01:15:19 +01:00
panr 86562b8241 Init 2019-01-28 01:11:02 +01:00
91 changed files with 8567 additions and 10943 deletions
+2 -2
View File
@@ -18,7 +18,7 @@ rules:
- as-needed
semi:
- 2
- always
- never
class-methods-use-this: 0
comma-dangle:
- 2
@@ -33,7 +33,7 @@ rules:
func-names: 0
quotes:
- 2
- double
- single
- allowTemplateLiterals: true
no-underscore-dangle: 0
object-curly-newline: 0
-3
View File
@@ -88,6 +88,3 @@ typings/
.dynamodb/
# End of https://www.gitignore.io/api/node
public
resources
.hugo_build.lock
-1
View File
@@ -1 +0,0 @@
_
-4
View File
@@ -1,4 +0,0 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
yarn build && git add . && git commit --amend --no-edit
-1
View File
@@ -2,7 +2,6 @@
"parser": "babel",
"printWidth": 100,
"trailingComma": "all",
"arrowParens": "avoid",
"overrides": [{
"files": ".html",
"options": {
-12
View File
@@ -1,12 +0,0 @@
{
"extends": [
"stylelint-config-standard-scss",
"stylelint-config-prettier-scss"
],
"rules": {
"max-empty-lines": 1,
"color-function-notation": null,
"no-descending-specificity": null,
"selector-class-pattern": null
}
}
+3 -7
View File
@@ -16,10 +16,6 @@ eg:
- John, a javascript developer.
-->
- **Portfolio** (https://github.com/Louisload/hugo-theme-terminal-portfolio)
- Allows you to create a portfolio page (or several). Supports icons and subsections.
- Luís Rodrigues Alves (Louisload), a game dev and musician.
- **Single Page Website** (https://github.com/justinnuwin/hugo-theme-terminal)
- A layout where the homepage can render lists of pages and the navigation menu can link to sections on the homepage.
- Justin Nguyen, software and hardware developer.
- **Social media icons** (https://github.com/...)
- This is the biggest missing feature of the theme. But now it will help your audience reach you over the internet.
- John, a javascript developer.
+93 -127
View File
@@ -1,10 +1,10 @@
# Terminal
![Terminal](https://github.com/panr/hugo-theme-terminal/blob/master/images/terminal-theme.png?raw=true)
![Terminal](https://github.com/panr/hugo-theme-terminal/blob/master/images/screenshot.png?raw=true)
**DEMO - https://panr.github.io/hugo-theme-terminal-demo/**
### DEMO - https://hugo-terminal.now.sh/
**⚠️ The theme needs at least Hugo **Extended** v0.90.x.**
<a href="https://www.buymeacoffee.com/panr" target="_blank"><img src="https://res.cloudinary.com/panr/image/upload/v1579374705/buymeacoffee_y6yvov.svg" alt="Buy Me A Coffee" ></a>
---
@@ -16,34 +16,28 @@
- [How to configure](#how-to-configure)
- [Post archetype](#post-archetype)
- [Add-ons](#add-ons)
- [How to edit the theme](#how-to-edit)
- [How to (safely) edit the theme](#how-to-edit)
- [Found a bug?](#bug)
- [New cool idea or feature](#feature)
- [Terminal theme user?](#terminal-theme-user)
- [License](#license)
- [Sponsoring](#sponsoring)
- [Licence](#licence)
## Features
- fully customizable color schemes generated by [**terminal.css**](https://panr.github.io/terminal-css/).
- **5 duetone themes**, depending on your preferences (orange is default, red, blue, green, pink)
- [**Fira Code**](https://github.com/tonsky/FiraCode) as default monospaced font. It's gorgeous!
- **really nice duotone**, custom syntax highlighting based on [**PrismJS**](https://prismjs.com)
- fully responsive
- fully based on Hugo ecosystem (Pipes and Modules)
#### Built-in shortcodes
- **`image`** (props required: **`src`**; props optional: **`alt`**, **`position`** (**left** is default | center | right), **`style`**)
- e.g.
```go
{{< image src="/img/hello.png" alt="Hello Friend" position="center" style="border-radius: 8px;" >}}
```
- **`image`** (prop required: **`src`**; props optional: **`alt`**, **`position`** (**left** is default | center | right), **`style`**)
- eg: `{{< image src="/img/hello.png" alt="Hello Friend" position="center" style="border-radius: 8px;" >}}`
- **`figure`** (same as `image`, plus few optional props: **`caption`**, **`captionPosition`** (left | **center** is default | right), **`captionStyle`**)
- e.g.
```go
{{< figure src="/img/hello.png" alt="Hello Friend" position="center" style="border-radius: 8px;" caption="Hello Friend!" captionPosition="right" captionStyle="color: red;" >}}
```
- **`code`** (props required: **`language`**; props optional: **`title`**, **`id`**, **`expand`** (default "△"), **`collapse`** (default "▽"), **`isCollapsed`**)
- e.g.
- eg: `{{< figure src="/img/hello.png" alt="Hello Friend" position="center" style="border-radius: 8px;" caption="Hello Friend!" captionPosition="right" captionStyle="color: red;" >}}`
- **`code`** (prop required: **`language`**; props optional: **`title`**, **`id`**, **`expand`** (default "△"), **`collapse`** (default "▽"), **`isCollapsed`**)
- eg:
```go
{{< code language="css" title="Really cool snippet" id="1" expand="Show" collapse="Hide" isCollapsed="true" >}}
pre {
@@ -78,71 +72,32 @@ A custom syntax highlighting based on PrismJS. All you need to do is to wrap you
```
````
**Supported languages**: actionscript, apacheconf, applescript, bash, c, clike, cmake, coffeescript, cpp, csharp, csp, css, css-extras, diff, django, docker, elixir, elm, erlang, flow, fsharp, git, go, graphql, haml, handlebars, haskell, http, java, javascript, json, jsx, kotlin, latex, less, llvm, makefile, markdown, markup, markup-templating, nasm, objectivec, ocaml, perl, php, php-extras, powershell, processing, pug, python, r, reason, ruby, rust, sass, scala, scheme, scss, sql, stylus, swift, textile, toml, tsx, twig, typescript, vim, visual-basic, wasm, yaml.
**Supported languages**: bash/shell, css, clike, javascript, apacheconf, actionscript, applescript, c, csharp, cpp, coffeescript, ruby, csp, css-extras, diff, django, docker, elixir, elm, markup-templating, erlang, fsharp, flow, git, go, graphql, less, handlebars, haskell, http, java, json, kotlin, latex, markdown, makefile, objectivec, ocaml, perl, php, php-extras, r, sql, processing, scss, python, jsx, typescript, toml, reason, textile, rust, sass, stylus, scheme, pug, swift, yaml, haml, twig, tsx, vim, visual-basic, wasm.
## How to start
You can download the theme manually by going to [https://github.com/panr/hugo-theme-terminal.git](https://github.com/panr/hugo-theme-terminal.git) and pasting it to `themes/terminal` in your root directory.
You can also choose **one of the 3 possibilities** to install the theme:
You can also clone it directly to your Hugo folder:
1. as Hugo Module
2. as a standalone local directory
3. as a git submodule
⚠️ The theme needs at least Hugo **Extended** v0.90.x.
### Install theme as Hugo Module
```bash
# If this is the first time you're using Hugo Modules
# in your project. You have to initiate your own module before
# you fetch the theme module.
#
# hugo mod init [your website/module name]
hugo mod get github.com/panr/hugo-theme-terminal/v4
```
$ git clone https://github.com/panr/hugo-theme-terminal.git themes/terminal
```
and in your config file add:
If you don't want to make any radical changes, it's the best option, because you can get new updates when they are available. You can also include it as a git submodule:
```toml
[module]
# this is needed when you fetch the theme as a submodule to your repo.
# replacements = "github.com/panr/hugo-theme-terminal/4 -> themes/terminal"
[[module.imports]]
path = 'github.com/panr/hugo-theme-terminal/v4'
```
$ git submodule add https://github.com/panr/hugo-theme-terminal.git themes/terminal
```
Keep in mind that the theme by default won't show up in the `themes` directory. This means that you are using the theme as it was on the repository at the moment you fetched it. Your local `go.sum` file keeps all the references. Read more about Hugo Modules in the [official documentation](https://gohugo.io/hugo-modules/).
### Install theme locally
```bash
git clone https://github.com/panr/hugo-theme-terminal.git themes/terminal
```
This will clone the repository directly to the `themes/terminal` directory.
### Install theme as a submodule
```bash
git submodule add -f https://github.com/panr/hugo-theme-terminal.git themes/terminal
```
This will install the repository as a sumbodule in the `themes/terminal` directory.
⚠️ If you encounter any issues with:
```bash
Error: module "terminal" not found; either add it as a Hugo Module or store it in "[...your custom path]/themes".: module does not exist
```
then please try to remove `theme = "terminal"` from your config file.
⚠️ **The theme needs at least Hugo version 0.74.x**.
## How to run your site
```bash
hugo server -t terminal
If you installed all needed `npm` dependencies, then you can run:
```
$ hugo server -t terminal
```
and go to `localhost:1313` in your browser. From now on all the changes you make will go live, so you don't need to refresh your browser every single time.
@@ -154,8 +109,6 @@ The theme doesn't require any advanced configuration. Just copy:
```toml
baseurl = "/"
languageCode = "en-us"
# Add it only if you keep the theme in the `themes` directory.
# Remove it if you use the theme as a remote Hugo Module.
theme = "terminal"
paginate = 5
@@ -164,6 +117,9 @@ paginate = 5
# the list of set content will show up on your index page (baseurl).
contentTypeName = "posts"
# ["orange", "blue", "red", "green", "pink"]
themeColor = "orange"
# if you set this to 0, only submenu trigger will be visible
showMenuItems = 2
@@ -176,29 +132,18 @@ paginate = 5
# center theme with default width
centerTheme = false
# if your resource directory contains an image called `cover.(jpg|png|webp)`,
# then the file will be used as a cover automatically.
# With this option you don't have to put the `cover` param in a front-matter.
autoCover = true
# set a custom favicon (default is a `themeColor` square)
# favicon = "favicon.ico"
# set post to show the last updated
# If you use git, you can set `enableGitInfo` to `true` and then post will automatically get the last updated
showLastUpdated = false
# Provide a string as a prefix for the last update date. By default, it looks like this: 2020-xx-xx [Updated: 2020-xx-xx] :: Author
# updatedDatePrefix = "Updated"
# whether to show a page's estimated reading time
# readingTime = false # default
# whether to show a table of contents
# can be overridden in a page's front-matter
# Toc = false # default
# set title for the table of contents
# can be overridden in a page's front-matter
# TocTitle = "Table of Contents" # default
# set all headings to their default size (depending on browser settings)
# it's set to `true` by default
# oneHeadingSize = false
[params.twitter]
# set Twitter handles for Twitter cards
@@ -211,50 +156,38 @@ paginate = 5
[languages.en]
languageName = "English"
title = "Terminal"
subtitle = "A simple, retro theme for Hugo"
owner = ""
keywords = ""
copyright = ""
menuMore = "Show more"
readMore = "Read more"
readOtherPosts = "Read other posts"
missingContentMessage = "Page not found..."
missingBackButtonLabel = "Back to home page"
[languages.en.params]
subtitle = "A simple, retro theme for Hugo"
owner = ""
keywords = ""
copyright = ""
menuMore = "Show more"
readMore = "Read more"
readOtherPosts = "Read other posts"
newerPosts = "Newer posts"
olderPosts = "Older posts"
missingContentMessage = "Page not found..."
missingBackButtonLabel = "Back to home page"
minuteReadingTime = "min read"
words = "words"
[languages.en.params.logo]
logoText = "Terminal"
logoHomeLink = "/"
[languages.en.params.logo]
logoText = "Terminal"
logoHomeLink = "/"
[languages.en.menu]
[[languages.en.menu.main]]
identifier = "about"
name = "About"
url = "/about"
[[languages.en.menu.main]]
identifier = "showcase"
name = "Showcase"
url = "/showcase"
[module]
# In case you would like to make changes to the theme and keep it locally in you repository,
# uncomment the line below (and correct the local path if necessary).
# --
# replacements = "github.com/panr/hugo-theme-terminal/v4 -> themes/terminal"
[[module.imports]]
path = 'github.com/panr/hugo-theme-terminal/v4'
[languages.en.menu]
[[languages.en.menu.main]]
identifier = "about"
name = "About"
url = "/about"
[[languages.en.menu.main]]
identifier = "showcase"
name = "Showcase"
url = "/showcase"
```
to `config.toml` file in your Hugo root directory and change params fields. In case you need, here's [a YAML version](https://gist.github.com/panr/9eeea6f595c257febdadc11763e3a6d1).
**NOTE:** Please keep in mind that currently `main menu` doesn't support nesting.
## Post archetype
See the default `post` file params supported by the theme — https://github.com/panr/hugo-theme-terminal/blob/master/archetypes/posts.md
See the basic `post` file params supported by the theme — https://github.com/panr/hugo-theme-terminal/blob/master/archetypes/posts.md
## Add-ons
@@ -262,11 +195,39 @@ See the default `post` file params supported by the theme — https://github.com
- **Extended Head** — please take a look at `layouts/partials/extended_head.html` https://github.com/panr/hugo-theme-terminal/blob/master/layouts/partials/extended_head.html
- **Extended Footer** — please take a look at `layouts/partials/extended_footer.html` https://github.com/panr/hugo-theme-terminal/blob/master/layouts/partials/extended_footer.html
## How to edit the theme <a id="how-to-edit" />
## How to (safely) edit the theme <a id="how-to-edit" />
If you are using as a remote Hugo Module (you don't have the theme files in the `theme/terminal`) and you have to override only some of the styles, you can do this easily by adding `static/style.css` in your root directory and point things you want to change.
If you have to override only some of the styles, you can do this easily by adding `static/style.css` in your root directory and point things you want to change.
If you have the theme files in the theme directory, then you can directly edit anything in the theme, you just have to go to `themes/terminal` and modify the files. No compilation step needed.
To change something directly in the theme, you have to go to `themes/terminal` and modify the files.
First, you need to install Node dependencies. To do so, go to the theme directory (from your Hugo root directory):
```bash
$ cd themes/terminal
```
then run:
```bash
$ npm install
$ npm i yarn
$ yarn
```
After you modified the files you can run webpack in watch mode:
```bash
$ yarn dev
```
or rebuild theme
```bash
$ yarn build
```
To see the changes (remember to restart `hugo server`).
## Found a bug? <a id="bug" />
@@ -293,9 +254,14 @@ Sounds OK? Cool, let's rock! 🤘
I'd be happy to know more about you and what you are doing. If you want to share it, please make a contribution and [add your site to the list](https://github.com/panr/hugo-theme-terminal/blob/master/USERS.md)! 🤗
## Sponsoring
If you like my work and want to support the development of the project, now you can! Just:
<a href="https://www.buymeacoffee.com/panr" target="_blank"><img src="https://res.cloudinary.com/panr/image/upload/v1579374705/buymeacoffee_y6yvov.svg" alt="Buy Me A Coffee" ></a>
## License
Copyright © 2019-2024 Radosław Kozieł ([@panr](https://twitter.com/panr))
Copyright © 2019-2020 Radosław Kozieł ([@panr](https://twitter.com/panr))
The theme is released under the MIT License. Check the [original theme license](https://github.com/panr/hugo-theme-terminal/blob/master/LICENSE.md) for additional licensing information.
+15 -38
View File
@@ -1,20 +1,28 @@
# Meet the users of Terminal theme!
- https://xicode.se **magistern** (Teacher)
- https://devmaster64.com **devmaster64** (Software Developer)
- https://mickie1.gitlab.io/blog/ **mickie** (Engineer)
- https://calloc.net **Vaibhav Yenamandra** (Software Engineer)
- https://potatofrom.space **Kevin Liu** (Software)
- https://horochx.org **horochx** (Software Developer)
- https://feng.si **Si Feng** (Software Engineer)
- https://ben-on-vms.com **Benedikt Frenzel** (Technical Support Engineer)
- https://johngazzini.com **John Gazzini** (Software Engineer)
- https://geekx.tech/ **Sagar Ladla** (Student Developer & Cyber Security Specialist)
- https://tears.io/ **Alex** (SRE)
- https://ayushkarn.me/ **Ayush Karn** (Student Developer)
- https://ssgram.dev **Ramaseshan Parthasarathy** (Software Developer)
- https://zaine.me **Amine Zaine** (Cloud Engineer)
- https://notes.dmaitre.phyip3.dur.ac.uk/computing-club/ **Ryan Moodie** (Physics PhD student)
- https://thecodecousins.com **Stanley Nguyen** (Software Engineer) & **Hoang Do** (Software & IoT Engineer)
- https://schacherbauer.dev **Markus Schacherbauer** (Student Developer)
- https://rinma.dev **Marvin Dalheimer** (Software Developer)
- https://lunar.computer **Lunar Computer** (DevOps Engineer)
- https://naxxfish.net **Chris Roberts** (Broadcast Systems Engineer)
- https://security.jtang.dev **Jonathan Tang** (Student & Software Engineer)
- https://andreacaravano.net **Andrea Caravano** (Student)
- https://dawsonverboven.com/ **Dawson Verboven** (Student & Software Developer)
- https://www.rockyourcode.com **Sophia Brandt** (tax officer and hobby coder)
- https://qbunt.com **Jeremy Bunting** (Software Engineer)
- https://smeik.org **Smeik** (Embedded Developer)
- https://code.willstocks.co.uk **Will Stocks** (Blogger & Developer)
@@ -22,45 +30,14 @@
- https://m47r1x.github.io **Neo** (Citizen of Zion)
- https://bgameiro.me/ **Bernardo Gameiro** (Engineer Physicist student)
- https://return-to-libc.com/ **elraro** (Cyber Security Specialist)
- https://pablart.com/ **Pablo Diaz-Gutierrez** (Software Engineer, General Tinkerer)
- https://waterloos.niflheimr.blue/ **niflheimr1011** (Aspiring Software Engineer)
- https://monocle.rpod.club/ **classx** (DevOps Engineer)
- https://erisianrite.com/ **ErisianRite** (Coding, Engineering, Tools for Thought)
- https://isaes.com.tr/ **Isa Es** (Software Engineer)
- https://blog.m5e.de/ **Christoph Miksche** (Software Developer)
- https://mpostument.com/ **Maksym Postument** (DevOps Engineer)
- https://mathiejosh.xyz **Josh Mathie** (Electrical Engineering Technology Student/Sales and Engineering Tech)
- https://yuji.ne.jp/ **YUJI** (Student & Software Developer)
- https://blog.puvvadi.me **KD Puvvadi** (Software Dev & Cloud Orchestrator)
- https://hidden.land/ **Louisload** (Game Developer & Musician)
- https://linuxbase.nl **Michael Trip** (DevOps Engineer)
- https://blog.sethforprivacy.com **Seth For Privacy** (Security, privacy, and cryptocurrency writer, podcaster)
- https://thesprawl.city **crish** (Software and stuff)
- https://justinnuwin.com **Justin Nguyen** (Software & Hardware Developer)
- https://blog.woosal.com/ **Vusal Ismayilov** (Computer Engineering Student)
- https://itsembedded.com/ **Norbert Kremeris** (digital logic design and verification engineer)
- https://nereuxofficial.github.io **Nereuxofficial** (Software Developer & Student)
- https://biplav.xyz **Biplav's Blog** (Student)
- https://santiago.wtf **Nicholas Santiago** (DevOps Engineer)
- https://2200g.github.io/ **2200g** (Blogger/Student)
- https://they.mint.lgbt **Joey Aliaga** (Software Developer & Student)
- https://tatewilhelm.me **Tate Wilhelm** (Student, Programmer & Tinkerer)
- https://mikefoden.com **Mike Foden** (Software Developer)
- https://undemalum.github.io/portfolio/ **Mateusz Konat** (Student)
- https://ku0hn.radio **Ben Kuhn** (Ham Radio Operator, InfoSec Engineer, Tinkerer)
- https://www.grumpymetalguy.com **GrumpyMetalGuy** (General Grumper and Developer)
- https://blog.jontes.page **Jonte** (general tech geek)
- https://nazdarthegame.com/ **Michal Skoula** (Software Developer)
- https://1mup.myorange.house **Antonio Garosi** (Street art gallery)
- https://kitchvx.github.io **Nathan Kitching** (IT Student)
- https://dgood.win **Dom Goodwin** (Platform Engineer)
- https://sir-photch.xyz **Sir-Photch** (ComSci-student. German Blog)
- https://drewmorris.info **Drew Morris** (Mathematician && Computer Scientist)
- https://blog.darkiiiiiice.com **MarioMang** (Software Developer)
- https://wjdevschool.com/ **Wojciech Bogócki** (Making Things & Teaching / W&J Dev School)
- https://waterloos.niflheimr.blue/ **cindrmon** (Aspiring Software Engineer and Student)
<!--
TEMPLATE:
TEMPLATE:
- https://radoslawkoziel.pl **Radek Kozieł** (Software Designer and Developer)
-->
- https://radoslawkoziel.pl **Radek Kozieł** (Software Designer and Developer)
-->
+2 -4
View File
@@ -1,6 +1,6 @@
+++
title = "{{ replace .TranslationBaseName "-" " " | title }}"
date = "{{ .Date }}"
title = ""
date = ""
author = ""
authorTwitter = "" #do not include @
cover = ""
@@ -8,6 +8,4 @@ tags = ["", ""]
keywords = ["", ""]
description = ""
showFullContent = false
readingTime = false
hideComments = false
+++
+50 -79
View File
@@ -8,116 +8,87 @@ button,
.button,
a.button {
position: relative;
display: inline-flex;
display: flex;
align-items: center;
justify-content: center;
padding: 8px 18px;
margin-bottom: 5px;
text-decoration: none;
text-align: center;
border-radius: 8;
font: inherit;
font-weight: bold;
border-radius: 8px;
border: 1px solid transparent;
appearance: none;
cursor: pointer;
outline: none;
}
button.outline,
.button.outline,
a.button.outline {
background: transparent;
box-shadow: none;
padding: 8px 18px;
}
/* variants */
button.outline :hover,
.button.outline :hover,
a.button.outline :hover {
transform: none;
box-shadow: none;
}
&.outline {
background: transparent;
box-shadow: none;
padding: 8px 18px;
button.link,
.button.link,
a.button.link {
background: none;
font-size: 1rem;
}
:hover {
transform: none;
box-shadow: none;
}
}
button.small,
.button.small,
a.button.small {
font-size: 0.8rem;
}
&.primary {
box-shadow: 0 4px 6px rgba(50, 50, 93, .11), 0 1px 3px rgba(0, 0, 0, .08);
button.wide,
.button.wide,
a.button.wide {
min-width: 200px;
padding: 14px 24px;
}
&:hover {
box-shadow: 0 2px 6px rgba(50, 50, 93, .21), 0 1px 3px rgba(0, 0, 0, .08);
}
}
a.button.inline {
background: none;
color: var(--accent);
padding: initial;
margin: initial;
border: initial;
font-weight: initial;
text-decoration: none;
}
&.link {
background: none;
font-size: 1rem;
}
a.button.inline:active,
a.button.inline:hover {
background: none;
}
a.button.inline::before {
content: "["
}
/* sizes */
a.button.inline::after {
content: "]"
}
&.small {
font-size: .8rem;
}
a.button.inline.prev::before {
content: "← ["
}
a.button.inline.next::after {
content: "] →"
&.wide {
min-width: 200px;
padding: 14px 24px;
}
}
a.read-more,
a.read-more:hover,
a.read-more:active {
display: inline-flex;
border: none;
background: none;
box-shadow: none;
padding: 0;
margin: 20px 0;
max-width: 100%;
text-decoration: none;
}
.code-toolbar {
margin-bottom: 20px;
}
.code-toolbar .toolbar-item a {
position: relative;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 3px 8px;
margin-bottom: 5px;
text-decoration: none;
text-align: center;
font-size: 13px;
font-weight: 500;
border-radius: 8px;
border: 1px solid transparent;
appearance: none;
cursor: pointer;
outline: none;
.toolbar-item a {
position: relative;
display: inline-flex;
align-items: center;
justify-content: center;
padding: 3px 8px;
margin-bottom: 5px;
text-decoration: none;
text-align: center;
font-size: 13px;
font-weight: 500;
border-radius: 8px;
border: 1px solid transparent;
appearance: none;
cursor: pointer;
outline: none;
}
}
+66 -100
View File
@@ -1,118 +1,84 @@
/* _code.scss */
pre {
margin: 20px 0;
}
.code-toolbar {
position: relative;
margin: 20px 0;
border: 1px solid color-mix(in srgb, var(--accent) 10%, transparent);
}
.code-toolbar + .code-toolbar,
.code-toolbar + .highlight,
.code-toolbar + .highlight .code-toolbar {
border-top: 0;
margin-top: -20px;
}
.code-toolbar pre, .code-toolbar code {
border: none;
}
.code-toolbar code {
display: block;
color: color-mix(in srgb, var(--accent) 50%, var(--foreground));
}
.code-toolbar > .toolbar button {
font-size: 0.8em !important;
font-weight: bold !important;
background: var(--accent) !important;
color: var(--background) !important;
border-radius: var(--radius) !important;
box-shadow: none !important;
border: 1px solid var(--background) !important;
margin: 6px !important;
padding: 10px !important;
user-select: none;
}
.collapsable-code {
--border-color: color-mod(var(--accent) blend(#999 90%));
position: relative;
width: 100%;
margin: 40px 0;
}
.collapsable-code input[type=checkbox] {
position: absolute;
visibility: hidden;
}
input[type="checkbox"] {
position: absolute;
visibility: hidden;
}
.collapsable-code input[type=checkbox]:checked ~ pre,
.collapsable-code input[type=checkbox]:checked ~ .code-toolbar pre {
display: none;
}
input[type="checkbox"]:checked {
~ pre,
~ .code-toolbar pre {
height: 0;
padding: 0;
border-top: none;
}
.collapsable-code input[type=checkbox]:checked ~ .code-toolbar {
padding: 0;
border-top: none;
}
~ .code-toolbar {
padding: 0;
border-top: none;
.collapsable-code input[type=checkbox]:checked ~ .code-toolbar .toolbar {
display: none;
}
.toolbar {
display: none;
}
}
.collapsable-code input[type=checkbox]:checked ~ label .collapsable-code__toggle::after {
content: attr(data-label-expand);
}
~ label .collapsable-code__toggle:after {
content: attr(data-label-expand);
}
}
.collapsable-code label {
position: relative;
display: flex;
justify-content: space-between;
min-width: 30px;
min-height: 30px;
margin: 0;
border-bottom: 1px solid var(--accent);
cursor: pointer;
}
label {
position: relative;
display: flex;
justify-content: space-between;
min-width: 30px;
min-height: 30px;
margin: 0;
border-bottom: 1px solid var(--border-color);
cursor: pointer;
}
.collapsable-code__title {
flex: 1;
color: var(--accent);
padding: 3px 10px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
&__title {
flex: 1;
color: var(--accent);
padding: 3px 10px;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
.collapsable-code__language {
color: var(--accent);
border: 1px solid var(--accent);
border-bottom: none;
text-transform: uppercase;
padding: 3px 10px;
}
&__language {
color: var(--accent);
border: 1px solid var(--border-color);
border-bottom: none;
text-transform: uppercase;
padding: 3px 10px;
}
.collapsable-code__toggle {
color: var(--accent);
font-size: 16px;
padding: 3px 10px;
}
&__toggle {
color: var(--accent);
font-size: 16px;
padding: 3px 10px;
.collapsable-code__toggle::after {
content: attr(data-label-collapse);
}
&:after {
content: attr(data-label-collapse);
}
}
.collapsable-code pre {
margin-top: 0;
}
pre {
margin-top: 0;
.collapsable-code pre::first-line {
line-height: 0;
}
&::first-line {
line-height: 0;
}
}
.collapsable-code .code-toolbar {
margin: 0;
.code-toolbar {
margin: 0;
}
}
+14
View File
@@ -0,0 +1,14 @@
@import '../main.css';
@import '../header.css';
@import '../logo.css';
@import '../pagination.css';
@import '../post.css';
@import '../syntax.css';
@import '../variables.css';
:root {
--accent: #23B0FF;
--background: color-mod(var(--accent) blend(#1D1E28 98%));
--color: white;
--border-color: rgba(255, 255, 255, .1);
}
+14
View File
@@ -0,0 +1,14 @@
@import '../main.css';
@import '../header.css';
@import '../logo.css';
@import '../pagination.css';
@import '../post.css';
@import '../syntax.css';
@import '../variables.css';
:root {
--accent: #78E2A0;
--background: color-mod(var(--accent) blend(#1D1E28 98%));
--color: white;
--border-color: rgba(255, 255, 255, .1);
}
+14
View File
@@ -0,0 +1,14 @@
@import '../main.css';
@import '../header.css';
@import '../logo.css';
@import '../pagination.css';
@import '../post.css';
@import '../syntax.css';
@import '../variables.css';
:root {
--accent: #EE72F1;
--background: color-mod(var(--accent) blend(#1D1E28 98%));
--color: white;
--border-color: rgba(255, 255, 255, .1);
}
+14
View File
@@ -0,0 +1,14 @@
@import '../main.css';
@import '../header.css';
@import '../logo.css';
@import '../pagination.css';
@import '../post.css';
@import '../syntax.css';
@import '../variables.css';
:root {
--accent: #FF6266;
--background: color-mod(var(--accent) blend(#1D1E28 98%));
--color: white;
--border-color: rgba(255, 255, 255, .1);
}
+5 -5
View File
@@ -1,15 +1,15 @@
/* _font.scss */
@font-face {
font-display: swap;
font-family: "Fira Code";
font-style: normal;
font-family: 'Fira Code';
font-style: normal;
font-weight: 400;
src: url("../fonts/FiraCode-Regular.woff") format("woff");
}
@font-face {
font-display: swap;
font-family: "Fira Code";
font-style: normal;
font-family: 'Fira Code';
font-style: normal;
font-weight: 800;
src: url("../fonts/FiraCode-Bold.woff") format("woff");
}
+38 -35
View File
@@ -1,47 +1,50 @@
/* _footer.scss */
.footer {
padding: 40px 0;
flex-grow: 0;
opacity: 0.5;
}
opacity: .5;
.footer__inner {
display: flex;
align-items: center;
justify-content: space-between;
margin: 0;
width: 760px;
max-width: 100%;
}
&__inner {
display: flex;
align-items: center;
justify-content: space-between;
margin: 0;
width: 760px;
max-width: 100%;
.footer a {
color: inherit;
}
@media (--tablet) {
flex-direction: column;
}
}
.footer .copyright {
display: flex;
flex-flow: row wrap;
flex: 1;
align-items: center;
font-size: 1rem;
justify-content: center;
}
a {
color: inherit;
}
.footer .copyright--user {
margin: auto;
text-align: center;
}
.copyright {
display: flex;
flex-direction: row;
align-items: center;
font-size: 1rem;
color: var(--light-color-secondary);
.footer .copyright > *:first-child:not(:only-child) {
margin-right: 10px;
}
&--user {
margin: auto;
text-align: center;
}
.footer .copyright span {
white-space: nowrap;
}
& > *:first-child:not(:only-child) {
margin-right: 10px;
@media (max-width: 900px) {
.footer__inner {
flex-direction: column;
@media (--tablet) {
border: none;
padding: 0;
margin: 0;
}
}
@media (--tablet) {
flex-direction: column;
margin-top: 10px;
}
}
}
-5
View File
@@ -1,5 +0,0 @@
/* _gist.scss */
body .gist .blob-num,
body .gist .blob-code-inner {
border: none;
}
+154 -38
View File
@@ -1,46 +1,162 @@
/* _header.scss */
@define-mixin menu {
position: absolute;
background: var(--background);
box-shadow: var(--shadow);
color: white;
border: 2px solid;
margin: 0;
padding: 10px;
list-style: none;
z-index: 99;
}
.header {
display: flex;
flex-direction: column;
position: relative;
}
.header__inner {
display: flex;
align-items: center;
justify-content: space-between;
}
.header__logo {
display: flex;
flex: 1;
}
.header__logo::after {
content: "";
background: repeating-linear-gradient(90deg, var(--accent), var(--accent) 2px, transparent 0, transparent 10px);
display: block;
width: 100%;
right: 10px;
}
.header__logo a {
flex: 0 0 auto;
max-width: 100%;
text-decoration: none;
}
.logo {
display: flex;
align-items: center;
text-decoration: none;
background: var(--accent);
color: var(--background);
padding: 5px 10px;
}
@media print {
.header {
@media print {
display: none;
}
&__inner {
display: flex;
align-items: center;
justify-content: space-between;
}
&__logo {
display: flex;
flex: 1;
&:after {
content: '';
background: repeating-linear-gradient(90deg, var(--accent), var(--accent) 2px, transparent 0, transparent 10px);
display: block;
width: 100%;
right: 10px;
}
a {
flex: 0 0 auto;
max-width: 100%;
text-decoration: none;
}
}
.menu {
--shadow-color: color-mod(var(--background) a(80%));
--shadow: 0 10px var(--shadow-color), -10px 10px var(--shadow-color), 10px 10px var(--shadow-color);
margin: 20px 0;
@media (--phone) {
@mixin menu;
top: 50px;
right: 0;
}
&__inner {
display: flex;
flex-wrap: wrap;
list-style: none;
margin: 0;
padding: 0;
&--desktop {
@media (--phone) {
display: none;
}
}
&--mobile {
display: none;
@media (--phone) {
display: block;
}
}
li {
&:not(:last-of-type) {
margin-right: 20px;
margin-bottom: 10px;
flex: 0 0 auto;
}
}
@media (--phone) {
flex-direction: column;
align-items: flex-start;
padding: 0;
li {
margin: 0;
padding: 5px;
}
}
}
&__sub-inner {
position: relative;
list-style: none;
padding: 0;
margin: 0;
&:not(:only-child) {
margin-left: 20px;
}
&-more {
@mixin menu;
top: 35px;
left: 0;
&-trigger {
color: var(--accent);
user-select: none;
cursor: pointer;
}
li {
margin: 0;
padding: 5px;
white-space: nowrap;
}
}
}
.spacer {
flex-grow: 1;
}
.language-selector {
position: relative;
list-style: none;
margin: 0;
&-current {
list-style-type: none;
display: flex;
flex-direction: row;
color: var(--accent);
cursor: pointer;
margin: 0;
}
&__more {
@mixin menu;
top: 35px;
right: 0;
}
}
&-trigger {
color: var(--accent);
border: 2px solid;
margin-left: 10px;
height: 100%;
padding: 3px 8px;
position: relative;
}
}
}
+8
View File
@@ -0,0 +1,8 @@
.logo {
display: flex;
align-items: center;
text-decoration: none;
background: var(--accent);
color: black;
padding: 5px 10px;
}
+287 -123
View File
@@ -1,110 +1,289 @@
/* _main.scss */
html {
box-sizing: border-box;
}
*,
*::before,
*::after {
*:before,
*:after {
box-sizing: inherit;
}
body {
margin: 0;
padding: 0;
font-family: "Fira Code", Monaco, Consolas, "Ubuntu Mono", monospace;
font-family: 'Fira Code', Monaco, Consolas, Ubuntu Mono, monospace;
font-size: 1rem;
line-height: 1.54;
letter-spacing: -0.02em;
background-color: var(--background);
color: var(--foreground);
text-rendering: optimizelegibility;
background-color: color-mod(var(--accent) blend(#1D1E28 98%));
color: var(--color);
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
font-feature-settings: "liga", "tnum", "zero", "ss01", "locl";
font-feature-settings: "liga", "tnum", "case", "calt", "zero", "ss01", "locl";
font-variant-ligatures: contextual;
-webkit-overflow-scrolling: touch;
text-size-adjust: 100%;
-webkit-text-size-adjust: 100%;
@media (--phone) {
font-size: 1rem;
}
}
.headings--one-size h1,
.headings--one-size h2,
.headings--one-size h3,
.headings--one-size h4,
.headings--one-size h5,
.headings--one-size h6 {
font-size: 1.4rem;
line-height: 1.3;
margin: 20px 0;
.headings--one-size {
h1,
h2,
h3,
h4,
h5,
h6 {
line-height: 1.3;
&:not(first-child) {
margin-top: 40px;
}
}
h1,
h2,
h3 {
font-size: 1.4rem;
}
h4,
h5,
h6 {
font-size: 1.2rem;
}
}
.headings--one-size ~ h1:first-child,
.headings--one-size ~ h2:first-child,
.headings--one-size ~ h3:first-child,
.headings--one-size ~ h4:first-child,
.headings--one-size ~ h5:first-child,
.headings--one-size ~ h6:first-child {
margin-top: 20px;
}
img.left {
margin-right: auto;
}
img.center {
margin-left: auto;
margin-right: auto;
}
img.right {
margin-left: auto;
}
figure.left {
margin-right: auto;
}
figure.center {
margin-left: auto;
margin-right: auto;
}
figure.right {
margin-left: auto;
}
figure figcaption.left {
text-align: left;
}
figure figcaption.center {
text-align: center;
}
figure figcaption.right {
text-align: right;
}
blockquote.twitter-tweet {
position: relative;
background: var(--background);
font: inherit;
a {
color: inherit;
border: 1px solid var(--accent);
padding-top: 60px;
/* Waiting for a better times... */
/* &:has(code) {
text-decoration-color: var(--accent);
} */
}
blockquote.twitter-tweet a {
color: var(--accent);
text-decoration: underline;
img {
display: block;
max-width: 100%;
&.left {
margin-right: auto;
}
&.center {
margin-left: auto;
margin-right: auto;
}
&.right {
margin-left: auto;
}
}
blockquote.twitter-tweet::before {
content: "> From X:";
position: absolute;
top: 20px;
left: 20px;
p {
margin-bottom: 20px;
}
figure {
display: table;
max-width: 100%;
margin: 25px 0;
&.left {
margin-right: auto;
}
&.center {
margin-left: auto;
margin-right: auto;
}
&.right {
margin-left: auto;
}
figcaption {
font-size: 14px;
padding: 5px 10px;
margin-top: 5px;
background: var(--accent);
color: var(--background);
/* opacity: .8; */
&.left {
text-align: left;
}
&.center {
text-align: center;
}
&.right {
text-align: right;
}
}
}
code, kbd {
font-family: 'Fira Code', Monaco, Consolas, Ubuntu Mono, monospace;
font-feature-settings: normal;
background: color-mod(var(--accent) a(20%));
color: var(--accent);
font-weight: bold;
padding: 1px 6px;
margin: 0 2px;
font-size: .95rem;
code, kbd {
background: transparent;
padding: 0;
margin: 0;
}
}
pre {
background: transparent !important;
padding: 20px 10px;
margin: 40px 0;
font-size: .95rem;
overflow: auto;
border-top: 1px solid rgba(255, 255, 255, .1);
border-bottom: 1px solid rgba(255, 255, 255, .1);
+ pre {
border-top: 0;
margin-top: -40px;
}
@media (--phone) {
white-space: pre-wrap;
word-wrap: break-word;
}
code {
background: none !important;
margin: 0;
padding: 0;
font-size: inherit;
border: none;
}
}
blockquote {
border-top: 1px solid var(--accent);
border-bottom: 1px solid var(--accent);
margin: 40px 0;
padding: 25px;
@media (--phone) {
padding-right: 0;
}
p:first-of-type {
margin-top: 0;
}
p:last-of-type {
margin-bottom: 0;
}
p {
position: relative;
}
p:first-of-type:before {
content: '>';
display: block;
position: absolute;
left: -25px;
color: var(--accent);
}
&.twitter-tweet {
position: relative;
background: color-mod(var(--accent) a(10%));
font: inherit;
color: inherit;
border: 1px solid var(--accent);
padding-top: 60px;
p:before {
content: '';
}
&:before {
content: '> From Twitter:';
position: absolute;
top: 20px;
color: var(--accent);
font-weight: bold;
}
a {
color: var(--accent);
}
}
}
table {
table-layout: fixed;
border-collapse: collapse;
width: 100%;
margin: 40px 0;
}
table,
th,
td {
border: 1px dashed var(--accent);
padding: 10px;
}
th {
color: var(--accent);
}
ul,
ol {
margin-left: 30px;
padding: 0;
li {
position: relative;
}
@media (--phone) {
margin-left: 20px;
}
}
ol {
list-style: none;
counter-reset: li;
li {
counter-increment: li;
}
li:before {
content: counter(li);
position: absolute;
right: calc(100% + 10px);
color: var(--accent);
display: inline-block;
text-align: right;
}
}
ol ol {
list-style-type: lower-alpha;
}
mark {
background: var(--accent);
color: var(--background);
}
.container {
@@ -113,58 +292,43 @@ blockquote.twitter-tweet::before {
padding: 40px;
max-width: 864px;
min-height: 100vh;
border-right: 1px solid color-mix(in srgb, var(--accent) 10%, transparent);
}
border-right: 1px solid rgba(255, 255, 255, 0.1);
.container.full, .container.center {
border: none;
margin: 0 auto;
}
&.full,
&.center {
border: none;
margin: 0 auto;
}
.container.full {
max-width: 100%;
&.full {
max-width: 100%;
}
@media (--phone) {
padding: 20px;
}
@media print {
display: initial;
}
}
.content {
display: flex;
flex-direction: column;
@media print {
display: initial;
}
}
hr {
width: 100%;
border: none;
background: var(--border-color);
height: 1px;
}
.hidden {
display: none;
}
.__h_video {
padding-bottom: 58.23% !important;
overflow: visible !important;
}
iframe[src*="youtube.com"] {
border: 8px solid var(--accent) !important;
padding: 8px !important;
}
@media (max-width: 684px) {
body {
font-size: 1rem;
}
.container {
padding: 20px;
}
ul,
ol {
margin-left: 20px;
}
}
@media print {
.container {
display: initial;
}
.content {
display: initial;
}
}
-149
View File
@@ -1,149 +0,0 @@
/* _menu.scss */
.navigation-menu {
display: flex;
align-items: flex-start;
justify-content: space-between;
margin: 20px 1px;
}
.navigation-menu__inner {
display: flex;
flex: 1;
flex-wrap: wrap;
list-style: none;
margin: 0;
padding: 0;
}
.navigation-menu__inner > li {
flex: 0 0 auto;
margin-bottom: 10px;
white-space: nowrap;
}
.navigation-menu__inner > li:not(:last-of-type) {
margin-right: 20px;
}
.navigation-menu .spacer {
flex-grow: 1 !important;
}
.menu {
display: flex;
flex-direction: column;
position: relative;
list-style: none;
padding: 0;
margin: 0;
}
.menu__trigger {
margin-right: 0 !important;
color: var(--accent);
user-select: none;
cursor: pointer;
}
.menu__dropdown {
display: none;
flex-direction: column;
position: absolute;
background: var(--background);
box-shadow: 0 10px var(--background), -10px 10px var(--background), 10px 10px var(--background);
color: var(--accent);
border: 2px solid var(--accent);
margin: 0;
padding: 10px;
top: 10px;
left: 0;
list-style: none;
z-index: 99;
}
.open .menu__dropdown {
display: flex;
}
.menu__dropdown > li {
flex: 0 0 auto;
}
.menu__dropdown > li:not(:last-of-type) {
margin-bottom: 10px;
}
.menu__dropdown > li a {
display: flex;
padding: 5px;
}
.menu--mobile .menu__trigger {
color: var(--accent);
border: 2px solid;
margin-left: 10px;
height: 100%;
padding: 3px 8px;
margin-bottom: 0 !important;
position: relative;
cursor: pointer;
display: none;
}
.menu--mobile li {
flex: 0 0 auto;
}
.menu--mobile li:not(:last-of-type) {
margin-bottom: 10px;
}
.menu--language-selector .menu__trigger {
color: var(--accent);
border: 2px solid;
margin-left: 10px;
height: 100%;
padding: 3px 8px;
margin-bottom: 0 !important;
position: relative;
cursor: pointer;
}
.menu--language-selector .menu__dropdown {
left: auto;
right: 0;
}
@media (max-width: 684px) {
.navigation-menu {
margin: 0;
}
.navigation-menu__inner {
flex-direction: column;
align-items: flex-start;
padding: 0;
}
.navigation-menu__inner li {
margin: 0;
padding: 5px;
}
.menu--desktop {
display: none;
}
.menu--mobile .menu__trigger {
display: block;
}
.menu--mobile .menu__dropdown {
left: auto;
right: 0;
}
.menu--language-selector .menu__trigger {
display: none;
}
}
+62 -73
View File
@@ -1,97 +1,86 @@
/* _pagination.scss */
.pagination {
margin-top: 50px;
}
.pagination__title {
display: flex;
text-align: center;
position: relative;
margin: 100px 0 20px;
}
@media print {
display: none;
}
.pagination__title-h {
text-align: center;
margin: 0 auto;
padding: 5px 10px;
background: var(--background);
color: color-mix(in srgb var(--foreground) 30%, transparent);
font-size: 0.8rem;
text-transform: uppercase;
text-decoration: none;
letter-spacing: 0.1em;
z-index: 1;
}
&__title {
display: flex;
text-align: center;
position: relative;
margin: 100px 0 20px;
.pagination__title hr {
position: absolute;
left: 0;
right: 0;
width: 100%;
margin-top: 15px;
z-index: 0;
}
&-h {
text-align: center;
margin: 0 auto;
padding: 5px 10px;
background: color-mod(var(--accent) blend(#1D1E28 98%));
font-size: .8rem;
text-transform: uppercase;
text-decoration: none;
letter-spacing: .1em;
z-index: 1;
}
.pagination__buttons {
display: flex;
align-items: center;
justify-content: center;
flex-flow: row wrap;
gap: 10px;
}
hr {
position: absolute;
left: 0;
right: 0;
width: 100%;
margin-top: 15px;
z-index: 0;
}
}
.pagination__buttons a {
display: inline-flex;
max-width: 100%;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
text-decoration: none;
&__buttons {
display: flex;
align-items: center;
justify-content: center;
a {
text-decoration: none;
}
}
}
.button {
position: relative;
display: inline-flex;
flex: 1;
align-items: center;
justify-content: center;
font-size: 1rem;
border-radius: 8px;
padding: 0;
cursor: pointer;
appearance: none;
}
.button a {
display: flex;
justify-content: center;
flex: 1;
padding: 8px 16px;
text-decoration: none;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
.button__text {
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
+ .button {
margin-left: 10px;
}
.next .button__icon {
margin-left: 8px;
}
a {
display: flex;
padding: 8px 16px;
text-decoration: none;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
.prev .button__icon {
margin-right: 8px;
}
&__text {
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
}
@media (max-width: 684px) {
.button {
flex: 1;
}
}
@media print {
.pagination {
display: none;
&.next .button__icon {
margin-left: 8px;
}
&.previous .button__icon {
margin-right: 8px;
}
}
+97 -107
View File
@@ -1,4 +1,3 @@
/* _post.scss */
.index-content {
margin-top: 20px;
}
@@ -6,14 +5,14 @@
.framed {
border: 1px solid var(--accent);
padding: 20px;
}
.framed *:first-child {
margin-top: 0;
}
*:first-child {
margin-top: 0;
}
.framed *:last-child {
margin-bottom: 0;
*:last-child {
margin-bottom: 0;
}
}
.posts {
@@ -23,120 +22,111 @@
.post {
width: 100%;
text-align: left;
padding: 40px 0;
margin: 20px auto;
padding: 20px 0;
@media (--tablet) {
max-width: 660px;
}
&:not(:last-of-type) {
border-bottom: 1px solid var(--border-color);
}
&-meta {
font-size: 1rem;
margin-bottom: 10px;
color: color-mod(var(--accent) a(70%));
}
&-title {
--border: 3px dotted var(--accent);
position: relative;
color: var(--accent);
margin: 0 0 15px;
padding-bottom: 15px;
border-bottom: var(--border);
&:after {
content: '';
position: absolute;
bottom: 2px;
display: block;
width: 100%;
border-bottom: var(--border);
}
a {
text-decoration: none;
}
}
&-tags {
display: block;
margin-bottom: 20px;
font-size: 1rem;
opacity: .5;
a {
text-decoration: none;
}
}
&-content {
margin-top: 30px;
}
&-cover {
border: 20px solid var(--accent);
background: transparent;
margin: 40px 0;
padding: 20px;
@media (--phone) {
padding: 10px;
border-width: 10px;
}
}
ul {
list-style: none;
li:not(:empty):before {
content: '-';
position: absolute;
left: -20px;
color: var(--accent);
}
}
}
.post:not(:last-of-type) {
border-bottom: 1px solid color-mix(in srgb, var(--foreground) 10%, transparent);
}
.post--regulation {
h1 {
justify-content: center;
}
.post-meta {
font-size: 1rem;
margin-bottom: 10px;
color: color-mix(in srgb, var(--foreground) 50%, transparent);
}
h2 {
justify-content: center;
margin-bottom: 10px;
.post-meta > *:not(:first-child)::before {
content: "::";
display: inline-block;
margin: 0 8px;
}
.post-title {
position: relative;
color: var(--accent);
margin-top: 0 !important;
margin-bottom: 15px !important;
padding-bottom: 15px;
border-bottom: 3px dotted var(--accent);
text-decoration: none !important;
}
.post-title::after {
content: "";
position: absolute;
bottom: 2px;
display: block;
width: 100%;
border-bottom: 3px dotted var(--accent);
}
.post-title a {
text-decoration: none;
}
.post-tags {
display: block;
margin-bottom: 20px;
font-size: 1rem;
color: var(--accent);
}
.table-of-contents {
margin: 40px 0;
}
.post-content {
margin-top: 30px;
}
.post-cover {
margin: 40px 0;
}
.post ul {
list-style: none;
}
.post ul li:not(:empty)::before {
content: "-";
position: absolute;
left: -20px;
color: var(--accent);
}
.post--regulation h1 {
justify-content: center;
}
.post--regulation h2 {
justify-content: center;
margin-bottom: 10px;
}
.post--regulation h2 + h2 {
margin-top: -10px;
margin-bottom: 20px;
& + h2 {
margin-top: -10px;
margin-bottom: 20px;
}
}
}
.hanchor {
position: absolute;
color: var(--accent);
color: color-mod(var(--accent) alpha(90%));
text-decoration: none;
margin-left: 10px;
visibility: hidden;
}
h1:hover .hanchor,
h2:hover .hanchor,
h3:hover .hanchor,
h4:hover .hanchor,
h5:hover .hanchor,
h6:hover .hanchor {
h1:hover a, h2:hover a, h3:hover a, h4:hover a {
visibility: visible;
}
.footnotes {
color: color-mix(in srgb, var(--foreground) 50%, transparent);
}
.footnotes hr {
background: color-mix(in srgb, var(--foreground) 50%, transparent);
}
@media (max-width: 684px) {
.post-cover {
padding: 10px;
border-width: 10px;
}
color: color-mod(var(--color) alpha(50%));
}
+147 -267
View File
@@ -1,324 +1,204 @@
/* _prism.scss */
/* PrismJS 1.24.1
https://prismjs.com/download.html#themes=prism-tomorrow&languages=markup+css+clike+javascript+actionscript+apacheconf+applescript+bash+c+csharp+cpp+cmake+coffeescript+csp+css-extras+diff+django+docker+elixir+elm+erlang+fsharp+flow+git+go+graphql+haml+handlebars+haskell+http+java+json+kotlin+latex+less+llvm+makefile+markdown+markup-templating+nasm+objectivec+ocaml+perl+php+php-extras+powershell+processing+pug+python+r+jsx+tsx+reason+ruby+rust+sass+scss+scala+scheme+sql+stylus+swift+textile+toml+twig+typescript+vim+visual-basic+wasm+yaml&plugins=line-highlight+line-numbers+jsonp-highlight+highlight-keywords+command-line+toolbar+copy-to-clipboard */
/* PrismJS 1.15.0
https://prismjs.com/download.html#themes=prism-tomorrow&languages=markup+css+clike+javascript+actionscript+apacheconf+applescript+c+csharp+bash+cpp+coffeescript+ruby+csp+css-extras+diff+django+docker+elixir+elm+markup-templating+erlang+fsharp+flow+git+go+graphql+less+handlebars+haskell+http+java+json+kotlin+latex+markdown+makefile+objectivec+ocaml+perl+php+php-extras+sql+processing+scss+python+jsx+typescript+reason+textile+rust+sass+stylus+scheme+pug+swift+yaml+haml+toml+twig+tsx+vim+visual-basic+wasm&plugins=line-numbers+toolbar+jsonp-highlight+command-line+copy-to-clipboard */
/**
* prism.js tomorrow night eighties for JavaScript, CoffeeScript, CSS and HTML
* Based on https://github.com/chriskempson/tomorrow-theme
* @author Rose Pritchard
*/
code[class*=language-],
pre[class*=language-] {
color: #ccc;
background: none;
font-family: Consolas, Monaco, "Andale Mono", "Ubuntu Mono", monospace;
font-size: 1em;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
tab-size: 4;
hyphens: none;
:root {
--code-margin: 40px;
}
code[class*="language-"],
pre[class*="language-"] {
background: none;
font-family: inherit, monospace;
text-align: left;
white-space: pre;
word-spacing: normal;
word-break: normal;
word-wrap: normal;
line-height: 1.5;
tab-size: 2;
hyphens: none;
}
/* Code blocks */
pre[class*=language-] {
padding: 1em;
margin: 0.5em 0;
overflow: auto;
pre[class*="language-"] {
margin: 0;
padding: 0;
overflow: auto;
}
:not(pre) > code[class*=language-],
pre[class*=language-] {
background: #2d2d2d;
:not(pre) > code[class*="language-"],
pre[class*="language-"] {
border-radius: 0;
}
/* Inline code */
:not(pre) > code[class*=language-] {
padding: 0.1em;
border-radius: 0.3em;
white-space: normal;
}
.token.comment,
.token.block-comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: #999;
}
.token.punctuation {
color: #ccc;
}
.token.tag,
.token.attr-name,
.token.namespace,
.token.deleted {
color: #e2777a;
}
.token.function-name {
color: #6196cc;
}
.token.boolean,
.token.number,
.token.function {
color: #f08d49;
}
.token.property,
.token.class-name,
.token.constant,
.token.symbol {
color: #f8c555;
}
.token.selector,
.token.important,
.token.atrule,
.token.keyword,
.token.builtin {
color: #cc99cd;
}
.token.string,
.token.char,
.token.attr-value,
.token.regex,
.token.variable {
color: #7ec699;
}
.token.operator,
.token.entity,
.token.url {
color: #67cdcc;
:not(pre) > code[class*="language-"] {
padding: .1em;
border-radius: 0;
white-space: normal;
}
.token.important,
.token.bold {
font-weight: bold;
font-weight: bold;
}
.token.italic {
font-style: italic;
font-style: italic;
}
.token.entity {
cursor: help;
cursor: help;
}
.token.inserted {
color: green;
pre[class*="language-"].line-numbers {
position: relative;
padding-left: 3.8em;
counter-reset: linenumber;
}
pre[data-line] {
position: relative;
padding: 1em 0 1em 3em;
}
.line-highlight {
position: absolute;
left: 0;
right: 0;
padding: inherit 0;
margin-top: 1em;
/* Same as .prisms padding-top */
background: hsla(24deg, 20%, 50%, 8%);
background: linear-gradient(to right, hsla(24deg, 20%, 50%, 10%) 70%, hsla(24deg, 20%, 50%, 0%));
pointer-events: none;
line-height: inherit;
white-space: pre;
}
@media print {
.line-highlight {
/*
* This will prevent browsers from replacing the background color with white.
* It's necessary because the element is layered on top of the displayed code.
*/
-webkit-print-color-adjust: exact;
color-adjust: exact;
}
}
.line-highlight::before,
.line-highlight[data-end]::after {
content: attr(data-start);
position: absolute;
top: 0.4em;
left: 0.6em;
min-width: 1em;
padding: 0 0.5em;
background-color: hsla(24deg, 20%, 50%, 40%);
color: hsl(24deg, 20%, 95%);
font: bold 65%/1.5 sans-serif;
text-align: center;
vertical-align: 0.3em;
border-radius: 999px;
text-shadow: none;
box-shadow: 0 1px white;
}
.line-highlight[data-end]::after {
content: attr(data-end);
top: auto;
bottom: 0.4em;
}
.line-numbers .line-highlight::before,
.line-numbers .line-highlight::after {
content: none;
}
pre[id].linkable-line-numbers span.line-numbers-rows {
pointer-events: all;
}
pre[id].linkable-line-numbers span.line-numbers-rows > span::before {
cursor: pointer;
}
pre[id].linkable-line-numbers span.line-numbers-rows > span:hover::before {
background-color: rgba(128, 128, 128, 20%);
}
pre[class*=language-].line-numbers {
position: relative;
padding-left: 3.8em;
counter-reset: linenumber;
}
pre[class*=language-].line-numbers > code {
position: relative;
white-space: inherit;
pre[class*="language-"].line-numbers > code {
position: relative;
white-space: inherit;
}
.line-numbers .line-numbers-rows {
position: absolute;
pointer-events: none;
top: 0;
font-size: 100%;
left: -3.8em;
width: 3em;
/* works for line-numbers below 1000 lines */
letter-spacing: -1px;
border-right: 1px solid #999;
user-select: none;
position: absolute;
pointer-events: none;
top: 0;
font-size: 100%;
left: -3.8em;
width: 3em; /* works for line-numbers below 1000 lines */
letter-spacing: -1px;
border-right: 1px solid color-mod(var(--accent) blend(#999 90%) a(20%));
user-select: none;
}
.line-numbers-rows > span {
display: block;
counter-increment: linenumber;
pointer-events: none;
display: block;
counter-increment: linenumber;
}
.line-numbers-rows > span::before {
content: counter(linenumber);
color: #999;
display: block;
padding-right: 0.8em;
text-align: right;
.line-numbers-rows > span:before {
content: counter(linenumber);
color: color-mod(var(--accent) blend(#999 90%) a(40%));
display: block;
padding-right: 0.8em;
text-align: right;
}
.command-line-prompt {
border-right: 1px solid #999;
display: block;
float: left;
font-size: 100%;
letter-spacing: -1px;
margin-right: 1em;
pointer-events: none;
user-select: none;
.code-toolbar {
position: relative;
margin: var(--code-margin) 0;
padding: 20px;
border: 1px solid rgba(255, 255, 255, .1);
+ .code-toolbar,
+ .highlight,
+ .highlight .code-toolbar {
border-top: 0;
margin-top: calc(-1 * var(--code-margin));
}
pre, code {
border: none;
}
code {
display: block;
color: inherit;
}
}
.command-line-prompt > span::before {
color: #999;
content: " ";
display: block;
padding-right: 0.8em;
}
.command-line-prompt > span[data-user]::before {
content: "["attr(data-user) "@"attr(data-host) "] $";
}
.command-line-prompt > span[data-user=root]::before {
content: "["attr(data-user) "@"attr(data-host) "] #";
}
.command-line-prompt > span[data-prompt]::before {
content: attr(data-prompt);
}
div.code-toolbar {
position: relative;
.highlight + .highlight .code-toolbar {
border-top: 0;
margin-top: calc(-1 * var(--code-margin));
}
div.code-toolbar > .toolbar {
position: absolute;
top: 0.3em;
right: 0.2em;
transition: opacity 0.3s ease-in-out;
opacity: 0;
position: absolute;
top: 10px;
right: 10px;
transition: opacity 0.3s ease-in-out;
opacity: 0;
}
div.code-toolbar:hover > .toolbar {
opacity: 1;
opacity: 1;
}
/* Separate line b/c rules are thrown out if selector is invalid.
IE11 and old Edge versions don't support :focus-within. */
div.code-toolbar:focus-within > .toolbar {
opacity: 1;
div.code-toolbar > .toolbar .toolbar-item {
display: inline-block;
}
div.code-toolbar > .toolbar > .toolbar-item {
display: inline-block;
div.code-toolbar > .toolbar a {
cursor: pointer;
}
div.code-toolbar > .toolbar > .toolbar-item > a {
cursor: pointer;
div.code-toolbar > .toolbar button {
background: none;
border: 0;
color: inherit;
font: inherit;
line-height: normal;
overflow: visible;
padding: 0;
user-select: none;
}
div.code-toolbar > .toolbar > .toolbar-item > button {
background: none;
border: 0;
color: inherit;
font: inherit;
line-height: normal;
overflow: visible;
padding: 0;
/* for button */
user-select: none;
div.code-toolbar > .toolbar a,
div.code-toolbar > .toolbar button,
div.code-toolbar > .toolbar span {
color: #bbb;
font-size: .8em;
padding: 10px;
background: #f5f2f0;
background: rgba(224, 224, 224, 0.2);
box-shadow: 0 2px 0 0 rgba(0,0,0,0.2);
border-radius: 0;
}
div.code-toolbar > .toolbar > .toolbar-item > a,
div.code-toolbar > .toolbar > .toolbar-item > button,
div.code-toolbar > .toolbar > .toolbar-item > span {
color: #bbb;
font-size: 0.8em;
padding: 0 0.5em;
background: #f5f2f0;
background: rgba(224, 224, 224, 20%);
box-shadow: 0 2px 0 0 rgba(0, 0, 0, 20%);
border-radius: 0.5em;
div.code-toolbar > .toolbar a:hover,
div.code-toolbar > .toolbar a:focus,
div.code-toolbar > .toolbar button:hover,
div.code-toolbar > .toolbar button:focus,
div.code-toolbar > .toolbar span:hover,
div.code-toolbar > .toolbar span:focus {
text-decoration: none;
}
div.code-toolbar > .toolbar > .toolbar-item > a:hover,
div.code-toolbar > .toolbar > .toolbar-item > a:focus,
div.code-toolbar > .toolbar > .toolbar-item > button:hover,
div.code-toolbar > .toolbar > .toolbar-item > button:focus,
div.code-toolbar > .toolbar > .toolbar-item > span:hover,
div.code-toolbar > .toolbar > .toolbar-item > span:focus {
color: inherit;
text-decoration: none;
.command-line-prompt {
border-right: 1px solid #999;
display: block;
float: left;
font-size: 100%;
letter-spacing: -1px;
margin-right: 1em;
pointer-events: none;
user-select: none;
}
.command-line-prompt > span:before {
content: ' ';
display: block;
padding-right: 0.8em;
}
.command-line-prompt > span[data-user]:before {
content: "[" attr(data-user) "@" attr(data-host) "] $";
}
.command-line-prompt > span[data-user="root"]:before {
content: "[" attr(data-user) "@" attr(data-host) "] #";
}
.command-line-prompt > span[data-prompt]:before {
content: attr(data-prompt);
}
+16
View File
@@ -0,0 +1,16 @@
@import 'variables.css';
@import 'font.css';
@import 'buttons.css';
@import 'header.css';
@import 'logo.css';
@import 'main.css';
@import 'post.css';
@import 'pagination.css';
@import 'footer.css';
@import 'prism.css';
@import 'syntax.css';
@import 'code.css';
@import 'terms.css';
+22 -39
View File
@@ -1,4 +1,3 @@
/* _syntax.scss */
code.language-css,
code.language-scss,
.token.boolean,
@@ -15,10 +14,8 @@ code.language-scss,
.token.statement,
.token.regex,
.token.atrule,
.token.number,
.token.inserted,
.token.important {
color: var(--accent) !important;
.token.number {
color: var(--accent);
}
.token.tag-id,
@@ -27,90 +24,76 @@ code.language-scss,
.token.unit,
.token.placeholder,
.token.variable,
.token.attr-name,
.token.namespace,
.token.deleted,
.token.property,
.token.class-name,
.token.constant,
.token.symbol {
color: color-mix(in srgb, var(--accent) 70%, transparent) !important;
.token.attr-name {
color: color-mod(var(--accent) a(70%));
}
.token.property,
.token.function,
.token.function-name,
.token.deleted,
code.language-javascript,
code.language-html,
.command-line-prompt > span::before {
color: var(--accent) !important;
.command-line-prompt > span:before {
color: color-mod(var(--accent) blend(#999 90%));
}
.token.selector,
.token.tag,
.token.punctuation {
color: color-mix(in srgb, var(--accent) 50%, var(--foreground)) !important;
color: white;
}
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
color: color-mix(in srgb, var(--foreground) 30%, transparent) !important;
color: rgba(255, 255, 255, .3);
}
.token.namespace {
opacity: 0.7 !important;
opacity: .7;
}
pre[data-line] {
position: relative;
}
pre[class*=language-] {
margin: 0;
overflow: auto;
}
.line-highlight {
position: absolute;
left: 0;
right: 0;
padding: 0;
margin: 0;
background: color-mix(in srgb, var(--foreground) 7%, transparent);
background: color-mod(var(--accent) blend(#999 90%) a(8%));
pointer-events: none;
line-height: inherit;
white-space: pre;
}
.line-highlight::before,
.line-highlight[data-end]::after {
.line-highlight:before,
.line-highlight[data-end]:after {
content: attr(data-start);
position: absolute;
/* top: .4em; */
left: 0.6em;
left: .6em;
min-width: 1em;
padding: 0 0.5em;
background-color: color-mix(in srgb, var(--foreground) 40%, transparent);
color: var(--foreground);
padding: 0 .5em;
background-color: hsla(24, 20%, 50%, .4);
color: hsl(24, 20%, 95%);
font: bold 65%/1.5 sans-serif;
text-align: center;
vertical-align: 0.3em;
vertical-align: .3em;
border-radius: 999px;
text-shadow: none;
box-shadow: 0 1px var(--foreground);
box-shadow: 0 1px white;
}
.line-highlight[data-end]::after {
.line-highlight[data-end]:after {
content: attr(data-end);
top: auto;
bottom: 0.4em;
bottom: .4em;
}
.line-numbers .line-highlight::before,
.line-numbers .line-highlight::after {
.line-numbers .line-highlight:before,
.line-numbers .line-highlight:after {
content: none;
}
-377
View File
@@ -1,377 +0,0 @@
@import url("https://fonts.googleapis.com/css2?family=Fira+Code&family=Fira+Code:wght@400;700&display=swap");
:root {
--background: #1a170f;
--foreground: #eceae5;
--accent: #eec35e;
--font-size: 1rem;
--line-height: 1.54rem;
--radius: 0px;
}
html {
box-sizing: border-box;
}
*,
*:before,
*:after {
box-sizing: inherit;
margin: 0;
padding: 0;
}
body {
margin: 0;
padding: 0;
font-family:
"Fira Code",
Monaco,
Consolas,
"Ubuntu Mono",
monospace;
font-size: 1rem;
font-weight: 400;
line-height: var(--line-height);
letter-spacing: -0.02em;
background-color: var(--background);
color: var(--foreground);
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
font-feature-settings: "liga", "tnum", "zero", "ss01", "locl";
font-variant-ligatures: contextual;
-webkit-overflow-scrolling: touch;
-webkit-text-size-adjust: 100%;
}
::placeholder {
color: color-mix(in srgb var(--foreground) 50%, black);
}
h1,
h2 {
font-size: calc(var(--font-size) * 1.1);
text-transform: uppercase;
letter-spacing: 0.04em;
}
h1 {
text-decoration: underline;
text-decoration-thickness: 2px;
text-underline-offset: calc(var(--font-size) * 0.2);
}
h3,
h4,
h5,
h6 {
font-size: calc(var(--font-size) * 1.1);
letter-spacing: 0.04em;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
img,
figure,
video,
table {
margin: calc(var(--line-height) * 1.2) 0;
}
a {
color: var(--accent);
}
button {
position: relative;
font: inherit;
font-weight: bold;
text-decoration: none;
text-align: center;
background: transparent;
color: var(--accent);
padding: 5px 18px;
border: 4px solid var(--accent);
border-radius: var(--radius);
transition: background 0.15s linear;
appearance: none;
cursor: pointer;
outline: none;
}
button:hover {
background: color-mix(in srgb, var(--accent) 15%, transparent);
}
button:focus-visible,
a:focus-visible {
outline: 1px solid var(--accent);
outline-offset: 2px;
}
fieldset {
display: inline-block;
border: 2px solid var(--foreground);
border-radius: calc(var(--radius) * 1.6);
padding: 10px;
}
fieldset *:first-child {
margin-top: 0;
}
fieldset input,
fieldset select,
fieldset textarea,
fieldset label,
fieldset button {
margin-top: calc(var(--line-height) * 0.5);
width: 100%;
}
label {
display: inline-block;
}
label input {
margin-top: 0;
}
input,
textarea,
select {
background: transparent;
color: var(--foreground);
border: 1px solid var(--foreground);
border-radius: var(--radius);
padding: 10px;
font: inherit;
appearance: none;
}
input[type="checkbox"] {
width: auto;
}
input:focus-visible,
input:active,
textarea:focus-visible,
textarea:active,
select:focus-visible,
select:active {
border-color: var(--accent);
outline: 1px solid var(--accent);
outline-offset: 2px;
}
input:active,
textarea:active,
select:active {
box-shadow: none;
}
select {
background-image: linear-gradient(
45deg,
transparent 50%,
var(--foreground) 50%
),
linear-gradient(135deg, var(--foreground) 50%, transparent 50%);
background-position: calc(100% - 20px), calc(100% - 1em);
background-size:
5px 5px,
5px 5px;
background-repeat: no-repeat;
padding-right: 40px;
}
select option {
background: var(--background);
}
input[type="checkbox"] {
vertical-align: middle;
padding: 10px;
box-shadow: inset 0 0 0 3px var(--background);
}
input[type="checkbox"]:checked {
background: var(--accent);
}
img {
display: block;
max-width: 100%;
border: 8px solid var(--accent);
border-radius: var(--radius);
padding: 8px;
overflow: hidden;
}
figure img,
figure video {
margin-bottom: 0;
}
figure figcaption {
background: var(--accent);
color: var(--background);
text-align: center;
font-size: 1rem;
font-weight: normal;
margin-top: -8px;
border-radius: 0 0 var(--radius) var(--radius);
}
ul,
ol {
margin-left: 4ch;
padding: 0;
}
ul ul,
ul ol,
ol ul,
ol ol {
margin-top: 0;
}
li::marker {
color: var(--accent);
}
ul li,
ol li {
position: relative;
}
code,
kbd {
font-family:
"Fira Code",
Monaco,
Consolas,
Ubuntu Mono,
monospace !important;
font-feature-settings: normal;
background: color-mix(in srgb, var(--foreground) 5%, transparent);
color: var(--accent);
padding: 1px 6px;
margin: 0 2px;
font-size: 0.95rem;
}
kbd {
border-top: 1px solid color-mix(in srgb, var(--accent) 25%, transparent);
border-left: 1px solid var(--accent);
border-right: 1px solid var(--accent);
border-bottom: 4px solid var(--accent);
border-radius: 4px;
}
code code {
background: transparent;
padding: 0;
margin: 0;
}
pre {
tab-size: 4;
background: color-mix(in srgb, var(--foreground) 5%, transparent) !important;
color: var(--foreground);
padding: 20px 10px;
font-size: 0.95rem !important;
overflow: auto;
border-radius: var(--radius);
border: 1px solid color-mix(in srgb, var(--foreground) 10%, transparent);
}
pre code {
background: none !important;
margin: 0;
padding: 0;
font-size: inherit;
border: none;
}
sup {
line-height: 0;
}
abbr {
position: relative;
text-decoration-style: wavy;
text-decoration-color: var(--accent);
cursor: help;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.25em;
}
mark {
background: color-mix(in srgb, var(--accent) 45%, transparent);
color: var(--foreground);
}
blockquote {
position: relative;
border-top: 1px solid var(--accent);
border-bottom: 1px solid var(--accent);
margin: 0;
padding: 25px;
}
blockquote:before {
content: ">";
display: block;
position: absolute;
left: 0;
color: var(--accent);
}
blockquote p:first-child {
margin-top: 0;
}
blockquote p:last-child {
margin-bottom: 0;
}
table {
table-layout: auto;
border-collapse: collapse;
}
table,
th,
td {
border: 2px solid var(--foreground);
padding: 10px;
}
th {
border-style: solid;
color: var(--foreground);
text-align: left;
text-transform: uppercase;
letter-spacing: 0.04em;
}
hr {
width: 100%;
border: none;
background: var(--accent);
height: 2px;
}
+7 -17
View File
@@ -1,19 +1,9 @@
/* _terms.scss */
.terms h3 {
font-size: initial;
}
.terms {
h1 {
color: var(--accent);
}
.terms ul {
list-style: none;
}
.terms ul li a {
color: var(--accent);
}
.terms ul li:not(:empty)::before {
content: "-";
position: absolute;
left: -20px;
color: var(--accent);
h3 {
font-size: initial;
}
}
+13
View File
@@ -0,0 +1,13 @@
:root {
--accent: #FFA86A;
--background: color-mod(var(--accent) blend(#1D1E28 98%));
--color: white;
--border-color: rgba(255, 255, 255, .1);
/* variables for js, must be the same as these in @custom-media queries */
--phoneWidth: (max-width: 684px);
--tabletWidth: (max-width: 900px);
}
@custom-media --phone (width < 684px);
@custom-media --tablet (width < 900px);
Binary file not shown.
Binary file not shown.
+18
View File
@@ -0,0 +1,18 @@
const mobileQuery = getComputedStyle(document.body).getPropertyValue("--phoneWidth");
const isMobile = () => window.matchMedia(mobileQuery).matches;
if(!isMobile()) {
languageSelector = document.querySelector(".language-selector-current");
moreLanguagesContainer = document.querySelector(".language-selector__more");
document.body.addEventListener("click", () => {
if (moreLanguagesContainer && !moreLanguagesContainer.classList.contains("hidden")) {
moreLanguagesContainer.classList.add("hidden");
}
});
languageSelector && languageSelector.addEventListener("click", e => {
e.stopPropagation();
moreLanguagesContainer.classList.toggle("hidden");
});
}
+41 -34
View File
@@ -1,44 +1,51 @@
const container = document.querySelector(".container");
const allMenus = document.querySelectorAll(".menu");
const menu = document.querySelector(".menu");
const mobileMenuTrigger = document.querySelector(".menu-trigger");
const desktopMenu = document.querySelector(".menu__inner--desktop");
const desktopMenuTrigger = document.querySelector(".menu__sub-inner-more-trigger");
const menuMore = document.querySelector(".menu__sub-inner-more");
const mobileQuery = getComputedStyle(document.body).getPropertyValue("--phoneWidth");
const isMobile = () => window.matchMedia(mobileQuery).matches;
const handleMenuClasses = () => {
mobileMenuTrigger && mobileMenuTrigger.classList.toggle("hidden", !isMobile());
menu && menu.classList.toggle("hidden", isMobile());
menuMore && menuMore.classList.toggle("hidden", !isMobile());
};
// Common
menu && menu.addEventListener("click", e => e.stopPropagation());
menuMore && menuMore.addEventListener("click", e => e.stopPropagation());
handleMenuClasses();
// Hide menus on body click
document.body.addEventListener("click", () => {
allMenus.forEach(menu => {
if (menu.classList.contains("open")) {
menu.classList.remove("open");
}
});
if (!isMobile() && menuMore && !menuMore.classList.contains("hidden")) {
menuMore.classList.add("hidden");
} else if (isMobile() && !menu.classList.contains("hidden")) {
menu.classList.add("hidden");
}
});
// Reset menus on resize
window.addEventListener("resize", () => {
allMenus.forEach(menu => {
menu.classList.remove("open");
});
});
window.addEventListener("resize", handleMenuClasses);
// Handle desktop menu
allMenus.forEach(menu => {
const trigger = menu.querySelector(".menu__trigger");
const dropdown = menu.querySelector(".menu__dropdown");
// Mobile menu
trigger.addEventListener("click", e => {
mobileMenuTrigger &&
mobileMenuTrigger.addEventListener("click", e => {
e.stopPropagation();
if (menu.classList.contains("open")) {
menu.classList.remove("open");
} else {
// Close all menus...
allMenus.forEach(m => m.classList.remove("open"));
// ...before opening the current one
menu.classList.add("open");
}
if (dropdown.getBoundingClientRect().right > container.getBoundingClientRect().right) {
dropdown.style.left = "auto";
dropdown.style.right = 0;
}
menu && menu.classList.toggle("hidden");
});
dropdown.addEventListener("click", e => e.stopPropagation());
});
// Desktop menu
desktopMenuTrigger &&
desktopMenuTrigger.addEventListener("click", e => {
e.stopPropagation();
menuMore && menuMore.classList.toggle("hidden");
if (menuMore.getBoundingClientRect().right > container.getBoundingClientRect().right) {
menuMore.style.left = "auto";
menuMore.style.right = 0;
}
});
+72 -78
View File
File diff suppressed because one or more lines are too long
-4
View File
@@ -1,4 +0,0 @@
[module]
[module.hugoVersion]
extended = true
min = '0.90.0'
+2 -4
View File
@@ -3,11 +3,9 @@ languageCode = "en-us"
theme = "hugo-theme-terminal"
paginate = 5
[markup.goldmark.renderer]
unsafe = true
[params]
contentTypeName = "posts"
contentTypeName = "post"
themeColor = "orange"
showMenuItems = 2
fullWidthTheme = false
centerTheme = false
+4 -3
View File
@@ -14,8 +14,9 @@ This theme is pretty basic and covers all of the essentials. All you have to do
The theme includes:
- fully customizable color schemes generated by [**terminal.css**](https://panr.github.io/terminal-css/).
- great reading experience thanks to [**Fira Code**](https://github.com/tonsky/FiraCode).
- nice code highlighting thanks to [**PrismJS**](https://prismjs.com) that matches the theme's color scheme.
- **5 duotone themes**, depending on your preferences (orange, red, blue, green, pink)
- [**Fira Code**](https://github.com/tonsky/FiraCode) as default monospaced font. It's gorgeous!
- **really nice, custom duotone** syntax highlighting based on [**PrismJS**](https://prismjs.com)
- mobile friendly layout
So, there you have it... enjoy!
+47 -155
View File
@@ -1,139 +1,22 @@
+++
author = "Hugo Authors & Radek"
title = "Showcase"
date = "2019-03-11"
description = "Sample article showcasing basic styling and formatting for HTML elements."
+++
---
title: "Showcase"
date: "2018-07-18"
author: "Hello Robot"
---
This article offers a sample of basic Markdown syntax that can be used in Hugo content files, also it shows whether basic HTML elements are decorated with CSS in a Hugo theme.
<!--more-->
## Header 2
## Headings
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nullam nec interdum metus. Aenean rutrum ligula sodales ex auctor, sed tempus dui mollis. Curabitur ipsum dui, aliquet nec commodo at, tristique eget ante. **Donec quis dolor nec nunc mollis interdum vel in purus**. Sed vitae leo scelerisque, sollicitudin elit sed, congue ante. In augue nisl, vestibulum commodo est a, tristique porttitor est. Proin laoreet iaculis ornare. Nullam ut neque quam.
The following HTML `<h1>``<h6>` elements represent six levels of section headings. `<h1>` is the highest section level while `<h6>` is the lowest.
> Fusce pharetra suscipit orci nec tempor. Quisque vitae sem sit amet sem mollis consequat. Sed at imperdiet lorem. Vestibulum pharetra faucibus odio, ac feugiat tellus sollicitudin at. Pellentesque varius tristique mi imperdiet dapibus. Duis orci odio, sodales lacinia venenatis sit amet, feugiat et diam.
# H1
## H2
### H3
### H4
#### H5
##### H6
### Header 3
## Paragraph
Nulla libero turpis, lacinia vitae cursus ut, auctor dictum nisl. Fusce varius felis nec sem ullamcorper, at convallis nisi vestibulum. Duis risus odio, porta sit amet placerat mollis, tincidunt non mauris. Suspendisse fringilla, `odio a dignissim pharetra`, est urna sollicitudin urna, eu scelerisque magna ex vitae tellus.
Xerum, quo qui aut unt expliquam qui dolut labo. Aque venitatiusda cum, voluptionse latur sitiae dolessi aut parist aut dollo enim qui voluptate ma dolestendit peritin re plis aut quas inctum laceat est volestemque commosa as cus endigna tectur, offic to cor sequas etum rerum idem sintibus eiur? Quianimin porecus evelectur, cum que nis nust voloribus ratem aut omnimi, sitatur? Quiatem. Nam, omnis sum am facea corem alique molestrunt et eos evelece arcillit ut aut eos eos nus, sin conecerem erum fuga. Ri oditatquam, ad quibus unda veliamenimin cusam et facea ipsamus es exerum sitate dolores editium rerore eost, temped molorro ratiae volorro te reribus dolorer sperchicium faceata tiustia prat.
```css
/* PostCSS code */
Itatur? Quiatae cullecum rem ent aut odis in re eossequodi nonsequ idebis ne sapicia is sinveli squiatum, core et que aut hariosam ex eat.
## Images
![Terminal Theme Preview](/img/terminal-theme.png)
### Figure with a caption
{{< figure src="/img/terminal-theme.png" alt="Terminal Theme Preview" position="center" caption="Terminal Theme Preview" captionPosition="center" >}}
## Blockquotes
The blockquote element represents content that is quoted from another source, optionally with a citation which must be within a `footer` or `cite` element, and optionally with in-line changes such as annotations and abbreviations.
### Blockquote without attribution
> Tiam, ad mint andaepu dandae nostion secatur sequo quae.
> **Note** that you can use *Markdown syntax* within a blockquote.
### Blockquote with attribution
> Don't communicate by sharing memory, share memory by communicating.<br>
> — <cite>Rob Pike[^1]</cite>
[^1]: The above quote is excerpted from Rob Pike's [talk](https://www.youtube.com/watch?v=PAAkCSZUG1c) during Gopherfest, November 18, 2015.
## Buttons and links
<button>Button</button>
<a href="">Link</a>
<a href="" class="button inline">Link</a>
## Tables
Tables aren't part of the core Markdown spec, but Hugo supports supports them out-of-the-box.
Name | Age
--------|------
Bob | 27
Alice | 23
### Inline Markdown within tables
| Italics | Bold | Code |
| -------- | -------- | ------ |
| *italics* | **bold** | `code` |
## Forms
<fieldset>
<input type="text" placeholder="Type something" /><br />
<input type="number" placeholder="Insert number" /><br />
<input type="text" value="Input value" /><br />
<select>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="3">Option 3</option>
</select><br />
<textarea placeholder="Insert a comment..."></textarea><br />
<input type="checkbox" /> I understand<br />
<button type="submi">Submit</button>
</fieldset>
## Code Blocks
### Code block with backticks
```html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Example HTML5 Document</title>
</head>
<body>
<p>Test</p>
</body>
</html>
```
### Code block indented with four spaces
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Example HTML5 Document</title>
</head>
<body>
<p>Test</p>
</body>
</html>
### Code block with Hugo's internal highlight shortcode
{{< highlight html >}}
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Example HTML5 Document</title>
</head>
<body>
<p>Test</p>
</body>
</html>
{{< /highlight >}}
### Code block with custom built-in `{{ < code > }}` shortcode
{{< code title="Hey, this is a code block title" language="css" >}}
pre {
background: #1a1a1d;
padding: 20px;
@@ -153,40 +36,49 @@ pre {
font-size: inherit;
}
}
{{< /code >}}
```
## List Types
```js
// JS code
### Ordered List
const menuTrigger = document.querySelector('.menu-trigger')
const menu = document.querySelector('.menu')
const mobileQuery = getComputedStyle(document.body).getPropertyValue('--phoneWidth')
const isMobile = () => window.matchMedia(mobileQuery).matches
const isMobileMenu = () => {
menuTrigger.classList.toggle('hidden', !isMobile())
menu.classList.toggle('hidden', isMobile())
}
1. First item
2. Second item
3. Third item
isMobileMenu()
### Unordered List
menuTrigger.addEventListener('click', () => menu.classList.toggle('hidden'))
* List item
* Another item
* And another item
window.addEventListener('resize', isMobileMenu)
```
### Nested list
```html
<!-- HTML code -->
* Fruit
* Apple
* Orange
* Banana
* Dairy
* Milk
* Cheese
<section id="main">
<div>
<h1 id="title">{{ .Title }}</h1>
{{ range .Pages }}
{{ .Render "summary"}}
{{ end }}
</div>
</section>
```
## Other Elements — abbr, sub, sup, kbd, mark
#### Header 4
<abbr title="Graphics Interchange Format">GIF</abbr> is a bitmap image format.
Curabitur scelerisque felis viverra varius scelerisque. Ut enim libero, molestie gravida blandit at, mollis ornare tellus. Cras arcu mi, ultrices vel pulvinar vel, volutpat eu tortor. Nullam nec eros quis massa ultrices iaculis sed in metus. Praesent sollicitudin sem sit amet orci tempor gravida.
H<sub>2</sub>O
- Maecenas elementum vitae nibh vitae porttitor.
- Aenean consequat, risus ut cursus placerat, arcu nulla sodales risus, ut molestie tellus tellus et dui.
- Integer imperdiet turpis vitae lacus imperdiet, ut ornare ligula auctor. Integer in mi eu velit vehicula suscipit eget vulputate nulla.
- Etiam vitae enim quis velit lobortis placerat a ut sem.
- Curabitur lobortis ante sit amet orci pulvinar, sollicitudin viverra nunc accumsan.
- Praesent fermentum orci quis leo facilisis posuere.
X<sup>n</sup> + Y<sup>n</sup> = Z<sup>n</sup>
Press <kbd>CTRL</kbd>+<kbd>ALT</kbd>+<kbd>Delete</kbd> to end the session.
Most <mark>salamanders</mark> are nocturnal, and hunt for insects, worms, and other small creatures.
Aliquam erat volutpat. In hac habitasse platea dictumst. Nunc ut tincidunt mauris. Sed at gravida risus, id semper magna. Nullam vitae enim mattis, sodales neque non, pharetra elit. Cras sit amet sagittis augue, et finibus turpis. Ut tempus tincidunt diam vel pharetra. Nulla porttitor odio sit amet nulla scelerisque, quis aliquam mi imperdiet. Sed tincidunt dui vel tellus vestibulum rhoncus. Donec tempus ultrices velit.
-3
View File
@@ -1,3 +0,0 @@
module github.com/panr/hugo-theme-terminal/v4
go 1.19
Binary file not shown.

Before

Width:  |  Height:  |  Size: 84 KiB

After

Width:  |  Height:  |  Size: 438 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 438 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

BIN
View File
Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 168 KiB

+3 -3
View File
@@ -6,10 +6,10 @@
{{ end }}
{{ partial "head.html" . }}
</head>
<body>
{{ $container := cond ($.Site.Params.FullWidthTheme | default false) "container full" (cond ($.Site.Params.CenterTheme | default false) "container center" "container") }}
<body class="{{- ( or .Params.color $.Site.Params.ThemeColor ) -}}">
{{ $container := cond $.Site.Params.FullWidthTheme "container full" (cond $.Site.Params.CenterTheme "container center" "container") }}
<div class="{{- $container -}}{{- cond ($.Site.Params.oneHeadingSize | default false) " headings--one-size" "" }}">
<div class="{{- $container -}}{{- cond ($.Site.Params.oneHeadingSize | default true) " headings--one-size" "" }}">
{{ partial "header.html" . }}
+22 -21
View File
@@ -15,20 +15,17 @@
{{ $paginator := .Paginate (where $PageContext.RegularPages "Type" $contentTypeName) }}
{{ range $paginator.Pages }}
<article class="post on-list">
<h2 class="post-title">
<div class="post on-list">
<h1 class="post-title">
<a href="{{ .Permalink }}">{{ .Title | markdownify }}</a>
</h2>
</h1>
<div class="post-meta">
{{- if .Date -}}
<time class="post-date">
{{- .Date.Format "2006-01-02" -}}
</time>
{{- end -}}
{{- with .Params.Author -}}
<span class="post-author">{{ . }}</span>
{{- end -}}
<span class="post-date">
{{ .Date.Format "2006-01-02" }}
</span>
{{ with .Params.Author }}
<span class="post-author">:: {{ . }}</span>
{{ end }}
</div>
{{ if .Params.tags }}
@@ -41,26 +38,30 @@
</span>
{{ end }}
{{ partial "cover.html" . }}
{{ if .Params.Cover }}
<img src="{{ .Params.Cover | absURL }}" class="post-cover" alt="{{ .Title | plainify | default " " }}" />
{{ end }}
<div class="post-content">
{{ if .Params.showFullContent }}
{{ .Content }}
{{ .Content | markdownify }}
{{ else if .Description }}
<p>{{ .Description | markdownify }}</p>
{{ .Description | markdownify }}
{{ else }}
{{ .Summary }}
{{ if .Truncated }}
{{ .Summary | markdownify }}
{{ end }}
{{ end }}
</div>
{{ if not .Params.showFullContent }}
<div>
<a class="read-more button inline" href="{{ .RelPermalink }}">{{ $.Site.Params.ReadMore }}</a>
</div>
<div>
<a class="read-more button"
href="{{.RelPermalink}}">{{ $.Site.Params.ReadMore }} →</a>
</div>
{{ end }}
</article>
</div>
{{ end }}
{{ partial "pagination.html" . }}
</div>
{{ end }}
+23 -21
View File
@@ -5,20 +5,18 @@
</div>
{{ end }}
<div class="posts">
{{ range .Paginator.Pages }}
<article class="post on-list">
<h2 class="post-title">
{{ range .Pages }}
<div class="post on-list">
<h1 class="post-title">
<a href="{{ .Permalink }}">{{ .Title | markdownify }}</a>
</h2>
</h1>
<div class="post-meta">
{{- if .Date -}}
<time class="post-date">
{{- .Date.Format "2006-01-02" -}}
</time>
{{- end -}}
{{- with .Params.Author -}}
<span class="post-author">{{- . -}}</span>
{{- end -}}
<span class="post-date">
{{ .Date.Format "2006-01-02" }}
</span>
{{ with .Params.Author }}
<span class="post-author">:: {{ . }}</span>
{{ end }}
</div>
{{ if .Params.tags }}
@@ -31,26 +29,30 @@
</span>
{{ end }}
{{ partial "cover.html" . }}
{{ if .Params.Cover }}
<img src="{{ .Params.Cover | absURL }}" class="post-cover" alt="{{ .Title | plainify | default " " }}" />
{{ end }}
<div class="post-content">
{{ if .Params.showFullContent }}
{{ .Content }}
{{ .Content | markdownify }}
{{ else if .Description }}
{{ .Description | markdownify }}
{{ .Description | markdownify }}
{{ else }}
{{ .Summary }}
{{ if .Truncated }}
{{ .Summary | markdownify }}
{{ end }}
{{ end }}
</div>
{{ if not .Params.showFullContent }}
<div>
<a class="read-more button" href="{{.RelPermalink}}">{{ $.Site.Params.ReadMore }} →</a>
</div>
<div>
<a class="read-more button"
href="{{.RelPermalink}}">{{ $.Site.Params.ReadMore }} →</a>
</div>
{{ end }}
</article>
</div>
{{ end }}
{{ partial "pagination.html" . }}
</div>
{{ end }}
-40
View File
@@ -1,40 +0,0 @@
{{- $pctx := . -}}
{{- if .IsHome -}}{{ $pctx = .Site }}{{- end -}}
{{- $pages := slice -}}
{{- if or $.IsHome $.IsSection -}}
{{- $pages = $pctx.RegularPages -}}
{{- else -}}
{{- $pages = $pctx.Pages -}}
{{- end -}}
{{- $limit := .Site.Config.Services.RSS.Limit -}}
{{- if ge $limit 1 -}}
{{- $pages = $pages | first $limit -}}
{{- end -}}
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>{{ if eq .Title .Site.Title }}{{ .Site.Title }}{{ else }}{{ with .Title }}{{.}} on {{ end }}{{ .Site.Title }}{{ end }}</title>
<link>{{ .Permalink }}</link>
<description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }}</description>
<generator>Hugo -- gohugo.io</generator>{{ with .Site.LanguageCode }}
<language>{{.}}</language>{{end}}{{ with .Site.Author.email }}
<managingEditor>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</managingEditor>{{end}}{{ with .Site.Author.email }}
<webMaster>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</webMaster>{{end}}{{ with .Site.Copyright }}
<copyright>{{.}}</copyright>{{end}}{{ if not .Date.IsZero }}
<lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
{{- with .OutputFormats.Get "RSS" -}}
{{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
{{- end -}}
{{ range $pages }}
<item>
<title>{{ .Title }}</title>
<link>{{ .Permalink }}</link>
<pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
{{ with .Site.Author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}}
<guid>{{ .Permalink }}</guid>
<description>{{ .Summary | html }}</description>
<content>{{ .Content | html }}</content>
</item>
{{ end }}
</channel>
</rss>
+31 -31
View File
@@ -1,38 +1,40 @@
{{ define "main" }}
<article class="post">
<div class="post">
<h1 class="post-title">
<a href="{{ .Permalink }}">{{ .Title | markdownify }}</a>
</h1>
<a href="{{ .Permalink }}">{{ .Title | markdownify }}</a></h1>
<div class="post-meta">
{{- if .Date -}}
<time class="post-date">
{{- .Date.Format "2006-01-02" -}}
{{- if $.Site.Params.showLastUpdated -}}
[{{- or $.Site.Params.updatedDatePrefix "Updated" -}} :: {{- .Lastmod.Format "2006-01-02" -}}]
{{- end -}}
</time>
{{- end -}}
{{- with .Params.Author -}}
<span class="post-author">{{ . }}</span>
{{- end -}}
{{- if and (.Param "readingTime") (eq (.Param "readingTime") true) -}}
<span class="post-reading-time">{{ .ReadingTime }} {{ $.Site.Params.minuteReadingTime | default "min read" }} ({{ .WordCount }} {{ $.Site.Params.words | default "words" }})</span>
{{- end -}}
{{ if .Params.Date }}
<span class="post-date">
{{ .Date.Format "2006-01-02" }} {{ if $.Site.Params.showLastUpdated }}[{{or $.Site.Params.updatedDatePrefix "Updated"}}: {{ .Lastmod.Format "2006-01-02" }}]{{ end }}
</span>
{{ end }}
{{ with .Params.Author }}
<span class="post-author">:: {{ . }}</span>
{{ end }}
</div>
{{ if .Params.tags }}
<span class="post-tags">
{{ range .Params.tags }}
#<a href="{{ (urlize (printf "tags/%s/" .)) | absLangURL }}">{{ . }}</a>&nbsp;
{{ end }}
</span>
<span class="post-tags">
{{ range .Params.tags }}
#<a href="{{ (urlize (printf "tags/%s/" .)) | absLangURL }}">{{ . }}</a>&nbsp;
{{ end }}
</span>
{{ end }}
{{ partial "cover.html" . }}
{{ if (.Params.Toc | default .Site.Params.Toc) }}
{{ if .Params.Cover }}
<img src="{{ .Params.Cover | absURL }}" class="post-cover" alt="{{ .Title | plainify | default " " }}" />
{{ end }}
{{ if .Params.Toc }}
<div class="table-of-contents">
<h2>
{{ (.Params.TocTitle | default .Site.Params.TocTitle) | default "Table of Contents" }}
{{ if .Params.TocTitle }}
{{ .Params.TocTitle }}
{{ else if $.Site.Params.TocTitle }}
{{ $.Site.Params.TocTitle }}
{{ else }}
Table of Contents
{{ end }}
</h2>
{{ .TableOfContents }}
</div>
@@ -41,17 +43,15 @@
<div class="post-content">
{{- with .Content -}}
<div>
{{ . | replaceRE "(<h[1-9] id=\"([^\"]+)\".+)(</h[1-9]+>)" `${1}<a href="#${2}" class="hanchor" ariaLabel="Anchor">#</a> ${3}` | safeHTML }}
{{ . | replaceRE "(<h[1-9] id=\"([^\"]+)\".+)(</h[1-9]+>)" `${1}<a href="#${2}" class="hanchor" ariaLabel="Anchor">&#8983;</a> ${3}` | safeHTML }}
</div>
{{- end -}}
</div>
{{ if eq .Type $.Site.Params.contentTypeName }}
{{ partial "posts_pagination.html" . }}
{{ partial "posts_pagination.html" . }}
{{ end }}
{{ if not (.Params.hideComments | default false) }}
{{ partial "comments.html" . }}
{{ end }}
</article>
{{ partial "comments.html" . }}
</div>
{{ end }}
-57
View File
@@ -1,57 +0,0 @@
{{ define "main" }}
<h1>Posts for: #{{ .Title }}</h1>
{{ with .Content }}
<div class="index-content">
{{ . }}
</div>
{{ end }}
<div class="posts">
{{ range .Paginator.Pages }}
<article class="post on-list">
<h1 class="post-title">
<a href="{{ .Permalink }}">{{ .Title | markdownify }}</a>
</h1>
<div class="post-meta">
{{- if .Date -}}
<time class="post-date">
{{- .Date.Format "2006-01-02" -}}
</time>
{{- end -}}
{{- with .Params.Author -}}
<span class="post-author">{{- . -}}</span>
{{- end -}}
</div>
{{ if .Params.tags }}
<span class="post-tags">
{{ range .Params.tags }}
#<a href="{{ (urlize (printf "tags/%s/" . )) | absLangURL }}">
{{- . -}}
</a>&nbsp;
{{ end }}
</span>
{{ end }}
{{ partial "cover.html" . }}
<div class="post-content">
{{ if .Params.showFullContent }}
{{ .Content }}
{{ else if .Description }}
{{ .Description | markdownify }}
{{ else }}
{{ .Summary }}
{{ end }}
</div>
{{ if not .Params.showFullContent }}
<div>
<a class="read-more button" href="{{.RelPermalink}}">{{ $.Site.Params.ReadMore }} →</a>
</div>
{{ end }}
</article>
{{ end }}
{{ partial "pagination.html" . }}
</div>
{{ end }}
+1 -6
View File
@@ -1,11 +1,6 @@
{{ define "main" }}
<div class="terms">
<h1>{{ .Title }}</h1>
{{ with .Content }}
<div class="index-content">
{{ . }}
</div>
{{ end }}
<ul>
{{ $type := .Type }}
{{ range $key, $value := .Data.Terms.Alphabetical }}
@@ -13,7 +8,7 @@
{{ $count := .Count }}
{{ with $.Site.GetPage (printf "/%s/%s" $type $name) }}
<li>
<a class="terms-title" href="{{ .Permalink }}">{{ .Name }} [{{ $count }}]</a>
<a class="terms-title" href="{{ .Permalink }}">{{ .Name }} ({{ $count }})</a>
</li>
{{ end }}
{{ end }}
-24
View File
@@ -1,24 +0,0 @@
{{- $cover := false -}}
{{- $autoCover := default $.Site.Params.autoCover false }}
{{- if index .Params "cover" -}}
{{- if .Resources.GetMatch .Params.Cover }}
{{- $cover = (.Resources.GetMatch .Params.Cover).RelPermalink -}}
{{- else -}}
{{- $cover = absURL .Params.Cover -}}
{{- end -}}
{{- else if $.Site.Params.AutoCover -}}
{{- if (not .Params.Cover) -}}
{{- if .Resources.GetMatch "cover.*" -}}
{{- $cover = (.Resources.GetMatch "cover.*").RelPermalink -}}
{{- end -}}
{{- end -}}
{{- end -}}
{{if $cover -}}
<!-- Cover image found -->
<img src="{{ $cover }}"
class="post-cover"
alt="{{ .Title | plainify | default " " }}"
title="{{ .Params.CoverCredit |plainify|default "Cover Image" }}" />
{{- end }}
+6 -10
View File
@@ -3,21 +3,17 @@
{{ if $.Site.Copyright }}
<div class="copyright copyright--user">
<span>{{ $.Site.Copyright | safeHTML }}</span>
{{ else }}
{{else}}
<div class="copyright">
<span>© {{ now.Year }} Powered by <a href="https://gohugo.io">Hugo</a></span>
{{ end }}
<span>:: <a href="https://github.com/panr/hugo-theme-terminal" target="_blank">Theme</a> made by <a href="https://github.com/panr" target="_blank">panr</a></span>
<span>© {{ now.Year }} Powered by <a href="http://gohugo.io">Hugo</a></span>
{{end}}
<span>:: Theme made by <a href="https://twitter.com/panr">panr</a></span>
</div>
</div>
</footer>
{{ $menu := resources.Get "js/menu.js" | js.Build }}
{{ $prism := resources.Get "js/prism.js" | js.Build }}
{{ $bundle := slice $menu $prism | resources.Concat "bundle.js" | resources.Minify }}
<script type="text/javascript" src="{{ $bundle.RelPermalink }}"></script>
<script src="{{ "assets/main.js" | absURL }}"></script>
<script src="{{ "assets/prism.js" | absURL }}"></script>
<!-- Extended footer section-->
{{ partial "extended_footer.html" . }}
+26 -29
View File
@@ -1,35 +1,32 @@
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="{{ if .IsHome }}{{ $.Site.Params.Subtitle }}{{ else if .Description}}{{ .Description | plainify }}{{ else }}{{ .Summary | plainify }}{{ end }}" />
<meta name="description" content="{{ if .IsHome }}{{ .Site.Params.Subtitle }}{{ else }}{{ .Summary | plainify }}{{ end }}" />
<meta name="keywords" content="{{ with .Params.Keywords }}{{ delimit . ", " }}{{ else }}{{ $.Site.Params.Keywords }}{{ end }}" />
{{ if .Params.noindex }}
{{ if or (eq (.Param "noindex") true) (eq (.Param "noindex") "true") }}
<meta name="robots" content="noindex" />
{{ end }}
{{ else }}
<meta name="robots" content="noodp" />
{{ end }}
<meta name="robots" content="noodp" />
<link rel="canonical" href="{{ .Permalink }}" />
{{ template "_internal/google_analytics.html" . }}
{{ $css := resources.Match "css/*.css" }}
{{ range $css }}
{{ $styles := . | minify | fingerprint }}
<link rel="stylesheet" href="{{ $styles.Permalink }}">
<!-- Theme CSS -->
<link rel="stylesheet" href="{{ "assets/style.css" | absURL }}">
{{ if (isset .Params "color") }}
<link rel="stylesheet" href="{{ (printf "assets/%s.css" .Params.color) | absURL }}">
{{ else if and (ne $.Site.Params.ThemeColor "orange") (ne $.Site.Params.ThemeColor "color" "") }}
<link rel="stylesheet" href="{{ (printf "assets/%s.css" $.Site.Params.ThemeColor) | absURL }}">
{{ end }}
<!-- Custom Terminal.css styles -->
{{ if (fileExists "static/terminal.css") -}}
<link rel="stylesheet" href="{{ "terminal.css" | absURL }}">
{{- end }}
<!-- Custom CSS to override theme properties (/static/style.css) -->
{{ if (fileExists "static/style.css") -}}
<link rel="stylesheet" href="{{ "style.css" | absURL }}">
{{- end }}
<!-- Icons -->
<link rel="shortcut icon" href="{{ "favicon.png" | absURL }}">
<link rel="apple-touch-icon" href="{{ "apple-touch-icon.png" | absURL }}">
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="{{ "img/apple-touch-icon-144-precomposed.png" | absURL }}">
{{ if isset $.Site.Params "favicon" }}
<link rel="shortcut icon" href="{{ $.Site.Params.favicon | absURL }}">
{{ else }}
<link rel="shortcut icon" href="{{ printf "img/favicon/%s.png" ($.Site.Params.ThemeColor | default "orange") | absURL }}">
{{ end }}
<!-- Twitter Card -->
<meta name="twitter:card" content="summary" />
@@ -43,21 +40,21 @@
<!-- OG data -->
<meta property="og:locale" content="{{ $.Site.Language.Lang }}" />
<meta property="og:type" content="{{ if .IsPage }}article{{ else }}website{{ end }}" />
<meta property="og:title" content="{{ if .IsHome }}{{ $.Site.Title }}{{ else }}{{ .Title }}{{ end }}">
<meta property="og:title" content="{{ if .IsHome }}{{ $.Site.Title }}{{ else }}{{ .Title }} :: {{ $.Site.Title }}{{ end }}">
<meta property="og:description" content="{{ if .IsHome }}{{ $.Site.Params.Subtitle }}{{ else if .Description}}{{ .Description | plainify }}{{ else }}{{ .Summary | plainify }}{{ end }}" />
<meta property="og:url" content="{{ .Permalink }}" />
<meta property="og:site_name" content="{{ $.Site.Title }}" />
{{ if (isset .Params "cover") }}
{{ $pageCover := .Param "cover" }}
{{ with (.Resources.GetMatch (.Param "cover")) }}
{{ $pageCover = .RelPermalink }}
{{ end }}
<meta property="og:image" content="{{ $pageCover | absURL }}">
<meta property="og:site_name" content="{{ .Title }}" />
{{ if and (not .IsHome) (isset .Params "cover") }}
<meta property="og:image" content="{{ .Param "cover" | absURL }}">
{{ else }}
<meta property="og:image" content="{{ "og-image.png" | absURL }}">
{{ if isset $.Site.Params "favicon" }}
<meta property="og:image" content="{{ $.Site.Params.favicon | absURL }}">
{{ else }}
<meta property="og:image" content="{{ printf "img/favicon/%s.png" $.Site.Params.ThemeColor | absURL }}">
{{ end }}
{{ end }}
<meta property="og:image:width" content="1200">
<meta property="og:image:height" content="627">
<meta property="og:image:width" content="2048">
<meta property="og:image:height" content="1024">
{{ range .Params.categories }}
<meta property="article:section" content="{{ . }}" />
{{ end }}
+1 -6
View File
@@ -3,12 +3,7 @@
<div class="header__logo">
{{ partial "logo.html" . }}
</div>
{{ if len $.Site.Menus }}
{{ partial "mobile-menu.html" . }}
{{ end }}
{{ if and $.Site.Params.showLanguageSelector (len $.Site.Home.AllTranslations) }}
{{ partial "language-menu.html" . }}
{{ end }}
<div class="menu-trigger">menu</div>
</div>
{{ if len $.Site.Menus }}
{{ partial "menu.html" . }}
-10
View File
@@ -1,10 +0,0 @@
<ul class="menu menu--desktop menu--language-selector">
<li class="menu__trigger">{{ .Language.LanguageName }}&nbsp;</li>
<li>
<ul class="menu__dropdown">
{{ range $.Site.Home.AllTranslations }}
<li><a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a></li>
{{ end }}
</ul>
</li>
</ul>
+44 -17
View File
@@ -1,33 +1,60 @@
<nav class="navigation-menu">
<ul class="navigation-menu__inner menu--desktop">
<nav class="menu">
<ul class="menu__inner menu__inner--desktop">
{{ if or $.Site.Params.showMenuItems ( eq .Site.Params.showMenuItems 0 ) }}
{{ range first $.Site.Params.showMenuItems $.Site.Menus.main }}
{{ if not .HasChildren }}
<li><a href="{{ .URL }}" {{ if .Params.NewTab -}} target="_blank" {{- end }}>{{ .Name }}</a></li>
<li><a href="{{ .URL }}">{{ .Name }}</a></li>
{{ end }}
{{ end }}
{{ if gt (len $.Site.Menus.main) $.Site.Params.showMenuItems }}
<li>
<ul class="menu">
<li class="menu__trigger">{{ $.Site.Params.menuMore }}&nbsp;</li>
<li>
<ul class="menu__dropdown">
{{ range last (sub (len $.Site.Menus.main) $.Site.Params.showMenuItems) $.Site.Menus.main }}
{{ if not .HasChildren }}
<li><a href="{{ .URL }}" {{ if .Params.NewTab -}} target="_blank" {{- end }}>{{ .Name }}</a></li>
{{ end }}
{{ end }}
</ul>
</li>
<ul class="menu__sub-inner">
<li class="menu__sub-inner-more-trigger">{{ $.Site.Params.MenuMore }} ▾</li>
<ul class="menu__sub-inner-more hidden">
{{ range last (sub (len $.Site.Menus.main) $.Site.Params.showMenuItems) $.Site.Menus.main }}
{{ if not .HasChildren }}
<li><a href="{{ .URL }}">{{ .Name }}</a></li>
{{ end }}
{{ end }}
</ul>
</li>
</ul>
{{ end }}
{{ else }}
{{ range $.Site.Menus.main }}
{{ if not .HasChildren }}
<li><a href="{{ .URL }}" {{ if .Params.NewTab -}} target="_blank" {{- end }}>{{ .Name }}</a></li>
<li><a href="{{ .URL }}">{{ .Name }}</a></li>
{{ end }}
{{ end }}
{{ end }}
{{ if $.Site.Params.showLanguageSelector }}
<div class="spacer"></div>
<ul class="language-selector">
<ul class="language-selector-current">
<li>{{ .Language.LanguageName }} ▾</li>
</ul>
<ul class="language-selector__more hidden">
{{ range $.Site.Home.AllTranslations }}
<li><a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a></li>
{{ end }}
</ul>
</ul>
{{ end }}
</ul>
<ul class="menu__inner menu__inner--mobile">
{{ range $.Site.Menus.main }}
{{ if not .HasChildren }}
<li><a href="{{ .URL }}">{{ .Name }}</a></li>
{{ end }}
{{ end }}
{{ if $.Site.Params.showLanguageSelector }}
<hr />
{{ range $.Site.Home.AllTranslations }}
<li>
<a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a>
</li>
{{ end }}
{{ end }}
</ul>
</nav>
-20
View File
@@ -1,20 +0,0 @@
<ul class="menu menu--mobile">
<li class="menu__trigger">Menu&nbsp;</li>
<li>
<ul class="menu__dropdown">
{{ range $.Site.Menus.main }}
{{ if not .HasChildren }}
<li><a href="{{ .URL }}">{{ .Name }}</a></li>
{{ end }}
{{ end }}
{{ if and $.Site.Params.showLanguageSelector (len $.Site.Home.AllTranslations) }}
<hr />
{{ range $.Site.Home.AllTranslations }}
<li>
<a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a>
</li>
{{ end }}
{{ end }}
</ul>
</li>
</ul>
+12 -8
View File
@@ -1,16 +1,20 @@
<div class="pagination">
<div class="pagination__buttons">
{{ if .Paginator.HasPrev }}
<a href="{{ .Paginator.Prev.URL }}" class="button prev">
<span class="button__icon"></span>
<span class="button__text">{{ $.Site.Params.newerPosts | default "Newer posts" }}</span>
</a>
<span class="button previous">
<a href="{{ .Paginator.Prev.URL }}">
<span class="button__icon"></span>
<span class="button__text">Newer posts</span>
</a>
</span>
{{ end }}
{{ if .Paginator.HasNext }}
<a href="{{ .Paginator.Next.URL }}" class="button next">
<span class="button__text">{{ $.Site.Params.olderPosts | default "Older posts" }}</span>
<span class="button__icon"></span>
</a>
<span class="button next">
<a href="{{ .Paginator.Next.URL }}">
<span class="button__text">Older posts</span>
<span class="button__icon"></span>
</a>
</span>
{{ end }}
</div>
</div>
+23 -20
View File
@@ -1,23 +1,26 @@
{{ if or .NextInSection .PrevInSection }}
<div class="pagination">
<div class="pagination__title">
<span class="pagination__title-h">{{ $.Site.Params.ReadOtherPosts }}</span>
<hr />
</div>
<div class="pagination__buttons">
{{ if .NextInSection }}
<a href="{{ .NextInSection.Permalink }}" class="button inline prev">
{{ .NextInSection.Title }}
</a>
{{ end }}
{{ if and .NextInSection .PrevInSection }}
::
{{ end }}
{{ if .PrevInSection }}
<a href="{{ .PrevInSection.Permalink }}" class="button inline next">
{{ .PrevInSection.Title }}
</a>
{{ end }}
</div>
<div class="pagination__title">
<span class="pagination__title-h">{{ $.Site.Params.ReadOtherPosts }}</span>
<hr />
</div>
<div class="pagination__buttons">
{{ if .NextInSection }}
<span class="button previous">
<a href="{{ .NextInSection.Permalink }}">
<span class="button__icon"></span>
<span class="button__text">{{ .NextInSection.Title }}</span>
</a>
</span>
{{ end }}
{{ if .PrevInSection }}
<span class="button next">
<a href="{{ .PrevInSection.Permalink }}">
<span class="button__text">{{ .PrevInSection.Title }}</span>
<span class="button__icon"></span>
</a>
</span>
{{ end }}
</div>
</div>
{{ end }}
{{ end }}
+1 -1
View File
@@ -2,7 +2,7 @@
<figure class="{{ with .Get "position"}}{{ . }}{{ else -}} left {{- end }}" >
<img src="{{ .Get "src" | safeURL }}" {{ with .Get "alt" }} alt="{{ . | plainify }}" {{ end }} {{ with .Get "style" }} style="{{ . | safeCSS }}" {{ end }} />
{{ if .Get "caption" }}
<figcaption class="{{ with .Get "captionPosition"}}{{ . }}{{ else -}} center {{- end }}" {{ with .Get "captionStyle" }} style="{{ . | safeCSS }}" {{ end }}>{{ .Get "caption" | safeHTML }}</figcaption>
<figcaption class="{{ with .Get "captionPosition"}}{{ . }}{{ else -}} center {{- end }}" {{ with .Get "captionStyle" }} style="{{ . | safeCSS }}" {{ end }}>{{ .Get "caption" }}</figcaption>
{{ end }}
</figure>
{{ end }}
+1 -1
View File
@@ -1,3 +1,3 @@
{{ if .Get "src" }}
<img src="{{ .Get "src" | safeURL }}" {{ with .Get "alt" }} alt="{{ . | plainify }}" {{ end }} class="{{ with .Get "position"}}{{ . }}{{ else -}} left {{- end }}" {{ with .Get "style" }} style="{{ . | safeCSS }}" {{ end }} {{ with .Get "width" }} width="{{ . | plainify }}" {{ end }} {{ with .Get "height" }} height="{{ . | plainify }}" {{ end }} />
<img src="{{ .Get "src" | safeURL }}" {{ with .Get "alt" }} alt="{{ . | plainify }}" {{ end }} class="{{ with .Get "position"}}{{ . }}{{ else -}} left {{- end }}" {{ with .Get "style" }} style="{{ . | safeCSS }}" {{ end }} />
{{ end }}
+2 -3
View File
@@ -1,4 +1,4 @@
{{ $inner := replaceRE "^\r?\n" "" .Inner | string }}
{{ $inner := replaceRE "^\n" "" .Inner | string }}
{{ if len .Params | eq 0 }}
<pre><code>{{ $inner }}</code></pre>
{{ else }}
@@ -20,7 +20,6 @@
>{{ $inner }}</code></pre>
{{ else }}
<pre class="language-{{ .Get 0 }}">
<code class="language-{{ .Get 0 }}">{{ $inner }}</code>
</pre>
<code class="language-{{ .Get 0 }}">{{ $inner }}</code></pre>
{{ end }}
{{ end }}
-6743
View File
File diff suppressed because it is too large Load Diff
-39
View File
@@ -1,39 +0,0 @@
{
"author": "Radosław Kozieł <@panr> <radoslaw.koziel@gmail.com>",
"browserslist": [
"last 2 versions",
">1%",
"not dead"
],
"comments": {
"dependencies": {
"yarn": "project"
},
"devDependencies": {
"browserslist": "project",
"clipboard": "project",
"eslint-config-airbnb": "project",
"eslint-config-prettier": "project",
"eslint-plugin-jsx-a11y": "project",
"husky": "project"
}
},
"dependencies": {
"yarn": "^1.22.10"
},
"devDependencies": {
"browserslist": "^4.16.5",
"clipboard": "^2.0.4",
"eslint-config-airbnb": "^18.2.0",
"eslint-config-prettier": "^8.1.0",
"eslint-plugin-jsx-a11y": "^6.2.1",
"husky": "^5.1.3"
},
"license": "MIT",
"main": "index.js",
"name": "terminal",
"scripts": {
"test": "echo 'Test'"
},
"version": "2.1.0"
}
+47 -27
View File
@@ -1,43 +1,63 @@
{
"name": "terminal",
"version": "3.1.0",
"author": "Radosław Kozieł <@panr> <radoslaw.koziel@gmail.com>",
"version": "2.1.0",
"main": "index.js",
"author": "Radosław Kozieł <@panr> <radoslaw.koziel@gmail.com>",
"license": "MIT",
"scripts": {
"test": "echo 'Test'"
},
"browserslist": [
"last 2 versions",
">1%",
"not dead"
],
"comments": {
"dependencies": {
"yarn": "project"
},
"devDependencies": {
"browserslist": "project",
"clipboard": "project",
"eslint-config-airbnb": "project",
"eslint-config-prettier": "project",
"eslint-plugin-jsx-a11y": "project",
"husky": "project"
}
},
"dependencies": {
"yarn": "^1.22.10"
"scripts": {
"dev": "webpack --mode=development --watch",
"build": "webpack --mode=production"
},
"devDependencies": {
"browserslist": "^4.16.5",
"@babel/cli": "^7.2.3",
"@babel/core": "^7.2.2",
"@babel/parser": "^7.4.2",
"@babel/plugin-transform-runtime": "^7.2.0",
"@babel/preset-env": "^7.3.1",
"@babel/preset-stage-2": "^7.0.0",
"angular-html-parser": "^1.2.0",
"babel-eslint": "^10.1.0",
"babel-loader": "^8.0.5",
"browserslist": "^4.0.1",
"clean-webpack-plugin": "^3.0.0",
"clipboard": "^2.0.4",
"eslint": "^7.32.0",
"css-loader": "^4.2.2",
"cssnano": "^4.1.8",
"eslint-config-airbnb": "^18.2.0",
"eslint-config-prettier": "^8.1.0",
"eslint-config-prettier": "^6.11.0",
"eslint-plugin-jsx-a11y": "^6.2.1",
"husky": "^5.1.3",
"stylelint": "^14.14.1",
"stylelint-config-prettier-scss": "^0.0.1",
"stylelint-config-standard-scss": "^6.1.0"
"file-loader": "^6.1.0",
"html-webpack-plugin": "^4.4.1",
"husky": "^4.2.5",
"mini-css-extract-plugin": "^0.11.0",
"postcss": "^7.0.0",
"postcss-browser-reporter": "^0.6.0",
"postcss-cli": "^7.1.2",
"postcss-color-function": "^4.0.1",
"postcss-color-mod-function": "^3.0.3",
"postcss-import": "^12.0.1",
"postcss-loader": "^3.0.0",
"postcss-mixins": "^6.2.1",
"postcss-nested": "^4.2.3",
"postcss-preset-env": "^6.7.0",
"postcss-reporter": "^6.0.1",
"postcss-url": "^8.0.0",
"prettier-eslint-cli": "^5.0.0",
"ramda": "^0.27.1",
"style-loader": "^1.2.1",
"uglifyjs-webpack-plugin": "^2.2.0",
"url-loader": "^4.1.0",
"webpack": "^4.29.3",
"webpack-cli": "^3.2.3"
},
"husky": {
"hooks": {
"pre-push": "yarn build && git add . && git commit --amend --no-edit"
}
}
}
+28
View File
@@ -0,0 +1,28 @@
const url = require("postcss-url");
const imports = require("postcss-import");
const nested = require("postcss-nested");
const postCSSPresetEnv = require("postcss-preset-env");
const browsers = require("browserslist");
const cssnano = require("cssnano");
const color = require("postcss-color-mod-function");
const mixins = require("postcss-mixins");
module.exports = () => ({
plugins: [
url,
imports,
mixins,
nested,
postCSSPresetEnv({
stage: 1,
preserve: true,
features: {
"custom-properties": true,
},
}),
cssnano({
preset: "default",
}),
color,
],
});
Binary file not shown.
Binary file not shown.
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
!function(n){var o={};function r(e){if(o[e])return o[e].exports;var t=o[e]={i:e,l:!1,exports:{}};return n[e].call(t.exports,t,t.exports,r),t.l=!0,t.exports}r.m=n,r.c=o,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var o in t)r.d(n,o,function(e){return t[e]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,n){n(1),e.exports=n(2)},function(e,t){function n(){return window.matchMedia(d).matches}function o(){c&&c.classList.toggle("hidden",!n()),i&&i.classList.toggle("hidden",n()),a&&a.classList.toggle("hidden",!n())}var r=document.querySelector(".container"),i=document.querySelector(".menu"),c=document.querySelector(".menu-trigger"),u=(document.querySelector(".menu__inner--desktop"),document.querySelector(".menu__sub-inner-more-trigger")),a=document.querySelector(".menu__sub-inner-more"),d=getComputedStyle(document.body).getPropertyValue("--phoneWidth");i&&i.addEventListener("click",function(e){return e.stopPropagation()}),a&&a.addEventListener("click",function(e){return e.stopPropagation()}),o(),document.body.addEventListener("click",function(){n()||!a||a.classList.contains("hidden")?n()&&!i.classList.contains("hidden")&&i.classList.add("hidden"):a.classList.add("hidden")}),window.addEventListener("resize",o),c&&c.addEventListener("click",function(e){e.stopPropagation(),i&&i.classList.toggle("hidden")}),u&&u.addEventListener("click",function(e){e.stopPropagation(),a&&a.classList.toggle("hidden"),a.getBoundingClientRect().right>r.getBoundingClientRect().right&&(a.style.left="auto",a.style.right=0)})},function(e,t){var n=getComputedStyle(document.body).getPropertyValue("--phoneWidth");window.matchMedia(n).matches||(languageSelector=document.querySelector(".language-selector-current"),moreLanguagesContainer=document.querySelector(".language-selector__more"),document.body.addEventListener("click",function(){moreLanguagesContainer&&!moreLanguagesContainer.classList.contains("hidden")&&moreLanguagesContainer.classList.add("hidden")}),languageSelector&&languageSelector.addEventListener("click",function(e){e.stopPropagation(),moreLanguagesContainer.classList.toggle("hidden")}))}]);
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.

Before

Width:  |  Height:  |  Size: 190 B

Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 189 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 B

Before

Width:  |  Height:  |  Size: 190 B

After

Width:  |  Height:  |  Size: 190 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 190 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

+2 -3
View File
@@ -1,12 +1,11 @@
name = "Terminal"
name = "terminal"
license = "MIT"
licenselink = "https://github.com/panr/hugo-theme-terminal/blob/master/LICENSE.md"
description = "A simple, retro theme for Hugo."
homepage = "https://github.com/panr/hugo-theme-terminal/"
demosite = "https://panr.github.io/hugo-theme-terminal-demo/"
tags = ["blog", "clean", "customizable", "dark", "highlighting", "minimal", "monotone", "multilingual", "personal", "responsive", "simple", "technical", "retro"]
features = ["blog", "shortcode", "syntax highlighting"]
min_version = 0.90
min_version = 0.74
[author]
name = "panr"
+110
View File
@@ -0,0 +1,110 @@
const Webpack = require("webpack");
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const { CleanWebpackPlugin } = require("clean-webpack-plugin");
const HtmlWebpackPlugin = require("html-webpack-plugin");
const UglifyJsPlugin = require("uglifyjs-webpack-plugin");
const path = require("path");
const join = (...paths) => path.join(__dirname, ...paths);
module.exports = (env, { mode }) => ({
resolve: {
extensions: [".js", ".css"],
modules: ["assets", "node_modules"],
},
entry: {
main: [join("assets", "js", "menu.js"), join("assets", "js", "languageSelector.js")],
prism: join("assets", "js", "prism.js"),
style: join("assets", "css", "style.css"),
red: join("assets", "css", "color", "red.css"),
blue: join("assets", "css", "color", "blue.css"),
green: join("assets", "css", "color", "green.css"),
pink: join("assets", "css", "color", "pink.css"),
},
output: {
filename: "[name].js",
path: join("static/assets"),
publicPath: "",
},
performance: {
hints: false,
},
module: {
rules: [
{
test: /\.js$/,
exclude: /node_modules/,
use: {
loader: "babel-loader",
options: {
presets: ["@babel/preset-env"],
},
},
},
{
test: /\.(png|jpg|woff|woff2|ttf|eot|svg)$/,
use: [
{
loader: "url-loader",
options: {
limit: 8192,
},
},
],
},
{
test: /\.css$/,
use: [
MiniCssExtractPlugin.loader,
{
loader: "css-loader",
options: {
modules: {
localIdentName: "[local]",
},
import: true,
importLoaders: 1,
},
},
{
loader: "postcss-loader",
options: {
config: {
path: "postcss.config.js",
},
},
},
],
},
],
},
optimization: {
splitChunks: {
name: "vendor",
minChunks: 2,
},
minimizer: [
new UglifyJsPlugin({
sourceMap: true,
}),
],
},
plugins: [
new CleanWebpackPlugin({
cleanOnceBeforeBuildPatterns: [join("static/assets")],
cleanAfterEveryBuildPatterns: [
join("static/assets/style.js"),
join("static/assets/blue.js"),
join("static/assets/green.js"),
join("static/assets/red.js"),
join("static/assets/pink.js"),
],
verbose: true,
}),
new MiniCssExtractPlugin({
filename: "[name].css",
chunkFilename: "[id].css",
}),
],
});
+6843 -1909
View File
File diff suppressed because it is too large Load Diff