[@上海] 02 July 2009

綺麗な写真が撮れました。「Sun Shower」

タイトル: Sun Shower

[メモ] 23 June 2009

UbuntuのServer版でもDesktop版と同じコマンド補完

メモ。
UbuntuのServer版(JeOS版も含む)つかってる人は知ってると思うけど、Desktop版と比べて補完が恵まれてない。
例えば、Desktop版だと
$ sudo apt-get [TAB][TAB]
とやると
$ sudo apt-get
autoclean clean purge upgrade
autoremove dist-upgrade remove
build-dep dselect-upgrade source
check install update
$
となる。
でも、デフォルトのServer版だとこれが出来ない。
実害無いので放置してたけど、~/.bashrcをちゃんと調べた。
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
が怪しいので/etc/bash_completionを調べてみたらServerには存在し無かったので入れてみたら解決。
下記のパッケージだった。
bash-completion - programmable completion for the bash shell
インストールは下記でOK。
sudo apt-get install bash-completion


[メモ] 19 June 2009

bashで連番

メモ。
例えば、datファイルをprefix_***.datな感じで整理したければ下記のスクリプトでできる。
cnt=0
for name in $(ls *.dat)
do
cnt=$(($cnt+1))
mv $name prefix_$(printf "%03d" $cnt).dat
done

ちなみに一行なら、偽ワンライナーだけどw
cnt=0; for name in $(ls *.dat); do cnt=$(($cnt+1)); mv $name prefix_$(printf "%03d" $cnt).dat; done

参考:
Zero Padding in Bash
http://jonathanwagner.net/2007/04/zero-padding-in-bash/

[@上海] 08 June 2009

Shanghai-2009H1:上半期の写真を整理

今年前半に撮り溜めた上海の写真を整理しました。
良かったら見てやってください。私の見ている上海を少しでも感じてもらえれば幸いです。
# もうすぐ4年になりますが、ますます上海が好きになってます。


Shanghai-2009H1:http://bit.ly/OpyNS

[メモ] 04 June 2009

Ubuntu8.04.2LTSで最新のSubclipseを使うために

Ubuntuに最新のSubversionをインストールする方法のメモ。
Ubuntu8.04.2LTSで最新のSubclipse(1.6.x)を使おうにも、aptでインストールできるSubversionが1.4.6のため利用できない。
でも使いたい、でコンパイルしてインストールした、でもeclipseのSVNの設定でJavaHL Not Available
が出て困ってる人はどうぞ。

Subversion1.6.2のUbuntu8.04.2LTSへのインストール方法
http://www.makino-style.org/ura/index.php?InstallSubversion1.6.2ForUbuntu

[@上海] 30 May 2009

田子坊

久々の写真アップ。
5月頭に泰康路の田子坊に行ってきました。
小さなカフェやお土産屋が小区路地に濫立しており、観光客向けではありますが、レトロでごちゃごちゃした上海気分を味わうのであれば、新天地や預園よりもずっとおすすめです。

[メモ] 20 May 2009

Ubuntu8.04LTSへ最新のOpenOffice.org3.1を入れる方法

Ubuntu8.04LTSへ最新のOpenOffice.org3.1を入れる方法についてメモ、8.04に標準で入ってるのは2.4。
3.1の方が見栄えも良いしWriterのノート機能が向上してるので、やっぱりそっちが使いたいなー。



参考は以下の2サイト:
Ubuntu日本語フォーラム / [解決済み]OpenOffice.org 3.0のインストールの仕方
https://forums.ubuntulinux.jp/viewtopic.php?pid=20280#p20280
Ubuntu 7.10のOpenOffice.orgのフォントにアンチエイリアスを適用する - Sickly Life はてな版
http://d.hatena.ne.jp/itiri/20080201/1201873966

---------------------------------

1, 現在のOpenOffice.orgを抜いておく

$ sudo apt-get remove openoffice.org-core

2, OpenOffice.org公式サイトから(32bit/64bitは自分の環境に合わせて)debパッケージを落としてくる。

http://ja.openoffice.org/download/3.1.0/

→ 落としたら展開して、そのディレクトリに移動

$ tar xvz OOo_3.1.0_LinuxIntel_install_ja_deb.tar.gz
$ cd OOO310_m11_native_packed-4_ja.9399
$ ls
DEBS licenses readmes update
$ cd DEBS
$ ls
desktop-integration
ooobasis3.1-base_3.1.0-11_i386.deb
(たくさんあるので省略)
openoffice.org3_3.1.0-11_i386.deb

3, 本体インストール開始

$ sudo dpkg -i o*.deb

4, desktop-integrationのインストール(メニューとかの登録)

$ cd desktop-integration
$ sudo dpkg -i o*.deb

5, /usr/bin/sofficeにアンチエイリアスの設定を追加

→ デフォルトだとメニューとかのアンチエイリアスがOFFになってる。


$ sudo vi /usr/bin/soffice

そして
# export STAR_PROFILE_LOCKING_DISABLED

の下あたりに下記の環境変数を追加する。

export SAL_EMBEDDED_BITMAP_PRIORITY=0

以上でOOo3.1のセットアップが完了。

[メモ] 17 May 2009

NetBeans6.5をUbuntu8.04.2で動かすとキーロックされる件

Eclipseでscim-bridge系統の問題があったので、最初はSCIMを疑って下記を発見。
そんな悲しい目をしないで » Blog Archive » Ubuntu + NetBeans で日本語入力の不具合
http://www.gabuchan.net/blog/archives/35

でもSCIMのバージョンを調べると1.4.7-3ubuntu8だったので該当せず。で、下記を探し出す。

Ubuntu日本語フォーラム / JAVAアプリのキーボードが効かなくなる件
https://forums.ubuntulinux.jp/viewtopic.php?id=4806

Nabble - NetBeans - Japanese Users - NetBeans6.5でキーボードが効かなくなる件
http://www.nabble.com/NetBeans6.5%E3%81%A7%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%8C%E5%8A%B9%E3%81%8B%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8B%E4%BB%B6-td23329524.html

結論から言うと、Linux版Javaのバグらしい。
Bug ID: 6506617 Keyboard-lock in swing program on Linux box
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6506617

しかも、悲しいことに2006/12/20に上がって以来、丸2年FIXの兆しはない。以下コメント紹介。

おそらく激しく苛ついてるvj_robaさんのコメント:

いったい、いつ直すんだ?
このせいで俺のソフトはLinuxで動かねえ。
マジ頼むよ。
Sunの連中は、このバグのせいでSwing/AWTのアプリが
非英語圏のLinux環境じゃ使えないってわかってんのか?

で、環境変数AWT_TOOLKITを設定すると云々の件については、
IanLewisさんのコメント:

AWT_TOOLKIT=MToolkit の設定は意味ないっぽいね、
つーか前よりひどくなった。ESCでWindow閉じると再現する。
AWT_TOOLKIT=XToolkit の設定は少し良くなったけど、
Windowスイッチするとやっぱり発生するね。

#ちなみに、ウチの環境(Ubuntu 8.04.2 64bit/1.6.0_07-b06)ではXToolkit設定しても有意な差は見られなかった。

Ubuntu日本語フォーラムに書いてあったけど、マウスを右クリック、左クリックすれば解決する。

[技術一般] 03 May 2009

Ouch! Ubuntu 7.10(Gusty) already reached end-of-life.

end-of-life
新型インフルエンザがパンデミックしそうなGW真っ最中の今日この頃、皆さん以下がお過ごしでしょうか?
私は、9.04へいつ乗り換えようかなー。でもLTSじゃないし不安だなぁなんて考えたりしながらGW中なのに仕事をやっております。
そんなときに出くわした出来事を一つ・・・。


それは、開発サーバに足りないツールを入れようと、いつもの用に鼻歌まじりでapt-getを実行したときに発生しました。

http://jp.archive.ubuntu.com/ubuntu/pool/universe
/l/***/******_i386.deb の取得に失敗しました
404 Not Found
E: いくつかのアーカイブが取得できません。
apt-get update を実行するか --fix-missing
オプションを付けて試してみてください。

あ、あれ?

sudo apt-get update
-----略------
http://security.ubuntu.com/ubuntu/dists
/gutsy-security/multiverse/source/Sources.gz
の取得に失敗しました
404 Not Found
パッケージリストを読み込んでいます... 完了
E: いくつかのインデックスファイルのダウンロードに
失敗しました。これらは無視されるか、古いものが
代わりに使われます。

おおおおおおおおぉ???
なぜだぁぁ!aptリポジトリサーバにつながらない。
サーバが落ちてるのかと思って直接http://jp.archive.ubuntu.com/ubuntu/dists/を見てみる。
おっおおおおっ!!!!Gustyが消えてる。ない!ないぞ( ゚д゚)

あ・・・・・ひょっとして、あれか、end-of-lifeか???
しょうがない、アップグレードするか・・・・。
・・・・・・・・。
・・・・
・・
って、リポジトリがねーのにどうやってバージョンアップするんだあぁぁ!
詳しくはこちらに書いておきました。
http://www.makino-style.org/ura/index.php?UpgradeFromEolUbuntu

#いや、真面目に少し焦った。みんなもEOLとかEOSとか言われるものには気をつけて

[技術一般] 01 May 2009

NetBeansのPHP環境が何やら凄いことに・・・

ご無沙汰してます。最近はTumblrとかTwitterとかやって、CDCの新型インフル情報とか購読してました。あとなんかやたらとドタバタしてました。

で、ですよ。表題の件なわけですが、NetBeans6.5.1に超ビックリです。元々Swing作るならNBの方が良かったわけですが、PHPやRubyの開発環境としても完成度がめちゃめちゃ上がってる・・・・。

サクッと触っただけですが、下記の印象です。(あれ?なんかいずれも昔のEclipseの特徴だった様な気がするなw)
・ 起動速度が速い
・ 動作が速い
・ コード補完の頭が良い
・ EclipseキーバインドのEclipse再現性が格段に向上
・ PDTよりは安定してる

現在、現場ではEclipsePDTを利用してるわけですが、(Javaはともかく)PHPの環境については明らかにEclipsePDTを凌駕している様なので、真面目に乗り換えを検討しようと思っています。

#総領事館に電話してパンデミックして感染したらどうしたらいいでしょう?って電話で聞いたら普通に現地の病院行けと言われたw

[徒然] 09 February 2009

NOKIA E71大陸版

e71
E71 黒色版
E61の後継機種であるE71を買おうと思って徐家汇の百思买(BestBuy)に行ってきた。
いちおう下記とかで下調べをしてから間違いのないように準備をしていった。
↑同じ3G対応でも2100MHzに対応してないと日本で使えないから







恍惚のほし ★ E71のバンド
http://ryonstar.seesaa.net/archives/20080907-1.html
E71-1 RM-346 = GSM 850/900/1800/1900; WCDMA 900/2100
E71-2 RM-357 = GSM 850/900/1800/1900; WCDMA 850/1900
E71-3 RM-407 = GSM 850/900/1800/1900; WCDMA 850/2100
E71-1; Euro, Asia, Middle-East, Africa
E71-2; North America (US/Canada)
E71-3; Australia, New Zealand,
    Small part in south america

ところが・・・・・ですよ。
百思买の奴はまったく違いました。*#0000#を入力して調べると
E71(01) RM-493
こいつは恐らく大陆行货版と呼ばれている中国国内正規版・・・・・。
説明書を開いてみてもGSM 850/900/1800/1900以外は表記がない!危なく買ってしまうところでした。
結論から言うと、E71-1は亚太版(AsiaPucific)とか香港、シンガポールの奴じゃないとだめらしい。もちろん必ずファームと本体裏面のコードを確認する必要がありますが、簡単な見分け方としては、2009/01現在だとE71大陸版は白とグレーしか存在せず。黒色、紅色は亚太版とかにしか存在しません。
っつーか3GじゃないE71って、ある意味E72(E61に対してGSMのみwifi無しのE62というのがある)とか言うべきじゃないの?その上、値段も高いってどうなのよNOKIA・・・。(亚太版2500元前後に対して大陸版2900元前後)
→ TD-SCDMA(中国版3G)の関係でWCDMAをサポートしないのだろうか?

e63
E63 紅色
ちなみにE63と呼ばれるE71の装丁をプラスチックにしてA-GPSを省いた廉価版も存在する。こいつは基本的には亚太版が流通してるはずで価格も1500元から2000元とかなり安い。

なお並行輸入版は水貨品とも呼ばれ、正規の国内保証が受けられなかったり、一部偽造だったり、品質に問題があったり、外国版のファームを書き換えたものや、キーボードを改造したものや、トラブルも多いので自己責任で・・・・。シャープの日本版のファームを中国語に書き換えたものとかは有名ですね。
でもまあ、中国の国内保証がどれほどのもんだってのもあるわけで、恐らく私は上海市天目路の不夜城に行って買っちゃうと思うわけです。


参考:
【诺基亚E71】NOKIA E71 手机图片,图片大全,图片下载 泡泡网
http://product.pcpop.com/000077712/Picture.html

诺基亚E63 手机_论坛_报价_图片_主题_软件游戏下载_网易手机频道
http://product.tech.163.com/mobile/pics/Nokia/00000YEQ.html

[メモ] 05 February 2009

Ubuntu64bit版でのGears

大家、新年好。
64bit版のFF3で動作するGears。
GMailもOfflineになったしね。

中国にいるオランダ人のNielsさんがBuildしてくれてるw
Google Gears 64-bit
http://nielspeen.com/blog/2009/02/google-gears-64-bit/

なんでかFF3から直に入れると4Gと表示される。
でも、取り合えず先にDLしてからFFで開けばOK!

Thanks, Niels.

[メモ] 31 December 2008

SVNのワーキングコピーを複製して使うとエラーがでる。

上海だと回線が遅いので、先に一ヶ所でチェックアウトしてSVNのワーキングコピーを複製して利用したかったのだが、そのまま利用しようとするとこんな感じエラーが出て困った。
svn: Can't open '.svn/tmp/tempfile.tmp': No such file or directory

対処法がここ(svn « Design is difficult)に書いてあった。
下記のスクリプトを複製したワーキングコピーの直下において実行すればとりあえずOK。

#!/bin/bash
# Rebuilds empty directories which are lost
# by HG but required by SVN
for d in `find . -type d | grep /.svn$`;
do
# -p to make $d/tmp parent directory
`mkdir -p $d/tmp/prop-base`
`mkdir $d/tmp/props`
`mkdir $d/tmp/text-base`
done

複製時にtmp以下がコピられてないのかな?
ちゃんと原因調査が必要。

[メモ] 23 December 2008

配列の上書きマージ

phpのメモ
array_merge_recursiveは上書き処理してくれないので、YAMLでデフォルトをローカルで上書きとかのときに利用できない。
ちょっと、探してはみたんだけど無かったので再帰処理。
見つけられないだけで存在するのかもね。

function merge_config(&$target,$array){
foreach ($array as $key=>$value){
if(is_array($value)){
//再帰処理
merge_config(&$target[$key],$value);
}else{
$target[$key]=$value;
}
}
}

[徒然] 20 December 2008

世界はブラウザとAJAXで動いてるわけじゃない

ここ1年、通勤中にセカンド・オピニオンというコラム(っていうかほとんど講義形式の教科書に近い)を携帯でよく読んでいます。
これはフリーライターの大原雄介さんという方がマイコミジャーナルで2002年から連載しているコラムです。内容としては、ハードよりでハードとソフトの境界について論じているのですが、これが大変におもしろいです。
ソフトウェアの開発者でも非常に楽しめると思います。

特に、私の好きなのは、下記3本
64bit Rhapsody 一人歩きする64bit(1) 第1〜31回
http://journal.mycom.co.jp/column/sopinion/001/index.html

OS小論:OSの構造をもう少し考えてみる(1) 第195〜239回
http://journal.mycom.co.jp/column/sopinion/195/index.html

Core MicroArchitectureをもうすこし(1) 第177〜194回
http://journal.mycom.co.jp/column/sopinion/177/index.html

今、読んでるのはバスアーキテクチャの話、あまりにも難しそうで飛ばしてました。相当おもしろいです。
バスのアーキテクチャ - 過去から未来へ(1) 第40〜176回
http://journal.mycom.co.jp/column/sopinion/040/index.html

バスアーキテクチャについては後藤弘茂のWeekly海外ニュースで最近扱っているIntelのLarrabeeというベクタプロセッサの記事で扱っている複数プロセッサやコアの協調動作のための接続バスなどの部分について、もう少し深く理解したいと思って読み始めました。
まあ、この辺のバスアーキテクチャやキャッシュ制御はクラスタリングやグリッドコンピューティングでも必要な概念だからあながちハードだけってわけじゃないですね。

さて、パソコンもモジュラー化され組み立てがIKEAの家具並に簡単になった昨今、CPUやOS、バスの構造や関連なんて気にしなくても済むわけです。プログラマだって私みたいにJavaを専門にしたり、スクリプト言語を専門にしている人はハードなんか知らなくても良いし、ハードウェアレイヤなんか抽象化すれば良いじゃないか見たいな感じがあります。
まあ、確かにそうなんだけど抽象化したからってハードがなくなるわけじゃないし、ハードを操るコードがなくなるわけでもないのです。世界はブラウザとAJAXで動いてるわけじゃないんです。

で、やっぱり後輩のPGとかがOSやハードなんか自分の領域じゃないし、そんなのインフラの仕事と割り切ってるのはなんか違うなあと思ってしまいます。別に自分でドライバ書く必要は無いけれど(俺もかけないし)、自分のコードが動く環境やインフラに最低限興味を持つのは大事なんじゃないかと強く感じます。