ブログトップ 記事一覧 ログイン 無料ブログ開設

それはそれ。これはこれ。 このページをアンテナに追加 RSSフィード

2003 | 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 | 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 | 03 | 04 | 05 | 06 | 07 | 09 | 10 | 11 | 12 |
2012 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 11 | 12 |
2013 | 01 | 02 | 04 | 05 | 07 | 08 | 10 | 11 | 12 |
2014 | 02 | 03 | 07 | 08 | 09 | 10 | 11 | 12 |
2015 | 01 | 02 | 03 | 05 | 06 | 07 | 11 |
2016 | 07 |
2017 | 01 | 03 | 06 | 07 | 11 |
2018 | 05 | 07 |

2010-02-26(金)

[] SXGAの謎  SXGAの謎を含むブックマーク  SXGAの謎のブックマークコメント

以前から、なぜSXGAは4:3でなく5:4なのか不思議に思っていたのだが、ぐぐって見ると、PCSVGAとかXGAの時代に、どうもEWS方面では1280x1024が主流で、それが由来ではないかと言うことが書いてあった。

つまり、XGAより高解像度にしたいと思ったときに、周りを見ると1280x1024のモニタが販売されていたので、それに合わせてグラフィックボードを作ったということか。それでノートPCには(多分)存在しない理由もわかる。しかし何時までもそれを引きずるのもなあ。。。と思っているうちに時代はワイド液晶

トラックバック - http://d.hatena.ne.jp/otn/20100226

2010-02-24(水)

[] .inputrc のメモ  .inputrc のメモを含むブックマーク  .inputrc のメモのブックマークコメント

"\C-d": delete-char-or-list
"\C-p": history-search-backward
"\C-n": history-search-forward
"\C-l": redraw-current-line

delete-char-or-list というのは、行末以外だと一文字削除で、行末の時は補完候補のリスト表示。タブキーの complete と違うのは候補表示だけで補完はしないこと。これは確か、tcshの C-d の機能

history-search- は、ヒストリ補完。

トラックバック - http://d.hatena.ne.jp/otn/20100224

2010-02-22(月)

[] 不思議な空リスト  不思議な空リストを含むブックマーク  不思議な空リストのブックマークコメント

[ ] == false           //=> true
![ ]                   //=> false
[ ] == ![ ]            //=> true
if([ ]) alert('True')  //=> alert('True')

falseと==で比較して真になるという仕様意味がわからない。


2010-02-23追記:

「Under Translation of ECMA-262 3rd Edition」という日本語文書があったので見てみた。 http://www2u.biglobe.ne.jp/~oz-07ams/2002/ecma262r3/index.html

11.9.3 抽象的等価比較アルゴリズム (The Abstract Equality Comparison Algorithm)

x と y を値とする比較 x==y は、 true または false を生成する。次のように比較は実行される:

1. Type(x) と Type(y) が異なる場合は、ステップ 14 へ。

2. Type(x) が Undefined ならば、 true を返す。

3. Type(x) が Null ならば、 true を返す。

4. Type(x) が Number でなければ、ステップ 11 へ。

5. x が NaN ならば、 false を返す。

6. y が NaN ならば、 false を返す。

7. x が y と同じ数ならば、 true を返す。

8. x が +0 で y が -0 ならば、 true を返す。

9. x が -0 で y が +0 ならば、 true を返す。

10. false を返す。

11. Type(x) が String ならば、x と y の文字シーケンスが完全に同じ(同じ長さで対応する位置に同じ文字がある)なら true を返し、そうでなければ false を返す。

12. Type(x) が Boolean ならば、 x と y がともに true かともに false なら true を返し、そうでなければ false を返す。

13. x と y が同じオブジェクトを参照しているか、または互いに結合しているオブジェクト(セクション13.1.2) を参照していれば true を返し、そうでなければ false を返す。

14. x が null で y が undefined ならば、 true を返す。

15. x が undefined で y が null ならば、 true を返す。

16. Type(x) が Number で Type(y) が String ならば、比較 x == ToNumber(y) の結果を返す。

17. Type(x) が String で Type(y) が Number ならば、比較 ToNumber(x) == y の結果を返す。

18. Type(x) が Boolean ならば、比較 ToNumber(x) == y の結果を返す。

19. Type(y) が Boolean ならば、比較 x == ToNumber(y) の結果を返す。

20. Type(x) が String か Number で Type(y) が Object ならば、比較 x == ToPrimitive(y) の結果を返す。

21. Type(x) が Object で Type(y) が String か Number ならば、比較 ToPrimitive(x) == y の結果を返す。

22. false を返す。

これを元に、

[ ] == false

比較を追って解析していく。

1 → 19 で、

[ ] == ToNumber(false)
[ ] == +0                       // ToNumber(false) については、9.3 ToNumber に記述有り

さらに21で、

ToPrimitive([ ]) == +0
[ ]のDefaultValue(hint) == +0   // ToPrimitive([ ]) については、9.1 ToPrimitive に記述有り
[ ]のGet(toString) == +0        // DefaultValueについては 8.6.2.6 [[DefaultValue]] (hint) に記述有り
[ ].toString() == +0            // Get(toString)については 8.6.2.1 [[Get]] (P) に記述有り
"" == +0                        // [ ].toString は空文字列

こんどは17で、

toNumber("") == +0

toNumber("") については、「9.3.1 String 型に適用される ToNumber (ToNumber Applied to the String Type) 」に以下の記述がある。

文字列適用される ToNumber は、入力文字列に 次の文法適用する。文法文字列を StringNumericLiteral として解釈不能ならば、 ToNumber の結果は NaN である

StringNumericLiteral :::

  StrWhiteSpace(opt)

  StrWhiteSpace(opt) StrNumericLiteral StrWhiteSpace(opt)

(中略)

# StringNumericLiteral ::: [empty] の数学値は、 0 である

(中略)

一旦数値文字列リテラルの厳密な数学値が決定されたら、 Number 型の値に丸められる。数学値が 0 ならば、丸められる値は、数値文字列リテラル内の最初の非空白文字が '-' でなければ +0 であり、 '-' ならば -0 である

ここから、空文字列場合も StringNumericLiteral と見なされ、その数学値は 0 であり、最終的な値は +0 となる。

従って、

+0 == +0

となり、上記アルゴリズム7で true となる。


長い。。。。。数学の証明問題みたい。MozillaサイトJavaScriptリファレンスざっと見たが、同じような事が別の書き方で書いてある。

つまり、空リストは、

論理値と評価される文脈では、true となる*1

・数値や論理値と等値比較される文脈では 0 となる

という分かりにくい仕様だ。

*1:「9.2 ToBoolean」に記述がある

2010-02-16(火)

[][] ATコマンドの実行ユーザ  ATコマンドの実行ユーザを含むブックマーク  ATコマンドの実行ユーザのブックマークコメント

知らなかった。

AT コマンドシステムユーザで実行されるが、「タスク」の画面の詳細設定メニューで、AT実行時のユーザを指定できる!

トラックバック - http://d.hatena.ne.jp/otn/20100216

2010-02-14(日)

[] この機能がないとFirefoxからChromeに移れない  この機能がないとFirefoxからChromeに移れないを含むブックマーク  この機能がないとFirefoxからChromeに移れないのブックマークコメント

Google Chromeブラウザ拡張機能が充実してきたようで、そろそろ移行を検討するために、現状のまとめ。下記の条件が満たされたらChromeに移行できる。書くときりがないので、あって当たり前と思える機能は省いた。


コンテンツ表示(本体)

  1. ページのフォント種類指定を無視してフォント固定
  2. JavaScriptの一部機能の禁止(ウィンドウ移動、フォーカス変化、コンテキストメニューステータスバー)
  3. 新規ウィンドウ作成時にアドレスバーステータスバーの表示強制

UIカスタマイズ(Menu Editor, Tab Mix Plus)

  1. 各種コンテキストメニューカスタマイズ(順序入れ替え、項目削除)

アドレスバー(本体)

  1. URLで無い物を入れたら、指定検索エンジン検索
  2. インクリメンタルで履歴・ブックマーク検索して補完
  3. キーワード検索(Amazon, Youtube, Wikipedia, 辞書などを指定しての語句検索)

タブ管理(本体およびTab Mix Plus)

  1. 前回終了時、クラッシュ時のタブを履歴付きで復元
  2. アドレスバー入力検索入力ブックマーク選択、DDEなどで指定ページに飛ぶときは常に新規タブを開く
  3. サイズ指定でない限り新規ウィンドウは開かず新規タブで開く
  4. 新しいタブは常に現在のタブのすぐ右に開く
  5. タブを閉じるとフォーカスは左に
  6. タブの保護(閉じることを禁止)のオンオフ
  7. Drag&Dropでタブ順序の入れ替え
  8. 閉じたタブの復元を指定個数まで行える
  9. タブ幅の最小値を指定
  10. タブがおさまらない場合は横スクロール
  11. ツールバーボタンでタブ一覧をプルダウンして選択したタブに飛べる

マウスジェスチャ(FireGestures)

  1. 基本ジェスチャ(戻る、次へ、閉じる、タブ復元、上階層へ、前タブ、次タブ、更新、タブ複製)
  2. 履歴の先頭に戻る
  3. フォーカスを移さずリンクを開く
  4. 選択範囲をURLとみなして開く
  5. 選択範囲をデフォルト検索エンジン検索
  6. 選択範囲をプルダウンで検索エンジンを選んで検索
  7. クリップボード内容をURLとみなして開く
  8. スクロール(ページ最上部へ、最下部へ)
  9. ズーム(拡大、縮小、リセット)
  10. その他自分スクリプトで書いた機能にジェスチャを割り当てられる

ページカスタマイズ(Adblock Plus, Greasemonkey, Stylish)

  1. 指定URL項目(画像オブジェクトフレーム)の非表示
  2. 指定URLJavaScript実行
  3. 指定URLCSSを強制追加

開発機能(FireBug)

  1. FireBug
  2. FireFinder for FireBug

特定アプリ(Gmail Manager, はてなブックマーク, IE View)

  1. 複数Gmailアカウントへの自動ログイン
  2. はてなブックマーク組み込みブックマークのようにアクセス
  3. 指定URLを開くときはIEを起動

おそらく大部分は現状で可能だろうが、タブ管理やジェスチャで機能不足がありそう。

トラックバック - http://d.hatena.ne.jp/otn/20100214

2010-02-02(火)

[] 自宅ノートPCディスク交換とXP SP3  自宅ノートPCのディスク交換とXP SP3を含むブックマーク  自宅ノートPCのディスク交換とXP SP3のブックマークコメント

自宅ノートPCがもうすぐ丸三年。買い換えとかMacへの切り替えとかいろいろ考えたが、結局、様子見で見送り。前回ディスク交換から一年半くらい立つので、ディスクだけ交換しようと買いに行った。

購入

交換前は200GB 7200rpmの日立製。事前に調べて、320GB 7200rpm にするか 500GB 5400rpmにするか迷った。高密度化で5400rpmのディスクでも現在より遅くなることはないかなあと思ったけど、キャッシュが前者は16MBで後者が8MBという差もある。迷いながらドスパラに行くと、Seagateの500GB 7200rpm 16MBのディスクが売っている。少し迷ったが、これを購入。ところが、帰ってから価格COMをもう一度見ると、日立の500GB 7200rpmも掲載されている(1/30掲載)。早まったか。

ディスク交換

今までのディスク交換では初期リカバリしてから各種ソフト入れ直しをしてたのだが、面倒なので、今回初めて丸ごと移行に挑戦。ぐぐって、EASEUS DiskCopy http://www.easeus.com/disk-copy/ というフリーソフトを使うことにした。まずは外付けディスクケースに買った新ディスクを入れて、エラーがないか調べるためにフォーマットしてみる。エラーは無しで大丈夫そう。

次に、コピーツールを書き込んだCD-RWで起動して、内蔵ディスクから外付けディスクへ丸ごとコピー。速度は1GB/分程度。先にディスクを交換して、逆向きコピーの方がおそらく速いはずだが、コピー中にエラーが出るとまた入れ替えなので、時間がかかってもいいやと放置

コピー完了後に、ディスクを交換して、GPartedでパーティション拡大(リカバリデータ用のパーティションを末尾に移動させてから)。コピー放置時間を除くと、ディスク交換含めて30分くらいだったか。

OSアップデート

その後、OSXP SP3にした。特に問題は無しだが、いくつかの設定が元に戻っているので気がつく都度設定し直し。今のところ気づいたのは、動画ファイルの関連づけと、notepad.exe の入れ替えが元に戻った。notepad.exe は TeraTrapperに入れ替えている。まだありそうな気がするが。


家族用のノートPCは3年間ディスク交換してないけど、どうするかなあ。やっぱり交換しておくか。。。

トラックバック - http://d.hatena.ne.jp/otn/20100202