Just another Ruby porter,

〜2015年11月下旬〜


<Older(,) | Newer(.)> | Recent(/)>> | RDF

2015-11-21 (Sat)

goto version up

地味に使われている gotoさんだが、GH-964のようなGithub Issuesにも対応した。
現在の.htaccess設定はこんな感じ。

RewriteEngine on
RewriteBase /~eban/
RewriteRule ^$ index.html [L]
RewriteRule ruby-changes:\s*(\d+) http://archive.good-day.net/~w3ml/w3ml.cgi/ruby-changes/msg/$1 [L]
RewriteRule (ruby-\w+):\s*(\d+) http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/$1/$2 [L]
RewriteRule ^#?(\d+) http://bugs.ruby-lang.org/issues/$1 [L]
RewriteRule ^r(\d+) http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=$1 [L]
RewriteRule ^n[:\s]r?(\d+) https://www.google.com/search?hl=ja&lr=lang_ja&ie=utf-8&q=r$1+inurl:d.hatena.ne.jp/nagachika/ [L]
RewriteRule ruby-(\w+)$ http://blade.nagaokaut.ac.jp/ruby/ruby-$1/index.shtml [L]
RewriteRule (?i)GH-?(\d+) https://github.com/ruby/ruby/pull/$1 [L]
RewriteRule ^g[:\s]\s*(.*)$ https://www.google.com/search?hl=ja&lr=lang_ja&ie=utf-8&q=$1+site:blade.nagaokaut.ac.jp+inurl:blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ [L]
RewriteRule ^(?:rurema:\s*)?(.+)$ http://rurema.clear-code.com/query:$1/ [L]

r ruby-changes:30000でruby-changes、r n:r30000でPB memo、
r g:fooでbladeの検索、r rurema:fooでるりま検索が可能となっている。


2015-11-22 (Sun)

RubyでYAMLをJSONに変換

jjがあるのでJSONに変換するのは簡単。

% ruby -ryaml -rjson -e 'jj YAML.load $<' circle.yml

2015-11-23 (Mon)

倍速再生できるMP3に変換

podcastとかプレイヤーに入れても再生速度は変えられないので、
あらかじめffmpegで変換しておくと便利。

% ffmpeg -i podcast-ep1.mp3 -af atempo=2.0 podcast-ep1-20.mp3
2倍速はきついかもしれないので、お好みで。

2015-11-24 (Tue)

FFmpegを静的にリンクする

configure時に

--pkg-config-flags=--static

をつけるだけ。ldd ffmpegでnot a dynamic executableと表示されればokだ。

自分で作らなくても用意してくれてるサイトがある。
FFmpeg Static Builds


2015-11-25 (Wed)

Exploring The AWS Lambda Runtime Environment

これはまじで便利。
lambdaの環境を調べるときにいちいちfunctionを作ってたけど、なるほどこうすればいいんだ。

% lambdash cat /etc/system-release
Amazon Linux AMI release 2015.09
% lambdash df -h / /tmp
Filesystem      Size  Used Avail Use% Mounted on
/dev/xvda1       30G  2.4G   27G   8% /
/dev/loop9      526M  416K  514M   1% /tmp
% lambdash 'echo foo > /var/tmp/foo'                    
/bin/sh: /var/tmp/foo: Read-only file system

やはり/tmpしか書けない。mountコマンドはない。


2015-11-26 (Thu)

avconvとffmpeg

なんでUbuntu 15.10で突如ffmpegが復活したんだと思ったらややこしい経緯があったようで。
Ubuntu 15.10 その12 - Libavが無くなり、FFmpegに戻りました - kledgeb

symlinkじゃ済まないくらいの違いがあったりするので急に消えるも勘弁して欲しい。


2015-11-27 (Fri)

gccのメッセージがカラフルになっていた

最近あまりエラーを起こすようなビルドをしてないせいか、
gccの警告やエラーメッセージを見てなかったが、
いつの間にか色がついていてちょっと驚いた。

% echo 'm(){hoge}' | gcc -xc -
<stdin>:1:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
<stdin>: In function ‘m’:
<stdin>:1:5: error: hoge’ undeclared (first use in this function)
<stdin>:1:5: note: each undeclared identifier is reported only once for each function it appears in
<stdin>:1:9: error: expected ‘;’ before ‘}’ token

2015-11-28 (Sat)

アメダスをCSVに

さいたまは降水量だけじゃないので対応してみた。

% curl -Ls http://www.jma.go.jp/jp/amedas_h/today-43241.html |
  awk -F'[<>,]' '/e l/{t=$3}/k m/&&gsub(/\t*(<[^>]+>)+/,",")&&NF--&&$0=t$0' OFS=,
時,℃,mm,16方位,m/s,h
1,5.2,0.0,北西,1.3,&nbsp;
2,4.6,0.0,北西,1.3,&nbsp;
3,3.9,0.0,北,1.0,&nbsp;
4,3.6,0.0,北北西,0.8,0.0
5,3.4,0.0,北西,1.5,0.0
6,3.0,0.0,北西,1.2,0.0
7,2.4,0.0,西北西,2.1,0.3
8,4.8,0.0,北,1.3,1.0
9,7.9,0.0,北,1.6,1.0
10,10.5,0.0,北北東,2.3,1.0
11,12.0,0.0,北北東,2.7,1.0
12,13.0,0.0,北,1.7,1.0
13,13.7,0.0,北東,0.6,1.0
14,14.4,0.0,北東,2.4,1.0
15,14.0,0.0,東,2.0,0.7
16,13.1,0.0,東,1.6,0.0
17,12.5,0.0,南東,1.5,0.0
18,11.8,0.0,東,2.6,0.0
19,11.2,0.0,東,2.8,0.0
20,11.1,0.0,東南東,2.2,0.0
21,10.3,0.0,東北東,0.5,&nbsp;
22,9.0,0.0,北,1.7,&nbsp;
23,8.1,0.0,北北西,1.8,&nbsp;
24,7.1,0.0,北西,1.8,&nbsp;


2015-11-29 (Sun)

docker psの表示をもっとましに

端末の横はそんなに長くない。
CREATEDとかPORTSなんていらないのでちょっと変えてみた。

% docker ps -l           
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
a143202a0430        busybox             "date"              10 seconds ago      Exited (0) 7 seconds ago                       grave_borg
% mkdir ~/.docker
% echo '{"psFormat": "table {{.Names}}\\t{{.ID}}\\t{{.Image}}\\t{{.Command}}\\t{{.Status}}"}' > ~/.docker/config.json
% cat ~/.docker/config.json 
{"psFormat": "table {{.Names}}\t{{.ID}}\t{{.Image}}\t{{.Command}}\t{{.Status}}"}
% docker ps -l
NAMES               CONTAINER ID        IMAGE               COMMAND             STATUS
grave_borg          a143202a0430        busybox             "date"              Exited (0) 8 minutes ago

NAMESって日陰者だが、CONTAINER IDの代わりに使える。
まあ、あんな表示じゃ無理もない。


2015-11-30 (Mon)

docker psでIDを4桁で

man docker psしたら--formatはGo templateを使っていると書いてあったので、
調べてみたら いろいろ機能があるようで。
例えばCONTAINER IDを4桁だけ表示したければprintfでokだ。

% docker ps -l --format='table {{printf "%4.4s" .ID}}'
CONTAINER ID
a143

<Older(,) | Newer(.)> | Recent(/)>> | RDF


WWW を検索 jarp.does.notwork.org を検索

わたなべひろふみ
Key fingerprint = C456 1350 085F A320 C6C8 8A36 0F15 9B2E EB12 3885
Valid HTML 4.01!