Welcome to mirror list, hosted at ThFree Co, Russian Federation.

README.md - github.com/reuixiy/hugo-theme-meme.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: d7fcc32cfbdfd5af29cdcfd7b51faef2870b54c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
English |
[简体中文](https://github.com/reuixiy/hugo-theme-meme/blob/master/README.zh-cn.md) |
[繁體中文](https://github.com/reuixiy/hugo-theme-meme/blob/master/README.zh-tw.md)

<div align="center"><img src="https://raw.githubusercontent.com/reuixiy/hugo-theme-meme/master/static/icons/apple-touch-icon.png" /></div>

# <div align="center">MemE</div>

## Description

MemE is a powerful and highly customizable [GoHugo](https://github.com/gohugoio/hugo) theme for personal blogs. MemE focuses on elegance, simplicity, modernity, and code correctness. Also, I hope you would enjoy MemE like a meme and share MemE like a meme! Just like what your blog and articles do! 😝

## Preview

[![tn.png](https://raw.githubusercontent.com/reuixiy/hugo-theme-meme/master/images/tn.png)](https://io-oi.me/hugo-theme-meme/)

### Browser support

MemE uses [CSS variables](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties) and [let statements](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let) extensively. These features are supported by the following browsers:

- Chrome 49+
- Firefox 44+
- Edge 15+
- Opera 36+
- Safari 10+

Internet Explorer does not support CSS variables.

## Quick Start

https://gohugo.io/getting-started/quick-start/

### Install Hugo (`extended` version)

For Arch Linux users:

```sh
~ $ sudo pacman -S hugo
~ $ hugo new site blog
```

For users of other systems, see: https://gohugo.io/getting-started/installing/

### Install MemE

```sh
~ $ cd blog
~/blog $ git init
~/blog $ git submodule add --depth 1 https://github.com/reuixiy/hugo-theme-meme.git themes/meme
```

### Blogging

1. Replace `config.toml` with [config examples](https://github.com/reuixiy/hugo-theme-meme/blob/master/config-examples/en/config.toml).

   ```sh
   ~/blog $ rm config.toml && cp themes/meme/config-examples/en/config.toml config.toml
   ```

2. Create a new post and the about page:

   ```sh
   ~/blog $ hugo new "posts/hello-world.md"
   ~/blog $ hugo new "about/_index.md"
   ```

3. Now:

   ```sh
   ~/blog $ hugo server -D
   ```

## Customize MemE

MemE uses SCSS via [Hugo Pipes](https://gohugo.io/hugo-pipes/introduction/) to generate CSS instead of static CSS file and provides a [`_custom.scss`](https://github.com/reuixiy/hugo-theme-meme/blob/master/assets/scss/custom/_custom.scss) for customization.

Just create a `~/blog/assets/scss/custom/_custom.scss` and add your own styles into this file. Your `_custom.scss` will override `~/blog/themes/meme/assets/scss/custom/_custom.scss` and your custom CSS will be applied correctly.

Actually, you can override any template of theme in Hugo, see this _unofficial mirror_ page: https://gohugobrasil.netlify.com/themes/customizing/

## Update MemE

```sh
~/blog $ git submodule update --rebase --remote
```

If failed, try:

1. Delete `meme` folder, e.g.

   ```sh
   ~/blog $ rm -rf themes/meme
   ```

2. Clone MemE again

   ```sh
   ~/blog $ git clone --depth 1 https://github.com/reuixiy/hugo-theme-meme.git themes/meme
   ```

**Note that** MemE makes some brand new features or _breaking changes_ sometimes, so please be sure to check [the modification history of `config.toml`](https://github.com/reuixiy/hugo-theme-meme/commits/master/config-examples) and update the related items after the update!

## Awesome MemE

See [#2](https://github.com/reuixiy/hugo-theme-meme/issues/2).

## Supported Front Matter

<details>
  <summary>Click to expand!</summary>

  | Name                                        | Description                                                                                              | Notes                                                                        |
  | ------------------------------------------- | -------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
  | title                                       | \*                                                                                                       | string                                                                       |
  | linkTitle                                   | \*                                                                                                       | string                                                                       |
  | subtitle                                    | displayed below the title                                                                                | string, Markdown supported                                                   |
  | date                                        | \*                                                                                                       | string                                                                       |
  | lastmod                                     | \*                                                                                                       | string                                                                       |
  | publishDate                                 | \*                                                                                                       | string                                                                       |
  | expiryDate                                  | \*                                                                                                       | string                                                                       |
  | `<taxonomies>` eg: categories, tags, series | \*                                                                                                       | array                                                                        |
  | description                                 | \*                                                                                                       | string, Markdown supported                                                   |
  | summary                                     | \*                                                                                                       | string, Markdown supported                                                   |
  | images                                      | \*                                                                                                       | array                                                                        |
  | slug                                        | \*                                                                                                       | string                                                                       |
  | url                                         | \*                                                                                                       | string                                                                       |
  | draft                                       | \*                                                                                                       | boolean                                                                      |
  | isCJKLanguage                               | \*                                                                                                       | boolean                                                                      |
  | weight                                      | \*                                                                                                       | integer                                                                      |
  | type                                        | \*                                                                                                       | string, if equal to "poetry", will use a special layout for it               |
  | layout                                      | \*                                                                                                       | string                                                                       |
  | outputs                                     | \*                                                                                                       | array                                                                        |
  | aliases                                     | \*                                                                                                       | array                                                                        |
  | markup                                      | \*                                                                                                       | string                                                                       |
  | meta                                        | set `false` to disable post-meta                                                                         | boolean                                                                      |
  | toc                                         | display TOC                                                                                              | boolean, override `enableTOC` in `config.toml`                               |
  | tocNum                                      | display TOC number                                                                                       | boolean, override `displayTOCNum` in `config.toml`                           |
  | anchor                                      | enable headings anchor                                                                                   | boolean, override `enableHeadingsAnchor` in `config.toml`                    |
  | displayCopyright                            | display post-copyright                                                                                   | boolean, override `displayPostCopyright` in `config.toml`                    |
  | badge                                       | display updated-badge                                                                                    | boolean, override `displayUpdatedBadge` in `config.toml`                     |
  | gitinfo                                     | display post-gitinfo                                                                                     | boolean, override `displayPostGitInfo` in `config.toml`                      |
  | share                                       | display post-share                                                                                       | boolean, override `displayPostShare` in `config.toml`                        |
  | related                                     | display related-posts                                                                                    | boolean, override `displayRelatedPosts` in `config.toml`                     |
  | katex                                       | add KaTeX support                                                                                        | boolean, override `enableKaTeX` in `config.toml`                             |
  | mathjax                                     | add MathJax support                                                                                      | boolean, override `enableMathJax` in `config.toml`                           |
  | mermaid                                     | add Mermaid support                                                                                      | boolean, override `enableMermaid` in `config.toml`                           |
  | comments                                    | set `false` to disable comments in mainSections or set `true` to enable comments in non-mainSections     | boolean                                                                      |
  | smallCaps                                   | small caps?                                                                                              | boolean, override `enableSmallCaps` in `config.toml`                         |
  | dropCap                                     | drop cap?                                                                                                | boolean, override `enableDropCap` in `config.toml`                           |
  | dropCapAfterHr                              | drop cap after every horizontal rule tag?                                                                | boolean, override `enableDropCapAfterHr` in `config.toml`                    |
  | deleteHrBeforeDropCap                       | delete horizontal rule tag before drop cap?                                                              | boolean, override `deleteHrBeforeDropCap` in `config.toml`                   |
  | indent                                      | indent instead of margin?                                                                                | boolean, override `paragraphStyle` in `config.toml`                          |
  | indentFirstParagraph                        | indent the first paragraph?                                                                              | boolean, override `indentFirstParagraph` in `config.toml`                    |
  | align                                       | normal, justify, center                                                                                  | string, if equal to "normal", will override `enableJustify` in `config.toml` |
  | original                                    | original? You can add the following 8 terms if you set `false`. The `author` is required, other optional | boolean, override `original` in `config.toml`                                |
  | author                                      | author of original post                                                                                  | string                                                                       |
  | link                                        | link of original post                                                                                    | string, URL                                                                  |
  | copyright                                   | license of the post                                                                                      | string, Markdown supported                                                   |
  | website                                     | author’s website                                                                                         | string                                                                       |
  | email                                       | author’s email                                                                                           | string                                                                       |
  | motto                                       | author’s description                                                                                     | string                                                                       |
  | avatar                                      | author’s avatar                                                                                          | string, URL                                                                  |
  | twitter                                     | author’s twitter id                                                                                      | string                                                                       |
  | disqus_url                                  | \*                                                                                                       | string, if not set, will use `Permalink` as default                          |
  | disqus_identifier                           | \*                                                                                                       | string, if not set, will use `RelPermalink` as default                       |
  | disqus_title                                | \*                                                                                                       | string, if not set, will use `Title` as default                              |

  \*: see https://gohugo.io/content-management/front-matter/  
      and https://gohugo.io/templates/internal/#configure-disqus
</details>