Newer
Older
Ruby / clock.rb
#!/usr/bin/env ruby
# -*- coding:utf-8 -*-
a=Time.now
printf("%d°%d'%d\"",a.hour,a.min,a.sec)
sleep(0.5)
print("\e[2J\e[1;1H")
while true
  b=Time.now
  if b.floor==a.floor+1
    print("\e[2J\e[1;1H")
    d=(b.hour/10).floor
    e=(b.min/10).floor
    f=(b.sec/10).floor
    c=[d,b.hour-d*10,10,e,b.min-e*10,10,f,b.sec-f*10]
    g=[" @@@ \e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B     \e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B @@@  ",
       "     \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B     \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B      ",
       " @@@ \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B @@@ \e[5D\e[1B@    \e[5D\e[1B@    \e[5D\e[1B@    \e[5D\e[1B @@@  ",
       " @@@ \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B @@@ \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B @@@  ",
       "     \e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B @@@ \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B      ",
       " @@@ \e[5D\e[1B@    \e[5D\e[1B@    \e[5D\e[1B@    \e[5D\e[1B @@@ \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B @@@  ",
       " @@@ \e[5D\e[1B@    \e[5D\e[1B@    \e[5D\e[1B@    \e[5D\e[1B @@@ \e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B @@@  ",
       " @@@ \e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B     \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B      ",
       " @@@ \e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B @@@ \e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B @@@  ",
       " @@@ \e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B@   @\e[5D\e[1B @@@ \e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B    @\e[5D\e[1B @@@  ",
       "   \e[3D\e[1B   \e[3D\e[1B @ \e[3D\e[1B   \e[3D\e[1B   \e[3D\e[1B   \e[3D\e[1B @ \e[3D\e[1B   \e[3D\e[1B    "]
    puts("/===========================================\")
    print("||\n||\n||\n||\n||\n||\n||\n||\n||\e[8A")
    c.each do |n|
      print(g[n])
      print("\e[8A")
    end
    print("\e[1D||\e[2D\e[1B||\e[2D\e[1B||\e[2D\e[1B||\e[2D\e[1B||\e[2D\e[1B||\e[2D\e[1B||\e[2D\e[1B||\e[2D\e[1B||\n")
    puts("\===========================================/")
    a=b
  end
end