]> git.za3k.com Git - blog.git/commitdiff
Add a comments HTML file, so we can remove the HTML source
authorZachary Vance <za3k@za3k.com>
Wed, 31 Jul 2024 22:40:46 +0000 (18:40 -0400)
committerZachary Vance <za3k@za3k.com>
Wed, 31 Jul 2024 22:40:46 +0000 (18:40 -0400)
252 files changed:
html2markdown.py
posts-comments/controlling-a-computercraft-turtle-remotely.html [new file with mode: 0644]
posts-comments/ddos.html [new file with mode: 0644]
posts-comments/diy-keyboards-and-how-keyboards-work.html [new file with mode: 0644]
posts-comments/hack-a-day-day-04-lashed-table.html [new file with mode: 0644]
posts-comments/installing-email-with-postfix-and-dovecot.html [new file with mode: 0644]
posts-comments/introducing-the-zorchpad-display-demo.html [new file with mode: 0644]
posts-comments/making-a-hardware-random-number-generator.html [new file with mode: 0644]
posts-comments/making-my-finances-public.html [new file with mode: 0644]
posts-comments/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi.html [new file with mode: 0644]
posts-comments/qr-backup.html [new file with mode: 0644]
posts-comments/running-a-forge-server-on-headless-linux.html [new file with mode: 0644]
posts-comments/steak-tartare-3.html [new file with mode: 0644]
posts-comments/streaming-linux-twitch-using-ffmpeg-and-alsa.html [new file with mode: 0644]
posts-comments/terminal-goal-rationality-techniques.html [new file with mode: 0644]
posts-comments/time-management-optimizers-satisficers-minimizers.html [new file with mode: 0644]
posts-comments/tiny-cute-vampire-bat.html [new file with mode: 0644]
posts-comments/understanding-gzip-2.html [new file with mode: 0644]
posts-comments/wip-dead-tree-publishing-4.html [new file with mode: 0644]
posts-md/116.md
posts-md/20-minute-interruptions.md
posts-md/2020-books.md
posts-md/2020-review.md
posts-md/2020-videogames.md
posts-md/2021-books.md
posts-md/2022-books.md
posts-md/2022-year-in-review.md
posts-md/2023-flash-media-longevity-testing-3-years-later.md
posts-md/3-more-games.md
posts-md/3-new-games-deadly-education-rpg-logic-potions-emperical-zendo.md
posts-md/30-days-of-learning-play-and-newness.md
posts-md/a-mystery-in-the-text-editor.md
posts-md/a-pixel-art.md
posts-md/all-the-recipes.md
posts-md/amazon-aws.md
posts-md/android-backup-on-arch-linux.md
posts-md/april-fools-puzzle-contest-solutions.md
posts-md/april-fools-puzzle-contest.md
posts-md/archiving-all-bash-commands-typed.md
posts-md/archiving-all-web-traffic.md
posts-md/archiving-github.md
posts-md/archiving-gmail.md
posts-md/archiving-twitch.md
posts-md/archiving-twitter.md
posts-md/articles-section.md
posts-md/backup-android-on-plugin.md
posts-md/banh-chung.md
posts-md/blast-furance.md
posts-md/blueprint-maker-13-complete.md
posts-md/board-game-travel-kit.md
posts-md/capturing-video-on-debian-linux-with-the-blackmagic-intensity-pro-4k-card.md
posts-md/cardboard-mail-holders.md
posts-md/configuring-mailxs-mailrc-with-gmail.md
posts-md/controlling-a-computercraft-turtle-remotely.md
posts-md/cookbook.md
posts-md/crawling-etiquette.md
posts-md/cron-email-and-sending-email-to-only-one-address.md
posts-md/dd-spells-srd-vs-5e-players-handbook.md
posts-md/dd-story-time.md
posts-md/ddos.md
posts-md/default-twitter-icons.md
posts-md/dependency-resolution-in-javascript.md
posts-md/diy-hard-drive-carrying-case.md
posts-md/diy-keyboards-and-how-keyboards-work.md
posts-md/domain-names-for-sale.md
posts-md/dungeon-master-ii-spell-runes.md
posts-md/e-ink-laptop.md
posts-md/easel-toy.md
posts-md/encrypted-root-on-debian-part-2-unattended-boot.md
posts-md/etherpad.md
posts-md/even-more-uri-handlers-in-linux.md
posts-md/fabric1-aur-package.md
posts-md/first-aid-kit.md
posts-md/flash-media-longevity-testing-4-years-later.md
posts-md/games-i-like.md
posts-md/garden-signs-on-wall-tiles-pt-2.md
posts-md/garden-signs-on-wall-tiles.md
posts-md/getting-rid-of-mold.md
posts-md/getting-the-adafruit-pro-trinket-3-3v-to-work-in-arch-linux.md
posts-md/github-com-archive-background-research.md
posts-md/good-time-estimation.md
posts-md/hack-a-day-2023-2.md
posts-md/hack-a-day-2023-is-done.md
posts-md/hack-a-day-2023.md
posts-md/hack-a-day-day-01-perquackey.md
posts-md/hack-a-day-day-04-lashed-table.md
posts-md/hack-a-day-day-06-doodlemoji-alchemy.md
posts-md/hack-a-day-day-06.md
posts-md/hack-a-day-day-08-receipt-zine.md
posts-md/hack-a-day-day-10-typewriter.md
posts-md/hack-a-day-day-11-raytraced-rain.md
posts-md/hack-a-day-day-12-screensavers.md
posts-md/hack-a-day-day-13-blueprint-maker.md
posts-md/hack-a-day-day-14-bytebeat-synth.md
posts-md/hack-a-day-day-17-tower-of-choices.md
posts-md/hack-a-day-day-18-a-i-grab-bag.md
posts-md/hack-a-day-day-2-raytracing.md
posts-md/hack-a-day-day-20-hillsfar-lockpicking-spritesheet.md
posts-md/hack-a-day-day-22-homemade-pcbs.md
posts-md/hack-a-day-day-23-packing.md
posts-md/hack-a-day-day-28-90s-sitcom.md
posts-md/hack-a-day-day-29-speed-reading.md
posts-md/hack-a-day-day-30-music-of-the-celestial-spheres.md
posts-md/hack-a-day-hack-a-battle.md
posts-md/hack-a-day-hack-a-blog.md
posts-md/hack-a-day-hack-a-bug.md
posts-md/hack-a-day-hack-a-chat.md
posts-md/hack-a-day-hack-a-clock.md
posts-md/hack-a-day-hack-a-crop.md
posts-md/hack-a-day-hack-a-dictionary.md
posts-md/hack-a-day-hack-a-farm.md
posts-md/hack-a-day-hack-a-hang.md
posts-md/hack-a-day-hack-a-hell.md
posts-md/hack-a-day-hack-a-homepage.md
posts-md/hack-a-day-hack-a-line.md
posts-md/hack-a-day-hack-a-link-2.md
posts-md/hack-a-day-hack-a-link.md
posts-md/hack-a-day-hack-a-machine.md
posts-md/hack-a-day-hack-a-mandelbrot.md
posts-md/hack-a-day-hack-a-minigame.md
posts-md/hack-a-day-hack-a-paste.md
posts-md/hack-a-day-hack-a-snake.md
posts-md/hack-a-day-hack-a-song.md
posts-md/hack-a-day-hack-a-sound.md
posts-md/hack-a-day-hack-a-stats.md
posts-md/hack-a-day-hack-a-tank.md
posts-md/hack-a-day-hack-a-tile.md
posts-md/hack-a-day-hack-a-tv-guide.md
posts-md/hack-a-day-hack-an-adventure.md
posts-md/hack-a-day-hack-an-asteroid.md
posts-md/hack-a-day-hack-an-experiment.md
posts-md/hack-a-day-hack-an-icecube-failure.md
posts-md/hack-a-day-hack-an-mmo.md
posts-md/hack-a-day-hack-an-uptime.md
posts-md/hack-a-day-website.md
posts-md/hello-world.md
posts-md/hillsfar-lockpicking-20-complete.md
posts-md/how-to-retire-for-infinity-years.md
posts-md/html-css-cheatsheet.md
posts-md/installing-canon-imageclass-lbp-6000-on-64-bit-debian.md
posts-md/installing-email-with-postfix-and-dovecot.md
posts-md/introducing-the-zorchpad-display-demo.md
posts-md/irc.md
posts-md/ircpuzzles-2024.md
posts-md/is-rick-and-morty-out-season-5.md
posts-md/is-rick-and-morty-out-season-6.md
posts-md/known-good/a-mystery-in-the-text-editor.md
posts-md/known-good/archiving-twitter.md
posts-md/known-good/blast-furance.md
posts-md/known-good/default-twitter-icons.md
posts-md/known-good/diy-keyboards-and-how-keyboards-work.md
posts-md/known-good/e-ink-laptop.md
posts-md/known-good/hack-a-day-day-06.md
posts-md/known-good/hack-a-day-hack-a-clock.md
posts-md/known-good/hack-a-day-hack-a-hang.md
posts-md/known-good/migrating-an-existing-debian-installation-to-encrypted-root.md
posts-md/known-good/money-orders.md
posts-md/known-good/postmortem-bs-store.md
posts-md/known-good/scroll-props.md
posts-md/known-good/the-double-lives-of-books.md
posts-md/known-good/understanding-gzip-2.md
posts-md/known-good/whiteboard-partition.md
posts-md/known-good/whoosh.md
posts-md/known-good/wip-dead-tree-publishing-3.md
posts-md/known-good/wip-dead-tree-publishing-4.md
posts-md/known-good/wip-dead-tree-publishing.md
posts-md/known-good/xp-boot-usb-stick.md
posts-md/known-good/zorchpad-keyboard-update.md
posts-md/life-logging-in-2019.md
posts-md/linux-print-server.md
posts-md/mail-filtering-with-dovecot.md
posts-md/making-a-hardware-random-number-generator.md
posts-md/making-my-finances-public.md
posts-md/making-signs-on-wall-tiles.md
posts-md/markdown-support.md
posts-md/meeple-initiative-tracker.md
posts-md/migrating-an-existing-debian-installation-to-encrypted-root.md
posts-md/mon8.md
posts-md/money-orders.md
posts-md/moreorcs-com.md
posts-md/multi-universe-rpg-toy.md
posts-md/my-todo-list.md
posts-md/new-experimental-blog.md
posts-md/ogs2021-27-million-go-games.md
posts-md/ok-mixnet.md
posts-md/old-wikipedia-urdu.md
posts-md/old-wikipedia.md
posts-md/one-page-rpgs.md
posts-md/one-screenshot-per-minute.md
posts-md/open-nntp-server.md
posts-md/painting.md
posts-md/pandora-songs.md
posts-md/paper-archival.md
posts-md/pixel-alphabet.md
posts-md/pixel-art-a-cool-cat.md
posts-md/pompompom.md
posts-md/postmortem-bs-store.md
posts-md/printable-todo-list.md
posts-md/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi.md
posts-md/problem-log-txt.md
posts-md/qr-backup-2.md
posts-md/qr-backup-v1-1.md
posts-md/qr-backup.md
posts-md/raspberry-pi-comparison.md
posts-md/relay-music.md
posts-md/repulsive-dots.md
posts-md/roasted-chickpeas.md
posts-md/running-a-forge-server-on-headless-linux.md
posts-md/scan-organizer.md
posts-md/scheme-interpreter.md
posts-md/screen-and-tmux-ides.md
posts-md/scroll-props.md
posts-md/setting-up-ssl-certificates-using-startssl.md
posts-md/software-section.md
posts-md/sql-views.md
posts-md/steak-tartare-3.md
posts-md/storage-prices-2019-07.md
posts-md/storage-prices-2020-01.md
posts-md/storage-prices-2022-07.md
posts-md/storage-prices-2023-01.md
posts-md/streaming-linux-twitch-using-ffmpeg-and-alsa.md
posts-md/stylish.md
posts-md/talk-in-debian.md
posts-md/terminal-goal-rationality-techniques.md
posts-md/testing-scrapers-faster.md
posts-md/the-bible-translated-to-the-new-latin.md
posts-md/the-double-lives-of-books.md
posts-md/the-life-changing-magic-of-tidying-up.md
posts-md/time-log-transcribed.md
posts-md/time-management-optimizers-satisficers-minimizers.md
posts-md/timelog-analysis.md
posts-md/tiny-cute-vampire-bat.md
posts-md/tty-audit-logs.md
posts-md/understanding-gzip-2.md
posts-md/url-handlers-in-linux.md
posts-md/usb-flash-longevity-testing-year-2.md
posts-md/what-i-know-about-sleep-schedules.md
posts-md/when-is-rick-and-morty-out-season-4-episode-6.md
posts-md/whiteboard-partition.md
posts-md/whoosh.md
posts-md/whsh.md
posts-md/wip-dead-tree-publishing-2.md
posts-md/wip-dead-tree-publishing-3.md
posts-md/wip-dead-tree-publishing-4.md
posts-md/wip-dead-tree-publishing.md
posts-md/xp-boot-usb-stick.md
posts-md/year-in-review.md
posts-md/youtube-autodl.md
posts-md/zorchpad-keyboard-update.md
posts-md/zorchpad-update-cardboard-mockup-mk1.md
posts-md/zorchpad-update-first-3d-print.md
posts-md/zorchpad-update-keyboard.md

index 07ddcad44aeb6e70f84a174e6ff26b8bc1386295..17095b72229ef36464e81e3993f80276c66c5e19 100644 (file)
@@ -24,17 +24,29 @@ class Post():
         return result.stdout.decode("utf8")
 
     def convert(self):
-        self.data["content"] = self.html2markdown(self.data["content"].split("<!-- comments -->")[0])
-
-    def save(self, target_dir):
+        parts = self.data["content"].split("<!-- comments -->")
+        self.data["content"] = self.html2markdown(parts[0])
+        self.data["markup"] = "markdown"
+        self.comments = ""
+        if len(parts) >= 1:
+            self.comments = parts[1]
+        self.data["has-comments"] = (self.comments.strip() != "")
+
+    def save(self, target_dir, comment_dir):
         target_dir.mkdir(parents=True, exist_ok=True)
         target_path = target_dir / (self.stem + ".md")
         frontmatter.save(target_path, self.data)
 
+        if self.data["has-comments"]:
+            comment_path = comment_dir / (self.stem + ".html")
+            with open(comment_path, "w") as f:
+                f.write(self.comments)
+
 class Converter():
-    def __init__(self, from_, to):
+    def __init__(self, from_, to, comment_dir):
         self.from_ = from_
         self.to = to
+        self.comment_dir = comment_dir
 
     def posts(self):
         for post in Path(self.from_).iterdir():
@@ -43,8 +55,8 @@ class Converter():
     def convert_all(self):
         for post in self.posts():
             post.convert()
-            post.save(Path(self.to))
+            post.save(Path(self.to), Path(self.comment_dir))
 
 if __name__ == "__main__":
-    converter = Converter("posts-html", "posts-md")
+    converter = Converter("posts-html", "posts-md", "posts-comments")
     converter.convert_all()
diff --git a/posts-comments/controlling-a-computercraft-turtle-remotely.html b/posts-comments/controlling-a-computercraft-turtle-remotely.html
new file mode 100644 (file)
index 0000000..2bf4a40
--- /dev/null
@@ -0,0 +1,17 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-3128">
+<div id="comment-3128">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/b7fcc830b8a111f098fb64bdd96eedf2?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/b7fcc830b8a111f098fb64bdd96eedf2?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn"><a class="url" href="https://comparegamehosting.com/game/minecraft/" rel="ugc external nofollow">Alex Booth</a></cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/controlling-a-computercraft-turtle-remotely/#comment-3128">
+                       April 25, 2018 at 9:27 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Opening up ComputerCraft to the world using the http commands was an amazing idea from the developers!</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Alex Booth" class="comment-reply-link" data-belowelement="comment-3128" data-commentid="3128" data-postid="313" data-replyto="Reply to Alex Booth" data-respondelement="respond" href="https://blog.za3k.com/controlling-a-computercraft-turtle-remotely/?replytocom=3128#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/ddos.html b/posts-comments/ddos.html
new file mode 100644 (file)
index 0000000..32e9c63
--- /dev/null
@@ -0,0 +1,17 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-2927">
+<div id="comment-2927">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/beb5f01c762e3ac8276b7dfd7affa2ae?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/beb5f01c762e3ac8276b7dfd7affa2ae?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Mircea Popescu</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/ddos/#comment-2927">
+                       September 2, 2017 at 6:23 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Perhaps look into <a href="http://trilema.com/2015/mika-epstein-aka-ipstenu-is-a-thoroughly-clueless-poser/" rel="nofollow ugc">http://trilema.com/2015/mika-epstein-aka-ipstenu-is-a-thoroughly-clueless-poser/</a></p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Mircea Popescu" class="comment-reply-link" data-belowelement="comment-2927" data-commentid="2927" data-postid="402" data-replyto="Reply to Mircea Popescu" data-respondelement="respond" href="https://blog.za3k.com/ddos/?replytocom=2927#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/diy-keyboards-and-how-keyboards-work.html b/posts-comments/diy-keyboards-and-how-keyboards-work.html
new file mode 100644 (file)
index 0000000..595495f
--- /dev/null
@@ -0,0 +1,18 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-10102">
+<div id="comment-10102">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/f9bddb456724b83c643af6f44ae32042?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/f9bddb456724b83c643af6f44ae32042?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">nortti</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/diy-keyboards-and-how-keyboards-work/#comment-10102">
+                       June 9, 2023 at 2:43 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>“And better keyboards can detect multiple keys being pressed at once (N-key rollover), which I think they do by having a completely separate wire to each key.”</p>
+<p>You can keep a matrix arrangement and have N-key rollover by putting a diode in series with every switch</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to nortti" class="comment-reply-link" data-belowelement="comment-10102" data-commentid="10102" data-postid="1059" data-replyto="Reply to nortti" data-respondelement="respond" href="https://blog.za3k.com/diy-keyboards-and-how-keyboards-work/?replytocom=10102#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/hack-a-day-day-04-lashed-table.html b/posts-comments/hack-a-day-day-04-lashed-table.html
new file mode 100644 (file)
index 0000000..a255ed8
--- /dev/null
@@ -0,0 +1,17 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-10633">
+<div id="comment-10633">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/eb8e07689c4f342e5ae296cab95f609e?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/eb8e07689c4f342e5ae296cab95f609e?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Carin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/hack-a-day-day-04-lashed-table/#comment-10633">
+                       November 6, 2023 at 8:44 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Cool!</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Carin" class="comment-reply-link" data-belowelement="comment-10633" data-commentid="10633" data-postid="1147" data-replyto="Reply to Carin" data-respondelement="respond" href="https://blog.za3k.com/hack-a-day-day-04-lashed-table/?replytocom=10633#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/installing-email-with-postfix-and-dovecot.html b/posts-comments/installing-email-with-postfix-and-dovecot.html
new file mode 100644 (file)
index 0000000..f705bec
--- /dev/null
@@ -0,0 +1,145 @@
+
+<ol class="commentlist">
+<!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-2842">
+<div id="comment-2842">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/3a4733166894a30fe613838ecaaa1e95?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/3a4733166894a30fe613838ecaaa1e95?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">eduardz</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-2842">
+                       November 23, 2016 at 12:18 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Hello,</p>
+<p>Can you implement quota support from postgressql?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to eduardz" class="comment-reply-link" data-belowelement="comment-2842" data-commentid="2842" data-postid="358" data-replyto="Reply to eduardz" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=2842#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-2873">
+<div id="comment-2873">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-2873">
+                       April 5, 2017 at 7:05 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Not sure if this is “will you do” or “is it possible”. I will not do anything to set up quota–I have one user (me) so it doesn’t make sense. I encourage you to link if you do.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-2873" data-commentid="2873" data-postid="358" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=2873#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-odd thread-alt depth-1" id="li-comment-2852">
+<div id="comment-2852">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/04f9049f74277e447eee4569ac61563c?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/04f9049f74277e447eee4569ac61563c?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Tudor</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-2852">
+                       February 23, 2017 at 2:45 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>In the “useradd -d -M -d /var/mail/vmail –shell=/usr/bin/nologin -u 5000 -g vmail vmail“ I think the first “-d“ shouldn’t be there</p>
+<p>Thanks for the post</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Tudor" class="comment-reply-link" data-belowelement="comment-2852" data-commentid="2852" data-postid="358" data-replyto="Reply to Tudor" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=2852#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-2874">
+<div id="comment-2874">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-2874">
+                       April 5, 2017 at 7:06 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Thanks for the corrections, glad you found it useful.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-2874" data-commentid="2874" data-postid="358" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=2874#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-2853">
+<div id="comment-2853">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/04f9049f74277e447eee4569ac61563c?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/04f9049f74277e447eee4569ac61563c?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Tudor</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-2853">
+                       February 23, 2017 at 2:54 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Also, for Postgresql the correct commands to create users are:<br/>
+CREATE USER postfix PASSWORD ‘XXX’;<br/>
+CREATE USER dovecot PASSWORD ‘XXX’;</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Tudor" class="comment-reply-link" data-belowelement="comment-2853" data-commentid="2853" data-postid="358" data-replyto="Reply to Tudor" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=2853#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-2854">
+<div id="comment-2854">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/04f9049f74277e447eee4569ac61563c?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/04f9049f74277e447eee4569ac61563c?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Tudor</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-2854">
+                       February 23, 2017 at 3:22 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Also, there shouldn’t be any comma after the VALUES (<br/>
+    ‘za3k’,<br/>
+    ‘za3k.com’,<br/>
+    ‘{SHA512}…………………………………………………….==’ part</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Tudor" class="comment-reply-link" data-belowelement="comment-2854" data-commentid="2854" data-postid="358" data-replyto="Reply to Tudor" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=2854#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-3135">
+<div id="comment-3135">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/9fe7e715cb7615380e65ebecc7c703b6?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/9fe7e715cb7615380e65ebecc7c703b6?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">S</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-3135">
+                       May 12, 2018 at 9:36 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>A little sloppy – you should have simply shown the entire contents of each file one by one, with descriptions in comments or whatever, instead of breaking them up into snippets – and there are a few errors and omissions (I can’t recall which ones now)<br/>
+However, using this guide and some googling, I was able to get a mailserver working – which is more than I can say for any other guide; so, thanks.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to S" class="comment-reply-link" data-belowelement="comment-3135" data-commentid="3135" data-postid="358" data-replyto="Reply to S" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=3135#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-4730">
+<div id="comment-4730">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/0f57bc0e6352458280cb89f50df560eb?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/0f57bc0e6352458280cb89f50df560eb?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Korilius</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-4730">
+                       July 17, 2021 at 3:56 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>A guide that could have been great but tripped at the finish line.  A lot of errors in SQL and elsewhere along with step reorganization.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Korilius" class="comment-reply-link" data-belowelement="comment-4730" data-commentid="4730" data-postid="358" data-replyto="Reply to Korilius" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=4730#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor even depth-2" id="li-comment-4731">
+<div id="comment-4731">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/#comment-4731">
+                       July 17, 2021 at 4:52 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>If you have any specific errors you can mention, I’d be happy to fix stuff.</p>
+<p>But yeah, that’s the problem with writing a guide after you do something instead of during/before.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-4731" data-commentid="4731" data-postid="358" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/installing-email-with-postfix-and-dovecot/?replytocom=4731#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/introducing-the-zorchpad-display-demo.html b/posts-comments/introducing-the-zorchpad-display-demo.html
new file mode 100644 (file)
index 0000000..20c4b08
--- /dev/null
@@ -0,0 +1,43 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-11338">
+<div id="comment-11338">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/a1e9d69b1d8b0a1fd3a90f03a40de162?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a1e9d69b1d8b0a1fd3a90f03a40de162?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">JenniferRM</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/introducing-the-zorchpad-display-demo/#comment-11338">
+                       April 20, 2024 at 9:52 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Very cool idea. I was imagining form factors, and was thinking briefly about somehow having a sort of laptop arrangement where an e-ink screen is visible through glass when it is closed and in some kind of “protective storage mode”, and then visible directly from “the proper side of the e-ink screen” after it opens up. This is probably impossible using default hardware options, but searching around to confirm this lead to some interesting links and unusual design demos.</p>
+<p>Here’s ~12 year old thread from someone who wants a computer to use in an off grid cabin.<br/>
+<a href="https://forums.tomshardware.com/threads/ultra-low-power-pc-to-run-off-solar-power.1375469/" rel="nofollow ugc">https://forums.tomshardware.com/threads/ultra-low-power-pc-to-run-off-solar-power.1375469/</a></p>
+<p>Here is a 2023 video about the revived product “GVUIDO” (pronounced Guido) optimized for musicians where part of the UI involves covering a light sensor.<br/>
+<a href="https://www.youtube.com/watch?v=wTIf9wjm0y8" rel="nofollow ugc">https://www.youtube.com/watch?v=wTIf9wjm0y8</a></p>
+<p>One thing that struck me is that a lot of people might want a Xorchpad to stick INSIDE a larger system (out in nature? as part of a science package?) that might install a rugged solar panel and battery. Then a small USB-C cord might provide a Xorchpad inside the unit with power, and want some intelligence to come out of the same cord, in exchange?</p>
+<p>I’m not sure if a USB-C is consistent with the vision, however. Maybe the “minimum power” for that is far above the “maximim power” that would not blow the Sourcepad’s circuits?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to JenniferRM" class="comment-reply-link" data-belowelement="comment-11338" data-commentid="11338" data-postid="1043" data-replyto="Reply to JenniferRM" data-respondelement="respond" href="https://blog.za3k.com/introducing-the-zorchpad-display-demo/?replytocom=11338#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-11339">
+<div id="comment-11339">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/introducing-the-zorchpad-display-demo/#comment-11339">
+                       April 20, 2024 at 10:24 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Try using numbers, instead of words! It works better for comparing power usage.</p>
+<p>The “low-power computer” someone wants from 12 years ago should be 3W. The Zorchpad is designed to run at 0.001W.</p>
+<p>I’m not sure what GVUIDO has to do with anything, was there a reason you linked that?</p>
+<p>The Zorchpad could easily be powered by any standard cable, yes. But if you need a larger system to power it, you’re missing the point.</p>
+<p>“Blowing circuits” is not a correct intuition for designing low-power electronics. Go learn about Ohm’s Law!</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-11339" data-commentid="11339" data-postid="1043" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/introducing-the-zorchpad-display-demo/?replytocom=11339#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/making-a-hardware-random-number-generator.html b/posts-comments/making-a-hardware-random-number-generator.html
new file mode 100644 (file)
index 0000000..b3210ed
--- /dev/null
@@ -0,0 +1,33 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-11135">
+<div id="comment-11135">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/477bf018c52601e86d3a8aa07c6f9392?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/477bf018c52601e86d3a8aa07c6f9392?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">jiacheng hao</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/making-a-hardware-random-number-generator/#comment-11135">
+                       March 3, 2024 at 9:04 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Hello, I think you are truely right about the TRNG. I am a researcher who specializes in designing TRNG. And now I have a TRNG chip with PCB support USB2.0. And the speed can be up to 30Mbps. It can pass NIST 800-22 and 800-90B. Are you interested in that? Looking forward to your reply!!</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to jiacheng hao" class="comment-reply-link" data-belowelement="comment-11135" data-commentid="11135" data-postid="598" data-replyto="Reply to jiacheng hao" data-respondelement="respond" href="https://blog.za3k.com/making-a-hardware-random-number-generator/?replytocom=11135#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment byuser comment-author-admin bypostauthor odd alt thread-odd thread-alt depth-1" id="li-comment-11136">
+<div id="comment-11136">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/making-a-hardware-random-number-generator/#comment-11136">
+                       March 3, 2024 at 11:36 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Interested in what way?</p>
+<p>Is your TRNG open-source?</p>
+<p>Where do you research?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-11136" data-commentid="11136" data-postid="598" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/making-a-hardware-random-number-generator/?replytocom=11136#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/making-my-finances-public.html b/posts-comments/making-my-finances-public.html
new file mode 100644 (file)
index 0000000..740f4b9
--- /dev/null
@@ -0,0 +1,33 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-3253">
+<div id="comment-3253">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/35cf1c8d20becce42e768c4bade3a1dc?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/35cf1c8d20becce42e768c4bade3a1dc?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">anon</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/making-my-finances-public/#comment-3253">
+                       February 7, 2019 at 6:19 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>is offline</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to anon" class="comment-reply-link" data-belowelement="comment-3253" data-commentid="3253" data-postid="18" data-replyto="Reply to anon" data-respondelement="respond" href="https://blog.za3k.com/making-my-finances-public/?replytocom=3253#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-3882">
+<div id="comment-3882">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/making-my-finances-public/#comment-3882">
+                       December 17, 2019 at 7:41 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Yeah, my export broke a while back. This should be fixed indefinitely, but covers 2011-2016 only now.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-3882" data-commentid="3882" data-postid="18" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/making-my-finances-public/?replytocom=3882#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi.html b/posts-comments/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi.html
new file mode 100644 (file)
index 0000000..6b87121
--- /dev/null
@@ -0,0 +1,157 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-4165">
+<div id="comment-4165">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/bc00b207944738af582a91c5352ef163?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/bc00b207944738af582a91c5352ef163?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Joel</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-4165">
+                       August 2, 2020 at 12:52 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>There appears to be a typo in step 5A. The page currently reads “lpinfo -m” but I believe should be “lpinfo -v”. Per the man page, the m flag lists drivers and the v flag lists devices. </p>
+<p>The USB device can be found in the -v output for step 5A but the driver can be found in the -m output for step 5B.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Joel" class="comment-reply-link" data-belowelement="comment-4165" data-commentid="4165" data-postid="517" data-replyto="Reply to Joel" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=4165#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-4213">
+<div id="comment-4213">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/b99febd9d3367d3306947a8e159c6445?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/b99febd9d3367d3306947a8e159c6445?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Scott</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-4213">
+                       October 19, 2020 at 5:10 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Thank you so very much for this. Worked like a charm.</p>
+<p>Any tips on how to print over the network?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Scott" class="comment-reply-link" data-belowelement="comment-4213" data-commentid="4213" data-postid="517" data-replyto="Reply to Scott" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=4213#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-4277">
+<div id="comment-4277">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/dffffda5bcb146c22d8be3ef6b4f6554?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/dffffda5bcb146c22d8be3ef6b4f6554?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">rathesun01</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-4277">
+                       December 8, 2020 at 6:44 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Awesome post. Joel is supposedly correct. It should have been “lpinfo -v” in the step 5A.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to rathesun01" class="comment-reply-link" data-belowelement="comment-4277" data-commentid="4277" data-postid="517" data-replyto="Reply to rathesun01" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=4277#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment byuser comment-author-admin bypostauthor odd alt thread-odd thread-alt depth-1" id="li-comment-4279">
+<div id="comment-4279">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-4279">
+                       December 12, 2020 at 1:31 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Corrected ‘lpinfo -v’, thanks.<br>
+No clue how to print over the network, sorry. That’s actually why I set up a raspberry pi to connect to the printer instead–it’s my wifi interface.</br></p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-4279" data-commentid="4279" data-postid="517" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=4279#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-4319">
+<div id="comment-4319">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/b851d521102349bbfd71e7d7df8bef44?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/b851d521102349bbfd71e7d7df8bef44?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">steve</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-4319">
+                       December 30, 2020 at 9:05 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>I have the Brother HL-2270DW, and I had to install from source to get it to work. I’m not using USB, but port forwarding across via NAT to another internal network. </p>
+<p>I just used the cups admin pages to complete setting things up. Before using this package, I picked some other closely related printer. It was printing the page, sucking it back in, then finally printing. Not terrible, but I was annoyed. Now it’s perfect!</p>
+<p>For printing over the network, I used the socket::9100 setting. No idea the command line knobs or dials, just did it through the cups web page.</p>
+<p>Another reason for me to do this is now my little rasperry pi zero w shows my printer as an AirPrint printer, so now I can print from my iDevices. Brother has their own app for this printer, but I was annoyed having to install a special app for this.  My HL2270DW was made without AirPrint. It’s a fine little machine and don’t want to throw it out.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to steve" class="comment-reply-link" data-belowelement="comment-4319" data-commentid="4319" data-postid="517" data-replyto="Reply to steve" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=4319#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment odd alt depth-2" id="li-comment-4380">
+<div id="comment-4380">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/1edcef9b0ab9150a7e2d22cd18371609?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/1edcef9b0ab9150a7e2d22cd18371609?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Jaye Horn</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-4380">
+                       February 18, 2021 at 3:19 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>How did you install from source? and how did you do the port forwarding across via NAT to another internal network? I’m new to this so any help would be very much appreciated.</p>
+<p>Thank you.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Jaye Horn" class="comment-reply-link" data-belowelement="comment-4380" data-commentid="4380" data-postid="517" data-replyto="Reply to Jaye Horn" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=4380#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-odd thread-alt depth-1" id="li-comment-4341">
+<div id="comment-4341">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/173de507afbda1d5933757bb66e863eb?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/173de507afbda1d5933757bb66e863eb?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Job</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-4341">
+                       January 20, 2021 at 8:09 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Would this work for brother hl-l2395dw scanner?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Job" class="comment-reply-link" data-belowelement="comment-4341" data-commentid="4341" data-postid="517" data-replyto="Reply to Job" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=4341#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-even depth-1" id="li-comment-5178">
+<div id="comment-5178">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/285bae3dce12d6c20103a5ff2a4bcddb?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/285bae3dce12d6c20103a5ff2a4bcddb?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Adam Trask</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-5178">
+                       October 22, 2021 at 5:00 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Thanks so much for posting this.  This helped get my HL-L2300D working properly.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Adam Trask" class="comment-reply-link" data-belowelement="comment-5178" data-commentid="5178" data-postid="517" data-replyto="Reply to Adam Trask" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=5178#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment even thread-odd thread-alt depth-1" id="li-comment-5438">
+<div id="comment-5438">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/76652e498c8089550fa09056625d5899?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/76652e498c8089550fa09056625d5899?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Danial Foster</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-5438">
+                       December 24, 2021 at 1:39 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>&gt;&gt;&gt; (author’s shameful note: if you’re not looking, I find it<br>
+&gt;&gt;&gt;surprisingly easy to plug USB B into the ethernet jack)</br></p>
+<p>I smiled when I saw this because you are clearly a ding dong; that sounds like a rookie mistake.</p>
+<p>I couldn’t get your instructions to work, so I tried troubleshooting through Google. Couldn’t figure it out. sudo lpinfo -v | grep usb wasn’t showing jack.</p>
+<p>It was because I had my USB B plugged into the ethernet jack of my BR-2270DW.</p>
+<p>Everything works now. Thank you so much.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Danial Foster" class="comment-reply-link" data-belowelement="comment-5438" data-commentid="5438" data-postid="517" data-replyto="Reply to Danial Foster" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=5438#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-even depth-1" id="li-comment-9429">
+<div id="comment-9429">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/fe520de38df86000b2d31661c96cd28a?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/fe520de38df86000b2d31661c96cd28a?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">J Bot</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/#comment-9429">
+                       January 3, 2023 at 4:03 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Any steps to do this with a wifi connected HL-2270DW? Thanks!</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to J Bot" class="comment-reply-link" data-belowelement="comment-9429" data-commentid="9429" data-postid="517" data-replyto="Reply to J Bot" data-respondelement="respond" href="https://blog.za3k.com/printing-on-the-brother-hl-2270dw-printer-using-a-raspberry-pi/?replytocom=9429#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/qr-backup.html b/posts-comments/qr-backup.html
new file mode 100644 (file)
index 0000000..a8cbf80
--- /dev/null
@@ -0,0 +1,48 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-4642">
+<div id="comment-4642">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/d8731f49a2e6864ba0675c4639ef08be?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/d8731f49a2e6864ba0675c4639ef08be?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn"><a class="url" href="https://scruss.com/blog/" rel="ugc external nofollow">scruss</a></cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/qr-backup/#comment-4642">
+                       June 9, 2021 at 6:58 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>nice! I’ve played with some similar ideas, using tar and QR Code output to a thermal printer. The used to be a thing (Twibright Optar, IIRC: it’s fallen off the web) that made full-page scannable codes that got an almost useful data density. But they weren’t QR Codes, so needed their own decoder.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to scruss" class="comment-reply-link" data-belowelement="comment-4642" data-commentid="4642" data-postid="587" data-replyto="Reply to scruss" data-respondelement="respond" href="https://blog.za3k.com/qr-backup/?replytocom=4642#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-4644">
+<div id="comment-4644">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/qr-backup/#comment-4644">
+                       June 9, 2021 at 2:06 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Actually, I link to it in the <a href="https://github.com/za3k/qr-backup/blob/master/docs/FAQ.md#what-other-paper-backup-projects-exist" rel="nofollow ugc">FAQ</a>, it’s still on the <a href="http://ronja.twibright.com/optar/" rel="nofollow ugc">web</a>. An even better version was “Paperback”, but it’s 9 years unmaintained–I’m looking into seeing if there is a maintained Linux port. Both do a lot of things right, even if they have a slightly different goal (high data density, over ease-of-use and foolproof restore).</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-4644" data-commentid="4644" data-postid="587" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/qr-backup/?replytocom=4644#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment byuser comment-author-admin bypostauthor even depth-2" id="li-comment-4645">
+<div id="comment-4645">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/qr-backup/#comment-4645">
+                       June 9, 2021 at 2:08 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Also, feel free to recommend me a good, cheap thermal printer. I tried to do a “poloroid” thing (take a picture of yourself with webcam, immediately print to thermal) and found that mine was shit and the heat overexposed unrelated parts. QR codes seem like a reasonable application, although I’d be concerned about the longevity of thermal paper for backups (can easily fade in heat).</p>
+<p>Edit: If I remember correctly, I wanted to make a thermal-paper typewriter for a zine?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-4645" data-commentid="4645" data-postid="587" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/qr-backup/?replytocom=4645#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/running-a-forge-server-on-headless-linux.html b/posts-comments/running-a-forge-server-on-headless-linux.html
new file mode 100644 (file)
index 0000000..4d8bdbe
--- /dev/null
@@ -0,0 +1,131 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-511">
+<div id="comment-511">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/eca9fbfd1236b50f30aec8f7b95ef721?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/eca9fbfd1236b50f30aec8f7b95ef721?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn"><a class="url" href="https://2dminecraft.wordpress.com/" rel="ugc external nofollow">Susan Tatun</a></cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-511">
+                       July 10, 2015 at 11:31 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>An honest sharing about downloaing and installing Minecraft 1.6.4.  I followed what you mentioned and did it sucessfully. Right now, I’m playing with my little son and guiding him what the terrific things are. Anyway, thanks a lot!</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Susan Tatun" class="comment-reply-link" data-belowelement="comment-511" data-commentid="511" data-postid="13" data-replyto="Reply to Susan Tatun" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=511#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-1349">
+<div id="comment-1349">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/f386723170dfc6b4122c5fe2d95ffbbc?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/f386723170dfc6b4122c5fe2d95ffbbc?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lynx</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-1349">
+                       August 18, 2015 at 1:44 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>4am installs of servers is hard, and trying to follow the Forge wiki which is inaccurate at best is hard.<br/>
+You got me from dead brick to running box in ten minutes. Thank you.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lynx" class="comment-reply-link" data-belowelement="comment-1349" data-commentid="1349" data-postid="13" data-replyto="Reply to Lynx" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=1349#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-1689">
+<div id="comment-1689">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/746c2f840c27e88b6bfc135f14f4ce37?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/746c2f840c27e88b6bfc135f14f4ce37?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">crumpuppet</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-1689">
+                       September 7, 2015 at 1:32 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Thanks so much! I’ve been looking for these steps for a while, and finally found something that works. Would have been first prize if it could be used along with a GUI frontend like mcmyadmin, but oh well 🙂</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to crumpuppet" class="comment-reply-link" data-belowelement="comment-1689" data-commentid="1689" data-postid="13" data-replyto="Reply to crumpuppet" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=1689#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-2468">
+<div id="comment-2468">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/48ef5c93bf1c483b50dd6b7977b9cbca?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/48ef5c93bf1c483b50dd6b7977b9cbca?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Dave</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-2468">
+                       November 9, 2015 at 11:14 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Same here.  Searched all over found yours and running in moments.  My kids have been hooked on mods and wanted a server.  I have VMware and can spin up a linux box up in moments.  This was so easy. Thanks.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Dave" class="comment-reply-link" data-belowelement="comment-2468" data-commentid="2468" data-postid="13" data-replyto="Reply to Dave" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=2468#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-3252">
+<div id="comment-3252">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/8cc161f40686089efa4eb9dbc381797a?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/8cc161f40686089efa4eb9dbc381797a?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn"><a class="url" href="https://minecraftapkmod.info/download/" rel="ugc external nofollow">Minecraft Lover</a></cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-3252">
+                       February 6, 2019 at 6:40 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Very useful information, Thank you</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Minecraft Lover" class="comment-reply-link" data-belowelement="comment-3252" data-commentid="3252" data-postid="13" data-replyto="Reply to Minecraft Lover" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=3252#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-3788">
+<div id="comment-3788">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/4589e18b3dc7de6c60e1b99052acfe1d?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/4589e18b3dc7de6c60e1b99052acfe1d?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Leon</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-3788">
+                       September 9, 2019 at 9:12 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Does anyone here have problems with installing the mods. Im donwloading them in the mods directory with the cmd “wget” and nothing works.Am i using the wrong command or what?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Leon" class="comment-reply-link" data-belowelement="comment-3788" data-commentid="3788" data-postid="13" data-replyto="Reply to Leon" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=3788#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-3991">
+<div id="comment-3991">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/b50d1a265153eee6da6b41d6adc0eb06?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/b50d1a265153eee6da6b41d6adc0eb06?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn"><a class="url" href="https://apkstreet.com/roblox-mod-apk-unlimited-robux/" rel="ugc external nofollow">Rajan Chopra</a></cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-3991">
+                       March 7, 2020 at 3:45 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Thanks for sharing Minecraft. Can you also share Roblox Apk?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Rajan Chopra" class="comment-reply-link" data-belowelement="comment-3991" data-commentid="3991" data-postid="13" data-replyto="Reply to Rajan Chopra" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=3991#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-4324">
+<div id="comment-4324">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/52ce2f57adc4ccfc3e6274ffa86bf9f5?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/52ce2f57adc4ccfc3e6274ffa86bf9f5?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Neckbeard Hater</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-4324">
+                       January 4, 2021 at 10:22 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>“one of the devs seems actively hostile around providing help to …”</p>
+<p>this is so typical of the linux community. really.  And I am a developer with 20 years experience, I hate the Linux community.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Neckbeard Hater" class="comment-reply-link" data-belowelement="comment-4324" data-commentid="4324" data-postid="13" data-replyto="Reply to Neckbeard Hater" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=4324#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-9669">
+<div id="comment-9669">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/cca172695c7bd7d417748775c1ad3c36?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/cca172695c7bd7d417748775c1ad3c36?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">nat</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/#comment-9669">
+                       February 14, 2023 at 9:17 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>lol this tutorial still works 9 years later thanks tho this helped so much!!</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to nat" class="comment-reply-link" data-belowelement="comment-9669" data-commentid="9669" data-postid="13" data-replyto="Reply to nat" data-respondelement="respond" href="https://blog.za3k.com/running-a-forge-server-on-headless-linux/?replytocom=9669#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/steak-tartare-3.html b/posts-comments/steak-tartare-3.html
new file mode 100644 (file)
index 0000000..d9ef83f
--- /dev/null
@@ -0,0 +1,17 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-255">
+<div id="comment-255">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/aa5d8a139b96dc7b082a50ca2446deff?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/aa5d8a139b96dc7b082a50ca2446deff?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn"><a class="url" href="http://sometimesicook.net" rel="ugc external nofollow">Tricia</a></cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/steak-tartare-3/#comment-255">
+                       May 21, 2015 at 8:14 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>So tasty! Enjoyed our month of obsessing over the recipe ^u^</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Tricia" class="comment-reply-link" data-belowelement="comment-255" data-commentid="255" data-postid="193" data-replyto="Reply to Tricia" data-respondelement="respond" href="https://blog.za3k.com/steak-tartare-3/?replytocom=255#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/streaming-linux-twitch-using-ffmpeg-and-alsa.html b/posts-comments/streaming-linux-twitch-using-ffmpeg-and-alsa.html
new file mode 100644 (file)
index 0000000..3fa0d5a
--- /dev/null
@@ -0,0 +1,17 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-4344">
+<div id="comment-4344">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/47e66dd3a830fdd2a6191a4100425b43?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/47e66dd3a830fdd2a6191a4100425b43?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Mario Enriquez</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/streaming-linux-twitch-using-ffmpeg-and-alsa/#comment-4344">
+                       January 22, 2021 at 7:31 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Thanks for your post.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Mario Enriquez" class="comment-reply-link" data-belowelement="comment-4344" data-commentid="4344" data-postid="509" data-replyto="Reply to Mario Enriquez" data-respondelement="respond" href="https://blog.za3k.com/streaming-linux-twitch-using-ffmpeg-and-alsa/?replytocom=4344#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/terminal-goal-rationality-techniques.html b/posts-comments/terminal-goal-rationality-techniques.html
new file mode 100644 (file)
index 0000000..78dd2d6
--- /dev/null
@@ -0,0 +1,19 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-631">
+<div id="comment-631">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/111a7d8b594d7707bc1f5e3085c069ef?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/111a7d8b594d7707bc1f5e3085c069ef?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">JSevilla</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/terminal-goal-rationality-techniques/#comment-631">
+                       July 18, 2015 at 9:42 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Cool stuff. I liked exactboxing and DTOT.<br/>
+Murphy jitsu has potential.<br/>
+The modified goal factor has a suspicious component of leaving things to future me that I don’t like a bit though.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to JSevilla" class="comment-reply-link" data-belowelement="comment-631" data-commentid="631" data-postid="234" data-replyto="Reply to JSevilla" data-respondelement="respond" href="https://blog.za3k.com/terminal-goal-rationality-techniques/?replytocom=631#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/time-management-optimizers-satisficers-minimizers.html b/posts-comments/time-management-optimizers-satisficers-minimizers.html
new file mode 100644 (file)
index 0000000..517e42b
--- /dev/null
@@ -0,0 +1,17 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-2451">
+<div id="comment-2451">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/aa5d8a139b96dc7b082a50ca2446deff?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/aa5d8a139b96dc7b082a50ca2446deff?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn"><a class="url" href="http://sometimesicook.net" rel="ugc external nofollow">Tricia</a></cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/time-management-optimizers-satisficers-minimizers/#comment-2451">
+                       November 5, 2015 at 9:13 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Very nice! I often find myself automatically optimizing – the easiest place to see this is in Animal Crossing where I’ll keep a large cash of items for when villagers might ask for one. The idea is to always be prepared (I blame girl scouts). I suppose the negative to this behavior is that it could lead to hording if left unchecked.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Tricia" class="comment-reply-link" data-belowelement="comment-2451" data-commentid="2451" data-postid="347" data-replyto="Reply to Tricia" data-respondelement="respond" href="https://blog.za3k.com/time-management-optimizers-satisficers-minimizers/?replytocom=2451#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/tiny-cute-vampire-bat.html b/posts-comments/tiny-cute-vampire-bat.html
new file mode 100644 (file)
index 0000000..e0383cc
--- /dev/null
@@ -0,0 +1,17 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-2426">
+<div id="comment-2426">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/aa5d8a139b96dc7b082a50ca2446deff?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/aa5d8a139b96dc7b082a50ca2446deff?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn"><a class="url" href="http://sometimesicook.net" rel="ugc external nofollow">Tricia</a></cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/tiny-cute-vampire-bat/#comment-2426">
+                       October 14, 2015 at 10:03 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Hola! Just wanted to let you know I nominated you for the Versatile Blogger Award, for more info check out my post here: <a href="http://sometimesicook.net/2015/10/14/the-versatile-blogger-award/" rel="nofollow ugc">http://sometimesicook.net/2015/10/14/the-versatile-blogger-award/</a> 😀</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Tricia" class="comment-reply-link" data-belowelement="comment-2426" data-commentid="2426" data-postid="279" data-replyto="Reply to Tricia" data-respondelement="respond" href="https://blog.za3k.com/tiny-cute-vampire-bat/?replytocom=2426#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/understanding-gzip-2.html b/posts-comments/understanding-gzip-2.html
new file mode 100644 (file)
index 0000000..a6ff23d
--- /dev/null
@@ -0,0 +1,610 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-4739">
+<div id="comment-4739">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4739">
+                       July 23, 2021 at 1:47 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>“Now we assign a binary codewords of length N, to each length N in the list.<br>
+1:1100,2:0,4:1101,16:1110,17:1111,18:10”</br></p>
+<p>There’s no explanation  as to where you pulled these bits from, I understand the number of bits comes from the aforementioned 414442 pulled out prior to this but I’ve seen nothing that explains how you pulled out the bit values for each of these code words</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4739" data-commentid="4739" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4739#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-4740">
+<div id="comment-4740">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4740">
+                       July 23, 2021 at 2:04 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>This is what “Aside: Storing Prefix-Free Codewords as a List of Lengths” is about. The algorithm is given in full in RFC 1952 if you’re interested. Basically, the code words are assigned starting from 0 (or 00, 000, etc) and counting up. As each code is assigned, anything with that code as a prefix becomes unavailable. They are assigned first from shortest to longest, and in the case of ties from leftmost in the list to rightmost in the list.</p>
+<p>So first we assign 0 to the length-1 codeword (0 is lower than 1), then we assign the length-2 codeword 10 (the lowest length-2 code that doesn’t have a prefix 0), and finally we assign the length-4 codewords from left to right (1100, 1101, 1110, 1111 don’t have a prefix of 0 or 10 — they are the lowest and only codewords without one of those prefixes).</p>
+<p>Thanks for the comment, it makes me happy to know anyone is reading this, and it’s very helpful to know what’s unclear in my writeup. I’d love to make it as good as possible.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-4740" data-commentid="4740" data-postid="668" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4740#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment even depth-3" id="li-comment-4741">
+<div id="comment-4741">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4741">
+                       July 23, 2021 at 3:23 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>I think I get it now, as soon as I resolve some compile errors I’m gonna try this:</p>
+<p>“`<br>
+                       while ( cur_leng &lt; max_leng )<br>
+                       {<br>
+                               for ( uint j = 0; j leng &gt; cur_leng )<br>
+                                               continue;</br></br></br></br></p>
+<p>                                    word-&gt;code = code;</p>
+<p>                                    code++;<br>
+                               }</br></p>
+<p>                            while ( !(code &gt;&gt; cur_leng) )<br>
+                                       ++code;</br></p>
+<p>                            ++cur_leng;<br>
+                       }<br>
+“`</br></br></p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4741" data-commentid="4741" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4741#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-4742">
+<div id="comment-4742">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4742">
+                       July 25, 2021 at 12:06 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Took me a while to understand that I was supposed to be building the tree at this point (although this method compared to what I though of and implemented prior to this is inefficient both in space and speed, also terribly um-intuitive). I’m having trouble understanding exactly how to extract some literals you’ve mentioned:</p>
+<p>“Byte 18-19: 0000001 10 0110101. Copy “0” code length 11-138 times<br>
+0b1010110=86, plus 11 is 97. Literals 0-96 are not present.<br>
+Byte 20: 1100 0101: Literal 1. Literal 97 (‘a’) has a codeword of length 1.<br>
+Byte 20: 1100 0 101: Literal 2. Number 98 (‘b’) has a codeword of length 2.”</br></br></br></p>
+<p>At first I though to get the literals I was supposed to add the code list position to the copy count but then I saw this after:</p>
+<p>“Byte 20-21: 11000 10 1111111 10. Copy “0” code length 11-138 times. 0b1111111=127, plus 11 is 138. Literals 99-236 are not present.<br/>
+Byte 21-22: 111111 10 0001000 1. Copy “0” code length 11-138 times. 0b0001000=8, plus 11 is 19. Literals 237-255 are not present”</p>
+<p>Which doesn’t follow that pattern, how do you determine the literals range?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4742" data-commentid="4742" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4742#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor even depth-2" id="li-comment-4743">
+<div id="comment-4743">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4743">
+                       July 25, 2021 at 12:27 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>I’m glad this was helpful, but you should really go read RFC 1951 if you’re going to build a decoder. This isn’t meant to be a stand-alone guide.</p>
+<p>I’m pretty lost trying to follow this comment, sorry. To clarify, for the “dynamic” compression, you first extract the CODING TABLE for the literals (the step you’re talking about). Then, you use the coding table to decompress the actual stream of content. It’s a two-step process, which is why it’s so complex.</p>
+<p>The key point I suspect you’re missed was: “Let’s read 267 numbers: the lengths of the codeword for each row.” These numbers are the length of the code for each literal in order (all of them, not just some of them). A length of 0 means “not present”.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-4743" data-commentid="4743" data-postid="668" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4743#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment odd alt depth-3" id="li-comment-4744">
+<div id="comment-4744">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4744">
+                       July 25, 2021 at 1:41 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Was gonna say I already had the code table but when it printed it seems the codes got corrupted, I’ll have to get back to you after fixing it. Anyways I find “guides” that don’t use real examples as this one does to be confusing sometimes, usually where it matters, that’s why I was consulting you who provided those key examples, I got a heck of a lot further with your guide than any other I’ve tried following which didn’t give the byte by byte, bit by bit example.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4744" data-commentid="4744" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4744#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment even depth-4" id="li-comment-4745">
+<div id="comment-4745">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4745">
+                       July 25, 2021 at 1:50 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Turned out I was just printing the wrong value, here’s my current output:</p>
+<p>`<br/>
+./a.out aba.gz<br/>
+path = ‘aba.gz’<br/>
+PrintStreamDetails( 0x7ffd2cf70d80 ): ptr = 0x556653fbc480, pos = 0, num = 0, max = 328, fed = 0<br/>
+PrintBytes( 0x556653fbc480, 41, 16 )<br/>
+1F 8B  0  0  0  0  0  0  0  3 1D C6 49  1  0  0<br/>
+40 C0 AC A3 7F 88 3D 3C 20 2A 97 9D 37 5E 1D  C<br/>
+29 34 94 23  0  0  0<br/>
+PrintStreamDetails( 0x7ffd2cf70d80 ): ptr = 0x556653fbc480, pos = 136, num = 80, max = 328, fed = 56<br/>
+gzip.magic = 1F8B, gzip.format =  0, gzip.flags =  0, gzip.mtime =        0, zlib.xflags =        0, zlib.system =        3<br/>
+gzip.flag_TEXT = false, gzip.flag_HCRC = false, gzip.flag_MORE = false, gzip.flag_NAME = false, gzip.flag_NOTE = false, gzip.flag_RESERVED = 0<br/>
+PrintStreamDetails( 0x7ffd2cf70d80 ): ptr = 0x556653fbc480, pos = 136, num = 80, max = 328, fed = 56<br/>
+last = true, type = 2<br/>
+lengc = 260, distc = 7, codec = 18, left = 60<br/>
+pos = 212, max = 328, count = 267<br/>
+left = 61, byte = 18, bit = 7<br/>
+Code Table:<br/>
+_list[ 0]: from =  1, more = 0, leng = 4, copy =   0, code = 1100<br/>
+_list[ 1]: from =  2, more = 0, leng = 1, copy =   0, code = 0<br/>
+_list[ 2]: from =  4, more = 0, leng = 4, copy =   0, code = 1101<br/>
+_list[ 3]: from = 16, more = 2, leng = 4, copy =   3, code = 1110<br/>
+_list[ 4]: from = 17, more = 3, leng = 4, copy =   3, code = 1111<br/>
+_list[ 5]: from = 18, more = 7, leng = 2, copy =  11, code = 10<br/>
+i = 0010 j = 5, from = 18, copy = 97<br/>
+Expecting character ‘a’<br/>
+Expecting character ‘b’<br/>
+i = 0010 j = 5, from = 18, copy = 138<br/>
+i = 0010 j = 5, from = 18, copy = 19<br/>
+Expecting character ”<br/>
+i = 1110 j = 3, from = 16, copy = 3<br/>
+Expecting character ”<br/>
+i = 1111 j = 4, from = 17, copy = 3<br/>
+Expecting character ”<br/>
+Expecting character ”<br/>
+Expecting character ”<br/>
+PrintBytes( 0x556653fbf4a0, 0, 16 )<br/>
+`</p>
+<p>And here’s the currently unfixed loop producing the bottom part of the output (also where the interpretation ends atm)</p>
+<p>`<br/>
+/* Should be building a tree here. */<br/>
+                       while ( num &lt; count &amp;&amp; stream.num &lt; stream.max )<br/>
+                       {<br/>
+                               CODEWORD *word = NULL;<br/>
+                               uint j = 0;</p>
+<p>                            for ( cur_leng = 1; cur_leng &lt;= max_leng; ++cur_leng )<br/>
+                               {<br/>
+                                       i = RevBits( CopyStreamBits( &amp;stream, cur_leng, false ), cur_leng );</p>
+<p>                                    for ( j = 0; j leng == cur_leng &amp;&amp; word-&gt;code == i )<br/>
+                                               {<br/>
+                                                       IncStreamCount( &amp;stream, cur_leng );<br/>
+                                                       break;<br/>
+                                               }<br/>
+                                       }</p>
+<p>                                    if ( j  max_leng )<br/>
+                               {<br/>
+                                       printf<br/>
+                                       (<br/>
+                                               “i = %u, j = %u, list.used = %u, cur_leng = %u\n”,<br/>
+                                               i, j, list.used, cur_leng<br/>
+                                       );<br/>
+                                       return Return( ret, EINVAL );<br/>
+                               }</p>
+<p>                            size = CopyStreamBits( &amp;stream, word-&gt;more, true );</p>
+<p>                            if ( word-&gt;from &gt;= 16 )<br/>
+                               {<br/>
+                                       printf( “i = ” );<br/>
+                                       SeeBits( &amp;i, max_leng );<br/>
+                                       printf<br/>
+                                       (<br/>
+                                               ” j = %u, from = %2u, copy = %u\n”,<br/>
+                                               j, word-&gt;from, (uint)(size + word-&gt;copy)<br/>
+                                       );<br/>
+                                       num += min_literal_code = size + word-&gt;copy;<br/>
+                               }<br/>
+                               else<br/>
+                               {<br/>
+                                       int c = (int)(min_literal_code + j);<br/>
+                                       printf( “Expecting character ‘%c’\n”, c );<br/>
+                                       symbol = symbols + num;<br/>
+                                       symbol-&gt;sym = (char)c;<br/>
+                                       symbol-&gt;len = j;<br/>
+                                       ++num;<br/>
+                               }<br/>
+                       }<br/>
+`</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4745" data-commentid="4745" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4745#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment odd alt depth-5" id="li-comment-4747">
+<div id="comment-4747">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4747">
+                       July 25, 2021 at 3:32 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Never min, I think I know where the literals are coming from now, I did this:</p>
+<p><code><br/>
+printf( "Expecting character '%c', ", c );<br/>
+printf( "num as a character = '%c'\n", num );<br/>
+</code></p>
+<p>To see if num lined up, since it did I’m guessing those ranges where all the wasted leaves/branches of the huffman tree.</p>
+</div>
+<div class="reply">
+</div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-4756">
+<div id="comment-4756">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4756">
+                       July 26, 2021 at 7:46 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>I think I still misunderstood something somewhere, I’ve done a detailed post on the section I think I’ve mis-interpreted here:</p>
+<p><a href="https://cboard.cprogramming.com/c-programming/180462-increment-gone-wrong.html#post1302477" rel="nofollow ugc">https://cboard.cprogramming.com/c-programming/180462-increment-gone-wrong.html#post1302477</a></p>
+<p>The forum there is better able to handle pre-formatted code than this comment system so please take a look and tell me if you think I’ve mis-interpreted something also, and if so what you think is being mis-interpreted, in mean time I’m going to try and clean up my code so I can upload to gitlab so that you can a clearer idea of where I’m at and perhaps help me get to the last part, converting huffman codes to original values</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4756" data-commentid="4756" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4756#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-4757">
+<div id="comment-4757">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4757">
+                       July 26, 2021 at 8:54 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Sorry, I don’t really want to help someone else debug code or output. I’d suggest following the links at the start of the blog article. Check out ‘infgen’ in particular.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-4757" data-commentid="4757" data-postid="668" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4757#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment even depth-3" id="li-comment-4758">
+<div id="comment-4758">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4758">
+                       July 26, 2021 at 9:34 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>I originally gave up on infgen due to an access rights error when I tried installing via the package manager, the server refused to let me download it, then after your last comment I though to look for it’s github page, that one worked out fine, judging by it’s output the only thing I’ve got wrong are the length values for the distance symbols/codes/whatever you want to call them, where do you get that 2 from? same applies to the bit code along side them, where does that come from, is it just an iterated number for each valid symbol?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4758" data-commentid="4758" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4758#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-4" id="li-comment-4759">
+<div id="comment-4759">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4759">
+                       July 26, 2021 at 10:56 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>You read 267=260+7 codeword-lengths (the numbers 260 and 7 are given by bytes 10-12 in this example).</p>
+<p>The first 260 codeword-lengths are used for one huffman table: 256 literals (always 256), then 1 “end of block” (always 2), then the remaining 3 are lengths.</p>
+<p>The next 7 codeword-lengths are used to generate a second huffman table, for distances. The code generation works exactly the same as for the first table.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-4759" data-commentid="4759" data-postid="668" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4759#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment even depth-5" id="li-comment-4760">
+<div id="comment-4760">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4760">
+                       July 26, 2021 at 11:50 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Even if I use the same method of code generation as before I stiil would need to know where you got those “2”s from in the table immediately following this:</p>
+<p>“We read 7 numbers, that’s the whole distances table. Assign the “standard” binary codewords to generate the following table:”</p>
+<p>Because the previous method used that to determine what symbols to ignore until the code length increases, more specifically I had a “while ( cur_leng &lt; max_leng )" loop and a sub loop that went looking for symbols expecting cur_leng codes and assigning them that way before using those same codes  in another sub loop to decide if the next code should be increased further. Without knowing where those code lengths for the distance came from I can't progress.</p>
+<p>Thinking about it now I don't even have the codes for the length symbols, I just have the symbols. If it was supposed to be auto generated then I could understand the codes for the length symbols but I then don't understand the codes for the distance codes as they don't follow the huffman principle of no codes that can be misinterpreted.</p>
+</div>
+<div class="reply">
+</div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-5" id="li-comment-4762">
+<div id="comment-4762">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4762">
+                       July 26, 2021 at 12:23 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Re-read above the table. The “bits” column is from bytes 24-25.</p>
+</div>
+<div class="reply">
+</div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-odd thread-alt depth-1" id="li-comment-4763">
+<div id="comment-4763">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4763">
+                       July 26, 2021 at 12:43 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>No option to reply so I’ll do it here instead, I still don’t see where the 2 came from, is that a minimum length or from another hard code table? So far I can only see the bits given as a set/unset symbol &amp; code flag, there’s no clear source for the length &amp; extra bits values</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4763" data-commentid="4763" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4763#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment odd alt depth-2" id="li-comment-4764">
+<div id="comment-4764">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4764">
+                       July 26, 2021 at 5:54 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Finally found where you got the 2 from:</p>
+<p><a href="https://www.w3.org/Graphics/PNG/RFC-1951" rel="nofollow ugc">https://www.w3.org/Graphics/PNG/RFC-1951</a></p>
+<p>” HDIST + 1 code lengths for the distance alphabet,</p>
+<p>      encoded using the code length Huffman code<br/>
+”</p>
+<p>That was far too easily over looked, now I at least can generate the codes, though I think I will add a specialised handler and object to minimize code now that it’s getting more complicated than need be.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4764" data-commentid="4764" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4764#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-4773">
+<div id="comment-4773">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4773">
+                       July 31, 2021 at 11:29 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>I’ve clearly misunderstood something somewhere, could you take a look at the code I outlined in the below post please and see if you can spot what I’m misunderstanding, up until the point I have to lookup previously deflated values I’ve read the bits correctly but I’ve obviously not understood all the implied information correctly, I would post the code here but as you’ve seen these comments don’t support maintaining the code formatting resulting in a more confusing than necessary code.</p>
+<p><a href="https://cboard.cprogramming.com/c-programming/180462-increment-gone-wrong-post1302541.html#post1302541" rel="nofollow ugc">https://cboard.cprogramming.com/c-programming/180462-increment-gone-wrong-post1302541.html#post1302541</a></p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4773" data-commentid="4773" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4773#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment odd alt depth-2" id="li-comment-4786">
+<div id="comment-4786">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/a82f569a804e9883d4fc220ed42386f9?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Lee</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-4786">
+                       August 2, 2021 at 5:36 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>You’ll be glad to know I finally got the algorithm right, have not looked at any source code from zlib or other projects so I’m free to slap MIT License on it the whole way through once I convert it to a cleaner version of itself. The unclean version is here for anyone’s reference.</p>
+<p><a href="https://gitlab.com/awsdert/uc-evidence/-/tree/9441a73e59834456c41c1049036fc60925b705a0" rel="nofollow ugc">https://gitlab.com/awsdert/uc-evidence/-/tree/9441a73e59834456c41c1049036fc60925b705a0</a></p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Lee" class="comment-reply-link" data-belowelement="comment-4786" data-commentid="4786" data-postid="668" data-replyto="Reply to Lee" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=4786#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-odd thread-alt depth-1" id="li-comment-5413">
+<div id="comment-5413">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">neubert</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-5413">
+                       December 21, 2021 at 1:00 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>From the Fixed huffman coding section:</p>
+<p>“Byte 10-11: 110 10011000 10010: A literal. 10011000 (152) minus 00110000 (48) is 104. 104 in ASCII is ‘h’.”</p>
+<p>Why are you subtracting 48?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to neubert" class="comment-reply-link" data-belowelement="comment-5413" data-commentid="5413" data-postid="668" data-replyto="Reply to neubert" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=5413#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-5414">
+<div id="comment-5414">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-5414">
+                       December 21, 2021 at 1:11 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>The binary range (given above) is 00110000-10111111. Rather than decoding the binary value, we decode the offset within that range.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-5414" data-commentid="5414" data-postid="668" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=5414#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-5432">
+<div id="comment-5432">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">neubert</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-5432">
+                       December 22, 2021 at 7:27 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>“Now we assign a binary codewords of length N, to each length N in the list.<br/>
+1:1100,2:0,4:1101,16:1110,17:1111,18:10”</p>
+<p>Could you elaborate on this? I thought I could get the same thing by using huffman encoding, using the code length as the frequency, but when I do that I get this:</p>
+<p>1:111,2:1100,4:00,16:10,17:01,18:1101</p>
+<p>Thanks!</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to neubert" class="comment-reply-link" data-belowelement="comment-5432" data-commentid="5432" data-postid="668" data-replyto="Reply to neubert" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=5432#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment odd alt depth-2" id="li-comment-5435">
+<div id="comment-5435">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">neubert</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-5435">
+                       December 22, 2021 at 10:49 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>I figured it out. It’s this bit from RFC1951:</p>
+<p><code><br/>
+         1)  Count the number of codes for each code length.  Let<br/>
+             bl_count[N] be the number of codes of length N, N &gt;= 1.</code></p>
+<p>         2)  Find the numerical value of the smallest code for each<br/>
+             code length:</p>
+<p>                code = 0;<br/>
+                bl_count[0] = 0;<br/>
+                for (bits = 1; bits &lt;= MAX_BITS; bits++) {<br/>
+                    code = (code + bl_count[bits-1]) &lt;&lt; 1;<br/>
+                    next_code[bits] = code;<br/>
+                }</p>
+<p>         3)  Assign numerical values to all codes, using consecutive<br/>
+             values for all codes of the same length with the base<br/>
+             values determined at step 2. Codes that are never used<br/>
+             (which have a bit length of zero) must not be assigned a<br/>
+             value.</p>
+<p>                for (n = 0;  n &lt;= max_code; n++) {<br/>
+                    len = tree[n].Len;<br/>
+                    if (len != 0) {<br/>
+                        tree[n].Code = next_code[len];<br/>
+                        next_code[len]++;<br/>
+                    }<br/>
+</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to neubert" class="comment-reply-link" data-belowelement="comment-5435" data-commentid="5435" data-postid="668" data-replyto="Reply to neubert" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=5435#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-odd thread-alt depth-1" id="li-comment-5441">
+<div id="comment-5441">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">neubert</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-5441">
+                       December 24, 2021 at 10:38 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>““Literals” 257-259 (all lengths) have codewords of length 4” Is this a hard and fast rule that’s always true regardless of the data or is this true _just_ for the compressed string in this example?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to neubert" class="comment-reply-link" data-belowelement="comment-5441" data-commentid="5441" data-postid="668" data-replyto="Reply to neubert" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=5441#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-5444">
+<div id="comment-5444">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-5444">
+                       December 25, 2021 at 2:25 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Just for the example. If it was always true, we wouldn’t have to encode it.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-5444" data-commentid="5444" data-postid="668" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=5444#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment even thread-even depth-1" id="li-comment-5449">
+<div id="comment-5449">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/7872694d27b3b6fd8d71297a4799a82b?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">neubert</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-5449">
+                       December 27, 2021 at 12:54 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>“Byte 27: 1110 10 0 1. Length 4. Whenever we read a length, we read a distance. The distance is a range, 7-8. The extra bit we read is 0b0=0, plus 7 is Distance 7. So we look back 7 bytes and copy 4. The new output is: baabbbabaab”</p>
+<p>I think there should be an extra a before the baabbbabaab</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to neubert" class="comment-reply-link" data-belowelement="comment-5449" data-commentid="5449" data-postid="668" data-replyto="Reply to neubert" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=5449#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-odd thread-alt depth-1" id="li-comment-8298">
+<div id="comment-8298">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/83113fa84f7bb884648d75b769d23a6c?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/83113fa84f7bb884648d75b769d23a6c?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">inco</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-8298">
+                       June 22, 2022 at 1:56 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>I’ve been reading quite a bit on DEFLATE in png files and I think this is the exact level of depth i needed to crack this whole mess. Thanks so much for writing this, sources like RFC1951 talk more about abstraction and general rules but to have a few examples lined out here its  EXTREMELY useful. Thanks again</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to inco" class="comment-reply-link" data-belowelement="comment-8298" data-commentid="8298" data-postid="668" data-replyto="Reply to inco" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=8298#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment even depth-2" id="li-comment-8300">
+<div id="comment-8300">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/83113fa84f7bb884648d75b769d23a6c?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/83113fa84f7bb884648d75b769d23a6c?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">inco</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-8300">
+                       June 22, 2022 at 3:38 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Small question about reading bits: for Huffman codes of  the code itself defines a length range and then the extra bits are reversed so that they can be interpreted. But should I reverse the distance or the distance extra bits as well?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to inco" class="comment-reply-link" data-belowelement="comment-8300" data-commentid="8300" data-postid="668" data-replyto="Reply to inco" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=8300#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+<li class="comment odd alt thread-even depth-1" id="li-comment-11528">
+<div id="comment-11528">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/7b25d5e576e752e12d04d663247f0989?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/7b25d5e576e752e12d04d663247f0989?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">Ricardo</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-11528">
+                       May 31, 2024 at 4:32 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Byte 31: 10 111000: Literal ‘b’<br/>
+Byte 31: 10 1110 00: Length 4, Distance 1. We look back 1 byte and copy 4. The new output is: bbbbb</p>
+<p>How can I understand the distance 1 and copy 4 symbols?<br/>
+Should I repeat the ‘b’ four times?</p>
+<p>What if the distance was 2 and copying 4 symbols?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to Ricardo" class="comment-reply-link" data-belowelement="comment-11528" data-commentid="11528" data-postid="668" data-replyto="Reply to Ricardo" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=11528#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor even depth-2" id="li-comment-11531">
+<div id="comment-11531">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" loading="lazy" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/understanding-gzip-2/#comment-11531">
+                       May 31, 2024 at 5:23 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Distance is how far back you start. Copy is how many symbols you copy.<br/>
+You just blindly copy characters starting DISTANCE back, but since you’re appending to the string, you never run out of symbols to copy.</p>
+<p>If your string so far was “Wow, copying is really neat”, with distance 3 and copy 10 you would add: eateateate</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-11531" data-commentid="11531" data-postid="668" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/understanding-gzip-2/?replytocom=11531#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
diff --git a/posts-comments/wip-dead-tree-publishing-4.html b/posts-comments/wip-dead-tree-publishing-4.html
new file mode 100644 (file)
index 0000000..c9f3988
--- /dev/null
@@ -0,0 +1,34 @@
+
+<ol class="commentlist">
+<li class="comment even thread-even depth-1" id="li-comment-7928">
+<div id="comment-7928">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/2d89a1cc42432c9e73fc4c4c2c43237f?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/2d89a1cc42432c9e73fc4c4c2c43237f?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">TheTechRobo</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/wip-dead-tree-publishing-4/#comment-7928">
+                       April 23, 2022 at 5:46 pm</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>Out of curiosity, why did you stop the service?</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to TheTechRobo" class="comment-reply-link" data-belowelement="comment-7928" data-commentid="7928" data-postid="214" data-replyto="Reply to TheTechRobo" data-respondelement="respond" href="https://blog.za3k.com/wip-dead-tree-publishing-4/?replytocom=7928#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+<ul class="children">
+<li class="comment byuser comment-author-admin bypostauthor odd alt depth-2" id="li-comment-7947">
+<div id="comment-7947">
+<div class="comment-author vcard">
+<img alt="" class="avatar avatar-40 photo" decoding="async" height="40" src="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=40&amp;d=mm&amp;r=g" srcset="https://secure.gravatar.com/avatar/09485be3ee1e86da6e39412f5c1b2a48?s=80&amp;d=mm&amp;r=g 2x" width="40"/><cite class="fn">admin</cite> <span class="says">says:</span>
+</div><!-- .comment-author .vcard -->
+<div class="comment-meta commentmetadata"><a href="https://blog.za3k.com/wip-dead-tree-publishing-4/#comment-7947">
+                       April 24, 2022 at 9:39 am</a> </div><!-- .comment-meta .commentmetadata -->
+<div class="comment-body">
+<p>This was launched in 2015, and you’re the first person to ask me about the the service since. That should give you an idea of the popularity. I’m very bad at marketing, to be fair, so it’s not totally clear that means the service was undesirable.</p>
+<p>So when I eventually ran into some problem with active maintenance (the site needed updating to keep working, or something of that kind), I just didn’t.</p>
+</div>
+<div class="reply">
+<a aria-label="Reply to admin" class="comment-reply-link" data-belowelement="comment-7947" data-commentid="7947" data-postid="214" data-replyto="Reply to admin" data-respondelement="respond" href="https://blog.za3k.com/wip-dead-tree-publishing-4/?replytocom=7947#respond" rel="nofollow">Reply</a> </div><!-- .reply -->
+</div><!-- #comment-##  -->
+</li><!-- #comment-## -->
+</ul><!-- .children -->
+</li><!-- #comment-## -->
+</ol>
\ No newline at end of file
index 6b8540e29ba579943d09c921c8ebae303c9b5b98..61b22aad48208169438c2c3f1318272dae3a93fd 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-03-07 18:20:51-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - normativity
index 2ba061fea75b0a4f8b8020b517930e86cd2d5714..7cd3b3b0cc0023fe3c3b993f11b0119c4fcaf9ad 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-08-10 10:03:17-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - self-improvement
index 9dcf639efd91c1095b6b68fcdec651c2ac960b98..d3d50afd58a1a821052581661563bae2c983b48c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-02-09 18:30:01-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - book review
index 216836c6e148a0f735a854595adb9c74c5e856fa..25a34afaf5207a85cd755bbe1b07f4274ffb8562 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-03-06 02:09:13-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - review
index eea3af579aa1aa7eff25456c8bcfc7bc8c4f686c..c71492074dd76ee0670cae89379ceceb46414181 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-02-05 00:30:43-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index 3a588e7d55d73e11b630cb420bc4810c410529e5..da4c98520dbd92af1c45f7073e45919d161f623e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-01-31 14:13:12-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - book review
index 141fb6d660f42c4c68595d996d827a0a8bbf9274..9cb462e98b95f239e4a418a69240e544be066905 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-01-04 19:20:18-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - book review
index b7bb017f71fc1299901dd84cfec457b03f6102f6..cdb8f2ace9e6b35c404fae26fea28a2f9117b098 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-04-23 17:09:30-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - personal
index 10e3bfe81214c9c43ee18b385adec31a3fe2025f..204db2c876d949d8c0780fcf3d9f50e8741a1e1c 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-01-09 11:30:38-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index 3068c2c2f0ee2916f674df4c1275d5853667717c..7b2d170f580e57850bcf2fec6b2a0bdcd3e54411 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-02-09 18:22:54-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - game design
index a6d026ca7e6abf6d4b4d1e6a2390dda6a17cd829..4886aa78d1b125a5f9425ef0e6ac5e9eb1560048 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-03-19 09:56:45-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - game design
index 37b59e24a2ce47d7d32bcd5bc4065be7d00ff900..4c733f7c493e87632a230e0f3f958c7e612f3525 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2024-02-20 12:45:12-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 4fc81b27274ab42867ae6efb958292111d4980f9..65c959de5bbf78862faa93b9673051c920f560c8 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-05-12 19:59:50-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - command-line
index ea3910fad517ce30c4efbcc608d617d40875c2a2..0beec9706c0c6e0da389355a75db8621734a13a5 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-01-18 17:12:54-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 97b01f28bd05a82eb802e27f5f8aece8efd976af..b0dc8554c2558e83b249bff30073ff9aab18ae34 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2017-07-06 18:20:09-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index bdce2c68a9d95c873f72acbaefd2ff2bb69135b1..06b2b7a1b84dbf9973064a31bfc89446ecad7cf9 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-07-26 23:29:47-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - AWS
index 8fa223e2de677a5e51defdb320891c44bc7c81d6..fdae61abc5182adcf6146fbcd0bac5d796af5b7b 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-11-23 13:51:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - android
index 5c8b7eb55e3689f78be0b270ae84f0e78d8a8524..0522b9773cfe810646879ddda4921ea52ef7cc2f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-04-23 16:32:01-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - ircpuzzles
index 4ef882d49966a2b613f011da5f87111ed34850ac..27032b46527e19dec893813824ed6bcf2b8e9dec 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-04-04 11:33:24-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - irc
index 4e5c0d8e974d8dbbf5059d4c71a7fe568aa69e9c..2d44606d3ebb820548a864a4658a52474561d227 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-12-05 19:25:52-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - backup
index f4e581034f860eab11d05131bf91bc2634dbbb96..4e040d7af790eb34bccba0ccdf8cd73c74dd36fd 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-12-05 19:18:13-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - backup
index 6ca1ecc7645cd9484d85734f1eb1614800c6b176..c11431b6dbf5e4842494972996af89e3dde55aa7 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-11-08 09:52:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - backup
index 33f3afa15121686eac6af9c86830e2b87a8fd634..59ecb0ff1142e933d9611136dc399db974cd787f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-11-23 13:14:46-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - backup
index 8267dca3a157f71f516555b656af5ce799d57f2b..9fbbacac2127c3f50d7e1c09f8f352381115d60e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-10-19 22:33:34-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - backup
index df069b3d4235794eb5906a3eb871c9b7f66a3be4..5b78a154675992f34b445fa43d39d69c30571a0f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-11-23 14:35:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - apis
index 43bbf07d8787cef8d308c6bf400161df580a55d1..674cbfb4ff754b70c0d1d45b99df861a230a4415 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-07-06 11:26:32-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - blog
index 6ea545b63c35923c18422fef7ccd730027721f3a..ba0f71570cc1c58a1f25e9ad27a6d20305caef79 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-04-23 23:03:49-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - android
index e4f81f3e9366bd2fe6d78f5fe6b58968a4ab7849..d2cb14cd63fef142b7b927fa40eb191984fe40d7 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2024-02-22 11:59:04-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - cooking
index 22f3d285f2666f392af54a15eacab0eafc192235..334e21bd243c6ecff7d4a10e6d09137db08c1b4b 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2017-07-24 12:58:32-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - blast furnace
index b331baf5159dee1647217d8a88aad1e48a6f4c8c..d7c1b5c4128c776edd24bff1b6562ed7f0d0657f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-12-18 17:45:53-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index c4fee51044c245a582b51f0aef93f6c2ebe1bcf5..8fad4b6360bc9b858096c932e5cc588db04c72ea 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-08-17 12:20:03-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index cd4b85622c2a9924e24c4691acca94d22d25a91a..ef7a5ce8f04aaa4d2d3cc7373fda32f72be86e31 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2019-08-09 00:49:39-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - blackmagic
index e7d19d444298fa87b4f5a5266ff370bc0c70a49b..21e2f916c4330563866f19a1711ebee499e46e58 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-09-29 19:26:06-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - cardboard
index 7b60335e8ff87f9b5365a88fcce4695c23fbb818..f9ac2341f85ec884979973cab85dfff3398053fd 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-10-30 08:56:07-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - configuration
index 21abf1f4f4c76372034e8e6d8883c338acca47c1..e39a45b3822ef1958da98cbde9fc2e89aac73e66 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-10-18 18:27:48-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - computercraft
index 6bdfa4b71984979f052db1af991012de4a9d6aff..ddb2979df2e2db4d2ac4c051610c01d50e4431f1 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2020-05-15 16:31:18-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - announcements
index 9789b79d9211e8c4849c524dd07f0c9fa3b5774c..ff0a0d73d742f65f294220011f7df03b5e978e3c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-06-05 15:29:36-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - programming
index f7f079a905d885c5c1ceef830d56a0be9592592a..fa06af36e3838d1f879ae0e541aa430de3d5959e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2020-05-18 22:13:02-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - cron
index 4fb985c35ee31acece037401d8c2b3b43e4413ef..8d722cc2639df7644f95ddc046dcbf2f1fe88b0f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-03-18 15:23:11-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - dungeons and dragons
index c8b0145a6712e42380f2f9536edaa0e5bbb8c894..787ba10bcdda023568d6a10a9a229f154a4e6e37 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-07-20 09:17:10-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - roleplaying
index e7ccad5759b9f2a9fb9e4a35dade4a073c8b181e..33192a06cff83d9a79356119afe7cfbc35271eb4 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2016-06-20 17:27:24-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - meta
index 956f8e4f007cdd0e3a7b0a594615339dcfce101b..2d32614b87a1c4799b79a28fd4bde97485ed2d8c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-03-08 15:02:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - design
index 7fa7d0d165c8676921de2b79f3d692428697d1b8..2ab58bd49538c69cab330b7139135439ce3da1ae 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-11-02 18:36:11-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - control flow
index 4664ef911ec3392c826c11c87fe30129ad8d43e4..e85f86c3ce49ca3d5c50efa46a961e374adfaf71 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2017-07-04 16:29:56-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - carrying case
index 4c49ea386261b2b9d87bec19e0522f16930f8c8c..81a74b1007c8d1fae579126f7803960466f0842b 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-06-09 13:28:55-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - hacks
index 4d84e83775e73547dafe08f2ac986846c7cdaee1..65a2d7eafe8745d0893d56d5940ebd817aa1dcac 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-01-22 21:32:15-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - domain names
index 6e5f4d1bbf585dfcdcffa1e89d56e72748b0184f..d62e3bea63cdc93ccce20bf36db9483bf079f78e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-07-17 13:58:49-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index eb296993457214fe19a4c90673f3324fbb040534..e996de4018e2df2f672945f5152b916c035da737 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-10-12 15:45:27-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - eink
index dcc52de5e11c0e19782e805f37597fef3c73e57c..acfd9c33eee200fa01fd509f92d9b059ceb1fb5e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-08-28 10:43:52-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - godot
index 7455d8df19d289b0324c87613a3735230db2d786..96fb12e47d60b1eefb16a60b354beac58138c33e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-06-11 17:50:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - debian
index cb4faf022e4d9f377a5f42b1ca72b79631df9d24..c1a46e78431ef6b2f8482bd9491b9c69b4199242 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2014-10-19 12:19:32-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags: []
 title: Etherpad
index 816c23399e06dda5145ebaeb6fad5561e4716fac..8b6f8073295478ac3a9afee86ba0bf99631fe8f8 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-06-18 16:57:08-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - linux
index 3d29e461f61ee9ad7feaf79d122cddcc6764f2c5..475a0d94b9d9611a65430ae569c651f9f2601941 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2020-06-04 18:30:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - fabric
index 2ab416384e82c5cc8bc23ed07aa74348e78865e3..e7de7bf6d4ec5669c35139a475b48f26c4f58a1f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-04-27 14:50:28-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - first aid
index 686641570d0dbdd4573567453dc3f144d8d7b6cc..7510859c36f16469f4d17f325397b180adae386d 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-01-01 11:55:32-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index 97d931bfdee35784b23bc6d093a992dc5479a49c..98b97ae4ed51e8a4274539338881733f12d383c2 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-03-15 19:34:16-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index 495b808e7e394c05b212ae494d45a1f3cf5cf639..60db3d176235d561018bb55f66e51ff4034f7a34 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Uncategorized
 date: 2024-05-01 14:25:59-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags: []
 title: Garden signs on wall tiles (pt 2)
index e690fe6032e15e4460802b86684c99c233d60783..0fd2745f829ce2b8426f5efcafe8a3b34b2eb813 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2024-04-24 09:21:20-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 380d37d874872f2a87c3801251dc442dcbcefad1..6a50eecfb8188d5151870cca05d8c7a8654984db 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2024-01-04 09:43:44-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - bad advice
index 2bd6fad22e6f16d8ce5ef9d798915a583f14e2b9..85c57fe06e3e236e4c6614059fea9b15ca89eec2 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2017-07-02 20:41:58-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - arch linux
index 7032dcf5706f0c0b925443e0f03d07154bf25729..715ab1c00c0d1f892df68c2714c0a2a6b37d7007 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2017-10-05 23:57:50-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index 06c05c17f85179d1821c94e50ddd1e569ac3f788..d605950c6d2dc9ffc5d1c43b192da268bc493db1 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-05-08 17:41:01-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags: []
 title: Good Time Estimation
index 14e3e4ca1246df78a25052d40492efae3b12b1a7..d4682f0d848a3fa7967c9c3597513c269aa77d86 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-01 07:29:28-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index f1c702a343bf3c5d2339b5825c3e376b8a864d64..a5ab659d0392e8e44fcead333ed846d8a75a8e26 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-12-06 17:44:40-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 8ad8cc272d91f18bb6a9671e5a4e8748629c4c1f..7e6f60c31b674453d0f9134e9a674fbf9564c02c 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-07-08 09:28:53-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - event
index 3a0300810261a79a761037938d7474c8d577dd28..fa07309310226f93c74ecb8aca406192e6d67811 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-11-01 16:30:57-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index 47e410e331c8f6db5309a405d14221dc1b0135c7..7a7166fa8aa3b372abe9c5b36c6ff515bb650a5f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-04 15:58:18-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - furniture
index b787bdb4547534f487da8773168bf8f187e2b0a6..0e57729b9fc6a75a472385a7fc8b977554d64a89 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-11-07 21:42:27-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index 4c80a296240ca53d642269340a6ab42d9049854f..2d7c186d2ddfe2fcb4a0bdf7807905e0e0ac053e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-11-07 07:33:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - graphics
index b5c8aabee9cff305f182e32cf93e3d9e40762bf0..5b0ee900afab4c072f71466aab5b100fe0a3c7ee 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-08 15:40:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 1917564b58046eb4c2dae687774d84373789071e..7846f83133052f6be7e89caab65e2a549ff15da5 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-10 19:24:36-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 8241b8aaa7eb9ca015d1f1433efe84d18e41f9c5..65a84c8969d7e3cd21d5df901c12ccbaca1e8313 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-11-11 23:23:47-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - graphics
index a5e1f7a16d342955d4db66367433f0c55c7ac6f4..f9f23f0eb18a10e3c3842bb4d25df9085133dcda 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-12 11:15:25-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index f9dd04559885df0e751d95f9e427550c1d0ed5f5..3e3654a888930ee4490c6d381fef24c49e087619 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-13 21:45:06-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index ebea33fa259414529ebc9cd310870f1f8df6a15f..abc23ddf8b59c8e0b489fd64e37277a9e2bf7cba 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-11-14 15:18:54-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 90f62184d46702a89de5cddf6e4d158d8877ebc2..2a1840f4d9d14f1655fe7aaa24df3c8dfab28348 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-18 09:33:42-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - game design
index ccc763ece3955590e88eac4998a9ae86ed4377aa..105ef3b5a3f1ab54adc42827c6c75d1daf7d7ba6 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-11-20 08:50:26-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - general ai
index 98cc52f68e95192e3f473013c56537ac29a79056..b0642a8c7cf96547d7f56f4b68d2c18da0759977 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-11-02 21:38:58-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - graphics
index 87f4029aefb9a4f9c3e0c918ea42894d7b4e24d0..256a0315fafe62ec6a7129695e77a261e40228cd 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-11-20 20:57:20-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index ad0aa5f463bdc6ef34e8a8db44c0b66556f19dcf..982e447434d8af00cb51eb4e807a2fcfb2e04de3 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-11-22 21:15:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - circuits
index 3c6ece8d46271ea2a1ddb0afa173fb41aa10da2e..152141369f046e9f433c47d4ffcac5db04ccf69a 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-23 17:29:27-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 4e58e35bf004766d677e614ec42363a21b49a9cd..c4d9c873e25d36d47b5965bd89bb3a4553ce14e6 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-11-28 20:52:11-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 3e189c42ebbc3128a79179d1d57ca1afa85a173b..3c3671ed4086046d79b846cd0a3f673d862596d9 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-30 18:21:34-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 8a5460aef369ea132885ebd6a012e21358319165..e4db5e6faa4906c898a5f329e4439c7f5437a3f1 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-11-30 18:25:52-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index c07eff1dc273ce93c6f5cf3db2c099edb6614221..1ce880df30f4df1e863305ded86246e032e4df29 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-22 09:15:34-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 56f5a1922298ba846adb755d3313d5837570fba7..4f5b97514969afb0b853c90c246e8e8c974d7829 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-03 17:52:52-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - blog
index 99c5cdc07214b19d6949fae1bb4f4cb46dff7a76..8ea95dd76091f84b866b81d4f49f26205fdb213f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2022-12-05 21:15:50-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - bugs
index d0d4cb066d0c6dc72867e207e94b6f365c73d692..b5af5413eb911a1644aae9d2196781381a215361 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-04 17:18:00-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - chat
index 04bfaa9d2d2d0aab560f9f0eb9b35914863b44a6..fb785e6d64f8b2d23364c6bf2a3ed663ce43e623 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-25 21:08:03-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index e0671085fffe0e5289430bfbe74696879d78fdd9..8e4c82be2b89d22e55173d7c4247d2cf1de91e74 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-18 18:25:42-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index d34f710a29d92a95cd4ae376c53b81414c6768c3..399f3d087611dda12e7d28665fd857c0f802a3f8 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-08 13:55:43-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - dictionary
index e0352a5c49d98ed6bcd22385cdbf8a14e408b7ad..5a37881212c3d94d8879d963e2773dfba8df5efd 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-27 21:03:15-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index f4a93e5df442f5ebf771aba6329742a3de032ac6..700dd50039eea08091a5af2df519ff03ed0e5cbe 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-19 21:04:04-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - audio
index fd6af540414abe576831da0612dd41d224d23604..c05e616c341555270731ca0c40a82029fda72b39 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-22 19:37:06-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - game
index ecaee04f9cb0451b9bec696da27681e5d0dbbd63..acce7a639e0fb5137d5ff39db7ccb4e434584412 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-05 18:10:35-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 96f7665d8882e7d86bc155776a47ea0982655d6e..6d7d82aee7f1f6f129f7319cc1ebfe9302f71c76 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-13 22:27:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index 8e9123b3b5282c74ce4607c18b147325d4d0df2a..ac082f7b48a5513412613d50c9c6472bc166634f 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-25 21:05:38-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 2f688ecffbfe7939cb8512bbec19c90346c1f859..6b031ce4628360efa3eaa3a3318750aa033778d4 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-05 16:41:54-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 0e504a9541ebf40022814a50222797cda60a71eb..327879de40193fa1e311c39b42a2807621c2357b 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2022-11-10 22:16:17-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - compiler
index 336be53e49d7e8636c1de78cff12e842eb08a839..def859c2b4d14e80b131669883078a6fc3ce0ffd 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-09 14:01:51-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 2c62a07dbd2d7bdd6812d3c5a78378af57865ade..0c098629269dfb71e24caad9d7911ea4448d9739 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-26 15:11:46-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - game
index 685b66a80c220d65c87a42549ebe248aa07aae44..bb21af48eae5beccc67f37b065031698311fc768 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-05 15:42:40-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index a4f9625a4e3da15f7158145ba77c085c4a4e51b6..c35221a316178088b52d2322ebd06f94bcbbfb32 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-27 14:57:02-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index ce6ac8953439ae7699890da759468bc0b1c0c848..6cb0ec83e328636f14207181fb2f5912f72dfd71 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-16 14:28:25-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index a82cdd2f7855ed5dace62ff4f3168990c2d5f231..9c8e54f7d9d065254e16d0a859a1be7840338919 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-15 18:45:21-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - creative
index 6eedb48d2948f6bfdde62d4161ebf110699b6926..346962e58a5f955b5cd9d213fd6cf68bdfe74e5b 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-15 11:37:54-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 5a8c284b4b00929577203ea2f50ea1af5edd9ffb..108f6d15c1ae15361bb06ecda2a487fdcaa087c2 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-17 17:05:54-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 306d1c120aecbd84f4dc87ad9080aa7ad75ff5de..c14fc612c84d47d9fffbae54d76cb924ef5ce820 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-11 19:09:16-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 7359b07e96d17d260fd01f65b7f6c9116cbc7d76..7b273e51395e5eeb8aa37c5199514286f8b5f1e3 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-12-07 19:22:32-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 07299ebc4bdcf1fa4ae1c24dfddb2500da4a0f7c..6f0a482da138e6f7e9bf3ac9ba2422ef8e09dbd8 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-29 16:24:43-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 9bcb96d7c89c772b4706336c6e01064ea79d32f6..955bc77c8329910a9965c2b60959978ec888d1b7 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-07 16:02:21-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index cb8256df23ae7fd4f2a41592d76036a39e76df7b..3dad49fca01716e2061106d3437de13a9ddc602e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2022-11-25 21:10:50-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - algorithms
index 810763cf5f6401b284082ba6f486eb69a4ee0061..ae2dfabd88947b60760a1c3be84cee7937fc9d9b 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-06 21:35:27-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 94e922963cb9e3f5a0bd22b66b0eb4abe1cd5ca9..1fcfb24307d2d4264ee4407f8368f62eac56025e 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-30 16:44:44-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 7326ef3004eb56573a9a613118dc893fa2a3bcc8..e7e255b9ccb1559a5c30823f5a0527d77f5163d7 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-12-07 19:24:41-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index f232a59b8b73add3e9d6799e509cf1929a2e2f19..0026a64e16f5b07f127d21335ffbb3b16f1f6654 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-11-18 21:08:59-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index 6a5fa29f67dbbe0d5cbd8d39ac4739b6bf83c590..59e109e4bb3a6e78f4f4dc25713efe5b462d2b71 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2014-07-19 06:43:42-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags: []
 title: New blog
index 4ab4f47b0eb9f9e0932a3bf56fcf6cbcb8d1742b..c3d708e36a1c87a37141693843ef824e85e2cc80 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-12-31 16:20:36-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - games
index f17d1f942157e2b5a8f2f45c6a187f46f292c50e..ec017a6dd2b749d86951048ca1d301833e0aae2c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-07-02 23:01:41-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - finances
index 625e9a759d57c7935d034cb886977c6d39f00adb..7fe8e11f065e4e7451acbb2791199f39baab52f5 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-07-21 16:44:36-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - cheatsheet
index b3ca81a359184150834cc9f429c7a1920c0d3a91..11db2cb4fab47d17c8b398cd7827b84ed40eb442 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-10-05 01:44:36-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - command-line
index 0f7b644742693b6da2cf3284dfc84a2915f4e2d1..4fb0efad63cd5b8f561fc867e5ed6f369e251ce0 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-11-07 17:31:25-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - debian
index b9a8f84a6dd52036bacac6d5ea6dae1fb53e30ea..d2860aeecc1ceca10af65542899be4af3017343d 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-06-07 16:42:28-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - computers
index b0459b1af1f6f451e4b892c58aa8a9deb22347bf..dc4288de40bc16c4707ca48f985153c5b60ae574 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-06-28 02:22:27-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - computercraft
index 338fa4123a819b6a932808a52ce5e13d7c9da168..17b39799a9a73784313aed1eb4c44168485ecbb9 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2024-04-01 06:21:20-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - irc
index c9a5e6d15dec70210c8c06a5a1ddef26ab7733ff..85b1dd8aa3c45ad9cdc037accc10c1e5cd492caa 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-05-31 20:20:37-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - isitoutyet
index ae7fe46001450e21a81c1906e97153b2356a3c8a..0497ae6f58078e54a4fe40ec63e2c2feba542439 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-08-11 23:11:09-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - isitoutyet
index 1306cac558af9e19c37be988b6513ae7e98a66d4..c53a20378c8cc5961bf45432fb44482e115647d7 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-05-12 19:59:50-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - command-line
index 6865dbfdf2e11918d9fb4dfe7608a538044bf73e..f7e6f347d6383566b90af3f2932d1eeaa60aece3 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-11-23 14:35:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - apis
index ad1b86bfc06b448206f17cc9763e181e123b5cbb..e19489aebb031fd72fb18c19563bda09933d72f1 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2017-07-24 12:58:32-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - blast furnace
index 1b8273cc0365661cfd9a7684585626d269c40c9c..96e4cd4df90ae949548acebea0ad833cb2393a27 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-03-08 15:02:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - design
index 77454a55ce5f55ce5e86919dfbef71c458d3fa13..d07d6445e8a1a2b22e4b397312d3a3bc3f869854 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-06-09 13:28:55-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - hacks
index eb296993457214fe19a4c90673f3324fbb040534..e996de4018e2df2f672945f5152b916c035da737 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-10-12 15:45:27-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - eink
index 841bb55362f62cc881bcb306ff0e51255e0dfce3..c049e901171535ec93af60fd3c69df5bb25372d8 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-11-07 07:33:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - graphics
index 3039891350d5775f2ef7f04a791e10f6773dfd6f..1272c4bf2516b59ef9312a6f1bcac4e67f46f61f 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-25 21:08:03-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hack-a-day
index b15fd9f4a369263d5db66a38f6dc2b20b5b3b58f..7ab4cb0aa2d2114f3a7fc9d58251d314f600b5e0 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-11-19 21:04:04-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - audio
index 7004f87c0c0545904525ef9495d80c7fb4ae45f7..8c5737878872ebd8606c7e8061a71f29baf6c153 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-06-11 13:28:52-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - debian
index 23f8ff8380dc75b79fedd09b0fb7454b187e9b3b..3492de71be2754ae5673ea8f16f60d7f12f7c6b4 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2014-12-01 12:19:47-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - finance
index 9843ab2d92f36a430184d2eab1d544238e9defb5..edceae8c87403239b5fcd6a89704f8f144b91f99 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2020-05-12 14:00:28-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - immutable
index e4cc003f1a789eb06cffbd3ecb86a4a4ffaadb42..fa7172830d5c63d265ee9999f601f60ae5379e71 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-06-07 09:38:53-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - crafts
index 2b2f864841e67bb282c023dd68f9bf8a9dd73671..6fdcbfeb7ff7dfa9967070268179cd0b7d169a78 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2014-11-21 19:20:29-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags: []
 title: The Double Lives of Books
index bb3c9528942d101e25667e118c29a90873df30ba..45fda4f14b36a0f23285f8df4407efca36f86b9b 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-07-10 21:36:51-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - compression
index d44d05eea3d7787362c6c7d83be679e506ad4103..7e82ced15eedebcf46f6320f2ae443bfa956fe4a 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-30 03:12:07-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - carpentry
index 8fec63da776c7dafcfb2b1f8979fd44ee4d91810..cc928f57b427eaa8936111cf61ca5727d2b5d26f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-10-10 18:17:34-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 613a3a1a61cc3fed8dafbe1351809ad52eacac5e..6d57cee5377c375152641a6fb32bd3eb2fd569cb 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-16 18:47:16-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - bootstrap
index e139fe8f5f8d7f0661d73ab79b872deec1cfc255..96701af06f320e4d725fa15c36cee7a69469c422 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-30 18:08:01-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - bootstrap
index cdc0379deb1df2a9243e971e3b105aaf852dec86..b8dc80da81f62711b6fb9cec1167fd2ba8e0de7d 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-03-29 14:12:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - dead tree
index a14ddb0b7bb670fa5d3a20977fc8c893df0d3cd1..81182803d1b200fd22178f213cd4fd6ae38d1f7d 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-04-13 17:46:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - boot
index ac6a758ab487c8ad331c643abea8f218cd257b89..216067799e23d937b823dfbaeeae2a72f360f2de 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-05-26 18:25:37-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hardware
index 0f7243494d01f788635341837e8eb335759ba867..165fa81b8d90c3a1bca64ebf7d6bd5e190b0e2d3 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2019-12-17 18:19:15-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - bash history
index f21ad53aa337f09375b92df8e595e07a5fab57e4..a7e81996018d75a72640384e0a742aad501d1d3a 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-10-11 11:39:05-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - linux
index 3768d5b9b093b0c97d1172630aa15aa834f1ffe1..94c0a318d1c4061a6e957c96d39b4e9ffb6f7cee 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-11-10 04:21:16-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - debian
index 132c213c471590d324e28342691fb0e15e4dcbe8..4e376ecda8a2f273aa98d4ae8ee4a76f37d29224 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-06-06 17:23:06-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - hardware
index bef87bd6671cef044edee7ca9455e4435f0f613a..353436ec64fe400cd26f1a245f6572c8fd2d4724 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2014-10-15 03:00:26-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - cybernetics
index f6a2ac4d9fcb86cad2f81d6a685fc5ff2151411e..614fa2c3bdab63023c670829f532b748b515e65b 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2024-04-16 20:07:58-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 5660a7f95ca94d088641106c3e454075f2cba9c9..9767d2e76dc92f239d6472240146defe40728f5e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-03-13 11:15:07-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - git
index 0a159a64038521617717c9d2813fad23dcd3bb3f..b7f8b93401daddfb034fdc36a9c53f40fd319659 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-07-12 16:36:15-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - dungeons and dragons
index dddce395d345c26aa2e42dcb1a925a7f6f11432f..487df9b304c01bf25dc998a14c38a1e7006d8035 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-06-11 13:28:52-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - debian
index 27c568e9e48d3314e84fbe13380f0efe354b8033..135d3de9ccabbad6805e5f7a7f8b4098c04eba15 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2020-05-20 15:56:18-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - linux
index afe7602e602d93807ed3488ebb8b2fe8cd0830d6..7007cb0f60d8c0db1444dbc5bc4c991428c0233a 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2014-12-01 12:19:47-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - finance
index 38ee368bea9bd08f5b166445f65a29b3771eae05..ce5701d36d0a9af7b1ec4d46699e9805e56377cb 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2015-01-22 21:12:08-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - email
index 0e9f084a996ec842a16187621f3ec3bd2de13793..47c761932272c1d8f38aa70a8c06ffddfb61e10b 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-30 03:28:05-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - game
index e1f8463e3d28ee32bb28e64bd0af69c78eff7e1f..bba984cf31050b93ccd1ec28460f5488fe0fa73d 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-07-13 18:06:29-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - todo
index 77a12d3880835573164afb072c75d2a1578b9f89..031331ab56a2f0cfd06812ec107750f9d28ad546 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2019-08-08 13:14:24-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - blog
index 38eff2521bdf95a587754fa9c5f9a9d2040dddab..c8bef424173d17bd8b048eb60632cce1619debb9 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-10-22 13:15:25-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - data collections
index c1eec201a4240fd031f57f5ee99c41a05eb963d3..cc8a5ceb9cd59f6b41f6ea6843eadb26c6f3548c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-05-26 13:02:35-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - crypto
index 7258117b0785c224258f81610261cb6712237406..e9322ee70541021630b18169cca3bff1742c1357 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-02-03 13:37:16-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - pakistan
index e409b988d30b28d418d31b4be44625c987d80a80..b099bbf8f1c500a7f8b2401e07fdfa4176bc3736 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2023-02-02 12:47:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - website
index 81da125b8f6bfb8e0ac8e50abebd095694a14898..c987828fbb5f40a2ad253ee57299e65fae2639f2 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-02-07 03:30:04-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - game design
index f21f04f38c86d4bb4086cdc8c88dd2acfbb44b8c..44fc3bfb7c2a31f2e4b52eb15a6e56ababced067 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2022-07-10 09:28:46-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - backup
index e34189bed025667d116e003978e64313d7cd5d8e..3c7a516ea373a1249c3daf562917e192d13c18ab 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-11-29 22:31:39-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - news
index 1c7d36164026f932e244fcdd04cad78b708f9dc0..64e954072d345ecac4e30bf5f41773f1556b43ac 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-02-02 14:41:06-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index db29a744c44822ef42a03419be874eda87f88fe4..df614d73fcdad0251f0c8a4545fff63a45a46d19 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2014-12-07 23:30:24-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - music
index 6e8b26f3470cab0fdbe1726a26db0db1c00b30ea..b9f65d2acdc56fbfb9b521492c1ca1dfacd96e75 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2015-04-24 16:58:38-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - armchair
index 0b71a05e343bca6f29347e123a7e0325197f51e8..4df2425f20566d852e6bbf17289eedcc6c5da5f4 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-10-22 17:02:41-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 11895496f5aaa373bd93a8fe51cb53f6b05f726a..24157e46507b12c10228de2107b7e3375b554a2e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-02-17 11:53:54-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - pixel art
index 81dc8a8182859b2299fc37aae5ecf255550bd263..e7c32f7a5bf9c40ce406a4e78c11cd231b5e4ddf 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2024-05-11 11:49:13-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - programming
index 577a5aa236e0edfaf1dd80ecb57ed83f9c2e68ad..ff417d255b3407a9b066dcd4b02ef5d64a84cd60 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2020-05-12 14:00:28-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - immutable
index 3cc445fb891581b55e6ebd0aabba2af41870b3b9..8afc0d787cb2d69fe57381a386750e280a4f624c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2024-01-19 14:30:16-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - organization
index 3d355003ee59f7032d70ca53229c297d246b6e75..94bdfdee0349ac5470de9fbd67e0a679581f3603 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2020-04-18 16:47:39-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - linux
index 3a28e49cd903604064f9b1b868c81dc27a42138e..d20d7bc73fd35e5d33f7e66c72b7d00efec4007a 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-08-10 09:32:40-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - linux
index e19719ccfa4b28b947b229b408a227b69de78b60..1b65cd670cabbb0c5fe9e145d801310ab64564e7 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2022-03-22 09:28:49-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - backup
index 6bf19392ce9d5ff463d501e30c4febb63d1b96ab..d061284974e068900fc4e9399c0758609ba2bae9 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2022-09-22 16:38:08-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - announcements
index 0205152b446776f4b15c7c6a0f19baecdc4f1fd1..827aceb0fe4ba385eff4c7cda3fa6645e3fad6cf 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-05-31 19:41:26-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - announcements
index f583417383e2c7c27bc7f15164a802b71e5fa751..336f983f60177cc08a92b29dd468d0e0ff1ccb31 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2021-08-07 17:59:35-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - raspberry pi
index 79069872cdc3463fc7827cc0f3d66b90b0a7441f..169b426c58c14b186c9d3dd71b9551c5adf63193 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2024-05-20 21:09:34-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - electronics
index 3f279c02f7b1104782d18b5fa60b639a09df1e88..94508fcc5d1fc61fafb564a5112cf34cd9e8eb7a 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2024-06-25 13:33:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - godot
index 2fb22faa8b9a469a8dc9e13f5c01c8b0020cc755..62953d5c851d46763f3716ad4f6334b8f92483aa 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-10-27 19:10:59-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - recipe
index 3018e09d9b5e4150f621415974097742b5ccf749..428f8d016a3f24234a753ea25579aa86ad1c4c01 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-10-04 02:10:39-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - minecraft
index 018e166b42613b121189e49941c9f91c3813b7d3..19f27ff76abacbf6268af345ad1568fa45d41978 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-07-20 21:43:15-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index 17f4b032b537de07945ac94d2aba2daf9bc86502..e05792d8d4c3e9833d6e4dc60649a94db7e69d31 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-06-24 09:20:14-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - programming
index f424cf6024225ab4a12d5819384f697d76f14ae2..34a41d7717e85a0f8745fce30d1afb9972a7c0e8 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-03-12 19:09:37-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - command-line
index 45bcf376f7cad9b688099fded8026c08851c2bb4..a346f609026cd23623aeb46810f1d459f4b4f737 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2023-06-07 09:38:53-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - crafts
index a5173b204bbf13e61280cb257b06937a6b8a04d4..7b4118f904636f1a85b31ce9ead3cc2dfc7b2050 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2014-10-29 04:41:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - http
index 90f9408a10a99b72b9af0ee55ed23424481524fd..73ebad0c5d7f37bf35933e11b4ee5b01cb004d2c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-06-06 00:27:03-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - za3k.com
index 5a9b5d0d6e28dba65cfc962bf895891abd1106a8..ce38b6ce3c5f1a465bdc9ff40b4e29a7a9dd67ed 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-08-04 20:12:09-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - cgi
index 9fada9e18d7f72d876c71070cc84178002212669..d8e4441f6f7d05c4577a56424e9c8caa9c1c7a21 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-28 23:04:50-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - cooking
index 9340f37f314cc034ca412522896e281fcc508265..6c05f03e3b38de402566f29650f7e269965e5922 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2019-08-08 13:13:00-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index 805937169894c9df32803fdf78fb50b2f96fc4e5..db614ad882769b210de0c6677a563b9151017f54 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Uncategorized
 date: 2020-01-06 16:53:24-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index 71f2798cbe11365ab52b2c50c80242adcdf22175..6e5b470737cd161f2236cd5311dd699c6f9321fc 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-07-11 15:45:40-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index f0c9f572b729117a72ff1a8b28016845e0254b12..b2e73e993c1c0985dfb42e8e1b5ccf39b524bec4 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2023-01-09 22:08:47-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index c5a97e44ede68d9e5f3c1e6d9de7602e7d269c4d..08268e238f95064359afc5a700a302e55234f8d0 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2020-03-21 21:26:52-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - alsa
index 074676bdf13c74dbeef01f686b5f7b2f33e22a0d..f9d615f49a5a9753d8b2e4a1db95ff26b0ee0cea 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-03-28 04:04:55-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - chrome
index e304272c296d11faaee164d3d382efb78950fe48..ec551860396b47c994ea71234683fae03419d78f 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-10-17 03:35:05-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - debian
index ffe98d49be45de7b6abb3c559e9b2d45d939aac9..94d7b5e3e24ca9abb8e3358575d769e3cc998a18 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-07-17 23:15:39-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - rationality
index 5117d7ef78940fc14b99bc5017a661200ba6d0c8..94b0481e8a6e5d5bb21045515a97417f159e7523 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-08-16 19:28:16-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - iteration
index 4612e33b34fc70f73d7ac548855bb2abadb035e6..19eb9a3b2b2d47f9fc08ee41bfac291950c7f5bc 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2014-12-01 01:24:28-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hacks
index 8a299fcfe9a0b7aa1189ef42ce644baea9795a09..f32835215cc7fcfcd1893d7e764775f77dad24ce 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2014-11-21 19:20:29-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags: []
 title: The Double Lives of Books
index 66cb215d936cacda9e00e6d7806f22f3f1c59b46..f3953446f72c0e5b607bd1471577fe163efd8e79 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2017-04-07 18:01:02-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - book review
index d62a2521a29a7b5c19e0e5acda24cd7d6c4ae5e4..6980723e4609953f25351d0c7d764a6f127d12f2 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2020-11-20 17:41:32-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - timelog
index a6d1821ea7b24c739dc50f6e0836e79135ffd6ef..6d56327d3871944f341885084a57910f1f434337 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-11-02 18:26:22-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - rationality
index d9aa01dd28ae280cefa2767389ba3188daf605a4..811ceaf17eb06be8a67f6a43579becd180d4d6c2 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-09-23 15:05:15-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - lifelogging
index 5c794b3dc52e513ca4414543fd3de32297d1b942..bef89cedab40daa1b72d5a2bbfa809c98d587bf3 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-10-10 17:54:17-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - art
index c4c0416d1572c500762ee682fe45f9ffb1fa6759..f313f14447f4a34c1936523eacdf1a51739b167c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2022-08-18 20:14:48-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index dee4dc0d2e6670cd1dcbdc48f79f78aa9e85b2eb..886c6db124e431e11b77723036a5744680fc8c3c 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2021-07-10 21:36:51-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - compression
index c58dd06148afab60c1144cf16fe42040ebef57b7..ea22487e3d122755a74d772e63a8552ddb7cee45 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-06-08 19:46:00-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - linux
index 5fd6964a6f94dcfe911a96b0f15bbc26501ae564..3458fef0fcdcb891d5af216a0a9385744e2f4014 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2022-03-10 09:11:11-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index 3570d38a1077a78183c9e87d1730a3ae4831186c..81934ee2c93f489c720e69a2d4313424a290d120 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2021-05-26 13:39:19-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - self-improvement
index 23e403a9343b613fb0ea30d35e49f5abe8c94d47..32af5927d5513c6ac0154dc688420b4bb0a726a2 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2020-04-15 15:34:41-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - isitoutyet
index 91502046e63781c2b653cdcdc5bba884e60530e9..21e52c8cfaca303b634cf5a92917f7b730b74013 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-30 03:12:07-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - carpentry
index fad9a3397eb1ef9696dcb248c979d146cb79bdb5..80f6933c76a8b597857e68b92e67ac62a48e4c01 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-10-10 18:17:34-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 9fd196c5db981e5f4e04cdf37abed76e22998a3a..a018618d8d850b906b5c87799b0fcbdcf412e302 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-10-10 18:25:46-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - art
index 73c25ac8ed305457b52efc51053b77cce3be3d58..bbeef770a35d4fdb43021fe66a92bf3ac8755ace 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-02 17:38:23-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - dead tree
index 24947d55fa0580b3e0a166d67ae2941ffafffd51..020179883fd4337cab8351ba5d5a9bb083ef3087 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-16 18:47:16-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - bootstrap
index 3c98b902e5dff34ef0ceb43bb557b22739fe8d70..d90cdb6339a40c4206317e55a1ce2b4a4132206d 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-04-30 18:08:01-07:00
-markup: html
+has-comments: true
+markup: markdown
 source: wordpress
 tags:
 - bootstrap
index eceb0b1a2feb28ba7a9b19132ee72aa84ba98c64..5650601032e78bce812736f13702617f6f4bd5ec 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-03-29 14:12:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - dead tree
index f448a1aa96e9c18edd9e4b07051bfb94b5c51fa9..153129938ec932e864ea710108b3123173e28218 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2015-04-13 17:46:31-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - boot
index 5760a725b7df8bf201f8249e7a687ec623a84843..17e29cfa619f35456fbfd2e10752e3f3379f76e8 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Non-Technical
 date: 2015-06-28 17:07:34-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - review
index 7ad2d53edb0d0d9b3bfcc06d9d26b4340e77247c..0038ab336b8d971fff97aa4504c7df1f20f6249b 100644 (file)
@@ -4,7 +4,8 @@ categories:
 - Non-Technical
 - Technical
 date: 2022-07-08 12:02:57-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - archiving
index 896b8ae0173a0d51eb90fc6876340d094d2c50d6..ce21a541ce22f47e868a3cbc8c9c8cb8e0ddf0ec 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-05-26 18:25:37-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hardware
index ece7455d8fdfc1cea88f5748bbe62dbfed05ad4d..79993e91ea3f12138b07d2ed71879994b782537e 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-05-17 10:04:12-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - zorchpad
index 0a32fe0ea5a7b02e38c071a140fd46f5c253b5bd..3d475e6e41525c910c6433fabbe0002f8f1069fe 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-06-05 10:36:45-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - zorchpad
index 39fc17fb0584d53f606e89119aca0ccfd82265fc..b4e0ed9d2aab2181ec7c106d4f1dfb41fff33d86 100644 (file)
@@ -3,7 +3,8 @@ author: admin
 categories:
 - Technical
 date: 2024-05-08 09:47:52-07:00
-markup: html
+has-comments: false
+markup: markdown
 source: wordpress
 tags:
 - hardware