404 Blog Not Found

The requested blog was not found -- unless you requested that of Dan Kogai (小飼 弾).

一日一行野郎

perl - tac を一行で

camel

それってone-linerで。

[を] さくらのレンタルサーバに tac コマンドを入れる
UNIX 系のコマンドで、tac というのがすごく便利なのです。 これはファイルを先頭から表示する cat というコマンドの逆で、 ファイルを行単位でひっくり返して末尾から表示してくれるのです。
続きを読む

色言一致

そのネタは既出でっせ。

ギーク風に言うとコーヒーは何色? | IDEA*IDEA
この発想はなかったな。コーヒーは何色?ときいて「水色!」と答える人がいたらギークかもしれません。
続きを読む

perl - ワンライナーの書き方入門

camel

まあ、ruby のコマンドラインオプションって、Perl由来ですから。

Rubyでワンライナーを書く方法のまとめ
まぁ、Perlもあるしあんまり需要が無いのかも知れませんが。

というわけで、Rubyistにも役立つPerlのワンライナー入門です。

続きを読む

bookmarklet - ページに含まれるURLを抽出してTSVにする

IE専用というのが好かん。

というわけで、こんなのを。

続きを読む

sedハカーとその嫁の初夜

を妄想してみた。

なつたん: 今日の日記

花嫁募集

shinhさんから遠回しな花嫁募集のお知らせが
> seq 1 1000 | sed 's/[^0]//g;/0/{:;x;s/$/_@0123456789_0/;:a;s/^_/1/;s/\(.\)_\(.*\)\(@.*\1\(_*.\).*\)/\4\2\3/;ta;s/@.*//;x;s/0//;/0/b};${x;p};d'
> こんなワンライナー書く人がいたら求婚する。
ギークなお姉さんはPHPなんかやらないで、sedを勉強するべきですよ。
続きを読む

javascript - [ワンライナーでカラーコード]別解

Array.map()はSafariにはないのでより素直な別解。

IT戦記 - JavaScript のワンライナーでカラーコード
'#' + [76, 84, 105].map(function(i){ return (i >> 4 ? '' : 0) + i.toString(16) }).join('')
続きを読む

こんなスクリプト言語は仕事にならない

梅雨です。空梅雨だけど。

こういう時にはDRYよりWET (Waste of Efficiency and Time)を指向したいものです。

続きを読む

Code Snippets - reduce(l|r)を実装汁!

FizzBuzzにももうええかげん食傷してきたので、次のネタをないかと思ったら、yuguiさんがtwitterで私を登録したので、ごぶさた〜と思ってblogを見に行って格好の素材を(再)発見したという前回までのあらすじ。

続きを読む

ブクマゴルフってどうよ?

これを見て思い立ったのだけど....

どうしてプログラマに・・・プログラムが書けないのか?
1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には「FizzBuzz」とプリントすること。

一行で書き下ろせる問題はぶくマで答えるというのはどうか。

例: 続きを読む

勝手に添削 - find(1)

ウノウラボ Unoh Labs: コマンドラインで作業する上で知っておくといいテクニック」の用法に首を傾げたので。

続きを読む

書評 - なぜ株式投資はもうからないのか

ちょーさん熱く語る。

続きを読む

perl - comm(1)またはuniq -(d|u)

camel

それってPerlの一行野郎で -- それP1(ry

メモ帳 - uniq の -d と -u
存在意義がわからなかったオプションの使い道を見つけたときは妙に感動する。
続きを読む

perl+javascript - E4e::S3l

Y1u c1n't me 2 c3t'em r3t so h2e it g2s.

ユメのチカラ: どうでもいいプチ蘊蓄、i18nの話
この長い名前を(最初の一文字+中間の文字数+最後の一文字)という風に略すやり方は当時のDECでは流行っていて、DECのヨーロッパのソフトウェア国際化チームがそれにならってInternationalizationをI18Nと略すようになった。
続きを読む

perl - Yet Another 10のUNIX小技

camel

Geekなぺーじ:10のUNIX小技にperlを加えるとさらに幸せになれるというお話。

続きを読む

binary - よりポータブルな無限ループ

コメント欄にも書きましたが、残念ながらこの方法はIA-32限定です。

更新履歴兼雑記:無限るーぷ-kikxさんのコメント
main=-277;のほうがいい気がする。
続きを読む

perl & Unicode - その字の名前

Unicodeの隠れた功績として、こうした「何て呼べばいいの?」という文字に(はんば無理矢理)名前をつけてくれたこともあります。

例えば、

新方言時代〜「小さい“お”」って何?
「々」はなんていえばいいのだろうか?

には

々 U+3005 IDEOGRAPHIC ITERATION MARK

といった具合に。

続きを読む

uuencode

本文の内容より、こちらが妙に懐かしかったので。

[を] UTF-8 で半角カナを判定
begin 755 utf8hankana-test.pl.gz
続きを読む

There's more than one way to kill'em

こういう「他のコマンドを組み合わせても可能な便利系コマンド」を覚えるのは、よしあしだと思う。

技術メモ帳 - pgrep, pkill を使用してプロセスを殺す
最近、会社でシェルの操作方法について教えているのだが、
pgrep / pkill / skill / pidof といった
便利なプロセス操作系コマンドを知らない人が実に多い。
続きを読む

Bookmarklet - URI Escape

どうせならブラウザーにやらせましょう。

ASCII記号のURLエンコード対応表:phpspot開発日誌
ちょろっとエンコード値を調べたい時にこういった表を用意しておくとWEB開発やチェック、入力なんかの時に便利かもしれませんね。
続きを読む

javascript - Text to HTML Entities Encoder

encode-entities

Sourceを貼付ける際に実体参照化するとき、みなさんはどうしていますか?

404 Blog Not Found:ソースを貼付ける50の方法
コピペのしやすさでtextareaで囲む方法に比べて一歩及ばず、そしてtagの実体参照化が必要だという欠点はあります。

私はPerlのOne-Liner、

perl -Mencoding=utf8 -MHTML::Entities -ple '$_=encode_entities($_, "<>&")'

でやっていたのですが、どうせならブラウザーを離れずに出来た方がいいですよね。というわけでこちら。

続きを読む

「ユビキタス社会」をユビキタスに消すbookmarklet

マジレスはとりあえずあとまわしにして、そんな中島さんにささやかなプレゼントを。

Life is beautiful: ブログを利用して日本語から言葉を一つ消すことができるか?
「誰もやったことのないこと」するのが大好きな私だが、今日は、ちょっとした実験を思いついてしまったのでぜひともご協力願いたい。
続きを読む

C - tailとqueue

どうせなら、もう少し潰しがきくように書いてみた。

はこべにっき# - C言語でtailっぽいものを書く
また,明日学科のC言語のテストがある.C言語なぞ普段まったく使わないもんだから,思い出さねば.てことで,10行固定版tailを書いてみた.以下のソース.
続きを読む

200 Blog Not Found

(他に忘れられがちなもの以外|意外)に忘れられがちなのが、これ。

ステータス200なのに「その商品はありません」
エンジニア以外の人間が読むと、「ページがなければ404エラー。そんなのあたりまえだろ。」で終わってしまいかねない。 ここでは、「404エラーページを見せろ」ではなく「httpヘッダーで404を返せ」と言っているのがミソだ。
続きを読む

javascript - はてブ拘置所

そういう子はここに入れちゃうぞ;-)

ぼくはまちちゃん!(Hatena) - ARTIFACTさまご所望のbookmarklet
できた!

いつでもどこでも引き蘢りたい方は、上記のbookmarkletを登録のこと。

続きを読む

UTF-8 vs. ISO-10646

これだとLiberalなUTF-8ですね。

[を] UTF-8 の文字にマッチする正規表現
UTF-8の文字にマッチする正規表現の素直版。
続きを読む

2 repeat or not 2 repeat

That's the question.

分裂勘違い君劇場 - 「同じことを2度しないようにする」というプログラマの習性が、逆に生産性を大きく下げている
この記事で主張しているように「同じことを2度しない(Only and Only OnceあるいはDRY:Don't Repeat Yourself)」と無条件で考えてしまうと、逆に生産性が大きく低下するケースがたくさんある。
続きを読む

Bookmarklet Generator

車輪の再発明の罪滅ぼしに、こんなの作りました。

はてなブックマーク - たろマーク/ 2006年02月09日
せっかく本家に載せてもらってたのに誰も見てなかったということかーw>http://www.hatena.ne.jp/tool/bookmarklet#bookmark
続きを読む

Bookmarklet-このページのはてブを表示する

すでに本blogの各ページには全てb.hatena.ne.jp/entryが付いていますが、最近人様のページに対してもそれを使いたいケースが出て来たので、手慰みにBookmarkletを作ってみました。ご自由にご利用ください。

続きを読む

ハナモゲラ和歌製造機

偶然見つけたものを少しGolf。

続きを読む

HEAD b.hatena.ne.jp

perl使いならやはりLWP付属のこちらでしょう。

naoyaのはてなダイアリー - w3m -dump_head b.hatena.ne.jp
w3m -dump_head b.hatena.ne.jp
続きを読む

行番号ふりふり

こういうやつこそ、一行野郎でしょう。

naoyaのはてなダイアリー - きよへろのPerlコードをリファクタしようのコーナー No.3
でも、今回は id:kiyohero のコードそのものが結構シンプルで直しどころがあんまりない。
続きを読む

Core vs. Wrapper

組み込みを使うかWrapperを使うか、それが問題だ

naoyaのはてなダイアリー - きよへろのPerlコードをリファクタしようのコーナー No.2
やっぱり最初は localtime を素で使っちゃうよね。Perl の入門書にはおそらくほとんど localtime での例になってると思われます。しかし、僕なら Time::Piece を使う。
続きを読む

LL Intaractive

LLの利点の一つというのは、対話的に使えることでもある。

いやなブログ: SpiderMonkey で JavaScript のインタラクティブシェル
JavaScript のコードをインタラクティブに動かせるツール (Ruby における irb のようなもの) が欲しいと以前から思っていたのですが、今日になってようやく SpiderMonkey のインタラクティブシェルをインストールしました。

たいていのLLが対話的に利用する手段を用意しているのだが、対話型インターフェースが組み込みのPythonを除くと以外と知られていないケースも多いのでここにまとめてみた。

続きを読む

数値型言語誕生!

この人によれば、世界の全てを0と1の間に押し込む事ができるのだそうだ。この人は気がふれたというふれこみだが、実際のところは自分を数直線に押し込んだだけなのだ。

というわけで、集合論を知らなくても使える数値型言語、 Acme::Bleach::Numerically を紹介します。

続きを読む

Lingua::JA::Numbers Released!

タイトルどおり、Ligua::JA::NumbersをReleaseしました。CPANからまだ取れなければ

http://www.dan.co.jp/~dankogai/cpan/Lingua-JA-Numbers-0.02.tar.gz

にて入手可能です。

続きを読む

Perlで2進数

今日ある友人に野暮用で会った。

彼がなぜだかPerlで2進数を扱うのに悩んでいたので回答。

続きを読む

最狂プログラム

最近自分がプログラマーでもあるという事を忘れつつあるので、ここらで一つ披露。

鈴木島男に学ぶ ウィルス撃退法 - にぽたん研究所
ここで、私からこんな島男スタイルを提唱する。 これをやればあなたも一見天才プログラマーだ。 結線していないキーボードをものすごい勢いで打鍵しながら
% tail -f /usr/local/apache/logs/access_log

それでは私が本当のHackerもうならせる奴を披露しよう。

ソースコードに patch あてて脆弱性対策をして復旧したのかも知れないが「コンパイル」という作業を経ずに復旧してしまう。

もちろん、コンパイル不要。

続きを読む

compuri.pl

星の秘密 - にぽたん研究所
同じものと判明。。。 これは気がつかなかった。。。

という時にはこれ。

perl -MLWP::Simple -le 'print get(shift) eq get(shift)' uri1 uri2
続きを読む

piconv -f from_encoding -t to_encoding

Perl 5.8 以降がある環境であれば、上記の方法で文字コード変換が可能だ。例えば、foo.sjisをShift_JIS をUTF-8にしたいなら、
piconv -f sjis -t utf8 foo.sjis
とすればいい。詳しい使い方は
piconv -h
で参照可能だ。続きを読む

perl -de 1

「perlをrubyやpythonのようにインタラクティブに使うにはどうしたらよいか?」という質問の答えがこれ。perldoc -q "use Perl interactively"でその原理を見る事ができる。実行すると、こんな画面になる。

Loading DB routines from perl5db.pl version 1.27
Editor support available.

Enter h or `h h' for help, or `man perldebug' for more help.

main::(-e:1):   1
  DB<1> 
ここから任意のコードを実行できる上、よく使うものに関してはdebuggerのコマンドとして省略形で実行できる。 私がよく使うのが計算機がわり。こんな感じだ。
DB<1> p 1+2-3/4**5
2.9970703125
続きを読む

perl -MJcode -ple '$_=jcode($_,"utf8")->z2h->utf8'

今日から、「一日一行野郎」-- One liner of the day -- と評して便利な One Liner (一行野郎)を紹介していこうと思う。これなら楽にエントリを積み上げて行けると思うからだ。

今回のOne Linerは、全角カタカナを半角カタカナにするもの。最近半角カタカナを(ケータイ以外で)利用する機会がめっきり減ったが、一つだけ、オンラインバンキングで受取人を入力する場合のみはあのいまいましい半角カナから逃れ得ない。なのに筆者が端末として使っているOS Xでは、半角カタカナはもう古いとばかり、非常に入力しにくい。筆者はそんな時上記のOne Linerに助けてもらう。終了するにはctrl-Dctrl-Cだ。

続きを読む
記事検索
Recent Entries
注目エントリー@はてな
Archives
Profile

dankogai

QRコード
QRコード
  • ライブドアブログ