You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
古いエントリーなのですが、まだ時折検索エンジン経由?でいらっしゃる方がいるみたいなので追記 Titanium Desktopは今はTideSDKと変わってオープンソースプロジェクトになっています。 いいたい事を先に。 Ruby,Python,PHP,JavaScriptやってる人でデスクトップアプリ作成に興味ある人は Appcelerator Titanium Desktop さわってみるといいと思います。OS X, Windows,Linuxとマルチプラットフォームなデスクトップアプリをhtml,JavaScript,Ruby,Python等の慣れ親しんだ技術で簡単に作成、公開することができます。 予想以上にブクマされてるみたいなので、Titanium Desktopの特徴を箇条書きですが追加しておきます。 一言で言えばJavaScriptで記述するAdobe AIRのようなRIAフレー
rubyRSS を拾ってきてパースしようとしたら、不正な文字列が入っていて REXML が ParseException を投げてしまった。文字コードが UTF-8 前提だったので、UTF-8 として valid な文字のみが含まれるように置換して対処した。 str = str.scan(/([\x00-\x7f]|[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3})/).join Ruby じゃなくても同じようなコードで対処できそう。関連:UTF-8 の正規表現は 404 Blog Not Found:UTF-8 vs. ISO-10646 から拝借したPHP なら $xmlStr = mb_convert_encoding($xmlStr, "UTF-8", "UTF-8"); でいけるら
RubyのObject#tapがすごく便利。tapかわいいよtap - (rubikitch loves (Emacs Ruby CUI Books))に書いてある。これを使うと、selfを返さないメソッドを使ってもチェインできる。 JavaScriptだと、こんな感じ。 Object.prototype.tap = function (fn) { fn.call(this, this); return this; }; ただ、JavaScriptだとyieldブロックがないから、少し野暮ったい。もう少し動作を限定させて、 Object.prototype.tap = function (name) { this[name].apply(this, Array.slice(arguments, 1)); return this; }; [1, 2, 3] .tap('push', 4, 5
« MyMiniCity 日本語化 | メイン | JSRuby から jQuery を使う ( Javascript 連携 ) » Javascript で実装した Ruby インタプリタ JSRuby 0.1 リリースしました。 あけましておめでとうございます。 1月からサイボウズ・ラボのオフィスが引っ越しました。新年から気分も新しくぶりぶり仕事します。よろしくです。 というわけでちょっとずつ作っていました Javascript で実装した Ruby インタプリタの "JSRuby" を一区切り付けるべくバージョン番号を付けてリリースしました。 JSRuby Project Page (CodeRepos) http://coderepos.org/share/wiki/JSRuby JSRuby Test Page http://labs.cybozu.co.jp/blog/naka
先日の木曜日、YLUGに参加しました。笹田耕一さんの YARV(Yet Another RubyVM) の講演会でした。なんか、会は、過去9年間の間で、1,2を争う盛り上がりだったそうで、すごく楽しかったです。参加者のレベルも高く、YARV の中の話を色々と聞かせていただきました。 その席で、ザイボウズ・ラボの竹迫さんに、「Ruby on JavaScript つくらないの?」とお誘いを受けたので、この週末、作ってみました♪ 名づけて、HotRuby。ちゃんと動いているよ〜 http://hotruby.accelart.jp/ 基本的な文法は、大体、実装しました。ただし、組み込み関数や組み込みクラスは、大部分が実装されていません。文法面でも、例外は実装していません。 仕組みは、一度、サーバーの Ruby 1.9.0 の YARV でオペコード列にコンパイルさせて、それを JSON でクラ
とりあえず FizzBuzz が動くだけだった Javascript によるRuby 実装な JSRuby ですが、「全然できあがってなくても、まず公開」という教えもあることですし、とっとと CodeRepos に登録してしまおう~ と思っていたのですが、メソッドの実装まわりや、Ruby のオブジェクトの概念の導入など、構成に大きく影響を与えそうな上にまっさきにやらないといけないことくらいは片付けないとなあ。さすがに全体が1ファイルだと、せっかく手を入れようと思ってくれた人がいても衝突しまくりだし。最低限のテストセットも用意しておいた方が話も早いだろうしなあ。 とごにょごにょ作業していたのですが、ようやくそこらへんが片付いたので、CodeRepos に commit させてもらいました。 http://coderepos.org/share/wiki/JSRuby ライセンスは JavaS
コンソール上から JavaScript で Web ブラウザを操作できる、JS Commander というプログラムを作ってみました。JS Commander を立ち上げるとプロキシサーバが同時に起動し、このプロキシサーバを使うように Web ブラウザを設定すると、コンソール上で JavaScript のコードが入力できるようになります。Web ブラウザ上の JavaScript を自由に実行できるコンソールには FireBug, FireBug Lite, jsh, MozRepl などがありますが、JS Commander の特徴は以下のような感じです。ブラウザ非依存 - XmlHttpRequest が使えるブラウザであればたぶん動きます。readline を使った操作 - bash などのシェルと同じような emacs 風キーバインドが使えます。別のマシンにあるブラウザも操作可能
UTF-8文字列の圧縮ライブラリを作っている。いまさら圧縮ライブラリをなぜ作るのかというと、JavaScriptによる全文検索エンジンで、インデックスの圧縮を行いたいからである。検索結果に概要文を出すには、インデックスが元テキスト全てを含む必要がある。従って、インデックスサイズの肥大化を避けるには、圧縮が必要不可欠である。ところが、次の条件を満たすライブラリを見つけられなかった。 圧縮後のデータがUTF-8文字列 JavaScriptで復元可能 前者の条件が必要なのは、JavaScriptでバイナリが扱えない為、圧縮後のデータがUTF-8文字列である必要がある為である。後者の条件は当たり前であるが、意外に該当するライブラリは少なかった。JavaScriptによるzipの解凍ライブラリは公開されているが、ライセンスが不明であった。 しょうがないので、LZSS符号をベースに、自分でライブラリを
スクリプト言語用のデバッガの使い方 - Ruby, Python, Perl スクリプト言語用の CUIのデバッガの使い方を簡単にまとめました。対象言語は Ruby, Python, Perl です。 私は C, C++ でプログラムを書いているときはデバッガ (主に GNU/Linux 上の gdb) を頻繁に利用します。しかし、スクリプト言語ではそれほどでもありません。これはおそらく次のような理由によります。 ビルドが不要なので printf デバッグが容易 (ある程度大きい C++ のプログラムではビルド時間が長いので printf の挿入はしんどい) 異常終了時にスタックトレースが表示される (Ruby, Python なら自動、Perl の場合は use Carp; $SIG{__DIE__} = \&Carp::confess; など) オブジェクトのインスペクトが簡単 (Ru
JavaScriptでインデックス型の全文検索エンジンを作ってみた。全文検索エンジンを作る際に問題となるのは、インデックスデータを部分的に読み込む方法である。通常はmmapやpreadなどを使ってファイルの一部を部分的に読み込むのだが、もちろん、ブラウザには使えない。ブラウザでファイルの一部分を読み込むには2通りの方法がある。1つは、ファイルを多数のファイルに分割する方法であり、もう1つはHTTPリクエストのRangeヘッダを利用して、ファイルの一部を取得する方法である。前者の利点は、ブラウザのキャッシュが効くことや、対応ブラウザが多いことである。後者の利点は、ファイル数が少なくなるので、インデックスの管理が容易になることである。今回はRangeヘッダの実用性にも興味があったので、後者の方法を用いた。 参考ページ:最速インターフェース研究会 :: Ajaxを使ったシンプルなチャット 転置イ
以前にもブックマークツールを作って、このブログで紹介したけれども、新しい発想で作り直した。 それがこのbookmark2mailだ。 これはその名前からわかる通り、ブックマークしたいサイトをメール化するツール。 どういう意味かというと、まずこのブックマークツールを使いたい人は、ブックマーク専用のメールアドレスを取得する。 個人的にはGmailが一番おすすめ。 で、あとはブックマークしたいサイトがあったら、気になるテキストをマウスで選択して、ブックマークレットをクリックするだけ。 そのサイトをGmailとかに保存しておける。 具体的には、ページのタイトルがメールのサブジェクト、ページのURLとマウスで選択した部分がメールの本文になって送られる。 んで、後から自分のブックマークしたサイトを見たくなったらGmailにログインするだけでOK。 Gmailの強力な検索機能を使ってもいいし、フィルタ機
Shiubya.js #1で話したネタですが、Winkでデモを作ってみました。 http://la.ma.la/misc/demo/realtime_cssedit.htm エディタとブラウザが並んでて窮屈ですが、実際はこれを20インチワイド液晶縦置きデュアルでやります。 仕組みは、WEBrickでローカルプロキシを立てて、同名のファイルがローカルにある場合は内容を置き換えて表示する、というもので、CSSやJavaScriptを編集するのに向いています。 プロキシサーバーはPerlで書かれた同等のものがここにあります。 http://www.ornithopter.jp/archives/2006/05/perl_perl.html 自分が使ってるのは必要に応じて行き当たりばったりに拡張していったりするのですが、現時点でのソースを置いておきます。 http://la.ma.la/misc/
\閉鎖予定のサイトも売れるかも?/ アクセスがないサイトもコンテンツ価値で売れる場合も… ドメインの有効期限を更新してサイト売却にトライしてみましょう
はてなブックマーク件数を blog に貼り付けるウィジェット 2006-02-27-1: [JavaScript][Ajax][Ruby][Code] ウィジェットというほどのものではないけど,はてなブックマーク件数を簡単に blog に貼り付けることが出来る部品を作ってみました. はてなブックマーク件数とは以下の画像の赤枠のようなものです. この赤枠の中で囲まれた部品を blog に貼り付けることが出来ます. このウィジェットの使い方はとても簡単で <link rel="stylesheet" type="text/css" href="./styles/hatebu-count.css" /> <script type="text/javascript" src="./js/prototype.js"></script> <script type="text/javascript" s
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く