ratio, proportion, rate の違い

ratioは分母と分子が排他的なのに対して、fraction, proportionでは、分子の数が分母にも含まれている。

自然科学でrateといったら、ある種の「速度」、つまり時間の概念が入り込んだものと考えるのが基本です。したがって、rateでは分母と分子が同じ次元(dimension)ではないのがふつう

http://www.wako.ac.jp/~nonaka/translation/medical_4.htm
より

TracのWikiで改行で改行するように改造

Tracは非常に便利だけどWikiで改行が改行にならないのが個人的には非常に不満なところ。
英語だと改行無視でブラウザに自動的に改行してもらったほうがいいかもしれないけど
日本語はやっぱり改行で改行してくれたほうが絶対に便利だと思う。


って事でTracPukiwiki

#setlinebreak on

みたいに改行を改行としてくれるように改造してみた。


で、実際の変更箇所、、(ver 0.10.2 or 0.10.3 です)


/usr/lib/python2.4/site-packages/trac/wiki/formatter.py
の838行目あたりに一行追加してやる

            if len(result) and not self.in_list_item and not self.in_def_list \
                    and not self.in_table:
                self.open_paragraph()
                result = result + "<br />"               ※この行を追加
            self.out.write(result + os.linesep)
            self.close_table_row()


diffとると

--- formatter.py        2006-12-15 15:28:48.000000000 +0900
***************
*** 836,841 ****
--- 836,842 ----
              if len(result) and not self.in_list_item and not self.in_def_list \
                      and not self.in_table:
                  self.open_paragraph()
+                 result = result + "<br />"
              self.out.write(result + os.linesep)
              self.close_table_row()

こんな感じ

ファイルリストからファイルサイズの合計を出力するスクリプト

パスが通っているところにfilesize.plで保存して実行権限つけたとして
こんな感じで使える

$ find -type f | filesize.pl -h
2.27K

#!/usr/bin/perl

use strict;
use Getopt::Std;

# commandline options
my %opts;
getopt('kmgt', \%opts);


# Read filelist and count file size
my $size = 0;
while(<>){
    chomp;
    $size += (-s $_);
}

# Format
if (exists($opts{'h'})){
    if ($size > 1024 * 1024 * 1024 * 1024){
        $opts{'t'} = 1;
    }
    elsif ($size > 1024 * 1024 * 1024){
        $opts{'g'} = 1;
    }
    elsif ($size > 1024 * 1024){
        $opts{'m'} = 1;
    }
    elsif ($size > 1024){
        $opts{'k'} = 1;
    }
}

if (exists($opts{'k'})){
    $size = sprintf("%.2fK", $size / 1024);
}
elsif (exists($opts{'m'})){
    $size = sprintf("%.2fM", $size / 1024 / 1024);
}
elsif (exists($opts{'g'})){
    $size = sprintf("%.2fG", $size / 1024 / 1024 / 1024);
}
elsif (exists($opts{'t'})){
    $size = sprintf("%.2fT", $size / 1024 / 1024 / 1024 / 1024);
}


# Output
print "$size\n";

Emacs22のインストール (fedora Core 4)

vc-svn使いたさにEmacs22が欲しくなったので久々にEmacsをmake
VineSeedSRPMを元に作成

必要なもの

VineSeed emacs22-22.0.50-0.20060403vl2.src.rpm
http://www.ring.gr.jp/pub/linux/Vine/VineSeed/SRPMS.plus/emacs22-22.0.50-0.20060403vl2.src.rpm より

  • emacs-22.0.50.20060403.tar.bz2
  • emcws-22.0.50-200604020110.gz
  • emacs-22.0.50-locallisppath.patch
  • emacs-21.2-emcws-version.patch
  • emacs-22.0.50-fixed-resolution.patch
  • emacs-21.1-bzip2.patch.bz2

# yum -y install Canna-devel
# yum -y install gtk2-devel
# tar xfj emacs-22.0.50.20060403.tar.bz2
# gunzip emcws-22.0.50-200604020110.gz
# bunzip2 emacs-21.1-bzip2.patch.bz2
# cd emacs-22.0.50.20060403
# patch -p1 < ../emcws-22.0.50-200604020110
# patch -p1 < ../emacs-22.0.50-locallisppath.patch
# patch -p1 < ../emacs-21.2-emcws-version.patch
# patch -p1 < ../emacs-22.0.50-fixed-resolution.patch
# patch -p1 < ../emacs-21.1-bzip2.patch
# autoconf
# ./configure --prefix=/usr/local --with-gcc --with-pop --with-sound --with-canna --disable-rename --with-gtk --with-xpm --with-jpeg --with-tiff --with-gif --with-png
# make bootstrap
# make
# make install

MIB情報の表示

オブジェクトIDで示されたものをMIBシンボル名に変換

# snmptranslate 1.3.6.1.2.1.25.3

MIBシンボル名を数値(オブジェクトID)に変換

# snmptranslate -On HOST-RESOURCES-MIB::hrDevice

オブジェクトIDの全体パスを表示せずにオブジェクトIDを表示

# snmptranslate -On -IR hrDevice

指定したMIBシンボル名/オブジェクトIDの詳細を表示

# snmptranslate -Td .1.3.6.1.2.1.1.1

指定したMIBシンボル名/オブジェクトID以下のツリー構造を表示

# snmptranslate -Tp