Cicak Bin Kadal
GitHub Page Configuration Files
Alif Saddid

_config.yml

title:       "Operating Systems 2021-1 (OS211)"
version:     "0026e---23-Feb-2021"
copyright:   "2021-2021"
description: >- 
  This Is How Me Do It!
  This Is How Me Do It!
# baseurl: "" # e.g. /blog
# url: ""     # e.g. http://example.com
google_analytics: "UA-89852122-6"
author:           "Alif Saddid"
address:          "Boyolali"
sitemap:          "true"
plugins:
  - jekyll-sitemap
  - jekyll-seo-tag
urlweb:           "https://alifsaddid.github.io/os211/"
urlcontact:       "TBS"
urlgithub:        "https://github.com/alifsaddid/os211/"
urlghpage:        "https://alifsaddid.github.io/os211/"
keywords:         "jekyll, testing"
github:           [metadata]


Gemfile

source "https://rubygems.org/"
gem 'jekyll-sitemap'
gem 'github-pages', group: :jekyll_plugins


_layouts/layout.html


<!DOCTYPE html>
<html lang="en">
<!-- File _layouts/layout.html           -->
<!-- (c) 2021 - 2021 VauLSMorg           -->
<!-- START: Wed 17 Feb 2021 19:44:53 WIB -->
<!-- This is a free HTML file            -->
{% include head.html %}
<body class="plainclass1">
<!-- body class="backclass" -->
<div class="container">
  <header>
  <div class="row">
    <div class="column left">
      <img src="{{ site.baseurl }}/assets/images/cbk.jpg" alt="Cicak Bin Kadal" style="width:130px; border-radius:50%">
    </div>
    <div class="column right1">
      {% if page.title %}{{ page.title | escape }}
      {% else %}{{ site.title | escape }}{% endif %}
    </div>
    <div class="column right2">
      {% if page.author %}{{ page.author | escape }}
      {% else %}{{ site.author | escape }}{% endif %}
      ---
      {% if page.address %}{{ page.address | escape }}
      {% else %}{{ site.address | escape }}{% endif %}
    </div>
  </div>
  </header>
  {% include navbar.html %}
  <section>
     {{ content }}
  </section>
  {% include footer.html %}
  {% include google-analytics.html %}
  {% include scripts.html %}
</div>
</body>
</html>




Makefile

# START Mon 15 Feb 2021 09:41:08 WIB

ALL: 004.md

004.md: 004.pmd _config.yml Gemfile _layouts/layout.html Makefile \
        _includes/navbar.html \
        _includes/footer.html _includes/head.html _includes/google-analytics.html \
	assets/css/style.css assets/scripts/includeScript.py 
	python assets/scripts/includeScript.py < 004.pmd > 004.md

.phony: ALL



_includes/head.html


<!-- File _includes/head.html             -->       
<!-- (c) 2021 - 2021 VauLSMorg            -->
<!-- START: Wed 17 Feb 2021 19:48:31 WIB  -->
<!-- This is a free HTML file             -->
<head>
  <title>
    {% if page.title %}{{ page.title | escape }} - {{ site.title | escape }}
    {% else %}{{ site.title | escape }}{% endif %}
  </title>
  <meta charset="utf-8">
  <meta name="viewport"    content="width=device-width, initial-scale=1">
  <meta name="description" content="{{ page.excerpt | default: site.description }}">
  <!-- link href="{{ site.baseurl }}/assets/css/css.css" rel="stylesheet" type="text/css" title="Style" -->
  <!-- link href="/assets/css/css.css" rel="stylesheet" type="text/css" title="Style" -->
  <link href="{{ site.baseurl }}/assets/css/style.css" rel="stylesheet" type="text/css" title="Style">
</head>





_includes/navbar.html


<!-- File _includes/navbar.html           -->
<!-- (c) 2021 - 2021 VauLSMorg            -->
<!-- START: Wed 17 Feb 2021 19:48:31 WIB  -->
<!-- This is a free HTML file             -->
<nav class="navbar">
  <ul>
    <li class='listitem'><a href='{{ site.baseurl }}/'>HOME</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/004.html'>LISTING</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W01/'>W01</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W02/'>W02</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W03/'>W03</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W04/'>W04</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W05/'>W05</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W06/'>W06</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W07/'>W07</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W08/'>W08</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W09/'>W09</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/W10/'>W10</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/TXT/mypubkey.txt'>KEY</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/TXT/myrank.txt'>RANK</a></li>
    <li class='listitem'><a href='{{ site.baseurl }}/TXT/mylog.txt'>LOG</a></li>
    <li class='listitem'><a href='{{ site.urlgithub }}'>GitHub</a></li>
  </ul>
</nav>



assets/css/style.css

/*
 Shamelessly stolen from "Here, There, and Everywhere",
 including but not limited to "bootstrap", "stack overflow", 
 "Mike Dane", "w3schools", et al.
 */

.backclass {
  background-image:url(/assets/images/default.png)
}

.plainclass {
  color:            white;
  background-color: #001030;
}

.plainclass1 {
  color:            white;
  background-color: black;
}

.container {
  max-width:    70%;
  margin:       0 auto;
  font-size:    1.1em;
  font-family:  verdana,arial,helvetica,san-serif;
  text-align:   justify;
}

.container a {
  color: #a0a0a0;
}

.container a:hover {
  color: #f0f0f0;
}

.row {
}

.column {
  float:            left;
  display:          inline-block;
  background:       #808080;
  height:           130px;
  width:            100%;
  padding-top:      10px;
  padding-bottom:   10px;
  padding-left:     10px;
  padding-right:    10px;
  text-align:       left;
}

.left {
  width:            130px;
}

.right1 {
  height:           80px;
  width:            calc(100% - 200px);
  padding-top:      5px;
  padding-bottom:   5px;
  padding-left:     30px;
  font-size:        1.5em;
  font-weight:      bold;
}

.right2 {
  height:           50px;
  width:            calc(100% - 200px);
  padding-top:      5px;
  padding-bottom:   5px;
  padding-left:     30px;
  font-size:        1.1em;
  font-weight:      bold;
}
}

.youtube {
  float:            left;
  display:          inline-block;
  height:           150px;
  width:            100%;
  padding-top:      10px;
  padding-bottom:   10px;
  padding-left:     10px;
  padding-right:    10px;
}

.yvideo {
  width:            25%;
  height:           100%;
  padding-top:      0px;
  padding-bottom:   0px;
  padding-left:     0px;
  padding-right:    0px;
}

.yinfo {
  width:            calc(75%  - 30px);
  height:           calc(100% - 20px);
  padding-top:      10px;
  padding-bottom:   10px;
  padding-left:     10px;
  padding-right:    10px;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}

.navbar {
  background-color: #222222;
  color:            #FFFFFF;
  font-size:        0.7em;
}

.navbar ul li {
  display:        inline-block;
  padding:        1px;
  padding-top:    10px;
  padding-bottom: 10px;
}

.navbar ul li a {
  text-decoration: none;
}

.navbar ul li a:hover {
  background:       blue;
  color:            #CCCCCC;
  font-size:        1em;
  font-weight:      bold;
}

pre {
  border:        3px solid rgba(255, 255, 255, 0.15);
  padding:       10px; 
  color:         #b5e853;
  font-size:     0.7em; 
  border-radius: 2px;
}

/*
  ZCZC
  border: 1px solid rgba(255, 255, 255, 0.15);
  padding: 10px; 
  color: #b5e853;
  background: rgba(0, 0, 0, 0.9);
  border-radius: 2px;
  word-wrap: normal;
  overflow: auto;
  overflow-y: hidden;
  max-width: 65%;

 */

/*
 ************************************************************
 */

@media screen and (max-width:768px) {
  ul {
    margin: 0;
    padding: 0;
  }
  #navbar ul li {
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    text-align: center;
  }
  #navbar ul li a {
    margin: 0;
    padding: 0;
  }
  #menu {
    display: none;
  }
  #maincontent {
    width: 100%;
    padding: 0;
  }
  h1 {
    font-size: 1em;
  }
}

/*
 ************************************************************
 */


_includes/google-analytics.html


<!-- File _includes/google-analytics.html -->
<!-- (c) 2021 - 2021 VauLSMorg            -->
<!-- START: Wed 17 Feb 2021 19:47:55 WIB  -->
<!-- This is a free SCRIPT file           -->
<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
  ga('create', '{{ site.google_analytics }}', 'auto');
  ga('send', 'pageview');
</script>



assets/scripts/includeScript.py

# (c) 2011 Brice Fernandes. This script was ripped from 
# https://fractallambda.com/2011/08/17/pincpy-including-files-and-script-output.html
# Note: This script is outdated.  
# The author uses Handlebars.js or Pystache for the same purpose.
# Usage: 
#     python .program/xx.py < in.pmd > out.md

import sys
import re
import shlex
import subprocess as sp
 
exe_pat = re.compile(r'(\s*)\(!>(.*)<\)\s*')
inc_pat = re.compile(r'(\s*)\(>(.*)<\)\s*')
 
if __name__ == "__main__":
  for line in sys.stdin:
    match_exe = re.match(exe_pat, line)
    match_inc = re.match(inc_pat, line)

    if match_exe:
      space = match_exe.group(1)
      exe = match_exe.group(2).strip()
      args = shlex.split(exe)
      sys.stdout.writelines(
        map(
          lambda x: space+x+"\n", 
          sp.check_output(args).split("\n")))

    elif match_inc:
      space = match_inc.group(1)
      inc = match_inc.group(2).strip()
      sys.stdout.writelines(
        map(
          lambda x: space+x, 
          open(inc)))

    else:
      sys.stdout.write(line)


© 2021-2021 --- Alif Saddid --- File Revision: 0027---27-Feb-2021.