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をどうぞ。


2002年05月02日(Thu)

[ruby] irbsh with mswin32 ruby

mswin32版rubyでのirbshを試してみた。ちょっと試してみたところ問題なさそう。

(defun irbsh-mswin32 ()
  "irbsh with mswin32 ruby"
  (interactive)
  (irbsh "c:\\ruby\\bin\\ruby -S irb --inf-ruby-mode"))

[ruby] irbsh

require 'irbsh-lib'が失敗したときにNameError: uninitialized constant Irbshとなってexitもきかないのがちょっと困る。

[ruby] defined?の問題点

メソッドが実際には呼び出せるのに偽になることがある。method_missingで処理しているもので問題になる。dRubyではrespond_to?を代わりに使えばいい。

必要に応じて中の式を実行する([ruby-dev:16482]のあたりのスレッド)。そういうものです。

[web] Refererなしリンク

Refererがつかないリンクというとメーリングリストでの紹介というのがすぐに思いつきます。

[emacs] Undo

Undoでだーっと戻ってC-gを押した後、UndoのUndoをして戻したかった状態にするという使い方が多いので、C-x uだと連打ができないのが厳しい。

[vim] UndoのUndo

多段Undoの後、UndoのUndoのやり方がわからないので不便。.は違うし。

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

ばけら [専用の Perl スクリプトで GET したとか【謎】。]

助田 [vim の Undo の Undo って Ctrl + r のことですか?]

arton [MLはアタリでしょう。ところでrdindexのほうも簡単に行けますか?]


2002年05月03日(Fri)

[windows] 窓使いの憂鬱

窓使いの憂鬱を使うという手はWindows XP (Home)なので無理そうです。

いつの間にかWin9x系に対応していて機会があったら使えると思っていたらこちらがXPになってしまって結局また使えない環境になってしまったという。

[vim] UndoのUndo

教えてもらったのでよく使う繰り返し系(?)をまとめてみる。説明はvim6のヘルプより。
Undou
RedoCtrl+R
Repeat last change.
Repeat latest f, t, F or T;
Repeat the latest "/" or "?"n
Repeat the latest "/" or "?" in opposite directionN

[ruby] rdindex

rdindexって使ったことないです。

[emacs] keychain

Meadowだとkeychainで起動されたssh-agentを参照する環境変数を親プロセスから継承するのが難しいので、自分で読み込むようにしてみた。 csh用の方が読みやすそうだったのでcsh用の方から読んでみた。前後についてるinit-keychainというのはinitzで読み込むため。

;;; init-keychain.el --- init file for keychain.
 
(unless
    (getenv "SSH_AUTH_SOCK")
  (save-excursion
    (let*
        ((filename
          (expand-file-name (concat ".ssh-agent-csh-" (system-name)) "~"))
         (buffer
          (find-file-noselect filename))
         )
      (set-buffer buffer)
      (setq buffer-read-only t)
      (widen)
      (goto-char (point-min))
      (while (re-search-forward "setenv \\(SSH_.+\\) \\(.+\\);" nil t)
        (setenv (match-string 1) (match-string 2))
        )
      (kill-buffer buffer)
      )
    ))
 
(provide 'init-keychain)

[dict] 英辞郎

104万語になったVer.54.0をダウンロード。

[emacs] PuTTY経由でのUndo

Ctrl + -(0の右横) でUndoできるということなのでやってみると出来た。describe-bindingsだとC--negative-argumentになってるのに。不思議。

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

アバン(永世6級) [英辞郎がダウンロードできるのってどこでしたっけ? and Windowsで使えるクライアントご紹介下さいませ]


2002年05月04日(Sat)

[Perl] 謎コード

連休中に依頼されてCGIを改造した一部。ループの中で交互に左右にずらしたいという要望に応えてこうしてみました。

$tablealign = ($tablealign eq 'left' ? 'right' : 'left');
print "<div style='position: relative; $tablealign: -10%'>\n";
ループの中のここでしか使わないのでmyにしたかったけど、myにするとループで次に回ってきたときに使えないので意味がない。ループの直前にまで戻ってmy $tablealignを入れるのはループの前を探すのが面倒そうだったのと、他でmyがほとんど使われていなかったということで、結局この2行の追加だけにしておいた。他で使われていない変数名かどうかは念のためgrepでチェック。

[tdiary] update

1.4.1にバージョンアップした。

[xrea] banner

広告HTMLと<!--nobanner-->を埋め込むようにしてみたらLast-Modifiedが消えなくなったみたい。


2002年05月05日(Sun)

[web] User-Agent

HTTP/1.1はObsoleteなRFC2068よりもRFC2616を。

MIMEにあわせるならヘッダ自体ではBエンコードやQエンコードを使うことになるのかも。

[tdiary] ダウンロード

むこうに書いたら埋もれてしまった気がする。

[ruby] 付箋

Windows(XP Home) + cygwin上で使ってみた。 インストール。
$ ruby install.rb setup
install.rb: entering setup phase...
setup failed
hook /tmp/fusen-pre0.6/./pre-setup.rb failed:
No such file or directory - "bin/fusen"
try 'ruby install.rb --help' for usage
$
失敗。setup phaseが出来ないのであきらめて、srcの中で直接起動。Gdk-CRITICAL **: file gdkwindow-win32.c: line 1552 (gdk_window_get_geometry): as sertion `window == NULL || GDK_IS_WINDOW (window)' failedとでる。不吉。 インストールできてないので英語メッセージのままなのが不便。Linux上でちょっと試したときにも思ったけどExecって意味が分かりにくいです。 文字化け、じゃなくて編集中の文字が表示されない。フォント設定を発見したのでMS UI Gothicに設定。MSゴシックとかは選択肢の下の方の読めないところにあるみたい。編集後の付箋状態では読めるようになったけど、編集中はやっぱり読めない。 バックグラウンドにしても右クリックででてきたメニューが消えないのがじゃま。

[cygwin] バッチジョブを終了しますか?(y/n)

bashを終了したときにメッセージがでてくることがあるけど条件がよくわからない。yとnで何が違うのかもわからない。

[web] Q要素

Operaでは""でくくられて表示されていた。

ruby要素はタグを削るだけでも問題ないようになってるのにQ要素は全然違う印象を受けるようなものになってしまっているのはどうしてだろう。

[emacs] session.el

新しいのがリリースされていたらバージョンアップしようかと思ってみてみたらsf.netに移動していた。 (add-hook 'after-init-hook 'session-initialize)が実行されないのがなぜかと思ったら、(add-hook 'after-init-hook 'initz-startup)で呼ばれている中でadd-hookしているからのような気がした。 find-file-noselectで開いたファイルもfile-name-historyに残ってしまうようだったので.ssh-agent-csh-も無視するようにしてみたけど、historyに残らないファイルに開く関数を探した方がよさそう。 mhc-category-histなどのmhcのhistoryも残せるようにするためにoryを省略可能な正規表現に差し替えた。

  (require 'session)
  (setq session-set-file-name-exclude-regexp
        "/\\.overview\\|\\.session\\|News/\\|\\.ssh-agent-csh-")
  (setq session-globals-regexp "-\\(ring\\|hist\\(ory\\)?\\)\\'")
  ;;(add-hook 'after-init-hook 'session-initialize)
  (session-initialize)
本日のツッコミ(全19件) [ツッコミを入れる]

Before...

aldara [aldara http://pomm.a]

miss [internet advertising]

cukimbo [aldara http://aldara]


2002年05月06日(Mon)

[dict] 英辞郎

いつもwwwの方からリンクをたどってダウンロードしてますが、memberの方にはダウンロードへのリンクが直接はないみたい。

検索はLinuxならeijiro-fpwで変換して検索、WindowsならDicCreatorに変換してDDwinで検索するのがよさそうな気が。

[tdiary] @debug = true

plugin/@debug.rbとして@debug = trueを実行するだけのファイルをおくとか。@なのはソートしたときに前の方にくる文字のはずだから。

途中に追記すると後ろのアンカーがずれてまずいような気が。

[ruby] 付箋/Ruby再度

RemoveのExecもAlignのExecも最初見ただけでは何が起こるのかわかりにくかったです。ちょっと試してみればわかるので他にいい表記がなければこのままでもよさそうな気が。 表示されない部分はGTKの設定の問題ということのようです。cygwinのsetup.exeでばしばしインストールしただけなので、.gtkrcの設定がよくわからず。~/.gtkrcを以下の内容で作成しても、変化が無かった。

style "default"
{
	fontset = "-unknown-MS UI Gothic-normal-r-normal-*-*-120-*-*-p-*-jisx0208.1983-0"
}
バックグラウンドにするというのはAlt+Tabなどで別の窓にフォーカスを移動してもメニューが消えないということです。これもGTK自体の問題のような気がするけど。

[ruby] 付箋/Ruby続き、というよりGTKの話?

install出来たのでfusenで起動。英語のまま。cygwinはLANG=Cのままにしていたのを思い出して、LANG=ja_JP.shift_jis fusenとかLANG=ja_JP.eucJP fusenとかLANG=ja fusenとかLC_ALL=ja LANG=ja fusenとかいろいろ試してみたけれど英語のまま。

cygwinでlocaleコマンドが使えなかったのが不便に感じた。


2002年05月07日(Tue)

[vim] syntax on ruby

when /=/の色つけが変な気がする。/=までが黒のままで後ろの/から正規表現と見なされてる感じ。


2002年05月08日(Wed)

[ruby] 付箋/Ruby

Linux上でいつもの/tmp/$USER以下のCVS版rubyのところにインストールしようとしたらPermission denied - "/usr/share/locale/ja/LC_MESSAGES/fusen.mo"install failed。いい方法を思いつかなかったのでpre-install.rbをinstall catalogue fileの前でexitさせて、とりあえずインストール。 実行、と思ったらインストールされてなかった。bin/fusen,cd lib;../bin/fusenでGTKが/tmpには入ってなかったことに気づいて、ruby install.rb config; ruby install.rb setupし直し。 cd lib;../bin/fusenで無事起動。rc fileは最初だからないので問題なし。とりあえずSave nowしてみたら終了してしまった。一度作成されてしまえば問題なし。

rc file(/home/kazu/.fusenrc) read error...
../bin/fusen:2415:in `save': undefined method `[]' for nil (NameError)
        from ../bin/fusen:2350:in `open'
        from ../bin/fusen:2350:in `save'
        from ../bin/fusen:870:in `initialize'
        from ../bin/fusen:869:in `call'
        from ../bin/fusen:5479:in `main'
        from ../bin/fusen:5479

[web] Last-Modified

HEADとGETで返してくれるヘッダが違うというmod_layoutの罠?

[web] Opera

RWikiのソース表示がダウンロードになってしまうのが不思議。

[ruby] 付箋/Ruby

.gtkrcの書き方は調べてもよくわからなくて困っていたのですが、widgetの指定を追加して解決しました。

style "default"
{
	fontset = "-unknown-MS UI Gothic-normal-r-normal-*-*-120-*-*-p-*-jisx0208.1983-0"
}
widget "*" style "default"

[ruby] 付箋/Ruby on Cygwin

相変わらずGdk-CRITICALがでます。付箋なしだとでなくて付箋を作ったらでるみたい。一番最初の窓はタイトルバーなどがついているので移動可能だけど付箋はドラッグで移動できないのが不便。Windowsで直接じゃなくてXを起動してその中で使わないとだめ?

Gdk-CRITICAL **: file gdkwindow-win32.c: line 1552 (gdk_window_get_geometry): as
sertion `window == NULL || GDK_IS_WINDOW (window)' failed

[ruby] 付箋/Ruby on Cygwin / gettext

Shift_JISに変換というのをやってみようと思ったらpoからmoへの変換方法がわかりませんでした。 せっかくなのでC:\cygwin\usr\share\locale\ja\LC_MESSAGESにmoがある他のものをLANG=jaで試してみたら、ちゃんと日本語で表示された。ということは文字化けのものさえ表示されなかったのはちゃんとインストールできていなかったから?

$ LANG=ja bison 2>&1|ruby -rnkf -pe'$_=NKF.nkf("-Es",$_)'bison: 文法ファイルが指定されていません

2002年05月09日(Thu)

[ruby] 付箋/Ruby on Cygwin / Ruby/GTK

無謀にもserverにつないでみたら、大量のWARNINGとともに文字化けした付箋がでてきた。元の窓が行方不明になってしまったので、Ctrl+Cで終了した。

Gdk-WARNING **: gdk_text_extents: gdk_nmbstowchar_ts failed
Gdk-WARNING **: gdk_draw_text: gdk_nmbstowchar_ts failed

[debian] portmap

以前にNFSをちょっとだけ使っていたのでportmapが入って、そのままになってしまっていたのでpurge。

[ruby] TrueClass or FalseClass

UnitTestを書いていて、TrueClassとFalseClassだけの共通の親クラスがあれば、assert_kind_of(BooleanClass, hoge)のようにできたのに、と思った。

[ruby] UTF-8への変換

cygwin版でiconvもUconvも入ってるのでこちらの環境的にはどちらでもよさそうです。どう違うのかわかってませんが。

[ruby] 付箋/Ruby on KDE2

問題なく起動。chmod 600 ~/.fusenrcを勧めるのなら最初からumask 077でファイルを作ればいいのに、と思ったり。

サーバにつなげてみたら、たくさん付箋が開いた。画面外にはみ出している部分を読むのに移動はどうすればいいのかと思ったら、KDEなので(?)マウスの真ん中ボタンのドラッグで移動できた。

anonymousなので当然編集不可能。付箋をwindow managerの機能で閉じるとread onlyだからエラーがでるけどちゃんと(?)閉じる。もう閉じてしまった付箋に更新メッセージがきたらやばそうという不安を感じて終了。

[gettext] msgfmt -o ja.mo ja.po

メモ。

[ruby] RWiki diff

さらに読みやすくするためにCGI.unescapeを追加して/usr/bin/cvs -fq diff -uN -F'^[=+:-]' | ruby -pKe -rcgi -e 'if ~/^RCS/ then sub!("/.*/",""); $_=CGI.unescape($_) end' | /usr/bin/nkf -jとしてみた。

[cvs] Connection reset by peer

なぜかcvs [checkout aborted]: recv() from server cvs.m17n.org: Connection reset by peerのようにつながらないところがあるので別経路でつないでみるとあっさりつながる。途中の経路のどこかが変?


2002年05月10日(Fri)

[RWiki] 尻切れPOST

man-1.6で無駄な空白を1つ消そうとしただけだったのに操作ミスでSaveを連打してしまって、1回目が尻切れPOSTで2回目がrevision mismatchとなってしまった。mandiffで気づいたのですぐになおしたけど。

[web] Googleのie,oe

Operaの検索用の窓で検索するとhttp://www.google.com/search?q=google&sourceid=opera&num=0&ie=utf-8&oe=utf-8のように勝手につきます。

つっこみをするのに画像が表示されないとURLをすぐにコピー出来なくてリンクするのが不便。

[ruby] Hash#default

h = Hash.new(Hash.new.freeze)という感じのHashでh[key] ||= Hash.newしてはまった。やりたかったことはunless h.key?(key); h[key] = Hash.new; endという感じ。

[ruby] 継続行

こんなことをやってみたら、継続行にならない種類の行もあるということで失敗。

last_line = ''
lines.each do |line|
  last_line << line
  if /\\$/ === last_line
    last_line = $`
    next
  end
  line, last_line = last_line, ''
  # ...
end

[ruby] 継続行

結局case lineの途中にwhen /\\$/を入れてみた。

[web] Operaと「〜」

OperaでRWikiの編集をすると「〜」が「?」になってしまって困ります。意図しない変更をしてしまったと思ってもOperaだと元に戻せないという罠。

[web] 謎の認証

こちらでもでました。

[tdiary] つっこみ

文章が短いとどこへのつっこみかわかりにくいことが。

[cygwin] bash

そういうことだったとは。

今までよくわからず.bash_profileから.bashrcの実行をcygwinのときだけ止めていたのを止めなくてよくなっていたので不思議に思っていたのでした。

[ruby] ruby-core ML

みんな同じことを思っていた気がする。

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

Before...

aldara [aldara http://pomm.a]

miss [internet advertising]

cukimbo [aldara http://aldara]


2002年05月11日(Sat)

[cygwin] I18n extension for Cygwin DLL

これが取り込まれたらファイル名にShift_JISの2バイト目の\が含まれる場合の問題とかが解決する?

[ruby] sort {|x, y| -(x <=> y)}

-をつけるよりもxとyを入れ替える方がいいのでは?

[web] 伝搬の研究

ebanさんの発見報告で存在はわかっても場所がわからなかったので、Linkavailable: Ruby diaryに載るまで待ってました。

[ruby] JARH

ebanさんのまねをしていろいろやってたのを思い出します。

200103.html#07_t1のJARH for Ruby, Perl, C, awk and sh。

[calendar] 祝日

リンク先に深い意味はありませんが、祝日データをMHCなどのいろんなソフトで使い回せる共通の形式があれば更新なども楽でいいのに、と思ってみたり。

使い回せる形式というとXMLですが、現状はまだまだparserが普及していないので気楽に読み込むのはつらそうです。

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

kjana [.なんで思い付かなかったんだろう? 視野狭窄.ぐぅ.]


2002年05月12日(Sun)

[tdiary] theme

テーマを変更してみようかと思って見てみようとしたけどナローバンドではきつかった。なぜかサンプルのページのtDiaryのバージョンが1.4.0なのが気になりました。

[web] Operaの画像表示

必要な画像が表示されなかったり、オフにしていてもスタイルシートで指定されている画像は読み込んできたりとなんかいやな感じ。クイック設定にもGIFアニメーションのオンオフしかないし。

[emacs] info

C-u M-x infoでdirに登録されてないファイルも開けるとIRCで教えてもらった。

[web] OperaのG

Gは結構使ってるんですが、Gを押す前に表示されてる画像があるのがだめっぽい。

[web] cookie

WEBrickを使ってHNSをローカルで使おうとしたらRURIコードが変わりまくってしまってadmini.cgiが使えなかった。

#!/usr/local/bin/ruby
 
require 'webrick'
 
s = WEBrick::HTTPServer.new(
  :BindAddress  => "127.0.0.1",
  :Port         => 2000,
  :Logger       => WEBrick::Log::new($stderr, WEBrick::Log::DEBUG),
  :DocumentRoot => '/var/www'
)
 
s.mount("/~kazu", WEBrick::HTTPServlet::FileHandler, "/home/kazu/public_html")
 
trap("INT"){ s.shutdown }
s.start
本日のツッコミ(全3件) [ツッコミを入れる]

びい [Operaの画像表示切り換えはG。Gを押すのだっ。]

ただただし [あれは1.4.0の時に作ったスナップショットだからさ〜]

あおき [なるほど! テスト中にどのコードを通ってるのかわかれば使ってないメソッドもわかりますね。やってみます。]


2002年05月13日(Mon)

[web] Opera for Linux

6.0 Beta 2をdeb QT Staticで入れてみた。Menu barを間違えて消してしまってGUIでは戻せなくて結局~/.opera/opera6.iniShow Menu=01に変更して戻した。

日本語が文字化けするのでフォントのNormalをjis-fixedに変更。

[cygwin] wget setup.exe

wget -N setup.exeでダウンロードしたsetup.exeが実行できなかったのでchmod +x setup.exeしてから実行した。環境変数CYGWINにntsecを入れているのが原因のはず。

[cygwin] setup.exe

/usr/local/doc/ruby/soap4r-1.4.4.1/test/interop/clientSOAP::Liteで進めなくなったのでキャンセル。::がまずい気がする。

[ruby] Regexpと$KCODE

「バンプ レスト 社員&hl=ja」みたいになるのは$KCODEだから。

disp_referer/#{url}/i/#{url}/inにするかref = CGI::unescape( ref )str = CGI::unescape(ref.gsub( /#{url}/i, name ))のように後回しにすればいいはず。

$KCODE="NONE"を期待して予想外のマッチをしてしまうというのはありがちなバグのような気がします。


2002年05月14日(Tue)

[ruby] cygwin GTK Tk

cygwinだとGTKは簡単に使えるけどTkは面倒そう。setup.exeで確認するとsetup.exeでインストールできるのは8.0みたい。

$ ruby -vrgtk -e 0
ruby 1.6.7 (2002-05-10) [i386-cygwin]
-e:1: warning: useless use of a literal in void context
$ ruby -vrtk -e 0
ruby 1.6.7 (2002-05-10) [i386-cygwin]
/usr/local/lib/ruby/1.6/tk.rb:7:in `require': tcltklib: tcltk_stubs init error(-1) (LoadError)
        from /usr/local/lib/ruby/1.6/tk.rb:7

[ruby] RUBY_PLATFORM

msvcrt版ってi386-msvcrtのように完全に置き換えになるんでしょうか?それともi386-msvcrt-mswin32かi386-mswin32-msvcrtのように追加になるんでしょうか?

置き換えだと動かなくなるスクリプトがでてきて互換性に問題がありそうな気が。

[web] Opera iso-2022-jp

Operaがiso-2022-jpのページを自動判別の設定で表示すると文字化けするのが不便。


2002年05月15日(Wed)

[emacs] bg66's Page: luna で OOP しよう

lunaの数少ないドキュメント。

[RWiki] RTtool拡張で表の中に , を入れられない?

ConfigBlockで区切りを,以外にすれば使えます。

[web] http

SERVER_PROTOCOLってSERVERとついているのにApacheのCGIだと実際にはクライアント側のリクエストラインの情報が反映されていた。

[ruby] C風のswitch構文(breakしないと次も実行)の実装例

2002/05/14のところ。callccを使わなくてもcatchthrowでいいような気がする。

[cygwin] SOAP4R 1.4.4.1-1

1.4.4.1-1-1になってる?

ruby本体だけExpのバージョンで他はCurrのままということがしたいけど、ラジオボタンでCurrを選んでいるとruby本体がリリース時点の1.6.7に戻ってしまう。

[nikki system] 途中追加

途中に追記したくなったときにサブセクションがないと後ろにずれるから対応しているシステムが多い(?)のかもしれない。

[http] keep-alive

HTTP/1.1を名乗ってApacheにつないでみたらつながったままになっていて驚いた。tcpdumpでwwwをみてみたらMozillaがNOOPらしきパケットをとばしていた。

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

ひだか [RTtool のは、コンマが本質というよりも、エスケープが全くできないのが問題かなぁと。]

Tosh [catch & throwでなくcallccを使ったのはただの趣味。Rubyから無くなってしまう前になるべく使ってお..]


2002年05月16日(Thu)

[ruby] 全プラットフォームで、[BUG]のメッセージも出さずに異常終了した場合はスタックオーバーフロー

ruby-win32:151より。全プラットフォームっていうことはwin32以外も含むってことですか。ruby-devに移動に一票。

[RWiki] ヒビルテのRWiki

Errno::EACCES: Permission denied - "/home/s01397ms/wwwdata/RWiki/log/RWikiCGIApp.logがでてるのはwwwからwebへの変更と関係がある?

[mail] sf.netのML対応

List-Postに対応するとReply-Toがなくてもなんとかなる?

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

なかだ [とりあえずドキュメントの話だけrubyistに振っときましたんでよろしく。 # 日曜まで留守です]

さかい [RWikiは、wwwからwebへの移行に伴うSuExecの採用で CGIの実行ユーザが変わって、logが書けなくなっ..]


2002年05月17日(Fri)

[ruby] signal

trap(:WINCH){p [ENV['COLUMNS'],ENV['LINES']]}としてwindowのサイズを変えてシグナルを観察。これだけだとあんまり意味ないけど。GNU screenの中だと最初はきてたのにputtyの方をリサイズしてこなかった後から、krxvtの方でもこなくなってしまった。

[ruby] Windowsでの大文字小文字

ruby -vdr win32api -e 0のようなLoadErrorを防止するために、$DEBUGがtrueか$VERBOSEがtrueのときにLFNを調べてLFNとrequireされた名前が違っていたらLoadErrorじゃなくてもwarningを出すようにすればrequire 'Date'のようなWindowsのようなFS上でしか動かなくなるスクリプトを防止できるのではないかというのを思いついた。

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

kjana [前に ruby-talk で platform dependent なコードをライブラリ化, っていう話をしてた時に..]


2002年05月20日(Mon)

[tdiary] つっこみメール

メールにリンク用の文字列が入っていると後で反応するときにいちいちURLを確認しなくてすむので便利な気がする。

[ruby] インタプリタ自体のargv[0]

install.rbexecするのにはruby決めうちじゃなくてConfig::CONFIG['ruby_install_name']を使ってもらうパッチを送ったことはありますが。

というわけでrbconfig.rbにあわせるのならruby_install_nameになるけどあんまり実行時に参照する感じの名前じゃなさそう。

[tdiary] つっこみURL

myプラグインの引数用の文字列だけでもついてるとよさそうな気が。

[cvs] LOGNAME

一般ユーザ権限でログに残るauthorを変更するのにcvsコマンドの内部でuidが0以外の時はLOGNAMEが無視されるので、LOGNAME=hoge fakeroot cvs cifakerootを使えばいいことに気づいた。

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

ただただし [それは考えたことあるんだけど、手持ちの情報から正しいURLを生成する自信がない……。いや、たぶんできるんだけど。]

ただただし [それなら設定の「メールヘッダ」に「%Y%m%d#c」と入れれば……あ、よけいな「-」がついちゃうな。うーむ]


2002年05月21日(Tue)

[Windows] XP Homeの共有設定

パスワードの設定が出来ないらしい。


2002年05月22日(Wed)

[ruby] file.binmode

後からbinmodeにするよりも"rb"で開けばいいだけのような気が。

[tdiary] 設定ミス

つっこみのメールのヘッダの設定を変えたつもりが表示の日付フォーマットの方を変更してしまっていたので修正。

[ruby] 0xa0

Ctrl+zつまりEOF?と思ったけど関係なさそう。

[ruby] Process JARH

各種子プロセス生成を使ったJARH。標準入出力を付け替えた子プロセスをシェルを経由せずに安全に起動するにはforkしてexecする以外の方法はない?

systemは複数の引数でシェルを経由しないが、標準入出力の付け替えが出来ない。

popen(open('|command')も同様)はシェルを経由してしまう。標準エラー出力の付け替えも出来ない。

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

よしだむ [Latin1のNBSPでしょうね]


2002年05月23日(Thu)

[ruby] etc

irbでrequire 'etc';a1=[];Thread.new{Etc.passwd do |a|a1.push a;Thread.pass;end};a2=[].taint;Thread.new{$SAFE=4;Etc.passwd do |a|a2.push a;Thread.pass;end}.valueとして、a1 != a2となることを確認した。

つまりEtcはマルチスレッドセーフではないし、セーフレベルも考慮されていない。

(1以上に)セーフレベルをあげているとrequireができないので、別のところでrequire 'etc'している場合のみ、セーフレベルが高い環境でもpasswdgroupの(一般ユーザ権限で読み出し可能な)情報を読みとることが出来る。


2002年05月24日(Fri)

[web][Opera] pre

Operaでpreの表示がおかしいときはフォントの設定を直せばいいはず。

tableの幅の計算が変なことがあったり、iso-2022-jpのページが文字化けしたりするのは直りそうにないけど。


2002年05月25日(Sat)

[Windows] command.com

Windows XPにもあるということを知って驚いた。

[ssh] ssh_config

sshd_configとssh_configを勘違いして悩んだことが。

[zsh] 負荷がかかると赤くなるプロンプト

colorsを使うとzsh3系のところで使えなくなるのでまだ使ってないです。potato…。

ファイル読み込みは$(の方がいいかも。

パターンマッチは前後を気にせず*0.[012]*)のようにするのじゃだめ?

負荷をあげるにはmake -jとか。実家マシンはdistributed-net clientを動かしてるから常に1以上だけど。


2002年05月27日(Mon)

[RWiki] 分離

rw-cgi.rb側はフルインストールしなくてもrw-config.rbと他のrequireしてるファイルだけインストールすればいいんじゃないかと思ったらそれがrw-lib.rbでしたか。RWikiはファイル配置などを再構成しているようなので、今のうちに要望しておけば採用されやすいかも。

[web] iso-2022-jp

Operaがiso-2022-jpだと文字化けするのでMemoranda: Index(Indexのみ)がいつの間にかiso-2022-jpになっていて文字化けするようになってしまってちょっと悲しい。

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

kjana [.scp がコード変換してるとか,そういう不思議なことがない限 り私が書いた HTML って全部 iso-2022-..]


2002年05月28日(Tue)

[Linux] mkisofs

home/=/homeのような=を使った引数が使えなくて悩んで、結局-x /procのように-xを使った。

[cygwin] zsh

zshが入った。コマンドプロンプトから起動してみたらプロンプトが$P$Gに…。

[Web][Opera] iso-2022-jpで文字化け

Content-Type に Charset がついてないと化けるということだったみたいで、今は化けなくなりました。

pribnow boxは今でも化けるので確認してみたところ、<meta http-equiv="Content-Type" content="text/html; charset=iso-2022-jp" />はあってもヘッダの方はContent-Type: text/htmlだけでした。


2002年05月29日(Wed)

[Opera] 6.03

最新のOperaに勝手にファイルをアップロードする穴ということで6.03にバージョンアップ。

[ruby-core:75]

FYI, some compilers (ex. GCC) are satisfied with const.という文の意味がさっぱり分かりませんでした。他もほとんどわかってない気がしますが。

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

なかだ [うぅ。すいません、ヘタな英語で。 static char sccsid[]にconstを付けると、staticな変数..]


2002年05月30日(Thu)

[web] DonutRapt

Operaは使いにくいし、セキュリティホールの情報の流れがいまいちだったので、メインブラウザをDonutRaptに戻した。

[ruby] [BUG]

1.6をcvs -q upして新しいのに入れ替えたら[BUG]で落ちまくり。btを見てみるとgcで落ちていた。仕方がないのでcvs up -D '1 week ago' -r ruby_1_6で1週間ぐらい前にしてみたら落ちなくなった。

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

MoonWolf [IEのお気に入りと同期しないのが気にならなければ、Sleipnirおすすめです。私はDonutRaptから移行しまし..]

ただただし [Sleipnirいいっすよ。うん。]


2002年05月31日(Fri)

[ruby] File.expand_path(hoge).tainted?

File.expand_path('~/hoge')tainted?trueになるのでなぜかと考えてみたらENV['HOME']を使っているからだった。

ちなみにFile.expand_path('~hoge/hoge')ではtainted?falseになる。

他には相対パスだとtaintになって絶対パスだとtaintにならないみたい。

目的としてはCGIとして呼び出されたスクリプトの中でライブラリの$LOAD_PATHを自動設定したかったということなので、結局ENV['HOME']の設定されていないCGI環境ではFile.expand_path('~/hoge')は使えなかった。

[browser] Sleipnir

お勧めされたので使ってみている。

Operaが使いにくかったのはCtrl+Tabですぐに切り替わらない、textareaに入力中に途中でフォントが変わることがある、など。

[browser] proxy.pac

うまく設定できない気がするけどデバッグ困難。Operaの時は完全に無視されてるような気がして使ってなかったけど、せっかくなのでまた使おうとしているところ。

[term] backspace

一部の環境(ktermやputtyjpの中のscreenの中のvimやlessとか)でBackspace出来なくて^?になってしまうのが不便。

[browser] Sleipnir

Ctrl+Tabで右から左に切り替わることがあって使いにくかったのでDonutRaptに戻した。せめて並べ替えたら…、と思ってタブをドラッグアンドドロップしたらマウスカーソルに+がついていないのにコピーされるという点なども使いにくかったし。

[term] stty erase ^?

してたような?と思ったらstty intr "^C" erase "^H" kill "^U" werase "^W" susp "^Z" stop "^-"しかしてなかったので追加してみたけど今試せる環境ではおこっていなかったので確認はまた来週。

[ruby] 付箋/Ruby

メールの送り先をはげしく勘違い…。Rubyのgettextっていくつかあったけど、もしかしてdebianのパッケージになってるものって付箋/Rubyで使われているものとは違う?

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

なかだ [stty erase ^?しておくとか?]

\ay [付箋Rubyが対応しているのはgettext-packageなので、debになっているやつではないはずです。]

むとぽん [なははは(^^;)。]


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