aboutsummaryrefslogtreecommitdiff
path: root/bin/setbg-texample
blob: 5c06b6d6532af7a2c15b368c5a29800e4c64af6a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/bin/bash

# Test internet
wget -q --spider --timeout=2 https://google.com
if [ $? -ne 0 ]; then exit -1; fi

SCR_WIDTH=1980
SCR_HEIGHT=1080
PADDING=50
FONT_SIZE=20

let "SCR_WIDTH -= 2 * $PADDING"
let "SCR_WIDTH /= 2"
let "SCR_HEIGHT -= 2 * $PADDING"

PAGE=$RANDOM; let "PAGE %= 22"; let "PAGE += 1"

cd /tmp
wget -qO texample.html "http://texample.net/tikz/examples/all/?page=$PAGE"
EXAMPLES="$(grep '^<dl' texample.html | wc -l)"
awk -v n=0 "BEGIN{n=int(rand()*$EXAMPLES)+1} /^<dl/{l++} (l==n){print} END{}" texample.html | sponge texample.html

PDF="$(grep '\/media\/tikz\/examples\/PDF' texample.html | sed "s/.*<a href=\"\([^\"]*\)\">PDF<\/a>.*/\1/")"
TEX="$(grep '\/media\/tikz\/examples\/TEX' texample.html | grep -v writelatex | sed "s/.*<a href=\"\(.*\)\">TEX<\/a>.*/\1/")"

echo $PDF $TEX

wget -qO- "http://texample.net$PDF" | convert -size "x$SCR_HEIGHT" -density 300 - /tmp/bg.png
wget -qO- "http://texample.net$TEX" | sed -n '/\\begin{document}/,/\\end{document}/p' | pygmentize -l latex -O font_size=$FONT_SIZE -o /tmp/bg-src.png

montage -geometry "+$PADDING+$PADDING" /tmp/bg-src.png /tmp/bg.png "/tmp/bg-$PAGE.png"
rm /tmp/bg{,-src}.png

feh -B white --bg-max "/tmp/bg-$PAGE.png"