少し前に、Net::DBus::Skype::Liteというモジュールを書きました。PerlからSkype APIを叩けるのは便利なのですが、不満点がいくつかあります。 LinuxのSkypeにしか対応していない 全体で2200行くらいある(Liteなのに…) 無駄なコードが多すぎる そこで、Net::…
http://hokkaido.pm.org/event/hokkaidopm6.html 10分枠をもらったので、botの話をしたいなーと思っています。 AnySanで簡単! Twitter bot AnySanで簡単! ◯◯ bot ↑今、これを実現するためにモジュールを書いています。
http://akiym.hateblo.com/
akiym/Acme-Collector64 - GitHub オリジナルのBase64を作ることができるモジュールです。 使い方はこんな感じです。 use strict; use warnings; use utf8; use Acme::Collector64; my $index_table = 'あいうえおかきくけこさしすせそたちつてとなにぬねの…
http://staff.hatenablog.com/entry/2011/11/24/180013
Excel列名変換問題で第2回社内プログラミングコンテストを開催してみた(前編) - give IT a try より 27 → AA perl -le'$c=A;$c++for 2..pop;print$c' 追記(11月5日 0:50) AA → 27 perl -le'$n++for A..pop;print$n'
use strict; use warnings; use Amon2::Lite; get '/cron/regen/rss' => sub { my $c = shift; # ... $c->create_response(200, [], 'ok'); }; __PACKAGE__->to_app; */10 * * * * cronlog -- wget -O - http://localhost:5000/cron/regen/rss 2>&1
せっかくYAPCに行って情熱をもらってきたので、熱が冷めないうちに週末ひとりハッカソンを開催します。と言っても、ひとりハッカソンなので開催を宣言しても意味がありません。 でも、宣言しておくとやる気が出るし、放ったらかしにしてしまうことがなくなり…
高校生ですが、YAPC::Asia 2011に行って来ました。初参加です。 自分みたいな学生がYAPCに行くのは金銭的な問題から難しいのですが(しかも北海道からなので)、Hokkaido.pmのみなさんが支援してくれたおかげでYAPCに行くことができました。本当にありがとうご…
明日、飛行機に乗って東京へ行きます。 Hokkaido.pmからの支援を受けて、YAPCに参加してきます。高校生がYAPCに参加する事例はあまり聞いたことがないので、ちょっと緊張してます。 「なぜ、高校生がPerlを使うのか?」というタイトルでトークします。 15日…
にひりずむ::しんぷる - perl segv golf より % perl -eversion::new zsh: segmentation fault perl -eversion::new % echo perl -eversion::new | wc -c 20 さすがにAcme::SEGVには負けますね。ちなみにperl-5.8.9ではSEGVしません。 というよりこれ、どう…
Skypeのチャットログを素早く閲覧・検索できるMacアプリ|SkyChatViewer - #RyoAnnaBlog より アプリをダウンロードするのはだるいですね。 OS Xでは~/Library/Application\ Support/Skype/Skype名/main.dbにDBがあります。つまり、それをごにょごにょすれば…
Hokkaido.pmに参加するのは3回目ですが、初LTしてきました。初めてだったのでとても緊張しましたが、得られたものはとても大きいと思いました。 まず、「面白い!」と言われたこと。そして、複数の人から「YAPC来ればいいじゃん!」と言われたこと。 どちら…
結構前にNet::DBus::Skype::Liteというモジュールを書き始めました。一応、自分のやりたいことはできるようになったので、今では未完成のまま開発停止中です。 akiym/Net-DBus-Skype-Lite · GitHub ドキュメントがなく、コードも微妙、そしてテストもないの…
7/16(土)にHokkaido.pm#5が開催されます。 ゲスト: @nekokak さん Hokkaido.pm#5 : ATND 本題ですが、初LTします。タイトルは「Base64を再実装する」です。 初めてのLTでドキドキしますが、頑張ります。 あと、@nekokak さんが来るらしいので、ちょー楽しみ…
先日書いた記事では、Web::Queryで最初の要素だけを取りたいんだけど、うまく書けないよねーと書いたあと、firstとかlastみたいなのがあると便利だなーと思ってpull-req送ったら、いいよってことで、取り込んでくれました。 Web::Query 0.06ではfirst, last…
例えば、このようなリストがあるとします。 <ul class="video"> <li>A</li> <li>B</li> <li>C</li> <li>C</li> </ul> このリストから、最初の要素<li>A</li>だけを取りたい時にはどうすればいいでしょうか。 Web::Scraperではこんな感じです。 use Web::Scraper; my $scraper = scraper { process 'ul.video li', 'title' => 'TEXT…
Web::Queryにfirst()、last()みたいなのがあると便利だなーと思いました。 例えば、こんな感じ。 sub first { my $self = shift; $self->{trees} = +[$self->{trees}[0]]; return $self; } sub last { my $self = shift; $self->{trees} = +[$self->{trees}[…
WebService::Simpleを使ってGoogle CGI API for Japanese Input - アリ より こう書けよ。 use strict; use warnings; use Encode; use JSON; use LWP::UserAgent; use URI; use Data::Dumper; use Data::Recursive::Encode; my $text = shift or die; my $u…
Amon2のflavorを書いてみた。 こうすることで、 % amon2-setup.pl --flavor Teng MyApp みたいにできるので便利。 あと、TengにはTeng::Schema::Dumperがあるのでschemaの生成が楽。
gfxさんから「スクリプトを別にするのではなく、フォームからフォーマットを選べると嬉しいです!!」と言われたのでやってみました。 最近、コード書くのが楽しいです。 いい感じ!マジで便利です。 気になったこと $self->param()がからっぽのときは? こ…
GETを使うよりもPOSTを使うべきだよね、って言われそうなのでPOSTを使ってみた。 preview in real-time. — Gist ほかにも、Text::XatenaやPod::Simple::XHTMLを使った例もあるので必見。
こんな感じ。 もちろん、Text::MarkdownだけではなくText::Xatenaでもできるので満足ですね。
実は、plackup しても引数の補完はできるのにファイル名の補完ができません。 なので、ファイル名の補完ができるようにしました。 設定方法は前回(brew、cpanm、plackupを使いたい(zsh編) - アリ)と同じです。 fpath=($HOME/.zsh/functions $fpath) を.zshrc…
震災後アクセスが減った原因 « python練習帳より viとEmacsでも比較してみましょう。 vi Google トレンド: vi Emacs Google トレンド: emacs viの勝ちですね。やはり、viのほうが優れているということでしょうか。 ところで、vimで検索してはいけないと誰か…
まずはfpathの設定を.zshrcに書く。 fpath=($HOME/.zsh/functions $fpath) brewは補完設定ファイルが付属しているので~/.zsh/functionsにコピーする。 % cp /usr/local/Library/Contributions/brew_zsh_completion.zsh ~/.zsh/functions/_brewcpanmとplackup…
こんなかんじで.zshrcに書く。 export MANPATH="/usr/local/jman/share/man:$MANPATH" compdef _man jman こうするといい具合に補完機能が効く。すばらしい!
404 · GitHub ここから取ってくるといいです。 % brew install screen --force homebrewはなぜか知らないけど、OS X付属コマンドはインストールさせてくれないので、--forceオプションを付けてインストールしてください。
CPANで検索した結果こんなかんじ。 Windows SkypeAPI Mac - Linux Net::DBus::Skype Macは対応していません。 しかも、このモジュールはAPIを叩くことしかできません。Skype4Pyみたいな使いやすいラッパーが欲しいので自分でSkype APIラッパーを書くことに決…
AppleScriptを使うと簡単に叩けます。 tell application "Skype" send command "MESSAGE echo123 check" script name "My Script" end tell tell application "Skype" send command "CALL echo123" script name "My Other Script" end tell コイツを使ってPe…