|
|
eval-bob - geomyidae - A small C-based gopherd. |
|
|
 |
git clone git://bitreich.org/geomyidae/ git://enlrupgkhuxnvlhsf6lc3fziv5h2hhfrinws65d7roiv6bfj7d652fid.onion/geomyidae/ (git://bitreich.org) |
|
|
 |
Log |
|
|
 |
Files |
|
|
 |
Refs |
|
|
 |
Tags |
|
|
 |
README |
|
|
 |
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 |
|