タグ

2010年5月14日のブックマーク (24件)

  • Edit fiddle - JSFiddle - Code Playground

    mooz
    mooz 2010/05/14
    '+' 一文字を CSS でどこまで着飾れるか. 綺麗なタマタマ.
  • places.sqliteがVACUUMされるタイミング - hogehoge @teramako

    昨日Firefox SQLiteデータベースのVACUUMについて - hogehogeの記事を書き、 Firefox3.6だったか3.5だったかで、places.sqlitePCアイドル時にVACUUMする処理が入っているはず。 と書いた。 また、コメント欄にてBug 512854 ? VACUUM places.sqlite database on daily idle once a monthを教えてもらい、mozilla-1.9.2: changeset 31871:7b4f35e3a442がリポジトリにコミットされていることが分かった。 もしかすると勘違いされているかもしれないので書いておくとFirefox3.6では既に反映されています。 それだけじゃ何なので、ソースコードからいつどういった条件でVACUUMされるか調べてみた。 まず、Firefoxが起動するとPlacesサ

    places.sqliteがVACUUMされるタイミング - hogehoge @teramako
    mooz
    mooz 2010/05/14
    結構シビアな条件だなあ. 『アイドル時間が5分超、かつ、前にアイドルした時間(この値は1日経たないと更新されない)*2から1日(24*60*60秒)経っている場合。つまり、1日に0〜1回しか通知されない。』
  • less - ::-webkit-scrollbarをページ全体のスクロールバーに適用する

    WebKitにはCSSでスクロールバーをカスタマイズ出来る独自拡張が存在します。 Surfin’ Safari - Blog Archive » Styling Scrollbars Scrollbar Debug View この設定はルート(セレクタ的にはhtml)のスクロールバーには反映されないため、全体に使いたい場合にはbody要素にスクロールバーを表示させて肩代わりさせる必要があります。overflowでこんな感じに: html { /* scrollbar */ overflow-y: auto; } body { /* scrollbar */ position: absolute; top: 0; left: 0; bottom: 0; right: 0; overflow-y: scroll; overflow-x: hidden; } bodyに設定する関係で気付いた点を

    mooz
    mooz 2010/05/14
    overflow-y : auto を html に, body へ overflow-y : scroll を.
  • http://www.nikesh.me/blog/2010/05/sexy-image-hover-effects-using-css3/

    mooz
    mooz 2010/05/14
    本当にこの辺は応用次第で素晴らしいものが出てくる.
  • Emacs + GDB チートシート - higepon blog

    Emacs + GDB を利用したいならば、何よりも GNU Emacs Manual: Debuggers(英語) を読むことを強くおすすめします。 和訳も存在しますが内容が古く、マウスを利用した操作やグラフィカルな機能についての記述がありませんでした。 マニュアルを読んで理解したあとは実践で覚えていくわけですが、以下にまとめたチートシートを利用すれば時間が節約できるかもしれません。 もしも便利な機能に関して漏れがあれば是非教えてください。 .emacs ;;; GDB 関連 ;;; 有用なバッファを開くモード (setq gdb-many-windows t) ;;; 変数の上にマウスカーソルを置くと値を表示 (add-hook 'gdb-mode-hook '(lambda () (gud-tooltip-mode t))) ;;; I/O バッファを表示 (setq gdb-use

    Emacs + GDB チートシート - higepon blog
    mooz
    mooz 2010/05/14
  • Javaの限界を超えて実用化を目指す 新開発言語「Scala」のメリットとは~前編

    Scalaとは Scalaは、2003年にJavac(コンパイラ)やJavaのGenericsの設計/開発貢献者であるMartin Odersky氏(スイス・ローザンヌ工科大学教授)によって、開発が開始された比較的新しいプログラミング言語です。Javaは実用言語として幅広いシステムで使用されてきましたが、下位互換性を保つという要請の中、言語としての機能強化がなかなか進まないといった限界も見えてきています。そのような現状もあることから、ScalaJavaの後継として実用的な言語を目指して開発されています。 Scala最大の特徴は、Javaの良さを最大限継承しつつ、スクリプト言語や関数型言語の良いところも吸収し、先進的な機能/文法を取り入れている点です。また、今後のハードウェアのマルチコア化を見据え、簡易に並列処理プログラミングを行うことができるライブラリが付属しています。 Scalaのメリ

    Javaの限界を超えて実用化を目指す 新開発言語「Scala」のメリットとは~前編
    mooz
    mooz 2010/05/14
    "実際の開発に Scala を利用する" が興味深い.
  • Lift :: Home

    When I decided to put Innovation Games® online, I knew that I couldn't afford a massive development effort. I needed a small, sharp team who could leverage best-in-class tools to help us solve the problems we knew that we'd have to solve in creating a new kind of collaborative gaming experience on the web. David suggested Lift and Scala and initial testing proved that we could realize the develope

    mooz
    mooz 2010/05/14
    Web フレームワーク. Scala.
  • keyconfig 20110522 - Page 90 - mozillaZine Forums

    mooz
    mooz 2010/05/14
    editor.beginTransaction() と editor.endTransaction() を使う.
  • insertText - ellaneous

    テキストボックス((textarea, input:-moz-any(:not([type]), [type=text], [type=password]))) tbox のカーソル位置へ文字列 text を挿入したいとき,HTMLTextAreaElement の貧弱な機能で実現するとこんな風になる。 var {value, selectionStart, selectionEnd} = tbox; tbox.value = value.slice(0, selectionStart) + text + value.slice(selectionEnd); tbox.selectionEnd = selectionStart + text.length; 一見うまくいくようだが,スクロール位置がリセットされるしアンドゥも狂う。 自然にやるには chrome 権限が必要。*1 const

    insertText - ellaneous
    mooz
    mooz 2010/05/14
    editor を取ってきて nsIPlaintextEditor の insertText を呼ぶ. editor の transaction をどうのこうのすればアンドゥ可能なテキスト編集も出来そう.
  • Re: Problems with gdb and program files in another directory than curren

    mooz
    mooz 2010/05/14
    Emacs の gdb で実行ファイルとソースファイルのディレクトリが異なる場合にプレークポイントの設定がうまく行えないバグ. そのパッチ.
  • オンラインで入手できる数理論理学・数学基礎論のテキスト

    オンラインで入手できる数理論理学・数学基礎論のテキスト 数理論理学、数学基礎論の教科書的に使えるテキスト(講義ノート、サーヴェイ、モノグラフ等)のうち、オンラインで入手できるものを集めました。 入門的概説 論理一般 高階論理と型理論 直観主義論理 コンビネータとラムダ計算 時相論理および時制論理 様相論理 適切さの論理 自然言語の論理 空間論理 モデル理論 安定性理論 無限論理 計算可能性理論および再帰理論 集合論 pcf理論 記述集合論 実数の集合論 選択公理 強制法と内部モデル 連続体仮説 NF 証明論と構成的数学 順序数解析 算術の体系と不完全性 証明可能性論理 線形論理 構成的数学 代数的論理と圏論 ブール代数 普遍代数 量子論理 圏論 歴史 入門的概説 [▲] 加茂静夫,「数理論理学(命題論理と述語論理)」.[PDF] 嘉田勝,「数理論理学 講義ノート(2013年度版)」. St

    mooz
    mooz 2010/05/14
    再帰関数のテキストをちょうど探してたところ.
  • はてなブログ | 無料ブログを作成しよう

    来年も作りたい!ふきのとう料理を満喫した 2024年春の記録 春は自炊が楽しい季節 1年の中で最も自炊が楽しい季節は春だと思う。スーパーの棚にやわらかな色合いの野菜が並ぶと自然とこころが弾む。 中でもときめくのは山菜だ。早いと2月下旬ごろから並び始めるそれは、タラの芽、ふきのとうと続き、桜の頃にはうるい、ウド、こ…

    はてなブログ | 無料ブログを作成しよう
    mooz
    mooz 2010/05/14
    オブジェクトファイルをカレントディレクトリ以外へ置くサフィックスルール. dir/%.o: %.cc のようにする
  • make part2

    make (C言語編) ●注意● 基編でも述べたが、 Makefileのコマンド行の先頭は TABで空ける。 このページのサンプルでは「→」で表現しているが、 当に「→」を書いてはいけない。 はじめに make はもちろん、プログラム開発でも利用される。 大規模なプログラム開発では、 一つのプログラムが数百のソースファイルに分割されていることも珍しくない。 このようなケースでは、コンパイルに数時間かかることもある。 一つのファイルをちょっと修正しただけで毎回 数時間もコンパイルするのでは あまりにも非効率である。 また、makeのマクロ定義などをうまく利用すれば、 コンパイルオプションの集中管理もできる。 ここでは、Cのプログラム開発に makeを使用した例を示す。 (なお、統合開発環境では、 同じことを「プロジェクトの管理」という名前で行なっている。) ソースファイルが一つだけの場合

    mooz
    mooz 2010/05/14
    gcc -MM foo.c で, foo.c の依存関係を自動生成.
  • canvasでキラキラした背景を作る方法 - KAYAC Engineers' Blog

    tech.kayac.com、ささやかにリニューアルしました! tech.kayac.comをご覧の皆さん、はじめまして。意匠部ME課のfuchigamiといいます。 どうして技術部ブログに意匠部の野郎が?って感じですが、 技術部ブログのリニューアル記念ということで、ちゃっかりcanvasについて記事を書こうと思います。 最初なので、、、 簡単にぼくの属性を説明すると、html5とか好き、CSS3とか好き、canvasとか興味ある、非モテjavascriptはjQueryがなんとなくわかる程度、非リア充。こんな感じです。 今回のリニューアルではコーディング全般を担当しました。 特に、プログラミングに関してはド素人だ!ということを強調しておきます。 そんなぼくが、canvasを使ってキラキラした背景を作ってみました 「リニューアルするからには新しいことがやりたいよね。だったらhtml5とc

    canvasでキラキラした背景を作る方法 - KAYAC Engineers' Blog
    mooz
    mooz 2010/05/14
    これはすごい. globalCompositeOperation = "lighter"
  • Emacsでバッファ保存時にdiff を知らなかった - hibomaの日記

    昨日気づいたんだけど、Emacsでバッファの保存時に Save file /Users/hiroya/hgoe.pl? (y, n, !, ., q, C-r, d or C-h)こんなプロンプトが出てくるけど、ここで'd'を押すと、保存したいバッファの現在の状態と保存する前のファイルのdiffが出てくる. diff -c /Users/hiroya/hgoe.pl /tmp/buffer-content-11593BR2 *** /Users/hiroya/hgoe.pl 2007-03-11 11:06:46.000000000 +0900 --- /tmp/buffer-content-11593BR2 2007-03-11 11:06:57.000000000 +0900 *************** *** 1,5 **** #!/usr/bin/perl use strict

    Emacsでバッファ保存時にdiff を知らなかった - hibomaの日記
    mooz
    mooz 2010/05/14
    こんな素敵機能があったのか. 知らなかった. Save file ~ ? で d を押すと diff. ピリオドを押すと保存して Emacs を終了.
  • C++と Pthreads でミニマルなHTTPサーバを書く - いやなブログ

    C++と Pthreads でミニマルなHTTPサーバを書く 『UNIXネットワークプログラミング』を読んでいると、自分でも何かネットワーク系の小さなプログラムを書いてみたくなりました。そこで、ミニマルなHTTPサーバを C++と Pthreads で書いてみました。 同じ著者の「詳解UNIXプログラミング」もそうだったように、今回のもほとんどすべてのページに、重要なことが書かれています(最後のほうのXTIの部分は例外かもしれませんが)。 たとえば、27章ではネットワークサーバの実装として、次の設計方針がそれぞれ検討され、実際のコード付きで解説されています。 クライアントごとに fork 事前に fork - 各プロセスで accept 事前に fork - ファイルロックで accept を保護 事前に fork - Mutex ロックで accept を保護 (PTHREAD_PRO

    mooz
    mooz 2010/05/14
    C++ で HTTP 処理. Pthread を利用.
  • google ime (mozc)のソースコードが公開されたので読んでみた。 - お前の血は何色だ!! 4

    google ime (mozc)のソースコードが公開されました。 http://code.google.com/p/mozc/ http://codezine.jp/article/detail/5174 http://googlejapan.blogspot.com/2010/05/google_10.html なんで、早速ソースコードを探検してみた。 google のスーパーハカーはどういう楽しいコードを書いているのか興味津々です。 #まだすべてのソースコードに目を通していないです。 1.CallOnce という CASで実装された楽しい関数 base/mutex.cc に、 CallOnce という 大変ユニークな関数があります。 void CallOnce(once_t *once, void (*func)()) { if (once == NULL || func == NU

    google ime (mozc)のソースコードが公開されたので読んでみた。 - お前の血は何色だ!! 4
    mooz
    mooz 2010/05/14
    渡された関数を一度しか実行しないような関数を用意. 排他制御は CAS で. シングルトンの実装に利用.
  • Mozc(Google日本語入力)のコードを読んだメモ - 射撃しつつ前転 改

    Google日本語入力がOSS化されたということで、気になっていたところをいくつか確認してみた。 変換アルゴリズムはどんな感じか? twitterの工藤さんの発言にも「わりと古典的な最小コスト法」とあるけれど、まさにそんな感じ。人名の処理とかでちょっと特別なコードが入ったりもしているが、ほぼ基的な統計的かな漢字変換のモデル。係り受けの情報とかは使っていない。Viterbiでベストパスを求めて、品詞ベースで文節にまとめあげている。コストモデルは接続コストが品詞対品詞で、単語コストの方は単語毎に設定されているっぽい。 src/converter/immutable_converter.ccのImmutableConverterImpl::ViterbiがViterbiアルゴリズムの部分で、その後にMakeSegmentsで文節にまとめている。読むならImmutableConverterImp

    Mozc(Google日本語入力)のコードを読んだメモ - 射撃しつつ前転 改
    mooz
    mooz 2010/05/14
    基本的な統計的かな漢字変換. Bigram の Viterbi. 品詞ベース. ひらカナ変換に Double Array. システム辞書に LOUDS. Darts と rx 使用.
  • FirefoxのsetTimeoutの実装 - bits and bytes

    Firefoxのソースコードを追っているうちに、たまたま1年遅れで IT戦記 - JavaScript を学ぶ際に一番重要なのに、誤解されがちな setTimeout 系の概念 の裏側がどうなっているかがわかったので、その話を。 タイマーの管理方法 そもそもjavascriptからsetTimeoutを呼ぶと、どういう仕組みで指定した時間後に渡した関数が呼び出されるようになっているのでしょう。Linuxであればsleepのように一定時間後にawakeするという処理は、タイマーリストによって管理されています。カーネルの中にN jiffies(LinuxのOS内時間の単位はjiffyと呼ぶそうです)経過後に実行することリストがあって、カーネルが4msごとに毎回タイマーリストをチェックしてやることがあったときにはそれを実行しています。 FirefoxもLinuxと同じようにタイマーリストみたいな

    mooz
    mooz 2010/05/14
    TimerThread 内部
  • WebSocketでClock on Tornado - Keep on moving

    Tornado のWebSocketを久々にいじって遊んでます。 pythonで別のWebSocketの処理実装diffract.meで出てくるClockを実装したことがなかったので書いてみました。 ついでにClockとは一秒ごとにWebSocketのサーバーの時間をメッセージで送って表示することです。 Tornadoのポイント 1秒ごとにメッセージを送るの必要があります、普通はpythonではtime.sleepを使うのが普通らしいのですが、 実はTornadoのWebSocketではtime.sleepをつかうと処理が固まってしまいます。 まだよく理解していないのですが、Tornadoの作り故に使えないようすです。 以下の様にioloopのadd_timeoutを使うことでTornadoではスケジューラっぽいことができるようです。 さらっと実装出来ると思っていたのですがここではまってし

    WebSocketでClock on Tornado - Keep on moving
    mooz
    mooz 2010/05/14
    WebSocket. Python でサーバ.
  • Zotero - The Next-Generation Research Tool

    Your personal research assistant Zotero is a free, easy-to-use tool to help you collect, organize, annotate, cite, and share research. Download Available for Mac, Windows, Linux, and iOS Just need to create a quick bibliography? Try ZoteroBib. Collect with a click. Zotero automatically senses research as you browse the web. Need an article from JSTOR or a preprint from arXiv.org? A news story from

    mooz
    mooz 2010/05/14
    文献管理の支援などをしてくれる拡張機能
  • setIntervalとsetTimeoutを調べた結果余分なことになった - 三等兵

    なかなかどうして、怠惰な若輩者につき不明な点が多々あるため先人の知恵をお借りしたく候。というわけでいろいろ知恵や知識などいただきます。・・・消化不良でしたorz setTimeoutの中の小難しいお話 自分だけじゃ到底調べられないし分かる術もない。Cなんて知るか。だのにこうしてなんとなくでも知ることができるのはありがたいことです。 http://labs.gmo.jp/blog/ku/2007/09/firefoxsettimeout.html Firefoxだけで少し古い記事だけど今でも同じようなものかな。他に私がわかるような資料もないのでこちらをベースに考えさせてもらいます。大きな変更はないだろうし。 タイマースレッド URL先読んだだけではイメージできなかった。整理のため箇条で要約。 Firefoxにはタイマー処理だけを管理している専用のスレッドがある(TimerThread) タイ

    setIntervalとsetTimeoutを調べた結果余分なことになった - 三等兵
    mooz
    mooz 2010/05/14
    素晴らしい記事.
  • 機能が呼び出されたことを他のアドオンに通知する « Mozilla Developer Street (modest)

    あなたはアドオンを作る時、他のアドオンと連携しやすいようにするということを意識しているでしょうか? 例えば、複数のタブをまとめて一気に閉じる機能を設けるために、タブの配列を受け取ってそれらをすべて閉じる closeTabs() という関数を定義するとしましょう。 function closeTabs(aTabs) { gBrowser.dispatchEvent(event); aTabs.forEach(function(aTab) { gBrowser.removeTab(aTab); }); } この機能を提供するアドオンの作者であるあなたにとっては、これ以上特に何も気にする事はありませんよね。 では、他のアドオン作者の人が、あなたのアドオンと連係して動作するアドオンを開発する場面を考えてみましょう。この関数が呼ばれたという事を他のアドオンから検知するにはどうすればよいでしょうか?

    機能が呼び出されたことを他のアドオンに通知する « Mozilla Developer Street (modest)
    mooz
    mooz 2010/05/14
    createEvent('Events') としてイベントを作成. initEvent('FooBar', true, false) などとしてイベント情報を設定. イベントのプロパティは自由自在にいじれる.
  • Latest topics > Windows 7のAeroPeek(タスクバーのプレビュー)にアドオンから手を出してみる - outsider reflex

    Latest topics > Windows 7のAeroPeek(タスクバーのプレビュー)にアドオンから手を出してみる 宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行まんがでわかるLinux シス管系女子の試し読みが可能! « タブバーの縦置き・横置きをタブの数に応じて自動で切り替えたい(A new option to switch the position of the tab bar by the number of tabs.) Main ロケーションバーからAlt-Enterでタブを開けない?(ALT-Enter in the location bar doesn't open new tab?) » Windows 7のAeroPeek(タスクバーのプレビュー)にアドオンから手を出してみる

    mooz
    mooz 2010/05/14
    WindowsPreviewPerTab.jsm で AeroPeek をごにょごにょ.