だるろぐ

だるいぶろぐです

perlでメール送信するときにenvelope-fromを指定する

envelope-fromって何ぞ

ggrks

MIME::Lite

http://en.yummy.stripper.jp/?eid=478221#comments

$msg->send(
    'sendmail',
    FromSender => 'error@example.com',
);

Email::Sender

http://d.hatena.ne.jp/hogem/20110312/1300524443

my $sender = 'sender@example.com';
sendmail($email, {from => $sender});

上記で Email::Sender に移行を促されている Email::Send

世の中にはモジュールを追加するのが非常に困難な環境もあってですね。
ただでさえアレなのにMooseとか無理。

my $sender = Email::Send->new({mailer => 'SMTP'});
$sender->mailer_args([Host => 'smtp.example.com', FromSender => 'hirafoo@example.com']);

zncの不満点

  • 接続時のログのplaybackがnoticeじゃない
    • 繋ぐたびに無駄にクライアントがキーワード反応してうざい
  • トークはplaybackされない
    • tiarraはサーバメッセージとして見れた

余談

大抵はサーバがssl対応してない場合が多いと思うので

ircサーバ <-- plain --> znc <-- ssl --> クライアント

となってると思われる。
最初、sslの意義を会話内容の盗聴防止だと思っていたので、これsslにしなくてもよくね?と、同じくsslircしてる人に聞いてみたら、曰く

  • sslの目的は自分のクライアントがirc bouncerに繋ぐときのパスワードの盗聴防止
  • そもそも自分以外の人がplainでサーバに繋いでるのに、そこを自分一人がsslにしたところで何の意味も無い

とのことで。はーなるほどと感心したものでした。

form内で選択されたradioボタンの値によってaction urlを変える

  • 要件
    • form内にnameが同じでtype属性がradioな要素が複数個設置されている
    • submit時に選択されたradioボタンの値によってsubmit先のurlを動的に変更したい
<script type="text/javascript">
    function f() {
        var elements = document.getElementsByName("r");
        var act = "";
        for (var i=0, len=elements.length; i<len; i++) {
            if (elements[i].checked) {
                act = elements[i].value;
            }
        }
        if (act == "") {return}
        document.myform.action = "/base_action_url/" + act;
    }
</script>

<form method="post" name="myform" onclick="f()">
    <input type="radio" name="r" value="_h1_" />h1<br />
    <input type="radio" name="r" value="_h2_" />h2<br />
    <input type="radio" name="r" value="_h3_" />h3<br />
    <input type="submit" />
</form>
  • Q. 何でそんなことを
    • A. うるさい黙れ
  • Q. formのそもそものpost先を同一にして、その先で入力値を見て処理を分けるでは駄目なんですか
    • A. うるさい黙れ

tiarra + DaraIRC から znc + AiCiA にした

sslにしようと思ってtiarraからzncにした。
今までandroid端末でirc見るときはDaraIRCを使っていたんだけどこれ

  • sslに対応していない
  • チャンネル移動するとき、いちいちチャンネル一覧に戻るのが面倒
    • しかも毎回一番上までスクロールされた状態から始まるので、下まで移動するのが面倒

だったので、ssl対応クライアントを探してAiCiAにした。
以前ssl対応クライアント探したらどれも駄目過ぎた記憶があるんだけど(異常終了しまくるとか)これはごく普通に使える。


チャンネル移動ボタンがあるので画面を切り替えずに移動できるしいい感じ。
あとカラフル。


とはいえそもそも外であまりircとか見ない罠。

zncの不満点

全部のチャンネルのログが1つのディレクトリに保存される

  • 1週間足らずでひどいことになりそう
  • tiarraみたいにチャンネルごとにディレクトリ作って欲しい

接続時に、保存してある最近のログを流してくれるのはtiarraの Log::Recent と同じでいいんだけど、notice形式じゃない

  • まあ許せるレベル

ブログのautopagerizeは記事の古い方にじゃなく新しい方に進む方が読みやすいだろう

例えばはてなダイアリーでは記事の一番下まで進むとautopagerizeはその記事の前日を指し示す。
使いづらくね?


それまで知らなかったブログを見つけたとしてだ。
そのブログのエントリを全て読もうと思ったら、まず最初のエントリを探して、そこからその次のエントリへと進みたいはずだ。
だがはてなダイアリーの仕様ではそれが出来ない。autopagerizeは新しい日付の方に進むようにしか設置されていないから。
最初のエントリを開いてもautopagerize自体現れない。
なので

  1. 最初のエントリを開く
  2. いちいち前の記事へのリンクをクリックする
  3. しかも各記事を最後まで読み終える=ページ最下部までスクロールすると、既に読んだ後の、その前の記事がautopagerizeで表示されて大分うざい

となる。悲劇。


どのブログもそうなんだろなと思っていたけど、ライブドアブログでは、最初のエントリを開いたら、その次の記事へのautopagerizeが現れる事に気が付いた。
最後のエントリ以外のエントリや、ブログトップで現れるpagerizeは、その前の記事へとしか進まないのに、どうも最後のエントリに設置されるやつだけは違うらしい。
えーそんなの余程のブログを見つけないと気付かない…
だっていちいち「この人のエントリ全部読もう」とまで思う人ってそんな居なくね。


というわけで。
各ブログサービスにpagerizeの進む方向を変えられるオプションが欲しい。
付けてくれねーかな。