Kindle水没させてしまったので,社内で余ってたら譲ってもらえませんかという話をSlackの#gadgetチャンネルに書いたら,余ってるということで譲ってもらえることになってありがたい.持つべきものはガジェットを余らせている同僚.
卓球
メトロに卓球観に行った.ひさしぶりにメトロ行ったところ,卓球のDJは素晴しいのだけど,眠くて,煙たくて,空気が薄くて,卓球観たさにやってきた客(ふだんはWorldに通ってそう)は最前列争いを繰り広げていて,酒は飛んできて,靴は踏まれて,曲にあわせて2小節かけてタッキューサーン,カッコイイーって3時間くらい叫び続けてる女性が複数名いたり,鑑賞するのがコレヤバイッテーゼッタイヤバイッテーって叫び続けるおっさんがいたり,おっさんにタックルされるので防御したり,場所取りたさに意図的に当たってきてるので,ヒュッとよけるとおっさんがすごい場所までつんのめって行ったりして,かつてないつらい感じだった.クラブミュージックを聴いて盛り上がるのはいいけど,それ以上の喜びがあまりなくなってきて,低音が出れば盛り上がるみたいな感じに還元されてきているので,夜にタバコ吸えるクラブに行くのはもういいかな,という気がしてきている.洗濯したけどにおいが取れなくていまもう1回続けて洗濯機回している.i am robot and proudのときは禁煙でちょっとましだったけど,建物自体が煙たくて終わってる気がする.クラブに行かないとして,じゃあ何なら聴きたいのかというと,ジャズのライブは聴きたい気がする.
あのatom-auto-programmingがapmに登場
きのう作ったatom-auto-programming,今朝同僚と朝話して,主語は大きいけど,名前は早いもの勝ちで,また,他にauto-programming作りたい人がいるとも思えない,という話をしたので,apmに上げてみた.
GitHubのOAuth認証して,apm publishすると公開できて異常に簡単だった.良い時代になった.
インストールしやすくなったのでどうぞご利用ください.
atom.io
プロジェクト内からgrepして集計して補完を出してくれるAtomプラグインを作った
これまでのあらすじ
auto-programming.elのAtom版を作ってるよ,という話と,単なるスニペット以上に便利だよ,という話をしていた.
blog.sushi.money
blog.sushi.money
できた
できたのでGitHubに置いた.
Emacs版ではPerlのスクリプトを呼んでたのを,Atom版ではふつうにchild_process.execしてgit grepして結果を解析するように変えた.
Emacs Lispで複雑なロジックを書くのに慣れてなかったので難しいところはPerlで書いてたのだけど,JSならどんなに複雑なものでも書けるので助かる.
動いてる様子
Plackのリポジトリ内で適当に動かしている様子.use strict;はプロジェクト内に206回登場する,といったお得な情報も表示している.
ご利用ください
開発前から予想はしていたけど,Atom Packagesに置くには憚られる主語の大きさになってしまったので,apm install https://github.com/hitode909/atom-auto-programming
してインストールしましょう,ということにしている.置いていいものか悪いものか,パッケージ名をなにか変えるか,キラキラネームにするか,どうするか….
github.com
追記
名前も変えたりせずapmに上げてみたので,どうぞご利用ください.
blog.sushi.money
紙皿で飲酒するとすごく酔っぱらう
同僚の新居に遊びに行ったところコップがなくて,紙皿はあったので,紙皿でワイン飲んでた.
グラスだと何杯目とか分かるけど,紙皿だと減ってきたら途中でつぎ足したり,なみなみまで注いでみたりして,加減がよく分からなくなって,飲みすぎてしまった.気をつけたい.
同僚の部屋は,建物自体はすごく良いものの,コップがなかったり,冷蔵庫がなかったり,鍋はなくて電気ケトルだけがあったり,物干し竿がないので部屋の至る場所に服が引っかけてあったりして好感を持てた.
AtomでPerlを書くときに(でインデントしたい
デフォルトのAtomの設定では{を書いたときだけインデントされるので,以下のような場合に変になっていた.
some_method( a => 1, b => 2, );
config.csonに以下のような設定を書くと,(と[でもインデントできるようになる.
".perl.source": editor: decreaseIndentPattern: "^\\s*[})\\]]" increaseIndentPattern: "^.*[{(\\[][})\\]]?\\s*$"
ちゃんとインデントするようになって便利.
some_method( a => 1, b => 2, );
このへんを見ると素朴な正規表現が書いてあった.こういうのでインデントするかどうか決めている模様.