commit 9fbc74abd4866e4efcb2859c63f2c1d69ee46fc9 Author: Michael Zhang Date: Mon May 28 07:33:21 2018 -0500 initial diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d7ceb4d --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +_site +.sass-cache +Gemfile.lock + +/_posts/* +!/_posts/.gitkeep \ No newline at end of file diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..e1de5a2 --- /dev/null +++ b/Gemfile @@ -0,0 +1,10 @@ +# frozen_string_literal: true + +source "https://rubygems.org" do + gem "kramdown" + gem "jekyll-watch" + gem "mathematical" + gem "rouge" +end + +git_source(:github) {|repo_name| "https://git.mzhang.me/michael/blog" } diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..0aff6f1 --- /dev/null +++ b/_config.yml @@ -0,0 +1,5 @@ +markdown: kramdown + +kramdown: + input: GFM + syntax_highlighter: rouge diff --git a/_layouts/default.html b/_layouts/default.html new file mode 100644 index 0000000..248773e --- /dev/null +++ b/_layouts/default.html @@ -0,0 +1,14 @@ + + + + michael's blog + + + + +
+ {{ content }} +
+ + + diff --git a/_layouts/page.html b/_layouts/page.html new file mode 100644 index 0000000..3e3f64f --- /dev/null +++ b/_layouts/page.html @@ -0,0 +1 @@ +shieet diff --git a/_layouts/post.html b/_layouts/post.html new file mode 100644 index 0000000..07008e0 --- /dev/null +++ b/_layouts/post.html @@ -0,0 +1,19 @@ + + + + {{ page.title }} - michael's blog + + + + +
+
+

{{ page.title }}

+

published: {{ page.date | date_to_long_string }}

+
+ + {{ content }} +
+ + + diff --git a/_plugins/latex.rb b/_plugins/latex.rb new file mode 100644 index 0000000..59dbba6 --- /dev/null +++ b/_plugins/latex.rb @@ -0,0 +1,70 @@ +require "mathematical" + +# module Jekyll +# class LatexGenerator < Generator +# safe true +# def generate(site) +# blockRgx = /\$\$[^\$]+\$\$/ +# site.posts.each do |post| +# buf = StringIO.new +# prev = 0 +# post.content.to_enum(:match, blockRgx).with_index.each do |match, i| +# a, b = match.offset(i) +# buf << post.content[prev..a] + +# render = Mathematical.new.render(match[i]) +# buf << render[:data] + +# prev = b +# end +# buf << post.content[prev..post.content.length] +# p buf.string +# end +# inlineRgx = /[^\$]\$[^\$]+\$[^\$]/ +# site.posts.each do |post| +# p post.content.scan(inlineRgx) +# end +# end +# end +# end + +$blockRgx = /((?\$\$[^\$]+\$\$)|[^\$](?\$[^\$]+\$)[^\$])/ + +module Jekyll + class InlineLatex < Converter + safe true + priority :high + + def matches(ext) + ext =~ /^\.md$/i + end + + def output_ext(ext) + ".md" + end + + def convert(content) + # first pass + buf = StringIO.new + prev = 0 + renderer = Mathematical.new({:base64 => true, :format => :svg}) + content.to_enum(:scan, $blockRgx).map { Regexp.last_match }.to_enum.with_index.each do |match, i| + if match[:block] != nil + code = match[:block] + a, b = match.offset(:block) + else + code = match[:inline] + a, b = match.offset(:inline) + end + + buf << content[prev..a].gsub(/^\$?\$/, "").gsub(/\$?\$$/, "") + + render = renderer.render(code) + buf << "" + prev = b - 1 + end + buf << content[prev..content.length].gsub(/^\$?\$/, "") + return buf.string + end + end +end diff --git a/_posts/.gitkeep b/_posts/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/_sass/fonts.scss b/_sass/fonts.scss new file mode 100644 index 0000000..ae4407d --- /dev/null +++ b/_sass/fonts.scss @@ -0,0 +1,10 @@ +@font-face { + font-family: "Roboto"; + font-weight: 300; + src: url(/fonts/Roboto/Roboto-Light.ttf) format("truetype"); +} +@font-face { + font-family: "RobotoMono"; + font-weight: 300; + src: url(/fonts/RobotoMono/RobotoMono-Light.ttf) format("truetype"); +} diff --git a/_sass/main.scss b/_sass/main.scss new file mode 100644 index 0000000..3146dc9 --- /dev/null +++ b/_sass/main.scss @@ -0,0 +1,19 @@ +@import "fonts.scss"; +@import "simple-grid.scss"; +@import "syntax.scss"; +body { + background-color: #f0f0f0; + font-family: "Roboto", sans-serif; + font-weight: 300; +} + +*::selection { + background-color: #444444; + color: #f0f0f0; +} + +pre, code { + font-family: "RobotoMono", monospace; + font-weight: 300; + padding: 10px; +} \ No newline at end of file diff --git a/_sass/simple-grid.scss b/_sass/simple-grid.scss new file mode 100644 index 0000000..1a63e3e --- /dev/null +++ b/_sass/simple-grid.scss @@ -0,0 +1,188 @@ +// SIMPLE GRID - SASS/SCSS + +// @import url(https://fonts.googleapis.com/css?family=Lato:400,300,300italic,400italic,700,700italic); + +// fonts +$font-family: 'Roboto', Helvetica, sans-serif; +$font-weight-light: 300; +$font-weight-regular: 400; +$font-weight-heavy: 700; +$font-height: 1.5; + +// colors +$dark-grey: #333447; +$dark-gray: #333447; // for the Americans + +// universal + +html, +body { + height: 100%; + width: 100%; + margin: 0; + padding: 0; + left: 0; + top: 0; + font-size: 100%; +} + +* { + font-family: $font-family; + color: $dark-grey; + line-height: $font-height; +} + +// typography + +h1 { + font-size: 2.5rem; +} + +h2 { + font-size: 2rem; +} + +h3 { + font-size: 1.375rem; +} + +h4 { + font-size: 1.125rem; +} + +h5 { + font-size: 1rem; +} + +h6 { + font-size: 0.875rem; +} + +p { + font-size: 1.125rem; + font-weight: 200; + line-height: 1.8; +} + +.font-light { + font-weight: $font-weight-light; +} + +.font-regular { + font-weight: $font-weight-regular; +} + +.font-heavy { + font-weight: $font-weight-heavy; +} + +// utility + +.left { + text-align: left; +} + +.right { + text-align: right; +} + +.center { + text-align: center; + margin-left: auto; + margin-right: auto; +} + +.justify { + text-align: justify; +} + +.hidden-sm { + display: none; +} + +// grid + +$width: 96%; +$gutter: 4%; +$breakpoint-small: 33.75em; // 540px +$breakpoint-med: 45em; // 720px +$breakpoint-large: 60em; // 960px + +.container { + width: 90%; + margin-left: auto; + margin-right: auto; + + @media only screen and (min-width: $breakpoint-small) { + width: 80%; + } + + @media only screen and (min-width: $breakpoint-large) { + width: 75%; + max-width: 60rem; + } +} + +.row { + position: relative; + width: 100%; +} + +.row [class^="col"] { + float: left; + margin: 0.5rem 2%; + min-height: 0.125rem; +} + +.row::after { + content: ""; + display: table; + clear: both; +} + +.col-1, +.col-2, +.col-3, +.col-4, +.col-5, +.col-6, +.col-7, +.col-8, +.col-9, +.col-10, +.col-11, +.col-12 { + width: $width; +} + +.col-1-sm { width:($width / 12) - ($gutter * 11 / 12); } +.col-2-sm { width: ($width / 6) - ($gutter * 10 / 12); } +.col-3-sm { width: ($width / 4) - ($gutter * 9 / 12); } +.col-4-sm { width: ($width / 3) - ($gutter * 8 / 12); } +.col-5-sm { width: ($width / (12 / 5)) - ($gutter * 7 / 12); } +.col-6-sm { width: ($width / 2) - ($gutter * 6 / 12); } +.col-7-sm { width: ($width / (12 / 7)) - ($gutter * 5 / 12); } +.col-8-sm { width: ($width / (12 / 8)) - ($gutter * 4 / 12); } +.col-9-sm { width: ($width / (12 / 9)) - ($gutter * 3 / 12); } +.col-10-sm { width: ($width / (12 / 10)) - ($gutter * 2 / 12); } +.col-11-sm { width: ($width / (12 / 11)) - ($gutter * 1 / 12); } +.col-12-sm { width: $width; } + +@media only screen and (min-width: $breakpoint-med) { + .col-1 { width:($width / 12) - ($gutter * 11 / 12); } + .col-2 { width: ($width / 6) - ($gutter * 10 / 12); } + .col-3 { width: ($width / 4) - ($gutter * 9 / 12); } + .col-4 { width: ($width / 3) - ($gutter * 8 / 12); } + .col-5 { width: ($width / (12 / 5)) - ($gutter * 7 / 12); } + .col-6 { width: ($width / 2) - ($gutter * 6 / 12); } + .col-7 { width: ($width / (12 / 7)) - ($gutter * 5 / 12); } + .col-8 { width: ($width / (12 / 8)) - ($gutter * 4 / 12); } + .col-9 { width: ($width / (12 / 9)) - ($gutter * 3 / 12); } + .col-10 { width: ($width / (12 / 10)) - ($gutter * 2 / 12); } + .col-11 { width: ($width / (12 / 11)) - ($gutter * 1 / 12); } + .col-12 { width: $width; } + + .hidden-sm { + display: block; + } +} diff --git a/_sass/syntax.scss b/_sass/syntax.scss new file mode 100644 index 0000000..af4b2a0 --- /dev/null +++ b/_sass/syntax.scss @@ -0,0 +1,38 @@ +.highlight .hll { background-color: #ffffcc } +.highlight { background: #ffffff; } +.highlight .c { color: #008000 } /* Comment */ +.highlight .err { border: 1px solid #FF0000 } /* Error */ +.highlight .k { color: #0000ff } /* Keyword */ +.highlight .ch { color: #008000 } /* Comment.Hashbang */ +.highlight .cm { color: #008000 } /* Comment.Multiline */ +.highlight .cp { color: #0000ff } /* Comment.Preproc */ +.highlight .cpf { color: #008000 } /* Comment.PreprocFile */ +.highlight .c1 { color: #008000 } /* Comment.Single */ +.highlight .cs { color: #008000 } /* Comment.Special */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gh { font-weight: bold } /* Generic.Heading */ +.highlight .gp { font-weight: bold } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { font-weight: bold } /* Generic.Subheading */ +.highlight .kc { color: #0000ff } /* Keyword.Constant */ +.highlight .kd { color: #0000ff } /* Keyword.Declaration */ +.highlight .kn { color: #0000ff } /* Keyword.Namespace */ +.highlight .kp { color: #0000ff } /* Keyword.Pseudo */ +.highlight .kr { color: #0000ff } /* Keyword.Reserved */ +.highlight .kt { color: #2b91af } /* Keyword.Type */ +.highlight .s { color: #a31515 } /* Literal.String */ +.highlight .nc { color: #2b91af } /* Name.Class */ +.highlight .ow { color: #0000ff } /* Operator.Word */ +.highlight .sa { color: #a31515 } /* Literal.String.Affix */ +.highlight .sb { color: #a31515 } /* Literal.String.Backtick */ +.highlight .sc { color: #a31515 } /* Literal.String.Char */ +.highlight .dl { color: #a31515 } /* Literal.String.Delimiter */ +.highlight .sd { color: #a31515 } /* Literal.String.Doc */ +.highlight .s2 { color: #a31515 } /* Literal.String.Double */ +.highlight .se { color: #a31515 } /* Literal.String.Escape */ +.highlight .sh { color: #a31515 } /* Literal.String.Heredoc */ +.highlight .si { color: #a31515 } /* Literal.String.Interpol */ +.highlight .sx { color: #a31515 } /* Literal.String.Other */ +.highlight .sr { color: #a31515 } /* Literal.String.Regex */ +.highlight .s1 { color: #a31515 } /* Literal.String.Single */ +.highlight .ss { color: #a31515 } /* Literal.String.Symbol */ \ No newline at end of file diff --git a/about.md b/about.md new file mode 100644 index 0000000..2c24ece --- /dev/null +++ b/about.md @@ -0,0 +1,23 @@ +--- +layout: default +--- + +# about me + +Hi there! I'm a Computer Science student at the University of Minnesota, and I've got a wide variety of interests under this field. I've been doing web development for a long time and now I'm looking into security, programming language development, and software development! + +Here's some of the languages I like, in approximate order of my skill/confidence in using them: + +- **Python** My favorite language by far. Aside from its weakness in performance, I love how the language looks, and I'm currently working on a project that aims to use type inferencing to produce lower-level code. +- **JavaScript** Although I'm trying to step away from JavaScript, I find myself using it from time to time simply out of ease of use and plethora of libraries. +- **Rust** I can't say I'm fluent in Rust, but writing code in Rust just feels right. +- **C** Largely prefer this over C++ because of much finer control over what's happening. +- **Go** I really love this language. +- **OCaml** Learned this from a functional programming class, and I still use it from time to time; I kinda see it as the "Python" of function languages. +- **C++** Good for when I did competitive programming because of its very comprehensive standard library. + +If you want my resume, contact me through one of these means: + +## Contact +Discord: **michael#8440** (this is usually the best place to find me) +Email: (I sign all my Git commits with this email) diff --git a/css/index.scss b/css/index.scss new file mode 100644 index 0000000..4ecb593 --- /dev/null +++ b/css/index.scss @@ -0,0 +1,4 @@ +--- +--- + +@import "main.scss"; diff --git a/fonts/Roboto/LICENSE.txt b/fonts/Roboto/LICENSE.txt new file mode 100644 index 0000000..75b5248 --- /dev/null +++ b/fonts/Roboto/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/fonts/Roboto/Roboto-Black.ttf b/fonts/Roboto/Roboto-Black.ttf new file mode 100644 index 0000000..689fe5c Binary files /dev/null and b/fonts/Roboto/Roboto-Black.ttf differ diff --git a/fonts/Roboto/Roboto-BlackItalic.ttf b/fonts/Roboto/Roboto-BlackItalic.ttf new file mode 100644 index 0000000..0b4e0ee Binary files /dev/null and b/fonts/Roboto/Roboto-BlackItalic.ttf differ diff --git a/fonts/Roboto/Roboto-Bold.ttf b/fonts/Roboto/Roboto-Bold.ttf new file mode 100644 index 0000000..d3f01ad Binary files /dev/null and b/fonts/Roboto/Roboto-Bold.ttf differ diff --git a/fonts/Roboto/Roboto-BoldItalic.ttf b/fonts/Roboto/Roboto-BoldItalic.ttf new file mode 100644 index 0000000..41cc1e7 Binary files /dev/null and b/fonts/Roboto/Roboto-BoldItalic.ttf differ diff --git a/fonts/Roboto/Roboto-Italic.ttf b/fonts/Roboto/Roboto-Italic.ttf new file mode 100644 index 0000000..6a1cee5 Binary files /dev/null and b/fonts/Roboto/Roboto-Italic.ttf differ diff --git a/fonts/Roboto/Roboto-Light.ttf b/fonts/Roboto/Roboto-Light.ttf new file mode 100644 index 0000000..219063a Binary files /dev/null and b/fonts/Roboto/Roboto-Light.ttf differ diff --git a/fonts/Roboto/Roboto-LightItalic.ttf b/fonts/Roboto/Roboto-LightItalic.ttf new file mode 100644 index 0000000..0e81e87 Binary files /dev/null and b/fonts/Roboto/Roboto-LightItalic.ttf differ diff --git a/fonts/Roboto/Roboto-Medium.ttf b/fonts/Roboto/Roboto-Medium.ttf new file mode 100644 index 0000000..1a7f3b0 Binary files /dev/null and b/fonts/Roboto/Roboto-Medium.ttf differ diff --git a/fonts/Roboto/Roboto-MediumItalic.ttf b/fonts/Roboto/Roboto-MediumItalic.ttf new file mode 100644 index 0000000..0030295 Binary files /dev/null and b/fonts/Roboto/Roboto-MediumItalic.ttf differ diff --git a/fonts/Roboto/Roboto-Regular.ttf b/fonts/Roboto/Roboto-Regular.ttf new file mode 100644 index 0000000..2c97eea Binary files /dev/null and b/fonts/Roboto/Roboto-Regular.ttf differ diff --git a/fonts/Roboto/Roboto-Thin.ttf b/fonts/Roboto/Roboto-Thin.ttf new file mode 100644 index 0000000..b74a4fd Binary files /dev/null and b/fonts/Roboto/Roboto-Thin.ttf differ diff --git a/fonts/Roboto/Roboto-ThinItalic.ttf b/fonts/Roboto/Roboto-ThinItalic.ttf new file mode 100644 index 0000000..dd0ddb8 Binary files /dev/null and b/fonts/Roboto/Roboto-ThinItalic.ttf differ diff --git a/fonts/RobotoMono/LICENSE.txt b/fonts/RobotoMono/LICENSE.txt new file mode 100644 index 0000000..75b5248 --- /dev/null +++ b/fonts/RobotoMono/LICENSE.txt @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/fonts/RobotoMono/RobotoMono-Bold.ttf b/fonts/RobotoMono/RobotoMono-Bold.ttf new file mode 100644 index 0000000..07ef607 Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-Bold.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-BoldItalic.ttf b/fonts/RobotoMono/RobotoMono-BoldItalic.ttf new file mode 100644 index 0000000..1cca0bf Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-BoldItalic.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-Italic.ttf b/fonts/RobotoMono/RobotoMono-Italic.ttf new file mode 100644 index 0000000..ef92c37 Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-Italic.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-Light.ttf b/fonts/RobotoMono/RobotoMono-Light.ttf new file mode 100644 index 0000000..63229b2 Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-Light.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-LightItalic.ttf b/fonts/RobotoMono/RobotoMono-LightItalic.ttf new file mode 100644 index 0000000..f25bed5 Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-LightItalic.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-Medium.ttf b/fonts/RobotoMono/RobotoMono-Medium.ttf new file mode 100644 index 0000000..88ff0c1 Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-Medium.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-MediumItalic.ttf b/fonts/RobotoMono/RobotoMono-MediumItalic.ttf new file mode 100644 index 0000000..307efad Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-MediumItalic.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-Regular.ttf b/fonts/RobotoMono/RobotoMono-Regular.ttf new file mode 100644 index 0000000..b158a33 Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-Regular.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-Thin.ttf b/fonts/RobotoMono/RobotoMono-Thin.ttf new file mode 100644 index 0000000..309484d Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-Thin.ttf differ diff --git a/fonts/RobotoMono/RobotoMono-ThinItalic.ttf b/fonts/RobotoMono/RobotoMono-ThinItalic.ttf new file mode 100644 index 0000000..e1bb912 Binary files /dev/null and b/fonts/RobotoMono/RobotoMono-ThinItalic.ttf differ diff --git a/index.html b/index.html new file mode 100644 index 0000000..c036747 --- /dev/null +++ b/index.html @@ -0,0 +1,22 @@ +--- +layout: default +--- + +

michael's blog

+ + + {% for post in site.posts %} + + + + + {% endfor %} +
+

+ {{ post.title }} +

+
+ + {{ post.date | date: "%B %e, %Y" }} + +