zt日記

書いているのは Kazuhiro NISHIYAMA a.k.a. ZnZです。
2001|09|10|11|12|
2002|01|02|03|04|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|
2012|04|05|06|09|

この日記にはツッコミを入れられます。 ツッコミを入れたい日付をクリックすると、フォームが現れます。

xreaでtDiaryを使う方法はxrea.com で tDiary を使う方法インストールメモXREA + tDiary + Namazuをどうぞ。


2003年06月17日(Tue)

[ruby] Block

Blockクラスはいつの間にか追加されていつの間にか消えていったという感じが。

[RWiki] man-1.6

たまにCPUを使いまくって反応が無くなることがある。cronで1時間毎にチェックして反応がなければrestartするようにしてるけど根本的に解決したいところ。

反応がないときにはindex.cgiも動いていて、method一覧のページのような重いページをリクエストして応答が返ってくる前に中断した時とかに起こってる気がする。

[ruby][w3ml] ML&メール追加スクリプト

昨日の正規表現は長いメールがあるとなかなかかえってこなくなってまずいので、ヘッダと本文を分割してからヘッダの方だけ調べるように変更。entryで本文の方を拾われてしまうことがあったので、最初は$Requireの正規表現でなんとかしようとしてそれをそのまま使ってたのがまずかった。entryの方も分割してから調べるようにした方が良いのかも。
#!/usr/bin/ruby
 
SubjectPattern = /^Subject:\s*\[([a-z0-9\-_]*)\W\d+\]/i
$entry = "/home/kazu/w3ml/bin/entry"
$setup = "/home/kazu/w3ml/bin/setup"
$data_dir = "/home/kazu/w3ml/data"
 
def mysystem(*cmd)
  puts(cmd.join(' '))
  system(*cmd) or abort
end
 
if ARGV.empty? then
  STDERR.puts "usage: #{$0} mails..."
  exit(1)
else
  ARGV.each do |fn|
    print fn+'...'
    $defout.flush
    begin
      raw = File::open(fn) do |f| f.read end
      header, body = raw.split(/\r?\n\r?\n/)
      if SubjectPattern === header
        mlname = $1
        puts "match (#{mlname})."
        mldir = File.join($data_dir, mlname)
        unless File.exist?(mldir)
          print "#{mldir} not found. create(y/N)? "
          $defout.flush
          unless /^y/i === $stdin.gets.to_s
            puts "#{fn} skipped."
            next
          end
          mysystem($setup, mlname)
        end
        mysystem($entry, "--mlname=#{mlname}", fn)
      else
        puts "no match."
      end
    rescue RuntimeError
      puts $!
    end
  end
end

[Windows][MSIE] フォームの補完候補

テストでいろいろ入れてしまったところの候補が増えてしまって鬱陶しかったのでDeleteキーで消していった。Deleteキーで消せるって言うのはどのくらい知られてるんだろうか。そもそもこの日記を見てる人で、IE使いでフォームの補完を有効にしてる人は少ないかも。

[ssh] X Forwarding over gateway

firewallの中にあるマシンからX Forwardingしてみた。この方法だと/etc/hostsを書き換えるので、sshをだますために手元側のマシン(here)にroot権限がないと無理。
構成: here(Xサーバ) - The Internet - gateway - LAN - target
(1つ目の端末で)
here$ ssh -v -L 2022:target.example.com:22 -l gatewayuser gateway.example.com
(以下別端末で)
here$ cat ~/.ssh/config
Host target.example.com
  Port 2022
here$ grep target.example.com /etc/hosts
127.0.0.1   target.example.com
here$ ssh -X -v -l targetuser target.example.com
target$ xeyesやsylpheedなど

copyright © 2001-2013 ZnZ
Key fingerprint = 6E14 2C9C DBD7 874D 8B3C CAA8 9B58 5538 ED7E 1B73