例えば % perl -e 'system "sleep 1000"' | grep a | sort | uniq で % ps axo pid,pgid,command PID PGID COMMAND 26275 26275 -zsh 84326 84326 perl -e system "sleep 1000" 84327 84326 grep a 84328 84326 sort 84329 84326 uniq 84330 84326 sleep 100…
https://metacpan.org/module/Exporter 今まで、Exporterは package Foo; use base 'Exporter'; our @EXPORT = qw(func); sub func { ... } と使うものと思っていたが、 package Foo; use Exporter 'import'; our @EXPORT = qw(func); sub func { ... } でも…
Perl でワンライナーを書くとき、$ とかをシェルに解釈されないようにシングルクオートで囲む方がいい。 % perl -e 'print $ENV{SHELL}' /usr/local/bin/zsh シングルクオート自身を使いたいときは変数に格納して使うと楽。 % perl -e '$quote = "\x27"; pri…
tokuhirom さんの Minilla を使ってみようとして % cpanm -Lext Minilla --> Working on Minilla Fetching http://www.cpan.org/authors/id/S/SL/SLANNING/Mozilla-DOM-0.23.tar.gz ... OK ... Mozilla-DOM の example に Minilla.pm が入ってた。 気を取り…
"\e[38;5;XXXm" の XXX に 1-255 の数字を書けばその数字に対応する色が出力できる。 英語のwikipediaに詳しく書いてある。 http://en.wikipedia.org/wiki/ANSI_escape_code https://metacpan.org/module/Term::ExtendedColor https://metacpan.org/module/I…
Mac + zsh + vim から plenv の perl または rbenv の ruby を呼び出すには https://github.com/sstephenson/rbenv/issues/173 http://blog.glidenote.com/blog/2012/06/26/vim-zshenv-rbenv/ http://d.hatena.ne.jp/speg03/20120624/1340556621 などをみた…
STDINの内容を子プロセスたちのSTDINへ順番に振り分けるスクリプト。 使いどころの例:ダウンロード並列化 url.txt にダウンロードしたい url を一行ごとに書いておく。例えば http://www.example.com/index.html http://example.co.jp/image.jpg http://www…
正直、CGI が何の事だか分かっていないので実際に動かしてみる。 CGI = HTTP サーバから環境変数とかでリクエストの内容をもらい、標準出力を通じてHTTPサーバにレスポンスを返す仕組み と理解しとこう。 % sudo apt-get install apache2 % sudo chmod 777 /…
http://d.hatena.ne.jp/kazu-yamamoto/20110906/1315279311 ここに書いてあることを Perl でやってみる。 定義2 カリー化 =「複数の引数を取る関数」を「一引数を取る関数のチェインに直す」こと my $plus = sub { my $x = shift; return sub { my $y = sh…
git 1.7.2 (もしくは 1.7.4.4) から git instaweb で plackup を指定できるらしい。 Various "gitweb" enhancements and clean-ups, including syntax highlighting, "plackup" support for instaweb, .fcgi suffix to run it as FastCGI script, etc. https…
Google Chrome 用の Markdown をプレビューするだけの App を作った。 拡張機能のディベロッパーモードをオンにして、ディレクトリ読み込めば使える。 https://github.com/ks0608/chrome-markdown-previewer
hook + after_static_dispatch before_routes でできた。 See: Mojolicious#hook
Perl 5.14 で core module になった JSON::PP と HTTP::Tiny を使って。 perl -MJSON::PP -MHTTP::Tiny -e 'print decode_json(HTTP::Tiny->new->get("http://api.metacpan.org/v0/release/perl")->{content})->{version}' perlbrew で最新の Perl をインス…
\N{...} now compiles better, always forces UTF-8 internal representation http://perldoc.perl.org/perl5120delta.html#Internal-Changes % cd ~/perl5/perlbrew/perls % perl-5.10.1/bin/perl -MDevel::Peek -e 'Dump "\N{U+c2}"' SV = PV(0x831b410) a…
https://metacpan.org/release/Markdent http://github.github.com/github-flavored-markdown/
Ubuntu 12.04 Server に VirtualBox + Vagrant を入れ、instanceを作ったり消したり簡単にできるようになった。 素晴らしい。 VirtualBox インストール VirtualBox のレポジトリを /etc/apt/sources.list に追加して、apt-getでインストール。Ubuntu じゃな…
YAPC::Asia Tokyo 2012 の2日目に行ってきたので感想を書こう。 「新しい」を生み出すためのWebアプリ開発とその周辺 yusukebeさん Perl というかプログラミングをやろうと思い始めたのはこの方のブログを読んでからだった思う。 全く本筋とは関係ないが、…
Day 5: Run a static web server with Plack - Plack Advent Calendar を参考に、ローカルにある1つのファイルまたはディレクトリをWebサーバ立ち上げて配信!いやー便利だ。 $ plack-static [file | directory] # http://localhost:5000 にアクセス!
Tera Term を使ってリモートで作業してるとき、Mac の pbcopy のようにクリップボードに標準入力から受け取ったデータをコピーしてくれるコマンドがあったら便利だなと思う事がしょっちゅうある。 リモートの tmux でコピーした内容のローカルのクリップボー…
Perl - 画像ダウンロード - It'll be をAnyEventを使ってやるのに変えてみた。多分速くなった。
vimでブロックのコメントアウトをするやり方が commentout.vim : ソースをコメントアウト ←→ コメントアウト解除 — 名無しのvim使い などに載っているんだけど、なぜか動作しなかったので下のようにしてみた。 使い方 上を .vimrc にコピーして、大文字のVで…
使い方 source.c のインデントのスペースの数を 8 から 4 に変えるには $ indent.pl -i=8 -o=4 source.c とする。indent.pl をパスの通ったところに置いた後、vim 上で :%! indent.pl -i=4 -o=2 とすると、開いているファイルのインデントのスペースの数変え…
いかにしておっぱい画像をダウンロードするか〜2012 - ゆーすけべー日記 をWindows Azure Marketplace上のapiを使って検索するように変えてみた。追記:AnyEventで並列化したバージョンも書いてみた -> Perl - 画像ダウンロード 2 - It'll be #!/usr/bin/env…
curl ないけど perl があるじゃないか! (Strawberry Perl には libwww-perl がはじめから入ってる、多分) perl -MLWP::Simple -e "getprint(shift)" http://cpanmin.us | perl - App::cpanminus追記:lwp-request ってのがあることを知った。 lwp-request h…
Mac OS X Lion に最初から入っている zsh 4.3.11 (i386-apple-darwin11.0) で濁点・半濁点の入ったファイルを扱おうとすると のようになってしまうけれど、.zshrc とかに setopt COMBINING_CHARS を指定してあげれば となる。 余談 プロジェクト.txt がある…
いろんな言語に配列の each メソッドがあるので Perl でも全く無意味に作ってみる。 #!/usr/bin/env perl use strict; use warnings; my $array = Array->new(10, 20, 30, 40); $array->each(sub { my $item = shift; print $item + 1, "\n"; }); package Ar…
SSID と passphrase (8文字から63文字のASCII印字可能文字) から WPA の 256bit キー を求める Perl スクリプト。前提として Crypt::PBKDF2 が必要。 #!/usr/bin/env perl use strict; use warnings; use Crypt::PBKDF2; use Getopt::Long qw{:config auto_h…
JavaScript The Good Parts ―「良いパーツ」によるベストプラクティス の 51 ページでメモ化(関数内部に値を覚えておくこと、クロージャ)の例としてフィボナッチ数列を返す関数が載ってる。だいたい次のような感じ。 #!/usr/bin/env node var fibonacci, i…
TERM=screen-256color にしている tmux から Cent OS 5.8 にリモート接続していろいろやろうと思ったら、プロンプトのカーソルが表示してある文字に重なったり、vim のハイライトが 16 色になったりと残念なことになってしまった。これは Cent OS 側に scree…