トップ 最新 追記

2006-09-01

_ EUC-JP 環境での Emacs からのコピペ

最近(ここ 2 週間くらい?)Emacs から firefox にコピペできなくてちょっとだけ困っていた.そんなにやらないので気にしてなかったけど,今日どうしてもやりたくなってできなかった.ASCII は出来るので日本語だけみたい.

で,またもやすぎしに聞いてみた.彼は UTF-8 環境を使っているからか,何もしなくてもコピペできていた….で,しばらくしたら「x-select-enable-clipboard ってどうなってます?」って聞かれた.これを t にしたところ,無事コピペできた.

追記:これだけじゃダメだった.set-clipboard-coding-system で compound-text を指定しないといけない.デフォルトは compound-text-with-extensions.extensions が何なのかはわからないけど,とにかくこうすればいい.

まとめると,以下の設定を .emacs に書けばいい.

(set-clipboard-coding-system 'compound-text)
(setq x-select-enable-clipboard t)

追記2:これやったら逆ができなくなった….aterm から emacs へのコピペが….しかたないのでペーストだけ関数をかかないといけないかな.

その真相は?

まずはじめは文字コードの問題じゃないの?と疑って,「set-clipboard-coding-system」などをいじってみた.すぎしの環境だと,これで設定を変えることで,コピペ先にひっつく文字コードがかわっていた.なるほど.でもぼくの環境だとどれに設定してもダメ.

で,上記の設定がでてきたんだけど,これは X のクリップボードとは別に,GNOME とかが使っている独自のクリップボードがあって,そっちにも同じものをコピーするという設定らしい.よくわからないけど,この設定で成功するということは,そっちのクリップボードを使っているということ?

くわしいひとヘルプミー.


2006-09-05

_ prom-mew for Mew 5.1

最近、時間と心の余裕があるときには prom-mew をさわっている。パッチをあてても Mew 3.2 までの対応しかないから、5.1 では動かないので。

なぜこんなことをしているかというと、こないだ aptitude upgrade を初めて使ったら(いままで apt-get していた)、dselect(dpkg)で hold してあった Mew を最新版に上げられてしまったから。元に戻すことはできたんだけど、せっかくなのでふつうのMew を使ってみようと思い、使い始めたのはいいんだけど、メールを読む時間が倍くらいになってしまった。

いままで自動で振り分けをしてから読んでいたのが、振り分けもなく到着順に読まされるので、話の流れがいたるところで遮られる。会社ではかなり多くの(おそらく技術部長の次か、最も多いかどちらか)メーリングリストを subscribe しているので、社内のいろんな話題が混在してしまう(spam はそれ以前でほとんど遮断しているので滅多に目にしない)。Mew の振り分け先予測設定も自分の思い通りにはなかなかいかないのでそこも毎回面倒。

いまさら昔に戻るのもアレだし、prom-mew の IMAP 対応(IMAP サーバ側でメールを振り分け、新着・未読のものだけ表示)したいなとも思っているので、prom-mew の Mew 5.1対応をやってみようと思ったのだ。

でも意外と障壁は高い。elisp の知識ほとんどなかったし、Mew と密接に関係しているのでMew の内部をわかっていないとどの関数を使っていいのか、どのファイルを読めばいいのか等がわからないから。Mew の内部構造は大きく変わっているので、昔の prom-mew のコードは全然動かない。なくなっている関数や変数もあるので、それらをうまく置き換えていかなければならない。

エラーが出るところを一つ一つつぶしていってるけど、それで正しい動作をしているのかどうかはわからない。まだまだ先は長そうだ。


2006-09-10

_ リリースが遅れること

リリースは政治パフォーマンス?を読んで、頷けることもそうでないこともあるなぁ、と。

Ruby の配布物は大きくなりすぎている?

まつもとさんご自身も指摘しておられるように、Ruby の開発には非常に多くの人が参加している。Ruby は標準で添付されるライブラリをすべて含んでの「Ruby」なので、まつもとさんの目が届かないところも多い。彼らが皆まつもとさんの部下であれば、スケジュールを守らせてきちんとリリースしていることだろう。でも、みんなが自発的にやっているプロジェクトであれば、リリースエンジニアリングもまた自発的になってしまう。いくらまつもとさんが「ここまでにやるぜー」といっても、他の人がそれに合わせてうごいてくれなければうまくはいかないものだ。

で、Ruby を昔みたいに小さくすればいいという話もあるけど、それだとサーバレンタル業者が導入しにくい(いろんなライブラリをいれないといけない)ので Ruby の普及の妨げになる、と。でも、ここまで Ruby は利用者が増えたんだから、またもう一度小さい配布物にもどっても良いのではないかと思う。ライブラリ群は(Ruby のリポジトリで管理はするけれども)リリースは個別に行う、とか。Debian などのディストリビューションを利用すれば、パッケージメンテナが面倒なことはすべてやるから、管理者は必要なパッケージを入れればよいだけ。いまさら make installで導入しているようなレンタル業者は残っていないのでは?(freeBSD とかは make install するかもしれないけどさ、ports はパッケージに入れるということで)

まつもとさんが面倒をみられる範囲のみまつもとさんがリリースする。そうでないところは知らない、と。

OSS と仕事は違う?

slashdot.jp のコメントで、「リリース期日を守るのは仕事をする社会人として当然だ」というものがあった。仕事の納期にたとえているコメントもあった。でも、仕事で対価をいただいてやっていること(まつもとさんは確かに Ruby の開発で会社から対価をもらっているだろうけど、その見返りに「リリース日を守れ」とは言われていないと思う)と OSS のボランティア開発とは違うのではないか、と思う。ぼくは、本業で手一杯だったり、精神的に不安定になったこともあって、Debian の作業を放り投げてしまっている。でもそれはある意味仕方のないことだと思う(もうちょっときちんと引き継ぎはできたとは思うけど…)。仕事みたいに神経すり減らしてやってしまったら辛いので、自分の出来る範囲で行いたい。だって趣味なんだから。

Ruby だって同じ。趣味なんだから自由にやりたいよね。そりゃいろんなしがらみもあって、完全に自由にとはいかないだろうけど、自分の納得する形でリリースするのは当然だと思う。もちろん、忠告を聞かないとかそういう意味ではない。意見をいったり問題点を指摘するのは良いと思うし、それがなければ良くはならないだろう。でも、ユーザが「自分の思い通りにならない」といって非難するのはちょっと違うんじゃないのかな。mput さんの反応はなにか違う気がするんだよね。

開発者はそんなに暇じゃない?

「リリースするときにはこうしてほしい、こうしてくれ」というコメントがいくつかあった。いや、それだけじゃなくて「…を充実してくれ」とかね。しごくもっともな意見ではあるんだけど、なかなかそうはいかない部分が多い。なぜなら時間がないから。やりたいことはたくさんあるけれど、出来ないってことが多い。みんなもそうでしょう?やりたいことたくさんあるけど、時間ないでしょう?OSS 開発者だって同じで、(多くは)仕事があって、生活があって、そして数多くの趣味の中のひとつが OSS 開発なんだよね。だから、時間って限られてしまう。ましてや、まつもとさんは 3 人 4 人のお子さんがいるお父さんなんだから、自由に出来る時間はけっこう少ないはず。

でも、開発者が一人から二人になり、二人から三人になり…って増えていくと、その分だけ開発にかけられる時間が増えていく。だから、一人が少ししか時間をかけられなくても、大きな仕事ができたりする(まぁ、コミュニケーションコストなどが馬鹿にできないくらいかかるけどね…)。だから、ほんの少しずつでもいいので、必要があれば手を貸してあげて欲しい。たとえば、ドキュメントが不足していると思ったら、一行でも書いてみるとかね。

リリースマネージャはやっぱり欲しい!

でもやっぱり、リリースマネージャは欲しいよね。大きいプロジェクトならとくに。Linux がやってたみたいに、パッチをまとめる人がいたり、コンポーネントごとに担当者がいたり、ピラミッド構造になってたり…とかいうのもアリだと思う。Ruby はプロジェクトとしても大規模だし、いろんなディストリビューション・OS に採用されているので影響度も大きい。なので、リリースマネジメントは慎重に行った方がいいとは思う。リリースの目標(バグをつぶすのが目標、期日を守るのが目標、新機能を実装するのが目標)をリリースごとに決めて、その目標にあわせてリリースする形が理想かな。たとえば期日を守るのが目標だったら、バグがつぶれてなかったとしても(問題が大きくないと判断したら)リリースしてしまうとか。

このあたりをまとめるのがリリースマネージャのお仕事。だから、ソフトのことなんて何も知らなくてもいい。わからなかったらまつもとさんなり担当者の人に聞けば良いんだから。いろいろ聞いて相談しながら、まとめていくだけ。だから技術者が好きな仕事ではないのだ。OSS にかかわっているのはほとんどが技術者。この環境ではなかなか「おれがリリースマネジメントしてやるぜ」という人は出てこないよね。ぼくは技術者じゃないので、結構好きだったりするけど(でもきちんとできないからダメ orz)。

まぁほかにもいろいろあるけど、とりあえずこんなところで…。どっちの言い分もわかるんだけどねー。見ている点が違うので、どうしてもすれちがいになる。

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

Before...

_ asian sex trip [ Mistress nikki agreed. Mistress nikki agreed. Even she wo..]

_ lesbian foot se [ It _end_. It _end_. It both ways she said looking at nikk..]

_ Sex stories [ Now had started its own work our hips and bodies bucking ..]


2006-09-15

_ rsync が timeout する

玄箱をバックアップサーバにして,rsync で夜な夜なバックアップをかけているんだけど,ある日から必ず I/O timeout するようになってしまった.

# /usr/bin/rsync --progress -avSH --delete --timeout=30 rsync://tach@example.com/share/ /mnt/share/
receiving file list ... 
6196 files to consider
cdimage/les...
cdimage/knoppix_v4.0.2CD_20050923-20051116+IPAFont.iso
io timeout after 34 seconds -- exiting09
rsync error: timeout in data send/receive (code 30) at io.c(181)
rsync error: received SIGUSR1 or SIGINT (code 20) at main.c(984)

原因は全然わからないんだけど,vmstat をしてみると,サーバ側でなくクライアント側の I/O read をガンガン行っていて,それが 0 になってしばらく経ってタイムアウト,という現象であることがわかった.

クライアント側で read するということは,checksum をとるため?と思って,--size-only を付けてやってみたら,問題なくスムーズにコピーできるようになった.玄箱の I/O まわりで何かおかしいみたいなんだけど(disk も壊れ気味だし…),まぁうまくいくのでとりあえずはこれで凌ぐことにする.


2000|09|10|11|12|
2001|01|02|03|04|07|11|
2002|03|07|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|12|
2007|01|02|05|10|11|
2008|08|
トップ 最新 追記