〜2010年2月中旬〜
ThunerbirdからGmailを起動したらBuzzが出てきたので、
User-AgentがiPhoneとかに限らない模様。
たぶんPCのブラウザっぽくなければいいんだろうと思う。
これはちょっとひどい。
:.,$!perl -pne 'for $i ("0001".."0004"){ s/XXXX/$i/ if($i == $.) }'
-nが余計なのは愛敬としても、forループはさすがにないと思う。
4行ぐらいだったらこれでもいいかもしれないけど、
行数が増えたらそのたびに数える気なんだろうか?しかも無駄に時間がかかるし。
perlでやるなら
:.,$!perl -pe 's/XXXX/sprintf"%04d",$./e'
ぐらいかな。vimだけでやるなら
:let i=1|.,$g/^/s/XXXX/\=printf("%04d",i)/|let i+=1
で可能。単に行番号で置換するなら
:.,$s/XXXX/\=printf("%04d",line("."))/
でいける。
いろいろぐぐった結果こんな感じで~/.mailrcに書いとけば読むことはできた。
account gmail { set imap-use-starttls set folder=imaps://ユーザ名@gmail.com@imap.gmail.com set password-ユーザ名@gmail.com@imap.gmail.com=ぱすわーど set from="XXXXXX XXXXXXXX <ユーザ名@gmail.com>" set smtp-use-starttls set smtp=smtp://smtp.gmail.com:587 set smtp-auth=login set smtp-auth-user=ユーザ名@gmail.com set smtp-auth-password=ぱすわーど set nss-config-dir=~/.mozilla/firefox/2010 # use this one if you get SSL warnings, ThawtePremiumServerCA_b64.txt # is available at http://www.thawte.com/roots/ # set ssl-ca-file=~/.mail/certs/ThawtePremiumServerCA_b64.txt # some shortcuts for standard Gmail folders shortcut allmail +[Gmail]/All\ Mail shortcut spam +[Gmail]/Spam shortcut trash +[Gmail]/Trash }
set nss-config-dirにはfirefoxのプロファイルディレクトリを指定しろとあるが、
そんなんでいいのか?それが問題かどうかわからないけど、最初に
Error in certificate: Peer's certificate issuer is not recognized. Continue (y/n)?
と警告される。smtpのほうは
SSL/TLS handshake failed: Unknown error -8023.
と言われてNG。やっぱなんかまずいようだ。
それにしてもutf-8にも変換してくれるし、POPにもアクセスできるし、
えらい進化した/bin/mailなんだな。
% mail -A gmail Error in certificate: Peer's certificate issuer is not recognized. Continue (y/n)? y Heirloom Mail version 12.4 7/29/08. Type ? for help. "imaps://ユーザ名@gmail.com@imap.gmail.com/INBOX": 98 messages 98 unread >U 1 XXXXXXXX Sat Feb 13 17:10 196/7930 "comp.unix.shell - 19 new messag" U 2 XXXXXXXX Sat Feb 13 17:20 /5384 "comp.lang.awk - 3 new messages " U 3 XXXXXXXX Sat Feb 13 17:08 /4314 "[ruby-cvs:33874] Ruby:r26659 (t" U 4 XXXXXXXX Sat Feb 13 17:10 /5407 "Re: What is the best exception " U 5 XXXXXXXX Sat Feb 13 17:10 /7475 "Re: Is there a way to get a met" U 6 XXXXXXXX Sat Feb 13 17:10 /4598 "[ruby-core:28164] Re: [Feature " U 7 XXXXXXXX Sat Feb 13 17:20 /6070 "[ruby-dev:40414] Re: [ruby-cvs:" U 8 XXXXXXXX Sat Feb 13 17:40 /6145 "[ruby-core:28165] Re: [Bug #274" U 9 XXXXXXXX Sat Feb 13 17:42 /4975 "Re: "Code must be Chunkable"" U 10 XXXXXXXX Sat Feb 13 17:56 /4868 "Re: how to detect used protocol" U 11 XXXXXXXX Sat Feb 13 18:20 /5376 "Sorting numbers." U 12 XXXXXXXX Sat Feb 13 18:26 /4323 "Re: "Code must be Chunkable"" U 13 XXXXXXXX Sat Feb 13 18:55 /5958 "Ruby/TK: Versatile file-chooser" U 14 XXXXXXXX Sat Feb 13 19:03 /5850 "Re: Sorting numbers." U 15 XXXXXXXX Sat Feb 13 19:27 /4554 "Re: "Code must be Chunkable"" U 16 XXXXXXXX Sat Feb 13 19:34 /5001 "[ANN] unicorn 0.96.1 - leak fix" U 17 XXXXXXXX Sat Feb 13 19:37 /4708 "Re: "Code must be Chunkable"" U 18 XXXXXXXX Sat Feb 13 19:37 /4948 "[ANN] Rainbows! 0.90.2 - leak f" U 19 XXXXXXXX Sat Feb 13 19:42 /4134 "[ANN] clogger 0.3.2 - share a h" U 20 XXXXXXXX Sat Feb 13 19:39 /4215 "[ANN] Zbatery 0.1.1 - leak fix " &
国母って音にして初めてああ「こくぼ」なのかと思った。
それにしても「小久保」「古久保」「国母」「国保」「小窪」と、
区切りが違う表記出てくるのが面白い。結構古い名前なのかな。
それぞれ全く関係ない可能性のほうが高いが。
「大久保」と「小久保」、「大窪」と「小窪」、「新久保」と「古久保」
という対比もありそうだしなあ。
たしか金曜日の深夜に。でbcが曲者でread()はEOFでビジーループになってしまう。
こんなことさせると返ってこない。
% bc -l <(echo "read()") </dev/null
そういうわけで入力の行数が不定だと解けない。あと数字しか読めない。
ものすごく解ける問題が限られる。ああ、FizzBuzzはいけた。
Summationは神かと思った。
他の言語だと最後の0が邪魔だなとか思っていたが、これのおかげでbcで解ける。
最後のbuffalo.だけ別に扱うのがミソのようで。
むだにzshでjoinを使う例:
set B b B b b b B buffalo. echo ${(j/uffalo /)*}
たまにvimでset cursorlineするんだけど、
下線だとアンダースコアがわかりづらい。
こうしてみた。
highlight CursorLine ctermfg=NONE ctermbg=darkgray cterm=NONE
背景がdarkgrayになる。
ゴルフのときはset bin noeolして改行は入らないようにしてるから、 結構悩ましい。しかたないので
autocmd BufRead,BufNewFile *.bc setl nobin eol
を追加したら*.bcだけ改行がつくようになった。これでいいのか。
実際に動かしてみたらちゃんとFizzBuzzになってて笑った。
__COUNTER__なんてずるいよ。
バックアップ用に登録していたけど3年で終了って早すぎ。
2年振りにログインしてみたら未読メールが多すぎるのかエラーになって表示できない。
放置の原因はlinuxだと拒否されて使えないからなんだけど、
それとは関係なくこりゃそのまま放置するしかないな。
どうせバックアップだし被害はない。
Rubyの場合だと
http://svn.ruby-lang.org/repos/ruby/!svn/bc/20000/trunk/enumerator.c
という感じになるわけだ。svn catとは違って$Idとかのキーワードを展開しない。
すばらしい。キーワード展開しない方法をずっと知りたかったんだよね。
svnlook catだとローカルにあるリポジトリしか扱えないので。
[Subversion] コミットメール: X-SVN-SHA256-Infoの廃止とX-SVN-Revisionの導入 を参照。
いろいろ不利なbcなので-lオプションつけてもらったが、
scale=20になって%が使いものにならない。
% echo 'for(i=0;i<10;i++)i%2'|bc -l 0 0 0 0 0 0 0 0 0 0
ごめん。どう考えてもさらにひどい足枷にしかなってない。
-lにして使えるのはs(),c(),a(),e(),l(),j()ぐらいだけど、
bcは長い行には勝手に\で継続改行しちゃうので結局のところあまり使い途がない。
BC_LINE_LENGTH=0 bcで起動にすべきだった。