eval-bob - geomyidae - A small C-based gopherd.
 (HTM) git clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) Tags
 (DIR) README
 (DIR) LICENSE
       ---
       eval-bob (971B)
       ---
            1 #!/bin/sh
            2 #
            3 # Don't drink and code.
            4 # Eval BOB!
            5 #
            6 # https://www.bob.be/
            7 #
            8 # We want to create awareness of people writing code while being drunken.
            9 # See PHP or Ruby on Rails for how to not do it. You will end up in a
           10 # life of misery, where you cannot escape and need to keep going until
           11 # your pension with some ugly language, reinventing what has been done
           12 # before. Noone will remember you, since you write shit code and the next
           13 # hype kid replaced your idea with their own hype, rewriting what you
           14 # already did.
           15 #
           16 # Example BOB file:
           17 #
           18 #        <?geomyidae echo hello bob ?>
           19 #
           20 # See index.bob for an example file.
           21 #
           22 
           23 if [ -z "$1" ];
           24 then
           25         input="/dev/stdin"
           26 else
           27         input="$1"
           28 fi
           29 
           30 {
           31         awk -v "bob=1" \
           32         'BEGIN {
           33                 print "cat <<BOBEND" bob ";"
           34         }
           35         /^#!\// && NR==1 {
           36                 next;
           37         }
           38         /<\?geomyidae/ {
           39                 sub(/<\?geomyidae/, "BOBEND" bob "\n");
           40                 bob=bob+1;
           41         }
           42         /\?>/ {
           43                 sub(/?>/,"\ncat <<BOBEND" bob ";\n");
           44         }
           45         {
           46                 print;
           47         }
           48         END {
           49                 print "BOBEND" bob
           50         }
           51         ' "${input}" 
           52 } | sh
           53