サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
WWDC24
blog.clouder.jp
最近Firefoxの機能拡張で、vim風な操作でFirefoxを操ることができるvimperatorを使い始めました。 で、vimperatorのプラグインをいろいろ入れて楽しんでるのですが、Tomblooをvimperatorから使うのにtombloo.jsってのがあってそれを使ってたのですが、LDRからは使えないっぽかったのでLDRから使えるようにしてみました。(もしかしたら他に同じことできるものがあるかも。もしあったら教えてください><) tombloo.jsはCodeReposにあるので直接変更しちゃおうかとも思ったのですがブランチとか切りづらかったので、ちょっと長いですがここに貼っておきます。 使い方はLDRでフィードを読んでいる時に「:tomblooReader」と打てば候補が出てくるので「Link\ -\ LDR」を選べばアクティブはエントリがクリップできます。ちなみに「:t
ちょっと前にFirefoxがSQL OptimizerでREINDEXして速くなったと書いたのですが、そういやApple Mailもsqliteだったのを思い出しました。 以前Apple Mailも速度アップのためにVACUUMをしたことはあったのですが、REINDEXはしたことなかったのでさっそく試してみたら、なんか心なしかメールのリスト表示が速くなってる気がします。 まぁ、ある程度のメール量がないと意味ないかもしれませんが。。。 やり方は % cd ~/Library/Mail/ % sqlite3 Envelope\ Index sqlite> REINDEX subjects; こんな感じでVACUUMするときとほぼ同じ。 自分はこれ以外にmessagesとaddressesもREINDEXしてみました。 まぁ気休めぐらいにしかならないかもしれませんが、Apple Mailが遅くて
KiokuDBがちょっと前から気になってて、そしたらたまたまid:tokuhiromがブログで使い方などを書いてたので、それを見ながら試してみようと思いインストールしていたら、requiredに入ってるProc::InvokeEditorというモジュールが目につきました。なにをするモジュールだろと思って調べてみたら便利そうだったので紹介。 これ、なにをするモジュールかと言うとよくcvsとかsvnとかgitとかでコミットする際に「-m」でコメント指定しないとエディタが開いて編集させたりすると思うんですが、その挙動を簡単に記述できるようになるモジュールです。 use Proc::InvokeEditor; my $unedited_text = '元々のテキスト'; my $edited_text = Proc::InvokeEditor->edit($unedited_text); warn
Firefoxってしばらく使ってるとどんどん起動が遅くなる。 入れてるExtensionの多さも関係してるのかもしれないけど、とにかく遅くなる。 その起動の遅さゆえ最近は起動が速いSafariを使っていたんだけど、そんなときこの記事を見付けました。 http://cheebow.info/chemt/archives/2009/05/firefox3.html http://d.hatena.ne.jp/tanemori/20090514/SQLiteOptimizer ここに紹介されているSQLite OptimizerというExtensionをFirefoxに入れて、REINDEXをするとあら不思議、Firefoxの起動が爆速になります。 これはなにやってるかというとFirefoxの履歴とかのデータが入ってるファイルの中身のインデックスを再構築してるんですが、それだけでこんだけ早くなる
malaが紹介していた「bluewindからtwitterを更新できるようにRubyでシンプルなクライアントを書いた」のRubyのスクリプトを使って、fenrirのインスタントコマンドからtwitterのステータスを更新できるようにしてみたら、すげー快適。 設定方法は、fenrirの設定ファイルのinstant.iniに以下の行を追加して保存。(rubyw.exeだとコンソールウィンドウが立ち上がらないらしい。知らなかった。) /t=""C:\Ruby\bin\rubyw.exe" "C:\path\to\update.rb" username password %A" そしてfenrirを開き、 /t ここにステータスを書く とインスタントコマンドを実行するだけでステータスを更新できます。これは便利だ!mala++。 もし、Rubyなんて入れてねーYOって人は、http://wget.s
Yokohama.pm #4に行ってきました。 会場は前回と同様。あの会場は駅近でとてもいいのですが開始時間を考えると、やはり東京組には距離的に大変ですね。ZIGOROuさんも書いてますが、次回からはもうちょっと時間を後ろにして参加しやすい時間にした方がいいかなぁと思いました。 今回はlopnorさんという映像担当がいて、かつikasam_aさんが分配器的なものを持ってきてくれたため前より質の高いustもができたのがとてもよかったです。ありがとうございました! それで肝心のトークについてですが、今回は「オレオレ○○」の会と言われるように自分プロダクトの紹介が多めだったのですが、これはちょっと使ってみようかなというのがあり見ていて楽しかったです。あとやっぱりyoheiさんのCAPは普段実装ベースのトークが多い中、あぁいったものが聞ける機会が少ないためとても面白かったです。 あと今回嬉しかった
以前書いたエントリでcolinuxをインストールして使っていたのですが、デフォルトで使用するdebianのイメージは1GBしかなく、つまりcolinuxで使用するディスク容量が1GBということになります。 これだといろんな開発に必要なツールを入れたり、apacheとかmysqlを入れたらあっというまに90%に達っしてしまったのでこりゃいかんとイメージを拡張することにした。でもwindows側のマシンの容量を圧迫するので、あまり大きくはできなかった…。とりあえず2GBにしてみました。 まずはイメージの拡張から。大きな流れとしては DOSで新しい2GBのイメージの空イメージを作成 colinuxでそれをフォーマットしてマウント 元のデータを新しいイメージの方にコピー 新しい方で起動 これだけです。 では始めましょう。新しく使用するイメージファイルを作成します。これはwindows側でDOS窓で
antipopさんのApp::SocialSKKをさっそくインストールして使ってみた。 これは素晴しすぎる! 使えるまでを軽く説明しておく(Macの場合)。 まずインストール。 # cpan App::SocialSKK この際 socialskk.pl も同時にインストールされます。 次に $HOME/.socialskk に plugins: - name: SocialIME - name: HatenaBookmark - name: Wikipedia こんな感じに書く。 あとはsocialskk.plを起動するだけでApp::SocialSKK使える状態になります。 AquaSKK側での設定は「環境設定」の「辞書」タブで「+」を押して辞書を追加し、辞書の種類を「外部 skkserv 辞書」にし、場所を「localhost:1179」にするだけです。 (ちなみにいままでMacでは
cronolog.org Welcome to cronolog.org, the home of the cronolog web log rotation program. よく、apacheとかのlogをうっかりローテートさせてなくて、ぬあー分割するスクリプト書くのめんどくせーってときにこれを使うと便利。このcronologに一緒に付いてくるcronosplitってのでさくっと日別に分割してくれます。 % cronosplit --template "access_log.%Y%m%d" access_log でいっちょあがり。
sbinのsってなんだろうと気になったので調べてみた。 結論から言うと下記のようにSystem BINaryのことでした。 Wikipediaのこの辺にも書いてありますね。 http://momox.net/blog/2007/02/bin_sbin_lib_libexec.html <ディレクトリ名の意味> bin -- binary 実行可能なプログラムのこと。 sbin -- system binary システム管理者が主に使用するプログラム。 lib -- ライブラリ--同じ階層のbinとかsbinのプログラムが使う関数(プログラムの断片) libexe -- プログラムが使うプログラム よくサービスとかパッケージのディレクトリ内でbinとsbinって作って使い分けてたりするけど自分の中でいまいちその棲み分けができていない。 cronとかに設定するのはsbin? コマンドライン
Tomblooを愛用しているのですが、 最新にしてから20_model.jsの 1909行でエラるようになってしまいました。 調べてみると原因はpostkeyというのをlivedoorクリップから 取得するときにちゃんとクエリを渡せてないからでした。 具体的にはlinkというクエリに http%3A%2F%2Ftombloo/ を渡してて、最後の「/」がエスケープされてないので livedoorクリップがコケます。 ということで、 http%3A%2F%2Ftombloo%2F に修正してやると問題なく動きます。 記事下にpatchを置いておきます。 ちなみにTomblooは、githubでソース管理をしてるんだけど、 こういった修正はどうお報せするのがいいんですかね。 github使ってるならこうしたら早いよ!っていうのがあれば教えて欲しいです。 --- 20_model.js.orig
たまたまみつけたのですが、このiMTを使うとiPhoneでMTの管理(エントリの追加、編集、コメント操作)ができるようになります。 インストールは上記の記事に詳しくあるので参考にしてみてください。 自分も早速インストールしてみたのですが、ちょっとしたときに書けるのはうれしいかも。 操作感に関しては、ボタンが大きいし画面がiPhone用になってるので使い易いです。その点では先に紹介したBlog Itよりいいかもですね。 これからはこのブログの更新頻度が上がるかもしれません。たぶん。きっと。
最近技術的な話ばかりで、見てる人が減りそうなのですが…。 CocoaのNSURLというクラスがあるのですが、これで日本語の文字列を使って、 GETを投げたいとかなり前から悩んでいたのですが、やっと解決したのでここに記しておきます。 まぁ、Cocoaってのは、日本語を扱うときの基本は UTF-8 なんです。 なので、GETで渡す先のサイトがUTF-8に対応していないと、一旦Shift_JISなり EUCなりに変換して渡さなきゃならない。 でも、NSString クラスには一応文字変換の関数があるのですが、 変換するときは、NSString -> NSData 又は、 NSData -> NSString になってしまう。 まぁ、NSString は UTF-8 しか扱えないので、あたりまえなのですが…、こうだと NSURLを NSData から生成しなければならない。 でも NSData(G
まだXSのことをよくわかってないのですが、XSモジュール用のModule::Setupのflavorを作ってみました。 このflavorを使うには、記事下にあるコードをXSFlavor.pmって名前でファイルに保存して、 % module-setup --init --flavor-class=+XSFlavor xs でflavorを展開したら、あとは以下のようにするだけでXSモジュールの雛形ができあがります。 % module-setup Your::Module xs このflaverでできる雛形のXSには、newとincrementっていう関数が最初から追加されているので、いらない場合はてきとうに編集してください。 このflavorを最初はModule::Starterで作ろうと思ってたんだけど、module-starterコマンドではflavorの使い分ける機能がないんですね。自
A というすでにいろんなメソッドが定義されているクラスがあって、その中に foo っていうメソッドがすでにあったとします。で、その A というクラスを継承した B というクラスを作ったとして、でもあるプログラムで B のインスタンスを生成して $b->can('foo') ってやったときだけ真にならない(他のメソッドが呼ばれたときは真にする)方法ってないかということで先日 id:nipotanや id:ikebe と話をしていたところ、UNIVERSAL::can なるものをみつけた。これを使えばやりたいことはできるのではという話になりました。 UNIVERSAL::can はなにをするもんかというと、それを use したクラスに can というメソッドを定義すれば、そのクラスのインスタンスに対して $instance->can('hoge') ってやると、そのクラスに定義した can が
$foo = qr/blah/; こんなときの$fooをなんて名前にするのか。 ちょっと気になったので聞いてみた。 今これを書いてる段階では$regexが優勢ですね。 自分はいつも$regexか$regexpか悩むんだけど、誰かが選択肢に追加した$reとかちょっと好きかも。 でもこの$で始まる書き方だと言語が限定されちゃうから聞きかたをちょっと間違えた感あり…。 興味があったら答えてください。
dateコマンドで今の時刻の1日前とかを求めるのってよくやると思いますが、 dateコマンドはOSによって方言があってオプションをいつも忘れて毎回調べたりしてるので メモがわりに書いておりきます。 1日前をもとめたいときは? BSD系 % date -v-1d Linux系 % date --date '1 days ago' 1日前をもとめつつフォーマットを整えたいときは? BSD系 % date -v-1d +%Y%m%d Linux系 % date --date '1 days ago' +%Y%m%d ある指定した日の1日前とかを求める方法。 BSD系 % date -j -v-1d -f %Y%m%d 20081201 +%Y%m%d ※この「-j」を付け忘れるとシステムの時間が変わっちゃうので注意 Linux系 % date --date '20081201 1days ago
amachangさんの「一行で IE の JavaScript を高速化する方法」を見てて、見慣れない/*@cc_on なんちゃらなんちゃら @*/ って記述が気になった。 なんだろうとおもい、早速ぐぐってみたところ、ここに書いてありました。 @cc_onはステートメントというものらしく「条件付きコンパイルの機能をアクティブにします。」との説明があります。 でも、「条件付きコンパイル」ってなんだよ!そんなの知らないぜ! ということで調べてみたら、以下のようなことが書いてありました。 条件付きコンパイルを使用すると、JScript の新しい言語機能を利用しながら、その新機能をサポートしていない以前のバージョンとの互換性も保持できます。JScript の新機能を使用する場合、スクリプトにデバッグサポートを埋め込む場合、コード実行をトレースする場合などは、条件付きコンパイルを使用するのが一般的で
たまたま先週末、いつも使っているThinkPad X40を会社に忘れて帰宅してしまったんです。 で困ったのがメール。普段はX40のBeckyで読んでいるため、週末メールが読めない。。。緊急のメールとかあったら困るなぁと小一時間考えて、どうせならなんかメーラを試してみようかと思いました。 今までメーラはいろいろ試しました。WinではBeckyだけですが、Unix環境では、mh-e、mew、wonderlust、muttなどなど。でもせっかくなので他のが使ってみたい。んでちょっと前に知った morq というメーラを試すことにしてみた。まぁ週末だけだし、さくっとインストールできるやつを試そうと。 morqはRastのプロジェクトの副産物みたいなものらしいです。コアはRubyでできていて、それをemacsで使用するための側を作っただけのシンプルなやつです。んで、特徴はメールをすべてRastに通して
Text::QRCodeっての作ってみた。まだCPANには上げてない。 #いや、むしろ上げるべきじゃないような。 http://coderepos.org/share/browser/lang/perl/Text-QRCode/trunk なにができるって、Imager::QRCodeみたいに文字列を渡すとスペースとアスタリスク の2次元配列のarrayrefを返してくれるだけです。 これだけだと端末では認識しないし、なーんも意味ないんですけどね…。 % perl -MText::QRCode -e '$map = Text::QRCode->new->plot("I love qrcode."); print join "\n", map { join "", @$_ } @$map' ******* * * ******* * * * * * * * * *** * * ** * **
windowsとかのアプリで作成するパスワード付きzipファイルをUNIX系OSでバッチ処理で作成したかったのですが、調べるのに時間かかったので、なんとなくメモ代りに書いておきます。 最初、perlのモジュール(Archive::Zipとか)でやろうと思ったんですが、Archive::ZipのPODを見ると isEncrypted() っていう関数でzipファイルにパスワードがかかっているかのチェックはできますが、「The Archive::Zip module does not currently create or extract encrypted members.」と書いてあるので、作成することも解凍することもできないようです。 なのでzipコマンドでやろうと思ったら、-eオプションを指定すればできるというのを知りました。 -eオプションを指定すると % zip -e test.z
こないだ書いた「Subversionのsvn:externalsというプロパティ」の続きです。 先日あるプロジェクトにさっそくこのsvn:externalsを設定したてみたのですが、1つのディレクトリに他の2つのプロジェクトを設定しようとしてはまりました。 先の記事ではコマンドラインベースの設定方法だったため、実は2つのプロジェクトを同時に設定することが出来ないということに気付きました(ごにょごにょやればできそうですが)。 それでどうやるのかなぁと調べてみたら別に難しいことはなく、前回「svn propset」とやっていたところを以下のように「svn propedit」というコマンドにしてやることでプロパティを複数行編集できるようになります。 % svn propedit svn:externals extlib こうするとSVN_EDITOR、VISUAL、EDITORなどの環境変数で設
Fetching external item into 'path/to/example' Updated external to revision 12345. Subversionを使ってて「svn update」するとよく上記のようなのがでることがあるんだけど、今までどっか別のライブラリ取ってきてるんだろうなぐらいのことはわかってたんだけど、ちゃんと知らなかったので調べてみた。 さっそぐググってみると、これはSubversionのsvn:externalsというプロパティの機能らしく、たとえば自分のプロジェクトのリポジトリ内で他のプロジェクトのライブラリを使いまわしたいときなどに、このプロパティを設定しておくだけで、あたかも自分のプロジェクトの中にあるライブラリのようにsvn updateコマンドで他のプロジェクトのライブラリを更新してくれるというものらしい で、具体的な使い方なんだ
Amazon EC2をちょっとさわってみました。 ずっとさわれずにいたのですが最近yusukebeが例のサイトで使ってるとかいう話を聞いたり、会社の背向いにいるshebangことikebeさんがさわってるのを見て、無性にさわりたくなったので契約して使ってみました。 使い方に関しては以下を参考にしました。 http://docs.amazonwebservices.com/AWSEC2/2008-05-05/GettingStartedGuide/ 公式サイトのGetting Started Guide http://gihyo.jp/dev/serial/01/amazon_ec2 技評の増井さんの説明 ちょー簡単にAmazon EC2を説明すると以下のようになります。 #言葉的に間違ってる部分があるかもしれませんが、あくまでイメージとして読んでください。 Amazon EC2の簡単な説明
Yokohama.pm テクニカルトーク #2が8/22に行われました。 前回から2ヶ月と結構間が短かかったのは、ZIGOROuさんをはじめ会場を提供して下さったデジハリ横浜校さんやikasam_aさんやnekokakさんやその他発表者や参加者の皆さんの協力があってこそです。この場を借りてお礼を言わせて頂きます。ありがとうございました! 今回はFlash系の話題やmod_securityなど興味深い話から、Image::Seekの話も面白かったしDBIxのプラグインやMonday Module、HTML::Template::Pro、Perl最速伝説、そしてドキドキプログラミングと盛り沢山の内容でした。 今回の反省として各トークの時間がちょっと短過ぎたということがあるので次回に生かしていきたいと思います。 ということで自分の発表した「最近のSledgeについて」を公開しておきます。 まだま
MacBook Airにこんなカッティングシートを貼ってみました。 Perlを主な仕事をしてるのでこんなのにしてみましたが、Perlを知らない人がみたら変な言葉だな。どんだけ厳格なんだと。 ちょっと左にズレてしまったのが気になっているのですが、同じシートがまだ4、5枚あるのでこれが剥れかけてきたときにちゃんと貼り直そうと思います。 ちなみに注文したのは楽天のフジ工房という店舗の 「激安 カッティングシート 切り文字ステッカー 文字シール 英文字 小さな文字 最大60文字 台紙100x450mm 」 です。 このフジ工房という店舗は北海道にあり、かの有名な「幸福駅」の看板を寄贈したこともあるところらしいです。北海道にあるということもあり関東の店舗より1、2日配送に時間はかかりますが、おまけとかもしてくれてとても親切なところでした。
こないだ書いた「ustreamの録画した動画のflvをダウンロードする方法」ですが、突如#plagger-jaで、これをシステマチックに取得できないのかという話題になって、typesterさんとかYappoさんとかmiyagawaさんがあれこれやって数時間でPlaggerでできるようになってしまいました。 はやい、はやすぎるよ!
ちょっと間があいてしまいましたが、第3回を公開します。今回は画像に文字を書く方法をご紹介したいと思います。(決っして熱が冷めたわけではないで、いやほんとにほんとにw) Imagerには、文字を書くためのモジュールとAPIが用意されていて使い方も簡単。それでいて、いろいろな細かい設定ができたりします。 とりあえずサンプルコードと生成された画像を見てみましょう。 ※ちなみに文字を書く(フォントを扱う)にはImagerの他にfreetype1.x(freetype2.xでもok)をインストールしておく必要があります。詳しくはImager::Fontを参照のこと。 #!/usr/local/bin/perl use strict; use Imager; my $string = "Let's use Imager."; my $font = Imager::Font->new( file =>
あけましておめでとうございます。 今年も焦らずゆっくり書きたいときに書けることを書いていこうと思います。 さて、正月休みは実家に行っていたのですが、家に帰ってきたところclouder.jpのHDDが逝ってしまっていました。起動してブートプロセスの途中のfsckのチェックで10%ぐらいいくと止ってしまう。 もうデータはある程度犠牲にしてこれはKNOPPIXとかでブートしてfsckかなぁとか思ってたのですが、最近malaがフレパ日記で使ってるというのを聞いたり、以前GIGAZINEなどでも紹介されていたHDD Regeneratorを試してみました。 ブートのためのフロッピーやディスクを作る方法はマニュアルを見てください。以下はスキャンしているプロセスをキャプチャしたものです。 まずHDD Regeneratorで作ったブートディスクでブートするとこの画面がでてきた。壊れたHDDを選ぶ。今回は
次のページ
このページを最初にブックマークしてみませんか?
『Clouder::Blogger』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く