start_again

This commit is contained in:
2016-10-27 01:14:52 -04:00
parent f2f8ef95a3
commit dd89f3caca
63 changed files with 4596 additions and 64 deletions
+110
View File
@@ -0,0 +1,110 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Page Not Found « Stop Talking, Start Doing - 停止空想,开始行动</title>
<meta name="description" content="My personal blog, with some boring research staff and some tricks I was fancy to. I'll try my best to make this blog fun and useful. Not just a place I complain about all happens in my Lab.
">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="https://codersherlock.github.com//404.html">
<link rel="alternate" type="application/rss+xml" title="Stop Talking, Start Doing - 停止空想,开始行动" href="https://codersherlock.github.com//feed.xml" />
</head>
<body>
<header class="header">
<div class="wrapper">
<a class="site-title" href="/">Stop Talking, Start Doing - 停止空想,开始行动</a>
<nav class="site-nav">
<a class="page-link" href="/about/">About</a>
<a class="page-link" href="/category/">Category</a>
</nav>
</div>
</header>
<div class="page-content">
<div class="wrapper">
<div class="col-main">
<div class="post">
<header class="post-header">
<h1 class="post-title">Page Not Found</h1>
</header>
<article class="post-content">
<p>Where am I and where should I go?</p>
</article>
</div>
</div>
<div class="col-second">
<div class="col-box col-box-author">
<img class="avatar" src="/static/avatar.jpg" alt="Pengzhan Hao - 碾子">
<div class="col-box-title name">Pengzhan Hao - 碾子</div>
<p></p>
<p class="contact">
<a href="https://github.com/codersherlock">GitHub</a>
<a href="https://twitter.com/haopengzhan">Twitter</a>
<a href="mailto:haopengzhan@gmail.com">Email</a>
</p>
</div>
<div class="col-box">
<div class="col-box-title">Newest Posts</div>
<ul class="post-list">
<li><a class="post-link" href="/archivers/hello">Stop Talking is the worst title of one blog</a></li>
</ul>
</div>
<div class="col-box post-toc hide">
<div class="col-box-title">TOC</div>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="wrapper">
&copy; 2016 Pengzhan Hao - 碾子
</div>
</footer>
<script src="/js/easybook.js"></script>
</body>
</html>
+8
View File
@@ -0,0 +1,8 @@
The MIT License (MIT)
Copyright (c) 2016 laobubu
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+55
View File
@@ -0,0 +1,55 @@
# jekyll-theme-EasyBook
Another Jekyll Blog Theme "EasyBook"
Start blogging with a simple but powerful theme.
## Features
- Everything Basic Jekyll has.
- **Pagination** is enabled.
- **Comments** using Disqus or 多说.
- **TOC** makes reading easier.
- **Profile** including your links and avatar on the sidebar.
- *And more...*
## Install
Read [Quick Guide] to learn how to install and publish.
Read [Welcome to Jekyll and EasyBook][helloPost] and [Jekyll][jekyll] for further information.
**If need help, please:**
- [**Read Wiki pages**](https://github.com/laobubu/jekyll-theme-EasyBook/wiki)
- **Google it**
- [**Submit an issue**](https://github.com/laobubu/jekyll-theme-EasyBook/issues/new)
## Donate
Buy me a coffee if you find EasyBook useful for you :smiley:
Visit <http://laobubu.net/donate.html>
## Demo
[laobubu's blog](http://blog.laobubu.net) | [empty site](http://laobubu.github.io/jekyll-theme-EasyBook)
![Homepage](https://ooo.0o0.ooo/2016/02/11/56bc997c65daf.png)
## License
```
The MIT License (MIT)
Copyright (c) 2016 laobubu
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
```
[Quick Guide]: https://github.com/laobubu/jekyll-theme-EasyBook/wiki/Quick-Guide
[helloPost]: http://laobubu.github.io/jekyll-theme-EasyBook/archivers/hello
[jekyll]: http://jekyllrb.com/
+115
View File
@@ -0,0 +1,115 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>About « Stop Talking, Start Doing - 停止空想,开始行动</title>
<meta name="description" content="My personal blog, with some boring research staff and some tricks I was fancy to. I'll try my best to make this blog fun and useful. Not just a place I complain about all happens in my Lab.
">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="https://codersherlock.github.com//about/">
<link rel="alternate" type="application/rss+xml" title="Stop Talking, Start Doing - 停止空想,开始行动" href="https://codersherlock.github.com//feed.xml" />
</head>
<body>
<header class="header">
<div class="wrapper">
<a class="site-title" href="/">Stop Talking, Start Doing - 停止空想,开始行动</a>
<nav class="site-nav">
<a class="page-link" href="/about/">About</a>
<a class="page-link" href="/category/">Category</a>
</nav>
</div>
</header>
<div class="page-content">
<div class="wrapper">
<div class="col-main">
<div class="post">
<header class="post-header">
<h1 class="post-title">About</h1>
</header>
<article class="post-content">
<h1 id="pengzhan-hao">Pengzhan Hao</h1>
<p>Email:haopengzhan@gmail.com <br />
Address:Binghamton University <br />
Phone: (607)-II-III-II-83-VII-II</p>
</article>
</div>
</div>
<div class="col-second">
<div class="col-box col-box-author">
<img class="avatar" src="/static/avatar.jpg" alt="Pengzhan Hao - 碾子">
<div class="col-box-title name">Pengzhan Hao - 碾子</div>
<p></p>
<p class="contact">
<a href="https://github.com/codersherlock">GitHub</a>
<a href="https://twitter.com/haopengzhan">Twitter</a>
<a href="mailto:haopengzhan@gmail.com">Email</a>
</p>
</div>
<div class="col-box">
<div class="col-box-title">Newest Posts</div>
<ul class="post-list">
<li><a class="post-link" href="/archivers/hello">Stop Talking is the worst title of one blog</a></li>
</ul>
</div>
<div class="col-box post-toc hide">
<div class="col-box-title">TOC</div>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="wrapper">
&copy; 2016 Pengzhan Hao - 碾子
</div>
</footer>
<script src="/js/easybook.js"></script>
</body>
</html>
@@ -0,0 +1,115 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>About m « Stop Talking, Start Doing</title>
<meta name="description" content="Pengzhan Haohaopengzhan@gmail.com | Binghamton University | 607-II-III-II-83-VII-II———————————————————————–">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="https://codersherlock.github.com//about/me/2016/10/26/welcome-to-my-blog.html">
<link rel="alternate" type="application/rss+xml" title="Stop Talking, Start Doing" href="https://codersherlock.github.com//feed.xml" />
</head>
<body>
<header class="header">
<div class="wrapper">
<a class="site-title" href="/">Stop Talking, Start Doing</a>
<nav class="site-nav">
<a class="page-link" href="/about/">About</a>
<a class="page-link" href="/category/">Category</a>
</nav>
</div>
</header>
<div class="page-content">
<div class="wrapper">
<div class="col-main">
<div class="post">
<header class="post-header">
<h1 class="post-title">About m</h1>
<p class="post-meta">Oct 26, 2016</p>
</header>
<article class="post-content">
<h1 id="pengzhan-hao">Pengzhan Hao</h1>
<p>haopengzhan@gmail.com | Binghamton University | 607-II-III-II-83-VII-II
———————————————————————–</p>
</article>
</div>
</div>
<div class="col-second">
<div class="col-box col-box-author">
<img class="avatar" src="" alt="">
<div class="col-box-title name"></div>
<p></p>
<p class="contact">
<a href="https://github.com/codersherlock">GitHub</a>
<a href="https://twitter.com/haopengzhan">Twitter</a>
<a href="mailto:haopengzhan@gmail.com">Email</a>
</p>
</div>
<div class="col-box">
<div class="col-box-title">Newest Posts</div>
<ul class="post-list">
<li><a class="post-link" href="/about/me/2016/10/26/welcome-to-my-blog.html">About m</a></li>
</ul>
</div>
<div class="col-box post-toc hide">
<div class="col-box-title">TOC</div>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="wrapper">
&copy; 2016
</div>
</footer>
<script src="/js/easybook.js"></script>
</body>
</html>
+112
View File
@@ -0,0 +1,112 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Stop Talking is the worst title of one blog « Stop Talking, Start Doing - 停止空想,开始行动</title>
<meta name="description" content="">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="https://codersherlock.github.com//archivers/hello">
<link rel="alternate" type="application/rss+xml" title="Stop Talking, Start Doing - 停止空想,开始行动" href="https://codersherlock.github.com//feed.xml" />
</head>
<body>
<header class="header">
<div class="wrapper">
<a class="site-title" href="/">Stop Talking, Start Doing - 停止空想,开始行动</a>
<nav class="site-nav">
<a class="page-link" href="/about/">About</a>
<a class="page-link" href="/category/">Category</a>
</nav>
</div>
</header>
<div class="page-content">
<div class="wrapper">
<div class="col-main">
<div class="post">
<header class="post-header">
<h1 class="post-title">Stop Talking is the worst title of one blog</h1>
<p class="post-meta">Oct 26, 2016</p>
</header>
<article class="post-content">
</article>
</div>
</div>
<div class="col-second">
<div class="col-box col-box-author">
<img class="avatar" src="/static/avatar.jpg" alt="Pengzhan Hao - 碾子">
<div class="col-box-title name">Pengzhan Hao - 碾子</div>
<p></p>
<p class="contact">
<a href="https://github.com/codersherlock">GitHub</a>
<a href="https://twitter.com/haopengzhan">Twitter</a>
<a href="mailto:haopengzhan@gmail.com">Email</a>
</p>
</div>
<div class="col-box">
<div class="col-box-title">Newest Posts</div>
<ul class="post-list">
<li><a class="post-link" href="/archivers/hello">Stop Talking is the worst title of one blog</a></li>
</ul>
</div>
<div class="col-box post-toc hide">
<div class="col-box-title">TOC</div>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="wrapper">
&copy; 2016 Pengzhan Hao - 碾子
</div>
</footer>
<script src="/js/easybook.js"></script>
</body>
</html>
+115
View File
@@ -0,0 +1,115 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Category « Stop Talking, Start Doing - 停止空想,开始行动</title>
<meta name="description" content="My personal blog, with some boring research staff and some tricks I was fancy to. I'll try my best to make this blog fun and useful. Not just a place I complain about all happens in my Lab.
">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="https://codersherlock.github.com//category/">
<link rel="alternate" type="application/rss+xml" title="Stop Talking, Start Doing - 停止空想,开始行动" href="https://codersherlock.github.com//feed.xml" />
</head>
<body>
<header class="header">
<div class="wrapper">
<a class="site-title" href="/">Stop Talking, Start Doing - 停止空想,开始行动</a>
<nav class="site-nav">
<a class="page-link" href="/about/">About</a>
<a class="page-link" href="/category/">Category</a>
</nav>
</div>
</header>
<div class="page-content">
<div class="wrapper">
<div class="col-main">
<div class="home">
<h1 class="page-heading">Category</h1>
<ul class="post-list">
<h2 class="category" id="Nonsense">NONSENSE</h2>
<ul>
<li><span>Oct 26</span> » <a href="/archivers/hello">Stop Talking is the worst title of one blog</a></li>
</ul>
</ul>
</div>
</div>
<div class="col-second">
<div class="col-box col-box-author">
<img class="avatar" src="/static/avatar.jpg" alt="Pengzhan Hao - 碾子">
<div class="col-box-title name">Pengzhan Hao - 碾子</div>
<p></p>
<p class="contact">
<a href="https://github.com/codersherlock">GitHub</a>
<a href="https://twitter.com/haopengzhan">Twitter</a>
<a href="mailto:haopengzhan@gmail.com">Email</a>
</p>
</div>
<div class="col-box">
<div class="col-box-title">Newest Posts</div>
<ul class="post-list">
<li><a class="post-link" href="/archivers/hello">Stop Talking is the worst title of one blog</a></li>
</ul>
</div>
<div class="col-box post-toc hide">
<div class="col-box-title">TOC</div>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="wrapper">
&copy; 2016 Pengzhan Hao - 碾子
</div>
</footer>
<script src="/js/easybook.js"></script>
</body>
</html>
+559
View File
@@ -0,0 +1,559 @@
@charset "UTF-8";
body {
margin: 0;
font-family: "Open Sans", "Helvetica Neue", "DejaVu Sans", Arial, "PingFang SC", "Noto Sans CJK SC", "Hiragino Sans GB", "微软雅黑", Helvetica, sans-serif;
font-size: 16px;
line-height: 1.5; }
a {
text-decoration: none;
color: #036; }
a:hover, a:focus {
text-decoration: underline;
color: #069; }
blockquote {
background: #FFF;
margin: 0;
padding: 5px 20px;
border-left: 10px solid #CCC; }
code, pre {
font-family: Menlo, Monaco, Consolas, "DejaVu Sans Mono", "Liberation Mono", "文泉驿等宽微米黑", "Courier New", Courier, SimSun, monospace;
font-size: 15px; }
code {
color: #900;
background-color: #fff;
padding: 2px 5px;
border-radius: 5px; }
pre {
overflow-x: auto;
padding: 20px 50px; }
pre, pre code {
color: #fafafa;
background-color: #223; }
pre code {
padding: 0; }
.hide {
display: none; }
.center {
text-align: center; }
table {
border-collapse: collapse;
border-spacing: 0;
margin: 10pt auto;
background: #FFF; }
table td, table th {
border: 1px solid #CCC;
padding: 5px 15px;
margin: 0; }
table th {
border-color: #555;
background: #555;
color: #eee;
font-weight: normal; }
table tr:hover {
background: rgba(255, 255, 0, 0.2); }
h1, h2, h3, h4, h5, h6 {
font-weight: normal; }
.wrapper {
margin: 0 auto;
max-width: 1100px; }
@media (max-width: 1120px) {
.wrapper {
max-width: 800px; } }
.header {
line-height: 32px;
background-color: #607D8B;
padding: 10px;
margin: 0; }
.header:after {
clear: both;
content: ' ';
display: block; }
.header .site-title {
float: left;
color: #FFF;
text-decoration: none;
font-size: 16px;
line-height: 32px; }
.header .site-nav {
text-align: right; }
.header .site-nav a {
text-decoration: none;
color: #CFD8DC;
padding: 10px 20px;
white-space: nowrap; }
.header .site-nav a:hover, .header .site-nav a:focus {
background: #78909C; }
.page-content {
background: #e0e0e3;
padding: 30px 0; }
.page-content .wrapper {
position: relative;
background: #FAFAFA;
box-shadow: 0 1px 4px #999;
outline: 1px solid #CCC; }
.page-content .wrapper:after {
clear: both;
content: '';
display: block; }
.page-content .wrapper:before {
content: '';
display: block;
position: absolute;
width: 300px;
height: 100%;
left: 800px;
top: 0;
background: #EEE; }
.page-content img {
max-width: 100%; }
.col-main {
position: relative;
box-sizing: border-box;
padding: 30px;
width: 800px;
float: left; }
.col-second {
position: relative;
box-sizing: border-box;
float: left;
width: 300px;
padding: 20px;
background: #EEE;
z-index: 10; }
.col-box {
color: #666;
font-size: 14px;
padding-bottom: 20px; }
.col-box p {
margin: 0; }
.col-box ul {
padding-left: 20px;
margin: 0; }
.col-box:not(:first-child) {
border-top: 1px solid #ccc;
padding-top: 20px; }
.col-box .col-box-title {
color: #333;
margin-bottom: 10px;
font-size: 15.4px; }
@media (max-width: 1120px) {
.page-content .wrapper:before {
display: none; }
.col-main,
.col-second {
width: auto;
float: none; }
.col-box {
width: 50%;
float: left;
margin-bottom: 10px; }
.col-box:not(:first-child) {
border-top: none;
padding-top: 0; }
.col-second:after {
clear: both;
display: block;
content: ' '; } }
.col-box-author {
text-align: center; }
.col-box-author .avatar {
width: 135px;
height: 135px;
border-radius: 100%;
margin: 20px auto;
display: block; }
.col-box-author .name {
font-size: 16px; }
.col-box-author .contact {
margin-top: 10px; }
.col-box-author .contact a {
background: #999;
color: #eee;
padding: 5px 10px;
text-decoration: none;
border-radius: 5px;
white-space: nowrap; }
.col-box-author .contact a:hover {
transition: background 0.3s ease;
background: #666; }
.footer {
padding: 60px 0;
background-color: #e0e0e3;
text-align: center;
color: #666;
font-size: 14px; }
.post .post-header {
margin: 0 100px;
margin-bottom: 40px;
padding: 20px; }
.post .post-header .post-title {
font-size: 40px;
font-weight: normal;
margin: 0 -100px; }
@media screen and (max-width: 600px) {
.post .post-header .post-title {
font-size: 34px; } }
.post .post-header .post-meta {
color: #999;
font-size: 14px;
margin: 0 -100px; }
@media screen and (max-width: 600px) {
.post .post-header {
text-align: center;
margin-bottom: 10px;
padding: 10px; } }
.post .post-content {
color: #333; }
.post .post-content h1, .post .post-content h2, .post .post-content h3, .post .post-content h4, .post .post-content h5, .post .post-content h6 {
color: #000; }
.post .post-content h1, .post .post-content h2 {
margin-bottom: 10px;
margin-top: 30px; }
.post .post-content h1, .post .post-content h2, .post .post-content h3 {
border-bottom: 1px solid #CCC; }
.post .post-content pre {
margin: 0 -30px; }
@media screen and (max-width: 600px) {
.post .post-content pre {
margin: 0 -10px; } }
.post .post-content .middle-image {
display: block;
margin-left: auto;
margin-right: auto; }
.post .post-comments {
padding-top: 30px; }
.home .page-heading {
font-size: 40px;
font-weight: normal;
margin: 20px; }
@media screen and (max-width: 600px) {
.home .page-heading {
margin: 10px;
font-size: 34px; } }
.home .rss-link {
float: right;
text-decoration: none;
border: 1px solid;
color: #999;
background: #fff;
font-size: 11.2px;
padding: 1px 8px; }
.home .rss-link:hover, .home .rss-link:focus {
color: #666; }
.home .post-list {
margin: 0;
padding: 20px 40px;
list-style: none; }
.home .post-list > li {
padding-bottom: 30px;
border-bottom: 1px solid #CCC;
margin-bottom: 30px; }
.home .post-list .post-title {
font-size: 28px;
font-weight: normal;
margin: 0; }
.home .post-list .post-meta {
font-size: 14px;
color: #666;
margin: 0 20px;
margin-bottom: .5em; }
.home .post-list .post-excerpt {
margin: 0 20px; }
.home .post-list .post-excerpt, .home .post-list .post-excerpt * {
font-size: 14px;
line-height: 14px;
padding-top: 0;
padding-bottom: 0;
color: #333; }
.home .post-list .post-excerpt code, .home .post-list .post-excerpt pre, .home .post-list .post-excerpt pre * {
color: #666;
background-color: #eee; }
.home .post-list .post-excerpt th {
border-color: #ccc;
background-color: #ccc; }
.home .post-list .post-excerpt a {
color: #069; }
.home .post-list .post-excerpt img {
display: block;
margin: 1em auto;
max-height: 16em;
opacity: .7;
transition: opacity .3s; }
.home .post-list .post-excerpt img:hover {
opacity: 1; }
@media screen and (max-width: 600px) {
.home .post-list {
padding: 10px; } }
.home .pagination {
text-align: center;
text-decoration: none;
color: #666;
margin: 30px 0; }
.home .pagination .page_number {
margin: 0 30px; }
.home .pagination .previous, .home .pagination .next {
padding: 10px 20px;
white-space: nowrap; }
.home .pagination a.previous, .home .pagination a.next {
color: #333;
border-radius: 20px;
border: 1px solid #CCC; }
.home .pagination a.previous:hover, .home .pagination a.next:hover {
background: #fefefe;
color: #000;
text-decoration: none; }
@media screen and (max-width: 800px) {
.page-content {
padding: 0; }
.footer {
padding: 15px 0; } }
@media screen and (max-width: 600px) {
.header, .header .site-nav {
text-align: center; }
.header .site-title {
float: none; }
.col-main {
padding: 10px; }
.col-box {
width: 100%;
float: none;
margin-bottom: 20px; }
pre {
padding: 10px; } }
/* Monokai Theme from https://github.com/richleland/pygments-css/blob/master/monokai.css */
.highlight {
/* Comment */
/* Error */
/* Keyword */
/* Literal */
/* Name */
/* Operator */
/* Punctuation */
/* Comment.Multiline */
/* Comment.Preproc */
/* Comment.Single */
/* Comment.Special */
/* Generic.Emph */
/* Generic.Strong */
/* Keyword.Constant */
/* Keyword.Declaration */
/* Keyword.Namespace */
/* Keyword.Pseudo */
/* Keyword.Reserved */
/* Keyword.Type */
/* Literal.Date */
/* Literal.Number */
/* Literal.String */
/* Name.Attribute */
/* Name.Builtin */
/* Name.Class */
/* Name.Constant */
/* Name.Decorator */
/* Name.Entity */
/* Name.Exception */
/* Name.Function */
/* Name.Label */
/* Name.Namespace */
/* Name.Other */
/* Name.Property */
/* Name.Tag */
/* Name.Variable */
/* Operator.Word */
/* Text.Whitespace */
/* Literal.Number.Float */
/* Literal.Number.Hex */
/* Literal.Number.Integer */
/* Literal.Number.Oct */
/* Literal.String.Backtick */
/* Literal.String.Char */
/* Literal.String.Doc */
/* Literal.String.Double */
/* Literal.String.Escape */
/* Literal.String.Heredoc */
/* Literal.String.Interpol */
/* Literal.String.Other */
/* Literal.String.Regex */
/* Literal.String.Single */
/* Literal.String.Symbol */
/* Name.Builtin.Pseudo */
/* Name.Variable.Class */
/* Name.Variable.Global */
/* Name.Variable.Instance */
/* Literal.Number.Integer.Long */
/* Generic Heading & Diff Header */
/* Generic.Subheading & Diff Unified/Comment? */
/* Generic.Deleted & Diff Deleted */
/* Generic.Inserted & Diff Inserted */ }
.highlight .hll {
background-color: #49483e; }
.highlight .c {
color: #75715e; }
.highlight .err {
color: #960050;
background-color: #1e0010; }
.highlight .k {
color: #66d9ef; }
.highlight .l {
color: #ae81ff; }
.highlight .n {
color: #f8f8f2; }
.highlight .o {
color: #f92672; }
.highlight .p {
color: #f8f8f2; }
.highlight .cm {
color: #75715e; }
.highlight .cp {
color: #75715e; }
.highlight .c1 {
color: #75715e; }
.highlight .cs {
color: #75715e; }
.highlight .ge {
font-style: italic; }
.highlight .gs {
font-weight: bold; }
.highlight .kc {
color: #66d9ef; }
.highlight .kd {
color: #66d9ef; }
.highlight .kn {
color: #f92672; }
.highlight .kp {
color: #66d9ef; }
.highlight .kr {
color: #66d9ef; }
.highlight .kt {
color: #66d9ef; }
.highlight .ld {
color: #e6db74; }
.highlight .m {
color: #ae81ff; }
.highlight .s {
color: #e6db74; }
.highlight .na {
color: #a6e22e; }
.highlight .nb {
color: #f8f8f2; }
.highlight .nc {
color: #a6e22e; }
.highlight .no {
color: #66d9ef; }
.highlight .nd {
color: #a6e22e; }
.highlight .ni {
color: #f8f8f2; }
.highlight .ne {
color: #a6e22e; }
.highlight .nf {
color: #a6e22e; }
.highlight .nl {
color: #f8f8f2; }
.highlight .nn {
color: #f8f8f2; }
.highlight .nx {
color: #a6e22e; }
.highlight .py {
color: #f8f8f2; }
.highlight .nt {
color: #f92672; }
.highlight .nv {
color: #f8f8f2; }
.highlight .ow {
color: #f92672; }
.highlight .w {
color: #f8f8f2; }
.highlight .mf {
color: #ae81ff; }
.highlight .mh {
color: #ae81ff; }
.highlight .mi {
color: #ae81ff; }
.highlight .mo {
color: #ae81ff; }
.highlight .sb {
color: #e6db74; }
.highlight .sc {
color: #e6db74; }
.highlight .sd {
color: #e6db74; }
.highlight .s2 {
color: #e6db74; }
.highlight .se {
color: #ae81ff; }
.highlight .sh {
color: #e6db74; }
.highlight .si {
color: #e6db74; }
.highlight .sx {
color: #e6db74; }
.highlight .sr {
color: #e6db74; }
.highlight .s1 {
color: #e6db74; }
.highlight .ss {
color: #e6db74; }
.highlight .bp {
color: #f8f8f2; }
.highlight .vc {
color: #f8f8f2; }
.highlight .vg {
color: #f8f8f2; }
.highlight .vi {
color: #f8f8f2; }
.highlight .il {
color: #ae81ff; }
.highlight .gu {
color: #75715e; }
.highlight .gd {
color: #f92672; }
.highlight .gi {
color: #a6e22e; }
.page-content .wrapper .post-toc > ul {
overflow: auto; }
.util-notify1 {
position: absolute;
z-index: 100;
background: rgba(0, 0, 0, 0.7);
color: #FFF;
padding: 5px 10px;
font-size: 14px;
pointer-events: none;
opacity: 1;
transition: .2s ease; }
.util-notify1.hidden {
opacity: 0;
display: none; }
+27
View File
@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Stop Talking, Start Doing - 停止空想,开始行动</title>
<description>My personal blog, with some boring research staff and some tricks I was fancy to. I&#39;ll try my best to make this blog fun and useful. Not just a place I complain about all happens in my Lab.
</description>
<link>https://codersherlock.github.com//</link>
<atom:link href="https://codersherlock.github.com//feed.xml" rel="self" type="application/rss+xml"/>
<pubDate>Thu, 27 Oct 2016 01:09:32 -0400</pubDate>
<lastBuildDate>Thu, 27 Oct 2016 01:09:32 -0400</lastBuildDate>
<generator>Jekyll v3.0.1</generator>
<item>
<title>Stop Talking is the worst title of one blog</title>
<description>
</description>
<pubDate>Wed, 26 Oct 2016 22:50:33 -0400</pubDate>
<link>https://codersherlock.github.com//archivers/hello</link>
<guid isPermaLink="true">https://codersherlock.github.com//archivers/hello</guid>
<category>Nonsense</category>
</item>
</channel>
</rss>
+131
View File
@@ -0,0 +1,131 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Stop Talking, Start Doing - 停止空想,开始行动</title>
<meta name="description" content="My personal blog, with some boring research staff and some tricks I was fancy to. I'll try my best to make this blog fun and useful. Not just a place I complain about all happens in my Lab.
">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="https://codersherlock.github.com//">
<link rel="alternate" type="application/rss+xml" title="Stop Talking, Start Doing - 停止空想,开始行动" href="https://codersherlock.github.com//feed.xml" />
</head>
<body>
<header class="header">
<div class="wrapper">
<a class="site-title" href="/">Stop Talking, Start Doing - 停止空想,开始行动</a>
<nav class="site-nav">
<a class="page-link" href="/about/">About</a>
<a class="page-link" href="/category/">Category</a>
</nav>
</div>
</header>
<div class="page-content">
<div class="wrapper">
<div class="col-main">
<div class="home">
<a class="rss-link" href="/feed.xml">RSS Feed</a>
<h1 class="page-heading">Articles</h1>
<ul class="post-list">
<li>
<h2>
<a class="post-link" href="/archivers/hello">Stop Talking is the worst title of one blog</a>
</h2>
<div class="post-meta">Oct 26, 2016</div>
<div class="post-excerpt">
<p>
<a class="post-link" href="/archivers/hello">Read More &raquo;</a>
</p>
</div>
</li>
</ul>
<!-- Pagination links -->
<div class="pagination">
<span class="previous">PREV</span>
<span class="page_number ">1 of 1</span>
<span class="next ">NEXT</span>
</div>
</div>
</div>
<div class="col-second">
<div class="col-box col-box-author">
<img class="avatar" src="/static/avatar.jpg" alt="Pengzhan Hao - 碾子">
<div class="col-box-title name">Pengzhan Hao - 碾子</div>
<p></p>
<p class="contact">
<a href="https://github.com/codersherlock">GitHub</a>
<a href="https://twitter.com/haopengzhan">Twitter</a>
<a href="mailto:haopengzhan@gmail.com">Email</a>
</p>
</div>
<div class="col-box">
<div class="col-box-title">Newest Posts</div>
<ul class="post-list">
<li><a class="post-link" href="/archivers/hello">Stop Talking is the worst title of one blog</a></li>
</ul>
</div>
<div class="col-box post-toc hide">
<div class="col-box-title">TOC</div>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="wrapper">
&copy; 2016 Pengzhan Hao - 碾子
</div>
</footer>
<script src="/js/easybook.js"></script>
</body>
</html>
+198
View File
@@ -0,0 +1,198 @@
/*!
* EasyBook Jekyll Theme Javascript
*
* http://laobubu.github.io/jekyll-theme-EasyBook
* https://github.com/laobubu/jekyll-theme-EasyBook
*
* This is just a extension for my theme.
*/
function TOCize(toc, content, matchHeightTo) {
if (!(toc && content && matchHeightTo)) return false
var cnt = 0;
var make = function(tag) {
return document.createElement(tag)
}
var aniscroll = {
to: function(top) {
aniscroll.target = top;
if (aniscroll.running) return;
aniscroll.running = setInterval(aniscroll.tick, 20);
},
target: 0,
running: 0,
getTop: function() {
return window.scrollY || window.pageYOffset || document.documentElement.scrollTop;
},
setTop: function(value) {
(window['scrollTo'] && window.scrollTo(window.scrollX, value))
},
tick: function() {
var oldST = aniscroll.getTop(), newST = ~~((oldST + aniscroll.target) / 2);
aniscroll.setTop(newST);
if (aniscroll.getTop() < newST || Math.abs(newST - aniscroll.target) < 10) {
aniscroll.setTop(aniscroll.target);
clearInterval(aniscroll.running)
aniscroll.running = 0
}
}
}
function scrollToHeader(header, hash, ev) {
var y = header.getBoundingClientRect().top + aniscroll.getTop();
if (window.history['pushState']) {
window.history.pushState({}, header.textContent, "#" + hash);
aniscroll.to(y);
ev.preventDefault();
} else {
var y2 = aniscroll.getTop();
setTimeout(function() {
aniscroll.setTop(y2);
aniscroll.to(y);
}, 0);
}
}
var generateLink = function(h) {
var q = make('a');
cnt++;
var hash = h.getAttribute('id');
if (!hash) {
hash = ('generated-hash-' + cnt);
h.setAttribute('id', hash);
}
q.textContent = h.textContent;
q.setAttribute('href', '#' + hash );
q.addEventListener('click', scrollToHeader.bind(this, h, hash), false);
return q;
};
var hs = content.querySelectorAll('h1, h2, h3, h4, h5, h6');
var cul = null, plevel = 1;
var uls = [make('ul')];
for (var i=0;i<hs.length;i++) {
var level = +hs[i].tagName.substr(1);
var hi = hs[i];
var ti = make('li');
ti.appendChild(generateLink(hi));
if (plevel < level) {
do {
uls.push(make('ul'));
uls[uls.length-2].appendChild(uls[uls.length-1]);
} while (++plevel < level);
} else if (plevel > level) {
do {
cul = uls.pop();
} while (--plevel > level);
}
cul = uls[uls.length-1];
cul.appendChild(ti);
}
while(true) {
var chs = uls[0].children;
if (chs.length == 1 && chs[0].tagName == 'UL')
uls.shift();
else
break;
}
if (!cnt) return false;
var scrolldummy=make('div');
toc.appendChild(scrolldummy);
toc.appendChild(uls[0]);
toc.style.display = 'block';
var maxHeightTOC = '';
var ppc = document.querySelector('.col-main');
var s1 = function(){
var scrollTop=aniscroll.getTop(), dummyClientTop=scrolldummy.getBoundingClientRect().top,
margin = 10,c,d; // c = dummyHeight, d = TOC.maxHeight (+'px')
if ((c = -dummyClientTop + margin) < 0) c = 0;
if (c) {
var wh = window.innerHeight
|| document.documentElement.clientHeight
|| document.body.clientHeight,
cbox = matchHeightTo.getBoundingClientRect(),
vq = cbox.bottom - dummyClientTop - uls[0].offsetHeight;
if (c>vq) c=vq;
d = (wh - (margin<<1)) + 'px';
} else {
d = "";
}
if (d != maxHeightTOC) { //status lock.
maxHeightTOC = d;
if (d) {
uls[0].setAttribute('style', 'max-height:' + d + '; width:' + (toc.offsetWidth-20) + "px" );
} else {
uls[0].setAttribute("style","");
}
}
scrolldummy.style.height = (c+'px');
};
window.addEventListener('scroll', s1, false);
window.addEventListener('resize', s1, false);
}
function SelectAllize(selector,tips) {
if (!window.getSelection) return null;
var obj = document.querySelectorAll(selector);
var selection=window.getSelection();
var z = document.createElement("div");
z.className = "util-notify1";
z.textContent = tips;
document.body.appendChild(z)
function hide() {
z.classList.add('hidden')
z.style.top = '-200px'
}
hide();
z.addEventListener('mouseover', hide, false);
function clickHandler(e){
if (!selection.isCollapsed) return;
var tt = e.pageY-z.offsetHeight - 15;
z.setAttribute('style', 'left:' + (e.pageX-z.offsetWidth/2) + 'px;top:' + (tt+10) + 'px');
z.classList.remove('hidden');
setTimeout(hide, 1000);
}
function dblClickHandler(e){
selection.selectAllChildren(this);
hide();
}
for(var i = obj.length; i--;) {
var oi = obj[i];
oi.addEventListener('click', clickHandler, false);
oi.addEventListener('dblclick', dblClickHandler, false);
}
return true;
}
function RealLoad(){
TOCize(
document.querySelector('.post-toc'),
document.querySelector('.post-content'),
document.querySelector('.col-main')
);
SelectAllize("pre.highlight", "Dblclick to select all");
var imgs = document.querySelectorAll('.post-content > p > img');
for(var i=imgs.length; i--;){
if (imgs[i].parentElement.childNodes.length === 1) {
imgs[i].classList.add('middle-image');
}
}
}
RealLoad();
+322
View File
@@ -0,0 +1,322 @@
/**
* @preserve HTML5 Shiv 3.7.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
*/
;(function(window, document) {
/*jshint evil:true */
/** version */
var version = '3.7.2';
/** Preset options */
var options = window.html5 || {};
/** Used to skip problem elements */
var reSkip = /^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i;
/** Not all elements can be cloned in IE **/
var saveClones = /^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i;
/** Detect whether the browser supports default html5 styles */
var supportsHtml5Styles;
/** Name of the expando, to work with multiple documents or to re-shiv one document */
var expando = '_html5shiv';
/** The id for the the documents expando */
var expanID = 0;
/** Cached data for each document */
var expandoData = {};
/** Detect whether the browser supports unknown elements */
var supportsUnknownElements;
(function() {
try {
var a = document.createElement('a');
a.innerHTML = '<xyz></xyz>';
//if the hidden property is implemented we can assume, that the browser supports basic HTML5 Styles
supportsHtml5Styles = ('hidden' in a);
supportsUnknownElements = a.childNodes.length == 1 || (function() {
// assign a false positive if unable to shiv
(document.createElement)('a');
var frag = document.createDocumentFragment();
return (
typeof frag.cloneNode == 'undefined' ||
typeof frag.createDocumentFragment == 'undefined' ||
typeof frag.createElement == 'undefined'
);
}());
} catch(e) {
// assign a false positive if detection fails => unable to shiv
supportsHtml5Styles = true;
supportsUnknownElements = true;
}
}());
/*--------------------------------------------------------------------------*/
/**
* Creates a style sheet with the given CSS text and adds it to the document.
* @private
* @param {Document} ownerDocument The document.
* @param {String} cssText The CSS text.
* @returns {StyleSheet} The style element.
*/
function addStyleSheet(ownerDocument, cssText) {
var p = ownerDocument.createElement('p'),
parent = ownerDocument.getElementsByTagName('head')[0] || ownerDocument.documentElement;
p.innerHTML = 'x<style>' + cssText + '</style>';
return parent.insertBefore(p.lastChild, parent.firstChild);
}
/**
* Returns the value of `html5.elements` as an array.
* @private
* @returns {Array} An array of shived element node names.
*/
function getElements() {
var elements = html5.elements;
return typeof elements == 'string' ? elements.split(' ') : elements;
}
/**
* Extends the built-in list of html5 elements
* @memberOf html5
* @param {String|Array} newElements whitespace separated list or array of new element names to shiv
* @param {Document} ownerDocument The context document.
*/
function addElements(newElements, ownerDocument) {
var elements = html5.elements;
if(typeof elements != 'string'){
elements = elements.join(' ');
}
if(typeof newElements != 'string'){
newElements = newElements.join(' ');
}
html5.elements = elements +' '+ newElements;
shivDocument(ownerDocument);
}
/**
* Returns the data associated to the given document
* @private
* @param {Document} ownerDocument The document.
* @returns {Object} An object of data.
*/
function getExpandoData(ownerDocument) {
var data = expandoData[ownerDocument[expando]];
if (!data) {
data = {};
expanID++;
ownerDocument[expando] = expanID;
expandoData[expanID] = data;
}
return data;
}
/**
* returns a shived element for the given nodeName and document
* @memberOf html5
* @param {String} nodeName name of the element
* @param {Document} ownerDocument The context document.
* @returns {Object} The shived element.
*/
function createElement(nodeName, ownerDocument, data){
if (!ownerDocument) {
ownerDocument = document;
}
if(supportsUnknownElements){
return ownerDocument.createElement(nodeName);
}
if (!data) {
data = getExpandoData(ownerDocument);
}
var node;
if (data.cache[nodeName]) {
node = data.cache[nodeName].cloneNode();
} else if (saveClones.test(nodeName)) {
node = (data.cache[nodeName] = data.createElem(nodeName)).cloneNode();
} else {
node = data.createElem(nodeName);
}
// Avoid adding some elements to fragments in IE < 9 because
// * Attributes like `name` or `type` cannot be set/changed once an element
// is inserted into a document/fragment
// * Link elements with `src` attributes that are inaccessible, as with
// a 403 response, will cause the tab/window to crash
// * Script elements appended to fragments will execute when their `src`
// or `text` property is set
return node.canHaveChildren && !reSkip.test(nodeName) && !node.tagUrn ? data.frag.appendChild(node) : node;
}
/**
* returns a shived DocumentFragment for the given document
* @memberOf html5
* @param {Document} ownerDocument The context document.
* @returns {Object} The shived DocumentFragment.
*/
function createDocumentFragment(ownerDocument, data){
if (!ownerDocument) {
ownerDocument = document;
}
if(supportsUnknownElements){
return ownerDocument.createDocumentFragment();
}
data = data || getExpandoData(ownerDocument);
var clone = data.frag.cloneNode(),
i = 0,
elems = getElements(),
l = elems.length;
for(;i<l;i++){
clone.createElement(elems[i]);
}
return clone;
}
/**
* Shivs the `createElement` and `createDocumentFragment` methods of the document.
* @private
* @param {Document|DocumentFragment} ownerDocument The document.
* @param {Object} data of the document.
*/
function shivMethods(ownerDocument, data) {
if (!data.cache) {
data.cache = {};
data.createElem = ownerDocument.createElement;
data.createFrag = ownerDocument.createDocumentFragment;
data.frag = data.createFrag();
}
ownerDocument.createElement = function(nodeName) {
//abort shiv
if (!html5.shivMethods) {
return data.createElem(nodeName);
}
return createElement(nodeName, ownerDocument, data);
};
ownerDocument.createDocumentFragment = Function('h,f', 'return function(){' +
'var n=f.cloneNode(),c=n.createElement;' +
'h.shivMethods&&(' +
// unroll the `createElement` calls
getElements().join().replace(/[\w\-:]+/g, function(nodeName) {
data.createElem(nodeName);
data.frag.createElement(nodeName);
return 'c("' + nodeName + '")';
}) +
');return n}'
)(html5, data.frag);
}
/*--------------------------------------------------------------------------*/
/**
* Shivs the given document.
* @memberOf html5
* @param {Document} ownerDocument The document to shiv.
* @returns {Document} The shived document.
*/
function shivDocument(ownerDocument) {
if (!ownerDocument) {
ownerDocument = document;
}
var data = getExpandoData(ownerDocument);
if (html5.shivCSS && !supportsHtml5Styles && !data.hasCSS) {
data.hasCSS = !!addStyleSheet(ownerDocument,
// corrects block display not defined in IE6/7/8/9
'article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}' +
// adds styling not present in IE6/7/8/9
'mark{background:#FF0;color:#000}' +
// hides non-rendered elements
'template{display:none}'
);
}
if (!supportsUnknownElements) {
shivMethods(ownerDocument, data);
}
return ownerDocument;
}
/*--------------------------------------------------------------------------*/
/**
* The `html5` object is exposed so that more elements can be shived and
* existing shiving can be detected on iframes.
* @type Object
* @example
*
* // options can be changed before the script is included
* html5 = { 'elements': 'mark section', 'shivCSS': false, 'shivMethods': false };
*/
var html5 = {
/**
* An array or space separated string of node names of the elements to shiv.
* @memberOf html5
* @type Array|String
*/
'elements': options.elements || 'abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video',
/**
* current version of html5shiv
*/
'version': version,
/**
* A flag to indicate that the HTML5 style sheet should be inserted.
* @memberOf html5
* @type Boolean
*/
'shivCSS': (options.shivCSS !== false),
/**
* Is equal to true if a browser supports creating unknown/HTML5 elements
* @memberOf html5
* @type boolean
*/
'supportsUnknownElements': supportsUnknownElements,
/**
* A flag to indicate that the document's `createElement` and `createDocumentFragment`
* methods should be overwritten.
* @memberOf html5
* @type Boolean
*/
'shivMethods': (options.shivMethods !== false),
/**
* A string to describe the type of `html5` object ("default" or "default print").
* @memberOf html5
* @type String
*/
'type': 'default',
// shivs the document according to the specified `html5` object options
'shivDocument': shivDocument,
//creates a shived element
createElement: createElement,
//creates a shived documentFragment
createDocumentFragment: createDocumentFragment,
//extends list of elements
addElements: addElements
};
/*--------------------------------------------------------------------------*/
// expose html5
window.html5 = html5;
// shiv the document
shivDocument(document);
}(this, document));
+353
View File
@@ -0,0 +1,353 @@
/* Respond.js: min/max-width media query polyfill. (c) Scott Jehl. MIT Lic. j.mp/respondjs */
(function( w ){
"use strict";
//exposed namespace
var respond = {};
w.respond = respond;
//define update even in native-mq-supporting browsers, to avoid errors
respond.update = function(){};
//define ajax obj
var requestQueue = [],
xmlHttp = (function() {
var xmlhttpmethod = false;
try {
xmlhttpmethod = new w.XMLHttpRequest();
}
catch( e ){
xmlhttpmethod = new w.ActiveXObject( "Microsoft.XMLHTTP" );
}
return function(){
return xmlhttpmethod;
};
})(),
//tweaked Ajax functions from Quirksmode
ajax = function( url, callback ) {
var req = xmlHttp();
if (!req){
return;
}
req.open( "GET", url, true );
req.onreadystatechange = function () {
if ( req.readyState !== 4 || req.status !== 200 && req.status !== 304 ){
return;
}
callback( req.responseText );
};
if ( req.readyState === 4 ){
return;
}
req.send( null );
},
isUnsupportedMediaQuery = function( query ) {
return query.replace( respond.regex.minmaxwh, '' ).match( respond.regex.other );
};
//expose for testing
respond.ajax = ajax;
respond.queue = requestQueue;
respond.unsupportedmq = isUnsupportedMediaQuery;
respond.regex = {
media: /@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi,
keyframes: /@(?:\-(?:o|moz|webkit)\-)?keyframes[^\{]+\{(?:[^\{\}]*\{[^\}\{]*\})+[^\}]*\}/gi,
comments: /\/\*[^*]*\*+([^/][^*]*\*+)*\//gi,
urls: /(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,
findStyles: /@media *([^\{]+)\{([\S\s]+?)$/,
only: /(only\s+)?([a-zA-Z]+)\s?/,
minw: /\(\s*min\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,
maxw: /\(\s*max\-width\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/,
minmaxwh: /\(\s*m(in|ax)\-(height|width)\s*:\s*(\s*[0-9\.]+)(px|em)\s*\)/gi,
other: /\([^\)]*\)/g
};
//expose media query support flag for external use
respond.mediaQueriesSupported = w.matchMedia && w.matchMedia( "only all" ) !== null && w.matchMedia( "only all" ).matches;
//if media queries are supported, exit here
if( respond.mediaQueriesSupported ){
return;
}
//define vars
var doc = w.document,
docElem = doc.documentElement,
mediastyles = [],
rules = [],
appendedEls = [],
parsedSheets = {},
resizeThrottle = 30,
head = doc.getElementsByTagName( "head" )[0] || docElem,
base = doc.getElementsByTagName( "base" )[0],
links = head.getElementsByTagName( "link" ),
lastCall,
resizeDefer,
//cached container for 1em value, populated the first time it's needed
eminpx,
// returns the value of 1em in pixels
getEmValue = function() {
var ret,
div = doc.createElement('div'),
body = doc.body,
originalHTMLFontSize = docElem.style.fontSize,
originalBodyFontSize = body && body.style.fontSize,
fakeUsed = false;
div.style.cssText = "position:absolute;font-size:1em;width:1em";
if( !body ){
body = fakeUsed = doc.createElement( "body" );
body.style.background = "none";
}
// 1em in a media query is the value of the default font size of the browser
// reset docElem and body to ensure the correct value is returned
docElem.style.fontSize = "100%";
body.style.fontSize = "100%";
body.appendChild( div );
if( fakeUsed ){
docElem.insertBefore( body, docElem.firstChild );
}
ret = div.offsetWidth;
if( fakeUsed ){
docElem.removeChild( body );
}
else {
body.removeChild( div );
}
// restore the original values
docElem.style.fontSize = originalHTMLFontSize;
if( originalBodyFontSize ) {
body.style.fontSize = originalBodyFontSize;
}
//also update eminpx before returning
ret = eminpx = parseFloat(ret);
return ret;
},
//enable/disable styles
applyMedia = function( fromResize ){
var name = "clientWidth",
docElemProp = docElem[ name ],
currWidth = doc.compatMode === "CSS1Compat" && docElemProp || doc.body[ name ] || docElemProp,
styleBlocks = {},
lastLink = links[ links.length-1 ],
now = (new Date()).getTime();
//throttle resize calls
if( fromResize && lastCall && now - lastCall < resizeThrottle ){
w.clearTimeout( resizeDefer );
resizeDefer = w.setTimeout( applyMedia, resizeThrottle );
return;
}
else {
lastCall = now;
}
for( var i in mediastyles ){
if( mediastyles.hasOwnProperty( i ) ){
var thisstyle = mediastyles[ i ],
min = thisstyle.minw,
max = thisstyle.maxw,
minnull = min === null,
maxnull = max === null,
em = "em";
if( !!min ){
min = parseFloat( min ) * ( min.indexOf( em ) > -1 ? ( eminpx || getEmValue() ) : 1 );
}
if( !!max ){
max = parseFloat( max ) * ( max.indexOf( em ) > -1 ? ( eminpx || getEmValue() ) : 1 );
}
// if there's no media query at all (the () part), or min or max is not null, and if either is present, they're true
if( !thisstyle.hasquery || ( !minnull || !maxnull ) && ( minnull || currWidth >= min ) && ( maxnull || currWidth <= max ) ){
if( !styleBlocks[ thisstyle.media ] ){
styleBlocks[ thisstyle.media ] = [];
}
styleBlocks[ thisstyle.media ].push( rules[ thisstyle.rules ] );
}
}
}
//remove any existing respond style element(s)
for( var j in appendedEls ){
if( appendedEls.hasOwnProperty( j ) ){
if( appendedEls[ j ] && appendedEls[ j ].parentNode === head ){
head.removeChild( appendedEls[ j ] );
}
}
}
appendedEls.length = 0;
//inject active styles, grouped by media type
for( var k in styleBlocks ){
if( styleBlocks.hasOwnProperty( k ) ){
var ss = doc.createElement( "style" ),
css = styleBlocks[ k ].join( "\n" );
ss.type = "text/css";
ss.media = k;
//originally, ss was appended to a documentFragment and sheets were appended in bulk.
//this caused crashes in IE in a number of circumstances, such as when the HTML element had a bg image set, so appending beforehand seems best. Thanks to @dvelyk for the initial research on this one!
head.insertBefore( ss, lastLink.nextSibling );
if ( ss.styleSheet ){
ss.styleSheet.cssText = css;
}
else {
ss.appendChild( doc.createTextNode( css ) );
}
//push to appendedEls to track for later removal
appendedEls.push( ss );
}
}
},
//find media blocks in css text, convert to style blocks
translate = function( styles, href, media ){
var qs = styles.replace( respond.regex.comments, '' )
.replace( respond.regex.keyframes, '' )
.match( respond.regex.media ),
ql = qs && qs.length || 0;
//try to get CSS path
href = href.substring( 0, href.lastIndexOf( "/" ) );
var repUrls = function( css ){
return css.replace( respond.regex.urls, "$1" + href + "$2$3" );
},
useMedia = !ql && media;
//if path exists, tack on trailing slash
if( href.length ){ href += "/"; }
//if no internal queries exist, but media attr does, use that
//note: this currently lacks support for situations where a media attr is specified on a link AND
//its associated stylesheet has internal CSS media queries.
//In those cases, the media attribute will currently be ignored.
if( useMedia ){
ql = 1;
}
for( var i = 0; i < ql; i++ ){
var fullq, thisq, eachq, eql;
//media attr
if( useMedia ){
fullq = media;
rules.push( repUrls( styles ) );
}
//parse for styles
else{
fullq = qs[ i ].match( respond.regex.findStyles ) && RegExp.$1;
rules.push( RegExp.$2 && repUrls( RegExp.$2 ) );
}
eachq = fullq.split( "," );
eql = eachq.length;
for( var j = 0; j < eql; j++ ){
thisq = eachq[ j ];
if( isUnsupportedMediaQuery( thisq ) ) {
continue;
}
mediastyles.push( {
media : thisq.split( "(" )[ 0 ].match( respond.regex.only ) && RegExp.$2 || "all",
rules : rules.length - 1,
hasquery : thisq.indexOf("(") > -1,
minw : thisq.match( respond.regex.minw ) && parseFloat( RegExp.$1 ) + ( RegExp.$2 || "" ),
maxw : thisq.match( respond.regex.maxw ) && parseFloat( RegExp.$1 ) + ( RegExp.$2 || "" )
} );
}
}
applyMedia();
},
//recurse through request queue, get css text
makeRequests = function(){
if( requestQueue.length ){
var thisRequest = requestQueue.shift();
ajax( thisRequest.href, function( styles ){
translate( styles, thisRequest.href, thisRequest.media );
parsedSheets[ thisRequest.href ] = true;
// by wrapping recursive function call in setTimeout
// we prevent "Stack overflow" error in IE7
w.setTimeout(function(){ makeRequests(); },0);
} );
}
},
//loop stylesheets, send text content to translate
ripCSS = function(){
for( var i = 0; i < links.length; i++ ){
var sheet = links[ i ],
href = sheet.href,
media = sheet.media,
isCSS = sheet.rel && sheet.rel.toLowerCase() === "stylesheet";
//only links plz and prevent re-parsing
if( !!href && isCSS && !parsedSheets[ href ] ){
// selectivizr exposes css through the rawCssText expando
if (sheet.styleSheet && sheet.styleSheet.rawCssText) {
translate( sheet.styleSheet.rawCssText, href, media );
parsedSheets[ href ] = true;
} else {
if( (!/^([a-zA-Z:]*\/\/)/.test( href ) && !base) ||
href.replace( RegExp.$1, "" ).split( "/" )[0] === w.location.host ){
// IE7 doesn't handle urls that start with '//' for ajax request
// manually add in the protocol
if ( href.substring(0,2) === "//" ) { href = w.location.protocol + href; }
requestQueue.push( {
href: href,
media: media
} );
}
}
}
}
makeRequests();
};
//translate CSS
ripCSS();
//expose update for re-running respond later on
respond.update = ripCSS;
//expose getEmValue
respond.getEmValue = getEmValue;
//adjust on resize
function callMedia(){
applyMedia( true );
}
if( w.addEventListener ){
w.addEventListener( "resize", callMedia, false );
}
else if( w.attachEvent ){
w.attachEvent( "onresize", callMedia );
}
})(this);
@@ -0,0 +1,112 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Stop Talking is the worst title of one blog « Stop Talking, Start Doing</title>
<meta name="description" content="">
<link rel="stylesheet" href="/css/main.css">
<link rel="canonical" href="https://codersherlock.github.com//nonsense/2016/10/26/welcome-to-my-blog.html">
<link rel="alternate" type="application/rss+xml" title="Stop Talking, Start Doing" href="https://codersherlock.github.com//feed.xml" />
</head>
<body>
<header class="header">
<div class="wrapper">
<a class="site-title" href="/">Stop Talking, Start Doing</a>
<nav class="site-nav">
<a class="page-link" href="/about/">About</a>
<a class="page-link" href="/category/">Category</a>
</nav>
</div>
</header>
<div class="page-content">
<div class="wrapper">
<div class="col-main">
<div class="post">
<header class="post-header">
<h1 class="post-title">Stop Talking is the worst title of one blog</h1>
<p class="post-meta">Oct 26, 2016</p>
</header>
<article class="post-content">
</article>
</div>
</div>
<div class="col-second">
<div class="col-box col-box-author">
<img class="avatar" src="" alt="">
<div class="col-box-title name"></div>
<p></p>
<p class="contact">
<a href="https://github.com/codersherlock">GitHub</a>
<a href="https://twitter.com/haopengzhan">Twitter</a>
<a href="mailto:haopengzhan@gmail.com">Email</a>
</p>
</div>
<div class="col-box">
<div class="col-box-title">Newest Posts</div>
<ul class="post-list">
<li><a class="post-link" href="/nonsense/2016/10/26/welcome-to-my-blog.html">Stop Talking is the worst title of one blog</a></li>
</ul>
</div>
<div class="col-box post-toc hide">
<div class="col-box-title">TOC</div>
</div>
</div>
</div>
</div>
<footer class="footer">
<div class="wrapper">
&copy; 2016
</div>
</footer>
<script src="/js/easybook.js"></script>
</body>
</html>
Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB