「KEY」を含む日記 RSS

はてなキーワード: KEYとは

2009-03-26

http://anond.hatelabo.jp/20090326123924

適当ググる。がいくつかあったので羅列

str.charCodeAt(0) + str.charCodeAt(str.length-1)
(str.charCodeAt(0) + str.charCodeAt(str.length-1)) * str.length
    while (*key != '\0') 
        hashval += *key++;
    do{
        x = (x * 0x60 + *s - 0x20) % hashsize;
    }while(*++s);
/* ハッシュ値算出ルーチン */
/* 各文字コードを左に3シフトしたものでXORをとり、 */
/* ハッシュテーブルのサイズで割った余りを返す */
int HashCalc( SearchData )
char *SearchData;
{
  int HashValue;

  for ( HashValue = 0 ; *SearchData != '\0' ; )
    HashValue ^= (int)*SearchData++ << 3;
  return( HashValue % HASHSIZE );
}

2009-03-11

[][][][][][]

Deploy Merb, Sinatra, or any Rack App to Heroku

http://blog.heroku.com/archives/2009/3/5/32_deploy_merb_sinatra_or_any_rack_app_to_heroku/

http://heroku.com/pages/quickstart

http://heroku.com/docs

http://heroku.com/

HerokuをGit経由で使ってみる

http://d.hatena.ne.jp/aki-s-119/20081110/1226335713

http://github.com/guides/using-git-and-github-for-the-windows-for-newbies

Windows から Git を使う方法

http://d.hatena.ne.jp/kusakari/20080715/1216091060

msysgit - Google Code

http://code.google.com/p/msysgit/

PuTTYssh2プロトコルを使ってssh接続

http://net-newbie.com/putty.html

&gt;heroku help
=== General Commands

 help                         # show this usage

 list                         # list your apps
 create [<name&gt;]              # create a new app

 keys                         # show your user's public keys
 keys:add [<path to keyfile&gt;] # add a public key
 keys:remove <keyname&gt;        # remove a key by name (user@host)
 keys:clear                   # remove all keys

=== App Commands (execute inside a checkout directory)

 info                         # show app info, like web url and git repo
 open                         # open the app in a web browser
 rename <newname&gt;             # rename the app

 sharing:add <email&gt;          # add a collaborator
 sharing:remove <email&gt;       # remove a collaborator

 domains:add <domain&gt;         # add a custom domain name
 domains:remove <domain&gt;      # remove a custom domain name
 domains:clear                # remove all custom domains

 rake <command&gt;               # remotely execute a rake command
 console <command&gt;            # remotely execute a single console command
 console                      # start an interactive console to the remote

 restart                      # restart app servers
 logs                         # fetch recent log output for debugging
 logs:cron                    # fetch cron log output

 bundles                      # list bundles for the app
 bundles:capture [<bundle&gt;]   # capture a bundle of the app's code and dat
 bundles:download             # download most recent app bundle as a tarba
 bundles:download <bundle&gt;    # download the named bundle
 bundles:animate <bundle&gt;     # animate a bundle into a new app
 bundles:destroy <bundle&gt;     # destroy the named bundle

 destroy                      # destroy the app permanently

=== Example story:

 rails myapp
 cd myapp
 (...make edits...)
 git init
 git add .
 git commit -m "my new app"
 heroku create myapp
 git remote add heroku git@heroku.com:myapp.git
 git push heroku master

2009-03-04

Keyイベント品の転売がすごい

    もちろん、これらの落札金はKeyの懐には入らない。

    これからはKeyが直接オークションをすれば、Key代表麻枝准の念願だったRPG制作の開発費を稼げるのではないか。

    2009-02-26

    個人エロゲサイトの印象

    「ここ1年で出て来た注目のエロゲーサイトまとめ」ランキングTOP10を見て。

    http://tekitounaotoko.blog4.fc2.com/blog-entry-470.html

    • basicchannel

    2chまとめBlog

    KEYメイン、ときどきその他エロゲブランドアニメラノベ

    アニメDVD売上関係は 「今日もやられやく」と競合している。

    エロゲ全方位。エロゲ雑誌ライター

    文章の構成能力ライターだけあって随一。

    確信釣り師。何か書けば個人ニュースサイトが必ず取り上げる。

    KEY二次創作メイン。記事を書くと必ず突っこまれるボケ担当(天然と推測)。

    すべての判断基準がKEY。ドクロアイテムを拾って爆弾を垂れ流しにするボンバーマン

    名前の通りKEY情報Blog。

    KEY情報があると、とりあえず個人ニュースサイトはここにリンクを張る。

    • 犀の目ぶろっぐ

    オーガストメイン。地方エロゲショップ店員。

    やたら文章が長い。途中で読むのに挫折することもある。

    2chまとめBlogアニメメイン

    CLANNADアニメ絡みでエロゲ関連にされた。

    • 思考錯誤

    このランキングをまとめたサイト

    エロゲアニメ漫画感想考察、時々○○論。結構雑食性。

    たまにネットラジオをやる。

    • Primula

    基本鍵っ子。最近は八月寄り。でも一番は07th Expansion

    ここも雑食度が高い。

    KEY情報サイト

    「Primula」でやっていたCLANNADアニメBGMリストはこっちに移動した。

    • notable or ordinary

    エロゲ論、エロゲ統計サイト

    最近データを調べつくしたのか更新されていない。

    Webサイト感想を書くのって「まなめソッド」っぽいよね。

    2009-02-19

    同人的に盛り上がる作品について思うこと

    http://blog.livedoor.jp/seki_fujiki/archives/248702.html

    常々思っていることだけど、自分ブログに書くと炎上間違い無しなので、匿名ダイアリーで書くことにした。

    例外も多いが、同人的に大ブレイクするにはある程度の条件がある。

    絵が「微妙」なことだ。

    あえて下●とは言わない

    ファミコン版のファイアーエムブレムや、ときめきメモリアルの第一作の絵はかなり野暮ったいものだ。Keyの「いたる絵」は、最初見たときには目を疑った。To HeartPC版の作画は当時のレベルからしてみてもさほど良くは無いはずだ。月姫が出たとき当時のTypeMoonの絵は、素人臭いというのが第一印象だ。

    そういった、ビジュアル的な弱点を持ちながら、ゲームシステムシナリオが秀逸であることが同人活動の盛り上がりに関係するという感覚がある。

    突っ込みどころの少ないスキの無い絵柄は、同人ネタになりにくい。リーフでも「こみっくパーティー」あたりとなると絵に関してはクオリティ管理が安定してくるが、逆に狂ったようなブームになることもなかった。判子絵揶揄される西又葵にせよ「べっかんこう」にせよ、ある程度のアベレージは常にクリアしている。大槍葦人あたりになると、カユいところからパンツの中まで手がいきとどいていてやることが無い。

    ひねくれた見方をすれば、「ゲームとしては良いんだけれど絵が駄目だね。俺ならもっと可愛く描けるぜ」といった歪んだ自尊心同人の動力源なのかもしれない。(オリジナル作家の心理は微妙だろうけど)完成度がある程度高いと、同人でやる意味が少なくなる。それは多くの作家の場合は劣化コピーになるだけだ。

    2009-02-17

    英紙Financial Times の記事

    http://www.ft.com/cms/s/0/579dffea-fc44-11dd-aed8-000077b07658.html

    Japan’s politicians lose their way at a bad time

     

    The DPJ talks about replacing bureaucrats with politicians in key ministerial positions

    but says virtually nothing about what policies these newly empowered politicians would

    implement. Ichiro Ozawa, its leader, is a survivor from the old school of Japanese

    politics too busy micromanaging the election - he is his own Karl Rove - and too

    unwilling to share decision-making with others in the party, especially those whom he

    suspects are not entirely loyal to him, to be spending time preparing a transition.

     

    民主党は省庁に議員を送り込むと言っているが、その議員がどんな政策を実施するのか

    実質的に何も言っていない。小沢一郎は保守的な日本の政治家であり選挙対策ばかりで

    忙しい。政策決定を党の中の誰とも共有するつもりがなく、とりわけ小沢に完全に忠誠を

    誓っていると小沢が信じる人間でないと相手にされない。

     

    The other day I asked an MP who is one of the party’s economic policy specialists what

    fiscal policies the DPJ would employ to deal with what is shaping up to be Japan’s worst

    postwar recession. His answer: “We haven’t thought much about that yet.”

     

    先日、民主党経済政策専門家の一人である衆院議員戦後最悪の不況に対する民主党の政策に

    ついて尋ねたら、彼は「まだあまり考えてない」と答えた。

     

     

    There will be more destruction, perhaps including the demise of both the LDP and DPJ

    and the formation of new parties. Whatever the political goings-on, there is no

    optimistic short-term scenario for Japan.

     

    おそらく自民党民主党の両方の崩壊や新党の形成を含む崩壊がやってくるだろう。

    どんな政治的事件だとしても、日本にとって短期的に楽観できるシナリオはない。

     

    At some point the public will grasp the seriousness of the economic troubles and demand

    change. But that crisis mentality does not exist today. Therefore things will not only

    get worse before they get better. They will get worse before the political system comes

    up with policies that even stand a chance of making them better.

     

    ある時点で大衆経済問題と需要変化の深刻さを理解するだろう。しかし現時点では

    そのような危機は心の中には存在しない。したがって政治システムが有望な政策を

    思いつく前に状況は悪化するだろう。

     

    2009-01-20

    窓使いの憂鬱HHKB

    だいぶ前のことなので結構忘れてるけど。

    買ったのはHHKBPro2。OSはWindowsVista

    買ってまずしたこと

    背面のスイッチをいじってキーを変える。

    http://www.pfu.fujitsu.com/hhkeyboard/leaflet/hhkb_backview.html

    左◇Fn
    右◇Win
    DeleteBackspace

    左◇あたりにFnを割り振らないと右小指でしかFnを押せなくて面倒。

    DeleteよりBackspaceの方が使用頻度が高いので変更。(Fn+DeleteでDeleteを押したことになります)

    パソコン側の設定

    ノートPC(日本語Windows)で英語配列HHKBを使う時はUSJPを入れるのが限りなく正解に近い。

    http://www.trinityworks.co.jp/software/USJPPro/index.php

    デスクトップPCではドライバ英語キーボードに設定すればいい。

    ノートPCでUSJPを入れていて、USJPにはおまけ機能でいくらかのキーの組み合わせを設定できるので

    デスクトップPCでも同じにするためにとりあえず窓使いの憂鬱を入れた。

    Vista対応版

    http://slashdot.jp/~kazu2/journal/411746

    設定はこんな感じにした。

    include "104.mayu"
    
    key C-D = Delete
    key C-H = BackSpace
    key C-M = Enter
    key C-Space = $ToggleIME
    

    逆に普通日本語配列キーボードを似非HHKBにする設定。

    どこかで見た設定をベースにいじったような気がしますがどこのがベースか忘れた。

    自分は左◇キーをFnキーに設定して使っているので無変換キーをFnキーにするとちょうどよくなる。

    include "104.mayu"
    
    mod control += CapsLock
    def subst *CapsLock = *LControl
    key S-Pause = CapsLock
    
    def key 無変換 = 0x7b
    mod mod0 = 無変換
    key *S-M0-K = *S-Home
    key *S-M0-Comma = *S-End
    key *S-M0-Apostrophe = Right 
    key *S-M0-Semicolon = Left
    key *S-M0-LeftSquareBracket = Up
    key *S-M0-Solidus = Down
    key *S-M0-L = *S-PageUp
    key *S-M0-FullStop = *S-PageDown
    key M0-R = F5
    key C-D = Delete
    key C-H = BackSpace
    key C-M = Enter
    key *S-M0-_1 = F1
    key *S-M0-_2 = F2
    key *S-M0-_3 = F3
    key *S-M0-_4 = F4
    key *S-M0-_5 = F5
    key *S-M0-_6 = F6
    key *S-M0-_7 = F7
    key *S-M0-_8 = F8
    key *S-M0-_9 = F9
    key *S-M0-_0 = F10
    key *S-M0-HyphenMinus = F11
    key *S-M0-EqualsSign = F12
    
    def key JisBackslash = 0x7d
    key JisBackslash = Backslash
    key S-JisBackslash = $VERTICAL_LINE
    
    key C-Space = $ToggleIME
    

    HHKBを繋いだ時は上の設定、普通キーボードを繋いだ時は下の設定に切り替えてやってます。

    どうでもいいこと

    2つあるUSBポートが結構便利。

    無線マウスレシーバをここに挿してます。

    USBメモリを挿したい時もここ。

    重量が結構ある。

    レッツノート(1.5kg)とこれを一緒に持ち歩くととても重いのと体積が増えるので最近は置きっぱなしなことが多い。

    2008-11-18

    [][]池田信夫「彼(クルーグマン)の議論が機会主義的で一貫性を欠くのは今に始まったことではないが」

    参考

    ■[知識][経済]2008年11月17日 朝日新聞 クルーグマンの記事 全文

    http://anond.hatelabo.jp/20081118194540

    クルーグマン

    金融政策が影響力を失い財政政策しか残っていないと言うのは、「不思議の国のアリス」の世界だ。この世界では貯蓄を高めるのが悪い事で、健全財政も悪い事。逆に完全にムダな政府支出が善いこと。「あべこべ世界」だ。ここには長くいたくない。

    池田信夫

    http://blog.goo.ne.jp/ikedanobuo/e/1030466313fe91ad865d0bfa2b9c9f1a

    彼(クルーグマン)は、1998年に"It's Baaack!"と題する論文で、

    伝統的な見方では、流動性トラップに置いて金融政策は無力で、財政支出の拡大だけが唯一の出口、ということになるけれど、これは考え直すべきだ。もし中央銀行が、自分たちは無責任になり、将来はもっと高い物価水準を目指します、ということを信用できる形で約束できれば、金融政策もやっぱり有効になる。

    と主張した。これに日本の「リフレ派」と称するエコノミストが唱和して、日銀が異常な金融緩和を行ない、それが円キャリーを誘発してアメリカバブルの一因となった。それなのに今回は同じ状況でインフレ目標を提案しないで、かつて「やけくその政策」とバカにした財政政策を推奨するのはどういうわけか。彼の議論が機会主義的で一貫性を欠くのは今に始まったことではないが、学者ならかつての自分の提案が間違っていたことを認め、それが日米の経済に少なからぬ悪影響を与えたことを謝罪してほしいものだ。

    補足 (池田信夫)

    2008-11-18 13:36:26

    TBにも書かれているが、クルーグマンがこの記事の質問に答えています(日本語が読めるわけないが)。

    http://krugman.blogs.nytimes.com/2008/11/15/macro-policy-in-a-liquidity-trap-wonkish/

    This misses a key point that I and others tried to make for Japan in the 90s and are trying to make again now: creating inflation is easy if you’re an irresponsible country. It may not be easy at all if you aren’t.

    要するに、日本では(アメリカでも)無理だということを認めたわけです。しかし、それに代わって彼が提言する財政支出は、もっと無責任な政策です。こういうとき国際的な影響を考えないのは、政治家経済学者も同じ。かつての「インタゲ」論議が日本国内のことばかり考えて、結果的にグローバルな過剰流動性を作り出した愚を繰り返してはならない。

    2008-10-20

    Key作品タイトル

    Kanon

    パッヘルベル「3つのヴァイオリン通奏低音のためのカノンジーグ ニ長調

    (独: Kanon und Gigue in D-Dur für drei Violinen und Basso Continuo)

    1曲目の「Canon in D major」はたぶんクラシックの中で一番有名な曲

    AIR

    バッハの「G線上のアリア」(Air on the G String)

    アリア英語読みするとAir

    CLANNAD

    アイルランド音楽グループヴォーカルエンヤの姉

    名前の由来は「入り江(の村)から来た家族

    リトルバスターズ!

    the pillowsの6枚目アルバムLITTLE BUSTERS」から。

    アニメフリクリ」の挿入歌に使われている曲が多い。

    Rewrite

    ASIAN KUNG-FU GENERATIONシングル鋼の錬金術師OP

    消してえーリライトしてえー

    だんだん俗っぽくなってるのは気のせいですか?

    2008-10-19

    [][][][][][][][][]

    ●一番重要な事柄●主要点●八割●


    一番重要な事柄を最初に処理する。カーネギー

    人間は必ずしも物事をその重要性に応じて処理しえないことを知っている。

    しかし、また一番重要なことがらを最初に処理するように計画するほうが、行きあたりばったりのやり方よりも、はるかに良いことも知っている。

    道は開ける デール カーネギー

    Amazon.co.jp: 耳で聞くD・カー0CD;ギー道は開ける オーディオCD版: 本


    最も必要な事を、その主要点から着手しなさい。ヒルティ

    仕事をするときには、いつでも、

    まず第一にもっとも必要なことをしなさい。

    元気よく、そしてその仕事の主要点から着手しなさい。

    これが多くの仕事のために時間を得る手段である。

    それとほとんど同じようによい第二の手段は、

    不必要な仕事努力をすべて避けることである

    ヒルティ


    [機会費用]KFS(Key Factors for Success)

    KFS(Key Factors for Success)

    「物事には、その結果に影響を与える主要因というのがかならずいくつか存在する。

    これらをうまく管理あるいは応用すれば戦略が成功する」

    大前 研一『企業参謀』P192)

    Amazon.co.jp: 企業参謀―戦略的思考とはなにか: 大前 研一: 本

    戦略思考家とは、みずからの担当する職務(役職、業種、業務)において、

    つねにKFSがなんであるかという認識を忘れない人のことであろう。

    そして、彼は全面戦争ではなく、

    KFSに対する限定戦争に”挑戦的”に挑むのである。」

    (『企業参謀』P193)


    生き残る種とは、

    もっとも強いものではない。

    もっとも知的なものでもない。それは、

    変化にもっともよく適応したものである。

    ダーウィン


    [biz]中ぐらいの勝利で満足する者は、常に勝者でありつづけるだろう。

    基本三原則: 1.面白いことを勉強する 2.全体から理解する 3 8割までやる

    80点主義


    [トレードオフ][機会費用][選択と集中]人生トレードオフ

    仕事の効率を改善することができるすごい壁紙 - GIGAZINE

    大事を小事の犠牲にしてはならない。ゲーテ

    大きな仕事のために、小さな仕事を放っておく。

    小事省事。椎名悦三郎

    巧遅(こうち)は拙速(せっそく)に如(し)かず

    何をやらないかを選択するという厳しいトレードオフに耐える強い意思

    エクセレンスへの道は今すぐエクセレントではない事を全てやめること

    何物かを選ぶことは、他の一切を捨てることである。チェスタートン

    [権内][権外][エピクテートス]意志の力でどうにもならない物事

    Amazon.co.jp: 鈴木敏文語録―まず「仮説」と「検証」 (ノン・ブック・愛蔵版): 緒方 知行: 本

    社会人なら押さえておきたいフレームワーク思考 - livedoor ディレクター Blog(ブログ)

    フランクリン・プランナー重要領域に生きる

    Amazon.co.jp: ザ・ゴール ― 企業の究極の目的とは何か: エリヤフ ゴールドラット, 三本木 亮: 本

    最小の努力で最大の効果を得るには、全体最適が常に優先されるべきである。

    正しい仕事は何かが正しく定義され、評価されなければ、誰も正しい仕事などするはずがない。

    会社に損失を与えてきたのは、人間が正しい仕事を行わない「仕組み」をつくりあげた会社組織そのものである。

    ゴールドラット博士



    リンク

    はてなブックマーク - anond.hatelabo.jp人気エントリー

    はてなブックマーク - 人気エントリー

    Delicious

    みんなの知識【ちょっと便利帳】

    2008-10-18

    http://anond.hatelabo.jp/20081018072817 の続きだよ

    これでおしまいだよ

    elisp

    sangels.el
    (require 'cl)				; for cl-seq
    
    (defvar sangels-movies-dir nil)
    (defvar sangels-player "c:/Program Files/GRETECH/GomPlayer/GOM.exe")
    (defvar sangels-sort-by 'sangels-sort-by-rate)
    (defvar sangels-rate-file "~/.emacs.d/.sangels/rate")
    (defvar sangels-buffer "*sangels*")
    (defvar sangels-thumbnail "00_thumbnail.jpg")
    (defvar sangels-m3u "00_movies.m3u")
    (defface sangels-name '((t (:family "fixed" :weight bold :height 3.0)))
      "")
    (defface sangels-rate '((t (:family "fixed" :weight bold :height 1.5)))
      "")
    (defvar sangels-mode-map
      (let ((map (make-sparse-keymap)))
        (define-key map "n" 'next-line)
        (define-key map "p" 'previous-line)
        (define-key map (kbd "RET") 'sangels-select)
        (define-key map (kbd "SPC") 'sangels-select)
        (define-key map "q" 'sangels-quit)
        (define-key map "+" 'sangels-rate-plus)
        (define-key map "-" 'sangels-rate-minus)
        map))
    (defvar sangels-mode-hook nil)
    (defvar sangels-highlight-overlay nil)
    (defvar sangels-rate-alist nil)
    
    (defconst sangels-rate-max 6)
    
    (defun sangels-insert-movies ()
      (save-excursion
        (let* ((inhibit-read-only t)
               (files (remove-if-not
                       (lambda (x)
                         (and (not (member (file-name-nondirectory x) '("." "..")))
                              (file-directory-p x)
                              (member sangels-thumbnail (directory-files x))))
                       (directory-files sangels-movies-dir t)))
               (ids (mapcar 'file-name-nondirectory files)))
          (erase-buffer)
          (setq ids (sangels-sort-ids ids))
          (dolist (id ids)
            (let ((file (expand-file-name id sangels-movies-dir))
                  (pos (point)))
              (insert-image-file (expand-file-name sangels-thumbnail file))
              (end-of-line)
              (insert (propertize (format "%-15s " id)
                                  'face 'sangels-name))
              (sangels-insert-rate id)
              (insert "\n")
              (put-text-property pos (point) 'sangels-id id))))))
    
    (defun sangels-sort-by-name (a b)
      (string< a b))
    
    (defun sangels-sort-by-rate (a b)
      (or (> (sangels-rate a) (sangels-rate b))
          (sangels-sort-by-name a b)))
    
    (defun sangels-sort-ids (ids)
      (sort ids
            (or sangels-sort-by
                'sangels-sort-by-name)))
    (defun sangels-insert-rate (id)
      (let ((rate (sangels-rate id)))
        (insert (propertize (concat
                             (make-string rate ?★)
                             (make-string (- sangels-rate-max rate) ?☆))
                            'sangels-rate t
                            'face 'sangels-rate))))
    
    (defun sangels-current-id ()
      (get-text-property (point) 'sangels-id))
    
    (defun sangels-play-movie (movie)
      (let ((explicit-shell-file-name "cmdproxy")
            (shell-file-name "cmdproxy"))
        (apply
         'call-process-shell-command
         "start" nil "*tmp*" nil
         (mapcar (lambda (x) (concat "\"" x "\""))
                 (list sangels-player
                       (unix-to-dos-filename movie))))))
    
    (defun sangels-select ()
      (interactive)
      (let ((id (sangels-current-id)))
        (when id
          (sangels-play-movie (expand-file-name
                               sangels-m3u
                               (expand-file-name id sangels-movies-dir))))))
    
    (defun sangels-quit ()
      (interactive)
      (kill-buffer sangels-buffer))
    
    (defun sangels-rate (id)
      (or (cdr (assoc id sangels-rate-alist)) (/ sangels-rate-max 2)))
    
    (defun sangels-rate-save ()
      (interactive)
      (let ((dir (file-name-directory sangels-rate-file)))
        (unless (file-exists-p dir)
          (make-directory dir t)))
      (with-temp-file sangels-rate-file
        (insert (pp-to-string sangels-rate-alist))))
    
    (defun sangels-rate-load ()
      (interactive)
      (when (file-exists-p sangels-rate-file)
        (with-temp-buffer
          (insert-file-contents sangels-rate-file)
          (goto-char (point-min))
          (setq sangels-rate-alist (read (current-buffer))))))
    
    (defun sangels-rate-plus (&amp;optional n)
      (interactive "p")
      (setq n (or n 1))
      (let* ((id (sangels-current-id))
             (cell (assoc id sangels-rate-alist)))
        (unless cell
          (setq cell (cons id (sangels-rate id)))
          (setq sangels-rate-alist (cons cell sangels-rate-alist)))
        (setcdr cell (+ (cdr cell) n))
        (save-excursion
          (let ((inhibit-read-only t))
            (beginning-of-line)
            (goto-char (next-single-property-change (point) 'sangels-rate))
            (delete-region (point)
                           (next-single-property-change (point) 'sangels-rate))
            (sangels-insert-rate id)))
        (sangels-rate-save)))
    
    (defun sangels-rate-minus (&amp;optional n)
      (interactive "p")
      (setq n (or n -1))
      (sangels-rate-plus (- n)))
    
    (defun sangels-post-command-hook ()
      (save-excursion
        (move-overlay
         sangels-highlight-overlay
         (progn
           (move-beginning-of-line 1)
           (point))
         (progn
           (move-end-of-line 1)
           (forward-line)
           (point))
         (current-buffer))))
    
    (defun sangels-mode ()
      (interactive)
      (kill-all-local-variables)
      (use-local-map sangels-mode-map)
      (setq sangels-highlight-overlay (make-overlay 0 0))
      (overlay-put sangels-highlight-overlay 'face 'highlight)
      (overlay-put sangels-highlight-overlay 'evaporate t)
      (make-local-variable 'post-command-hook)
      (add-hook 'post-command-hook 'sangels-post-command-hook nil t)
      (setq major-mode 'sangels-mode)
      (setq mode-name "Sangels")
      (run-mode-hooks 'sangels-mode-hook)
      (set-buffer-modified-p nil)
      (setq buffer-read-only t))
    
    (defun sangels (&amp;optional arg)
      (interactive "P")
      (when (or arg (not sangels-movies-dir))
        (setq sangels-movies-dir (read-directory-name "movies dir: ")))
      (sangels-rate-load)
      (switch-to-buffer (get-buffer-create sangels-buffer))
      (sangels-insert-movies)
      (sangels-mode))
    
    (provide 'sangels)
    

    id:X-key氏の批判に応える

    http://anond.hatelabo.jp/20081017225836

    を書いた元増田ですが。

    これのブクマコメントに、

    id:X-key 『そういう論点は全て的外れであって、問題の本質ではない』と言った時点で、この問題に論点が複数あることに目を瞑りました宣言。論点整理もしないで自論に持ち込もうというのは、シートン先生と同じで感情・好悪論

    という批判を頂いた。折角頂いたが、この批判もまたいくらか的外れである。

    なぜなら自分は別に複数の問題に目を瞑るつもりはなくって、そもそもが「シートン先生はどういうつもりであのエントリーを書いたか、また

    http://d.hatena.ne.jp/KoshianX/20081016/1224141158

    このエントリーを批判したか」という問題意識シートン先生について論じたのであって、つまりまさに「シートン先生の感情・好悪」、それしか問題にしていない。芋や行政代執行にはなんの興味もないのです。ただひたすら、シートン先生の果敢な自己主張、幼児をも政治的に味方にして府知事を批判せんとする敢闘精神の由来について整理したわけです。

    そのお積もりで改めて

    http://anond.hatelabo.jp/20081017225836

    を読んで下さると幸いです。

    なお、

    http://pc11.2ch.net/test/read.cgi/net/1222631045/418

    こちらでビール噴いたと言っている人には、そんなの責任取れませんよと言いたい。言いたいんだってば。

    2008-10-02

    Classic Texts in Computer Science

    リブログです。

      http://www.zafar.se/bkz/Articles/ClassicCompScienceTexts

      http://www.zafar.se/bkz/wiki/view/43bafac8c8570f4f

      にあったけど、無くなっていたので

      http://web.archive.org/web/20060823143349/www.zafar.se/bkz/home/classictextsincomputersc.html

      から拾ってきた。

      でも書いてる途中に↓を見つけてしまったのでした。

      Classical Computer Science Texts

      2008-09-25

      []

      http://www.ubuntulinux.jp/products/JA-Localized http://www.ubuntulinux.jp/

      http://jody.sci.hokudai.ac.jp/~ike/colum/ubuntu_feisty_amd64.html

      wget -q http://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | sudo apt-key add -

      sudo wget http://www.ubuntulinux.jp/sources.list.d/hardy.list -O /etc/apt/sources.list.d/ubuntu-ja.list

      sudo apt-get update

      sudo apt-get install ubuntu-desktop-ja

      sudo apt-get install ubuntu-ja-keyring

      sudo apt-get upgrade

      sudo apt-get install language-pack-gnome-ja language-pack-ja

      sudo apt-get install ipafont ipamonafont lha-sjis

      sudo apt-get install scim-anthy

      sudo apt-get install scim-bridge im-switch

      sudo apt-get install openoffice.org-l10n-ja openoffice.org-help-ja mozilla-firefox-locale-ja-jp

      im-switch -l

      2008-09-20

      rubyキモいただひとつの理由

      1.俺(Matz)ルールが多い

      hash.each do |key, value| .... end

      での、この縦バーとか、do ... end とかもキモい

      foo.valid? とか。ドキュメントにおける「クラス名#関数名」とか。

      とにかく俺ルールが多い。キモいルールが多い。

      後続のスクリプト言語採用されないようなセンスの俺ルールが多い。

      2008-08-04

      予告.inに仕込まれてた自動2ch書き込みFlashActionScript抽出してみた

      予告.inに仕込まれてたFlash

      yutori.2ch.net.hp.infoseek.co.jp/w/r/e/wrestleangel/post2ch.swf#host=yutori.2ch.net

      ここ↑にあるやつ。

      解説よろしく。

      movie 'post2ch.swf' {
      // flash 8, total frames: 17, frame rate: 12 fps, 320x320 px
      
        frame 1 {
          System.useCodepage = true;
          nret = function (k, v) {
            return (flash.external.ExternalInterface.call('d', k, v)).toString();
          };
      
          host2ch = 'tmp6.2ch.net';
          i = _url.indexOf('://');
          if (-1 < i) {
            host2ch = _url.substring(i + 3);
          }
          i = host2ch.indexOf('.2ch.net');
          if (-1 < i) {
            host2ch = host2ch.substring(0, i + 8);
          }
          path2ch = '/test/bbs.cgi?guid=ON';
          l = new LoadVars();
          i = _url.indexOf('#');
          u = '';
          if (0 < i) {
            u = _url.substring(i + 1);
          }
          LoadVars.prototype.sendNoEnc = function (url, target, method) {
            LoadVars.prototype._toString = LoadVars.prototype.toString;
            LoadVars.prototype.toString = function () {
              return unescape(this._toString());
            };
      
            ASSetPropFlags(LoadVars.prototype, '_toString', 3);
            this.send(url, target, method);
            LoadVars.prototype.toString = LoadVars.prototype._toString;
          };
      
          ASSetPropFlags(LoadVars.prototype, 'sendNoEnc', 3);
        }
      
        frame 2 {
          _root.nowtime = null;
          _root.secondpost = null;
          _root.FROM = null;
          _root.mail = null;
          _root.MESSAGE = null;
          _root.subject = null;
          _root.ng = null;
        }
      
        frame 3 {
          (flash.external.ExternalInterface.call('c')).toString();
        }
      
        frame 9 {
          if (_root.nowtime == null) {
            if (!_root.ng) {
              gotoAndPlay(3);
            } else {
              this.stop();
            }
          }
        }
      
        frame 10 {
          if (_root.nowtime == null) {
            gotoAndPlay(3);
          }
          nowtime = _root.nowtime;
          l.addRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
          l.hana = 'mogera';
          l.time = '1180000000';
          if (l.time < nowtime) {
            l.time = nowtime;
          }
          l.key = '';
          l.bbs = 'kitchen';
          l.MESSAGE = '%82%D3%82%F1%82%C7%82%B5';
          l.subject = '%82%D3%82%F1%82%C7%82%B5';
          l.mail = '';
          l.FROM = '%82%D3%82%F1%82%C7%82%B5';
          l.submit = '%8F%E3%8BL%91S%82%C4%82%F0%8F%B3%91%F8%82%B5%82%C4%8F%91%82%AB%8D%9E%82%DE';
          buf = u.split('&amp;');
          i = 0;
          goto 623;
          for (;;) {
            ++i;
            label 623:
            if (i >= buf.length) break;
            a = buf[i].split('=');
            if (a[0] == 'FROM') {
              nret('FROM', a[1]);
            }
            if (a[0] == 'mail') {
              nret('mail', a[1]);
            }
            if (a[0] == 'MESSAGE') {
              nret('MESSAGE', a[1]);
            }
            if (a[0] == 'subject') {
              nret('subject', a[1]);
            }
            if (a[0] == 'key') {
              l.key = a[1];
            }
            if (a[0] == 'time') {
              l.time = a[1];
            }
            if (a[0] == 'bbs') {
              l.bbs = a[1];
            }
            if (a[0] == 'host') {
              host2ch = a[1];
            }
            if (a[0] == 'path') {
              path2ch = a[1];
            }
          }
        }
      
        frame 16 {
          if (_root.nowtime == null) {
            gotoAndPlay(3);
          }
          if (_root.FROM != null) {
            l.FROM = _root.FROM;
          }
          if (_root.mail != null) {
            l.mail = _root.mail;
          }
          if (_root.MESSAGE != null) {
            l.MESSAGE = _root.MESSAGE;
          }
          if (_root.subject != null) {
            l.subject = _root.subject;
          }
          if (l.key != '') {
            l.subject = '';
          }
          if (l.subject != '') {
            l.key = '';
          }
          l.sendNoEnc('http://' + host2ch + path2ch, '_2ch', 'POST');
        }
      
        frame 17 {
          if (_root.secondpost != null) {
            _root.secondpost = null;
            gotoAndPlay(4);
          }
          _root.nowtime = null;
          gotoAndPlay(2);
        }
      }
      ||>
      

      2008-08-03

      予告in犯罪予告スクリプトメモ

      <body onload="document.frm.submit()">
      <form name="frm" method="post" action="http://yutori.2ch.net/test/bbs.cgi?guid=ON">
      <input value="書き込む" name="submit" type="submit">
      <input name="FROM" size="19">
      <input name="mail" size="19"><br>
      <textarea rows="5" cols="70" wrap="off" name="MESSAGE">てst</textarea>
      <input name="bbs" value="news4vip" type="hidden">
      <input name="key" value="key" type="hidden">
      <input name="time" value="time" type="hidden">
      </form>
      

      ニコニコ動画を快適化するvimperator設定まとめ

      .

      8/27追記

      本記事末尾のローカルkey mappingを実現するコードを改良してプラグインにしました。

      Vimperatorローカルkey mappingを実現するプラグイン local_mappings.js を書いた。

      http://anond.hatelabo.jp/20080826124641


      まずnicontroller.jsを入れる。

      2008-07-14 - やぬすさんとこの日記

      http://d.hatena.ne.jp/janus_wel/20080714

      →n秒後/前に移動するkey mappingも忘れずに!

      vimperatorrcにこれを書く。

      Re: autocmd が分からない - hogehoge

      http://d.hatena.ne.jp/teramako/20080731/p1

      コードをいじった。

      " --- autocmd ---
      
      " nicovideo
      " cでコメント入力、Cでコマンド入力、sでシーク、lでボリューム調整、
      " pで停止/再生、mでミュートのon/off、vでコメの表示トグル、zでズームjavascript <<EOM
      liberator.plugins.nicomap = function(){
        // no args
        var list=[
          ["p","nicopause"],
          ["m","nicomute"],
          ["v","nicomementvisible"],
          ["z","nicosize"],
          ["s","nicoseek"],
        ];
        // has args
        var list2=[
          ["c","nicomment"],
          ["C","nicommand"],
          ["l","nicovolume"],
          ["s","nicoseek"],
        ];
        if(buffer.URL.indexOf("http://www.nicovideo.jp/watch") == 0){
          for (var j=0; j<list.length; j++){
            let i = j;
            liberator.mappings.addUserMap([1],[list[i][0]],list[i][1],
              function(){
                liberator.execute(list[i][1]);
              },{
                rhs:":"+list[i][1]+"<CR>"
              }
            );
          }
          for (var j=0; j<list2.length; j++){
            let i = j;
            liberator.mappings.addUserMap([1],[list2[i][0]],list2[i][1],
              function(){
      	  liberator.execute('normal :'+list2[i][1]+'<Space>');
      	},{
      	  rhs:":"+list2[i][1]+"<Space>"
      	}
            );
          }
        } else {
          for (var i=0; i<list.length; i++){
            liberator.mappings.remove(1,list[i][0]);
          }
          for (var i=0; i<list2.length; i++){
            liberator.mappings.remove(1,list2[i][0]);
          }
        }
      };
      liberator.autocommands.add('LocationChange','.*','js liberator.plugins.nicomap()');
      EOM
      

      フォーカスプレーヤーに奪われないようにするグリモン

      2008-08-02 - 地獄の猫日記

      http://d.hatena.ne.jp/nokturnalmortum/20080802#1217633913

      →→これで超快適すぎるニコライフの幕開け!

      .

      補足

      現在マウスカーソル位置でクリックイベント発生するkey mappingを設定できればより快適なんだが・・・。

      (「コメントする」ボタンDOMノードが取得できれば、dispatchEventでいけそうだけど)

      追記: ちょっと改良してみた。
      " ************* local key mappings ****************
      javascript <<EOM
       (function(){
      function setlocalmap(obj){
          var list = obj.list;
          var list2 = obj.list2;
          var exp = obj.exp;
          if(list.constructor != Array || list2.constructor != Array){
            echr("invalid argument: array argument required");return;
          }
          if(exp.constructor != RegExp){
            echr("invalid argument: regex argument required");return;
          }
          if(exp.test(liberator.buffer.URL)){
            for (var j=0; j<list.length; j++){
              let i = j;
              liberator.mappings.addUserMap([1],[list[i][0]],list[i][1],
                function(){
                  liberator.execute(list[i][1]);
                },{
                  rhs:":"+list[i][1]+"<CR>"
                }
              );
            }
            for (var j=0; j<list2.length; j++){
              let i = j;
              liberator.mappings.addUserMap([1],[list2[i][0]],list2[i][1],
                function(){
        	  liberator.execute('normal :'+list2[i][1]+'<Space>');
        	},{
        	  rhs:":"+list2[i][1]+"<Space>"
        	}
              );
            }
          } else {
            for (var i=0; i<list.length; i++){
              liberator.mappings.remove(1,list[i][0]);
            }
            for (var i=0; i<list2.length; i++){
              liberator.mappings.remove(1,list2[i][0]);
            }
          }
      }
      /** 
       * Add Key Mappings to Specific Web Pages
       * @param obj : has following properties
       *  list : commands that take no args
       *  list2 : commands that take args
       *  exp : target page's URL (regex)
       * @see Re: autocmd が分からない - hogehoge
       * http://d.hatena.ne.jp/teramako/20080731/p1
       */
      liberator.plugins.addLocalUserMap = function(obj){
        liberator.plugins[obj.name + "MapSetter"] = function(){
          setlocalmap(obj);
        }
        liberator.autocommands.add(
        	'LocationChange', '.*', 'js liberator.plugins.' + obj.name + 'MapSetter()'
        );
      };
      
      // nicovideo
      // cでコメント入力、Cでコマンド入力、sでシーク、lでボリューム調整、
      // pで停止/再生、mでミュートのon/off、vでコメの表示トグル、zでズーム。
      var nicovideo = {
      	name : 'nico',
      	exp : /^http:\/\/www.nicovideo.jp\/watch/,
      	list : [
      	    ["p","nicopause"],
      	    ["m","nicomute"],
      	    ["v","nicomementvisible"],
      	    ["z","nicosize"],
      	    ["s","nicoseek"],
      
      	],
      	list2 : [
      	    ["c","nicomment"],
      	    ["C","nicommand"],
      	    ["l","nicovolume"],
      	    ["s","nicoseek"],
      	],
      };
      liberator.plugins.addLocalUserMap(nicovideo);
      })();
      EOM
      

      2008-07-22

      GIGABYTE M912

      GIGABYTE M912台湾PCメーカーGIGABYTEULCPC

      初出はCOMPUTEX 2008 IN TAIPEI

      特徴

      スペック

      CPUIntel Atom 1.6GHz
      OS(オプション)正規版 Windows XP, 正規版 Windows Vista Home Basic
      チップセットIntel 945GSE
      構成メモリ 1GB, HDD 160GB
      液晶8.9インチ 液晶 パネル/WXGA(1280x768), ワイドタッチスクリーン, 180度回転
      HDD2.5インチSATA HDD, 9.5mm
      光学ドライブ (オプション)USB接続 外付けドライブ
      キーボード80 key キーボード / タッチパッド
      I/O ポートUSB x 3,マイク入力端子, イヤホン端子, D-SUB RJ45, Express card, SD/MMC/MS
      Audio内蔵 Realtek ALC268, Azalia I/F, 2 Channels Speaker 1.5 W x 2
      BluetoothBlueTooth 2.0 内蔵
      Webカメラ1.3M pixel webcam
      無線LAN802.11b/g by mini-card
      防犯ケンジントンロック
      バッテリーLi-ion 4500 mAh
      バッテリー駆動時間3.5 時間
      体積235 x 180 x 28~42mm
      重量1.3kg (含む2.5インチHDD)

      2008-07-18

      vimperator最高

      ほんとにもう最高。

      楽したい人間+ハマり性な人間には、こーゆーカスタマイズがしがし出来るツールが最高なのよ。

      オレ流ブラウザ環境整備できるのももうタマラン。

      エディタならvimemacsでもいいけど、あんまり詳しくない。

      他のツールはカスタマイズ性で見劣りする。

      こだわりのない人間にはどんなツールでもオッケーなんだろうね。

      オレはこだわるところはこだわる。

      ちょっとした不便に気づかないか気づいても甘受してしまうような人間と、今はクリアできなくともなんとか今後の課題にしたいと考える人間。

      そこの違いだね。

      どっちが得かというのはわからんけどね。

      優劣とか損得の問題じゃなく、ただオレはそういう人種だってこと。


      追記

      ブクマありがとう

      vimperatorrcねえ。特筆すべき点はないけど、あえて一部抜粋すれば、こんな感じ。

      inoremap <C-1> <Esc>1gt
      inoremap <C-2> <Esc>2gt
      inoremap <C-3> <Esc>3gt
      inoremap <C-4> <Esc>4gt
      inoremap <C-5> <Esc>5gt
      inoremap <C-6> <Esc>6gt
      inoremap <C-7> <Esc>7gt
      inoremap <C-8> <Esc>8gt
      inoremap <C-9> <Esc>9gt
      noremap <BS> H
      noremap <S-BS> L
      noremap ,b <Esc>:bmarks -tags=
      noremap u :o<Space> " ldrc+ldrでoで:open出来ない問題を解決
      
      " wildoptions=auto時に一瞬補完が表示されてウザいmapがある - Dis Communication - 符号無し
      " http://unsigned.g.hatena.ne.jp/Trapezoid/20080620/1213961754
      javascript <<EOM
      [
          [',a',':dialog addbookmark'],
          [',c',':viewSBMComments -t h'],
          [',C',':viewSBMComments -t hdl'],
          [',d',':pindownload'],
          [',ld',':set ldrc'],
          [',p',':mb clear-pin'],
          [',q',':toggleldrc'],
          [',R',':so ~/_vimperatorrc'], 
          [',r',':res'],
          [',v',':!vim ~/_vimperatorrc'], 
          ['\\s',':scrapbook'],
          ['\\S',':scrap'],
          ['\\f',':firebug'],
          ['\\d',':dialog downloads'],
          ['\\p',':tabopen chrome://browser/content/places/places.xul'],
          ['!',':set invum'],
          ['B',':ls!'],
          ['\\a',':addons'],
          ['\\e',':errorconsole'],
          ['\\F',':firebugwindow'],
          ['\\d',':dialog downloads'],
          ['\\g',':oepnGMpanel'],
          ['\\G',':toggleGM'],
          ['e',':note'],
          ['<F11>',':fullscreen'],
          ['\\P',':placesnewwin'],
          ['\\H',':historynewwin'],
          ['<C-j>',':togglebookmarksidebar'],
          ['<C-k>',':togglehistorysidebar'],
          ['<C-l>',':addtoldr'],
          ['<C-S-Right>',':removerighttabs'],
          ['<C-S-Tab>',':previousfirebugtab'],
          [',o',':openselectedlinks'],
          [',3',':copy titleAndURL'],
          [',ig',':imageGet'],
          [',io',':imageOpen'],
          ['w',':submit'],
          [',lo',':logout'],
          // nicontroller.js
          [',ni',':nicoinfo'],
          [',np',':nicopause'],
          [',nm',':nicomute'],
          [',nv',':nicommentvisible'],
          [',nz',':nicosize'],
          [',ns',':nicoseek'],
      ].forEach(function([key,command]){
          liberator.mappings.addUserMap([liberator.modes.NORMAL], [key], "User defined mapping",
              function () { liberator.execute(command); }, {rhs: key, noremap: true});
      });
      EOM
      
      javascript <<EOM
      [
          ['<C-j>',':togglebookmarksidebar'],
          ['<C-k>',':togglehistorysidebar'],
      ].forEach(function([key,command]){
          liberator.mappings.addUserMap([liberator.modes.INSERT], [key], "User defined mapping",
              function () { liberator.execute(command); }, {rhs: key, noremap: true});
      });
      EOM
      
      javascript <<EOM
      // nicontroller.js plugin
      // [N]-
      // N 秒前にシークする。
      // 指定なしの場合 10 秒前。
      liberator.mappings.addUserMap(
          [liberator.modes.NORMAL],
          ['-'],
          'seek by count backward',
          function(count) {
              if(count === -1) count = 10;
              liberator.execute(':nicoseek! ' + '-' + count);
          },
          { flags: liberator.Mappings.flags.COUNT }
      );
      
      // [N]+
      // N 秒後にシークする。
      // 指定なしの場合 10 秒後。
      liberator.mappings.addUserMap(
          [liberator.modes.NORMAL],
          ['+'],
          'seek by count forward',
          function(count) {
              if(count === -1) count = 10;
              liberator.execute(':nicoseek! ' + count);
          },
          { flags: liberator.Mappings.flags.COUNT }
      );
      EOM
      

      Vimperatorで;bでリンクを新しいバックグラウンドのタブに開くようにする。

      http://anond.hatelabo.jp/20080709195527

      も俺の仕業なんだけど、これvimperator本体に実装してくれないかな。

      気になる点・これからの課題

      窓の杜 - 【NEWSFirefox 3のスマートロケーションバーに対応した「XUL/Migemo

      http://www.forest.impress.co.jp/article/2008/07/07/xulmigemo0105.html

      余談

      Index of /

      http://vimperator.driftaway.org/

      に上がるのはたいてい朝の07:30になっているので、いつからかチェックするのが朝の習慣になった。

      2008-06-12

      89年生まれ

      1. ハルヒは本放送を見ていないが、話題になってから後追いする
      2. 秋葉原は「メイドさんがいる観光地」のイメージ
      3. エロゲーkeyとか田中ロミオあたりからやる。「つよ☆きす」から入る人も
      4. ガンダムを知らない人と知ってる人で同世代間闘争が起こる。古典派とそれを拒絶するものたち
      5. でもなんだかんだいってコードギアスは観てる
      6. ニコニコ動画などの新しい文化に比較的歓迎ムード
      7. アニメはもちろんニコ動ようつべで観る
      8. マンガは好きなものしかチェックしない
      9. ファッションセンスはそれ以前のオタク世代よりもかなり上。もちろん気にしない奴もいる
      10. ゲーム小学校低学年でGB(ポケモン)、SFC小学校中学年でPS(FF7)、N64(スマブラ)、中学校PS2
      11. ハヤテのごとく!元ネタはよくわからないけど、とりあえずおもしろいヒナギク萌え

      2008-05-19

      ここまできたか。

      という感慨を覚えた。

      Fateは文学

      Air芸術

      CLANNADは人生

      リトバス筋肉

      鳥の詩は国歌

      SchoolDays神話

      君が望む永遠哲学

      ひぐらし論理

      ―――だが、ロミオには敵わない。そう、ロミオこそ、この世界の全て。

      瀬戸口信者「―――だが、そんなロミオ作品もCARNIVALswan songには劣る」

      健速「おっと、健速先生を忘れてもらっちゃあ困るぜ」

      ニトロ信者「沙耶は純愛!」るーす厨「とっつぁぁぁぁぁぁぁぁぁぁんっ!!!」

      「久弥は何度でも甦る」「丸戸の素晴らしさがわからないなんて…」

      「結局奈須が一番」「めておの戦闘力は53万です」「健速乙」「永遠はあるよ…KEYにあるよ」

      エロゲという大海を彷徨う長い旅の果て、皆LEAFに帰ってくる」

      YU-NOも知らずエロゲ語るんじゃねぇ、ゆとりども!」

      ひぐらし厨「ゆとりゆとりうるせぇんだよッ!ぶちまけられてえかああぁああぁぁあああぁああああああッ!!!」

      「ガッシ!ボカッ!」エロゲヲタ共は死んだ。ヲタスイーツ(笑)

      2008-05-03

      答えはいらない。ただ、今は、僕が何かになれればいいのかな。だめだ。

      I wish I was a neutron bomb, for once I could go off

      I wish I was a sacrifice but somehow still lived on

      I wish I was a sentimental ornament you hung onThe christmas tree,

      I wish I was the star that went on top

      I wish I was the evidence,

      I wish I was the grounds For 50 million hands upraised and open toward the sky

      I wish I was a sailor with someone who waited for me

      I wish I was as fortunate, as fortunate as me

      I wish I was a messenger and all the news was good

      I wish I was the full moon shining off a camaros hood

      I wish I was an alien at home behind the sun

      I wish I was the souvenir you kept your house key on

      I wish I was the pedal brake that you depended on

      I wish I was the verb to trust and never let you down

      I wish I was a radio song, the one that you turned up

      2008-04-09

      YourFileHost の簡単な FLV 保存方法

      YourFileHost で動画再生している時に下の文字をアドレスバーコピペして、Enterキー押すと簡単にflvファイル落とせるね!

      javascript:if(document.body.innerHTML.match(/<param\sname=\"movie\"(.*?)%2526cid%253D(.*?)%2526(.*?)%2526cdnkey%253D(.*?)%2526/)){location.href="http://cdn.yourfilehost.com/unit1/flash8/"+RegExp.$2.substr(0,2)+"/"+RegExp.$2+".flv?key="+decodeURIComponent(RegExp.$4)}else{alert("Failed");}
      

      ブックマークURLに登録して再生中にそのブックマーク開くと、同じように落とせるしこっちの方が簡単だね。

      ブックマークレットってやつだね。

      ま、全部試してないけど、これとかは落とせたね。

      http://www.yourfilehost.com/media.php?cat=video&file=one_night_stand.wmv

      2008-04-07

      早大生の東大コンプレックスについて(2)

      早大生の東大コンプレックスについて(2)

      1 名前: 名無しさん 投稿日: 2000/05/01(月) 07:49

      東大コンプレックスバリバリ削除人移転されちゃいましたが、

      この板で続けましょう。

      早大生の東大コンプレックス」が、日本社会に及ぼしているインパクト

      おおきいのです。

      http://www.2ch.net/test/read.cgi?bbs=2chtr&key=956628192&ls=100

      http://piza.2ch.net/log/2chtr/kako/957/957134954.html

      ログイン ユーザー登録
      ようこそ ゲスト さん