前の月 / 次の月 / 最新

hiChangeLog / 2008-02

2008-02
SMTWTFS
12
3456789
10111213141516
17181920212223
242526272829

2010 : 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
2008 : 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
2006 : 01 02 03 04 05 06 07 08 09 10 11 12

2008-02-24 Sun

Space Saver Keyboardの中ボタンスクロールとトラックポイントドライバ

IBM製品のトラックポイントと中ボタンスクロールが便利で大変好き。
これを是非デスクトップPCでも使いたいとSpace Saver Keyboardを昔導入したが、これで中ボタンスクロールを動作させるのはややややこしい。顛末についてメモ。

OSはWindows 2000。クリーンインストール直後で、トラックポイントは動作するが中ボタンスクロールが動作しないという状況。
USB Keyboard and Travel Keyboard with UltraNav driverを導入したら、IEとかメモ帳とかでスクロールが有効になったが、Firefoxでは有効にならなかった。
そこでトラックポイント・ドライバー(Windows 2000/XP/XP Tablet Edition 2005)を導入したら、Firefoxでもスクロールが有効になった。

まあ、外付けキーボードでもThinkPad用ドライバを使え、つうことなのでしょうか。
参考:
http://forum.mozilla.gr.jp/?mode=al2&namber=12808&page=0&rev=0&&KLOG=87
http://www.hi-ho.ne.jp/vine/annex/ssk2b01/index.htm

2008-02-16 Sat

Windows2000で使えるiTunes

以下を参照
http://can-a-can.blogspot.com/2007/09/blog-post_28.html

CD保管用段ボールとファイル

CDをどうやって保管するといいだろう?
昨今は大容量HDDが安価なので、CDの中身をISOにしたりAppleロスレスにするのに抵抗が無い。なので「いつでも取り出せるようにしておく」よりは「念の為原本は保管しておきたい」というのが最近のCD保管に対する気持ちだ。
となると必要なものは、立派なラックやボックスでなく、かさ張らずに収まりのいい何かである。このあたりの事情を考え調べた結果をメモする。

引越しや整理の際、寸法の異なる物を箱や棚にキッチリ詰めるのは難易度の高いテトリスであり、苦労する。A5やA4とかに物のサイズが統一されていればこんなことを考える必要もなく、汎用の書類収納グッズも活用できて便利だろう。こんな経緯で、如何にA4サイズに収めるか、ということを念頭におく。

PC用のソフトの場合、ケースはほとんどの場合不要なので、以下のようなものがいいだろう。
PLUS RE-141CD
SLIDEX CD7005
下の方が入れやすい。だが一緒に紙片を入れる際には、ある日ポロっと落ちそうだなとちょっと心配になる構造。

音楽CDの場合、ケースも中の解説類もとっておきたい。となると、低コストで積み重ねも容易な段ボールが第一の候補だろう。CDケースの寸法はタテ142mm x ヨコ125mm。並べるので厚み方向の寸法は気にする必要がない。これがピッタリ入るような段ボールが求めるもの。

以下あたりが候補か。
ヤマショウ CDケース (20枚単位) 「差し込む」フタなので収まりが良さそう。
株式会社アース段ボール 商品ID0001 ほぼA5サイズなので書類棚との相性が良さそう。だがタイトルが見えない向きにCDケースを入れなくてはならない。
箱屋ドットコム 収納用段ボールCDサイズ
パッケージアート株式会社 ★CD24枚ピッタリ★段ボールケース★

2008-02-12 Tue

あるディレクトリ以下のファイル群をMD5で比較 [python]

コピーしたファイルとかが、ちゃんとバイナリレベルで一致してるかどうか確かめたい時がある。
直接ビット列を検査するよりも、MD5を比較したほうが多分楽。
pythonでそんな感じのものを書いてみた。とりあえずは動いている感じ。

MD5の一致に加え、比較元と比較先で同じ相対位置に同じファイル名があるかも要チェック。
os.walkのおかげでディレクトリを掘り下げるのが楽だった。
参考:http://morchin.sakura.ne.jp/effective_python/file_system.html

import os, sys, hashlib

if len(sys.argv) != 3:
  print 'invalid arguments'
  print 'usage: filecomp.py (topdir1) (topdir2)'
  sys.exit(1)

# ensure that topdirs have os.sep-letter at the end.
topdir1 = os.path.join(sys.argv[1], '')
topdir2 = os.path.join(sys.argv[2], '')

i=0

for dirpath, dirnames, filenames in os.walk(topdir1):
  for fname in filenames:
    if i > 10:
      print 'too many mismatches!'
      sys.exit(1)

    path1 = os.path.join(dirpath, fname)
    m1 = hashlib.md5(open(path1, 'rb').read()).hexdigest()
    path2 = path1.replace(topdir1, topdir2, 1)
    if os.access(path2, os.F_OK):
      m2 = hashlib.md5(open(path2, 'rb').read()).hexdigest()
    else:
      i+=1
      print 'mismatch #%d' % (i)
      print '%s exists, but\n%s does not exist.\n' % (path1, path2)
      continue
     
    ### check
    #print m1, path1
    #print m2, path2
    #os.system('md5sum.exe -b %s' % path1)

    if m1 != m2:
      i+=1
      print 'mismatch #%d' % (i)
      print '%s: %s\n%s: %s\n' % (path1, m1, path2, m2)

for dirpath, dirnames, filenames in os.walk(topdir2):
  for fname in filenames:
    if i > 10:
      print 'too many mismatches!'
      sys.exit(1)
    path2 = os.path.join(dirpath, fname)
    path1 = path2.replace(topdir2, topdir1, 1)
    if not os.access(path1, os.F_OK):
      i+=1
      print 'mismatch #%d' % (i)
      print '%s exists, but\n%s does not exist.\n' % (path2, path1)
      continue

print 'finished'

2010 : 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
2008 : 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
2006 : 01 02 03 04 05 06 07 08 09 10 11 12

最終更新時間: 2010-03-08 22:21