2007年10月31日水曜日

訃報 b

KAME 今日は朝起きていきなり,itojunさんが亡くなられたという話を聞き,驚きを隠せなかった.つい先日までMLにメールが流れているたのに.

9月の合宿でitojunさんの"IPv6の真実"というセッションは,おもしろく聞かせていただいた.日本だけでなく世界のインターネット発展に欠かせない惜しい人を亡くしたと思う.

心よりご冥福をお祈りいたします.

2007年10月29日月曜日

Apple Wireless Keyboardを買った b

Macの新しいキーボードのデザインに惚れて、さらにBluetooth版の方はコンパクトだというじゃないですか。思わず衝動買いです。



当然US配列の方を買ったんですが、何でAppleはJIS配列だとCtrlがAの横にあるくせに、USになったとたんCapsLockが来るかねぇ。。。そしてCaps Lockは設定で存在を抹消されましたとさ。

ところがここでちょっとした問題発生。このCtrlキーと化したCapsキーですが、なんか反応が微妙に悪い。押したコンマ1秒遅れて認識される感じ。だからコンソールたたいてて、すばやくCtrl + Aとか押すと、Ctrlが押されたことにならず、ただaの文字が入ってしまうことが多々ある。。。本物のCtrlキーだとこんなことはなく、スムーズに入力されるのに。店頭のキーボードでも同じ現象がでたから、おそらくこの新しいキーボードのCaps Lockキーの仕様なんだと思うけど、ここだけが残念。てかUS配列でCtrlがAの横にあるSUN配列な最強キーボードどっか出してくれよー

2007年10月28日日曜日

ThinkPad T60pで VistaからXPへのダウングレード b

標準でVistaインストールなT60pだったんですが,諸所の事情でXPをクリーンインストールすることに.

ところがいきなりはまるはまる.

Windows XPのインストールディスクをいれて,ドライバが読み込まれ,そして・・・
「コンピュータにハードディスクドライブがインストールされていませんでした。ハードディスクドライブの電源が入っていて、コンピュータに正しく接続されていることを確認してください。」
の文字が・・・おおーーーい.

なんか調べてみるとT60pのHDDはSATAが標準ではAHCIモードになっていて,このままだとWindowsXPインストールディスクに入ってる標準のドライバじゃよめないっぽい.だからBIOSからHDDアクセスを互換モードにする必要がある.

BIOSから「Config」→「Serial ATA (SATA)」の項目で,「AHCI」→「Compatibility」に変更.
これでWindowsXPをインストールをもいっかいしてみる.
無事HDDが認識されました.めでたしめでたし.
XPを入れ終わったら「Compatibility」→「AHCI」に戻すのがいいっぽい.


参考文献
http://www.thinkpad-club.net/modules/xhnewbb/viewtopic.php?post_id=9349&topic_id=1535
http://www.thinkpad-club.net/modules/xhnewbb/viewtopic.php?topic_id=1224

2007年10月19日金曜日

Macでmixiを見るとフォントサイズが強制的に13pxになる b

最近Macでmixiを見ると,ロードが完了した直後にfont-sizeが勝手に大きくなる.
おかげで日記のレイアウトが崩れるわけですが,,,

mixi.jsを追ってみたら,

function set_mac_style() {
  if (navigator.platform.toUpperCase().indexOf('MAC') != -1) {
    document.body.style.fontSize = '13px';
   }
}

というコードが増えていた.
中の人は何をしたいんだろう?

うざいのでstylishにて,
body { font-size: 12px !important }
を追加して終了.

2007年10月16日火曜日

C#(マネージコード)でWin32APIのGetLastErrorに相当するもの b

PInvokeを使って,
[DllImport("kernel32.dll", EntryPoint="GetLastError")]
とか思ったりしちゃうけど,違うらしい.

MSDN blogを参考にすると,

1) GetLastError()によってエラー補足したいネイティブ関数は,DllImport時にSetLastError=trueをつけておく.

[DllImport("kernel32.dll", SetLastError=true, EntryPoint="foobar")]


2) LastErrorを補足するときは,Win32APIのGetLastError()関数を使うのではなく,マネージドコードである,Marshal.GetLastWin32Error()を使う.
Marshal.GetLastWin32Error()



以下は参考ページに記載されていたサンプル
using System.Runtime.InteropServices;

public class ForceFailure {
[DllImport("kernel32.dll", SetLastError=true)]
static extern bool SetVolumeLabel(
string lpRootPathName,
string lpVolumeName
);

public static void Main() {
if (SetVolumeLabel("XYZ:\\", "My Imaginary Drive ")) {
System.Console.WriteLine("It worked???");
} else {
System.Console.WriteLine(Marshal.GetLastWin32Error());
}
}
}


SetVolumeLabel()というWin32APIを呼び出しているが,これは指定ドライブボリュームラベルを書き換えるAPIである.通常引数には書き換える対象となるドライブレター(例 C:\\)を入れるが,ここでは存在しない架空のXYZ:\\というドライブレターを指定しているので,当然この関数の実行は失敗し,エラーが発生する.
# おそらくエラーコード123が帰るはず


詳しい説明は引用元を参照のこと

2007年10月13日土曜日

リニューアル後のmixiをガリガリ削るユーザースタイルシートを書いてみた b

リニューアルしたデザインが激しく不評みたいですが,今までのテーブルレイアウトからcssでのレイアウトになったおかげで,むしろ勝手に弄りやすくなってます.mixi用のパーサを作ってた人は楽になったでしょうね :-)

さてということはユーザースタイルシートを使って,強引にデザインを変えることが容易になったということですが,例の2カラム750pxの話のように,たくさんカスタマイズ例がでてきたようです.

といわけでまねして,ガリガリ削ってみた.
一部例の秋田様のcssを参考にしてます.






ぜんぜん最適化してないCSSですが・・・
って,prettyPrintのコードハイライトがCSS対応してたから更新してみたものの,
idやら色表現の#がコメント扱いかよ!ひでーな!おい!

@namespace url(http://www.w3.org/1999/xhtml);

@-moz-document domain("mixi.jp") {
/* ロゴ非表示 */
h1 { display:none }

/* センタリング */
body { margin:0 auto !important }
body { width:620px !important }

/* 広告バナー非表示 */
.adBanner { display:none !important }

/* ヘッダの背景を透過色に */
#headerArea { background:transparent !important }

/* 右カラム非表示 */
#bodySub { display:none }

/* グローバルナビゲーションのmikly・動画・フォトボタン非表示 */
#globalNavigation ul.contentsNavigation li.mikly { display:none !important }
#globalNavigation ul.contentsNavigation li.movie { display:none !important }
#globalNavigation ul.contentsNavigation li.photo { display:none !important }
#globalNavigation ul.contentsNavigation li.friendInvite { display:none !important }
#globalNavigation ul.contentsNavigation li.friendSearch { display:none !important }
/* #globalNavigation ul.contentsNavigation li.community { display:none !important } */
/* #globalNavigation ul.utilityNavigation li.help { display:none !important } */

/* ヘルプ・ログアウトボタン非表示 */
/* #globalNavigation ul.utilityNavigation li.help { display:none } */

/* ローカルナビゲーションのレビュー・ミュージックボタン非表示 */
#localNavigation li.review { display:none }
#localNavigation li.music { display:none }
#localNavigation li.favorite { display:none }
/* #localNavigation li.message { display:none } */

/* ローカルナビゲーションのプルダウンボタン非表示 */
#diaryPullDownButton { display:none !important }
#videoPullDownButton { display:none !important }
#photoPullDownButton { display:none !important }

/* フッター幅調整 */
#footerArea { width:620px !important }

/* フッターナビゲーションマージン調整 */
#footerArea ul.footerNavigation01 li { margin:0 2px !important }

/* 検索フォーム非表示 */
div.searchForm01{ display:none }

/* 「最新情報」ヘッダの非表示 */
#mymixiUpdate div.heading01 { display:none }

p.statusIcon {display:none;}

/* いらないコンテンツをとにかく非表示 */
#myUpdate { display: none;}
#newPlaylist{ display: none;}
#newReview{ display: none;}
#newVideo{ display: none;}
#newAlbum{ display: none;}
#newBbs{ display: none;}
#footerArea { display: none;}
#intro { display: none;}

/* お知らせメニュー */
div.information {
width: 600px !important;
background:none !important;
border: dotted 1px #f90 !important;
}
div.information div.contents {
width: 600px !important;
border: 0 !important;
float: none !important;
}
div.information ul {
margin-left: 5px !important;
background: none !important;
}

div.information div h2 { display:none; }
div.information div ul li dl dt { display:none; }

div.information div ul li dl dt.emphasis01 { display:inline !important; }

div.information div ul li dl dd { display:none; }

div.information div ul li dl dt.emphasis01 + dd{ display:inline !important; }

#bodyContents div.heading02{
background:none !important;
border:#666666 dotted 1px;
}
}


/* ホーム専用スタイル */
@-moz-document url-prefix("https://mixi.jp/"),
url-prefix("https://mixi.jp/"),
url-prefix("http://mixi.jp/home.pl"),
url-prefix("https://mixi.jp/home.pl") {

/* 自分の写真部分の非表示&調整*/
#myProfile {
width:150px !important;
height: 45px !important;
background: none !important;
padding-top: 0 !important;
}
#myProfile div.contents01{ display:none; }

/* プロフィールの灰色背景削除と上padding縮める */
#myProfile div.contents02{
padding-top:5px !important;
background: none !important;
}

/* 写真の変更とプロフィールの確認のfloat解除 */
#myProfile li.photoChange{ float: none !important;}
#myProfile li.profileEdit{ float: none !important;}

/* 左カラム全体の横幅 */
#bodySide { width:160px !important; }

/* マイミクシィ一覧の枠*/
#bodySide div.listBox01 {
width: 150px !important;
background: none !important;
border: dotted #f90 1px !important;
}

/* マイコミュ一覧の枠 */
#bodySide div.listBox01 div.contents{
width:150px !important;
border-top: dotted 1px #f90 !important;
border-left: 0 !important;
border-right: 0 !important;
border-bottom:0 !important;
}

/* マイミクのアイコン非表示 */
#mymixiList div.contents table.iconListTable { display: none;}

/* マイミクの誕生日チェックを非表示 */
#mymixiList div.contents dl.actionIcon01 { display: none;}

/* マイコミュのアイコン非表示 */
#communityList div.contents table.iconListTable { display: none;}
/* マイコミュのイベントチェックを非表示 */
#communityList div.contents dl.actionIcon01 { display: none;}

/* */
#bodySide div.listBoxUtility01{
background:none !important;
width:150px !important;
}
div.listBox01 div.utilityLinks01{
width: 150px !important;
background: none !important;
}
}


/* コミュニティページ専用スタイル */
@-moz-document url-prefix("http://mixi.jp/view_community.pl") {
/* 入退会ボタンを表示 */
#localNavigation li.music { display:inline !important }
}

2007年10月2日火曜日

GoogleブックマークってiGoogleに表示されないの? b

なんか面倒でつかってなかったんだけど,いい加減ブックマークを使いこなすことにした.
オンラインブックマークで.

今まで基本的にURLは暗記するほうで,よくいくページはブラウザのタブで持ちまわってたんだけど,ちょっと破綻してきたからGoogoleブックマークとやらを使ってみた.

Googleが好きそうな,ラベル管理タイプのブックマーク.
う~ん,これはどうなんだろう.
まだいまいち使いにくいなぁ.
多分インターフェースの問題だけど.
FireFoxはあるみたいだから,SleipnirからGoogleブックマークを取り込めるプラグイン希望~

そーいやiGoogleとうまく連動してくれないんだけど・・・?
って思ったら,ラベルに「ホームページ」ってつけたブックマークだけ特別な意味を持ち,iGoogleにも表示されるっぽい.
表示設定を英語にすると「homepage」がそれに相当みたい.

日本設定時にhomepageラベルを作ると普通のラベル扱いなんだけど,このまま英語設定にすると,ホームページがhomepageになって,homepageラベルが重複表示.しかもどっちも特別な意味のhomepageになってしまって,自分で作ったhomepageラベルが消失.

自分でも何言ってるかわかんね