This commit is contained in:
Panos Sakkos 2015-11-19 21:28:27 +01:00
parent 25159f5b78
commit c9efc1f0aa
4 changed files with 100 additions and 3 deletions

View file

@ -30,6 +30,7 @@ You can watch it in action [here](https://panossakkos.github.io/personal-jekyll-
* RSS feed
* Cool (anti-procrastinating) 404 page
* [Android Web App mode](https://developer.chrome.com/multidevice/android/installtohomescreen)
* Syntax highlighting
* Forcing of https protocol
* Protection from Email harvesting
* Travis CI integration with [html-proofer](https://github.com/gjtorikian/html-proofer)

View file

@ -16,9 +16,6 @@
<meta name="author" content="{{site.author}}">
<meta name="keywords" content="{{site.keyword}}">
<link rel="canonical" href="{{page.url | replace:'index.html','' | prepend: site.baseurl}}">
{% if page.url == "/404.html" | prepend: {{site.baseurl}} %}
<meta http-equiv="refresh" content="20; url={{site.baseurl}}/">
{% endif %}
<title>{{site.title}} {% if page.title %} | {{page.title}}{% endif %}</title>
<!-- Bootstrap Core CSS -->
@ -44,8 +41,25 @@
{% if site.favicon %}
<link rel="shortcut icon" type="image/x-icon" href="{{site.baseurl}}{{site.favicon}}">
{% endif %}
{% if page.url == "/404.html" | prepend: {{site.baseurl}} %}
<meta http-equiv="refresh" content="20; url={{site.baseurl}}/">
{% endif %}
{% if site.web-app-mode %}
<!-- Android Web App mode -->
<link rel="manifest" href="{{site.baseurl}}/manifest.json">
{% endif %}
{% if page.section-type == "post" %}
<!-- Code highlighting in Post pages -->
<link href="{{site.baseurl}}/css/syntax.css" rel="stylesheet">
{% endif %}
</head>

View file

@ -55,3 +55,17 @@ In order to generate the tag pages, simply run the *generate-tags* script from t
The script will parse all your posts, and generate the tag pages for the newly added tags.
If you are not using Github Pages, you can automate the execution of this script during build time.
### Syntax highlighting
If you want to include a code snippet in your post, simply use the following syntax:
{% highlight c linenos %}
#include<stdio.h>
int main()
{
printf("Hello, world of syntax highlighting!");
return 0;
}
{% endhighlight %}

68
css/syntax.css Normal file
View file

@ -0,0 +1,68 @@
.highlight { background: #ffffff; }
.highlight .c { color: #999988; font-style: italic } /* Comment */
.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */
.highlight .k { font-weight: bold } /* Keyword */
.highlight .o { font-weight: bold } /* Operator */
.highlight .cm { color: #999988; font-style: italic } /* Comment.Multiline */
.highlight .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
.highlight .c1 { color: #999988; font-style: italic } /* Comment.Single */
.highlight .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
.highlight .gd .x { color: #000000; background-color: #ffaaaa } /* Generic.Deleted.Specific */
.highlight .ge { font-style: italic } /* Generic.Emph */
.highlight .gr { color: #aa0000 } /* Generic.Error */
.highlight .gh { color: #999999 } /* Generic.Heading */
.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
.highlight .gi .x { color: #000000; background-color: #aaffaa } /* Generic.Inserted.Specific */
.highlight .go { color: #888888 } /* Generic.Output */
.highlight .gp { color: #555555 } /* Generic.Prompt */
.highlight .gs { font-weight: bold } /* Generic.Strong */
.highlight .gu { color: #aaaaaa } /* Generic.Subheading */
.highlight .gt { color: #aa0000 } /* Generic.Traceback */
.highlight .kc { font-weight: bold } /* Keyword.Constant */
.highlight .kd { font-weight: bold } /* Keyword.Declaration */
.highlight .kp { font-weight: bold } /* Keyword.Pseudo */
.highlight .kr { font-weight: bold } /* Keyword.Reserved */
.highlight .kt { color: #445588; font-weight: bold } /* Keyword.Type */
.highlight .m { color: #009999 } /* Literal.Number */
.highlight .s { color: #d14 } /* Literal.String */
.highlight .na { color: #008080 } /* Name.Attribute */
.highlight .nb { color: #0086B3 } /* Name.Builtin */
.highlight .nc { color: #445588; font-weight: bold } /* Name.Class */
.highlight .no { color: #008080 } /* Name.Constant */
.highlight .ni { color: #800080 } /* Name.Entity */
.highlight .ne { color: #990000; font-weight: bold } /* Name.Exception */
.highlight .nf { color: #990000; font-weight: bold } /* Name.Function */
.highlight .nn { color: #555555 } /* Name.Namespace */
.highlight .nt { color: #000080 } /* Name.Tag */
.highlight .nv { color: #008080 } /* Name.Variable */
.highlight .ow { font-weight: bold } /* Operator.Word */
.highlight .w { color: #bbbbbb } /* Text.Whitespace */
.highlight .mf { color: #009999 } /* Literal.Number.Float */
.highlight .mh { color: #009999 } /* Literal.Number.Hex */
.highlight .mi { color: #009999 } /* Literal.Number.Integer */
.highlight .mo { color: #009999 } /* Literal.Number.Oct */
.highlight .sb { color: #d14 } /* Literal.String.Backtick */
.highlight .sc { color: #d14 } /* Literal.String.Char */
.highlight .sd { color: #d14 } /* Literal.String.Doc */
.highlight .s2 { color: #d14 } /* Literal.String.Double */
.highlight .se { color: #d14 } /* Literal.String.Escape */
.highlight .sh { color: #d14 } /* Literal.String.Heredoc */
.highlight .si { color: #d14 } /* Literal.String.Interpol */
.highlight .sx { color: #d14 } /* Literal.String.Other */
.highlight .sr { color: #009926 } /* Literal.String.Regex */
.highlight .s1 { color: #d14 } /* Literal.String.Single */
.highlight .ss { color: #990073 } /* Literal.String.Symbol */
.highlight .bp { color: #999999 } /* Name.Builtin.Pseudo */
.highlight .vc { color: #008080 } /* Name.Variable.Class */
.highlight .vg { color: #008080 } /* Name.Variable.Global */
.highlight .vi { color: #008080 } /* Name.Variable.Instance */
.highlight .il { color: #009999 } /* Literal.Number.Integer.Long */
/* Make line numbers unselectable: excludes line numbers from copy-paste user ops */
.highlight .lineno {-webkit-user-select: none;-moz-user-select: none; -o-user-select: none;}
.lineno::-moz-selection {background-color: transparent;} /* Mozilla specific */
.lineno::selection {background-color: transparent;} /* Other major browsers */
.highlight .lineno { color: #ccc; display:inline-block; padding: 0 5px; border-right:1px solid #ccc; }
.highlight pre code { display: block; white-space: pre; overflow-x: auto; word-wrap: normal; }
.highlight { text-align: left; }