Introduction
Introduction Statistics Contact Development Disclaimer Help
Push new filter infrastructure and a more printable logo. - tgtimes - The Gophe…
git clone git://bitreich.org/tgtimes git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws…
Log
Files
Refs
Tags
README
---
commit ab8073181d221ca5572653bf5c219c8037e15a0b
parent 79cdcd13e863b43d9a850533fc59fbca84cfb232
Author: Christoph Lohmann <[email protected]>
Date: Tue, 8 Aug 2023 15:45:14 +0200
Push new filter infrastructure and a more printable logo.
Diffstat:
M Makefile | 21 +++++++++++++++++----
A filters/markdown.filter | 48 +++++++++++++++++++++++++++++…
A filters/title-boxes.filter | 34 +++++++++++++++++++++++++++++…
M opus7/0-xxx-header.raw | 32 ++++++++++++++++-------------…
M opus7/1-article-athas-shell-redire… | 1 +
M opus7/2-article-bitreich-library-o… | 2 --
M opus7/4-article-tgtimes-most-minim… | 18 ++++++++++++------
M opus7/6-article-bitreich-dj-vlad-o… | 2 --
M opus7/6-b-article-bitreich-gopher-… | 9 +++++----
9 files changed, 133 insertions(+), 34 deletions(-)
---
diff --git a/Makefile b/Makefile
@@ -11,12 +11,25 @@ all: ${tgtimes}.pdf
mdfiles=$(wildcard opus${v}/*.md)
mdptxtfiles=${mdfiles:.md=.ptxt}
.md.ptxt:
- cat $< | fold -s | boxes -d boxquote -p a1 -s 70x > $<.ptxt
+ cat $< \
+ | ./filters/markdown.filter \
+ | par-format "78" \
+ | { \
+ boxes -d boxquote -p a1 -s80x; \
+ printf "\n"; \
+ } \
+ | ./filters/title-boxes.filter > $<.ptxt
txtfiles=$(filter-out ${tgtimes}.txt, $(wildcard opus${v}/*.txt))
txtptxtfiles=${txtfiles:.txt=.ptxt}
.txt.ptxt:
- cat $< | fold -s | boxes -d boxquote -p a1 -s 70x > $<.ptxt
+ cat $< \
+ | fold -s \
+ | { \
+ boxes -d boxquote -p a1 -s80x; \
+ printf "\n"; \
+ } \
+ | ./filters/title-boxes.filter > $<.ptxt
rawfiles=$(wildcard opus${v}/*.raw)
rawptxtfiles=${rawfiles:.raw=.ptxt}
@@ -31,9 +44,9 @@ ${tgtimes}.txt: ${mdptxtfiles} ${txtptxtfiles} ${rawptxtfiles}
${tgtimes}.pdf: ${tgtimes}.txt
u2ps --header="The Gopher Times Opus ${v}" \
-f Liberation \
- --wrap --mark \
+ --wrap \
--footer="page #" ${tgtimes}.txt ${tgtimes}.ps
- 9 ps2pdf ${tgtimes}.ps ${tgtimes}.pdf
+ ps2pdf ${tgtimes}.ps ${tgtimes}.pdf
clean:
rm -f ${tgtimes}.pdf ${tgtimes}.txt opus${v}/*.ptxt
diff --git a/filters/markdown.filter b/filters/markdown.filter
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+export TERM=linux
+
+reset="$(tput sgr0)"
+italicformat="$(tput sitm)"
+italicreset="$(tput ritm)"
+boldformat="$(tput bold)"
+boldreset="$(echo -ne "\033[22m")"
+underlineformat="$(tput smul)"
+underlinereset="$(tput rmul)"
+reverseformat="$(tput rev)"
+reversereset="$(echo -ne "\033[27m")"
+
+redcolor="$(tput setaf 1)"
+greencolor="$(tput setaf 2)"
+yellowcolor="$(tput setaf 3)"
+bluecolor="$(tput setaf 4)"
+purplecolor="$(tput setaf 5)"
+cyancolor="$(tput setaf 6)"
+whitecolor="$(tput setaf 7)"
+darkgreycolor="$(tput setaf 8)"
+brightredcolor="$(tput setaf 9)"
+brightgreencolor="$(tput setaf 10)"
+brightyellowcolor="$(tput setaf 11)"
+brightbluecolor="$(tput setaf 12)"
+brightpurplecolor="$(tput setaf 13)"
+brightcyancolor="$(tput setaf 14)"
+brightwhitecolor="$(tput setaf 14)"
+
+while IFS= read -r line;
+do
+ case "${line}" in
+ "## "*)
+ nline="$(printf "%s\n" "${line}" \
+ | sed 's,^## ,,')"
+ printf "${boldformat}${underlineformat}%s${reset}\n" \
+ "${nline}"
+ ;;
+ " "*)
+ printf "${redcolor}%s${reset}\n" "${line}"
+ ;;
+ *)
+ printf "%s\n" "${line}"
+ ;;
+ esac
+done
+
diff --git a/filters/title-boxes.filter b/filters/title-boxes.filter
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+export TERM=linux
+
+line0=""
+line1=""
+line2=""
+
+i=0
+while IFS= read -r line;
+do
+ case "${i}" in
+ 0)
+ line0="${line}"
+ ;;
+ 1)
+ line1="${line}"
+ ;;
+ 2)
+ line2="${line}"
+ nline2="$(printf "%s\n" "${line2}" \
+ | sed 's,^|[ #]*\(.*\)$,\1,')"
+ nline0="$(printf "%s\n" "${line0}" \
+ | sed "s,\[ \],\[$(tput smul)$(tput bold)${nline2}$(t…
+ printf "%s\n" "${nline0}"
+ printf "%s\n" "${line1}"
+ ;;
+ *)
+ printf "%s\n" "${line}"
+ ;;
+ esac
+ i=$((i + 1))
+done
+
diff --git a/opus7/0-xxx-header.raw b/opus7/0-xxx-header.raw
@@ -1,16 +1,16 @@
- ______________________________________________________________________
-| _______ _ ____ _ |
-||--. .--|| | ,',' '| | | |
-| | | | |,--. ,---. | | .---. -----. | |,--. ,---. --,--.|
-| | | | | `. || |_|_| | | ___| | | || | | || | `. || |_|_|| | '"|
-| | | | | | || | | | | || | | || | | || | | || | | | |
-| '---' --- --- `---' ``--'' `---' | :--' --- --- `---' --- |
-| _______ _ | | |
-| |--. .--|(_) --- _ |
-| | | --. --,--.,--. ,---. ,--.: _,-' )_ |
-| | | | | | |`. |`. || |_|_|| '-. (_,-' _,-' )_ |
-| | | | | | | | | | || | `-. | (_,-' _,-' ) |
-| '---' --- --- --- --- `---' '---' (_,-' |
-|______________________________________________________________________|
-| Opus 7 Gopher News and More Published on Bitreich.org |
- ----------------------------------------------------------------------
+,_____________________________________________________________________________…
+| ,_______,,_, _____ ,_, …
+| |#######||#| __ ___ ,'#####| ___ ____ |#| __ ___ _ __ …
+| |#| |#|/##\ /###\ |#| /###\ /####\ |#|/##\ /###\ \\/##\ …
+| |#| |#|/ \#||#|_|#| |#| ___|#| |#||#| |#||#|/ \#||#|_|#||#| || …
+| ,|#|, |#| |#||#|___ |#|__|#||#|_|#||#|_|#||#| |#||#|___ |#| …
+| \###/ \#/ \#/ \###/ \#####/ \###/ |#:70/ \#/ \#/ \###/ \#/ …
+| ,_______, _ |#| …
+| |#######|(o) _ __ __ ___ ___ \#/ _,-' ) …
+| |#| /#\ \\/##\/##\ /###\ /###\ ( ,-' _,-' ) …
+| |#| |#| |#| |#| |#||#|_|#||#|__ ( ,-' _,-' ) …
+| ,|#|, |#| |#| |#| |#||#|___ _\##| ( ,-' …
+| \###/ \#/ \#/ \#/ \#/ \###/ |###/ gophers://bitreich.org/1/tgtimes…
+|_____________________________________________________________________________…
+| Opus 7 Gopher News and More Published by Bitreich.org…
+`-----------------------------------------------------------------------------…
diff --git a/opus7/1-article-athas-shell-redirections.md b/opus7/1-article-atha…
@@ -17,6 +17,7 @@ try the rather obvious possibility of having the input and ou…
be the same:
$ sort < numbers > numbers
+
But disaster strikes: the file is empty! The user has lost their
precious collection of numbers - let's hope they had a backup. Losing
data this way is almost a rite of passage for Unix users, but let us
diff --git a/opus7/2-article-bitreich-library-of-babel.md b/opus7/2-article-bit…
@@ -1,7 +1,5 @@
# Library of Babel now available on gopherspace. by Bitreich
-What is the Library of Babel?
-
The Library of Babel is a place for scholars to do research, for artists
and writers to seek inspiration, for anyone with curiosity or a sense of
humor to reflect on the weirdness of existence - in short, it's just like
diff --git a/opus7/4-article-tgtimes-most-minimal-gopher-server.md b/opus7/4-ar…
@@ -13,35 +13,41 @@ Which cost would we end-up for building a minimal piece of …
to host the Gopher protocol acheiving all of the above?
The Gopher Times investigates.
-## "Communication"
+## Communication
+
While WiFi is inexpensive and fits moving device gracefully, the
reliability of Ethernet is indicated for a server. Ethernet adds
1 USD of cost for the transceiver handling the electricial characteristics
of Ethernet. These typically expose an RGMII interface.
-## "Processing"
+## Processing
+
A microcontroller featuring an Ethernet peripheral (with an RGMII
interface) could be the popular STM32F103, or an alternative
compatible part. Enough processing power would be present for an
embedded TCP/IP and a TLS stack.
-## "Automation"
+## Automation
+
In addition, most microcontrollers feature a large range of
built-in peripheral such as timers and communication or analog
interfaces, enabling automation of devices such as lighting,
heating, laundry, motors, or an entire car, through external
modules. This would come for no extra cost.
-## "Storage"
+## Storage
+
A slot for a MicroSD card would allow storing and updating
the static content to serve, and storing network configuration.
-## "Scripting"
+## Scripting
+
There exist project to fit programming languages onto microcontrollers.
Separate projects for supporting a subset of each of Python, Ruby,
Javscript, Go, Rust, Lua, Forth and more.
-## "Power"
+## Power
+
By letting power supply happen through the USB port, a large range
of power source can be used, such as battery, solar panels, wind
turbine, hydropower, or power outlet.
diff --git a/opus7/6-article-bitreich-dj-vlad-on-2023-03-11.md b/opus7/6-articl…
@@ -1,7 +1,5 @@
# DJ Vlad Session on Bitreich Radio on 2023-03-11 by Bitreich
-New DJ Vlad Session from Serbia on Bitreich Radio on 2023-03-11T20:00 CET.
-
Our residing DJ Vlad (not from Russia or Ukraine) has found a new sound
and will present it to us at 2023-03-11T20:00 CET exclusively on Bitreich Radi…
diff --git a/opus7/6-b-article-bitreich-gopher-pearls.md b/opus7/6-b-article-bi…
@@ -10,17 +10,17 @@ Get ready to search for the pearls:
The archive of gopherspace from 2007 from archive.org is now available on
Bitreich for research.
-
The pearl list begins with - of course! - the gopher manifesto:
- gopher://bitreich.org/0/gopher2007/2007-gopher-mirror/gopher-arch/goph…
+ gopher://bitreich.org/0/gopher2007/2007-gopher-mirror/\
+ gopher-arch/gopher/seanm.ca/70/0/nerd/gopher-manifesto.txt
See the 'What we need' section. We completed nearly all points there. :-D
-
A second pearl example:
- gopher://bitreich.org/0/gopher2007/2007-gopher-mirror/gopher-arch/goph…
+ gopher://bitreich.org/0/gopher2007/2007-gopher-mirror/gopher-arch/\
+ gopher/seanm.ca/70/0/nerd/language_parable.txt
And each language could be heard to mumble as it tromped and
tromped
@@ -43,5 +43,6 @@ considered a pearl to:
Sincerely yours,
20h
+
Chief Archive Officer (CAO)
You are viewing proxied material from bitreich.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.