├── exampleSite ├── content │ ├── homepage │ │ ├── index.md │ │ ├── about.md │ │ └── work.md │ ├── _index.md │ ├── archives.md │ ├── post │ │ ├── _index.md │ │ ├── rich-content.md │ │ ├── emoji-support.md │ │ ├── math-typesetting.mmark │ │ ├── placeholder-text.md │ │ └── markdown-syntax.md │ └── about.md └── config.toml ├── layouts ├── shortcodes │ ├── spoiler.html │ └── bilibili.html ├── index.html ├── page │ └── single.html ├── partials │ ├── css.html │ ├── utteranc.html │ ├── home_profile.html │ ├── footer.html │ ├── wechat.html │ ├── gitalk.html │ ├── paginator.html │ ├── seo_schema.html │ ├── head.html │ ├── js.html │ ├── social.html │ ├── home_post.html │ └── header.html ├── _default │ ├── baseof.html │ ├── posts.html │ ├── list.html │ ├── terms.html │ └── single.html ├── 404.html ├── sitemap.xml ├── index.atom.xml ├── robots.txt └── rss.xml ├── images ├── nt.png ├── KaTeX.png ├── Screenshot.png └── PlantUML.svg ├── .gitignore ├── .github ├── linters │ └── .markdown-lint.yml └── workflows │ └── linter.yml ├── archetypes └── default.md ├── assets ├── css │ ├── main.scss │ ├── _common │ │ ├── _partials │ │ │ ├── navbar.scss │ │ │ ├── tags.scss │ │ │ ├── home.scss │ │ │ ├── home_post.scss │ │ │ ├── terms.scss │ │ │ ├── pagination.scss │ │ │ ├── footer.scss │ │ │ └── post.scss │ │ └── _core │ │ │ ├── layout.scss │ │ │ ├── base.scss │ │ │ ├── normalize.scss │ │ │ └── media.scss │ └── _variables │ │ └── default.scss └── js │ └── main.js ├── theme.toml ├── LICENSE └── README.md /exampleSite/content/homepage/index.md: -------------------------------------------------------------------------------- 1 | --- 2 | headless : true 3 | --- 4 | -------------------------------------------------------------------------------- /layouts/shortcodes/spoiler.html: -------------------------------------------------------------------------------- 1 | {{.Inner}} -------------------------------------------------------------------------------- /exampleSite/content/_index.md: -------------------------------------------------------------------------------- 1 | +++ 2 | author = "Hugo Authors" 3 | +++ 4 | 5 | -------------------------------------------------------------------------------- /images/nt.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mogeko/mogege/HEAD/images/nt.png -------------------------------------------------------------------------------- /images/KaTeX.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mogeko/mogege/HEAD/images/KaTeX.png -------------------------------------------------------------------------------- /images/Screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mogeko/mogege/HEAD/images/Screenshot.png -------------------------------------------------------------------------------- /exampleSite/content/archives.md: -------------------------------------------------------------------------------- 1 | --- 2 | date: 2019-05-28 3 | type: section 4 | layout: "archives" 5 | --- -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | *.exe 2 | *.exe~ 3 | *.dll 4 | *.so 5 | *.dylib 6 | *.test 7 | 8 | exampleSite/public/* 9 | exampleSite/resources/_gen/* -------------------------------------------------------------------------------- /.github/linters/.markdown-lint.yml: -------------------------------------------------------------------------------- 1 | { 2 | "default": true, 3 | "MD001": false, 4 | "MD013": false, 5 | "MD026": false, 6 | "MD033": false 7 | } 8 | -------------------------------------------------------------------------------- /exampleSite/content/post/_index.md: -------------------------------------------------------------------------------- 1 | +++ 2 | aliases = ["posts","articles","blog","showcase","docs"] 3 | title = "Posts" 4 | author = "Hugo Authors" 5 | tags = ["index"] 6 | +++ 7 | -------------------------------------------------------------------------------- /layouts/index.html: -------------------------------------------------------------------------------- 1 | {{ define "content" }} 2 | {{ if eq .Site.Params.home_mode "post" }} 3 | {{ partial "home_post.html" . }} 4 | {{ else }} 5 | {{ partial "home_profile.html" . }} 6 | {{ end }} 7 | {{ end }} 8 | -------------------------------------------------------------------------------- /exampleSite/content/homepage/about.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: 'Our Difference' 3 | button: 'About us' 4 | weight: 2 5 | --- 6 | 7 | Lorem ipsum dolor sit amet, et essent mediocritatem quo, choro volumus oporteat an mei. ipsum dolor sit amet, et essent mediocritatem quo, -------------------------------------------------------------------------------- /layouts/page/single.html: -------------------------------------------------------------------------------- 1 | {{ define "content" }} 2 |
/* 404 page not found. */
5 | 6 |🙈 :see_no_evil: 🙉 :hear_no_evil: 🙊 :speak_no_evil:
Test
86 | 87 | 88 | ``` 89 | #### Code block indented with four spaces 90 | 91 | 92 | 93 | 94 | 95 |Test
99 | 100 | 101 | 102 | #### Code block with Hugo's internal highlight shortcode 103 | {{< highlight html >}} 104 | 105 | 106 | 107 | 108 |Test
112 | 113 | 114 | {{< /highlight >}} 115 | 116 | ## List Types 117 | 118 | #### Ordered List 119 | 120 | 1. First item 121 | 2. Second item 122 | 3. Third item 123 | 124 | #### Unordered List 125 | 126 | * List item 127 | * Another item 128 | * And another item 129 | 130 | #### Nested list 131 | 132 | * Item 133 | 1. First Sub-item 134 | 2. Second Sub-item 135 | 136 | ## Other Elements — abbr, sub, sup, kbd, mark 137 | 138 | GIF is a bitmap image format. 139 | 140 | H2O 141 | 142 | Xn + Yn = Zn 143 | 144 | Press CTRL+ALT+Delete to end the session. 145 | 146 | Most salamanders are nocturnal, and hunt for insects, worms, and other small creatures. 147 | 148 | -------------------------------------------------------------------------------- /assets/css/_common/_partials/footer.scss: -------------------------------------------------------------------------------- 1 | /**Footer**/ 2 | 3 | .copyright { 4 | font-size: 14px; 5 | } 6 | 7 | #dynamic-to-top { 8 | display: none; 9 | overflow: hidden; 10 | width: auto; 11 | z-index: 90; 12 | position: fixed; 13 | bottom: 2em; 14 | right: 2em; 15 | top: auto; 16 | left: auto; 17 | font-family: sans-serif; 18 | font-size: 1em; 19 | color: #fff; 20 | text-decoration: none; 21 | text-shadow: 0 1px 0 #333; 22 | font-weight: bold; 23 | padding: 17px 16px; 24 | border: 1px solid $light-border-color; 25 | background: #222; 26 | &:hover { 27 | background: #000; 28 | cursor: pointer; 29 | } 30 | &:active { 31 | background: #000; 32 | outline: none; 33 | } 34 | outline: none; 35 | &:focus, &:hover { 36 | outline: none; 37 | } 38 | span { 39 | display: block; 40 | overflow: hidden; 41 | width: 14px; 42 | height: 12px; 43 | background: url('data:image/png;base64,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') no-repeat center center; 44 | } 45 | 46 | .dark-theme &{ 47 | border: 1px solid $dark-border-color; 48 | } 49 | } -------------------------------------------------------------------------------- /layouts/_default/single.html: -------------------------------------------------------------------------------- 1 | {{ define "content" }} 2 |53 | Author: 54 | {{ . }} 55 |
56 | {{ end }} 57 | 58 | {{ with .Permalink }} 59 |60 | Link: 61 | {{ . }} 62 |
63 | {{ end }} 64 | {{ with .Site.Params.license }} 65 |66 | {{ . | safeHTML}} 67 |
68 | {{ end }} 69 |142 | ```plantuml 143 | PlantUML syntax 144 | ``` 145 |146 | 147 | For example: 148 | 149 | ```plantuml 150 | @startuml 151 | Bob -> Alice : hello 152 | 153 | create Other 154 | Alice -> Other : new 155 | 156 | create control String 157 | Alice -> String 158 | note right : You can also put notes! 159 | 160 | Alice --> Bob : ok 161 | 162 | @enduml 163 | ``` 164 | 165 |  166 | 167 | ## Embedded BiliBili video 168 | 169 | You can embed BiliBili videos via Shortcodes, just provide the AV 号/BV 号 of 170 | the bilibili video 171 | 172 | You can also use the PV 号 to control the 分 P (default: `1`) 173 | 174 | ```txt 175 | {{< bilibili [AV号/BV号] [PV号] >}} 176 | ``` 177 | 178 | Click [here](https://mogeko.github.io/2020/079#biliplayer) for examples 179 | 180 | ## Hidden text 181 | 182 | You can use "hidden text" to hide spoiler content 183 | 184 | ```txt 185 | {{< spoiler >}} HIDDEN TEXT {{< /spoiler >}} 186 | ``` 187 | 188 | Click [here](https://mogeko.github.io/2020/080#spoiler) for examples 189 | 190 | ## utteranc comment system 191 | 192 | This blog supports the 193 | [utteranc](https://utteranc.es) comment system. 194 | 195 | It is lighter and more powerful than Gitalk. 196 | 197 | To use utteranc, you need make sure the 198 | [utterances app](https://github.com/apps/utterances) is 199 | installed on the repo, otherwise users will not be able to post comments. 200 | 201 | Then enable utteranc in config.toml 202 | 203 | ```toml 204 | [params] 205 | enableUtteranc = true 206 | ``` 207 | 208 | Then Configuration: (For more settings, please refer to 209 | [HomePage](https://utteranc.es)) 210 | 211 | ```toml 212 | [params.utteranc] # Homepage: https://utteranc.es 213 | repo = "" # The repo to store comments 214 | issueTerm = "title" # the mapping between blog posts and GitHub issues. 215 | theme = "preferred-color-scheme" # Theme 216 | crossorigin = "anonymous" # default: anonymous 217 | ``` 218 | 219 | ## Gitalk comment system 220 | 221 | This blog supports the [gitalk](https://github.com/gitalk/gitalk) comment 222 | system. To use gitalk, you need to apply for a Github Application. For details, 223 | please refer to 224 | [here](https://mogeko.me/2018/024/#%E5%88%9B%E5%BB%BA-github-application). 225 | 226 | Then enable gitalk in config.toml 227 | 228 | ```toml 229 | [params] 230 | enableGitalk = true 231 | ``` 232 | 233 | Then provide your `Client ID` and `Client Secret` from Github Application in 234 | config.toml 235 | 236 | ```toml 237 | [params.gitalk] # Github: https://github.com/gitalk/gitalk 238 | clientID = "[Client ID]" # Your client ID 239 | clientSecret = "[Client Secret]" # Your client secret 240 | repo = "" # The repo to store comments 241 | owner = "" # Your GitHub ID 242 | admin= "" # Required. Github repository owner and collaborators. (Users who having write access to this repository) 243 | id= "location.pathname" # The unique id of the page. 244 | labels= "gitalk" # Github issue labels. If you used to use Gitment, you can change it 245 | perPage= 15 # Pagination size, with maximum 100. 246 | pagerDirection= "last" # Comment sorting direction, available values are 'last' and 'first'. 247 | createIssueManually= true # If it is 'false', it is auto to make a Github issue when the administrators login. 248 | distractionFreeMode= false # Enable hot key (cmd|ctrl + enter) submit comment. 249 | ``` 250 | 251 | ## Custom CSS/JavaScript 252 | 253 | Support custom CSS or JavaScript 254 | 255 | Place your custom CSS and JavaScript files in the `/static/css` and `/static/js` 256 | directories of your blog, respectively 257 | 258 | ```txt 259 | static 260 | ├── css 261 | │ └── _custom.css 262 | └── js 263 | └── _custom.js 264 | ``` 265 | 266 | Then edit in `config.toml`: 267 | 268 | ```toml 269 | [params.custom] 270 | css = ["css/_custom.css"] 271 | js = ["js/_custom.js"] 272 | ``` 273 | 274 | > Currently only supports CSS does not support Sass 275 | 276 | ## Configuration 277 | 278 | There are few configuration options you can add to your `config.toml` file. 279 | 280 | ```toml 281 | baseURL = "" # 里面的 baseurl 信息,填你的博客地址 282 | title = "" # 浏览器的标题 283 | languageCode = "zh-cn" # 语言 284 | hasCJKLanguage = true # 开启可以让「字数统计」统计汉字 285 | theme = "mogege" # 主题 286 | 287 | paginate = 11 # 每页的文章数 288 | enableEmoji = true # 支持 Emoji 289 | enableRobotsTXT = true # 支持 robots.txt 290 | 291 | 292 | preserveTaxonomyNames = true 293 | 294 | [blackfriday] 295 | hrefTargetBlank = true 296 | nofollowLinks = true 297 | noreferrerLinks = true 298 | 299 | [Permalinks] 300 | posts = "/:year/:filename/" 301 | 302 | [menu] 303 | [[menu.main]] 304 | name = "Blog" 305 | url = "/post/" 306 | weight = 1 307 | 308 | [[menu.main]] 309 | name = "Categories" 310 | url = "/categories/" 311 | weight = 2 312 | 313 | [[menu.main]] 314 | name = "Tags" 315 | url = "/tags/" 316 | weight = 3 317 | 318 | [[menu.main]] 319 | name = "About" 320 | url = "/about/" 321 | weight = 4 322 | 323 | [params] 324 | since = 325 | author = "" # Author's name 326 | avatar = "/images/me/avatar.jpg" # Author's avatar 327 | subtitle = "" # Subtitle 328 | home_mode = "" # post or other 329 | enableGitalk = true # gitalk 评论系统 330 | 331 | google_verification = "" 332 | 333 | description = "" # (Meta) 描述 334 | keywords = "" # site keywords 335 | 336 | beian = "" 337 | baiduAnalytics = "" 338 | googleAnalytics = "" # Google 统计 id 339 | 340 | license= '本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可' 341 | 342 | [params.gitalk] # Github: https://github.com/gitalk/gitalk 343 | clientID = "" # Your client ID 344 | clientSecret = "" # Your client secret 345 | repo = "" # The repo to store comments 346 | owner = "" # Your GitHub ID 347 | admin= "" # Required. Github repository owner and collaborators. (Users who having write access to this repository) 348 | id= "location.pathname" # The unique id of the page. 349 | labels= "gitalk" # Github issue labels. If you used to use Gitment, you can change it 350 | perPage= 15 # Pagination size, with maximum 100. 351 | pagerDirection= "last" # Comment sorting direction, available values are 'last' and 'first'. 352 | createIssueManually= true # If it is 'false', it is auto to make a Github issue when the administrators login. 353 | distractionFreeMode= false # Enable hot key (cmd|ctrl + enter) submit comment. 354 | 355 | ``` 356 | 357 | --- 358 | 359 | > The name of this project comes from the game 360 | > [_Mogeko Castle_](https://okegom.fandom.com/wiki/Mogeko_Castle), and the 361 | > [author](https://github.com/Mogeko)'s name also comes from this game. (this is 362 | > another story) 363 | --------------------------------------------------------------------------------