© {{ site.time | date: '%Y' }} {{ site.title }} ― Powered by Jekyll and Textlog theme
9 |├── .gitattributes ├── .gitignore ├── .travis.yml ├── 404.md ├── Gemfile ├── LICENSE ├── README.md ├── _config.yml ├── _includes ├── disqus.html ├── google_analytics.html ├── head.html ├── intro.html └── nav.html ├── _layouts ├── default.html ├── page.html └── post.html ├── _posts ├── 2017-01-15-about-this-jekyll-theme.md ├── 2017-01-15-example-content.md ├── 2017-01-15-history-of-lorem-ipsum.md └── 2017-01-15-whats-jekyll.md ├── _sass ├── _base.scss ├── _layout.scss └── _syntax-highlighting.scss ├── about.md ├── categories.html ├── css └── main.scss ├── feed.xml ├── index.html ├── renovate.json ├── script └── cibuild.sh ├── tagged.html └── textlog.gemspec /.gitattributes: -------------------------------------------------------------------------------- 1 | # Auto detect text files and perform LF normalization 2 | * text=auto 3 | 4 | # Custom for Visual Studio 5 | *.cs diff=csharp 6 | 7 | # Standard to msysgit 8 | *.doc diff=astextplain 9 | *.DOC diff=astextplain 10 | *.docx diff=astextplain 11 | *.DOCX diff=astextplain 12 | *.dot diff=astextplain 13 | *.DOT diff=astextplain 14 | *.pdf diff=astextplain 15 | *.PDF diff=astextplain 16 | *.rtf diff=astextplain 17 | *.RTF diff=astextplain 18 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | _site 2 | .sass-cache 3 | .jekyll-cache 4 | .jekyll-metadata 5 | Gemfile.lock 6 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: ruby 2 | rvm: 3 | - 2.4.1 4 | 5 | before_script: 6 | - chmod +x ./script/cibuild.sh 7 | 8 | script: ./script/cibuild.sh 9 | 10 | # branch whitelist, only for Github pages 11 | # https://jekyllrb.com/docs/continuous-integration/travis-ci/ 12 | branches: 13 | only: 14 | - master 15 | - gh-pages # test gh-pages branch 16 | - /pages-(.*)/ 17 | 18 | env: 19 | global: 20 | - NOKOGIRI_USE_SYSTEM_LIBRARIES=true # speed up html-proofer install 21 | 22 | sudo: false # route build to the container-based infrastructure for faster build 23 | 24 | cache: bundler # caching bundler gem packages will speed up build 25 | -------------------------------------------------------------------------------- /404.md: -------------------------------------------------------------------------------- 1 | --- 2 | layout: page 3 | permalink: 404.html 4 | --- 5 | 6 | # 404 7 | 8 | Sorry, the page does not exist. -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source "https://rubygems.org" 2 | gemspec 3 | group :jekyll_plugins do 4 | gem "jekyll-sitemap" 5 | end 6 | gem 'html-proofer' 7 | gem 'tzinfo' 8 | gem 'tzinfo-data' 9 | gem 'kramdown-parser-gfm' 10 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2017 Heiswayi Nrird 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # TextLog 2 | 3 | > Textlog is a minimalist, lefty-style Jekyll theme designed for documentation based blog. 4 | 5 | [](LICENSE)    6 | 7 | - **Demo:** https://heiswayi.github.io/textlog/ 8 | 9 |  10 | 11 | ## License 12 | 13 | [MIT](LICENSE.md) 14 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | # Site settings 2 | title: "TextLog" 3 | description: "Minimalist Jekyll theme for documentation site" 4 | baseurl: "/textlog" # required if used under gh-pages branch, else (under master branch) just leave empty/blank 5 | url: "" 6 | author: "John Doe" 7 | 8 | # Build settings 9 | kramdown: 10 | input: GFM 11 | permalink: pretty 12 | 13 | # Third-party services 14 | # just leave empty to disable it 15 | google_analytics: 16 | disqus_shortname: 17 | 18 | plugins: 19 | - jekyll-sitemap 20 | 21 | exclude: ["LICENSE", "README.md", "CNAME", "vendor", "Gemfile", "script"] 22 | -------------------------------------------------------------------------------- /_includes/disqus.html: -------------------------------------------------------------------------------- 1 | {% if site.disqus_shortname %} 2 |
3 | 12 | {% endif %} 13 | -------------------------------------------------------------------------------- /_includes/google_analytics.html: -------------------------------------------------------------------------------- 1 | {% if site.google_analytics %} 2 | 10 | {% endif %} -------------------------------------------------------------------------------- /_includes/head.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 |Hello, this is TextLog - another minimalist Jekyll theme by Heiswayi Nrird. TextLog provides distraction-free and content-focused layout. This section is here for any brief introduction. You may edit this section in includes\intro.html
. If you use this theme as a personal blog, maybe this section works best for you bio...
2 | About / 3 | Categories / 4 | Tagged / 5 | RSS 6 |
7 | -------------------------------------------------------------------------------- /_layouts/default.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | {% include head.html %} 4 | 5 |© {{ site.time | date: '%Y' }} {{ site.title }} ― Powered by Jekyll and Textlog theme
9 |` element. Snippets of multiple lines of code are supported through Pygments. Longer lines will automatically scroll horizontally when needed.
50 |
51 | {% highlight js %}
52 | // Example can be run directly in your JavaScript console
53 |
54 | // Create a function that takes two arguments and returns the sum of those arguments
55 | var adder = new Function("a", "b", "return a + b");
56 |
57 | // Call the function
58 | adder(2, 6);
59 | // > 8
60 | {% endhighlight %}
61 |
62 | Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa.
63 |
64 | ### Lists
65 |
66 | Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Aenean lacinia bibendum nulla sed consectetur. Etiam porta sem malesuada magna mollis euismod. Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut fermentum massa justo sit amet risus.
67 |
68 | * Praesent commodo cursus magna, vel scelerisque nisl consectetur et.
69 | * Donec id elit non mi porta gravida at eget metus.
70 | * Nulla vitae elit libero, a pharetra augue.
71 |
72 | Donec ullamcorper nulla non metus auctor fringilla. Nulla vitae elit libero, a pharetra augue.
73 |
74 | 1. Vestibulum id ligula porta felis euismod semper.
75 | 2. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus.
76 | 3. Maecenas sed diam eget risus varius blandit sit amet non magna.
77 |
78 | ### Images
79 |
80 | Quisque consequat sapien eget quam rhoncus, sit amet laoreet diam tempus. Aliquam aliquam metus erat, a pulvinar turpis suscipit at.
81 |
82 | 
83 |
84 | 
85 |
86 | 
87 |
88 | ### Tables
89 |
90 | Aenean lacinia bibendum nulla sed consectetur. Lorem ipsum dolor sit amet, consectetur adipiscing elit.
91 |
92 |
93 |
94 |
95 | Name
96 | Upvotes
97 | Downvotes
98 |
99 |
100 |
101 |
102 | Totals
103 | 21
104 | 23
105 |
106 |
107 |
108 |
109 | Alice
110 | 10
111 | 11
112 |
113 |
114 | Bob
115 | 4
116 | 3
117 |
118 |
119 | Charlie
120 | 7
121 | 9
122 |
123 |
124 |
125 |
126 | Nullam id dolor id nibh ultricies vehicula ut id elit. Sed posuere consectetur est at lobortis. Nullam quis risus eget urna mollis ornare vel eu leo.
127 |
128 | -----
129 |
130 | Footnotes:
131 |
132 | [^fn-sample_footnote]: Handy! Now click the return link to go back.
--------------------------------------------------------------------------------
/_posts/2017-01-15-history-of-lorem-ipsum.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: post
3 | title: History of Lorem Ipsum
4 | tags: [Demo, Lorem Ipsum]
5 | comment: true
6 | ---
7 |
8 | ### What is Lorem ipsum?
9 |
10 | A quick and simplified answer is that Lorem Ipsum refers to text that the DTP (Desktop Publishing) industry use as replacement text when the real text is not available.
11 |
12 | For example, when designing a brochure or book, a designer will insert Lorem ipsum text if the real text is not available. The Lorem ipsum text looks real enough that the brochure or book looks complete. The book or brochure can be shown to the client for approval.
13 |
14 | The important factor when using Lorem ipsum text is that the text looks realistic otherwise the brochure or book will not look very good. Lorem Ipsum is dummy text which has no meaning however looks very similar to real text.
15 |
16 | Common names for Lorem ipsum text include:
17 |
18 | - blind text
19 | - dummy text
20 | - greeked text
21 | - placeholder text
22 | - mock content
23 | - filler text
24 |
25 | ### Where did it come from ?
26 |
27 | In design magazine, Before and After Magazine, a journalist wrote in volume 4, number 2 the following:
28 |
29 | > After telling everyone that Lorem ipsum, the nonsensical text that comes with PageMaker, only looks like Latin but actually says nothing, I heard from Richard McClintock, publication director at the Hampden-Sydney College in Virginia, who had enlightening news:
30 |
31 | > Lorem ipsum is latin, slightly jumbled, the remnants of a passage from Cicero's 'De finibus bonorum et malorum' 1.10.32, which begins 'Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...' [There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain.]. [de Finibus Bonorum et Malorum, written in 45 BC, is a treatise on the theory of ethics very popular in the Renaisance.]
32 |
33 | > What I find remarkable is that this text has been the industry's standard dummy text ever since some printed in the 1500s took a galley of type and scrambled it to make a type specimen book; it has survived not only four centuries of letter-by-letter resetting but even the leap into electronic typesetting, essentially unchanged except for an occasional 'ing' or 'y' thrown in. It's ironic that when the then-understood Latin was scrambled, it became as incomprehensible as Greek; the phrase 'it's Greek to me' and 'greeking' have common semantic roots!
34 |
35 | [Rick Pali](http://www.alienshore.com/seeking/) submitted this article to alt.fonts faqs because it was stated there that no one knew where it came from.
36 |
--------------------------------------------------------------------------------
/_posts/2017-01-15-whats-jekyll.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: post
3 | title: What's Jekyll?
4 | tags: [Demo, Jekyll]
5 | comment: false
6 | ---
7 |
8 | [Jekyll](http://jekyllrb.com) is a static site generator, an open-source tool for creating simple yet powerful websites of all shapes and sizes. From [the project's readme](https://github.com/jekyll/jekyll/blob/master/README.markdown):
9 |
10 | > Jekyll is a simple, blog aware, static site generator. It takes a template directory [...] and spits out a complete, static website suitable for serving with Apache or your favorite web server. This is also the engine behind GitHub Pages, which you can use to host your project’s page or blog right here from GitHub.
11 |
12 | It's an immensely useful tool. Find out more by [visiting the project on GitHub](https://github.com/jekyll/jekyll).
13 |
--------------------------------------------------------------------------------
/_sass/_base.scss:
--------------------------------------------------------------------------------
1 | /**
2 | * Reset some basic elements
3 | */
4 | blockquote,
5 | body,
6 | dd,
7 | dl,
8 | figure,
9 | h1,
10 | h2,
11 | h3,
12 | h4,
13 | h5,
14 | h6,
15 | hr,
16 | ol,
17 | p,
18 | pre,
19 | ul {
20 | margin: 0;
21 | padding: 0;
22 | }
23 | /**
24 | * Basic styling
25 | */
26 | body {
27 | font: $base-font-weight #{$base-font-size}/#{$base-line-height} $base-font-family;
28 | color: $text-color;
29 | background-color: $background-color;
30 | }
31 | /**
32 | * Set `margin-bottom` to maintain vertical rhythm
33 | */
34 | %vertical-rhythm,
35 | blockquote,
36 | dl,
37 | figure,
38 | h1,
39 | h2,
40 | h3,
41 | h4,
42 | h5,
43 | h6,
44 | ol,
45 | p,
46 | pre,
47 | table,
48 | ul {
49 | margin-bottom: $spacing-unit / 2;
50 | }
51 | /**
52 | * Images
53 | */
54 | img {
55 | max-width: 100%;
56 | vertical-align: middle;
57 | }
58 | /**
59 | * Figures
60 | */
61 | figure > img {
62 | display: block;
63 | }
64 |
65 | figcaption {
66 | font-size: $small-font-size;
67 | }
68 | /**
69 | * Lists
70 | */
71 | ol,
72 | ul {
73 | margin-left: $spacing-unit;
74 | }
75 |
76 | li {
77 | > ol,
78 | > ul {
79 | margin-bottom: 0;
80 | }
81 | }
82 | /**
83 | * Headings
84 | */
85 | h1,
86 | h2,
87 | h3,
88 | h4,
89 | h5,
90 | h6 {
91 | font-weight: $base-font-weight;
92 | }
93 | /**
94 | * Links
95 | */
96 | a {
97 | color: $link-color;
98 | text-decoration: none;
99 |
100 | &:hover {
101 | text-decoration: underline;
102 | }
103 | }
104 | /**
105 | * Blockquotes
106 | */
107 | blockquote {
108 | color: $grey-color-dark;
109 | padding-left: $spacing-unit / 2;
110 | border-left: 2px solid $grey-color-light;
111 | font-style: italic;
112 | font-size: $small-font-size;
113 |
114 | > :last-child {
115 | margin-bottom: 0;
116 | }
117 | }
118 | /**
119 | * Code formatting
120 | */
121 | code,
122 | pre {
123 | background-color: #fcfcfc;
124 | }
125 |
126 | code {
127 | padding: 1px 5px;
128 | font-family: $code-font-family;
129 | color: #f14e32;
130 | }
131 |
132 | pre {
133 | padding: 8px 12px;
134 | overflow-x: auto;
135 | border: 1px solid $grey-color-light;
136 |
137 | > code {
138 | border: 0;
139 | padding-right: 0;
140 | padding-left: 0;
141 | tab-size: 4;
142 | color: inherit;
143 | }
144 | }
145 | /**
146 | * Table
147 | */
148 | table {
149 | width: 100%;
150 | max-width: 100%;
151 | border-collapse: separate;
152 | border-spacing: 0;
153 | table-layout: fixed;
154 | }
155 |
156 | td,
157 | th {
158 | padding: 0.5rem;
159 | line-height: inherit;
160 | }
161 |
162 | th {
163 | text-align: left;
164 | vertical-align: bottom;
165 | border-bottom: 2px solid $grey-color-light;
166 | }
167 |
168 | td {
169 | vertical-align: top;
170 | border-bottom: 1px solid $grey-color-light;
171 | }
172 | /**
173 | * Horizontal rule
174 | */
175 | hr {
176 | border: none;
177 | border-top: 1px solid lighten($grey-color, 30%);
178 | margin: $spacing-unit auto;
179 | }
180 | /**
181 | * Clearfix
182 | */
183 | %clearfix {
184 | &:after {
185 | content: "";
186 | display: table;
187 | clear: both;
188 | }
189 | }
190 |
--------------------------------------------------------------------------------
/_sass/_layout.scss:
--------------------------------------------------------------------------------
1 | .underlined {
2 | flex: 1;
3 | text-decoration: none;
4 | background-image: linear-gradient(to right, yellow 0, yellow 100%);
5 | background-position: 0 1.2em;
6 | background-size: 0 100%;
7 | background-repeat: no-repeat;
8 | transition: background .5s;
9 | &:hover, {
10 | background-size: 100% 100%;
11 | }
12 | &--thin {
13 | background-image: linear-gradient(to right, black 0, black 100%);
14 | }
15 | &--thick {
16 | background-position: 0 -0.1em;
17 | }
18 | &--offset {
19 | background-position: 0 0.2em;
20 | //didn't find another solution than mask the underline shape by a box shadow with the same color than the bg
21 | box-shadow: inset 0 -.5em 0 0 white;
22 | }
23 | &--gradient {
24 | background-position: 0 -0.1em;
25 | background-image: linear-gradient(to right, yellow 0, lightgreen 100%);
26 | }
27 | &--reverse {
28 | background-position: 100% -0.1em;
29 | transition: background 1s; //yep, that's a long link
30 | background-image: linear-gradient(to right, yellow 0, yellow 100%);
31 | }
32 | }
33 |
34 | /**
35 | * Site header
36 | */
37 | .site-header {
38 | border-bottom: 1px solid $grey-color-light;
39 | margin-top: -2rem;
40 | max-width: $max-width;
41 | p {
42 | font-size: $small-font-size;
43 | }
44 | .site-intro {
45 | font-size: $big-font-size;
46 | }
47 | }
48 |
49 | .smallcap {
50 | //text-transform: lowercase;
51 | //font-variant: small-caps;
52 | font-size: 1.5rem;
53 | font-weight: bold;
54 |
55 | a,
56 | a:hover {
57 | text-decoration: none;
58 | letter-spacing: 2px;
59 | background-color: #333;
60 | color: #eee;
61 | padding-left: 0.5rem;
62 | padding-right: 0.5rem;
63 | padding-top: 0.2rem;
64 | padding-bottom: 0.2rem;
65 | }
66 | }
67 | /**
68 | * Page content
69 | */
70 | .page-content {
71 | position: relative;
72 | padding: $spacing-unit ($spacing-unit * 0.75);
73 | margin: 1rem;
74 | box-sizing: border-box;
75 | max-width: $max-width;
76 | }
77 | /**
78 | * Pages
79 | */
80 | .home {
81 | section + section {
82 | margin-top: $spacing-unit;
83 | max-width: $max-width;
84 | }
85 | }
86 |
87 | .post-list > li {
88 | margin-bottom: $spacing-unit / 4;
89 | list-style-type: none;
90 | margin-left: -2rem;
91 |
92 | a {
93 | color: $text-color;
94 | text-decoration: none;
95 | font-weight: normal;
96 |
97 | &:hover {
98 | color: $link-color;
99 | text-decoration: underline;
100 | }
101 | }
102 |
103 | time {
104 | font-size: $small-font-size;
105 | color: $grey-color;
106 | display: inline-block;
107 | }
108 | @include media-query($on-palm) {
109 | time {
110 | display: block;
111 | font-size: $small-font-size;
112 | }
113 | }
114 | }
115 |
116 | .tag-title {
117 | color: $link-color;
118 | }
119 | /**
120 | * Posts
121 | */
122 | .post-header {
123 | margin-bottom: $spacing-unit;
124 | }
125 |
126 | .post-title {
127 | font-size: 2rem;
128 | letter-spacing: -1px;
129 | line-height: 1.2;
130 | margin-bottom: 0.5rem;
131 | font-weight: bold;
132 | }
133 |
134 | .post-meta {
135 | font-size: $small-font-size;
136 | font-family: $code-font-family;
137 | color: $grey-color;
138 | a, a:visited {
139 | color: $grey-color-dark;
140 | }
141 | .tags {
142 | a, a:visited {
143 | background: $grey-color-light;
144 | padding: 0.1rem 0.5rem;
145 | }
146 | }
147 | }
148 |
149 | .post-content {
150 | margin-bottom: $spacing-unit;
151 | font-weight: normal;
152 |
153 | h1,
154 | h2,
155 | h3,
156 | h4,
157 | h5,
158 | h6 {
159 | margin-top: 2rem;
160 | font-weight: normal;
161 | }
162 |
163 | h1,
164 | h2 {
165 | font-size: 2rem;
166 | }
167 |
168 | h3 {
169 | font-size: 1.5rem;
170 | }
171 |
172 | h4 {
173 | font-size: 1.25rem;
174 | }
175 |
176 | h5,
177 | h6 {
178 | font-size: 1rem;
179 | }
180 | }
181 |
182 | .copyright {
183 | margin-top: $spacing-unit;
184 | font-size: $small-font-size;
185 | font-family: $code-font-family;
186 | p {
187 | color: $grey-color;
188 | a, a:visited {
189 | color: $grey-color-dark;
190 | }
191 | }
192 | }
193 |
--------------------------------------------------------------------------------
/_sass/_syntax-highlighting.scss:
--------------------------------------------------------------------------------
1 | /* Solarized Light
2 |
3 | For use with Jekyll and Pygments
4 |
5 | http://ethanschoonover.com/solarized
6 |
7 | SOLARIZED HEX ROLE
8 | --------- -------- ------------------------------------------
9 | base01 #586e75 body text / default code / primary content
10 | base1 #93a1a1 comments / secondary content
11 | base3 #fdf6e3 background
12 | orange #cb4b16 constants
13 | red #dc322f regex, special keywords
14 | blue #268bd2 reserved keywords
15 | cyan #2aa198 strings, numbers
16 | green #859900 operators, other keywords
17 | */
18 |
19 | .highlight {
20 | background-color: #fcfcfc;
21 | color: #586e75;
22 | .c { color: #93a1a1 } /* Comment */
23 | .err{ color: #586e75 } /* Error */
24 | .g{ color: #586e75 } /* Generic */
25 | .k{ color: #859900 } /* Keyword */
26 | .l{ color: #586e75 } /* Literal */
27 | .n{ color: #586e75 } /* Name */
28 | .o{ color: #859900 } /* Operator */
29 | .x{ color: #cb4b16 } /* Other */
30 | .p{ color: #586e75 } /* Punctuation */
31 | .cm{ color: #93a1a1 } /* Comment.Multiline */
32 | .cp{ color: #859900 } /* Comment.Preproc */
33 | .c1{ color: #93a1a1 } /* Comment.Single */
34 | .cs{ color: #859900 } /* Comment.Special */
35 | .gd{ color: #2aa198 } /* Generic.Deleted */
36 | .ge{ color: #586e75; font-style: italic } /* Generic.Emph */
37 | .gr{ color: #dc322f } /* Generic.Error */
38 | .gh{ color: #cb4b16 } /* Generic.Heading */
39 | .gi{ color: #859900 } /* Generic.Inserted */
40 | .go{ color: #586e75 } /* Generic.Output */
41 | .gp{ color: #586e75 } /* Generic.Prompt */
42 | .gs{ color: #586e75; font-weight: bold } /* Generic.Strong */
43 | .gu{ color: #cb4b16 } /* Generic.Subheading */
44 | .gt{ color: #586e75 } /* Generic.Traceback */
45 | .kc{ color: #cb4b16 } /* Keyword.Constant */
46 | .kd{ color: #268bd2 } /* Keyword.Declaration */
47 | .kn{ color: #859900 } /* Keyword.Namespace */
48 | .kp{ color: #859900 } /* Keyword.Pseudo */
49 | .kr{ color: #268bd2 } /* Keyword.Reserved */
50 | .kt{ color: #dc322f } /* Keyword.Type */
51 | .ld{ color: #586e75 } /* Literal.Date */
52 | .m{ color: #2aa198 } /* Literal.Number */
53 | .s{ color: #2aa198 } /* Literal.String */
54 | .na{ color: #586e75 } /* Name.Attribute */
55 | .nb{ color: #B58900 } /* Name.Builtin */
56 | .nc{ color: #268bd2 } /* Name.Class */
57 | .no{ color: #cb4b16 } /* Name.Constant */
58 | .nd{ color: #268bd2 } /* Name.Decorator */
59 | .ni{ color: #cb4b16 } /* Name.Entity */
60 | .ne{ color: #cb4b16 } /* Name.Exception */
61 | .nf{ color: #268bd2 } /* Name.Function */
62 | .nl{ color: #586e75 } /* Name.Label */
63 | .nn{ color: #586e75 } /* Name.Namespace */
64 | .nx{ color: #586e75 } /* Name.Other */
65 | .py{ color: #586e75 } /* Name.Property */
66 | .nt{ color: #268bd2 } /* Name.Tag */
67 | .nv{ color: #268bd2 } /* Name.Variable */
68 | .ow{ color: #859900 } /* Operator.Word */
69 | .w{ color: #586e75 } /* Text.Whitespace */
70 | .mf{ color: #2aa198 } /* Literal.Number.Float */
71 | .mh{ color: #2aa198 } /* Literal.Number.Hex */
72 | .mi{ color: #2aa198 } /* Literal.Number.Integer */
73 | .mo{ color: #2aa198 } /* Literal.Number.Oct */
74 | .sb{ color: #93a1a1 } /* Literal.String.Backtick */
75 | .sc{ color: #2aa198 } /* Literal.String.Char */
76 | .sd{ color: #586e75 } /* Literal.String.Doc */
77 | .s2{ color: #2aa198 } /* Literal.String.Double */
78 | .se{ color: #cb4b16 } /* Literal.String.Escape */
79 | .sh{ color: #586e75 } /* Literal.String.Heredoc */
80 | .si{ color: #2aa198 } /* Literal.String.Interpol */
81 | .sx{ color: #2aa198 } /* Literal.String.Other */
82 | .sr{ color: #dc322f } /* Literal.String.Regex */
83 | .s1{ color: #2aa198 } /* Literal.String.Single */
84 | .ss{ color: #2aa198 } /* Literal.String.Symbol */
85 | .bp{ color: #268bd2 } /* Name.Builtin.Pseudo */
86 | .vc{ color: #268bd2 } /* Name.Variable.Class */
87 | .vg{ color: #268bd2 } /* Name.Variable.Global */
88 | .vi{ color: #268bd2 } /* Name.Variable.Instance */
89 | .il{ color: #2aa198 } /* Literal.Number.Integer.Long */
90 | }
91 |
--------------------------------------------------------------------------------
/about.md:
--------------------------------------------------------------------------------
1 | ---
2 | layout: page
3 | title: About
4 | ---
5 |
6 | Introduce yourself here... so people will know who you are and what you do.. blah..blah..blah..
7 |
--------------------------------------------------------------------------------
/categories.html:
--------------------------------------------------------------------------------
1 | ---
2 | layout: default
3 | title: Categories
4 | ---
5 |
6 |
7 |
8 | {{ site.title }}
9 | All categories posts will be sorted here.
10 |
11 |
12 |
13 | {% for tag in site.categories %}
14 | {{ tag[0] }}
15 |
16 | {% for post in tag[1] %}
17 |
18 | -
19 | {{ post.title }},
20 |
21 |
22 |
23 | {% endfor %}
24 |
25 | {% endfor %}
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/css/main.scss:
--------------------------------------------------------------------------------
1 | ---
2 | # Only the main Sass file needs front matter (the dashes are enough)
3 | ---
4 | @charset "utf-8";
5 |
6 | // Our variables
7 | $base-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
8 | $code-font-family: Inconsolata, Monaco, Consolas, monospace;
9 | $base-font-size: 16px;
10 | $base-font-weight: 300;
11 | $small-font-size: 0.875rem;
12 | $big-font-size: 1.3rem;
13 | $base-line-height: 1.5;
14 |
15 | $spacing-unit: 2rem;
16 | $max-width: 48rem;
17 |
18 | $text-color: #333;
19 | $background-color: #fff;
20 | $link-color: #0645ad;
21 |
22 | $grey-color: #aaa;
23 | $grey-color-light: lighten($grey-color, 25%);
24 | $grey-color-dark: darken($grey-color, 25%);
25 |
26 | // Width of the content area
27 | $on-palm: 600px;
28 | $on-: 800px;
29 |
30 | // Use media queries like this:
31 | // @include media-query($on-palm) {
32 | // .wrapper {
33 | // padding-right: $spacing-unit / 2;
34 | // padding-left: $spacing-unit / 2;
35 | // }
36 | // }
37 | @mixin media-query($device) {
38 | @media screen and (max-width: $device) {
39 | @content;
40 | }
41 | }
42 |
43 | // Import partials from `sass_dir` (defaults to `_sass`)
44 | @import
45 | "base",
46 | "layout",
47 | "syntax-highlighting"
48 | ;
49 |
--------------------------------------------------------------------------------
/feed.xml:
--------------------------------------------------------------------------------
1 | ---
2 | layout: null
3 | ---
4 |
5 |
6 |
7 | {{ site.title | xml_escape }}
8 | {{ site.description | xml_escape }}
9 | {{ site.url }}{{ site.baseurl }}/
10 |
11 | {{ site.time | date_to_rfc822 }}
12 | {{ site.time | date_to_rfc822 }}
13 | Jekyll v{{ jekyll.version }}
14 | {% for post in site.posts limit:10 %}
15 | -
16 |
{{ post.title | xml_escape }}
17 | {{ post.content | xml_escape }}
18 | {{ post.date | date_to_rfc822 }}
19 | {{ post.url | prepend: site.baseurl | prepend: site.url }}
20 | {{ post.url | prepend: site.baseurl | prepend: site.url }}
21 | {% for tag in post.tags %}
22 | {{ tag | xml_escape }}
23 | {% endfor %}
24 | {% for cat in post.categories %}
25 | {{ cat | xml_escape }}
26 | {% endfor %}
27 |
28 | {% endfor %}
29 |
30 |
31 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 | ---
2 | layout: default
3 | ---
4 |
5 |
6 | {{ site.title }}
7 | {% include nav.html %}
8 | {% include intro.html %}
9 |
10 |
11 |
12 | {% for post in site.posts %}
13 | -
14 | {{ post.title }}
15 |
16 | {% endfor %}
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/renovate.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3 | "extends": [
4 | "local>heiswayi/renovate-config"
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/script/cibuild.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 | set -e # halt script on error
3 |
4 | bundle exec jekyll build
5 | bundle exec htmlproofer ../_site --disable-external
6 |
--------------------------------------------------------------------------------
/tagged.html:
--------------------------------------------------------------------------------
1 | ---
2 | layout: default
3 | title: Tagged
4 | ---
5 |
6 | {% assign rawtags = "" %}
7 | {% for post in site.posts %}
8 | {% assign ttags = post.tags | join:'|' | append:'|' %}
9 | {% assign rawtags = rawtags | append:ttags %}
10 | {% endfor %}
11 | {% assign rawtags = rawtags | split:'|' | sort %}
12 |
13 | {% assign tags = "" %}
14 | {% for tag in rawtags %}
15 | {% if tag != "" %}
16 | {% if tags == "" %}
17 | {% assign tags = tag | split:'|' %}
18 | {% endif %}
19 | {% unless tags contains tag %}
20 | {% assign tags = tags | join:'|' | append:'|' | append:tag | split:'|' %}
21 | {% endunless %}
22 | {% endif %}
23 | {% endfor %}
24 |
25 |
26 |
27 | {{ site.title }}
28 | All tagged posts will be sorted here.
29 |
30 |
31 |
32 | {% for tag in tags %}
33 | # {{ tag }}
34 |
35 | {% for post in site.posts %}
36 | {% if post.tags contains tag %}
37 | -
38 | {{ post.title }}
39 |
40 | {% endif %}
41 | {% endfor %}
42 |
43 | {% endfor %}
44 |
45 |
46 |
47 |
--------------------------------------------------------------------------------
/textlog.gemspec:
--------------------------------------------------------------------------------
1 | Gem::Specification.new do |spec|
2 | spec.name = "textlog"
3 | spec.version = "1.5.0"
4 | spec.authors = ["Heiswayi Nrird"]
5 | spec.email = ["heiswayi@nullableobject.com"]
6 |
7 | spec.summary = "A minimalist, lefty-style Jekyll theme for documentation based blog"
8 | spec.homepage = "https://github.com/heiswayi/textlog"
9 | spec.license = "MIT"
10 |
11 | spec.metadata["plugin_type"] = "theme"
12 |
13 | spec.files = `git ls-files -z`.split("\x0").select { |f| f.match(%r!^(assets|_layouts|_includes|_sass|(LICENSE|README)((\.(txt|md|markdown)|$)))!i) }
14 |
15 | spec.add_runtime_dependency "jekyll", [">= 3.5", "< 5.0"]
16 |
17 | spec.add_development_dependency "bundler", "~> 1.15"
18 | spec.add_development_dependency "rake", "~> 12.0"
19 | end
20 |
--------------------------------------------------------------------------------