Obnoxious Shell Effects

This document will be an ongoing list of obnoxious things you can add to your shell that will make your peers sneer at you with jealousy.

THX startup sound

Make sure the sox program is installed for manipulating audio data. Its useful to have around in general.

play -q -n synth sine F2 sine C3 remix - fade 0 4 .1 norm -4 bend 0.5,2477,2 fade 0 4.0 0.5

This sound is similar to the movie theater/home movie style sound system test. It would work great as a startup sound for your shell.

echo '(play -q -n synth sine F2 sine C3 remix - fade 0 4 .1 norm -4 bend 0.5,2477,2 fade 0 4.0 0.5 &)' >> ~/.bashrc

This will add the startup sound to your bash init script .bashrc and start it so that it runs in the background in a subshell. This makes it more transparent to the user by preventing it from displaying background job information when starting/exiting.

"Its a Trap!" -- Admiral Ackbar

First, install the ack program, which is a "grep-like text finder". Depending on what system you are using, this may be called ack-grep instead because there was already a command called ack.

Once that's installed. Try running ack --bar

                      ?IIIIIII7II?????+
                   ~III777II777I?+==++==+:
                  ???I7I???I7II++=====++===
                 ??+??????????+===~~=+++??==+
                ??+??II??????+==~=~~=+++++==++
               I+?????????+?+====~=~==+==++?==?
              ?????II?????+++++=======?===~~~~==
            ,?????II????????++++====~===::~~~~:~
            I?I??II?+++??+?+++==~~~~:~:~:,:,,:::~
           I??????+==+???++++=~~:~:~:,:::,:,,,,,::
          +I?++++=+=+????+++=~~:~~:::,,,,::,,,:,:
          I??+?+====+???+++===~~::::,::,:,,,,,,::
         I????=~===++?+=+=~==~:~~:,,,,,,,.,,,,,:~
        =??+?=~~~~??+?+===~~==,==~~~~,,,,..,,,.:=
        II++==~~=++++++=~~=~,~+=?+?=I?++=..,.,,:
     IIII?+?=====+~+++~=~~~:::=~+~===:,,,,,.,.::
    I?=?I+??+=~=~?I?=+=~~~::,~~=~::~=::,,,,,,::       ---------------
    ?+I??++=++~,::+++~~~:::,,=~~=,~,..,::.:          / It's a grep! /
    ++=+?++~=:~::I+,~=:~,:,,,,:~~......::~,,,        ---------------
     ~=~=:.++~:,.,~=::::.,,:,.:~,:=...==~,::              /
     =~?++??+=~~,.:?~.:,:,,,.,::,,~:=~=::,~              /
     ++~~:~===~:~,.~::,~=~.:,..,:,,:==:.,:7             /
     ~~,::...:=:,::+:~:.,~,...,.,,,,::~,,::~=          /
      =~===+=~~,.::,,,:::,..,,,,,,,,,,,:,..,=+?
      ~=~=~::~~~::,.,,,~:.+,..,,,,..,,,,...,+I?
      ~==~:~~:~~,~=~~:,:~,:,,,,,,....,,,..+?I?I
      ~=~=+,:~:=,:~~~~~~::::,.,,.,,.,,,..~+????I
      ~=~==~=:~~:,~~~~~:::,::,.,,,..,,,I77I?+??II
      +I7:::~~=~:,::~~~~.=.,~,,,,...,~7III?+??II7
     777?+~:=~=~~:,::~~:::.,,,,,,,,,777II??I777777
     777I==:=~::~~~~::~:::,:,:~:::,777I???777777777
    7777+,~===~:~:~~~~:::,.~:=,,:777II???77777777777=?
    777I~,~~~=~::~:,:,,,:=~~,,:7777I???I7777777777+=++
  I7777I,,:,.==::::,:,,,,::::7777I+??I77777777777??I7I7,
 ,77777I::,..~~:,,,,,,.,:~I7777I+??I777777777777?I7777777,
 77777777,...~~:,,,,,.,77777I7???II777777777777+?7777777777
77777777777:,~~~,,=7777777I???II777777777777777+77777777777
77777777777777777777777I+7?7II77777777777777777+777777777777

Ok, but we don't want to just run this every time we want to be reminded of our childhoods, we want it to have meaning. So we use the trap command to bind this command to a trap signal in the shell. Specifically, the SIGNINT signal which is triggered when you Press-C in the shell directly. So add this to your .bashrc

trap "echo;ack --bar | sed 'y/ge/ta/'" SIGINT

Play a random video when cd'ing.

Honestly, this one is ridiculous and you'll quickly grow tired of it. However, the web in general has become like this. You go to some website to get useful text information like the weather and they can't help but start playing an advertisement video for you in the background even though you didn't indicate that you wanted to watch it. What a huge waste of bandwidth. Computer scientists spent years in the 90s trying to squeeze all that they could out of data compression algorithms and video codecs so that you could have real time streaming video on the net. And these websites now treat it like flyers handed out on the street.

We'll imagine that you have a lot of videos in your ~/Videos directory. Make sure you have mplayer installed and add this function definition to your .bashrc file.

cd(){ builtin cd "$@";(mplayer -really-quiet -noborder -endpos 30 -geometry 400x280+0+0 "$(ls -1 ~/Videos/*|shuf|head -1)" 2>/dev/null &); }

Sometimes I think that the purpose of mplayer is to generate warnings in the terminal. Its hard to prevent it from sending any output.

The problem you will probably have with this is making the video play in the background on your desktop without interrupting your workflow. devilspie is a great program for matching windows and controlling them on your desktop beyond what your window manager can do, however it doesn't have a command for unfocusing a window. One idea is that you could simply bypass the whole rasterized video display and go straight for ASCII art in the same window. (libaa required)

cd(){ builtin cd "$@";mplayer -endpos 30 -really-quiet -vo aa:eight:driver=curses -monitorpixelaspect 0.5 "$(ls -1 ~/Videos/*|shuf|head -1)"; }

Of course this will clear your terminal and interrupt your workflow quite a bit.

yyyyyyyyyyyyyyyyyyyyyyyyyyggggggggyyygg__wgygwgggw___gggww___gggwww___ggg______ww_____________________________________wwwwwwwwgggggggggggggg
mWWmmm#########mmmmmmmmmmmWQQQQQQQQQQQQQlQvQlQvQvQiZlvQQvQQQlQvvQQQWQQvvvQiiQZlQQliQQQZQWWWQWQZiiZiiiiiiiiiiiiiiiliillQQQQQvvvvvvvvvvvvQQQQQ
IIII**IIIIIIIIIII11QQQQQQQ1vvvvQQQQQQQvQlQvvQQvvvviiQvQvQQQQlQvvQQQWZQvvvQliQZlQvQiZQZiiQWWQWQiiiiiiiiiiiiiiiiiiiiilllQQQQvvvvvvvvvvvvvQQQQQ
QQQQQQQQQQnnnvvvmmmmmmmmmmmmwwwwwiiiiiillQvvQQQWvQiiQvvQQQQQiQvvQQlWZlQvvQliQZlQQiZQQQQWd#x##dWZiiiiiiiiiiiiiiillllllQQQQQvvvvvvvvvvvvQQQQQQ
WWWWWWWWWWWWWWQWWWWWWWWWWWWWmmmmWWQQQQvllQvQQvQWvQiiQvQvQQQZQQvQQQiWZlQvvQQiQZiQQiQWWd#ooxxoZoZXVdWWWQQQQQQQQZZZZZZZZi8XllQIIQQvvvvvvvvQQQQQ
mmmmmmmmmmmmWWWWWWWWWWWWWWWWWWWWWWQQQQQlllvQQvQWvQiiQvvvQQWZlQvQQQiWZQvvvQlZWZiQQiWZZZXX#WZQdddZXxQZZiiiiiiiiiiiiiiiiiillllllQQQQQQQQQQlllll
###mmmmmm#mmmmmmWWWWWWWWWWWWWWWWmWQQQQvlllvQQQQWQQilvvQvQQWZlQvQQQiWQlvvvQQZWQiQQi#vmwiwmmnn>gt;Z#XXXXiiiiiillllQQQQQQQQQQvvvvvvvvvvvQvQQQvvvQQ
##############mmmmmmmmmWWWWWWWmmmWQQQQvllQvQQQQQvQilvvQvQQWiQvvQQQiWiQvvQQQZWQiQQiQQnTHT*nZWsnoqQQdiiiiilllllQQQQQQQQQQvvvvvvvvvQQQQQWQvvQQQ
###ZZZZZZZZ#ZZ####mmmmmmmmmmmmmmmQQQQQvllQvvlQQQvQilvvQvQlQiQvvQQQZQiQQQQQlQWQlQlZQVYggN80IW#vvsN@diiiillllllQQQQQQQQQQvvvvvvvvvQQQQWWQQQQQW
###ZZZZZZZZZXXZZZ########mmmmm##mQQQQQvllQvvQQQWHoiivvQvQlQiQQvvQv#WilQQQQlQWQiQlZiw9N]HVHoqQvvm1zQiiiiiiillllQQQQQQQQQQvvvvvvvQQQQQQQQQQQWW
####ZZZZZZZZXXZZZZZZZ#######mm##mQQQQvvilQvvQvQWe3iQvvQvviQilQvQQvZWilQQQQlQWZlQlmt#Xag1mnmvQllQvQZiZiiiiiilllQQQQQQQQQQvvvvvvvQQQQQQQQQQQWW
mm####ZZZZZZZZZ###Z#############mQQQQvQllQvvQvQmvdiQvQQvviWiQvvQQvQQiQQQQQlQWZlQ(]X1GQsQQQWQliivW#9E3iiilllllllQQQQQQQQQQvvvvvvQQQQQQQQQQQQQ
mmmm################mmmmmm######mQQQQvQQlvvQlvQQQ$iQvvvvviQZivvQQQQQiQvvvQlWQZlQ(+VMTXInu$lZQQvWZZ!=XXdZiillllllllllQQQQQvvvvvvQQQQQQQQQQQQQ
mmmmm#########mmm##mmmmmm#######mQQQQvQQlvWvlQvQvliQvvvvvZQiQvvQQQQQiQvvvQlQQiQ@^|vqw18T<#WWQQW(ZGXXXoxxx#dHiQllllllQQQQQvvvvvvvvQQQQQQQQQQQ
mmmmmmmmmmmmmmmWWWWWWWWWWmm####mWQQQQvQvQvW1lQvvviiQvvvvviQiQvvQvQQZQQvvvQlQQiiL:=d#WCvl){wQWF`EGXZXXxxxxooooVHllllllQQQQvvvvvvvvvQQQQQQQQQQ
QQQQQvvvIIIQQQIIIII1QIIIQQQQQQQWQvvvvvQWvvWvQvvvQiZQQQQQlWWiQvvQvQWZiQvvvviWWQZ3.j+T!i|ivq Q+.EGXX=XXZZZXXX=vvl)llllQQQQQQvvvvvvvvQQQQQQQQQQ
WWWWWWWWWWWWQQQQQQvvvvvvmQQvvvvvmmmmmmQvQvQvvQQvv#iQvvvQQQQQvvvQvQQiQvvvvviWWZvl!<|===|lof.+:_{XXX==XXXXX==nvvl:3lllllQQQQQvvvvvvvQQQQQQQQQQ
mmmmmmmmmmmmmmmQQvQQQWWQQvQWmmmWWWWWWWQQQvWvvQQvvZZQvQvvQWZlvvvQvlWiQvvvvvi#Xnli|||===l=X'...CXXXnoXXX=====oonvvl<ZZZZZZiXli8XiIIIIIIIIIvvvv
mmmmmmmmmmmmmmmWWWWWWWQQQQW#Z##mmWWWWWQQQQWvvQQQviivvQvvQWiQvvvQviWiQvvvvv#X=v:|||||iivXX`::DGXXo==XX=n=====ovvvv3iiiiiiiiilllllllQQQQQQQQQQ
mmmmmmmmmmmmmWmmmWWWQQQQQQWm#Z#mmmmmmWQQQvWvQQQvQiivvvvvlWiQvvvQviWiQvvQQi1=nl|i||lvvvnX3.:.[X=o===XXnv=====onvvv]iilllQQQQQQQQQQQvvvvvvvvvQ
mmmmmmmmmWWmWWWWWWWQQQQQQQWW#Z#mmm##mWQQQQWvQWWvQiiQvvvviWiQvvQQviWiQvvQl>gt;==vl:|+)=onn=X3.:EZ==X====olv=====ovvvvvlllQQQQQQQvvvvvvvvvvvvvvvQ
mmmmmmmmmmmmmmmmmWQvQQWWWWWWm##mmm###WQQQQmvQWWQQiiQvvQQ#WiQvvQQv#QiQvvQliXv:|=========X3..[lnXX=====lv=====nvvvvvllQQQQQQQvvvvvvvvvQQQQQQQQ
mmmmmmmmmmmmmmmmmWnQQWWWWWWWmmWWmm###WlQQvWvQWWQQiiQvvQQQWiQvvQQvWWiQQQliZxa=i||)X=====X3:D(:XXX====ovv=====nnvvv]QQlQQQQQvvvvvvvvvQQQQQQQQQ
WWmmmmmmmmmmmmmWWWWWWWQWWWQWWWWWWm###WQlQvQQvQWQQiiQQvQQQWiQvvQQQdWiQQQlli#dQZZQ#X======].Cin=X======vv====onnvvvQQllQQQQQvvvvvvvvvQQQQQQQQQ
WWWmmmmWWWWWWWWWWWWWWQQWWWQWWWWWWm###QQilvvQQvvvQZiQvvQlWWiQQQQlldWZiQQQvQ#dQiiZxX====Xnt:kv==X======vI=nnnnnnnvnllllQQQQQvvvvvvvvQQQQQQQQQQ
WWWWmWWWWWWWWWWWWWWWWWQWWWWWWWWWmm###QQilvQiQvvviZiQvvQldWillQliidWZilQvQQodQZiWX======F:.-p========nv:o======nI3lllQQQQQQvvvvvvvvQQQQQQQQQQ
WWWWWWWWWQQWmmWQQWWWWWWWWWWWWWWWm####QQiQvQiQvvviQiQvQQldWillQlii#WZlQQQviX#WQi#XX====j::..4no===nnvIi|l=XXX=nvl3lllQQQQQQvvvvvvvvQQQQQQQQQQ
WWWWWWWWWWWWmmWWWWWWWWWWWWWWWWmm#####QliQvQiQvvQZQiQvvQidWiiQQliixdZillii#XodQQXX====lF::::.pn===nnvv:i=X=nvv:::jQQQQQQQQQvvvvvvvQQQQQQQQQQQ
vvvvvvvvIQIIIIQQQQQQQQQQQQQQQQQQWWmQW1QiQviZQvvQQQiQvQQidWiiQQllixdQiliiZx=odQdXX===>gt;nL:;;;)mpv==vvvvlv=onnvvnvqQQQQQQQQQvvvvQQQQQQQQQQQvvQQ
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQlllllQilviZQvvQZZlQQQli#WilQQllZxWZiliiZo=XddxXXX=>gt;+v[:;::::mpn=nvvvv===nnvvInQQQQQQQQvvvvvQQQQQQQQQQQQQQQQ
QQQQQQQQQQQQQQvvQQQQQQQQQQQQQQQllllliiiiiQiZlQvQQQiQQQli#WZillll#xWZiiiiZZ=XddXXX=>gt;+=w`..::::;)pvnvIl=X=onvvv::<QQZZiiiiilQQQQQQQQQQvvvvvvvv
####HHHHHHHHHHHunnnnnnnnnnvvvvQQvvQliiiilQiQiQQQWWZiQQlZo#WZiQii#Z#WQiiZQX=Xdx=X1====)??YV,;=;.#pvvvI=X==nv:i|i3QQQQZZZZZZZiiiiiiiiilllllilQ
00000000000*************IIIIIIIIvvvvvvvvvvvvvQQvwmmvvvmimQwwiQiZdodWQiZZQXXx#XX>gt;+======|vvn)o=on=nvv===nvvvvl||%$QQQZZZZZZZiiiiZZZiiiiiiiilQ
QQQQQQQQQvvvvvvmmmmmmmmmmmmmmmmmvvWWm#mWmm#####mmmmmmmmHHWWWWWQQmvQQvvvvvmmv#X>gt;=====+|:n====X=n=XX======nnvli|=i]QQQQvvQQQQQQQvvvvvvvvvvvvvv
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQm#Xnvil**1vvvvvvnooS2oooonooXXXXXXXXXZZ##mmQ2>gt;======|lv========XX======nnvlii|||:3####d##dd#dddW||||||||MMMM
QQQQQQQlliiilllllllllQlllilliiiiiivvvvQW1YgggggggwwwwwXnonvIvvnooo2SXXZ#mmW@+======|lvn=XXX====XX===qnnnvI::iii:l%|ZiiliilQQQQQQQQllllllllll
QQvvvvQQQvvvvvvvvvvvvvvvvvvvvQQQQQQQvvvvvvvvvvvvvmmmmmwwwiiiiiiO8OMMMMMM|HV+++====ivvno=============){vgnlllvvvvvI]WWZiZQQQQZZZZiiiiiiiiiiii
)))))!!!!!!!!!TTTTTTTTTT+++vvvvvnQQQQQvvQvvvvvvvvvvvvvvvvvvvvQvvvvvQQQliiin=+===_:vnnno============ovI+:===+{nnnnnvdiliQiQwilliiiiiiiiiiiiii
iiiiiwwwwwyyyyyyyyyyyggggggWW#ZXS22SSSXXXXZ##mmmmmmHHHHouuuuuuuunnQQQQQQvvswwywm2vnn===ono======X==nnvvi=|ii:nnno==d8888888iXllQQQQQQQQQQQQQ

climagic home page

Created: 2014-05-19

Last Updated: 2014-05-19

blog comments powered by Disqus