はてなキーワード: TESTとは
1, 2, 3, 4!
Almost every day
ほとんど毎日
I see the same face
同じ顔を
On broken picture tube
壊れたテレビで見るぜ
It fits the attitude
態度にピッタリだな
If you could see yourself
自分自身を見直してみろ
You put you on a shelf
自分のことを棚に上げながら
Your verbal masturbate
口先だけのオナニーや
Promise to nauseate
Today I'll play the part of non-parent
Not make a hundred rules
100個もルールを作る気にもならない
For you to know about yourself
お前が自分自身についてわかるように
Not lie and make you believe
嘘なしで信じさせてやる
What's evil is making love
セックスも
and making friends
友達も
and meeting God you're own way
神様に祈るのも悪いことさ
The right way
こいつが正しいんだ
(Chorus)
To see
見てみろ
To bleed
血を流してみろ
Cannot be taught
教えられることじゃねえ
In turn
次々に
You're making us
お前が俺を作ってるんだな
Ohhhh Fucking hostile
なんてお前は敵対的なんだ
We stand alone
俺たちは一人ぼっちってことさ
The truth in right and wrong
真実は間違ってるけど正しい
The boundaries of the law
法律すれすれのところで
You seem to miss the point
お前はしくじっちゃったみたいだな
Arresting for a joint?
マリファナに気づかれちまったのか?
You seem to wonder why
どうしてって聞きたいみたいだな
Hundreds of people die
何百もの人が死んでいって
You're writing tickets man
お前はその切符を書いてる
My mom got jumped -- they ran!
母親が飛ぶとあいつらは走るから
Now I'll play a public servant
警察と今遊んでるのさ
To serve and protect
奉仕して、守って
By the law and the state
法と国家によって
I'd bust the punks
That rape steal and murder
And leave you be
お前をそんなふうにして
If you crossed me
俺ともう一回会えるなら
I'd shake your hand like a man
Not a god
神じゃなくて
(Chorus)
Come meet your maker, boy
お前の親父に会わせろよ
Some things you can't enjoy
享受できないことだってあるさ
天国と地獄のせいさ
A fucking wives' tale
糞みたいな物語を
They put it in your head
あいつらがお前の頭の中に入れて
Then put you in your bed
ベッドのそばで子守唄にする
He's watching say your prayers
お前のために祈ってる奴を見ろってあいつは言うなあ
Cause God is everywhere
神様はどこにでもいるからだってさ
Now I'll play a man learning priesthood
じゃあ俺は聖職者に付き従ってる男の役でもやってみよう
Who's about to take the ultimate test in life
誰が人生最大の問いなんてものを投げかけてきても
I'd question things because I am human
俺は人間だから答えてやろう
And call NO ONE my father who's no closer than a stranger
知らない奴より神様に近い奴なんていなんだ
I won't listen
聞きたくもないんだ
To see
見てみろ
To bleed
血を流してみろ
Cannot be taught
教えられることじゃねえ
In turn
次々に
You're making us
お前が俺をつくってるんだな
Fucking, fucking, fucking
糞みたいに
FUCKING HOSTILE!
お前は敵対的なんだ
安らかに眠れ
ダイムバッグダレル
「IE8」「Firefox」「Safari」「Google Chrome」… 激化するブラウザー競争:アルファルファモザイク
http://alfalfa.livedoor.biz/archives/51386857.html
自分はFirefox 3をゴリゴリにカスタマイズして使っています。
ですがFirefoxが他ブラウザに比べてそれほどに素晴らしいとおもっているわけではありません。
『特定アドオンが便利すぎてやめたくてもやめられない』
からFirefoxユーザーをやめられないのではないでしょうか。
自分はブラウザ比較で取りざたされるJava ScriptやFlashの実効速度だの
レンダリング性能だのはブラウザ選びにそれほど重視しません(Acid Testの実行結果も)
記事であげられているブラウザのいくつかはテスト版からそれぞれ使用していますが、
いずれもソフトのユーザー(そのブラウザのファン)からの要望をきちんと取り入れて今のような形になっているということが伺えます。
「○○が糞」という評価の仕方や「Proxomitronとの組み合わせ」をブラウザ比較で上げるのは
やはりあまり適切ではないのでは無いかと思います。
これは余談となります。
たんなる事実の一つですが、自分の周りの長くインターネットに携わっている、いわゆる上級者は
めぐりめぐってIEをタブなしで使うという結論に至る人が多いようです。
少なくともIEで見られないような設計をしてるサイトはないですから、それももちろん正解なのでしょう。
必要でないところに無用な労力を払わないというのも『できる奴』の条件ですし。
もしIE以外のブラウザをこれから使ってみようかという方は、ネット上での意見だけを頼りにせず自分で色々と試していただきたいです。
その結果IE 6が一番使いやすいと思ったとしてもそれは不正解でもなんでもありません。
きちんと自分にとって必要なソフトウェアを見極められたという証明と言って良いはずです。
ここみる http://d.hatena.ne.jp/h_kenan/20080717
apt-get から install Encode
svn から Encode
cd [Encode Dir] してから sudo perl Makefile.PL
モジュール一括インストール? sudo -H cpan App::Mobirc
make && make test して出てきた not installed を f**k
=> install Test::Spelling
sudo gnome-terminal
cd /home/pc/.cpan/build/HTML-DoCoMoCSS-0.01
・・・いけたか?
・・・
・・・
・・・
はいむりー
はいこんにちは! Hamachiya2だよ。
alertでなくなったね。こんな短時間ですごい。
エガミくん飲み込みはやい感じだね…。
ええと、あとは、下の方の画像で、どうもマーキータグ(marquee)が埋め込まれてるみたいってことだよね。
うん。もう一回、htmlソースを表示ってして確認してみたよ。
こんなのが埋め込まれてた。
<img src='http://farm4.static.flickr.com/3120/2784053843_b7a7d07c9a_s.jpg' border=0 title=<marquee>test XSS</marquee> alt=<marquee>test XSS</marquee> />
これは問題点が二つあってね、
1つは、タグをエスケープしわすれている箇所がある点
もう1つが、htmlの属性値(alt=ナントカとか)をクオートでくくってない点
この二つを直していこうか!
phpのプログラムの中のどこかで、<img>タグを出そうとしている部分があるはずだよ。
まずはそれを探そう。
そしたらきっと、その部分は、imgにphpの変数を色々埋め込んで出そうとしているはず。
たとえばこんな風に。
echo "<img src='xxxxxx" . $hensuu1 "' title=" . $hensuu2 . " />";
これの$hennsuuも全てhtmlspecialchars()してあげる感じかな。
echo "<img src='xxxxxx" . htmlspecialchars($hensuu1, ENT_QUOTES) "' title=" . htmlspecialchars($hensuu2, ENT_QUOTES) . " />";
こうだね。
そうすればmarqueeタグが埋め込まれていても、
<img src="xxxxxxxx" title=<marquee>test xss</marquee> />
こんな風にmarqueeとかがタグじゃなくなるので防げる。
でも完全じゃないんだこれ。
さっきも言った、属性値のクオートが足りてないから、ちょっと工夫すればxssやられちゃう。
詳細は長くなるので今は省くけど。
だから上の対処に加えて、titleとかaltとかの中身が、htmlでみた時に、ダブルクオートかシングルクオートで
くくられているようにしてやれば、いい感じになるよ!
<img src="xxxxx" title=ぺろぺろ alt=ぺろぺろ />
こうじゃなくて
<img src="xxxxx" title="ぺろぺろ" alt="ぺろぺろ" />
こうなるようにしよう。
(追記)
ちなみに、何で悪い大人の人はXSSの脆弱性を突いてきて悪い事をするんですかー??
それだけエガミくんの生み出すものが注目されているってことだよ。
目立つとどうしても悪い人も寄ってきちゃうから困るよね。
学校卒業以来20年以上英語とは無縁の生活を送ってきた平凡な40歳技術系サラリーマンが半年でTOEICスコア400→700点(+300点)獲得したので、その記録をまとめておきます。
勤めている会社で去年から管理職になるための資格としてTOEIC600点が必要になった。それで人生初のTOEICを受験。試験数日前に「はじめてのTOEIC...」的な本を1冊買って、適当に読んだだけで臨んだ初TOEIC。残り20問以上は時間ぎれで適当にマーク。結果は400点(リスニング170点、リーディング230点)。これじゃあ、完全にヤバイと思いTOEIC勉強生活を開始した。
「NHKラジオ基礎英語1」「NHKラジオ基礎英語2」「NHKラジオ基礎英語3」(各15分)を聴いて徹底的に復習した。だいたい毎日1時間くらい。テキスト安価で内容はかなり濃い。これを3ヶ月続けるだけでも相当な基礎力が身につく。基礎英語は中学生用などと馬鹿にはできない。
TOEICはビジネス英語に関係する問題が多いので、ビジネス英語をやっておく必要がある。NHKラジオの「入門ビジネス英語」がかなり使える。入門といってもレベルはかなり高い。もうひとつNHKラジオ講座に「実践ビジネス英語」というのがあるが、こちらの難易度は高すぎてすぐに挫折した。
『TOEIC Test「正解」が見える キム・デギュン』、俗称「キム本」と言われているTOEIC愛好家の間ではとても有名な本。目からうろこの攻略法がいくつもかかれている。TOEIC400点レベルの人ならこれをやるだけで50点から100点アップは軽く期待できる。
TOEIC受験の1ヶ月前からは、「TOEICテスト新公式問題集」を5、6回解いた。何度も練習することでリスニングも鍛えられるし、リーディングの時間配分も頭にたたきこまれる。TOEIC直前に勉強時間がない場合は、前述の「キム本」と「公式問題集」をやるだけでかなり効果がある。
はじめはTOEIC対策のメルマガを10個位登録したが、欲張りすぎてすぐに続かなくなりゴミ箱に捨てる日々が続いた。結局はひとつのメルマガに絞った。それが、「TOEICリスニング・リーディング特効薬!」(http://www.mag2.com/m/0000094849.html)。週一発行でかなり濃い内容となっている。これを2ヶ月くらい続けていくうちにリスニング、リーディング共にかなり自信がついてきた。
TOEIC受けるまで全く知らなかったけど、英語を学習している人のブログってものすごくある。結論として一番為になったブログは「ほぼ毎日英語学習日記(http://kyonenglish.blog98.fc2.com/)」。ここの管理人はTOEIC465点アップを果たしているという点で凄いが、それ以上に幅広い有益な情報を提供してくれるのが凄い。毎回更新が楽しみなのでTOEIC目標達成後も愛読している。NHKテレビで放送されているABCニュースシャワーという英語ニュース番組を動画つきで紹介してくれるが、これはリスニング強化に役立つ。
上記の内容を半年続けた結果、TOEICで700点(リスニング380、リーディング320)を獲得することができた。しかし、実は直近のTOEICでは630点に低下した。TOEICで感じたのは、リスニングは比較的簡単に伸びやすいということ。400点レベルの人はリスニング対策しっかりやればそれなりのアップが期待できる。リーディングは最後の長文でどうしても時間が足りなくなる。700点獲得したときも残り10問は時間切れで適当にマークした。リーディングを伸ばすには英文を日頃からたくさん読むなどの努力が必要と感じた。
400点だった頃は、700点とかってすごい英語ができる人のイメージだったけど、実際に700点とって感じたことは「そんなことない」。実際の英語のニュースを聴いても半分も理解できないし、英会話なんて全くできない。TOEIC700点というのは、あくまでもTOEICがある程度できるという証明であり、英語ができるということではない。
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('&'); 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); } } ||>
.
本記事末尾のローカルなkey mappingを実現するコードを改良してプラグインにしました。
↓
Vimperatorでローカルなkey mappingを実現するプラグイン local_mappings.js を書いた。
http://anond.hatelabo.jp/20080826124641
2008-07-14 - やぬすさんとこの日記
http://d.hatena.ne.jp/janus_wel/20080714
→n秒後/前に移動するkey mappingも忘れずに!
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
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