diff --git a/.idea/jsLibraryMappings.xml b/.idea/jsLibraryMappings.xml
index 6f9719c..01b5de2 100644
--- a/.idea/jsLibraryMappings.xml
+++ b/.idea/jsLibraryMappings.xml
@@ -1,6 +1,6 @@
-
+
\ No newline at end of file
diff --git a/.idea/mdblog.iml b/.idea/mdblog.iml
index 506a5b2..4c2f33c 100644
--- a/.idea/mdblog.iml
+++ b/.idea/mdblog.iml
@@ -24,6 +24,7 @@
+
diff --git a/markdownblog/blog/urls.py b/markdownblog/blog/urls.py
index 7d455c8..b5e0c8d 100644
--- a/markdownblog/blog/urls.py
+++ b/markdownblog/blog/urls.py
@@ -1,4 +1,4 @@
-from blog.views import viewblog, addpost, createmocks, order, index
+from blog.views import viewblog, addpost, order, index, createmocks
from django.urls import path
urlpatterns = [
diff --git a/markdownblog/blog/views.py b/markdownblog/blog/views.py
index 1890ce2..55d77ae 100644
--- a/markdownblog/blog/views.py
+++ b/markdownblog/blog/views.py
@@ -20,7 +20,8 @@ def viewblog(request, title) -> HttpResponse:
md_file_content = mdfile.read()
mdfile.close()
- html = markdown2.markdown(md_file_content, extras=['footnote', 'task_list', 'strike'])
+ html = markdown2.markdown(md_file_content, extras=['footnotes', 'task_list', 'strike', 'break-on-newline', 'tables',
+ 'fenced-code-blocks'])
context = {'post': post, 'html': html}
return render(request, 'blog/viewpost.html', context)
diff --git a/markdownblog/markdownblog/settings.py b/markdownblog/markdownblog/settings.py
index 2399a6a..f28919c 100644
--- a/markdownblog/markdownblog/settings.py
+++ b/markdownblog/markdownblog/settings.py
@@ -31,6 +31,7 @@ ALLOWED_HOSTS = []
INSTALLED_APPS = [
'blog',
'markdownblog',
+ 'fontawesomefree',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
diff --git a/markdownblog/markdownblog/static/pygments/autumn.css b/markdownblog/markdownblog/static/pygments/autumn.css
new file mode 100644
index 0000000..bb14f47
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/autumn.css
@@ -0,0 +1,66 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #ffffff; }
+.codehilite .c { color: #aaaaaa; font-style: italic } /* Comment */
+.codehilite .err { color: #FF0000; background-color: #FFAAAA } /* Error */
+.codehilite .k { color: #0000aa } /* Keyword */
+.codehilite .ch { color: #aaaaaa; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #aaaaaa; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #4c8317 } /* Comment.Preproc */
+.codehilite .cpf { color: #aaaaaa; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #aaaaaa; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #0000aa; font-style: italic } /* Comment.Special */
+.codehilite .gd { color: #aa0000 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #aa0000 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00aa00 } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #555555 } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #aa0000 } /* Generic.Traceback */
+.codehilite .kc { color: #0000aa } /* Keyword.Constant */
+.codehilite .kd { color: #0000aa } /* Keyword.Declaration */
+.codehilite .kn { color: #0000aa } /* Keyword.Namespace */
+.codehilite .kp { color: #0000aa } /* Keyword.Pseudo */
+.codehilite .kr { color: #0000aa } /* Keyword.Reserved */
+.codehilite .kt { color: #00aaaa } /* Keyword.Type */
+.codehilite .m { color: #009999 } /* Literal.Number */
+.codehilite .s { color: #aa5500 } /* Literal.String */
+.codehilite .na { color: #1e90ff } /* Name.Attribute */
+.codehilite .nb { color: #00aaaa } /* Name.Builtin */
+.codehilite .nc { color: #00aa00; text-decoration: underline } /* Name.Class */
+.codehilite .no { color: #aa0000 } /* Name.Constant */
+.codehilite .nd { color: #888888 } /* Name.Decorator */
+.codehilite .ni { color: #880000; font-weight: bold } /* Name.Entity */
+.codehilite .nf { color: #00aa00 } /* Name.Function */
+.codehilite .nn { color: #00aaaa; text-decoration: underline } /* Name.Namespace */
+.codehilite .nt { color: #1e90ff; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #aa0000 } /* Name.Variable */
+.codehilite .ow { color: #0000aa } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #009999 } /* Literal.Number.Bin */
+.codehilite .mf { color: #009999 } /* Literal.Number.Float */
+.codehilite .mh { color: #009999 } /* Literal.Number.Hex */
+.codehilite .mi { color: #009999 } /* Literal.Number.Integer */
+.codehilite .mo { color: #009999 } /* Literal.Number.Oct */
+.codehilite .sa { color: #aa5500 } /* Literal.String.Affix */
+.codehilite .sb { color: #aa5500 } /* Literal.String.Backtick */
+.codehilite .sc { color: #aa5500 } /* Literal.String.Char */
+.codehilite .dl { color: #aa5500 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #aa5500 } /* Literal.String.Doc */
+.codehilite .s2 { color: #aa5500 } /* Literal.String.Double */
+.codehilite .se { color: #aa5500 } /* Literal.String.Escape */
+.codehilite .sh { color: #aa5500 } /* Literal.String.Heredoc */
+.codehilite .si { color: #aa5500 } /* Literal.String.Interpol */
+.codehilite .sx { color: #aa5500 } /* Literal.String.Other */
+.codehilite .sr { color: #009999 } /* Literal.String.Regex */
+.codehilite .s1 { color: #aa5500 } /* Literal.String.Single */
+.codehilite .ss { color: #0000aa } /* Literal.String.Symbol */
+.codehilite .bp { color: #00aaaa } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #00aa00 } /* Name.Function.Magic */
+.codehilite .vc { color: #aa0000 } /* Name.Variable.Class */
+.codehilite .vg { color: #aa0000 } /* Name.Variable.Global */
+.codehilite .vi { color: #aa0000 } /* Name.Variable.Instance */
+.codehilite .vm { color: #aa0000 } /* Name.Variable.Magic */
+.codehilite .il { color: #009999 } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/borland.css b/markdownblog/markdownblog/static/pygments/borland.css
new file mode 100644
index 0000000..0529b9b
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/borland.css
@@ -0,0 +1,52 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #ffffff; }
+.codehilite .c { color: #008800; font-style: italic } /* Comment */
+.codehilite .err { color: #a61717; background-color: #e3d2d2 } /* Error */
+.codehilite .k { color: #000080; font-weight: bold } /* Keyword */
+.codehilite .ch { color: #008800; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #008800; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #008080 } /* Comment.Preproc */
+.codehilite .cpf { color: #008800; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #008800; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #008800; font-weight: bold } /* Comment.Special */
+.codehilite .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #aa0000 } /* Generic.Error */
+.codehilite .gh { color: #999999 } /* Generic.Heading */
+.codehilite .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #555555 } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #aaaaaa } /* Generic.Subheading */
+.codehilite .gt { color: #aa0000 } /* Generic.Traceback */
+.codehilite .kc { color: #000080; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #000080; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #000080; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #000080; font-weight: bold } /* Keyword.Pseudo */
+.codehilite .kr { color: #000080; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #000080; font-weight: bold } /* Keyword.Type */
+.codehilite .m { color: #0000FF } /* Literal.Number */
+.codehilite .s { color: #0000FF } /* Literal.String */
+.codehilite .na { color: #FF0000 } /* Name.Attribute */
+.codehilite .nt { color: #000080; font-weight: bold } /* Name.Tag */
+.codehilite .ow { font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #0000FF } /* Literal.Number.Bin */
+.codehilite .mf { color: #0000FF } /* Literal.Number.Float */
+.codehilite .mh { color: #0000FF } /* Literal.Number.Hex */
+.codehilite .mi { color: #0000FF } /* Literal.Number.Integer */
+.codehilite .mo { color: #0000FF } /* Literal.Number.Oct */
+.codehilite .sa { color: #0000FF } /* Literal.String.Affix */
+.codehilite .sb { color: #0000FF } /* Literal.String.Backtick */
+.codehilite .sc { color: #800080 } /* Literal.String.Char */
+.codehilite .dl { color: #0000FF } /* Literal.String.Delimiter */
+.codehilite .sd { color: #0000FF } /* Literal.String.Doc */
+.codehilite .s2 { color: #0000FF } /* Literal.String.Double */
+.codehilite .se { color: #0000FF } /* Literal.String.Escape */
+.codehilite .sh { color: #0000FF } /* Literal.String.Heredoc */
+.codehilite .si { color: #0000FF } /* Literal.String.Interpol */
+.codehilite .sx { color: #0000FF } /* Literal.String.Other */
+.codehilite .sr { color: #0000FF } /* Literal.String.Regex */
+.codehilite .s1 { color: #0000FF } /* Literal.String.Single */
+.codehilite .ss { color: #0000FF } /* Literal.String.Symbol */
+.codehilite .il { color: #0000FF } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/bw.css b/markdownblog/markdownblog/static/pygments/bw.css
new file mode 100644
index 0000000..0b324e5
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/bw.css
@@ -0,0 +1,39 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #ffffff; }
+.codehilite .c { font-style: italic } /* Comment */
+.codehilite .err { border: 1px solid #FF0000 } /* Error */
+.codehilite .k { font-weight: bold } /* Keyword */
+.codehilite .ch { font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { font-style: italic } /* Comment.Multiline */
+.codehilite .cpf { font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { font-style: italic } /* Comment.Single */
+.codehilite .cs { font-style: italic } /* Comment.Special */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gh { font-weight: bold } /* Generic.Heading */
+.codehilite .gp { font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { font-weight: bold } /* Generic.Subheading */
+.codehilite .kc { font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { font-weight: bold } /* Keyword.Namespace */
+.codehilite .kr { font-weight: bold } /* Keyword.Reserved */
+.codehilite .s { font-style: italic } /* Literal.String */
+.codehilite .nc { font-weight: bold } /* Name.Class */
+.codehilite .ni { font-weight: bold } /* Name.Entity */
+.codehilite .ne { font-weight: bold } /* Name.Exception */
+.codehilite .nn { font-weight: bold } /* Name.Namespace */
+.codehilite .nt { font-weight: bold } /* Name.Tag */
+.codehilite .ow { font-weight: bold } /* Operator.Word */
+.codehilite .sa { font-style: italic } /* Literal.String.Affix */
+.codehilite .sb { font-style: italic } /* Literal.String.Backtick */
+.codehilite .sc { font-style: italic } /* Literal.String.Char */
+.codehilite .dl { font-style: italic } /* Literal.String.Delimiter */
+.codehilite .sd { font-style: italic } /* Literal.String.Doc */
+.codehilite .s2 { font-style: italic } /* Literal.String.Double */
+.codehilite .se { font-weight: bold; font-style: italic } /* Literal.String.Escape */
+.codehilite .sh { font-style: italic } /* Literal.String.Heredoc */
+.codehilite .si { font-weight: bold; font-style: italic } /* Literal.String.Interpol */
+.codehilite .sx { font-style: italic } /* Literal.String.Other */
+.codehilite .sr { font-style: italic } /* Literal.String.Regex */
+.codehilite .s1 { font-style: italic } /* Literal.String.Single */
+.codehilite .ss { font-style: italic } /* Literal.String.Symbol */
diff --git a/markdownblog/markdownblog/static/pygments/colorful.css b/markdownblog/markdownblog/static/pygments/colorful.css
new file mode 100644
index 0000000..f795918
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/colorful.css
@@ -0,0 +1,69 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #ffffff; }
+.codehilite .c { color: #888888 } /* Comment */
+.codehilite .err { color: #FF0000; background-color: #FFAAAA } /* Error */
+.codehilite .k { color: #008800; font-weight: bold } /* Keyword */
+.codehilite .o { color: #333333 } /* Operator */
+.codehilite .ch { color: #888888 } /* Comment.Hashbang */
+.codehilite .cm { color: #888888 } /* Comment.Multiline */
+.codehilite .cp { color: #557799 } /* Comment.Preproc */
+.codehilite .cpf { color: #888888 } /* Comment.PreprocFile */
+.codehilite .c1 { color: #888888 } /* Comment.Single */
+.codehilite .cs { color: #cc0000; font-weight: bold } /* Comment.Special */
+.codehilite .gd { color: #A00000 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #FF0000 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00A000 } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #0044DD } /* Generic.Traceback */
+.codehilite .kc { color: #008800; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #003388; font-weight: bold } /* Keyword.Pseudo */
+.codehilite .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #333399; font-weight: bold } /* Keyword.Type */
+.codehilite .m { color: #6600EE; font-weight: bold } /* Literal.Number */
+.codehilite .s { background-color: #fff0f0 } /* Literal.String */
+.codehilite .na { color: #0000CC } /* Name.Attribute */
+.codehilite .nb { color: #007020 } /* Name.Builtin */
+.codehilite .nc { color: #BB0066; font-weight: bold } /* Name.Class */
+.codehilite .no { color: #003366; font-weight: bold } /* Name.Constant */
+.codehilite .nd { color: #555555; font-weight: bold } /* Name.Decorator */
+.codehilite .ni { color: #880000; font-weight: bold } /* Name.Entity */
+.codehilite .ne { color: #FF0000; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #0066BB; font-weight: bold } /* Name.Function */
+.codehilite .nl { color: #997700; font-weight: bold } /* Name.Label */
+.codehilite .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
+.codehilite .nt { color: #007700 } /* Name.Tag */
+.codehilite .nv { color: #996633 } /* Name.Variable */
+.codehilite .ow { color: #000000; font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #6600EE; font-weight: bold } /* Literal.Number.Bin */
+.codehilite .mf { color: #6600EE; font-weight: bold } /* Literal.Number.Float */
+.codehilite .mh { color: #005588; font-weight: bold } /* Literal.Number.Hex */
+.codehilite .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */
+.codehilite .mo { color: #4400EE; font-weight: bold } /* Literal.Number.Oct */
+.codehilite .sa { background-color: #fff0f0 } /* Literal.String.Affix */
+.codehilite .sb { background-color: #fff0f0 } /* Literal.String.Backtick */
+.codehilite .sc { color: #0044DD } /* Literal.String.Char */
+.codehilite .dl { background-color: #fff0f0 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #DD4422 } /* Literal.String.Doc */
+.codehilite .s2 { background-color: #fff0f0 } /* Literal.String.Double */
+.codehilite .se { color: #666666; font-weight: bold; background-color: #fff0f0 } /* Literal.String.Escape */
+.codehilite .sh { background-color: #fff0f0 } /* Literal.String.Heredoc */
+.codehilite .si { background-color: #eeeeee } /* Literal.String.Interpol */
+.codehilite .sx { color: #DD2200; background-color: #fff0f0 } /* Literal.String.Other */
+.codehilite .sr { color: #000000; background-color: #fff0ff } /* Literal.String.Regex */
+.codehilite .s1 { background-color: #fff0f0 } /* Literal.String.Single */
+.codehilite .ss { color: #AA6600 } /* Literal.String.Symbol */
+.codehilite .bp { color: #007020 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #0066BB; font-weight: bold } /* Name.Function.Magic */
+.codehilite .vc { color: #336699 } /* Name.Variable.Class */
+.codehilite .vg { color: #dd7700; font-weight: bold } /* Name.Variable.Global */
+.codehilite .vi { color: #3333BB } /* Name.Variable.Instance */
+.codehilite .vm { color: #996633 } /* Name.Variable.Magic */
+.codehilite .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/default.css b/markdownblog/markdownblog/static/pygments/default.css
new file mode 100644
index 0000000..bf82aed
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/default.css
@@ -0,0 +1,69 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #f8f8f8; }
+.codehilite .c { color: #408080; font-style: italic } /* Comment */
+.codehilite .err { border: 1px solid #FF0000 } /* Error */
+.codehilite .k { color: #008000; font-weight: bold } /* Keyword */
+.codehilite .o { color: #666666 } /* Operator */
+.codehilite .ch { color: #408080; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #BC7A00 } /* Comment.Preproc */
+.codehilite .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */
+.codehilite .gd { color: #A00000 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #FF0000 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00A000 } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #0044DD } /* Generic.Traceback */
+.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #008000 } /* Keyword.Pseudo */
+.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #B00040 } /* Keyword.Type */
+.codehilite .m { color: #666666 } /* Literal.Number */
+.codehilite .s { color: #BA2121 } /* Literal.String */
+.codehilite .na { color: #7D9029 } /* Name.Attribute */
+.codehilite .nb { color: #008000 } /* Name.Builtin */
+.codehilite .nc { color: #0000FF; font-weight: bold } /* Name.Class */
+.codehilite .no { color: #880000 } /* Name.Constant */
+.codehilite .nd { color: #AA22FF } /* Name.Decorator */
+.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */
+.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #0000FF } /* Name.Function */
+.codehilite .nl { color: #A0A000 } /* Name.Label */
+.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
+.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #19177C } /* Name.Variable */
+.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #666666 } /* Literal.Number.Bin */
+.codehilite .mf { color: #666666 } /* Literal.Number.Float */
+.codehilite .mh { color: #666666 } /* Literal.Number.Hex */
+.codehilite .mi { color: #666666 } /* Literal.Number.Integer */
+.codehilite .mo { color: #666666 } /* Literal.Number.Oct */
+.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */
+.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */
+.codehilite .sc { color: #BA2121 } /* Literal.String.Char */
+.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
+.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */
+.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
+.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */
+.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
+.codehilite .sx { color: #008000 } /* Literal.String.Other */
+.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */
+.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */
+.codehilite .ss { color: #19177C } /* Literal.String.Symbol */
+.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #0000FF } /* Name.Function.Magic */
+.codehilite .vc { color: #19177C } /* Name.Variable.Class */
+.codehilite .vg { color: #19177C } /* Name.Variable.Global */
+.codehilite .vi { color: #19177C } /* Name.Variable.Instance */
+.codehilite .vm { color: #19177C } /* Name.Variable.Magic */
+.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/emacs.css b/markdownblog/markdownblog/static/pygments/emacs.css
new file mode 100644
index 0000000..1c1390c
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/emacs.css
@@ -0,0 +1,69 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #f8f8f8; }
+.codehilite .c { color: #008800; font-style: italic } /* Comment */
+.codehilite .err { border: 1px solid #FF0000 } /* Error */
+.codehilite .k { color: #AA22FF; font-weight: bold } /* Keyword */
+.codehilite .o { color: #666666 } /* Operator */
+.codehilite .ch { color: #008800; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #008800; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #008800 } /* Comment.Preproc */
+.codehilite .cpf { color: #008800; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #008800; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #008800; font-weight: bold } /* Comment.Special */
+.codehilite .gd { color: #A00000 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #FF0000 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00A000 } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #0044DD } /* Generic.Traceback */
+.codehilite .kc { color: #AA22FF; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #AA22FF; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #AA22FF; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #AA22FF } /* Keyword.Pseudo */
+.codehilite .kr { color: #AA22FF; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #00BB00; font-weight: bold } /* Keyword.Type */
+.codehilite .m { color: #666666 } /* Literal.Number */
+.codehilite .s { color: #BB4444 } /* Literal.String */
+.codehilite .na { color: #BB4444 } /* Name.Attribute */
+.codehilite .nb { color: #AA22FF } /* Name.Builtin */
+.codehilite .nc { color: #0000FF } /* Name.Class */
+.codehilite .no { color: #880000 } /* Name.Constant */
+.codehilite .nd { color: #AA22FF } /* Name.Decorator */
+.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */
+.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #00A000 } /* Name.Function */
+.codehilite .nl { color: #A0A000 } /* Name.Label */
+.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */
+.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #B8860B } /* Name.Variable */
+.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #666666 } /* Literal.Number.Bin */
+.codehilite .mf { color: #666666 } /* Literal.Number.Float */
+.codehilite .mh { color: #666666 } /* Literal.Number.Hex */
+.codehilite .mi { color: #666666 } /* Literal.Number.Integer */
+.codehilite .mo { color: #666666 } /* Literal.Number.Oct */
+.codehilite .sa { color: #BB4444 } /* Literal.String.Affix */
+.codehilite .sb { color: #BB4444 } /* Literal.String.Backtick */
+.codehilite .sc { color: #BB4444 } /* Literal.String.Char */
+.codehilite .dl { color: #BB4444 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #BB4444; font-style: italic } /* Literal.String.Doc */
+.codehilite .s2 { color: #BB4444 } /* Literal.String.Double */
+.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
+.codehilite .sh { color: #BB4444 } /* Literal.String.Heredoc */
+.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
+.codehilite .sx { color: #008000 } /* Literal.String.Other */
+.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */
+.codehilite .s1 { color: #BB4444 } /* Literal.String.Single */
+.codehilite .ss { color: #B8860B } /* Literal.String.Symbol */
+.codehilite .bp { color: #AA22FF } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #00A000 } /* Name.Function.Magic */
+.codehilite .vc { color: #B8860B } /* Name.Variable.Class */
+.codehilite .vg { color: #B8860B } /* Name.Variable.Global */
+.codehilite .vi { color: #B8860B } /* Name.Variable.Instance */
+.codehilite .vm { color: #B8860B } /* Name.Variable.Magic */
+.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/friendly.css b/markdownblog/markdownblog/static/pygments/friendly.css
new file mode 100644
index 0000000..adb781c
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/friendly.css
@@ -0,0 +1,69 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #f0f0f0; }
+.codehilite .c { color: #60a0b0; font-style: italic } /* Comment */
+.codehilite .err { border: 1px solid #FF0000 } /* Error */
+.codehilite .k { color: #007020; font-weight: bold } /* Keyword */
+.codehilite .o { color: #666666 } /* Operator */
+.codehilite .ch { color: #60a0b0; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #60a0b0; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #007020 } /* Comment.Preproc */
+.codehilite .cpf { color: #60a0b0; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #60a0b0; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #60a0b0; background-color: #fff0f0 } /* Comment.Special */
+.codehilite .gd { color: #A00000 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #FF0000 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00A000 } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #0044DD } /* Generic.Traceback */
+.codehilite .kc { color: #007020; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #007020 } /* Keyword.Pseudo */
+.codehilite .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #902000 } /* Keyword.Type */
+.codehilite .m { color: #40a070 } /* Literal.Number */
+.codehilite .s { color: #4070a0 } /* Literal.String */
+.codehilite .na { color: #4070a0 } /* Name.Attribute */
+.codehilite .nb { color: #007020 } /* Name.Builtin */
+.codehilite .nc { color: #0e84b5; font-weight: bold } /* Name.Class */
+.codehilite .no { color: #60add5 } /* Name.Constant */
+.codehilite .nd { color: #555555; font-weight: bold } /* Name.Decorator */
+.codehilite .ni { color: #d55537; font-weight: bold } /* Name.Entity */
+.codehilite .ne { color: #007020 } /* Name.Exception */
+.codehilite .nf { color: #06287e } /* Name.Function */
+.codehilite .nl { color: #002070; font-weight: bold } /* Name.Label */
+.codehilite .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
+.codehilite .nt { color: #062873; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #bb60d5 } /* Name.Variable */
+.codehilite .ow { color: #007020; font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #40a070 } /* Literal.Number.Bin */
+.codehilite .mf { color: #40a070 } /* Literal.Number.Float */
+.codehilite .mh { color: #40a070 } /* Literal.Number.Hex */
+.codehilite .mi { color: #40a070 } /* Literal.Number.Integer */
+.codehilite .mo { color: #40a070 } /* Literal.Number.Oct */
+.codehilite .sa { color: #4070a0 } /* Literal.String.Affix */
+.codehilite .sb { color: #4070a0 } /* Literal.String.Backtick */
+.codehilite .sc { color: #4070a0 } /* Literal.String.Char */
+.codehilite .dl { color: #4070a0 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
+.codehilite .s2 { color: #4070a0 } /* Literal.String.Double */
+.codehilite .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
+.codehilite .sh { color: #4070a0 } /* Literal.String.Heredoc */
+.codehilite .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
+.codehilite .sx { color: #c65d09 } /* Literal.String.Other */
+.codehilite .sr { color: #235388 } /* Literal.String.Regex */
+.codehilite .s1 { color: #4070a0 } /* Literal.String.Single */
+.codehilite .ss { color: #517918 } /* Literal.String.Symbol */
+.codehilite .bp { color: #007020 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #06287e } /* Name.Function.Magic */
+.codehilite .vc { color: #bb60d5 } /* Name.Variable.Class */
+.codehilite .vg { color: #bb60d5 } /* Name.Variable.Global */
+.codehilite .vi { color: #bb60d5 } /* Name.Variable.Instance */
+.codehilite .vm { color: #bb60d5 } /* Name.Variable.Magic */
+.codehilite .il { color: #40a070 } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/fruity.css b/markdownblog/markdownblog/static/pygments/fruity.css
new file mode 100644
index 0000000..f71de66
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/fruity.css
@@ -0,0 +1,78 @@
+.codehilite .hll { background-color: #333333 }
+.codehilite { background: #111111; color: #ffffff }
+.codehilite .c { color: #008800; font-style: italic; background-color: #0f140f } /* Comment */
+.codehilite .err { color: #ffffff } /* Error */
+.codehilite .esc { color: #ffffff } /* Escape */
+.codehilite .g { color: #ffffff } /* Generic */
+.codehilite .k { color: #fb660a; font-weight: bold } /* Keyword */
+.codehilite .l { color: #ffffff } /* Literal */
+.codehilite .n { color: #ffffff } /* Name */
+.codehilite .o { color: #ffffff } /* Operator */
+.codehilite .x { color: #ffffff } /* Other */
+.codehilite .p { color: #ffffff } /* Punctuation */
+.codehilite .ch { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Hashbang */
+.codehilite .cm { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Multiline */
+.codehilite .cp { color: #ff0007; font-weight: bold; font-style: italic; background-color: #0f140f } /* Comment.Preproc */
+.codehilite .cpf { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.PreprocFile */
+.codehilite .c1 { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Single */
+.codehilite .cs { color: #008800; font-style: italic; background-color: #0f140f } /* Comment.Special */
+.codehilite .gd { color: #ffffff } /* Generic.Deleted */
+.codehilite .ge { color: #ffffff } /* Generic.Emph */
+.codehilite .gr { color: #ffffff } /* Generic.Error */
+.codehilite .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #ffffff } /* Generic.Inserted */
+.codehilite .go { color: #444444; background-color: #222222 } /* Generic.Output */
+.codehilite .gp { color: #ffffff } /* Generic.Prompt */
+.codehilite .gs { color: #ffffff } /* Generic.Strong */
+.codehilite .gu { color: #ffffff; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #ffffff } /* Generic.Traceback */
+.codehilite .kc { color: #fb660a; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #fb660a; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #fb660a; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #fb660a } /* Keyword.Pseudo */
+.codehilite .kr { color: #fb660a; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #cdcaa9; font-weight: bold } /* Keyword.Type */
+.codehilite .ld { color: #ffffff } /* Literal.Date */
+.codehilite .m { color: #0086f7; font-weight: bold } /* Literal.Number */
+.codehilite .s { color: #0086d2 } /* Literal.String */
+.codehilite .na { color: #ff0086; font-weight: bold } /* Name.Attribute */
+.codehilite .nb { color: #ffffff } /* Name.Builtin */
+.codehilite .nc { color: #ffffff } /* Name.Class */
+.codehilite .no { color: #0086d2 } /* Name.Constant */
+.codehilite .nd { color: #ffffff } /* Name.Decorator */
+.codehilite .ni { color: #ffffff } /* Name.Entity */
+.codehilite .ne { color: #ffffff } /* Name.Exception */
+.codehilite .nf { color: #ff0086; font-weight: bold } /* Name.Function */
+.codehilite .nl { color: #ffffff } /* Name.Label */
+.codehilite .nn { color: #ffffff } /* Name.Namespace */
+.codehilite .nx { color: #ffffff } /* Name.Other */
+.codehilite .py { color: #ffffff } /* Name.Property */
+.codehilite .nt { color: #fb660a; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #fb660a } /* Name.Variable */
+.codehilite .ow { color: #ffffff } /* Operator.Word */
+.codehilite .w { color: #888888 } /* Text.Whitespace */
+.codehilite .mb { color: #0086f7; font-weight: bold } /* Literal.Number.Bin */
+.codehilite .mf { color: #0086f7; font-weight: bold } /* Literal.Number.Float */
+.codehilite .mh { color: #0086f7; font-weight: bold } /* Literal.Number.Hex */
+.codehilite .mi { color: #0086f7; font-weight: bold } /* Literal.Number.Integer */
+.codehilite .mo { color: #0086f7; font-weight: bold } /* Literal.Number.Oct */
+.codehilite .sa { color: #0086d2 } /* Literal.String.Affix */
+.codehilite .sb { color: #0086d2 } /* Literal.String.Backtick */
+.codehilite .sc { color: #0086d2 } /* Literal.String.Char */
+.codehilite .dl { color: #0086d2 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #0086d2 } /* Literal.String.Doc */
+.codehilite .s2 { color: #0086d2 } /* Literal.String.Double */
+.codehilite .se { color: #0086d2 } /* Literal.String.Escape */
+.codehilite .sh { color: #0086d2 } /* Literal.String.Heredoc */
+.codehilite .si { color: #0086d2 } /* Literal.String.Interpol */
+.codehilite .sx { color: #0086d2 } /* Literal.String.Other */
+.codehilite .sr { color: #0086d2 } /* Literal.String.Regex */
+.codehilite .s1 { color: #0086d2 } /* Literal.String.Single */
+.codehilite .ss { color: #0086d2 } /* Literal.String.Symbol */
+.codehilite .bp { color: #ffffff } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #ff0086; font-weight: bold } /* Name.Function.Magic */
+.codehilite .vc { color: #fb660a } /* Name.Variable.Class */
+.codehilite .vg { color: #fb660a } /* Name.Variable.Global */
+.codehilite .vi { color: #fb660a } /* Name.Variable.Instance */
+.codehilite .vm { color: #fb660a } /* Name.Variable.Magic */
+.codehilite .il { color: #0086f7; font-weight: bold } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/manni.css b/markdownblog/markdownblog/static/pygments/manni.css
new file mode 100644
index 0000000..914b659
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/manni.css
@@ -0,0 +1,69 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #f0f3f3; }
+.codehilite .c { color: #0099FF; font-style: italic } /* Comment */
+.codehilite .err { color: #AA0000; background-color: #FFAAAA } /* Error */
+.codehilite .k { color: #006699; font-weight: bold } /* Keyword */
+.codehilite .o { color: #555555 } /* Operator */
+.codehilite .ch { color: #0099FF; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #0099FF; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #009999 } /* Comment.Preproc */
+.codehilite .cpf { color: #0099FF; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #0099FF; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #0099FF; font-weight: bold; font-style: italic } /* Comment.Special */
+.codehilite .gd { background-color: #FFCCCC; border: 1px solid #CC0000 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #FF0000 } /* Generic.Error */
+.codehilite .gh { color: #003300; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { background-color: #CCFFCC; border: 1px solid #00CC00 } /* Generic.Inserted */
+.codehilite .go { color: #AAAAAA } /* Generic.Output */
+.codehilite .gp { color: #000099; font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #003300; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #99CC66 } /* Generic.Traceback */
+.codehilite .kc { color: #006699; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #006699; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #006699; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #006699 } /* Keyword.Pseudo */
+.codehilite .kr { color: #006699; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #007788; font-weight: bold } /* Keyword.Type */
+.codehilite .m { color: #FF6600 } /* Literal.Number */
+.codehilite .s { color: #CC3300 } /* Literal.String */
+.codehilite .na { color: #330099 } /* Name.Attribute */
+.codehilite .nb { color: #336666 } /* Name.Builtin */
+.codehilite .nc { color: #00AA88; font-weight: bold } /* Name.Class */
+.codehilite .no { color: #336600 } /* Name.Constant */
+.codehilite .nd { color: #9999FF } /* Name.Decorator */
+.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */
+.codehilite .ne { color: #CC0000; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #CC00FF } /* Name.Function */
+.codehilite .nl { color: #9999FF } /* Name.Label */
+.codehilite .nn { color: #00CCFF; font-weight: bold } /* Name.Namespace */
+.codehilite .nt { color: #330099; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #003333 } /* Name.Variable */
+.codehilite .ow { color: #000000; font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #FF6600 } /* Literal.Number.Bin */
+.codehilite .mf { color: #FF6600 } /* Literal.Number.Float */
+.codehilite .mh { color: #FF6600 } /* Literal.Number.Hex */
+.codehilite .mi { color: #FF6600 } /* Literal.Number.Integer */
+.codehilite .mo { color: #FF6600 } /* Literal.Number.Oct */
+.codehilite .sa { color: #CC3300 } /* Literal.String.Affix */
+.codehilite .sb { color: #CC3300 } /* Literal.String.Backtick */
+.codehilite .sc { color: #CC3300 } /* Literal.String.Char */
+.codehilite .dl { color: #CC3300 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #CC3300; font-style: italic } /* Literal.String.Doc */
+.codehilite .s2 { color: #CC3300 } /* Literal.String.Double */
+.codehilite .se { color: #CC3300; font-weight: bold } /* Literal.String.Escape */
+.codehilite .sh { color: #CC3300 } /* Literal.String.Heredoc */
+.codehilite .si { color: #AA0000 } /* Literal.String.Interpol */
+.codehilite .sx { color: #CC3300 } /* Literal.String.Other */
+.codehilite .sr { color: #33AAAA } /* Literal.String.Regex */
+.codehilite .s1 { color: #CC3300 } /* Literal.String.Single */
+.codehilite .ss { color: #FFCC33 } /* Literal.String.Symbol */
+.codehilite .bp { color: #336666 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #CC00FF } /* Name.Function.Magic */
+.codehilite .vc { color: #003333 } /* Name.Variable.Class */
+.codehilite .vg { color: #003333 } /* Name.Variable.Global */
+.codehilite .vi { color: #003333 } /* Name.Variable.Instance */
+.codehilite .vm { color: #003333 } /* Name.Variable.Magic */
+.codehilite .il { color: #FF6600 } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/monokai.css b/markdownblog/markdownblog/static/pygments/monokai.css
new file mode 100644
index 0000000..d2e9fc7
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/monokai.css
@@ -0,0 +1,70 @@
+.codehilite .hll { background-color: #49483e }
+.codehilite { background: #272822; color: #f8f8f2 }
+.codehilite .c { color: #75715e } /* Comment */
+.codehilite .err { color: #960050; background-color: #1e0010 } /* Error */
+.codehilite .k { color: #66d9ef } /* Keyword */
+.codehilite .l { color: #ae81ff } /* Literal */
+.codehilite .n { color: #f8f8f2 } /* Name */
+.codehilite .o { color: #f92672 } /* Operator */
+.codehilite .p { color: #f8f8f2 } /* Punctuation */
+.codehilite .ch { color: #75715e } /* Comment.Hashbang */
+.codehilite .cm { color: #75715e } /* Comment.Multiline */
+.codehilite .cp { color: #75715e } /* Comment.Preproc */
+.codehilite .cpf { color: #75715e } /* Comment.PreprocFile */
+.codehilite .c1 { color: #75715e } /* Comment.Single */
+.codehilite .cs { color: #75715e } /* Comment.Special */
+.codehilite .gd { color: #f92672 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gi { color: #a6e22e } /* Generic.Inserted */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #75715e } /* Generic.Subheading */
+.codehilite .kc { color: #66d9ef } /* Keyword.Constant */
+.codehilite .kd { color: #66d9ef } /* Keyword.Declaration */
+.codehilite .kn { color: #f92672 } /* Keyword.Namespace */
+.codehilite .kp { color: #66d9ef } /* Keyword.Pseudo */
+.codehilite .kr { color: #66d9ef } /* Keyword.Reserved */
+.codehilite .kt { color: #66d9ef } /* Keyword.Type */
+.codehilite .ld { color: #e6db74 } /* Literal.Date */
+.codehilite .m { color: #ae81ff } /* Literal.Number */
+.codehilite .s { color: #e6db74 } /* Literal.String */
+.codehilite .na { color: #a6e22e } /* Name.Attribute */
+.codehilite .nb { color: #f8f8f2 } /* Name.Builtin */
+.codehilite .nc { color: #a6e22e } /* Name.Class */
+.codehilite .no { color: #66d9ef } /* Name.Constant */
+.codehilite .nd { color: #a6e22e } /* Name.Decorator */
+.codehilite .ni { color: #f8f8f2 } /* Name.Entity */
+.codehilite .ne { color: #a6e22e } /* Name.Exception */
+.codehilite .nf { color: #a6e22e } /* Name.Function */
+.codehilite .nl { color: #f8f8f2 } /* Name.Label */
+.codehilite .nn { color: #f8f8f2 } /* Name.Namespace */
+.codehilite .nx { color: #a6e22e } /* Name.Other */
+.codehilite .py { color: #f8f8f2 } /* Name.Property */
+.codehilite .nt { color: #f92672 } /* Name.Tag */
+.codehilite .nv { color: #f8f8f2 } /* Name.Variable */
+.codehilite .ow { color: #f92672 } /* Operator.Word */
+.codehilite .w { color: #f8f8f2 } /* Text.Whitespace */
+.codehilite .mb { color: #ae81ff } /* Literal.Number.Bin */
+.codehilite .mf { color: #ae81ff } /* Literal.Number.Float */
+.codehilite .mh { color: #ae81ff } /* Literal.Number.Hex */
+.codehilite .mi { color: #ae81ff } /* Literal.Number.Integer */
+.codehilite .mo { color: #ae81ff } /* Literal.Number.Oct */
+.codehilite .sa { color: #e6db74 } /* Literal.String.Affix */
+.codehilite .sb { color: #e6db74 } /* Literal.String.Backtick */
+.codehilite .sc { color: #e6db74 } /* Literal.String.Char */
+.codehilite .dl { color: #e6db74 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #e6db74 } /* Literal.String.Doc */
+.codehilite .s2 { color: #e6db74 } /* Literal.String.Double */
+.codehilite .se { color: #ae81ff } /* Literal.String.Escape */
+.codehilite .sh { color: #e6db74 } /* Literal.String.Heredoc */
+.codehilite .si { color: #e6db74 } /* Literal.String.Interpol */
+.codehilite .sx { color: #e6db74 } /* Literal.String.Other */
+.codehilite .sr { color: #e6db74 } /* Literal.String.Regex */
+.codehilite .s1 { color: #e6db74 } /* Literal.String.Single */
+.codehilite .ss { color: #e6db74 } /* Literal.String.Symbol */
+.codehilite .bp { color: #f8f8f2 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #a6e22e } /* Name.Function.Magic */
+.codehilite .vc { color: #f8f8f2 } /* Name.Variable.Class */
+.codehilite .vg { color: #f8f8f2 } /* Name.Variable.Global */
+.codehilite .vi { color: #f8f8f2 } /* Name.Variable.Instance */
+.codehilite .vm { color: #f8f8f2 } /* Name.Variable.Magic */
+.codehilite .il { color: #ae81ff } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/murphy.css b/markdownblog/markdownblog/static/pygments/murphy.css
new file mode 100644
index 0000000..bdaebb4
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/murphy.css
@@ -0,0 +1,69 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #ffffff; }
+.codehilite .c { color: #666666; font-style: italic } /* Comment */
+.codehilite .err { color: #FF0000; background-color: #FFAAAA } /* Error */
+.codehilite .k { color: #228899; font-weight: bold } /* Keyword */
+.codehilite .o { color: #333333 } /* Operator */
+.codehilite .ch { color: #666666; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #666666; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #557799 } /* Comment.Preproc */
+.codehilite .cpf { color: #666666; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #666666; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #cc0000; font-weight: bold; font-style: italic } /* Comment.Special */
+.codehilite .gd { color: #A00000 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #FF0000 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00A000 } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #0044DD } /* Generic.Traceback */
+.codehilite .kc { color: #228899; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #228899; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #228899; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #0088ff; font-weight: bold } /* Keyword.Pseudo */
+.codehilite .kr { color: #228899; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #6666ff; font-weight: bold } /* Keyword.Type */
+.codehilite .m { color: #6600EE; font-weight: bold } /* Literal.Number */
+.codehilite .s { background-color: #e0e0ff } /* Literal.String */
+.codehilite .na { color: #000077 } /* Name.Attribute */
+.codehilite .nb { color: #007722 } /* Name.Builtin */
+.codehilite .nc { color: #ee99ee; font-weight: bold } /* Name.Class */
+.codehilite .no { color: #55eedd; font-weight: bold } /* Name.Constant */
+.codehilite .nd { color: #555555; font-weight: bold } /* Name.Decorator */
+.codehilite .ni { color: #880000 } /* Name.Entity */
+.codehilite .ne { color: #FF0000; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #55eedd; font-weight: bold } /* Name.Function */
+.codehilite .nl { color: #997700; font-weight: bold } /* Name.Label */
+.codehilite .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
+.codehilite .nt { color: #007700 } /* Name.Tag */
+.codehilite .nv { color: #003366 } /* Name.Variable */
+.codehilite .ow { color: #000000; font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #6600EE; font-weight: bold } /* Literal.Number.Bin */
+.codehilite .mf { color: #6600EE; font-weight: bold } /* Literal.Number.Float */
+.codehilite .mh { color: #005588; font-weight: bold } /* Literal.Number.Hex */
+.codehilite .mi { color: #6666ff; font-weight: bold } /* Literal.Number.Integer */
+.codehilite .mo { color: #4400EE; font-weight: bold } /* Literal.Number.Oct */
+.codehilite .sa { background-color: #e0e0ff } /* Literal.String.Affix */
+.codehilite .sb { background-color: #e0e0ff } /* Literal.String.Backtick */
+.codehilite .sc { color: #8888FF } /* Literal.String.Char */
+.codehilite .dl { background-color: #e0e0ff } /* Literal.String.Delimiter */
+.codehilite .sd { color: #DD4422 } /* Literal.String.Doc */
+.codehilite .s2 { background-color: #e0e0ff } /* Literal.String.Double */
+.codehilite .se { color: #666666; font-weight: bold; background-color: #e0e0ff } /* Literal.String.Escape */
+.codehilite .sh { background-color: #e0e0ff } /* Literal.String.Heredoc */
+.codehilite .si { background-color: #eeeeee } /* Literal.String.Interpol */
+.codehilite .sx { color: #ff8888; background-color: #e0e0ff } /* Literal.String.Other */
+.codehilite .sr { color: #000000; background-color: #e0e0ff } /* Literal.String.Regex */
+.codehilite .s1 { background-color: #e0e0ff } /* Literal.String.Single */
+.codehilite .ss { color: #ffcc88 } /* Literal.String.Symbol */
+.codehilite .bp { color: #007722 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #55eedd; font-weight: bold } /* Name.Function.Magic */
+.codehilite .vc { color: #ccccff } /* Name.Variable.Class */
+.codehilite .vg { color: #ff8844 } /* Name.Variable.Global */
+.codehilite .vi { color: #aaaaff } /* Name.Variable.Instance */
+.codehilite .vm { color: #003366 } /* Name.Variable.Magic */
+.codehilite .il { color: #6666ff; font-weight: bold } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/native.css b/markdownblog/markdownblog/static/pygments/native.css
new file mode 100644
index 0000000..1a888c9
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/native.css
@@ -0,0 +1,78 @@
+.codehilite .hll { background-color: #404040 }
+.codehilite { background: #202020; color: #d0d0d0 }
+.codehilite .c { color: #999999; font-style: italic } /* Comment */
+.codehilite .err { color: #a61717; background-color: #e3d2d2 } /* Error */
+.codehilite .esc { color: #d0d0d0 } /* Escape */
+.codehilite .g { color: #d0d0d0 } /* Generic */
+.codehilite .k { color: #6ab825; font-weight: bold } /* Keyword */
+.codehilite .l { color: #d0d0d0 } /* Literal */
+.codehilite .n { color: #d0d0d0 } /* Name */
+.codehilite .o { color: #d0d0d0 } /* Operator */
+.codehilite .x { color: #d0d0d0 } /* Other */
+.codehilite .p { color: #d0d0d0 } /* Punctuation */
+.codehilite .ch { color: #999999; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #999999; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #cd2828; font-weight: bold } /* Comment.Preproc */
+.codehilite .cpf { color: #999999; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #999999; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #e50808; font-weight: bold; background-color: #520000 } /* Comment.Special */
+.codehilite .gd { color: #d22323 } /* Generic.Deleted */
+.codehilite .ge { color: #d0d0d0; font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #d22323 } /* Generic.Error */
+.codehilite .gh { color: #ffffff; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #589819 } /* Generic.Inserted */
+.codehilite .go { color: #cccccc } /* Generic.Output */
+.codehilite .gp { color: #aaaaaa } /* Generic.Prompt */
+.codehilite .gs { color: #d0d0d0; font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #ffffff; text-decoration: underline } /* Generic.Subheading */
+.codehilite .gt { color: #d22323 } /* Generic.Traceback */
+.codehilite .kc { color: #6ab825; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #6ab825; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #6ab825; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #6ab825 } /* Keyword.Pseudo */
+.codehilite .kr { color: #6ab825; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #6ab825; font-weight: bold } /* Keyword.Type */
+.codehilite .ld { color: #d0d0d0 } /* Literal.Date */
+.codehilite .m { color: #3677a9 } /* Literal.Number */
+.codehilite .s { color: #ed9d13 } /* Literal.String */
+.codehilite .na { color: #bbbbbb } /* Name.Attribute */
+.codehilite .nb { color: #24909d } /* Name.Builtin */
+.codehilite .nc { color: #447fcf; text-decoration: underline } /* Name.Class */
+.codehilite .no { color: #40ffff } /* Name.Constant */
+.codehilite .nd { color: #ffa500 } /* Name.Decorator */
+.codehilite .ni { color: #d0d0d0 } /* Name.Entity */
+.codehilite .ne { color: #bbbbbb } /* Name.Exception */
+.codehilite .nf { color: #447fcf } /* Name.Function */
+.codehilite .nl { color: #d0d0d0 } /* Name.Label */
+.codehilite .nn { color: #447fcf; text-decoration: underline } /* Name.Namespace */
+.codehilite .nx { color: #d0d0d0 } /* Name.Other */
+.codehilite .py { color: #d0d0d0 } /* Name.Property */
+.codehilite .nt { color: #6ab825; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #40ffff } /* Name.Variable */
+.codehilite .ow { color: #6ab825; font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #666666 } /* Text.Whitespace */
+.codehilite .mb { color: #3677a9 } /* Literal.Number.Bin */
+.codehilite .mf { color: #3677a9 } /* Literal.Number.Float */
+.codehilite .mh { color: #3677a9 } /* Literal.Number.Hex */
+.codehilite .mi { color: #3677a9 } /* Literal.Number.Integer */
+.codehilite .mo { color: #3677a9 } /* Literal.Number.Oct */
+.codehilite .sa { color: #ed9d13 } /* Literal.String.Affix */
+.codehilite .sb { color: #ed9d13 } /* Literal.String.Backtick */
+.codehilite .sc { color: #ed9d13 } /* Literal.String.Char */
+.codehilite .dl { color: #ed9d13 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #ed9d13 } /* Literal.String.Doc */
+.codehilite .s2 { color: #ed9d13 } /* Literal.String.Double */
+.codehilite .se { color: #ed9d13 } /* Literal.String.Escape */
+.codehilite .sh { color: #ed9d13 } /* Literal.String.Heredoc */
+.codehilite .si { color: #ed9d13 } /* Literal.String.Interpol */
+.codehilite .sx { color: #ffa500 } /* Literal.String.Other */
+.codehilite .sr { color: #ed9d13 } /* Literal.String.Regex */
+.codehilite .s1 { color: #ed9d13 } /* Literal.String.Single */
+.codehilite .ss { color: #ed9d13 } /* Literal.String.Symbol */
+.codehilite .bp { color: #24909d } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #447fcf } /* Name.Function.Magic */
+.codehilite .vc { color: #40ffff } /* Name.Variable.Class */
+.codehilite .vg { color: #40ffff } /* Name.Variable.Global */
+.codehilite .vi { color: #40ffff } /* Name.Variable.Instance */
+.codehilite .vm { color: #40ffff } /* Name.Variable.Magic */
+.codehilite .il { color: #3677a9 } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/pastie.css b/markdownblog/markdownblog/static/pygments/pastie.css
new file mode 100644
index 0000000..24c25f2
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/pastie.css
@@ -0,0 +1,68 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #ffffff; }
+.codehilite .c { color: #888888 } /* Comment */
+.codehilite .err { color: #a61717; background-color: #e3d2d2 } /* Error */
+.codehilite .k { color: #008800; font-weight: bold } /* Keyword */
+.codehilite .ch { color: #888888 } /* Comment.Hashbang */
+.codehilite .cm { color: #888888 } /* Comment.Multiline */
+.codehilite .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */
+.codehilite .cpf { color: #888888 } /* Comment.PreprocFile */
+.codehilite .c1 { color: #888888 } /* Comment.Single */
+.codehilite .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */
+.codehilite .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #aa0000 } /* Generic.Error */
+.codehilite .gh { color: #333333 } /* Generic.Heading */
+.codehilite .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #555555 } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #666666 } /* Generic.Subheading */
+.codehilite .gt { color: #aa0000 } /* Generic.Traceback */
+.codehilite .kc { color: #008800; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #008800 } /* Keyword.Pseudo */
+.codehilite .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #888888; font-weight: bold } /* Keyword.Type */
+.codehilite .m { color: #0000DD; font-weight: bold } /* Literal.Number */
+.codehilite .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */
+.codehilite .na { color: #336699 } /* Name.Attribute */
+.codehilite .nb { color: #003388 } /* Name.Builtin */
+.codehilite .nc { color: #bb0066; font-weight: bold } /* Name.Class */
+.codehilite .no { color: #003366; font-weight: bold } /* Name.Constant */
+.codehilite .nd { color: #555555 } /* Name.Decorator */
+.codehilite .ne { color: #bb0066; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #0066bb; font-weight: bold } /* Name.Function */
+.codehilite .nl { color: #336699; font-style: italic } /* Name.Label */
+.codehilite .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */
+.codehilite .py { color: #336699; font-weight: bold } /* Name.Property */
+.codehilite .nt { color: #bb0066; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #336699 } /* Name.Variable */
+.codehilite .ow { color: #008800 } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */
+.codehilite .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */
+.codehilite .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */
+.codehilite .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */
+.codehilite .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */
+.codehilite .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */
+.codehilite .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */
+.codehilite .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */
+.codehilite .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */
+.codehilite .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */
+.codehilite .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */
+.codehilite .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */
+.codehilite .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */
+.codehilite .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */
+.codehilite .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */
+.codehilite .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */
+.codehilite .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */
+.codehilite .bp { color: #003388 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */
+.codehilite .vc { color: #336699 } /* Name.Variable.Class */
+.codehilite .vg { color: #dd7700 } /* Name.Variable.Global */
+.codehilite .vi { color: #3333bb } /* Name.Variable.Instance */
+.codehilite .vm { color: #336699 } /* Name.Variable.Magic */
+.codehilite .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/perldoc.css b/markdownblog/markdownblog/static/pygments/perldoc.css
new file mode 100644
index 0000000..ff687c0
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/perldoc.css
@@ -0,0 +1,66 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #eeeedd; }
+.codehilite .c { color: #228B22 } /* Comment */
+.codehilite .err { color: #a61717; background-color: #e3d2d2 } /* Error */
+.codehilite .k { color: #8B008B; font-weight: bold } /* Keyword */
+.codehilite .ch { color: #228B22 } /* Comment.Hashbang */
+.codehilite .cm { color: #228B22 } /* Comment.Multiline */
+.codehilite .cp { color: #1e889b } /* Comment.Preproc */
+.codehilite .cpf { color: #228B22 } /* Comment.PreprocFile */
+.codehilite .c1 { color: #228B22 } /* Comment.Single */
+.codehilite .cs { color: #8B008B; font-weight: bold } /* Comment.Special */
+.codehilite .gd { color: #aa0000 } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #aa0000 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00aa00 } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #555555 } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #aa0000 } /* Generic.Traceback */
+.codehilite .kc { color: #8B008B; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #8B008B; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #8B008B; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #8B008B; font-weight: bold } /* Keyword.Pseudo */
+.codehilite .kr { color: #8B008B; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #00688B; font-weight: bold } /* Keyword.Type */
+.codehilite .m { color: #B452CD } /* Literal.Number */
+.codehilite .s { color: #CD5555 } /* Literal.String */
+.codehilite .na { color: #658b00 } /* Name.Attribute */
+.codehilite .nb { color: #658b00 } /* Name.Builtin */
+.codehilite .nc { color: #008b45; font-weight: bold } /* Name.Class */
+.codehilite .no { color: #00688B } /* Name.Constant */
+.codehilite .nd { color: #707a7c } /* Name.Decorator */
+.codehilite .ne { color: #008b45; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #008b45 } /* Name.Function */
+.codehilite .nn { color: #008b45; text-decoration: underline } /* Name.Namespace */
+.codehilite .nt { color: #8B008B; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #00688B } /* Name.Variable */
+.codehilite .ow { color: #8B008B } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #B452CD } /* Literal.Number.Bin */
+.codehilite .mf { color: #B452CD } /* Literal.Number.Float */
+.codehilite .mh { color: #B452CD } /* Literal.Number.Hex */
+.codehilite .mi { color: #B452CD } /* Literal.Number.Integer */
+.codehilite .mo { color: #B452CD } /* Literal.Number.Oct */
+.codehilite .sa { color: #CD5555 } /* Literal.String.Affix */
+.codehilite .sb { color: #CD5555 } /* Literal.String.Backtick */
+.codehilite .sc { color: #CD5555 } /* Literal.String.Char */
+.codehilite .dl { color: #CD5555 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #CD5555 } /* Literal.String.Doc */
+.codehilite .s2 { color: #CD5555 } /* Literal.String.Double */
+.codehilite .se { color: #CD5555 } /* Literal.String.Escape */
+.codehilite .sh { color: #1c7e71; font-style: italic } /* Literal.String.Heredoc */
+.codehilite .si { color: #CD5555 } /* Literal.String.Interpol */
+.codehilite .sx { color: #cb6c20 } /* Literal.String.Other */
+.codehilite .sr { color: #1c7e71 } /* Literal.String.Regex */
+.codehilite .s1 { color: #CD5555 } /* Literal.String.Single */
+.codehilite .ss { color: #CD5555 } /* Literal.String.Symbol */
+.codehilite .bp { color: #658b00 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #008b45 } /* Name.Function.Magic */
+.codehilite .vc { color: #00688B } /* Name.Variable.Class */
+.codehilite .vg { color: #00688B } /* Name.Variable.Global */
+.codehilite .vi { color: #00688B } /* Name.Variable.Instance */
+.codehilite .vm { color: #00688B } /* Name.Variable.Magic */
+.codehilite .il { color: #B452CD } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/tango.css b/markdownblog/markdownblog/static/pygments/tango.css
new file mode 100644
index 0000000..76d5065
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/tango.css
@@ -0,0 +1,77 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #f8f8f8; }
+.codehilite .c { color: #8f5902; font-style: italic } /* Comment */
+.codehilite .err { color: #a40000; border: 1px solid #ef2929 } /* Error */
+.codehilite .g { color: #000000 } /* Generic */
+.codehilite .k { color: #204a87; font-weight: bold } /* Keyword */
+.codehilite .l { color: #000000 } /* Literal */
+.codehilite .n { color: #000000 } /* Name */
+.codehilite .o { color: #ce5c00; font-weight: bold } /* Operator */
+.codehilite .x { color: #000000 } /* Other */
+.codehilite .p { color: #000000; font-weight: bold } /* Punctuation */
+.codehilite .ch { color: #8f5902; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #8f5902; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #8f5902; font-style: italic } /* Comment.Preproc */
+.codehilite .cpf { color: #8f5902; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #8f5902; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #8f5902; font-style: italic } /* Comment.Special */
+.codehilite .gd { color: #a40000 } /* Generic.Deleted */
+.codehilite .ge { color: #000000; font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #ef2929 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00A000 } /* Generic.Inserted */
+.codehilite .go { color: #000000; font-style: italic } /* Generic.Output */
+.codehilite .gp { color: #8f5902 } /* Generic.Prompt */
+.codehilite .gs { color: #000000; font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #a40000; font-weight: bold } /* Generic.Traceback */
+.codehilite .kc { color: #204a87; font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { color: #204a87; font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { color: #204a87; font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { color: #204a87; font-weight: bold } /* Keyword.Pseudo */
+.codehilite .kr { color: #204a87; font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #204a87; font-weight: bold } /* Keyword.Type */
+.codehilite .ld { color: #000000 } /* Literal.Date */
+.codehilite .m { color: #0000cf; font-weight: bold } /* Literal.Number */
+.codehilite .s { color: #4e9a06 } /* Literal.String */
+.codehilite .na { color: #c4a000 } /* Name.Attribute */
+.codehilite .nb { color: #204a87 } /* Name.Builtin */
+.codehilite .nc { color: #000000 } /* Name.Class */
+.codehilite .no { color: #000000 } /* Name.Constant */
+.codehilite .nd { color: #5c35cc; font-weight: bold } /* Name.Decorator */
+.codehilite .ni { color: #ce5c00 } /* Name.Entity */
+.codehilite .ne { color: #cc0000; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #000000 } /* Name.Function */
+.codehilite .nl { color: #f57900 } /* Name.Label */
+.codehilite .nn { color: #000000 } /* Name.Namespace */
+.codehilite .nx { color: #000000 } /* Name.Other */
+.codehilite .py { color: #000000 } /* Name.Property */
+.codehilite .nt { color: #204a87; font-weight: bold } /* Name.Tag */
+.codehilite .nv { color: #000000 } /* Name.Variable */
+.codehilite .ow { color: #204a87; font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #f8f8f8; text-decoration: underline } /* Text.Whitespace */
+.codehilite .mb { color: #0000cf; font-weight: bold } /* Literal.Number.Bin */
+.codehilite .mf { color: #0000cf; font-weight: bold } /* Literal.Number.Float */
+.codehilite .mh { color: #0000cf; font-weight: bold } /* Literal.Number.Hex */
+.codehilite .mi { color: #0000cf; font-weight: bold } /* Literal.Number.Integer */
+.codehilite .mo { color: #0000cf; font-weight: bold } /* Literal.Number.Oct */
+.codehilite .sa { color: #4e9a06 } /* Literal.String.Affix */
+.codehilite .sb { color: #4e9a06 } /* Literal.String.Backtick */
+.codehilite .sc { color: #4e9a06 } /* Literal.String.Char */
+.codehilite .dl { color: #4e9a06 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #8f5902; font-style: italic } /* Literal.String.Doc */
+.codehilite .s2 { color: #4e9a06 } /* Literal.String.Double */
+.codehilite .se { color: #4e9a06 } /* Literal.String.Escape */
+.codehilite .sh { color: #4e9a06 } /* Literal.String.Heredoc */
+.codehilite .si { color: #4e9a06 } /* Literal.String.Interpol */
+.codehilite .sx { color: #4e9a06 } /* Literal.String.Other */
+.codehilite .sr { color: #4e9a06 } /* Literal.String.Regex */
+.codehilite .s1 { color: #4e9a06 } /* Literal.String.Single */
+.codehilite .ss { color: #4e9a06 } /* Literal.String.Symbol */
+.codehilite .bp { color: #3465a4 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #000000 } /* Name.Function.Magic */
+.codehilite .vc { color: #000000 } /* Name.Variable.Class */
+.codehilite .vg { color: #000000 } /* Name.Variable.Global */
+.codehilite .vi { color: #000000 } /* Name.Variable.Instance */
+.codehilite .vm { color: #000000 } /* Name.Variable.Magic */
+.codehilite .il { color: #0000cf; font-weight: bold } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/trac.css b/markdownblog/markdownblog/static/pygments/trac.css
new file mode 100644
index 0000000..7fbc186
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/trac.css
@@ -0,0 +1,67 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #ffffff; }
+.codehilite .c { color: #999988; font-style: italic } /* Comment */
+.codehilite .err { color: #a61717; background-color: #e3d2d2 } /* Error */
+.codehilite .k { font-weight: bold } /* Keyword */
+.codehilite .o { font-weight: bold } /* Operator */
+.codehilite .ch { color: #999988; font-style: italic } /* Comment.Hashbang */
+.codehilite .cm { color: #999988; font-style: italic } /* Comment.Multiline */
+.codehilite .cp { color: #999999; font-weight: bold } /* Comment.Preproc */
+.codehilite .cpf { color: #999988; font-style: italic } /* Comment.PreprocFile */
+.codehilite .c1 { color: #999988; font-style: italic } /* Comment.Single */
+.codehilite .cs { color: #999999; font-weight: bold; font-style: italic } /* Comment.Special */
+.codehilite .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #aa0000 } /* Generic.Error */
+.codehilite .gh { color: #999999 } /* Generic.Heading */
+.codehilite .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #555555 } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #aaaaaa } /* Generic.Subheading */
+.codehilite .gt { color: #aa0000 } /* Generic.Traceback */
+.codehilite .kc { font-weight: bold } /* Keyword.Constant */
+.codehilite .kd { font-weight: bold } /* Keyword.Declaration */
+.codehilite .kn { font-weight: bold } /* Keyword.Namespace */
+.codehilite .kp { font-weight: bold } /* Keyword.Pseudo */
+.codehilite .kr { font-weight: bold } /* Keyword.Reserved */
+.codehilite .kt { color: #445588; font-weight: bold } /* Keyword.Type */
+.codehilite .m { color: #009999 } /* Literal.Number */
+.codehilite .s { color: #bb8844 } /* Literal.String */
+.codehilite .na { color: #008080 } /* Name.Attribute */
+.codehilite .nb { color: #999999 } /* Name.Builtin */
+.codehilite .nc { color: #445588; font-weight: bold } /* Name.Class */
+.codehilite .no { color: #008080 } /* Name.Constant */
+.codehilite .ni { color: #800080 } /* Name.Entity */
+.codehilite .ne { color: #990000; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #990000; font-weight: bold } /* Name.Function */
+.codehilite .nn { color: #555555 } /* Name.Namespace */
+.codehilite .nt { color: #000080 } /* Name.Tag */
+.codehilite .nv { color: #008080 } /* Name.Variable */
+.codehilite .ow { font-weight: bold } /* Operator.Word */
+.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
+.codehilite .mb { color: #009999 } /* Literal.Number.Bin */
+.codehilite .mf { color: #009999 } /* Literal.Number.Float */
+.codehilite .mh { color: #009999 } /* Literal.Number.Hex */
+.codehilite .mi { color: #009999 } /* Literal.Number.Integer */
+.codehilite .mo { color: #009999 } /* Literal.Number.Oct */
+.codehilite .sa { color: #bb8844 } /* Literal.String.Affix */
+.codehilite .sb { color: #bb8844 } /* Literal.String.Backtick */
+.codehilite .sc { color: #bb8844 } /* Literal.String.Char */
+.codehilite .dl { color: #bb8844 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #bb8844 } /* Literal.String.Doc */
+.codehilite .s2 { color: #bb8844 } /* Literal.String.Double */
+.codehilite .se { color: #bb8844 } /* Literal.String.Escape */
+.codehilite .sh { color: #bb8844 } /* Literal.String.Heredoc */
+.codehilite .si { color: #bb8844 } /* Literal.String.Interpol */
+.codehilite .sx { color: #bb8844 } /* Literal.String.Other */
+.codehilite .sr { color: #808000 } /* Literal.String.Regex */
+.codehilite .s1 { color: #bb8844 } /* Literal.String.Single */
+.codehilite .ss { color: #bb8844 } /* Literal.String.Symbol */
+.codehilite .bp { color: #999999 } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #990000; font-weight: bold } /* Name.Function.Magic */
+.codehilite .vc { color: #008080 } /* Name.Variable.Class */
+.codehilite .vg { color: #008080 } /* Name.Variable.Global */
+.codehilite .vi { color: #008080 } /* Name.Variable.Instance */
+.codehilite .vm { color: #008080 } /* Name.Variable.Magic */
+.codehilite .il { color: #009999 } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/vim.css b/markdownblog/markdownblog/static/pygments/vim.css
new file mode 100644
index 0000000..7ae19d4
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/vim.css
@@ -0,0 +1,78 @@
+.codehilite .hll { background-color: #222222 }
+.codehilite { background: #000000; color: #cccccc }
+.codehilite .c { color: #000080 } /* Comment */
+.codehilite .err { color: #cccccc; border: 1px solid #FF0000 } /* Error */
+.codehilite .esc { color: #cccccc } /* Escape */
+.codehilite .g { color: #cccccc } /* Generic */
+.codehilite .k { color: #cdcd00 } /* Keyword */
+.codehilite .l { color: #cccccc } /* Literal */
+.codehilite .n { color: #cccccc } /* Name */
+.codehilite .o { color: #3399cc } /* Operator */
+.codehilite .x { color: #cccccc } /* Other */
+.codehilite .p { color: #cccccc } /* Punctuation */
+.codehilite .ch { color: #000080 } /* Comment.Hashbang */
+.codehilite .cm { color: #000080 } /* Comment.Multiline */
+.codehilite .cp { color: #000080 } /* Comment.Preproc */
+.codehilite .cpf { color: #000080 } /* Comment.PreprocFile */
+.codehilite .c1 { color: #000080 } /* Comment.Single */
+.codehilite .cs { color: #cd0000; font-weight: bold } /* Comment.Special */
+.codehilite .gd { color: #cd0000 } /* Generic.Deleted */
+.codehilite .ge { color: #cccccc; font-style: italic } /* Generic.Emph */
+.codehilite .gr { color: #FF0000 } /* Generic.Error */
+.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
+.codehilite .gi { color: #00cd00 } /* Generic.Inserted */
+.codehilite .go { color: #888888 } /* Generic.Output */
+.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { color: #cccccc; font-weight: bold } /* Generic.Strong */
+.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
+.codehilite .gt { color: #0044DD } /* Generic.Traceback */
+.codehilite .kc { color: #cdcd00 } /* Keyword.Constant */
+.codehilite .kd { color: #00cd00 } /* Keyword.Declaration */
+.codehilite .kn { color: #cd00cd } /* Keyword.Namespace */
+.codehilite .kp { color: #cdcd00 } /* Keyword.Pseudo */
+.codehilite .kr { color: #cdcd00 } /* Keyword.Reserved */
+.codehilite .kt { color: #00cd00 } /* Keyword.Type */
+.codehilite .ld { color: #cccccc } /* Literal.Date */
+.codehilite .m { color: #cd00cd } /* Literal.Number */
+.codehilite .s { color: #cd0000 } /* Literal.String */
+.codehilite .na { color: #cccccc } /* Name.Attribute */
+.codehilite .nb { color: #cd00cd } /* Name.Builtin */
+.codehilite .nc { color: #00cdcd } /* Name.Class */
+.codehilite .no { color: #cccccc } /* Name.Constant */
+.codehilite .nd { color: #cccccc } /* Name.Decorator */
+.codehilite .ni { color: #cccccc } /* Name.Entity */
+.codehilite .ne { color: #666699; font-weight: bold } /* Name.Exception */
+.codehilite .nf { color: #cccccc } /* Name.Function */
+.codehilite .nl { color: #cccccc } /* Name.Label */
+.codehilite .nn { color: #cccccc } /* Name.Namespace */
+.codehilite .nx { color: #cccccc } /* Name.Other */
+.codehilite .py { color: #cccccc } /* Name.Property */
+.codehilite .nt { color: #cccccc } /* Name.Tag */
+.codehilite .nv { color: #00cdcd } /* Name.Variable */
+.codehilite .ow { color: #cdcd00 } /* Operator.Word */
+.codehilite .w { color: #cccccc } /* Text.Whitespace */
+.codehilite .mb { color: #cd00cd } /* Literal.Number.Bin */
+.codehilite .mf { color: #cd00cd } /* Literal.Number.Float */
+.codehilite .mh { color: #cd00cd } /* Literal.Number.Hex */
+.codehilite .mi { color: #cd00cd } /* Literal.Number.Integer */
+.codehilite .mo { color: #cd00cd } /* Literal.Number.Oct */
+.codehilite .sa { color: #cd0000 } /* Literal.String.Affix */
+.codehilite .sb { color: #cd0000 } /* Literal.String.Backtick */
+.codehilite .sc { color: #cd0000 } /* Literal.String.Char */
+.codehilite .dl { color: #cd0000 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #cd0000 } /* Literal.String.Doc */
+.codehilite .s2 { color: #cd0000 } /* Literal.String.Double */
+.codehilite .se { color: #cd0000 } /* Literal.String.Escape */
+.codehilite .sh { color: #cd0000 } /* Literal.String.Heredoc */
+.codehilite .si { color: #cd0000 } /* Literal.String.Interpol */
+.codehilite .sx { color: #cd0000 } /* Literal.String.Other */
+.codehilite .sr { color: #cd0000 } /* Literal.String.Regex */
+.codehilite .s1 { color: #cd0000 } /* Literal.String.Single */
+.codehilite .ss { color: #cd0000 } /* Literal.String.Symbol */
+.codehilite .bp { color: #cd00cd } /* Name.Builtin.Pseudo */
+.codehilite .fm { color: #cccccc } /* Name.Function.Magic */
+.codehilite .vc { color: #00cdcd } /* Name.Variable.Class */
+.codehilite .vg { color: #00cdcd } /* Name.Variable.Global */
+.codehilite .vi { color: #00cdcd } /* Name.Variable.Instance */
+.codehilite .vm { color: #00cdcd } /* Name.Variable.Magic */
+.codehilite .il { color: #cd00cd } /* Literal.Number.Integer.Long */
diff --git a/markdownblog/markdownblog/static/pygments/vs.css b/markdownblog/markdownblog/static/pygments/vs.css
new file mode 100644
index 0000000..bb21228
--- /dev/null
+++ b/markdownblog/markdownblog/static/pygments/vs.css
@@ -0,0 +1,38 @@
+.codehilite .hll { background-color: #ffffcc }
+.codehilite { background: #ffffff; }
+.codehilite .c { color: #008000 } /* Comment */
+.codehilite .err { border: 1px solid #FF0000 } /* Error */
+.codehilite .k { color: #0000ff } /* Keyword */
+.codehilite .ch { color: #008000 } /* Comment.Hashbang */
+.codehilite .cm { color: #008000 } /* Comment.Multiline */
+.codehilite .cp { color: #0000ff } /* Comment.Preproc */
+.codehilite .cpf { color: #008000 } /* Comment.PreprocFile */
+.codehilite .c1 { color: #008000 } /* Comment.Single */
+.codehilite .cs { color: #008000 } /* Comment.Special */
+.codehilite .ge { font-style: italic } /* Generic.Emph */
+.codehilite .gh { font-weight: bold } /* Generic.Heading */
+.codehilite .gp { font-weight: bold } /* Generic.Prompt */
+.codehilite .gs { font-weight: bold } /* Generic.Strong */
+.codehilite .gu { font-weight: bold } /* Generic.Subheading */
+.codehilite .kc { color: #0000ff } /* Keyword.Constant */
+.codehilite .kd { color: #0000ff } /* Keyword.Declaration */
+.codehilite .kn { color: #0000ff } /* Keyword.Namespace */
+.codehilite .kp { color: #0000ff } /* Keyword.Pseudo */
+.codehilite .kr { color: #0000ff } /* Keyword.Reserved */
+.codehilite .kt { color: #2b91af } /* Keyword.Type */
+.codehilite .s { color: #a31515 } /* Literal.String */
+.codehilite .nc { color: #2b91af } /* Name.Class */
+.codehilite .ow { color: #0000ff } /* Operator.Word */
+.codehilite .sa { color: #a31515 } /* Literal.String.Affix */
+.codehilite .sb { color: #a31515 } /* Literal.String.Backtick */
+.codehilite .sc { color: #a31515 } /* Literal.String.Char */
+.codehilite .dl { color: #a31515 } /* Literal.String.Delimiter */
+.codehilite .sd { color: #a31515 } /* Literal.String.Doc */
+.codehilite .s2 { color: #a31515 } /* Literal.String.Double */
+.codehilite .se { color: #a31515 } /* Literal.String.Escape */
+.codehilite .sh { color: #a31515 } /* Literal.String.Heredoc */
+.codehilite .si { color: #a31515 } /* Literal.String.Interpol */
+.codehilite .sx { color: #a31515 } /* Literal.String.Other */
+.codehilite .sr { color: #a31515 } /* Literal.String.Regex */
+.codehilite .s1 { color: #a31515 } /* Literal.String.Single */
+.codehilite .ss { color: #a31515 } /* Literal.String.Symbol */
diff --git a/markdownblog/markdownblog/static/viewblog.css b/markdownblog/markdownblog/static/viewblog.css
new file mode 100644
index 0000000..cfe787c
--- /dev/null
+++ b/markdownblog/markdownblog/static/viewblog.css
@@ -0,0 +1,85 @@
+html {
+ line-height: 2em;
+ font-size: 16px;
+}
+
+strong {
+ font-weight: bold !important;
+}
+
+h1 {
+ font-size: 3em;
+}
+
+h2 {
+ font-size: 2.25em;
+}
+
+h3 {
+ font-size: 1.75em;
+}
+
+h4 {
+ font-size: 1.25em;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ font-weight: bold;
+ padding-bottom: 0.3em;
+}
+
+h1, h2 {
+ border-bottom: 1px solid #eee;
+}
+
+img {
+ width: 100%;
+}
+
+table {
+ width: 100%;
+ border: 1px solid #eee;
+}
+
+td, th {
+ border: 1px solid #eee;
+}
+
+tr:nth-child(even) {
+ background-color: #f8f8f8;
+}
+
+li {
+ list-style-type: disc !important;
+}
+
+ul {
+ padding-left: 2em !important;
+}
+
+code, pre {
+ #background-color: #eee;
+ border-radius: 3px;
+}
+
+input[type="checkbox"] {
+ position: relative !important;
+ opacity: 1 !important;
+ pointer-events: all !important;
+}
+
+input[type="checkbox"] ~ li {
+ list-style-type: none !important;
+}
+
+blockquote {
+ color: #777;
+}
+
+hr {
+ height: 0.25em;
+ padding: 0;
+ margin: 24px 0;
+ background-color: #e7e7e7;
+ border: 0;
+}
\ No newline at end of file
diff --git a/markdownblog/markdownblog/templates/blog/viewpost.html b/markdownblog/markdownblog/templates/blog/viewpost.html
index c14d707..873c98c 100644
--- a/markdownblog/markdownblog/templates/blog/viewpost.html
+++ b/markdownblog/markdownblog/templates/blog/viewpost.html
@@ -4,9 +4,27 @@
{{ post.title }}
{% endblock %}
{% block includehere %}
+
+
+
+
{% endblock %}
{% block content %}
{% autoescape off %}
{{ html }}
{% endautoescape %}
+
+
+
+
{% endblock %}
\ No newline at end of file
diff --git a/markdownblog/requirements.txt b/markdownblog/requirements.txt
index e678d35..c0f9a7d 100644
--- a/markdownblog/requirements.txt
+++ b/markdownblog/requirements.txt
@@ -1,4 +1,6 @@
django==4.0.5
psycopg2-binary>=2.9.3
factory-boy>=3.2.1
-markdown2>=2.4.3
\ No newline at end of file
+markdown2>=2.4.3
+fontawesomefree==6.1.1
+pygments>=2.12.0
\ No newline at end of file