タグ

ブックマーク / clouder.jp (35)

  • colinuxのイメージを拡張とswapを使う方法

    以前書いたエントリでcolinuxをインストールして使っていたのですが、デフォルトで使用するdebianのイメージは1GBしかなく、つまりcolinuxで使用するディスク容量が1GBということになります。 これだといろんな開発に必要なツールを入れたり、apacheとかmysqlを入れたらあっというまに90%に達っしてしまったのでこりゃいかんとイメージを拡張することにした。でもwindows側のマシンの容量を圧迫するので、あまり大きくはできなかった…。とりあえず2GBにしてみました。 まずはイメージの拡張から。大きな流れとしては DOSで新しい2GBのイメージの空イメージを作成 colinuxでそれをフォーマットしてマウント 元のデータを新しいイメージの方にコピー 新しい方で起動 これだけです。 では始めましょう。新しく使用するイメージファイルを作成します。これはwindows側でDOS窓で

  • Class::DBIで永続化が切れなくてハマった

    WEB+DB PRESS vol33の「ライブドア構築ノウハウ大公開」でClass::DBIの永続化を切るには、Ima::DBIの内部でクロージャとして生成されるdb_Mainをオーバーライドすれば永続化を切ることができるという記述がありました。 これなんですが、先日あるアプリを作成しているときに、db_Mainをオーバーライドしても永続化されてしまうという現象にあいました。 いろいろ調べたり、にぽたんとかに聞いたりした結果、db_Mainをオーバーライドしているクラスで __PACKAGE__->set_db() もしくは __PACKAGE__->connection() をしていたのが悪かったということが判明しました。なぜなら __PACKAGE__->set_db() もしくは __PACKAGE__->connection() をすると、Ima::DBIではなくClass::DB

    nipotan
    nipotan 2007/08/13
    「色々調べた」っていうか、俺がそう言ったんじゃなかった?
  • HTTP::MobileAgentのプラグイン機構

    HTTP::MobileAgentのプラグイン機構を付けるとしたら、どんな風なのがベストなんだろうかと考えてみた。 多分プラグインとしてやりたいこととしては大枠で以下の2つだろう。 今の実装では取得できない値を取得するための新しいメソッドやアクセサを追加する User Agentの解析にある処理を挟む で、これらをやるためにはどのようなプラグイン機構がいいのだろうか。 Plaggerとかみたいなhookを各所に設ける Catalystみたいに NEXT を使って連鎖させていく Class::DBI::Pluginみたいにimportでやや強引に追加できるようにする 1は必要かもしれないけど、あんまり需要がなさそうな気もする…。 2はいろんなプラグインがでてくるとわけわかめになりそう 3があれば、とりあえずしばらくはもちそうな気もする。 さてどうしようか。

  • del.icio.usからlivedoor Clipにデータを移行するためのモジュール

    表題のモジュールを書きました。 うそ、パクりました。にぽたん研究所から。 先に使い方から説明すると、まず「http://api.del.icio.us/v1/posts/all?」ここにアクセスすると、自分が今までにdel.icio.usへポストしたブックマークをすべて取得できるので、それを取得しておきます。ベーシック認証がありますが、それは自分のdel.icio.usのアカウントを入力してください。 次に下記のスクリプトを用意して、先程del.icio.usから取得したブックマークのデータ(all.xmlというファイル名にしておいてください)と同じディレクトリに置いたら、あとはスクリプトを実行するだけです。もちろんあとで紹介するWWW::SyncSBS::D2Lも用意する必要があります。 #!/usr/local/bin/perl use strict; use WWW::SyncSBS

    nipotan
    nipotan 2007/08/13
    キタコレ
  • 今日覚えた tcsh のキーバインド (Clouder::Blogger)

    nipotan
    nipotan 2006/05/02
    C-[ f があるんだから…ってノリで偶然発見した
  • sttyのフロー制御でハマりました

    Unix系のOSをいじっていて、突然キー入力ができなくなって ^q で元の入力状態に戻るというような現象にみまわれたことはないだろうか。そんな現象になるのはたいていフロー制御の stop モードになっていることが原因らしい。気付かない間に ^s を押してフロー制御の stop モードになっているのだろうと思う。 この現象になっている端末で emacs を使おうものなら、^x^sで保存ができなくなってしまうのだ。コワー。(まぁその場合でも^xsで一応保存はできるのだが) ちなみに ^sが stop モードに割当てられているかどうかは、コマンドラインで % stty -a とやると確認できると思う。ちなみに ^q は start に設定されているはずである。^s で stop、^q で start とフロー制御をやるらしい。でもこんな状態になっていると emacs が満足に使えないので、自分は

  • cvsからsubversionに移行するときにやったこと その1

    ずっとやろうと思っていた cvs から subversion への移行を今年の初めの頃にやったので、その時にやったことを書きます。 (※参考にしたページを一番下に記しておきますのでそちらもご覧ください) svnのインストール これは他の方が書いていると思いますのでそちらを参照してください(オイ cvsからsvnへリポジトリの移行 これはcvs2svnというpythonのスクリプトがあるので、それを使いました。 % cvs2svn -s /path/to/svn/repos /path/to/cvs/repos これで /path/to/cvs/reposにあるcvsのリポジトリが、/path/to/svn/reposにsvnのリポジトリとして変換されます。 これはサクっといくと思います。 subversion流に管理するために一旦ダンプする ここまででも、まぁ使えなくはないですが、subv

  • How to add virtual method on Template Toolkit

    Template Toolkitでvirtual methodを追加したいと思ったんですが、ドキュメントを読んでもどうも簡単なやり方が見付からない。仕方がないので最初に下記のようにやりました。 $Template::Stash::LIST_OPS->{ foo } = \&foo; こうしなけりゃならないのかな?他になにか方法あるのでしょうか…。 追記:はてブでハテナオヤさんが質問してましたが、このエントリで伝えたいことは、vmethodを追加する方法としては、上記の方法やdefine_methodを使うのが正当な方法なのかどうかということと、他の人はどう追加しているのかなという部分になります。 下記のようにインスタンス生成時に追加とかできればいいのに…。 Template->new(STASH => { LIST_OPS => { foo => \&foo } ); と思ったら、Temp

    nipotan
    nipotan 2005/12/12
    Sledge でやるなら create_template を override するとか。↓nipotan method?
  • 今日覚えたshell Tips(ネットワーク越しにごにょごにょ編)

    あるときネットワーク越しにいろいろなことやりたくて、shellのコマンド調べていて覚えたことを覚え書き的に記しておきます。 下記はコマンドラインから、ネットワーク越しにその場で書いた内容のファイルを作る方法です。 % cat <<EOT | ssh $SERVER "cat > /path/to/file" content content content content EOT これの応用で、パッチを複数サーバであてたいときは、 % cat <<EOT | ssh $SERVER "cat > /path/to/patch" --- /path/to/orig 2005-11-29 13:45:42.129125170 +0900 +++ /path/to/new 2005-11-29 13:46:27.540536045 +0900 @@ -1,3 +1,3 @@ aaa -bbb +d

    nipotan
    nipotan 2005/11/29
    だめかな。これじゃ。
  • Mac OS Xのアカウント(Accounts.prefPane)が開かない

    ひさびさにMac OS Xネタでも。 最近はめっきり踏み台サーバ化しているオフィスに置いてあるMac OS Xですが、ひさかたぶりにアカウント管理なぞをいじる必要があり、環境からそれを呼び出そうとしました。だが何度やってもその画面が開かない…。なんじゃこりゃと思ってConsoleを見たら *** -[NSCFString replaceCharactersInRange:withString:]: nil argument なんていうエラーが…。なんじゃこりゃと思ってググってみたら下記のページを発見。 tancred.com: Malte Tancred's Weblog: Archives: 2004-04-06 I seldom mess around in the Accounts Preference Pane but yesterday I had reason to do so

    nipotan
    nipotan 2005/11/15
    ここらへんずっと悩んでて解決した。でも違う理由で直接クラムチャウダーに聞いたけどw
  • Sledge::Plugin::SessionAccessor

    「Sledge::Sessionに便利なアクセサ追加するには」を受けて、Sledge::Sessionにアクセサを追加できるプラグインを作ってみました。下記からダウンロードできます。 Sledge-Plugin-SessionAccessor-0.01.tar.gz 使い方はpodを見てください。…というのもあれなので簡単に説明するとProject::Pages::Baseに下記のようにメソッドと無名関数を定義しておくと、それをベースクラスとしたPagesクラスであれば、$self->session->methodという感じで呼べるようになります。 #と作っておいてあれだけど、ニーズあるのかなぁ…。ありそうだったらコミットしてみよう。 package Project::Pages::Base; use Sledge::Plugin::SessionAccessor; __PACKAGE__

    nipotan
    nipotan 2005/10/31
    今度使ってみる。
  • require, import instead of use

    今日わかったperlの不思議。 perl でモジュールを use しますが、時としてクラス名を動的に生成して use したい時があります。 そんなときは以下のようにします。 my $class = "Foo::Bar::$baz"; eval qq(require $class; import $class); よくやる間違いは、 my $class = "Foo::Bar::$baz"; eval { require $class; import $class }; これをやっても use されないようだ。この eval の用法はエラーをトラップしたりするときに使用するものです。最初の例は、引数を perl の構文として評価するもの(だと思っている…) ようは、eval EXPR はシンタックスエラーを実行時に $@ に返すのに対し、 eval BLOCK はシンタックスエラーをコンパイ

    nipotan
    nipotan 2005/10/24
  • Sledge2に思いを馳せて

    ちょっと前に#!shebang.jpさんが「Sledgeで気になるとこ」というエントリを書いてましたが、これに被せる形で、Sledge2で個人的にやりたいと思ってるものを書いてみたいと思います。 Sledge::Helperを導入 qootas.orgのせきむらさんが作ってらっしゃったSledge::Helperをマージしたいなぁ。 Pagesをもうちょっと実際のページ生成ロジックと離したい Sledgeで開発していて困るのが、Pagesに書いたコードをスクリプトから呼びたいときなどむりくりやらなければならない。なぜならSledgeはビジネスロジックがほぼPagesと等価となっているからである。そこをもう少し離してやりたい。 redirectのあとのコードを実行しないように にぽたん研究所所長も、#!shebang.jpの方も言ってましたが、だれもが思うところですね。現状のSledgeでは

    nipotan
    nipotan 2005/10/03
    Sledge2 は果たしていつ出来るのだろうか。
  • HTML::Entities::Numberedを使ってみた。

    拙作Alpha Geek Trackerがコケてましたので、調べてみたら実体参照の文字で&trade;が使われていたのが原因でした。 ご存知の通り、XMLでは、&amp; &lt; &gt; &quot; &apos;の5つのみが定義されています。そのためそれ以外文字をXML内に記述するには、文字参照(10進数or16進数)を使って表現する必要があります。 perlでこれを解決するには、HTML::Entities::Numberedというモジュールを使用するとよいでしょう。これは、実体参照のものをすべて文字参照に置き換えてくれるすばらしいモジュールです。 (実は今までこのモジュールの恩恵に与ることがなかったのですが、やっと恩恵に与れました(´ー`)) →実体参照と文字参照についてはこちらに詳しく書いてあります そして、上記を適用したRssTracker-0.03をリリースしました。#って

    nipotan
    nipotan 2005/09/20
    これ皆使うべき。
  • Sledgeのインストールと設定方法

    ThinkITに「SledgeによるWebアプリケーションフレームワーク入門」を書かせて頂きました。今回から数回にわたってWebアプリケーションについて紹介しながら、Sledgeではどう実現するのかについて、にぽたん研究所な人、#!shebang.jpな人 、自分の三人で書かせて頂く予定です。 この連載では、主題が「Webアプリケーションフレームワーク」なのでSledgeの詳しい説明を盛り込んでいません。そこで、この際なのであちらでは書ききれなかったSledgeの設定方法についての説明をこのページで書こうかと思います。 とりあえずSledgeを使ってページが表示できるまでを書いていきます。 途中で挫折したらすみません…。 今回の目標としてhttp://sledge.example.com/index.cgiにアクセスをしたら Hello World と表示するだけのアプリケーションを作成す

    nipotan
    nipotan 2005/06/10
    Sledge かぁ…