2006-01-01から1年間の記事一覧
":q" や "ZZ" など、Vim を終了するコマンドは幾つかあるんですが、Vim コマンドの他にも終了の方法があります。:mzscheme (exit) :perl exitなど、外部言語の終了コマンドを使う方法です。これらは ":q" などとは異なり、編集中のバッファがあろうがお構い…
Vim+MzScheme で (require (lib "url.ss" "net"))と、ライブラリをロードしようとしたんですが、このようなエラーが出ました: build-path: expects type <path, string, 'up, 'same> as 1st argument, given: #"d:/MzScheme/collects"; other arguments were: "net"デフォルト (コンパ</path,>…
id:reinyannyan:20061127:p1 で取り上げた SICP の accumulate 関数は、まだ Lisp の肝であるリストが紹介されていない段階のものでした。2章に入り、リストを用いた、より汎用的な実装が示されていますので、前回のアップデートも兼ねて見ておきたいと思い…
SICP を読んでいます (まだ 1 章の高階関数のところです)。練習問題で Smalltalk や Ruby (や prototype.js) の inject メソッドと同等のものが出てきましたので、ピックアップしてみたいと思います。以下の様な、a から b までの範囲の数列の総和・総乗など…
Vim に Scheme インターフェースを追加して真っ先に確認したかった事が、バッファにテキストを追加する方法です。新しい情報を画面の末尾に追加していく、という至極当たり前の作業なんですが、これがなかなか難しかったのでメモしておきたいと思います。 ま…
少し以前から Lisp を学びたいという衝動が高まってきまして、Vim に MzScheme インターフェースを追加することにしました (emacs への乗換えも一時検討したんですが、あっさり断念しました)。ソースを持っていなかったため、一からパッケージを取ってくると…
フィード一覧の全フォルダを一気に開くスクリプトを書こうと思い、ソースを読んでいたら、ある問題にぶつかりました。ツリー表示における各ルート (フォルダ) は TreeView というオブジェクトによって表されています。そして、それらは後からの参照のために…
LDR のフィード一覧を絞り込み表示するスクリプトをアップデートしました。細かい変更です: #{ expression } を複数指定した場合に AND 検索になるように 絞込み後に前後のフィードのナビゲーション・リンクをアップデート します。どうぞご利用ください。
同じオブジェクトの同じ要素に何度もアクセスするような場合に便利かなと思って、作ってみました。 function accessor(object, key, initial) { if (arguments.length == 3) object[key] = initial; return function() { return (object[key] = arguments.le…
コメント欄が無いようなので…。 確かにクリップとして残しておけるのは便利なんだけれど、「あとで読む」は読んだ後に削除する場合が多いので、「Shift + c」した画面から削除できるといいなー、と思ったり。 ソースを読んだだけですが、出来ますよ。Del キ…
Game of Life のアルゴリズムの問題点を探ろうと思い、以前作ったプロファイラにかけて調べることにしました。が、このプロファイラは prototype.js (を自分用に改変したもの) を対象にした内容だったため、ライブラリを使わずに書いた Game of Life では使…
via CodeGolfGame of Life という有名なゲームがあることは辛うじて知っていたんですが、実装については全く分からずにいました。個人的にこの手のクイズは大の苦手で、まともに解いたことが無いという悔しさと、「生命」というテーマが面白そうだったことも…
大きな変更に二つほど気付きましたのでご報告しておきます。一つ目は、フックのシステムが刷新されたこと。フィードの表示前後などに実行されるフックが、以前はグローバル変数としてアクセス出来たんですが、出来なくなりました。すなわち、GM スクリプトで…
以前から指摘されていることだと思うんですが、LDR ではフィードの更新が反映されるのが結構遅い場合がありますよね?例えば、久しぶりに更新があったと思ったら一週間も前の記事だったり、といったことが割とよくある気がするんです。そこで、「更新日時の…
[20070223] 再アップデート版をファイルとして公開しました。id:reinyannyan:20070223:p1 をご覧下さい。 id:reinyannyan:20061006:p1 で実験的に作ったフィード一覧絞込みスクリプトを改善しました。フォルダ単位でのフィルタリングの他に、任意の JavaScri…
気にする方はあまりいないと思いますが、フィードの頭に表示される "1 users" とか "2 entry" とかを文法的に正しくするブックマークレットです。 javascript:(function(t){t.innerHTML=t.innerHTML.replace(/(entr)y/,"$1[[#{size==1?\"y\":\"ies\"}]]").re…
ちょっとしたスクリプトで、"+foo" という文字列を "OKs" という配列に、"-bar" という文字列を "NGs" という配列に入れる、という必要が生じました。 var OKs = [], NGs = []; "+foo -bar +baz ...".replace(/([-+])(\S+)/g, function(_, pm, value) { if (…
hail2u.net - JSONPに同期リクエスト snippets from shinichitomita’s journal - 非同期処理をシーケンシャルに扱うためにを読んで、以前 prototype.js ベースでメソッドを逐次実行する仕組みを作ったのを思い出しました (id:reinyannyan:20060223:p1, id:re…
以前から利用していた『ブックマーク件数取得 API』 (http://b.hatena.ne.jp/xmlrpc) と組み合わせて、ブックマークされている記事のコメントを自動的に表示するようにしてみました。 スクリプトの概要は、このようなものです: // 全記事のブックマーク件数…
LDR では、フィード一覧や記事など、あらゆるデータの表示が JavaScript+HTML のテンプレート・システムによって行われます。この HTML 側のテンプレートを変更することで、表示を自在にカスタマイズすることが可能になります。 全てのテンプレートは TEXTAR…
id:reinyannyan:20060530:p2 で、登録したもののフィード一覧に出てこないフィードを検出するコマンド (:subsub) を作りました。 最近の LDR のアップデートにより、このコマンドで表示されたフィードを開くことが出来なくなったため、修正したいと思います…
アイディアのみですが…。ウェブ上でメール・フォームとしてメール送信のインターフェースを提供している ISP がありますよね?それを利用して、現在 LDR で読んでいる記事を、保存・検索用あるいは後で読む用に gmail (かどこか) に送る、ということを思いつ…
id:secondlife さんの AsyncJSONP (参照: MochiKit で JSONP の利用) を使って、MochiKit の勉強がてら作ってみました。livedoor clip の JSONP API を利用してタグ・クラウドを生成する、というものです。最近どんなキーワードの話題が注目されているかが分…
メッセージ・ボックスに現在のバージョンを表示します。 javascript:message(["Version",Array.from(document.getElementsByTagName("script")).map(function(v){return v.src}).filter(function(v){return /\d\./.test(v)})[0].match(/\d+(?:\.\d+)+/)[0]].…
Windows のアクティブ・デスクトップにウェブ上のページを表示する手法については以前から分かっていたんですが (META リフレッシュ / location.href によるリダイレクト、インライン・フレーム) 、アクセス制限により外部スクリプトでの拡張が出来ない、と…
id:brazil さんのエントリーを受けて。 complete_printfeedが、ありそでない。 この一文を見た時、「なるほど」と思いました。と言いますのは、livedoor Reader で特定のサイトや記事の本文を非表示にするの中で、描画完了のフックが無いことに気付いていな…
これまで、イベント・フックを使ってフィード表示を制御する方法について何度か考えてきました: livedoor Reader で記事のリンク先を書き換える livedoor Reader で特定のサイトや記事の本文を非表示にする 今回も同様の主旨なんですが、テンプレート・クラ…
livedoor Reader で特定のサイトや記事の本文を非表示にする に関して、はてブコメントにて表題のアイデアを提案していただきました。ちょうど、サイトの既読判定をスクリプトで行う手法が考案されて (g:subtech:id:secondlife:20060812:1155379084 id:brazi…
MochiKit で if (uri in allScripts) {みたいなテストの仕方を見て、最初意味が分かりませんでした。そこで、まさかと思いながらも試しに alert("close" in window);としてみると、true が表示されました。う〜ん、便利ですね。てっきり in はオブジェクトの…
id:reinyannyan:20060714:p1 で、記事本文やタグ等を調べて不要な記事を削除する方法を考えました。今回はさらに、もしフィードが不要な記事しか含んでいなかった場合、それをフィード一覧から自動的に削除する方法を考えてみました。(不要な記事だけを含む…