diff --git a/automap.sh b/automap.sh new file mode 100644 index 0000000..7bf50cb --- /dev/null +++ b/automap.sh @@ -0,0 +1,82 @@ +#!/usr/pkg/bin/bash + +#DOC MAINDIR specifies where the script begins to build gophermaps from. +#DOC HEADER is printed at the top of each gophermap +#DOC FOOTER is printed at the end of each gophermap + +MAINDIR="$HOME/gopher" + +HEADER="Welcome to my gopherspace + ____ ____ _ _ _ + | \| _ \| | | | + | | | | | | | | | | + |_|_|_|_| |_|\____/ +" + +FOOTER=" + + Thanks for using + + _ _ ._ |_ _ ._ + (_| (_) |_) | | (/_ | + _| | +" + + +#DOC Gopher File Codes +#DOy 0 text file +#DOC r directory +#DOC 3 error message +#DOC 5 archive file (zip, tar etc) +#DOC 7 search query +#DOC 8 telnet session +#DOC 9 binary file +#DOC g GIF image +#DOC h HTML file +#DOC i info text +#DOC I generic image file (other than GIF) +#DOC d document file (ps, pdf, doc etc) +#DOC s sound file +#DOC ; video file +#DOC c calendar file +#DOC M MIME file (mbox, emails etc) + +#DOC function gophref - 3 Args filetype, selector, name +#DOC The filetypes are well defined at this URL +#DOC https://github.com/michael-lazar/hn-gopher/blob/master/hn-gopher/opt/gophernicus_2.4/READM +#DOC +function gophref(){ + if [ -z "$1" ] && [ -z "$2" ];then + exit -100 + elif [ -z "$2" ];then + echo "$1$2 $2"; + else + echo "$1$3 $2"; + fi +} + +function gopHeader(){ + if [ -z "$2" ];then + headerWidth=40 + else + headerWidth=$2 + fi + lineSegment="" + for ((i=1;i<$headerWidth; i++)) + do + lineSegment="-$lineSegment" + done + + echo "$lineSegment" + printf "%*s" $(((${#1}+$headerWidth)/2)) "$1" + printf '\n' + echo "$lineSegment" +} + +echo "$HEADER" +gopHeader "PHLOG Posts" +gophref 0 TextFile "Big Times" +gopHeader "Looking for more? Check these out." +gophref 1 2021-04-16 "More Offgrid Fun" +gophref 0 OldStuff "Older Stuff" +echo "$FOOTER" \ No newline at end of file