My static website generator using poole https://www.xythobuz.de
選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

page.html 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="{{ htmlspecialchars(__encoding__) }}" />
  5. <title>{{ htmlspecialchars(page.title) }} - xythobuz.de</title>
  6. <meta name="description" content="{{ htmlspecialchars(page.get("description", "Electronics & Software Projects")) }}" />
  7. <meta name="keywords" content="{{ htmlspecialchars(page.get("keywords", "xythobuz")) }}" />
  8. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  9. <link rel="author" href="xythobuz@xythobuz.de">
  10. <link rel="shortcut icon" href="img/favicon.ico">
  11. <link rel="alternate" type="application/rss+xml" title="Blog" href="rss.xml">
  12. <link type="text/css" rel="stylesheet" href="css/style.css" />
  13. <link type="text/css" rel="stylesheet" href="css/sh_bright.min.css" />
  14. <link type="text/css" rel="stylesheet" href="css/gh-fork-ribbon.css" />
  15. <link type="text/css" rel="stylesheet" href="http://fonts.googleapis.com/css?family=Droid+Sans:400,700">
  16. <script type="text/javascript" src="js/sh_main.js"></script>
  17. <script type="text/javascript" src="yoxview/yoxview-init.js"></script>
  18. <!--%
  19. if page.get("flattr", "false") == "true":
  20. print "<script type='text/javascript'>"
  21. print "/* <![CDATA[ */"
  22. print "(function() {"
  23. print "var s = document.createElement('script');"
  24. print "var t = document.getElementsByTagName('script')[0];"
  25. print "s.type = 'text/javascript';"
  26. print "s.async = true;"
  27. print "s.src = '//api.flattr.com/js/0.6/load.js?mode=auto&uid=xythobuz&category=text';"
  28. print "t.parentNode.insertBefore(s, t);"
  29. print "})();"
  30. print "/* ]]> */"
  31. print "</script>"
  32. %-->
  33. </head>
  34. <body onload="sh_highlightDocument('/js/sh/', '.min.js');">
  35. <!--%
  36. if page.get("github", "") != "":
  37. # GitHub Fork-Me Ribbon
  38. print '<div class="github-fork-ribbon-wrapper right fixed">'
  39. print '<div class="github-fork-ribbon"><a href="'
  40. print page.github
  41. print '">Fork me on GitHub</a></div></div>'
  42. %-->
  43. <div id="nav">
  44. <ul>
  45. <li id="home"><a href="index.html">xythobuz.de</a></li>
  46. <!--%
  47. mpages = [p for p in pages if p.get("parent", "") == "main" and p.lang == "en"]
  48. mpages.sort(key=lambda p: int(p["position"]))
  49. entry = '<li><a href="%s">%s</a></li>'
  50. for p in mpages[1:]:
  51. print(entry % (htmlspecialchars(p["url"]), htmlspecialchars(p["title"])))
  52. %-->
  53. <li><a href="http://xythobuz.de/git/">Git</a></li>
  54. <li><a href="http://xythobuz.de/lastmusic">♫</a></li>
  55. <!--%
  56. tmp = [p for p in page["lang_links"].iteritems()]
  57. if len(tmp) > 1:
  58. print '<li>'
  59. print " ".join(["<li><a href='%s'>%s</a></li>" % (url, lang) for lang, url in page["lang_links"].iteritems()]).replace(">en<", '><img src="img/en.png" alt="English"><').replace(">de<", '><img src="img/de.png" alt="Deutsch"><')
  60. print "</li>"
  61. %-->
  62. </ul>
  63. </div>
  64. <div style="width: 75%; margin-left: auto; margin-right: auto;">
  65. {{ __content__ }}
  66. <!--%
  67. import sys
  68. # Centered DIV
  69. if page.get("flattr", "false") == "true" or page.get("twitter", "") != "" or page.get("reddit", "") != "" or page.get("github", "") != "" or page.get("print", "false") == "true":
  70. print '<div style="margin-top: 1em; text-align: center;">'
  71. # Print and PDF Buttons
  72. if page.get("print", "false") == "true":
  73. print """<script>var pfHeaderImgUrl = '';var pfHeaderTagline = '';var pfdisableClickToDel = 0;var pfHideImages = 0;var pfImageDisplayStyle = 'right';var pfDisablePDF = 0;var pfDisableEmail = 0;var pfDisablePrint = 0;var pfCustomCSS = '';var pfBtVersion='1';(function(){var js, pf;pf = document.createElement('script');pf.type = 'text/javascript';if('https:' == document.location.protocol){js='https://pf-cdn.printfriendly.com/ssl/main.js'}else{js='http://cdn.printfriendly.com/printfriendly.js'}pf.src=js;document.getElementsByTagName('head')[0].appendChild(pf)})();</script><a href="http://www.printfriendly.com" style="color:#6D9F00;text-decoration:none;" class="printfriendly" onclick="window.print();return false;" title="Printer Friendly and PDF"><img style="border:none;margin:0 6px" src="https://pf-cdn.printfriendly.com/images/icons/pf-print-icon.gif" width="16" height="15" alt="Print Friendly Version of this page" />Print <img style="border:none;margin:0 6px" src="https://pf-cdn.printfriendly.com/images/icons/pf-pdf-icon.gif" width="12" height="12" alt="Get a PDF version of this webpage" />PDF</a>"""
  74. # Flattr Button
  75. if page.get("flattr", "false") == "true":
  76. print '<span id="flattr">'
  77. sys.stdout.write('<a class="FlattrButton" href="')
  78. sys.stdout.write(BASE_URL)
  79. sys.stdout.write('/')
  80. sys.stdout.write(page.url)
  81. sys.stdout.write('" title="')
  82. sys.stdout.write(htmlspecialchars(page.title))
  83. sys.stdout.write('" data-flattr-button="compact">')
  84. sys.stdout.write(htmlspecialchars(page.get("description", page.title)))
  85. sys.stdout.write("</a>\n")
  86. print '</span>'
  87. # Twitter Button
  88. if page.get("twitter", "") != "":
  89. print '<span id="twitter">'
  90. sys.stdout.write('<a href="https://twitter.com/share" class="twitter-share-buttdata-via="')
  91. sys.stdout.write(page.twitter)
  92. sys.stdout.write('" data-dnt="true" data-related="')
  93. sys.stdout.write(page.twitter)
  94. sys.stdout.write('" data-count="vertical">Tweet</a>')
  95. sys.stdout.write('<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s;if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twi.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitwjs");')
  96. sys.stdout.write("</script>\n")
  97. print '</span>'
  98. # Reddit Button
  99. if page.get("reddit", "") != "":
  100. print '<span id="reddit">'
  101. sys.stdout.write('<script type="text/javascript">reddit_url = "')
  102. if (page.reddit == "true"):
  103. sys.stdout.write(BASE_URL)
  104. sys.stdout.write('/')
  105. sys.stdout.write(page.url)
  106. else:
  107. sys.stdout.write(page.reddit)
  108. sys.stdout.write('";</script>')
  109. sys.stdout.write("\n")
  110. sys.stdout.write('<script type="text/javascript" src="http://www.redcom/static/button/button2.js"></script>')
  111. sys.stdout.write("\n")
  112. print '</span>'
  113. # GitHub Fork Button. Place this last!
  114. #if page.get("github", "") != "":
  115. # print '<span id="github">'
  116. # sys.stdout.write('<a href="')
  117. # sys.stdout.write(page.github)
  118. # sys.stdout.write('" class="gitforked-button gitforked-forks gitforked-watchers"></a>')
  119. # sys.stdout.write("\n")
  120. # print '</span>'
  121. # Close DIV, horizontal line when no comments
  122. if page.get("flattr", "false") == "true" or page.get("twitter", "") != "" or page.get("reddit", "") != "" or page.get("github", "") != "" or page.get("print", "false") == "true":
  123. print '</div>'
  124. # Disqus Comments
  125. if page.get("comments", "false") == "true":
  126. print '<div id="disqus_thread"></div>'
  127. print '<script type="text/javascript">'
  128. print 'var disqus_shortname = "xythobuz";'
  129. print 'var disqus_identifier = "http://xythobuz.org/' + page["url"] + '";'
  130. print 'var disqus_url = "http://xythobuz.org/' + page["url"] + '";'
  131. print '(function() {'
  132. print 'var dsq = document.createElement("script"); dsq.type = "text/javascript"; dsq.async = true;'
  133. print 'dsq.src = "http://" + disqus_shortname + ".disqus.com/embed.js";'
  134. print '(document.getElementsByTagName("head")[0] || document.getElementsByTagName("body")[0] ).appendChild(dsq);'
  135. print '})();'
  136. print '</script>'
  137. print '<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>'
  138. print '<a href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>'
  139. elif page.get("comments", "false") != "false":
  140. print '<p><a href="%s">Head over here to discuss this article!</a></p>' % page.get("comments", "false")
  141. %-->
  142. </div>
  143. <div id="footer">
  144. <a href="http://bitbucket.org/obensonne/poole">Poole</a>
  145. &middot;
  146. <a href="http://shjs.sourceforge.net">SHJS</a>
  147. &middot;
  148. <a href="http://www.yoxigen.com/yoxview/">YoxView</a>
  149. &middot;
  150. <a rel="license" href="http://creativecommons.org/licenses/by/3.0/de/deed.en">CC-BY</a>
  151. &middot;
  152. <a href="http://www.amazon.de/?_encoding=UTF8&amp;camp=1638&amp;creative=19454&amp;linkCode=ur2&amp;site-redirect=de&amp;tag=xythobuzorg-21">Amazon.de Affiliate</a>
  153. &middot;
  154. <a href="http://www.amazon.de/registry/wishlist/1TURV4XV2J3VT">Amazon.de Wishlist</a>
  155. &middot;
  156. <a href="http://steamcommunity.com/id/xythobuz/wishlist/?sort=price">Steam Wishlist</a>
  157. </div>
  158. <img src="http://xythobuz.de/stats/count.php?img" alt="Analytics">
  159. <!-- Piwik -->
  160. <script type="text/javascript">
  161. var _paq = _paq || [];
  162. _paq.push(['trackPageView']);
  163. _paq.push(['enableLinkTracking']);
  164. (function() {
  165. var u=(("https:" == document.location.protocol) ? "https" : "http") + "://xythobuz.de/piwik/";
  166. _paq.push(['setTrackerUrl', u+'piwik.php']);
  167. _paq.push(['setSiteId', 1]);
  168. var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.type='text/javascript';
  169. g.defer=true; g.async=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
  170. })();
  171. </script>
  172. <noscript><p><img src="http://xythobuz.de/piwik/piwik.php?idsite=1" style="border:0;" alt="" /></p></noscript>
  173. <!-- End Piwik Code -->
  174. </body>
  175. </html>