前にだしたやつ を気が向いたので CSS 化。魔術というか卑怯というか、キモい技を使ってますが結構微妙ですね。

手の画像は Spindly by salt fork です。

「なんかよくわからないけど」読みにくい感じがする。回りのぐにゅぐにゅのせいかな? ちょっとしたら元に戻すかもしれない。

戻した。指輪は alternate にしといた。

  1. トップ
  2. css
  3. 新スタイル - 指輪
  1. トップ
  2. web
  3. 新スタイル - 指輪

メモ。lighttpd + FastCGI は mod_perl + Apache1.3 より1割ほど高速 :: Drk7jp これを見つつ。とりあえず、Perl も PHP もいらんのでそのへんごちゃり。

cd ~/src
wget http://www.fastcgi.com/dist/fcgi.tar.gz
tar xvfz fcgi-2.4.0.tar.gz
cd fcgi-2.4.0
./configure
make
make check
sudo make install
cd ~/src
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-6.4.tar.gz
tar xvfz pcre-6.4.tar.gz
cd pcre-6.4
./configure
make
sudo make install
cd ~/src
wget http://www.lighttpd.net/download/lighttpd-1.4.9.tar.gz
tar xvfz lighttpd-1.4.9.tar.gz
cd lighttpd-1.4.9
./configure
make
sudo make install
sudo ln -s /usr/local/sbin/lighttpd /usr/sbin/lighttpd
sudo cp doc/rc.lighttpd /etc/init.d/lighttpd
sudo cp doc/lighttpd.conf /etc/lighttpd/
#sudo update-rc.d lighttpd defaults 30 # まだ

あと ruby-xslt をインスコして、IRC Log 関連を ubuntu に移すことにした。tiarra も最新版にして conf だけ転送。

sudo apt-get install libxml-ruby1.8 libxslt1-dev
cd
cd src
wget http://gregoire.lejeune.free.fr/ruby-xslt_0.9.2.tar.gz
tar xzvf ruby-xslt_0.9.2.tar.gz
cd ruby-xslt
lm
ruby extconf.rb
make
lm
sudo make install
  1. トップ
  2. linux
  3. ubuntu + lighttpd + ruby-xslt

更新できずにいた now playing をどうにかする。

Rhythmbox にしてから now playing が更新できなかったんだけど、rbscrobbler を適当にハックして情報投げるようにしてみた。全く難しいことをやっていないんだけど、Python がまったくわからんおかげで、invalid syntax で何度も怒られた。

rbscrobbler.patch

UTF-8 で送られてくるので、CGI 側では特に変換をしないように変更。ていうかこの CGI 古いなぁ。クラスメソッド使うときは :: 使ってたころだ。

  1. トップ
  2. music
  3. Rhythmbox now playing
  1. トップ
  2. prog
  3. Rhythmbox now playing

Brainfuck インタプリタ。

arr = []
ptr = 0
soc = ARGF.read
pos = 0
while soc.size > pos
print soc[pos].chr if $DEBUG
p arr if $DEBUG
arr[ptr] ||= 0
case soc[pos]
when ?>
ptr += 1
when ?<
ptr -= 1
when ?+
arr[ptr] += 1
when ?-
arr[ptr] -= 1
when ?.
print arr[ptr].chr
when ?,
arr[ptr] = $stdin.getc
when ?[
if arr[ptr].zero?
n = 1
while n.nonzero?
pos += 1
case soc[pos]
when ?[
n += 1
when ?]
n -= 1
end
end
end
when ?]
n = -1
while n.nonzero?
pos -= 1
case soc[pos]
when ?[
n += 1
when ?]
n -= 1
end
end
pos -= 1
end
pos += 1
end
puts

mailto:>++++++++++[<++++++++++>-]<-. +++++. +++++++. >++++++[<---------->-]<+. +. >++[<+++++>-]<+. >++++[<++++++++++>-]<++++. +++. ++++++++. -----. -------------. ----. +++++++++++. >++++++[<---------->-]<--. >++++++[<++++++++++>-]<++++. ---------. +++++++++++++++. 途中式 もっと短くしろよとかね。知らないよ。1パターンしか使ってないしね。いやでも別にね。ね。

bfi.rb Brainfuck の Ruby 実装 ってのを見つけた。変数名以外殆ど同じ(w. 最後に puts つけてるのまで同じだ。おもろいなぁ。ちなみに最後の puts は zsh 対策です。

The Ruby BrainFuck Interpreter クラス使ってる

アルゴリズム自体は Brainf*ck で頭にいれ、テストもそのページで紹介されているプログラムを使った。

  1. トップ
  2. prog
  3. Brainfuck on Ruby
  1. トップ
  2. ruby
  3. Brainfuck on Ruby