|
Warning: this is an htmlized version!
The original is here, and the conversion rules are here. |
#!/bin/bash
# (find-es "ffmpeg" "screencasts")
# (find-es "ffmpeg" "script-2012oct")
# (defun c () (interactive) (find-bgprocess "~/eev-videos/1.sh xterm"))
# (find-sh "~/eev-videos/1.sh ffmpeg 540x600+0+0")
# (find-sh "~/eev-videos/1.sh down")
# (find-sh0 "~/eev-videos/1.sh xterm 80x30+0+0")
# (find-sh0 "~/eev-videos/1.sh ffmpeg 540x600+0+0")
# (find-sh0 "~/eev-videos/1.sh xterm 80x30+0+0 ffmpeg 540x600+0+0")
# (find-sh0 "~/eev-videos/1.sh down xterm 80x30+0+0 ffmpeg 540x600+0+0")
# (find-sh0 "~/eev-videos/1.sh down xterm 80x32+0+0 ffmpeg 530x550+0+0")
# (find-fline "/tmp/" "out.")
# (find-mplayer0 "/tmp/out.mp4")
# (find-mplayer0 "/tmp/out.avi")
# (find-sh0 "killall ffmpeg")
# (find-sh0 "killall -9 ffmpeg")
# (find-sh0 "cp -v /tmp/out.mp4 ~/eev-videos/test.mp4")
# (find-sh0 "ls -lAF ~/eev-videos/test.mp4")
# (ee-cp "~/eev-videos/test.mp4" (ee-twupfile "eev-videos/test.mp4"))
# http://angg.twu.net/eev-videos/test.mp4
# (find-sh0 "mplayer ~/eev-videos/test.mp4")
# (find-mplayer0 "/tmp/out.mp4")
# (find-sh "ffprobe /tmp/out.mp4")
# (find-man "1 nohup")
# (find-node "(coreutils)nohup invocation")
# Command-line arguments for screencasts
fvwmdown () { FvwmCommand "CursorMove +0 +100"; }
ffmpeggrab () {
rm -f /tmp/out.mp4
rm -f /tmp/out.avi
rm -f /tmp/out.log
{ echo ffmpeg -loglevel quiet -f x11grab -i $DISPLAY $* /tmp/out.mp4
nohup ffmpeg -loglevel quiet -f x11grab -i $DISPLAY $* /tmp/out.mp4 &
} > /tmp/out.log
# > /dev/null 2>&1 &
}
if [[ "$1" == "down" ]]; then fvwmdown; shift; fi
if [[ "$1" == "ffmpeg" ]]; then ffmpeggrab -r 5 -s $2; shift 2; fi
if [[ "$1" == "xterm" ]]; then
G=$2; shift 2; exec xterm -T xterm -geometry $G -e $0 $*
fi
# Colors
C0=$(tput sgr0)
C1=$(tput setaf 3; tput setab 1; tput bold;)
CB=$(tput bold; tput setaf 4)
CG=$(tput setaf 2)
# Sleep, sleep-then-echo, display-prompt-and-command, display-and-eval
slep () { sleep $1; }
slep () { stty -echo; read; stty echo; }
slep () { read -s; }
se () { read; echo "$2"; }
se () { echo; slep $1; echo "$2"; }
dpc () {
echo -n "${CG}$PWD(edrx)\$${C0} "; slep 1;
echo -n "$*"; slep 1;
echo;
}
function de () { dpc "$*"; eval $*; }
#------------
# Preparation
rm -Rv /tmp/eev/
export SHELL=/bin/bash
# Initial messages
clear
cat <<%%%
${C1} ${C0}
${C1} A very quick introduction to eev2 ${C0}
${C1} --------------------------------- ${C0}
${C1} See: http://angg.twu.net/#eev ${C0}
${C1} (Date: 2012nov02) ${C0}
${C1} ${C0}
According to the instructions in eev-readme.el,
the shell commands to download and unpack eev for tests
(i.e., in a temporary directory) and load it into Emacs
are:
mkdir /tmp/eev/
cd /tmp/eev/
wget http://angg.twu.net/eev-current/eev2.tgz
tar -xvzf eev2.tgz
emacs eev-readme.el
%%%
se 1 " This is typical - but do we have to always remember long"
echo " sequences of commands, and type them without errors?"
se 1 " I think that the answer should be ${CB}NO${C0},"
echo " and that's what eev is all about."
se 1 " So let's execute the commands above and open"
echo " eev-readme.el with Emacs. We will invoke Emacs with some"
echo " extra options, namely: \"-Q -fn 6x13 -fg bisque -bg black\""
echo " but they're just to make the video look nicer."
echo ""
cd
rm -Rf /tmp/eev/
de 'mkdir /tmp/eev/'
de 'cd /tmp/eev/'
#de 'wget http://angg.twu.net/eev-current/eev2.tgz'
de 'cp -v ../eev2.tgz .'
de 'tar -xvzf eev2.tgz'
de 'emacs -Q -fn 6x13 -fg bisque -bg black -geometry +0+0 eev-readme.el'
# Kill the video recorder
killall ffmpeg