タグ

perlに関するinurotaのブックマーク (32)

  • [mac][perl] アドレスブック.appの情報から郵便はがきの宛名面を印刷するためのPDFを生成してみる(※ただし横書きに限る) | いわぶろ(ろてん)

    はじめに 年が明けてから年賀はがきを買いに走り,文面を3時間くらいで作り,宛名面作成の自動化に腐心していたissmです. Macを始めて最初の年賀状なので,Mac絡みのネタでも. 「アドレスブック.app」には,(複数の)個人・会社の情報を「vCard」という形式で書き出すことができます.これを読み込んで解析し,それぞれの情報を郵便はがき向けにレイアウトしたPDFを出力する,そんなPerlスクリプトを書いてgithubにコミットしてみました. 以下,そんなPerlスクリプトについてざっと紹介します. 準備 スクリプトを持ってくる githubに置いてありますので,これを持ってきます. vcard2pdf at master from issm’s tools – GitHub 必要なCPANモジュール 次のあたりのCPANモジュールが必要になるので,入れておきます. Text::vCard

  • AppleScript for OS X

    Macintosh OSXのアップルスクリプトについての覚え書き。自分用なので説明が足りなかったり、順番バラバラだったり、あまり参考にならないかも。間違った記述があ るかもしれません。特に断わりがない限り、このページ内ではXcodeを使ったAppleScriptの開発のことです。 ページ内にスクリプトがいくつか書いてありますが、ご利用はご自由にどうぞ。ただし、これらを使って何らかの損害を被ってもいっさいの補償はあり ません。アンドなんかバグってるかも。オウンリスクでね。 いやー、しかしOS XではAppleScriptに簡単にインターフェースがつけられたり、便利な世の中になりましたな。これで処理速度がもう少し……それは言わない約束 よ。 新規プロジェクト AppleScript Droplet propertyに注意 自作ルーチン 自分のパスを取得する AppleScriptとP

  • blog.hakutoitoi.com – このドメインはお名前.comで取得されています。

    このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 日のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 レジストラ「GMO Internet Group, Inc. d/b/a Onamae.com」のシェア値を集計。 2023年5月時点の調査。

  • オススメCPANモジュールその1。 AnyEvent - TokuLog 改めB日記

    というわけで、俺の独断と偏見によるオススメモジュールのコーナーです。 AnyEvent は poll/select/kqueue/epoll(4) などのイベントループを抽象化するライブラリです。似たような目的のものとして Danga::Socket, POE などがありますが、ライブラリ全体のインターフェースの完成度や速度などの点から AnyEvent を僕は一番押しています。 Pure Perl で利用できますし、インターフェースも安定しています。まだバリバリ開発されてますが、backward incompat な変更はされないようです。 作者が mlehmann 氏ということで、ドキュメントは丁寧ですが攻撃的な文章が目立ちますし、バグレポートすると異常な長文がかえってきたりするのでうっとーしかったりしますが、コードの品質はたかいので、気にする必要はないかとおもいます。コードの品質の前

    inurota
    inurota 2010/08/18
    「AnyEvent は poll/select/kqueue/epoll(4) などのイベントループを抽象化するライブラリです」
  • 第11回 「配列」と「ハッシュ」と「無名配列」と「無名ハッシュ」と - bingo_nakanishiの他言語出身者のためのPerl入門

    前回は、Data::Dumper を紹介しました。 ということで、これからは変数の中身を見るときは積極的にData::Dumperを使っていきます。 今回は、 「配列」と「ハッシュ」と「無名配列」と「無名ハッシュ」を相互に乗り換える方法を紹介します。 「配列」から「ハッシュ」の例: use strict; use Data::Dumper; my @c = ('x', 'えっくす', 'y', 'わい', 'z', 'ぜっと'); # 配列 my %d = @c; # 配列を、ハッシュにコピー print Dumper \@c; print "----------\n"; print Dumper \%d; 結果: $VAR1 = [ 'x', 'えっくす', 'y', 'わい', 'z', 'ぜっと' ]; ---------- $VAR1 = { 'y' => 'わい', 'x' =>

    第11回 「配列」と「ハッシュ」と「無名配列」と「無名ハッシュ」と - bingo_nakanishiの他言語出身者のためのPerl入門
    inurota
    inurota 2010/08/18
    角括弧は「渡された配列を”コピーして無名配列を生成し”そのリファレンスを返す」ことになる。しかしJSとPerlと行き来してると頭腐ってくるな
  • POE::Component::Server::HTTP - Foundation of a POE HTTP Daemon - metacpan.org

    NAME POE::Component::Server::HTTP - Foundation of a POE HTTP Daemon SYNOPSIS use POE::Component::Server::HTTP; use HTTP::Status; my $aliases = POE::Component::Server::HTTP->new( Port => 8000, ContentHandler => { '/' => \&handler1, '/dir/' => sub { ... }, '/file' => sub { ... } }, Headers => { Server => 'My Server' }, ); sub handler { my ($request, $response) = @_; $response->code(RC_OK); $response

  • Blog Developer's Cookbook : Weblogs.com Ping Gateway to はてなアンテナ (POE版)

    Weblogs.com Ping Gateway to はてなアンテナ (POE版) 前回紹介した、はてなアンテナ Ping ゲートウェイには、1点問題がありました。Ping を受け取った後、HTTPリクエストを発行してレスポンスを待っているため、Ping 受信に非常に時間がかかることがあるという点です。ここに時間がかかると、Blog ツールのエントリビルド処理が待たされることになり、好ましくありません。Ping を受けとったら即座にレスポンスを返し、非同期にアンテナへのリクエストを投げる方がよいでしょう。 今回のレシピでは、POE と呼ばれるフレームワークを使用して、この処理の非同期化を行ってみます。 Perl の非同期処理 一般に、外部へのネットワーク接続(この場合は、はてなアンテナへのHTTP接続)などによるブロッキング(*1)を避けるためには、一連の処理を個別に非同期で(async

  • [Perl]大抵のPerlerに恩恵を与えるcpanminus

    cpanが使いにくいと嘆くアナタ!そんなアナタにこそ使ってほしいモノがある!あるんです! それがcpanminus。 使ってみようと思い立ち、実際に使ってみて、その素晴らしさに感激しました。 インストール ここはさすがにcpanを使います。しばしの辛抱を…とはいっても、なんとcpanminusは依存モジュールがありません!!!依存モジュールはかなり少ないです。 # cpan App::cpanminus これだけ。あっという間にcpanminusのインストールが終わります。 2010-11-10 追記 こちらの記事によると、以下の様なインストール方法もあるそうです。 $ mkdir bin && cd ~/bin $ wget http://xrl.us/cpanm $ chmod +x cpanm さらに追記 $ wget http://xrl.us/cpanmを $ wget http

  • cometネタ,ふたたび - file-glob こと k.daibaの日記

    1対1チャット 1対1でチャットするcometベースの仕組みを作ってみました.クライアント側はまだブラッシュアップしてる最中ですが,サーバ側のコードは落ち着いてきたのでまとめてみます.このサーバは html, css, jsファイルのダウンロード /sendにクライアントが投げてきたpostメッセージの受信 /helloにクライアントがJSONで投げてきたgetメッセージの受信 受信したpostメッセージを,getメッセージへのresponseとして特定のクライアントにJSONP形式で送信 死活監視を兼ねて,システムにログイン中のユーザ一覧をgetメッセージへのresponseとして全クライアントにJSONP形式で送信 という機能を持っています. POE::Component::Server::HTTP my $server = POE::Component::Server::HTTP->

    cometネタ,ふたたび - file-glob こと k.daibaの日記
  • cometネタ - file-glob こと k.daibaの日記

    なんとか動いた cometで何か動くものを作ってみようと思っていたのですが,ネタを思いつかなくて忘れていました.で,ふとクライアントの時刻じゃなくて,サーバから時刻を配信するツールを作れば簡単なサンプルになるんじゃないかと思いつきました.win上のIE6とFF2,mac上のsafariとFF2で動くところまできたので,とりあえずまとめてみます. サーバ系 参考にしたのはPoCo::HTTP で Comet チャットサーバを作る - daily dayflowerと2006-11-20です.っていうか,ほとんどそのまま.いずれはcomet用とPODに記載があるSprocketベースで作り直そうと思っていますが,今のところはPOE::Component::Server::HTTPベース.元のスクリプトと違うところは,1秒ごとにクライアントに対して時刻データをJSON形式で送っているところです.

    cometネタ - file-glob こと k.daibaの日記
  • のみまくし日記 - 影舞に登録されたらIRCで告知 影舞に登録されたらIRCで告知

    『給料査定ミーティング』をやりました。 というか、題のそれは10分程度で終わって、あとは延々のレイアウトのはなしとか。(WARAI) 今の会社は、10人程度しかいないのに、コミュニケーションがとれてなくて、ひとりぼっち感や外注感があるとか、とりあえず、そういうのを改善するためにレイアウトを変えてみませんか〜と言おうとおもったら、自らレイアウト変更についてどう思いますか?と聞かれた。 な〜んだ、社長もそういうの感じてたんだ〜とちょっと安心しました。 先週からずーっとなやんでいた、SOAPの問題が解決しました! おたすけマンこと、ク社時代の先輩から、「Unix版の SOAP::Liteおかしげよ、Win版でためしてみたら?」というアドバイスをもらいました。 なにーと思って、試してみると。キター。うごきました!! Win版で試すなんておもいもしなかったですよ。激しく感謝です。 というわけで、僕

    inurota
    inurota 2010/08/17
    POE::Component::TSTP->create(); # Ctrl-Z をトラップする
  • スタンドアロンWebサーバ書くのにPOEはいいかも - はこべにっき ♨

    スタンドアロンWebサーバ書くのにPOE::Component::Server::HTTPはかなりお手軽ですね。エラー処理とかいろいろはしょると以下のコードで、Webサーバが走ります。 use strict; use warnings; use POE qw( Component::Server::HTTP Sugar::Args ); my $httpd_aliases = POE::Component::Server::HTTP->new( Port => 8080, ContentHandler => { '/' => \&httpd_index, } ); sub httpd_index { my ($request, $response) = @_; $response->code(RC_OK); $response->content('Hello, POE!'); return

    スタンドアロンWebサーバ書くのにPOEはいいかも - はこべにっき ♨
  • PoCo::HTTP で Comet チャットサーバを作る - daily dayflower

    せっかくのイベントドリブンフレームワークな POE ですから Comet でチャットをやってみようかと。ありきたりですが。 POE::Component::* でウェブサーバを立ち上げられるのは現在のところ, POE::Component::Server::HTTPServer POE::Component::Server::SimpleHTTP POE::Component::Server::HTTP の3つがあります。1番目は最近 inactive なのでパス。2番目は「イベントフレームワーク」への馴染みはいいんですが「Simple」じゃなくなってます。3番目はコールバック関数を登録するというお気楽スタイルなんですがちょっと雑な感じ。 今回は楽をするために3番目の PoCo::HTTP を使ってみたいと思います。id:naoya 氏も最近紹介してましたし。 URI の設計指針は, チャ

    PoCo::HTTP で Comet チャットサーバを作る - daily dayflower
  • ダウンロードたけし(寅年)の日記 - POEでログをtailするComet

    今更ながら、perl(POE)でCometっぽいものを書いてみようと思い挑戦してみました。 「Cometと言えばチャット」というくらい、サンプルや例題のほとんどがチャット関連のネタばかりなので、あえてそういう類いのものではなく、もっと地味なネタでせめてみようと思います。 ズバリ、ログ監視です。 「アクセスログをちょっと確認するだけなのに、いちいちコンソールから入ってtail -fするのが面倒」というズボラなひとに向けです。 まず要点を整理しておきますと、 ブラウザからログ監視をする ログ監視のON/OFFはブラウザから操作可能 Cometの方式はLong-Pollモデルを採用 サーバ側の実装は POE::Component::Server::HTTP と Wheel::FollowTail がメイン クライアント側はjavascript(Mini Ajax)を使って実装 です。 色々なbl

    ダウンロードたけし(寅年)の日記 - POEでログをtailするComet
  • perl - HTTP::Daemonできみにも書けるWebサーバ : 404 Blog Not Found

    2006年11月13日17:45 カテゴリLightweight Languages perl - HTTP::Daemonできみにも書けるWebサーバ これにインスパイヤされて。 PythonTwisted できみにも書ける Web サーバ 誰でも比較的簡単に Web サーバを書くことを可能にするのが PythonTwisted というフレームワークの組合せです。Pure Perlで書かれたWeb Serverはそれこそ山ほどあるのですが、実はLWPにもサーバーを簡単に実装するModuleが用意されていて、それがHTTP::Daemonです。 例えば、ブラウザのリクエストをおうむ返しにするサーバーは、以下のとおりとなります。 #!/usr/local/bin/perl -T use strict; use warnings; use HTTP::Daemon; use HTT

    perl - HTTP::Daemonできみにも書けるWebサーバ : 404 Blog Not Found
  • HTTP::Request::AsCGIの使い方 - download_takeshi’s diary

    今まで知らなかったんだが、HTTP::Request::AsCGIというのを使うとテストとかにスゴく便利らしい。 というわけで、早速いくつかのブログを見ながら触ってみた。 use strict; use HTTP::Request; use HTTP::Request::AsCGI; use CGI; use Data::Dumper; # HTTP::Requestオブジェクトを作っておく my $url = "http://localhost/test?key1=value1&key2=value2; my $req = HTTP::Request->new("GET", $url); # AsCGIでcgi環境を作る my $c = HTTP::Request::AsCGI->new($req)->setup; my $q = new CGI; # クエリーパラメータを出力してみる

    HTTP::Request::AsCGIの使い方 - download_takeshi’s diary
    inurota
    inurota 2010/08/17
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • ハチノコライフ~蜂の子生活~

    蜂の子は、古くから活力源として活用されてきた優秀な健康。 ミネラル・ビタミン・アミノ酸を中心に様々な栄養素を含み、多岐にわたる健康効果を期待することができます。 とは言え、蜂の子をべるのはちょっと...という方は少なくないはず。 そんな方にお薦めしたいのが、ずばり、サプリメントやコスメなどのアイテムです。 料理とは違い、味や匂い独特な見た目を感じずに済むのが特徴! 無理なく続けていくことができるので、しっかりと実感にアプローチすることができます。 とは言え、どんな製品でも同様にパワーを実感できる…という訳ではありません。 しっかりとパワーを実感できるのは、やはり、質が良く、含有量が豊富な製品に限ります。 その点を無視して、良く選ばずに製品を買ってしまうと、なかなか実感に結び付けることができません。 そこでこのサイトでは、満足度できる製品の選び方をナビゲートします! 人気製品の体験談&特

  • “「5分で作るチャット」を実際にやってみた”をやってみた « ku

    Comet勉強会#1発表資料-Hello, world! を読んで、一年の間にCometどうなったんだろうと思ってCometのことを調べました。その一環で 「5分で作るチャット」を実際にやってみた - Spirit of Apprenticeship (みならいだましい) をやってみたのの自分用メモです。勉強会参加したかった! いちおう一年前の話題によくあがっていたころに調べて、けっきょくIRCサーバとおなじものをHTTPになじむように実装し直すかんじなんだろうと理解したことにしていたものの、じっさい調べてみたら目からウロコなこと多数。 Meteorのページの解説が教科書的でわかりやすい 調べていて最も役に立ったのは pure perl のcometサーバ実装の Meteor のページでした。Cometサーバを設計実装する上での検討すべき点と実装上の困難についてとてもよくまとまっていて、読

    inurota
    inurota 2010/08/17
  • DBD::SQLiteのインストール - s_nobuの日記

    仕事でWikiが必要になり、Syntaxが自由に選べてMarkdownが使えるWikiとして、MojoMojoを試してみた(Kwikiでもよかったが、違うものを試してみたかった)。さくらインターネットだが、PlaggerでかなりのCPANモジュールを入れたはずなのに、かなりのモジュールを追加された。Devel::Callerがうまく入らないので、Perl体も5.8.8にアップデートしてみた。 と前書きはこのくらいで、今回のネタ。 DBD::SQLiteがうまくインストールできなかった。エラーは、 Can't load '/home/xxx/.cpan/build/DBD-SQLite-1.14-Fb4B0v/blib/arch/auto/DBD/SQLite/SQLite.so' for module DBD::SQLite: /home/xxx/.cpan/build/DBD-SQLi

    DBD::SQLiteのインストール - s_nobuの日記
    inurota
    inurota 2009/02/02
    同じく大ハマリしていた問題にようやく答えが。CPAN>o conf USE_LOCAL_SQLITE=true としてからCPAN>install DBD::SQLite でOK。