ツレヅレ
ついにというか何というか
歌ってみた用コミュの人数が、プログラ用コミュの人数を抜きましたwww
ついにメインとサブが逆転です。本当にありがとうございましたwww
最近歌枠ばっかやってるから当然っちゃ当然なんですけどね…www
まぁそれにしても、自分のプロフィール的に「歌」と「プログラム」という二面性が出ちゃってるわけで、いっそブログも分けてしまおうかとか考え中であります。
まぁ、気持ちとしてはどちらもメインなんで、どちらのコミュも今後ともどうぞよろしくお願いします☆
WindowsのコマンドプロンプトでUTF-8な文字を表示したいと思った。
いろいろぐぐってみたら、「chcp 65001」とか、「コマンドプロンプトのフォントを変更」とかいろいろ出てくるんだけど、なんかどうも「これでバッチリ!」って方法が見あたらない。
「コマンドプロンプト UTF-8」でぐぐるとほとんどのページで「chcp 65001しろ」って書いてあるんだけど、やってみるとわかるけどこの方法ではどうにも使い物にならない。(変な改行されたり、改行されなかったり。)
で、じゃぁコマンドプロンプトで表示することをあきらめて、他の方法がないかと思ってやってみたらktkr!
WindowsでUTF-8なプロンプトのできあがり!
- OpenSSH for Windowsをインストールする
- インストールできたら、READMEをよく読んで初期設定する(mkgroup, mkpasswd)
- PuTTY ごった煮版をインストールする
- PuTTY ごった煮版で「127.0.0.1」にログインする
- PuTTYの文字コードの設定を「UTF-8 (CJK)」にする
- (゚Д゚)ウマー
WWW::Mechanize::Pluggableのppmが無かったので
自作してみた。make_ppmマンセー
5.10.x用です。
インストールしたい人は下記コマンドでできると思うよ。
ppm install http://ptan.info/downloads/ppm/5.10/WWW-Mechanize-Pluggable.ppd
つくりかた:
CPANから作成したいモジュールのtar.gzとってきて、下記を実行
perl Makefile.PL nmake nmake test make_ppm
make_ppmコマンドはPPM::Makeモジュールに入ってます。
nmakeはここから取ってくるといいんじゃないかな。
nmakeのリンクが変わってたので更新しました(2013/7/3)
ubuntu 9.10かなり使いやすいお!
なんか巷では不具合続出で印象悪いubuntu 9.10ですが、私の環境では全然そんな素振りもなく快調ですお!
いなさんが公開されてる方法でubuntuからニコニコ生放送へ配信する環境も整ったし、まだまだ全然戦えるマシンに生まれ変わったね!(PenMだけど)
というわけで、プログラミング系放送は今後このマシンで行う比率はグッと上がるでしょう。
とりあえず現時点で不満が残ってるところは日本語変換周りだけですね(まぁ速度も不満だけどこれはしょうがない)。
デフォだとSCIM+Anthyがこの上無く残念(Flash上で変換途中の文字を表示できない)だったのですが、UIM+Anthyに変更してとりあえずの解決をみました(変換時は入力欄下に小窓が出るようになって若干うざいけど)。
速度の点では全然チューニングとかしていなくて、アイドル時CPU使用率20%超な子なのですが、この辺も時間があったらシェイプアップしていきたいと思います。
ニコ動リニューアル後
結構仕様変更や不具合出てますね><
Nwhoisでログインできなかったり、Chromeで放送が聴けなかったりしたようです。
それと、このブログのサイドバーに出してるニコ動のプロフ画像がまだ表示されてないです・・・
結構気付きにくいところなんだろうなあ。
Perlgolfとか。
技術的な話題につき、興味ない人はヌルーしてね☆
最近よく視聴してるPerl放送の生主さんとこでGolf(ショートコーディング)なるものをやってたので、その場でリスナーとして勝手に参戦してみました。
お題:
引用元:(・3・)ぷぅログラミング
・ルール通ればなんでもおk。言語もなんでもおk。
・内容
入力:1以上の整数の数値
出力:入力された長さを1辺とする四角形で、外側は1、内側は0とする。・例
入力:3
出力:
111
101
111入力:5
出力:
11111
10001
10001
10001
11111
言語/バージョンはActivePerl 5.10.0で参戦。こういう変態的な事するにはやっぱりperl便利ねw
こんな感じになりました(51Bytes)。
$i=<>;print$_%$i<2?1x$i:(1,0 x($i-2),1),$/for 1..$i
さらにperl6対応にするとこんな感じに(48Bytes)。
$i=<>;say$_%$i<2??1x$i!!(1,0 x($i-2),1)for 1..$i
perl 5.10対応版の方で軽く説明すると、キモはprintの引数になっている3項演算子のこの部分:
$_%$i<2?1x$i:(1,0 x($i-2),1)
この部分がややこしいですが、見やすくなるように書き直すと
$_ % $i < 2 ? 1 x $i : (1, 0 x ($i - 2), 1)
ってことですね。
$_ は後置forの一時変数なので、
「1行目から(入力)行目まで処理を繰り返す際、Nを処理中の行数としたとき、N÷(入力)の余りが0または1(つまり「<2」)のときは1を(入力)個出力し、それ以外の場合は先頭が1、続いて0を(入力-2)個、最後に1を出力する」
という事になります。
「余りが0または1(つまり「<2」)」とは一体なんぞや?については、例を挙げて説明するとわかりやすいと思うのですが、
例えば(入力)が5のとき:
1(行目)÷5(入力)の余り・・・1
2(行目)÷5(入力)の余り・・・2
3(行目)÷5(入力)の余り・・・3
4(行目)÷5(入力)の余り・・・4
5(行目)÷5(入力)の余り・・・0
となるので、この1行目と5行目の処理をまとめた論理式になるわけですね!
というわけで
1(行目)÷5(入力)の余り・・・1なので「11111」を出力
2(行目)÷5(入力)の余り・・・2なので「10001」を出力
3(行目)÷5(入力)の余り・・・3なので「10001」を出力
4(行目)÷5(入力)の余り・・・4なので「10001」を出力
5(行目)÷5(入力)の余り・・・0なので「11111」を出力
となるわけです。
・・・良くこんな発想できたな自分w
いやぁ、楽しませてもらいました。
感謝感謝です!