- < Newer
- Older >
「sbmc.user.js」更新 その2
Greasemonkey: sbmc.user.js - mayokara note
セキュリティ・フィックス。
- innerHTMLを使っている箇所できちんとHTMLエスケープするようにした
- HTMLエスケープされた状態で送ってくるJSONがあって微妙……→対処した
- z-indexを256から512に変更
HTMLエスケープとリンク生成
var h = function(str){
return String(str).replace(/[&<>"']/g, function($0){
return {"&": "&", "<": "<", ">": ">", '"': """, "'": "'"}[$0];
});
};
var makeanchor = function(str){
return str.replace(/https?:\/\/[\w\-.!~*'();\/?:@&=+$,%#]+/g, '<a href="$&" target="_blank">$&</a>');
};
後者は厳密なものではないです。
「sbmc.user.js」更新
Greasemonkey: sbmc.user.js - mayokara note
delicious.comに対応した。
あと、tr要素にユーザ名つきのclassNameを追加したので
#sbmc-user-js tr.sbmc-user-js-hatena-mayokara384 {
display: none;
}
とかで特定のユーザを消せます。
無題
19姉妹が各種言語を学習するブログ(WHOLE SWEET LANG)をお願いします。
Fw: 2churl.net
2chの板名とキーワードを元に、最新スレッドに転送するURLを生成するサービス。
Fw: eroga.aurifero.us
えろげサンプル画像ローダー。18禁。
読み込み待ちのストレスをjQueryアニメーションで軽減というのが良い。
原画スタッフの名前で検索できなかったのがちょっと残念ではあるけど、まあ、それはそれ。
というかDMMのラインナップ、偏ってるなあ。
追記
ブランド・原画家からも検索できるようになっていた。
Re: そういうのも認めるよ
あなたの勝手な思い込み・勘違いを私の間違いにされては困りますし、迷惑で不愉快です。
Re: 間違いを指摘 - mayokara note
と書いたら
基本、agendaは「不愉快」だから。エンターテイメントじゃないんだし愉快な文章なんて書いていられるか。
(糞)議論について (agenda)
と、ブログ自身あるいは文体について不愉快だと書いたことになっている。
「あなたの勝手な思い込み・勘違いを私の間違いにされては」「困る」「迷惑」「不愉快だ」って書いたんですけど。
別に伝言ゲームじゃないんですけどねえ。
他にも
include *で使う限り何回再描画が行なわれるかは「不明」だ。
「不明」だから「たとえば」と書き、具体的な回数を出したのですが。
何なら「不明なほど多くの回数の修正に対して」と置き換えてもらっても構いませんよ。文意は変わりません。
歓迎しているが、歓迎するというのは、肯定するということではないし、必ず反応するということでもない。そして「聞く耳」というのは、何でもかんでも肯定することではない。
「肯定しろ」とも「必ず反応しろ」とも書いていません。
「聞く耳を持て」と書いただけで「何でもかんでも肯定しろ」なんて一言も言っていません。
というか、言われなくてもわかっています。誰に言っているんですか?
「聞く耳を持て」という言葉の意味がきちんと伝わっているのか疑問です。
そんなカテゴリはない。
『「意見交換、批判等」が正しいカテゴリ名だ』という指摘を、そんな堂々と言われても。
「揚げ足取り」という言葉の意味に合意が取れているのかも疑問です。
わざとやってるんですかね。
冒頭の件のように私が言っていないことを私の瑕疵として非難されるのが「不愉快」と書いたのであって、別に文体だのタイトルの「Re:」だの「agenda」の運営方針だのには一言も触れた覚えはないのですが。
どうも私の答えではなく自分の期待する答えに対して演説しているようですが、そんなものは相手をおいて議論をする以前の問題では?
で、結局元の文章をどう修正すればあなたのような人間にケチをつけられない文章になったんですかね。
「ドキュメントに修正を加えるならば」のくだりは文全体にかかっています(日本語にブレースがないのが残念)。
「修正」の意味に合意が取れていない可能性を考え、その点補足も入れましたし、どんな場合でも代替しうるものではないことも強調しました。
これは『「ビューとの分離」と書いているので~』
の点に対する補足のつもりだったんですけどねえ。
リンクについては「無断リンク禁止」と同程度に「無断リンクなし言及禁止」をしょうもないものだと思っているし、「リンクを張る自由」と同じように「あえてリンクを張らない自由」もあるという立場なので、そこを非難されてもという感じ。
- 一連の流れを正確に追っていないし、口を挟める立場ではない
- 一部分のみに対する言及で、全体に対するものではない
- 特にリアクションを求めている記述ではない
から張らなかっただけで。
「俺様に口出しする輩は許さん」ってのならわかります。そう書いてもらえれば。
あと、別記事にして非難たらたらってのもダサくてかっこわるいと思いますよ、私は。
言いたいことはリンクして言えといいながら、一般論に託けてブツクサ言うのは支離滅裂としか思えない。
「曖昧な文章でぼそぼそっと批判されるのは腹立つ」
と曖昧な文章でぼそぼそっと批判している。
これが、あなたの言う「笑える芸」というやつなんですかね。自虐芸も含むのでしょうか。
私はあなたの勘違いのせいで「読めていない」
だの「間違いを指摘」
だの「愉快な文章なんて書いていられるか(以下略)」
だの言われるのが嫌なだけなんですけどねえ。
どうして言ってもいないことを次から次へと私の不理解にされなければならないのでしょうか。
追記
突っ込まれているのに答えていない箇所があったので追記。
この文章から、1回2回の違いにこだわる点を"「神経質すぎるし、本末転倒」"と書きましたを読み取れということらしい。
Re: 間違いを指摘 (agenda)
文章力がなくてすみませんね。
これは書いた時点では違う意味で、私としては「修正する場面において、bodyの中身を全部入れ替えるようなやり方は~」という意図でした。
じゃあ何で「後出しで」回数を出しているんだという話ですが、これは「間違いの指摘」が「2回よりは1回のほうがいい」
だというのを受け、あなたが補足を読んでいるのを前提に、当初の意図に加え「回数を比較することを考えても同じように考えている」と説明するのが指摘に対して求められている回答であると考えたためです。
書いた時点では回数について(認識してはいましたが)重要視していたわけではなく(回数の話をそもそも出していない)、ゆえにあなたが回数を話に出してもそれが私の「間違いの指摘」であるとは判断できませんでした。
なので実際に「修正するという状況においてはbody要素の総入れかえ自体を否定(個人的な印象として本末転倒であると表現)」しています。
で、あなたがスクリプトを持ち出したくだりを見て強調部が伝わっていないものと思い、補足で「破棄するのなら置き換えれば良い」「どんな場合でもというわけではない」と付けたのですが、理解するのが無理というのならそうなのでしょう。
これだけ書けば理解できる文になりますかね。
Re: 間違いを指摘
間違いを指摘(※)
※body要素書き換え (agenda)の前半ね。詳しく書いたほうが良かったか?
どこが間違いの指摘になっているのかさっぱりわかりませんでした。
詳しく書いたほうがあなたには良かったようなので、詳しく書いておきます。
以下「あなた」はJintrickさんを指します。
説明
- そもそも「一回の再描画にまとめられない」場合の話をしています
「ドキュメントに修正を加えるならば~」
の前置きを読みましたか?- 「修正」が単なる操作の意味でないことも書きました
- 2回より1回のほうが良いのは確かですが、あくまでそれが有効な場合の話です
- 有効でない場合の話をしています
- 言い換えれば、イベントハンドラ含むツリーを保持する必要がある場合の話をしています
- 「再フローが二回起こる」ことは承知の上
- 「EfficientJavaScript」を示している時点で言うまでもないことだと思っていました
- あなたに指摘されずともわかっていますし、その前提での話です
- そこを理解せずに
「間違いを指摘」
などと言われても困りますし、何故一方的に「読めていない」と判断しているのかがそもそも不明です - また、たとえば10~20回の修正に対する、1回2回の違いにこだわる点を
「神経質すぎるし、本末転倒」
と書きました
- extractして(1)insertしたら(2)、表示されているDOMツリーの変更は2回となるように思います
- document.bodyをRange#extractContents
- 画面が真っ白になるはずです
- document.body以下のツリーも空になっています
- 再描画がいつ行なわれるかは別ですが、extractなら再描画は起こらずdisplayなら起こるという挙動は何かで定義されているのでしょうか?
- この点を考えても、displayスタイルを操作する方法が間違いであるとは思いません
- 「EfficientJavaScript」での例はcloneNodeしてreplaceChildしているので1回となっています
- あなたの例とは別物ですし、この方法も
「イベントハンドラに依存しているときもこの方法をとるべきでない」
とされています - 前述したようにイベントハンドラを保持する必要がある場合の話をしているので、この点からもやはり間違いであるとは思いません
- ちなみに
「文書ツリーの変更は, まず再フローにつながる」
とも書かれています
- 例が不適切であると指摘することを揚げ足取りと言われても、元々がその点について言及した記述なので反応しようがありません
- 本題はタイトルだけですか?
- 自分の意図しない指摘は全て揚げ足取りですか?
「反論、ちゃちゃ入れは歓迎する」
と口では言いながら、聞く耳を持たないのでは話になりません- 「意見交換」とのカテゴリで「人格攻撃」を始めるようでも話になりません
まとめ
あなたの勝手な思い込み・勘違いを私の間違いにされては困りますし、迷惑で不愉快です。
Re: body要素書き換え
議論ごっこに興味はないのですが、補足だけ。
1) コンテンツの構造を全書き換えし、かつ 2) 専用のインターフェイスを作るのに、
body要素書き換え (agenda)
ドキュメントに修正を入れるんであれば、
つれづれ 2008.07.17 - mayokara note
DOMツリーを破棄する前提であれば置き換えれば良いと思いますが、そのケースは私のいう「修正」の意図するところではありません。
文書ツリーを多数回変更するときはDocument Fragmentを経由する (agenda)を読んで、文書ツリーを多数回変更するときは、どんな場合でもDocument Fragmentを使うべきだ、と思い込んでしまった方がいたとしたら申し訳ないことをしたし、配慮が足りていなかったと思う。
Re: 僕があまりDocumentFragmentを使っていない理由 (agenda)
とあるのと同じように、どんな場合でもDocument Fragmentを避けるべきだとは言っていません。あくまで
この事例でDocument Fragmentを経由する
文書ツリーを多数回変更するときはDocument Fragmentを経由する (agenda)
やり方を好まないと言っただけです。
やたらそこに拘るのは何なんだろう。
body要素書き換え (agenda)
適切でない例だからではないでしょうか。
「tinyshell.user.js」更新 その3
Greasemonkey: tinyshell.user.js - mayokara note
- 補完機能の改良
- 候補が一つだけのとき続けてTABで補完
- xargs実装
- 対応オプション:-0
- find実装
- 対応オプション:-type -name -path -print0 (-print)
- wc実装
- 対応オプション:-c --bytes -m --chars -l --lines -L --max-line-length -w --words
- maketoc実装
- content、
selected-text、selected-linksstext、slinks実装- document.body.textContent、選択範囲のテキスト、href群を返す
- grepはcontentと繋がなくてもcontentを補う
- Minibufferの実装を参考にしました
- その他細かい修正
例
$ pwd http://www.hatena.ne.jp/ $ find . -type d company/ guide/ help/ info/ rule/ $ find . -type d -print0|xargs -0 open # -> 全部開く $ cat slinks http://q.hatena.ne.jp/1216560689 http://q.hatena.ne.jp/1216596677 http://q.hatena.ne.jp/1216665689 http://q.hatena.ne.jp/1216745310 http://q.hatena.ne.jp/1216623542 $ cat slinks|open # -> 全部開く(xargs使わなくてもできる)
selected-links、selected-textはコマンド名が長い上に補完が効かないので適当に略すかも。
略した。もっと直感的なコマンド名ないかなあ。
メモ
sort uniq cut less head tail overrideMimeTypeでwget?
cygmonkeyとかにすればよかったな……いや、名前負けするからダメか。
あとは行数制限……
- < Newer
- Older >