トップ 最新 追記

yoggy's diary

〜せかいのすみっこから〜


2006-09-04

zshの補完機能

fishが紹介されてるので、あえてzshの補完機能のアピールをしてみるテスト(笑

以前にも紹介してるのですが、それ以外に個人的にすげーと思ってる補完機能を紹介。

makeの補完

Makefileの中身を見てくれます。

 $ ls
 Makefile  foo1.c  foo2.c  main.c

 $ cat Makefile
 CC     = gcc
 CFLAGS = -Wall -g

 OBJS = main.o foo1.o foo2.o

 hoge: $(OBJS)

 clean:
         rm -f $(TARGET) $(OBJS) *~

 $ make       <-ここまで打ってTABキーを押す
 clean  hoge

     ※makeのターゲット一覧が補完の候補として表示される。

configureの補完

ここまで補完してくれるのは、ちょっとやりすぎのような気がしないでもなかったり…(笑

 $ wget http://jaist.dl.sourceforge.net/sourceforge/w3m/w3m-0.5.1.tar.gz
 $ tar xvfz w3m-0.5.1.tar.gz
 $ cd w3m-0.5.1/
 $ ./configure --enable-     <-ここまで打ってTABキーを押す
 --enable-alarm                --enable-japanese
 --enable-ansi-color           --enable-keymap
 --enable-bgcolor              --enable-m17n
 --enable-color                --enable-menu
 --enable-cookie               --enable-messagel10n
 --enable-dict                 --enable-mouse
 --enable-digest-auth          --enable-nls
 --enable-external-uri-loader  --enable-nntp
 --enable-gopher               --enable-rpath
 --enable-help-cgi             --enable-sslverify
 --enable-history              --enable-unicode
 --enable-image                --enable-w3mmailer
 --enable-ipv6                 --enable-xface

     ※オプション一覧が補完の候補として表示される。
       zshがconfigureファイルの中身を見て候補を表示している。

antの補完

build.xmlの中身まで見て補完してくれるのでびっくり。

 $ ls
 Hoge.java  build.xml

 $ cat build.xml
 <?xml version="1.0" encoding="UTF-8"?>
 <project name="hoge" default="compile" basedir=".">
   <property name="mainclass" value="Hoge" />
   <property name="jarfile"   value="hoge.jar" />

   <target name="compile">
     <javac srcdir="." />
   </target>

   <target name="clean">
     <delete>
       <fileset dir="." includes="**/*.class" />
       <fileset file="${jarfile}" />
     </delete>
   </target>

   <target name="jar" depends="compile" >
     <jar jarfile="${jarfile}" basedir="." includes="**/*.class" />
   </target>

   <target name="run" depends="jar">
     <java classpath="${jarfile}" classname="${mainclass}" />
   </target>
 </project>

 $ ant     <-ここまで打ってTABキーを押す
 clean    compile  jar      run

       ※ターゲットの一覧が補完の候補として表示される。
本日のツッコミ(全2件) [ツッコミを入れる]

kikuzou [Debianでzshを使っているときに気がついたのですが「apt」コマンドの補完をしてくれたときはビックリしました。]

よぎ〜 [apt-get install [tab]で、パッケージ名の補完ができるのはすげーと思います。よく使ってます(笑]


2006-09-07

Gaim 2.0.0beta3.1 has been released

MSNにつなぐとGaimがおちるなぁ…と思っていたのですが、その修正もされてるみたいです。

先月にリリースされてたみたいですが、全然気づいていなかったのでとりあえずメモ。


2006-09-08

おまもり

もらっちゃいました(笑

image


2006-09-13

SGI、IRIX/MIPS製品の打ち切りを決定(/.-J)

一番初めにまともにさわったUNIX環境って、実はIRIXなんだよなぁ…

ありがとうIRIX。君の事は忘れない。

新しいiPod

動画の再生時間がのびたのはいいなぁー

でも、どうせだったらEngadgetに載ってた噂のやつぐらい劇的にモデルチェンジしてほしかった(笑

本日のツッコミ(全2件) [ツッコミを入れる]

TIP [一番初めにまともにr○○tがとれたUNIX環境って、実はIRIXなんだよなぁ… ありがとうIRIX。君のexploi..]

よぎ〜 [↑ワロスw]


2006-09-19

ドコモよりBlackBerry登場(/.-J)

また法人向けだけですか…_| ̄|○


2006-09-21

6桁の数字?

と勘違いして、力いっぱい↓のプログラムを動かしてたよ…(;´Д`)

#!/usr/bin/ruby
require 'open-uri'

sleep_time = 0.3
url_base   = "http://ナイショ/"
url_ext    = ".htm"

start_time = Time.now

def timestr(t)
  d = t.divmod(24 * 60 * 60)
  h = d[1].divmod(60 * 60)
  m = h[1].divmod(60)
  s = m[1].to_i

  return "#{d[0]}day #{h[0]}:#{m[0]}:#{s}"
end

(0..999999).each {|n|
  # print progress
  if n % 100 == 0 && n > 0
    te = Time.now - start_time
    tl = (1000000 - n) * (te / n)
    puts "n=#{n} ... time elapsed= #{timestr(te)}, time left=#{timestr(tl)}"
  end

  # make uri
  num_str = ("000000" + n.to_s)[-6, 6]
  uri = url_base + num_str + url_ext

  # open uri using open-uri
  begin
    open(uri) {|f|
      puts "HIT!! uri=#{uri}"
      exit 0
    }
  rescue OpenURI::HTTPError => e
  end
  sleep sleep_time
}
put "not found..."

…いやー、open-uriってお手軽でいいね。


2006-09-22

LA空港でラップトップ発火事件発生--炎上したのは「ThinkPad」(CNET Japan)

うお、いま使っているノートPCってThinkPad T43だよ…_| ̄|○


2006-09-26

Google Maps

さっき、マウスホイールで地図の拡大・縮小表示の操作ができることに気が付いたよ…いつから対応してたのかな?

…それよりも、マウスホイールの操作ってJavaScriptからどうやって取得してるのかな?

JavaScriptのonmousewheel

なにー、マウスホイール用のイベントがあるって知らなかったよ…_| ̄|○

<html>
  <head>
    <script type="text/javascript">
      <!--
        function wheelTest(e) {
          if (!e) e = window.event;

          if (e.wheelDelta) {
            d = e.wheelDelta;
            if (window.opera) d = -d;
          }
          else if (e.detail) {
            d = -e.detail;
          }

          document.getElementById("msg").innerHTML = d;
        }

        // add event handler
        if (window.addEventListener) {
          window.addEventListener('DOMMouseScroll', wheelTest, false);
        }
        window.onmousewheel = document.onmousewheel = wheelTest;
      // -->
    </script>
  </head>
  <body>
    wheelDelta => <div id="msg"></div>
  </body>
</html>

参考


2006-09-27

ドコモ、HSDPA対応カード端末「M2501」29日発売(ケータイWatch)

データ定額プランが無い状態での販売って…(;´Д`)


2006-09-29

写真で解説する「X01HT」(ITmedia)

ナンバーポータビリティが始まったら、乗り換えちゃおうかな?定額プランが用意されるのもいいかも。

ドコモも思い切ってhTc Zを一般向けに売ればいいのに…

バッテリー自主回収のお知らせ(Lenovo)

会社で使っているT43が対象に入ってるみたいなので、早速試してみた…

…どうやらリコールの対象外だったみたいで一安心。調べてみたら三洋のバッテリだったみたい。

画像の説明

Bloglines

左側のframeが微妙に変わっていることに気がついた。

ブラウザを開いている最中に新着の記事が届くと、フェードインして表示するし。ちょっとかっこいいぞ、これ(笑


2006-09-30

ちょっと感心したスクリプト

KnoppixがシャットダウンしたときにCD-ROMをイジェクトしてるけど、どうやって実行してるのかな?と疑問に思ったので、/etc/init.d/knoppix-haltを見てみたら、一番最後に…

 if [ -z "$NOEJECT" ]; then
 # Preload "halt" command into memory before it is gone.
 $FINALCMD --help >/dev/null 2>&1
 eject -m -p /cdrom >/dev/null 2>&1 &
 if [ -z "$NOPROMPT" ]; then
  read -s -p "${CYAN}Please remove CD, close cdrom drive and hit return [auto 2 minutes].${NORMAL}" -t 120 a </dev/console
 fi
fi
 
exec $FINALCMD $options

    ※$FINALCMDには/sbin/haltが入っている

と、いうコードが書いてあって、すげーと思う。

CD-ROMをイジェクトした後ではCD-ROMの内容を参照できないので、一回ダミーで/sbin/haltを実行しておいてキャッシュに載せる工夫がしてあるみたい。普通にスクリプト書いてたらこの方法は思いつかないよ(笑

サーバダウン&通信障害発生

さっきまでここが見えない状態になってました。現在はとりあえず復旧しています。ご迷惑をおかけしました(;´Д`)

この辺の通信障害に巻き込まれていたみたいなのですが、とりあえずイベント順にメモ。

10:02回線の通信障害発生
10:52Xenサーバがbootしたログが残っていた。どうも電源が落ちたような雰囲気…
13:25回線が復旧。ただこの地点でwww.sabamiso.netは復旧していない。XenサーバのゲストOSとして動いていて手動でブートしているため、ダウンしたまま…(;´Д`)
15:46回線は生きているのにwww.sabamiso.netがダウンしている状態にようやく気が付いて、この地点でようやく起動。無事を確認。

トップ 最新 追記

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