[
  {
    "path": ".github/workflows/deploy.yml",
    "content": "# This workflow uses actions that are not certified by GitHub.\n# They are provided by a third-party and are governed by\n# separate terms of service, privacy policy, and support\n# documentation.\n\n# Sample workflow for building and deploying a Jekyll site to GitHub Pages\nname: deploy\n\non:\n  # Runs on pushes targeting the default branch\n  push:\n    branches: [\"main\"]\n\n  # Allows you to run this workflow manually from the Actions tab\n  workflow_dispatch:\n\n# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages\npermissions:\n  contents: read\n  pages: write\n  id-token: write\n\n# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.\n# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.\nconcurrency:\n  group: \"pages\"\n  cancel-in-progress: false\n\njobs:\n  # Build job\n  build:\n    runs-on: ubuntu-latest\n    steps:\n      - name: Checkout\n        uses: actions/checkout@v3\n      - name: Setup Ruby\n        uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0\n        with:\n          ruby-version: \"3.1\" # Not needed with a .ruby-version file\n          bundler-cache: true # runs 'bundle install' and caches installed gems automatically\n          cache-version: 0 # Increment this number if you need to re-download cached gems\n      - name: Setup Pages\n        id: pages\n        uses: actions/configure-pages@v3\n      - name: Build with Jekyll\n        # Outputs to the './_site' directory by default\n        run: bundle exec jekyll build --baseurl \"${{ steps.pages.outputs.base_path }}\"\n        env:\n          JEKYLL_ENV: production\n      - name: Upload artifact\n        # Automatically uploads an artifact from the './_site' directory by default\n        uses: actions/upload-pages-artifact@v2\n\n  # Deployment job\n  deploy:\n    environment:\n      name: github-pages\n      url: ${{ steps.deployment.outputs.page_url }}\n    runs-on: ubuntu-latest\n    needs: build\n    steps:\n      - name: Deploy to GitHub Pages\n        id: deployment\n        uses: actions/deploy-pages@v2\n"
  },
  {
    "path": ".gitignore",
    "content": "*.gem\n.bundle\n.jekyll-cache\n.sass-cache\n_site\nGemfile.lock\n\n.DS_Store\n"
  },
  {
    "path": "Gemfile",
    "content": "# frozen_string_literal: true\n\nsource \"https://rubygems.org\"\ngemspec\ngem 'wdm', '>= 0.1.0' if Gem.win_platform?\n"
  },
  {
    "path": "LICENSE.txt",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2019 huangyz0918\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n"
  },
  {
    "path": "README.md",
    "content": "# moving\n\n[![Gem Version](https://badge.fury.io/rb/moving.svg)](https://badge.fury.io/rb/moving) ![](https://img.shields.io/gem/dt/moving)\n\nMoving is a clean and minimalist theme for [Jekyll](https://jekyllrb.com/), focusing on pure and efficient writing. [[view demo]](https://huangyz.name/moving/)\n\n\n![](./.github/banner.png)\n\nIf you enjoy this theme, you can buy me a coffee : )\n\n[![Support via PayPal](https://cdn.jsdelivr.net/gh/twolfson/paypal-github-button@1.0.0/dist/button.svg)](https://www.paypal.me/huangyz0918)\n\n## Installation\n\n### New Blog\n\nIf you want to create a new blog using moving. You can follow these steps after setting up the [Jekyll](https://jekyllrb.com) environments:\n\nClone this repository:\n\n```bash\ngit clone https://github.com/huangyz0918/moving.git\n```\n\nMove into that directory:\n\n```bash\ncd moving/\n```\n\nInstall required gems using `bundle`:\n\n```bash\nbundle install\n```\n\nRun the blog in localhost\n\n```bash\njekyll serve\n```\n\nOnce you successfully run the moving blog, you can modify the theme and add posts by yourself, have fun!\n\n### Add Moving to an Existing Blog\n\nAdd this line to your Jekyll site's `Gemfile`:\n\n```ruby\ngem \"moving\"\n```\n\nAnd add this line to your Jekyll site's `_config.yml`:\n\n```yaml\ntheme: moving\n```\n\nAnd then execute:\n\n    $ bundle\n\nOr install it yourself as:\n\n    $ gem install moving\n\n### Deploy to Github Pages\n\n:warning: If you want to publish your site in [Github Pages](https://pages.github.com/). Change `theme: xxx` in `_config.yml` to `remote_theme: huangyz0918/moving` then push to your github repo (this is important, or you will get an error from github pages that not support the moving theme). If you want to test your site locally, you can change that to `theme: moving` and build again.\n\nHere is an [example](https://github.com/huangyz0918/personal-page-blog) for Github Pages.\n\n## Usage\n\nYou can modify the `_config.yml` to custom your blog. An example is if you want to change the back button's text in each post, you can change the `back_to`.\n\n```yaml\ntitle: Moving # The title of the blog\nauthor: Your Name # Your name\nemail: your-email@domain.com # your email shown in the footer\nurl: https://huangyz.name/moving/ # this is your site's root address.\ndescription: > # this means to ignore newlines until \"show_excerpts:\"\n  A clean and minimalist theme for Jekyll.\nfavicon: \"./favicon.ico\" # set the favicon of the site\nshow_excerpts: false # set to true to show excerpts on the homepage\n\n# Moving date format\n# refer to https://shopify.github.io/liquid/filters/date/ if you want to customize this\nmoving:\n  avatar_url: \"https://i.loli.net/2019/08/26/JzCLhDWPEybZr2T.jpg\" # avatar in about page\n  about_you: a short description about you. # short description about you in about page\n  date_format: \"%b %d\" # date format of posts in home page\n  back_to: \"Home\" # In the post page, you have a back button above the title, you can custom the text by yourself.\n\n# Build settings\ntheme: moving # note, please use huangyz0918/moving if you want to publish to Github Pages.\n```\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at [here](https://github.com/huangyz0918/moving). This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.\n\n## Development\n\nTo set up your environment to develop this theme, run `bundle install`.\n\nYour theme is setup just like a normal Jekyll site! To test your theme, run `bundle exec jekyll serve` and open your browser at `http://localhost:4000`. This starts a Jekyll server using your theme. Add pages, documents, data, etc. like normal to test your theme's contents. As you make modifications to your theme and to your content, your site will regenerate and you should see the changes in the browser after a refresh, just like normal.\n\nWhen your theme is released, only the files in `_layouts`, `_includes`, `_sass` and `assets` tracked with Git will be bundled.\nTo add a custom directory to your theme-gem, please edit the regexp in `moving.gemspec` accordingly.\n\n## License\n\nThe theme is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).\n"
  },
  {
    "path": "_config.yml",
    "content": "title: Moving # The title of the blog\nauthor: Your Name # Your name\nemail: your-email@domain.com # your email shown in the footer\nurl: https://huangyz.name/moving/ # this is your site's root address.\ndescription: > # this means to ignore newlines until \"show_excerpts:\"\n  A clean and minimalist theme for Jekyll.\nfavicon: \"./favicon.ico\" # set the favicon of the site\nshow_excerpts: false # set to true to show excerpts on the homepage\n\n# Moving date format\n# refer to https://shopify.github.io/liquid/filters/date/ if you want to customize this\nmoving:\n  avatar_url: \"https://i.loli.net/2019/08/26/JzCLhDWPEybZr2T.jpg\" # avatar in about page\n  about_you: a short description about you. # short description about you in about page\n  date_format: \"%b %d\" # date format of posts in home page\n  back_to: \"Home\" # In the post page, you have a back button above the title, you can custom the text by yourself.\n\n  # generate social links in about page.\n  social_links:\n    # twitter:\n    github: huangyz0918\n    rss: RSS\n    # dribbble:\n    facebook: huangyz0918\n    # flickr:\n    # instagram:\n    linkedin: yizheng-huang\n    # pinterest:\n    # youtube:\n    # youtube_channel:\n    # youtube_channel_name:\n    # telegram:\n    # googleplus:\n    # microdotblog:\n    # reddit:\n\n    # Mastodon instances\n    # mastodon:\n    # - username:\n    #   instance:\n    # - username:\n    #   instance:\n\n# Build settings\ntheme: moving # note, please use huangyz0918/moving if you want to publish to Github Pages.\n\nplugins:\n  - jekyll-feed\n  - jekyll-seo-tag\n"
  },
  {
    "path": "_includes/footer.html",
    "content": "<footer class=\"site-footer h-card\">\n    <data class=\"u-url\" href=\"{{ \"/\" | relative_url }}\"></data>\n    <div class=\"wrapper\">\n      <div class=\"footer-col-wrapper\">\n        <div class=\"footer-col\">\n          <ul class=\"contact-list\">\n            <li class=\"p-name\">\n              {%- if site.author -%}\n                <a class=\"black-link\" href=\"{{ site.url }}/about.html\">\n                  {{ site.author | escape }} \n                </a>\n              {%- endif -%}\n              </li>\n              {%- if site.email -%}\n              <li>\n              <a class=\"u-email black-link\" href=\"mailto:{{ site.email }}\">{{ site.email }}</a></li>\n              {%- endif -%}\n          </ul>\n        </div>\n      </div>\n    </div>\n  </footer>"
  },
  {
    "path": "_includes/google-analytics.html",
    "content": "<script\n  async\n  src=\"https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}\"\n></script>\n<script>\n  window[\"ga-disable-{{ site.google_analytics }}\"] =\n    window.doNotTrack === \"1\" ||\n    navigator.doNotTrack === \"1\" ||\n    navigator.doNotTrack === \"yes\" ||\n    navigator.msDoNotTrack === \"1\";\n  window.dataLayer = window.dataLayer || [];\n  function gtag() {\n    dataLayer.push(arguments);\n  }\n  gtag(\"js\", new Date());\n  gtag(\"config\", \"{{ site.google_analytics }}\");\n</script>\n"
  },
  {
    "path": "_includes/head.html",
    "content": "<head>\n  <meta charset=\"utf-8\" />\n  <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" />\n  {%- seo title=false -%}\n  <link rel=\"stylesheet\" href=\"{{ site.url }}/assets/css/main.css\" />\n  <link rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/{{ site.favicon }}?\" />\n  <link rel=\"stylesheet\" href=\"{{ site.url }}/assets/css/agate.css\" />\n  <script src=\"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.4.0/highlight.min.js\"></script>\n  <script>\n    hljs.initHighlightingOnLoad();\n  </script>\n  {%- feed_meta -%}\n  {%- if jekyll.environment == 'production' and site.google_analytics -%}\n  {%- include google-analytics.html -%}\n  {%- endif -%}\n</head>"
  },
  {
    "path": "_includes/social.html",
    "content": "{%- assign social = site.moving.social_links -%}\n\n<ul class=\"social-media-list\">\n  {%- if social.dribbble -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://dribbble.com/{{ social.dribbble | cgi_escape | escape }}\"\n      >[Dribbble]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.facebook -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://www.facebook.com/{{\n        social.facebook | cgi_escape | escape\n      }}\"\n      >[Facebook]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.flickr -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://www.flickr.com/photos/{{\n        social.flickr | cgi_escape | escape\n      }}\"\n      >[Flickr]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.github -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://github.com/{{ social.github | cgi_escape | escape }}\"\n    > [Github]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.instagram -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://www.instagram.com/{{\n        social.instagram | cgi_escape | escape\n      }}\"\n      >[Instagram]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.linkedin -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://www.linkedin.com/in/{{\n        social.linkedin | cgi_escape | escape\n      }}\"\n      >[Linkedin]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.pinterest -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://www.pinterest.com/{{\n        social.pinterest | cgi_escape | escape\n      }}\"\n      >[Pinterest]</a\n    >\n  </li>\n  {%- endif -%} {%- for mst in social.mastodon -%}{%- if mst.username and\n  mst.instance -%}\n  <li>\n    <a\n      class=\"black-link\"\n      rel=\"me\"\n      href=\"https://{{ mst.instance | cgi_escape | escape }}/@{{\n        mst.username\n      }}\"\n      >[MST]</a\n    >\n  </li>\n  {%- endif -%}{%- endfor -%} {%- if social.twitter -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://twitter.com/{{ social.twitter | cgi_escape | escape }}\"\n    > [Twitter]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.youtube -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://www.youtube.com/{{ social.youtube | cgi_escape | escape }}\"\n      >[YouTube]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.youtube_channel -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://www.youtube.com/channel/{{\n        social.youtube_channel | cgi_escape | escape\n      }}\"\n      >[YouTube Channel]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.telegram -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://t.me/{{ social.telegram | cgi_escape | escape }}\"\n    >\n      [Telegram]\n    </a>\n  </li>\n  {%- endif -%} {%- if social.microdotblog -%}\n  <li>\n    <a\n      class=\"black-link\"\n      rel=\"me\"\n      href=\"https://micro.blog/{{ social.microdotblog | cgi_escape | escape }}\"\n      >[Microdotblog]</a\n    >\n  </li>\n  {%- endif -%} {%- if social.reddit -%}\n  <li>\n    <a\n      class=\"black-link\"\n      href=\"https://reddit.com/user/{{ social.reddit | cgi_escape | escape }}\"\n    >\n      [Reddit]\n    </a>\n  </li>\n  {%- endif -%} {%- if social.rss -%}\n  <li>\n    <a class=\"black-link\" href=\"{{ 'feed.xml' | relative_url }}\">[RSS]</a>\n  </li>\n  {%- endif -%}\n</ul>\n"
  },
  {
    "path": "_layouts/about.html",
    "content": "---\nlayout: default\n---\n\n<div class=\"about-page\">\n  <head>\n    <title>{{ site.author }}</title>\n  </head>\n  <div class=\"post-back\">\n    <a class=\"black-link\" href=\"{{ site.url | relative_url }}\"> ← {{ site.moving.back_to }} </a>\n  </div>\n  <div class=\"about-header\">\n    {%- if site.moving.avatar_url -%}\n    <img class=\"about-avatar\" src=\"{{ site.moving.avatar_url }}\" />\n    {%- endif -%} {%- if site.author -%}\n    <div class=\"about-info\">\n      <div class=\"about-your-name\">\n        {{ site.author | escape }}\n      </div>\n      {%- endif -%} {%- if site.moving.about_you -%}\n      <p class=\"about-description\">\n        {{ site.moving.about_you | escape }}\n      </p>\n      {%- endif -%} {%- include social.html -%}\n    </div>\n  </div>\n\n  <div class=\"about-content e-content\" itemprop=\"articleBody\">\n    {{ content }}\n  </div>\n</div>\n"
  },
  {
    "path": "_layouts/default.html",
    "content": "<!DOCTYPE html>\n<html lang=\"{{ page.lang | default: site.lang | default: \"en\" }}\">\n        {%- include head.html -%}\n    <body>\n    <main class=\"page-content\" aria-label=\"Content\">\n        <div class=\"wrapper\">\n            {{ content }}\n        </div>\n    </main>\n        {%- include footer.html -%}\n    </body>\n</html>"
  },
  {
    "path": "_layouts/home.html",
    "content": "---\nlayout: default\n---\n\n<div class=\"home\">\n  <head>\n      <title>{{ site.title }}</title>\n  </head>\n  <div class=\"home-title\">\n    <p class=\"home-heading\">{{ site.title }}</p>\n    <p class=\"home-sub-heading\">{{- site.description | escape -}}</p>\n  </div>\n\n  {%- if site.posts.size > 0 -%}\n  <ul class=\"post-list\">\n      {% for post in site.posts  %}\n      {% capture this_year %}{{ post.date | date: \"%Y\" }}{% endcapture %}\n      {% capture next_year %}{{ post.previous.date | date: \"%Y\" }}{% endcapture %}\n  \n      {% if forloop.first %}\n      <h2 id=\"{{ this_year }}-ref\" class=\"post-year\">{{this_year}}</h2>\n      <ul>\n      {% endif %}\n  \n      <li>\n          {%- assign date_format = site.moving.date_format | default: \"%b %-d, %Y\" -%}\n          <span class=\"post-meta\">\n            {{ post.date | date: date_format }}\n          </span>\n          <a class=\"black-link post-link-layout\" href=\"{{ post.url | relative_url }}\">\n            {{ post.title | escape }}\n          </a>\n      </li>\n  \n      {% if forloop.last %}\n      </ul>\n      {% else %}\n          {% if this_year != next_year %}\n          </ul>\n          <h2 id=\"{{ next_year }}-ref\" class=\"post-year\">{{next_year}}</h2>\n          <ul>\n          {% endif %}\n      {% endif %}\n  {% endfor %}\n  </ul>\n  {%- endif -%}\n</div>\n"
  },
  {
    "path": "_layouts/post.html",
    "content": "---\nlayout: default\n---\n\n<article\n  class=\"post h-entry\"\n  itemscope\n  itemtype=\"http://schema.org/BlogPosting\"\n>\n  <head>\n    <script type=\"text/javascript\" async\n      src=\"https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js?config=TeX-MML-AM_CHTML\">\n    </script>\n    <title>{{ page.title }}</title>\n  </head>\n  <header class=\"post-header\">\n    <div class=\"post-back\">\n      <a class=\"black-link\" href=\"{{ site.url | relative_url }}\">\n        ← {{ site.moving.back_to }}\n      </a>\n    </div>\n\n    <h1 class=\"post-title p-name\" itemprop=\"name headline\">\n      {{ page.title | escape }}\n    </h1>\n    <p class=\"post-meta\">\n      <time\n        class=\"dt-published\"\n        datetime=\"{{ page.date | date_to_xmlschema }}\"\n        itemprop=\"datePublished\"\n      >\n        {%- assign date_format = \"%b %-d, %Y\" -%}\n        {{ page.date | date: date_format }}\n      </time>\n      {%- if page.author -%} •\n      <span itemprop=\"author\" itemscope itemtype=\"http://schema.org/Person\"\n        ><span class=\"p-author h-card\" itemprop=\"name\">{{\n          page.author | escape\n        }}</span></span\n      >\n      {%- endif -%}\n    </p>\n  </header>\n\n  <div class=\"post-content e-content\" itemprop=\"articleBody\">\n    {{ content }}\n  </div>\n\n  <a class=\"u-url\" href=\"{{ page.url | relative_url }}\" hidden></a>\n</article>\n"
  },
  {
    "path": "_posts/2016-01-06-welcome-to-jekyll.md",
    "content": "---\nlayout: post\n---\nYou’ll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.\n\nTo add new posts, simply add a file in the `_posts` directory that follows the convention `YYYY-MM-DD-name-of-post.ext` and includes the necessary front matter. Take a look at the source for this post to get an idea about how it works.\n\nJekyll also offers powerful support for code snippets:\n\n{% highlight ruby %}\ndef print_hi(name)\n  puts \"Hi, #{name}\"\nend\nprint_hi('Tom')\n#=> prints 'Hi, Tom' to STDOUT.\n{% endhighlight %}\n\nCheck out the [Jekyll docs][jekyll-docs] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekyll’s GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll Talk][jekyll-talk].\n\n[jekyll-docs]: http://jekyllrb.com/docs/home\n[jekyll-gh]:   https://github.com/jekyll/jekyll\n[jekyll-talk]: https://talk.jekyllrb.com/"
  },
  {
    "path": "_posts/2016-02-06-post-content-styles.md",
    "content": "---\nlayout: post\ntitle: \"Post Content Styles\"\ncategories: junk\nauthor: \"Yizheng Huang\"\nmeta: \"Springfield\"\n---\n\n# Great heading (h1)\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit.\n\n## Some great heading (h2)\n\nProin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, molestie et arcu.\n\nMauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris. Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\n## Another great heading (h2)\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit.\n\n### Some great subheading (h3)\n\nProin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum.\n\nPhasellus et hendrerit mauris. Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc.\n\n### Some great subheading (h3)\n\nPraesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\n> This quote will change your life. It will reveal the secrets of the universe, and all the wonders of humanity. Don't misuse it.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt.\n\n### Some great subheading (h3)\n\nVestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Proin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum.\n\n```html\n<html>\n  <head>\n  </head>\n  <body>\n    <p>Hello, World!</p>\n  </body>\n</html>\n```\n\n\nIn arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris.\n\n#### You might want a sub-subheading (h4)\n\nIn arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris.\n\nIn arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris.\n\n##### But it's probably overkill (h5)\n\nIn arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris.\n\n###### Oh hai, an unordered list!! (h6)\n\nIn arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris.\n\n- First item, yo\n- Second item, dawg\n- Third item, what what?!\n- Fourth item, fo sheezy my neezy\n\n### Oh hai, an ordered list!!\n\nIn arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris.\n\n1. First item, yo\n2. Second item, dawg\n3. Third item, what what?!\n4. Fourth item, fo sheezy my neezy\n\n\n\n## Headings are cool! (h2)\n\nProin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\nPraesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\nProin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc.\n\n### Tables\n\nTitle 1               | Title 2               | Title 3               | Title 4\n--------------------- | --------------------- | --------------------- | ---------------------\nlorem                 | lorem ipsum           | lorem ipsum dolor     | lorem ipsum dolor sit\nlorem ipsum dolor sit | lorem ipsum dolor sit | lorem ipsum dolor sit | lorem ipsum dolor sit\nlorem ipsum dolor sit | lorem ipsum dolor sit | lorem ipsum dolor sit | lorem ipsum dolor sit\nlorem ipsum dolor sit | lorem ipsum dolor sit | lorem ipsum dolor sit | lorem ipsum dolor sit\n\n\n### Images \n\n![](https://i.loli.net/2020/04/16/TiPKsjzZdcp2tOq.jpg)\n\n\n### Styles\n\n_Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est._\n\n---\n\nProin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing **sollicitudin, adipiscing eget est.**\n\n"
  },
  {
    "path": "_posts/2016-03-19-super-short-article.md",
    "content": "---\nlayout: post\ntitle: \"Short Article\"\ncategories: misc\n---\n\nLorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."
  },
  {
    "path": "_posts/2016-04-23-super-long-article.md",
    "content": "---\nlayout: post\ntitle: \"Long Article\"\ncategories: misc\n---\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Proin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris. Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Proin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris. Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Proin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris. Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Proin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris. Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Proin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris. Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est.\n\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce bibendum neque eget nunc mattis eu sollicitudin enim tincidunt. Vestibulum lacus tortor, ultricies id dignissim ac, bibendum in velit. Proin convallis mi ac felis pharetra aliquam. Curabitur dignissim accumsan rutrum. In arcu magna, aliquet vel pretium et, molestie et arcu. Mauris lobortis nulla et felis ullamcorper bibendum. Phasellus et hendrerit mauris. Proin eget nibh a massa vestibulum pretium. Suspendisse eu nisl a ante aliquet bibendum quis a nunc. Praesent varius interdum vehicula. Aenean risus libero, placerat at vestibulum eget, ultricies eu enim. Praesent nulla tortor, malesuada adipiscing adipiscing sollicitudin, adipiscing eget est."
  },
  {
    "path": "_posts/2016-05-01-code-highlight-tests.md",
    "content": "---\nlayout: post\ntitle: \"Code Highlight Tests\"\ncategories: misc\n---\n\n## Test for C\n```c\n#define UNICODE\n#include <windows.h>\n \nint main(int argc, char **argv) {\n  int speed = 0, speed1 = 0, speed2 = 0; // 1-20\n  printf(\"Set Mouse Speed by Maverick\\n\");\n \n  SystemParametersInfo(SPI_GETMOUSESPEED, 0, &speed, 0);\n  printf(\"Current speed: %2d\\n\", speed);\n \n  if (argc == 1) return 0;\n  if (argc >= 2) sscanf(argv[1], \"%d\", &speed1);\n  if (argc >= 3) sscanf(argv[2], \"%d\", &speed2);\n \n  if (argc == 2) // set speed to first value\n    speed = speed1;\n  else if (speed == speed1 || speed == speed2) // alternate\n    speed = speed1 + speed2 - speed;\n  else\n    speed = speed1;  // start with first value\n \n  SystemParametersInfo(SPI_SETMOUSESPEED, 0,  speed, 0);\n  SystemParametersInfo(SPI_GETMOUSESPEED, 0, &speed, 0);\n  printf(\"New speed:     %2d\\n\", speed);\n  return 0;\n}\n```\n\n## Test for Java\n\n```java\nimport java.util.Map;\nimport java.util.TreeSet;\n \npublic class GetEnv {\n  /**\n   * let's test generics\n   * @param args the command line arguments\n   */\n  public static void main(String[] args) {\n    // get a map of environment variables\n    Map<String, String> env = System.getenv();\n    // build a sorted set out of the keys and iterate\n    for(String k: new TreeSet<String>(env.keySet())) {\n      System.out.printf(\"%s = %s\\n\", k, env.get(k));\n    }\n  }    \n}\n```\n\n## Test for Perl\n\n```perl\n#!perl -w\n \n# Time-stamp: <2002/04/06, 13:12:13 (EST), maverick, csvformat.pl>\n# Two pass CSV file to table formatter\n \n$delim = $#ARGV >= 1 ? $ARGV[1] : ',';\nprint STDERR \"Split pattern: $delim\\n\";\n \n# first pass\nopen F, \"<$ARGV[0]\" or die;\nwhile(<F>)\n{\n  chomp;\n  $i = 0;\n  map { $max[$_->[1]] = $_->[0] if $_->[0] > ($max[$_->[1]] || 0) }\n    (map {[length $_, $i++]} split($delim));\n}\nclose F;\n \nprint STDERR 'Field width:   ', join(', ', @max), \"\\n\";\nprint STDERR join(' ', map {'-' x $_} @max);\n \n# second pass\nopen F, \"<$ARGV[0]\" or die;\nwhile(<F>)\n  {\n  chomp;\n  $i = 0;\n  map { printf(\"%-$max[$_->[1]]s \", $_->[0]) }\n    (map {[$_, $i++]} split($delim));\n  print \"\\n\";\n}\nclose F;\n```\n\n## Test for Python\n\n```python\n# test python (sample from offlineimap)\n \nclass ExitNotifyThread(Thread):\n    \"\"\"This class is designed to alert a \"monitor\" to the fact that a thread has\n    exited and to provide for the ability for it to find out why.\"\"\"\n    def run(self):\n        global exitthreads, profiledir\n        self.threadid = thread.get_ident()\n        try:\n            if not profiledir:          # normal case\n                Thread.run(self)\n            else:\n                try:\n                    import cProfile as profile\n                except ImportError:\n                    import profile\n                prof = profile.Profile()\n                try:\n                    prof = prof.runctx(\"Thread.run(self)\", globals(), locals())\n                except SystemExit:\n                    pass\n                prof.dump_stats( \\\n                            profiledir + \"/\" + str(self.threadid) + \"_\" + \\\n                            self.getName() + \".prof\")\n        except:\n            self.setExitCause('EXCEPTION')\n            if sys:\n                self.setExitException(sys.exc_info()[1])\n                tb = traceback.format_exc()\n                self.setExitStackTrace(tb)\n        else:\n            self.setExitCause('NORMAL')\n        if not hasattr(self, 'exitmessage'):\n            self.setExitMessage(None)\n \n        if exitthreads:\n            exitthreads.put(self, True)\n \n    def setExitCause(self, cause):\n        self.exitcause = cause\n    def getExitCause(self):\n        \"\"\"Returns the cause of the exit, one of:\n        'EXCEPTION' -- the thread aborted because of an exception\n        'NORMAL' -- normal termination.\"\"\"\n        return self.exitcause\n    def setExitException(self, exc):\n        self.exitexception = exc\n    def getExitException(self):\n        \"\"\"If getExitCause() is 'EXCEPTION', holds the value from\n        sys.exc_info()[1] for this exception.\"\"\"\n        return self.exitexception\n    def setExitStackTrace(self, st):\n        self.exitstacktrace = st\n    def getExitStackTrace(self):\n        \"\"\"If getExitCause() is 'EXCEPTION', returns a string representing\n        the stack trace for this exception.\"\"\"\n        return self.exitstacktrace\n    def setExitMessage(self, msg):\n        \"\"\"Sets the exit message to be fetched by a subsequent call to\n        getExitMessage.  This message may be any object or type except\n        None.\"\"\"\n        self.exitmessage = msg\n    def getExitMessage(self):\n        \"\"\"For any exit cause, returns the message previously set by\n        a call to setExitMessage(), or None if there was no such message\n        set.\"\"\"\n        return self.exitmessage\n```\n\n## Test for Bash\n\n```bash\n#!/bin/bash\ncd $ROOT_DIR\nDOT_FILES=\"lastpass weechat ssh Xauthority\"\nfor dotfile in $DOT_FILES; do conform_link \"$DATA_DIR/$dotfile\" \".$dotfile\"; done\n \n# TODO: refactor with suffix variables (or common cron values)\n \ncase \"$PLATFORM\" in\n    linux)\n        #conform_link \"$CONF_DIR/shell/zshenv\" \".zshenv\"\n        crontab -l > $ROOT_DIR/tmp/crontab-conflict-arch\n        cd $ROOT_DIR/$CONF_DIR/cron\n        if [[ \"$(diff ~/tmp/crontab-conflict-arch crontab-current-arch)\" == \"\"\n            ]];\n            then # no difference with current backup\n                logger \"$LOG_PREFIX: crontab live settings match stored \"\\\n                    \"settings; no restore required\"\n                rm ~/tmp/crontab-conflict-arch\n            else # current crontab settings in file do not match live settings\n                crontab $ROOT_DIR/$CONF_DIR/cron/crontab-current-arch\n                logger \"$LOG_PREFIX: crontab stored settings conflict with \"\\\n                    \"live settings; stored settings restored. \"\\\n                    \"Previous settings recorded in ~/tmp/crontab-conflict-arch.\"\n        fi\n    ;;\n```\n\n## Test for Haskell\n\n```haskell\n{-# LANGUAGE OverloadedStrings #-}\nmodule Main where\n \n--import Prelude hiding (id)\n--import Control.Category (id)\nimport Control.Arrow ((>>>), (***), arr)\nimport Control.Monad (forM_)\n-- import Data.Monoid (mempty, mconcat)\n \n-- import System.FilePath\n \nimport Hakyll\n \n \nmain :: IO ()\nmain = hakyll $ do\n \n    route   \"css/*\" $ setExtension \"css\"\n    compile \"css/*\" $ byExtension (error \"Not a (S)CSS file\")\n        [ (\".css\",  compressCssCompiler)\n        , (\".scss\", sass)\n        ]\n \n    route   \"js/**\" idRoute\n    compile \"js/**\" copyFileCompiler\n \n    route   \"img/*\" idRoute\n    compile \"img/*\" copyFileCompiler\n \n    compile \"templates/*\" templateCompiler\n \n    forM_ [\"test.md\", \"index.md\"] $ \\page -> do\n        route   page $ setExtension \"html\"\n        compile page $ pageCompiler\n            >>> applyTemplateCompiler \"templates/default.html\"\n            >>> relativizeUrlsCompiler\n \nsass :: Compiler Resource String\nsass = getResourceString >>> unixFilter \"sass\" [\"-s\", \"--scss\"]\n                         >>> arr compressCss\n```\n\n## Test for PHP\n\n```php\n\n<?php\nrequire_once($GLOBALS['g_campsiteDir']. \"/$ADMIN_DIR/country/common.php\");\nrequire_once($GLOBALS['g_campsiteDir']. \"/classes/SimplePager.php\");\ncamp_load_translation_strings(\"api\");\n \n$f_country_language_selected = camp_session_get('f_language_selected', '');\n$f_country_offset = camp_session_get('f_country_offset', 0);\nif (empty($f_country_language_selected)) {\n    $f_country_language_selected = null;\n}\n$ItemsPerPage = 20;\n$languages = Language::GetLanguages(null, null, null, array(), array(), true);\n$numCountries = Country::GetNumCountries($f_country_language_selected);\n \n$pager = new SimplePager($numCountries, $ItemsPerPage, \"index.php?\");\n \n$crumbs = array();\n$crumbs[] = array(getGS(\"Configure\"), \"\");\n$crumbs[] = array(getGS(\"Countries\"), \"\");\necho camp_html_breadcrumbs($crumbs);\n \n?>\n \n<?php  if ($g_user->hasPermission(\"ManageCountries\")) { ?>\n<table BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\">\n    <tr>\n        <td><a href=\"add.php\"><?php putGS(\"Add new\"); ?></a></td>\n    </tr>\n</table>\n```\n\n## Test for Javascript \n\n```js\nimport isTypedArray from 'lodash/isTypedArray';\nimport reverse from 'lodash/reverse';\nimport sortBy from 'lodash/sortBy';\nimport take from 'lodash/take';\nimport { food101Classes } from './food101';\n\nexport function food101topK(classProbabilities, k = 5) {\n  const probs = isTypedArray(classProbabilities)\n    ? Array.prototype.slice.call(classProbabilities)\n    : classProbabilities;\n\n  const sorted = reverse(\n    sortBy(\n      probs.map((prob, index) => [ prob, index ]),\n      probIndex => probIndex[0]\n    )\n  );\n\n  const topK = take(sorted, k).map(probIndex => {\n    const iClass = food101Classes[probIndex[1]];\n    return {\n      id: probIndex[1],\n      name: iClass.replace(/_/, ' '),\n      probability: probIndex[0]\n    };\n  });\n  return topK;\n};\n```\n\n## Test for HTML\n\n```html\n\n<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n<html><head>\n<title>A Tiny Page</title>\n<style type=\"text/css\">\n<!--\n      p { font-size:15pt; color:#000 }\n    -->\n</style></head><!-- real comment -->\n<body bgcolor=\"#FFFFFF\" text=\"#000000\" link=\"#0000CC\">\n<script language=\"javascript\" type=\"text/javascript\">\n      function changeHeight(h) {\n        var tds = document.getElementsByTagName(\"td\");\n        for(var i = 0; i < tds.length; i++) {\n          tds[i].setAttribute(\"height\", h + \"px\");\n      }}\n</script>\n<h1>abc</h1>\n<h2>def</h2>\n<p>Testing page</p>\n</body></html>\n```\n\n## Test for CSS\n\n```css\n/*\nMonokai style - ported by Luigi Maselli - http://grigio.org\n*/\n\n.hljs {\n  display: block;\n  overflow-x: auto;\n  padding: 0.5em;\n  background: #272822; color: #ddd;\n}\n\n.hljs-tag,\n.hljs-keyword,\n.hljs-selector-tag,\n.hljs-literal,\n.hljs-strong,\n.hljs-name {\n  color: #f92672;\n}\n\n.hljs-code {\n  color: #66d9ef;\n}\n\n.hljs-class .hljs-title {\n  color: white;\n}\n```"
  },
  {
    "path": "_posts/2019-06-23-language-tests.md",
    "content": "---\nlayout: post\ntitle: \"Language Tests\"\ncategories: misc\n---\n\n### 1. 日本語テスト\n\nThis is a Japanese test post to show you how japanese is displayed.\n\n私は昨日ついにその助力家というのの上よりするたなけれ。\n最も今をお話団はちょうどこの前後なかろでくらいに困りがいるたをは帰着考えたなかって、そうにもするでうたらない。\nがたを知っないはずも同時に九月をいよいよたありた。\n\nもっと槙さんにぼんやり金少し説明にえた自分大した人私か影響にというお関係たうませないが、この次第も私か兄具合に使うて、槙さんののに当人のあなたにさぞご意味と行くて私個人が小尊敬を聴いように同時に同反抗に集っだうて、いよいよまず相当へあっうからいだ事をしでなけれ。\n\n> それでそれでもご時日をしはずはたったいやと突き抜けるますて、その元がは行ったてという獄を尽すていけですた。\n\nこの中道具の日その学校はあなたごろがすまなりかとネルソンさんの考えるですん、辺の事実ないというご盲従ありたですと、爺さんのためが薬缶が結果までの箸の当時してならて、多少の十月にためからそういう上からとにかくしましないと触れべきものたで、ないうですと多少お人達したのでたた。\n\nFrom [すぐ使えるダミーテキスト - 日本語 Lorem ipsum.](http://lipsum.sugutsukaeru.jp/index.cgi) \n\n\n### 2. 繁体中文测试\n\nThis is a chinese test post to show you how chinese is displayed.\n\n善我王上魚、產生資西員合兒臉趣論。畫衣生這著爸毛親可時，安程幾？合學作。觀經而作建。都非子作這！法如言子你關！手師也。\n\n以也座論頭室業放。要車時地變此親不老高小是統習直麼調未，行年香一？\n\n就竟在，是我童示讓利分和異種百路關母信過明驗有個歷洋中前合著區亮風值新底車有正結，進快保的行戰從：弟除文辦條國備當來際年每小腳識世可的的外的廣下歌洲保輪市果底天影；全氣具些回童但倒影發狀在示，數上學大法很，如要我……月品大供這起服滿老？應學傳者國：山式排只不之然清同關；細車是！停屋常間又，資畫領生，相們制在？公別的人寫教資夠。資再我我！只臉夫藝量不路政吃息緊回力之；兒足灣電空時局我怎初安。意今一子區首者微陸現際安除發連由子由而走學體區園我車當會，經時取頭，嚴了新科同？很夫營動通打，出和導一樂，查旅他。坐是收外子發物北看蘭戰坐車身做可來。道就學務。\n\n國新故。\n\n> 工步他始能詩的，裝進分星海演意學值例道……於財型目古香亮自和這乎？化經溫詩。只賽嚴大一主價世哥受的沒有中年即病行金拉麼河。主小路了種就小為廣不？\n\nFrom [亂數假文產生器 - Chinese Lorem Ipsum.](http://www.richyli.com/tool/loremipsum/) \n\n\n\n### 3. 简体中文测试\n\n效育声去本义然空，各值太法心想，场强实地。 题铁习点儿表管少间千，只何政亲织文意部，千影画派证男须。 手反取长风治增非等直难群，连取及天他己事头级，影数弦适把气快目人。 专议以省通引而千个，格则口段度样水热马，地教少务改磨。 包思外心半院应她算斯，市外会快记路又火学，劳如肃它准众丧边。\n   \n  > 团算部住县单总边素格军所，合音府教看和广光采率位转，位用品根确针百。 证其标元角工方海接交他，论象切万世认一响义，治然身本风弦带题。 向我次路持加北，她不反心。 说总元军例市决，现始即算证养，规走还壳。\n\n因林可相儿应满军，热影省条律因资再，整肃赤心将届。 局广写两量备验还，南教事争工民的，备进研上布。 素身电活非直，速这区交示从，百层达。 资量那毛什京身，白这快。 半打容三手开常价或，手严量般象式效，名可重芽门适。 来设什一我么，光界美么或，住身式准。 造酸改表委验众办地百养，商物战众本列听度名院，制压录丽快与千机内。 住需当四议决得命南然照按民置，当住命形金决否矿单外。 气象理离开新集增际，三划方工义很年关，拉许准孝口。 构片出干计由备美打养，持育总指承入无己。\n\nFrom [假文生成器， lorem ipsum Chinese](http://www.cancms.com/content/dummytext)"
  },
  {
    "path": "_posts/2020-04-15-math-test.md",
    "content": "---\nlayout: post\ntitle: \"Math Tests\"\ncategories: misc\n---\n\n$$\nR_{\\mu \\nu} - {1 \\over 2}g_{\\mu \\nu}\\,R + g_{\\mu \\nu} \\Lambda\n= {8 \\pi G \\over c^4} T_{\\mu \\nu}\n$$\n\nThe equation $$(x_i \\cdot x_j)^2$$ is called kernel function and is often written as $$k(x_i, x_j)$$.\n\n$$\n\\arg\\max_\\alpha \\sum_j \\alpha_j - \\frac{1}{2} \\sum_{j,k} \\alpha_j, \\alpha_k y_j y_k (x_j \\cdot x_k)\n$$\n\n$$\nf(X) = \\frac{1}{(2\\pi)^{\\frac{n}{2} |\\Sigma|^{\\frac{1}{2}}}} e^{ - \\frac{1}{2} (X - \\mu)^T \\Sigma^{-1} (X - \\mu)}\n$$\n\n$$\n\\mu_i = \\sum_{j=1}^N \\frac{p_{ij} x}{n_i} \\\\\n\\Sigma_i = \\sum_{j=1}^N \\frac{p_{ij} (x_j - \\mu_i) (x_j - \\mu_i)^T}{n_i}\\\\\nw_i  =  \\frac{n_i}{N}\n$$\n\n$$\nS_i^{(t)} = \\big \\{ x_p : \\big \\| x_p - \\mu^{(t)}_i \\big \\|^2 \\le \\big \\| x_p - \\mu^{(t)}_j \\big \\|^2 \\ \\forall j, 1 \\le j \\le k \\big\\}\n$$"
  },
  {
    "path": "_sass/moving/_base.scss",
    "content": "/**\n * Reset some basic elements\n */\nbody,\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\nhr,\ndl,\ndd,\nol,\nul,\nfigure {\n  margin: 0;\n  padding: 0;\n}\n\n/**\n  * Basic styling\n  */\nbody {\n  font: $base-font-weight #{$small-font-size}/#{$small-line-height}\n    $base-font-family;\n  color: $text-color;\n  background-color: $background-color;\n  -webkit-text-size-adjust: 100%;\n  -webkit-font-feature-settings: \"kern\" 1;\n  -moz-font-feature-settings: \"kern\" 1;\n  -o-font-feature-settings: \"kern\" 1;\n  font-feature-settings: \"kern\" 1;\n  font-kerning: normal;\n  display: flex;\n  min-height: 100vh;\n  flex-direction: column;\n  padding: 0 2%;\n\n  @media screen and (min-width: $on-medium) {\n    padding: 0 5%;\n    font: $base-font-weight #{$base-font-size}/#{$base-line-height}\n      $base-font-family;\n  }\n}\n\n/**\n  * Set `margin-bottom` to maintain vertical rhythm\n  */\nh1,\nh2,\nh3,\nh4,\nh5,\nh6,\np,\nblockquote,\npre,\nul,\nol,\ndl,\nfigure,\n%vertical-rhythm {\n  margin-bottom: $spacing-unit / 2;\n}\n\n/**\n  * `main` element\n  */\nmain {\n  display: block; /* Default value of `display` of `main` element is 'inline' in IE 11. */\n}\n\n/**\n  * Divider\n  */\nhr {\n  margin-top: 20px;\n  margin-bottom: 20px;\n  border: 0;\n  height: 1px;\n  background: -webkit-linear-gradient(\n    left,\n    transparent,\n    rgba(0, 0, 0, 0.5),\n    transparent\n  );\n  background: linear-gradient(\n    left,\n    transparent,\n    rgba(0, 0, 0, 0.5),\n    transparent\n  );\n}\n\n/**\n  * Images\n  */\nimg {\n  margin-bottom: 5px;\n  margin-top: 5px;\n  padding: 2px 2px;\n  border-radius: 3px;\n  background-color: lighten($grey-color-light, 3%);\n  max-width: 100%;\n  vertical-align: middle;\n}\n\n/**\n  * Figures\n  */\nfigure > img {\n  display: block;\n}\n\nfigcaption {\n  font-size: $small-font-size;\n}\n\n/**\n  * Lists\n  */\nul,\nol {\n  margin-left: $spacing-unit;\n}\n\nli {\n  > ul,\n  > ol {\n    margin-bottom: 0;\n  }\n}\n\n/**\n  * Headings\n  */\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n  margin-top: 2rem;\n  font-weight: $base-font-weight;\n}\n\n/**\n  * Links\n  */\na {\n  color: $brand-color;\n  text-decoration: none;\n\n  &:hover {\n    text-decoration: underline;\n  }\n}\n\n/**\n  * Blockquotes\n  */\nblockquote {\n  color: $grey-color;\n  border-left: 4px solid $grey-color-light;\n  padding-left: $spacing-unit / 2;\n  @include relative-font-size(1);\n  letter-spacing: -1px;\n\n@media (max-width: 600px) {\n  @include relative-font-size(0.8);\n}\n\n  > :last-child {\n    margin-bottom: 0;\n  }\n}\n\n/**\n  * Code formatting\n  */\npre,\ncode {\n  @include relative-font-size(0.9);\n  border: 1px solid darken($grey-color-light, 3%);\n  border-radius: 3px;\n  background-color: lighten($grey-color-light, 3%);\n}\n\ncode {\n  padding: 1px 1px;\n}\n\npre {\n  padding: 2px 2px;\n  overflow-x: auto;\n\n  > code {\n    border: 0;\n    padding-right: 0;\n    padding-left: 0;\n  }\n}\n\n/**\n  * Wrapper\n  */\n.wrapper {\n  max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit}));\n  max-width: calc(#{$content-width} - (#{$spacing-unit}));\n  margin-right: auto;\n  margin-left: auto;\n  padding-right: $spacing-unit / 2;\n  padding-left: $spacing-unit / 2;\n  @extend %clearfix;\n\n  @media screen and (min-width: $on-large) {\n    max-width: -webkit-calc(#{$content-width} - (#{$spacing-unit} * 2));\n    max-width: calc(#{$content-width} - (#{$spacing-unit} * 2));\n    padding-right: $spacing-unit;\n    padding-left: $spacing-unit;\n  }\n}\n\n/**\n  * Clearfix\n  */\n%clearfix:after {\n  content: \"\";\n  display: table;\n  clear: both;\n}\n\n/**\n  * Icons\n  */\n\n.orange {\n  color: $orange-color;\n}\n\n.grey {\n  color: $grey-color;\n}\n\n.svg-icon {\n  width: 16px;\n  height: 16px;\n  display: inline-block;\n  fill: currentColor;\n  padding: 5px 3px 2px 5px;\n  vertical-align: text-bottom;\n}\n\n/**\n  * Tables\n  */\ntable {\n  margin-bottom: $spacing-unit;\n  width: 100%;\n  text-align: $table-text-align;\n  color: lighten($text-color, 18%);\n  border-collapse: collapse;\n  border: 1px solid $grey-color-light;\n  tr {\n    &:nth-child(even) {\n      background-color: lighten($grey-color-light, 6%);\n    }\n  }\n  th,\n  td {\n    padding: ($spacing-unit / 3) ($spacing-unit / 2);\n  }\n  th {\n    background-color: lighten($grey-color-light, 3%);\n    border: 1px solid darken($grey-color-light, 4%);\n    border-bottom-color: darken($grey-color-light, 12%);\n  }\n  td {\n    border: 1px solid $grey-color-light;\n  }\n}\n\nnav {\n  width: 100%;\n  li {\n    display: inline;\n    padding-top: 20px;\n    padding-right: 10px;\n    padding-bottom: 10px;\n    padding-left: 10px;\n  }\n}\n\n/* home: post list */\n.post-list ul {\n\tmargin-left: 0;\n}\n.post-list ul li {\n\tdisplay: flex;\n}\n.post-meta {\n\tmin-width: 80px;\n\tfont-size: 21.6px;\n}\n"
  },
  {
    "path": "_sass/moving/_layout.scss",
    "content": "/**\n * Site header\n */\n.site-header {\n  border-top: 5px solid $grey-color-dark;\n  border-bottom: 1px solid $grey-color-light;\n  min-height: $spacing-unit * 1.865;\n  line-height: $base-line-height * $base-font-size * 2.25;\n\n  // Positioning context for the mobile navigation icon\n  position: relative;\n}\n\n.site-nav {\n  position: absolute;\n  top: 9px;\n  right: $spacing-unit / 2;\n  background-color: $background-color;\n  border: 1px solid $grey-color-light;\n  border-radius: 5px;\n  text-align: right;\n\n  .nav-trigger {\n    display: none;\n  }\n\n  .menu-icon {\n    float: right;\n    width: 36px;\n    height: 26px;\n    line-height: 0;\n    padding-top: 10px;\n    text-align: center;\n\n    > svg path {\n      fill: $grey-color-dark;\n    }\n  }\n\n  label[for=\"nav-trigger\"] {\n    display: block;\n    float: right;\n    width: 36px;\n    height: 36px;\n    z-index: 2;\n    cursor: pointer;\n  }\n\n  input ~ .trigger {\n    clear: both;\n    display: none;\n  }\n\n  input:checked ~ .trigger {\n    display: block;\n    padding-bottom: 5px;\n  }\n\n  .page-link {\n    color: $text-color;\n    line-height: $base-line-height;\n    display: block;\n    padding: 5px 10px;\n\n    // Gaps between nav items, but not on the last one\n    &:not(:last-child) {\n      margin-right: 0;\n    }\n    margin-left: 20px;\n  }\n\n  @media screen and (min-width: $on-medium) {\n    position: static;\n    float: right;\n    border: none;\n    background-color: inherit;\n\n    label[for=\"nav-trigger\"] {\n      display: none;\n    }\n\n    .menu-icon {\n      display: none;\n    }\n\n    input ~ .trigger {\n      display: block;\n    }\n\n    .page-link {\n      display: inline;\n      padding: 0;\n\n      &:not(:last-child) {\n        margin-right: 20px;\n      }\n      margin-left: auto;\n    }\n  }\n}\n\n/**\n * Site footer\n */\n.site-footer {\n  padding: $spacing-unit / 1.5 0;\n}\n\n.footer-heading {\n  @include relative-font-size(1.125);\n  margin-bottom: $spacing-unit / 2;\n}\n\n.p-name {\n  @media (max-width: 500px) {\n    @include relative-font-size(0.9);\n  }\n}\n\n.u-email {\n  @media (max-width: 500px) {\n    @include relative-font-size(0.9);\n  }\n}\n\n.contact-list,\n.social-media-list {\n  list-style: none;\n  margin-left: 0;\n}\n\n/**\n * Page content\n */\n.page-content {\n  padding: $spacing-unit 0;\n  flex: 1 0 auto;\n}\n\n.page-heading {\n  @include relative-font-size(2);\n}\n\n.home-title {\n  margin-top: -10px;\n}\n\n.home-heading {\n  font-weight: 1000;\n  color: lighten($text-color, 15%);\n\n  @media (max-width: 500px) {\n    margin-top: 20px;\n    @include relative-font-size(1.7);\n  }\n\n  @include relative-font-size(2.2);\n}\n\n.home-sub-heading {\n  margin-top: -0.6rem;\n  color: lighten($text-color, 25%);\n\n  @media (max-width: 500px) {\n    @include relative-font-size(0.8);\n  }\n\n  @include relative-font-size(1);\n}\n\n.post-list {\n  margin-top: 2.5rem;\n  margin-left: 0;\n  list-style: none;\n\n  li {\n    margin-bottom: $spacing-unit / 12;\n  }\n}\n\n.post-year {\n  margin-top: 2rem;\n  margin-bottom: 0.25rem;\n  font-weight: 700;\n  color: lighten($text-color, 15%);\n\n  @media (max-width: 500px) {\n    @include relative-font-size(1.2);\n  }\n\n  @include relative-font-size(1.5);\n}\n\n.post-meta {\n  display: inline-block;\n  min-width: 60px;\n\n  @media (max-width: 500px) {\n    @include relative-font-size(0.8);\n  }\n\n  @include relative-font-size(1);\n  color: lighten($text-color, 25%);\n}\n\n.post-link-layout {\n  margin-left: 10%;\n  display: inline;\n\n  @media (max-width: 500px) {\n    @include relative-font-size(1);\n  }\n\n  @include relative-font-size(1.2);\n}\n\n.black-link {\n  color: $text-color;\n  text-decoration: none;\n\n  &:hover {\n    color: $text-color;\n    text-decoration: underline;\n  }\n}\n\n.post-back {\n  margin-bottom: 20px;\n  color: lighten($text-color, 25%);\n}\n\n/**\n * Posts\n */\n.post-header {\n  margin-bottom: $spacing-unit;\n}\n\n.post-title,\n.post-content h1 {\n  @include relative-font-size(2.2);\n  line-height: 1.3;\n  font-weight: 1000;\n  margin-top: -0.5rem;\n\n  @media (max-width: 500px) {\n    @include relative-font-size(1.8);\n  }\n\n  @media screen and (min-width: $on-large) {\n    @include relative-font-size(2.2);\n  }\n}\n\n.post-content {\n  margin-top: 3.2rem;\n  margin-bottom: $spacing-unit;\n\n  h2 {\n    @include relative-font-size(1.75);\n\n    @media screen and (min-width: $on-large) {\n      @include relative-font-size(2);\n    }\n  }\n\n  h3 {\n    @include relative-font-size(1.375);\n\n    @media screen and (min-width: $on-large) {\n      @include relative-font-size(1.625);\n    }\n  }\n\n  h4 {\n    @include relative-font-size(1.125);\n\n    @media screen and (min-width: $on-large) {\n      @include relative-font-size(1.25);\n    }\n  }\n}\n\n.social-media-list {\n  margin-top: -1rem;\n  display: flex;\n  @include relative-font-size(1);\n  li {\n    float: left;\n    a {\n      padding-right: $spacing-unit / 5;\n    }\n  }\n}\n\n/**\n * Grid helpers\n */\n@media screen and (min-width: $on-large) {\n  .one-half {\n    width: -webkit-calc(50% - (#{$spacing-unit} / 2));\n    width: calc(50% - (#{$spacing-unit} / 2));\n  }\n}\n\n/**\n * About Page\n */\n.about-page {\n  display: inline-block;\n\n  .about-header {\n    display: flex;\n    flex-direction: row;\n    flex-wrap: wrap;\n\n    .about-avatar {\n      padding: 1px;\n      border: 1px solid $grey-color-light;\n      width: 10rem;\n      height: 10rem;\n      margin: 0 2rem 0 0;\n    }\n\n    .about-info {\n      align-self: center;\n\n      .about-your-name {\n        display: flex;\n        flex-direction: row;\n        margin-top: 1rem;\n        @include relative-font-size(1.5);\n      }\n\n      .about-description {\n        margin-top: -0.6rem;\n        @include relative-font-size(1);\n        color: lighten($text-color, 25%);\n      }\n    }\n  }\n\n  .about-content {\n    margin-top: 2rem;\n  }\n}\n"
  },
  {
    "path": "_sass/moving.scss",
    "content": "@charset \"utf-8\";\n\n// Define defaults for each variable.\n\n$base-font-family: \"Bitter\", 'Hiragino Sans GB', 'Microsoft Yahei', '微软雅黑', \"Bitter\", sans-serif;\n$base-font-size: 18px !default;\n$base-font-weight: 400 !default;\n$small-font-size: $base-font-size * 0.85 !default;\n$base-line-height: 1.8 !default;\n$small-line-height: 1.6 !default;\n\n$spacing-unit: 30px !default;\n\n$text-color: #111 !default;\n$background-color: #fdfdfd !default;\n$brand-color: #2a7ae2 !default;\n\n$grey-color: #828282 !default;\n$grey-color-light: lighten($grey-color, 40%) !default;\n$grey-color-dark: darken($grey-color, 25%) !default;\n$orange-color: #f66a0a !default;\n$table-text-align: left !default;\n\n// Width of the content area\n$content-width: 800px !default;\n\n$on-palm: 600px !default;\n$on-laptop: 800px !default;\n\n$on-medium: $on-palm !default;\n$on-large: $on-laptop !default;\n\n@mixin media-query($device) {\n  @media screen and (max-width: $device) {\n    @content;\n  }\n}\n\n@mixin relative-font-size($ratio) {\n  font-size: $base-font-size * $ratio;\n}\n\n// Import partials.\n@import \"moving/base\", \"moving/layout\";\n"
  },
  {
    "path": "about.md",
    "content": "---\nlayout: about\n---\n\nThese are controlled by `about.md` under the root directory. If you want a more diverse self-introduction, you can insert the markdown content you want here.\n\n### What's New\n\n- One paper got accepted in xxx 2019.\n- I'm going to join xxx as a xxx 2019 Fall.\n"
  },
  {
    "path": "assets/css/agate.css",
    "content": "/*!\n * Agate by Taufik Nurrohman <https://github.com/tovic>\n * ----------------------------------------------------\n *\n * #ade5fc\n * #a2fca2\n * #c6b4f0\n * #d36363\n * #fcc28c\n * #fc9b9b\n * #ffa\n * #fff\n * #333\n * #62c8f3\n * #888\n *\n */\n\n.hljs {\n  display: block;\n  overflow-x: auto;\n  padding: 0.5em;\n  background: #333;\n  color: white;\n}\n\n.hljs-name,\n.hljs-strong {\n  font-weight: bold;\n}\n\n.hljs-code,\n.hljs-emphasis {\n  font-style: italic;\n}\n\n.hljs-tag {\n  color: #62c8f3;\n}\n\n.hljs-variable,\n.hljs-template-variable,\n.hljs-selector-id,\n.hljs-selector-class {\n  color: #ade5fc;\n}\n\n.hljs-string,\n.hljs-bullet {\n  color: #a2fca2;\n}\n\n.hljs-type,\n.hljs-title,\n.hljs-section,\n.hljs-attribute,\n.hljs-quote,\n.hljs-built_in,\n.hljs-builtin-name {\n  color: #ffa;\n}\n\n.hljs-number,\n.hljs-symbol,\n.hljs-bullet {\n  color: #d36363;\n}\n\n.hljs-keyword,\n.hljs-selector-tag,\n.hljs-literal {\n  color: #fcc28c;\n}\n\n.hljs-comment,\n.hljs-deletion,\n.hljs-code {\n  color: #888;\n}\n\n.hljs-regexp,\n.hljs-link {\n  color: #c6b4f0;\n}\n\n.hljs-meta {\n  color: #fc9b9b;\n}\n\n.hljs-deletion {\n  background-color: #fc9b9b;\n  color: #333;\n}\n\n.hljs-addition {\n  background-color: #a2fca2;\n  color: #333;\n}\n\n.hljs a {\n  color: inherit;\n}\n\n.hljs a:focus,\n.hljs a:hover {\n  color: inherit;\n  text-decoration: underline;\n}\n"
  },
  {
    "path": "assets/css/main.scss",
    "content": "---\nsitemap: false\n---\n\n@import \"moving\";\n@import url('https://fonts.googleapis.com/css?family=Bitter&display=swap');"
  },
  {
    "path": "index.md",
    "content": "---\nlayout: home\n---"
  },
  {
    "path": "moving.gemspec",
    "content": "# frozen_string_literal: true\n\nGem::Specification.new do |spec|\n  spec.name          = \"moving\"\n  spec.version       = \"0.3.3\"\n  spec.authors       = [\"huangyz0918\"]\n  spec.email         = [\"huangyz0918@gmail.com\"]\n\n  spec.summary       = \"A clean and minimalist theme for Jekyll\"\n  spec.homepage      = \"https://github.com/huangyz0918/moving\"\n  spec.license       = \"MIT\"\n\n  spec.files = `git ls-files -z`.split(\"\\x0\").select do |f|\n    f.match(%r{^(_(includes|layouts|sass)/|(LICENSE|README)((\\.(txt|md|markdown)|$)))}i)\n  end\n\n  spec.add_runtime_dependency \"jekyll\", \"~> 4.0.0\"\n  spec.add_runtime_dependency \"jekyll-feed\", \"~> 0.9\"\n  spec.add_runtime_dependency \"jekyll-seo-tag\", \"~> 2.1\"\n\n  spec.add_development_dependency \"bundler\", \"~> 2.3.26\"\n  spec.add_development_dependency \"rake\", \"~> 12.0\"\nend\n"
  }
]