第4回elasticsearch勉強会 - elasticsearch勉強会 | Doorkeeperのログ
発表スライドは第4回Elasticsearch勉強会を開催しました。#elasticsearchjp - @johtaniの日記 2ndにまとまってる。超助かる。
git-trash-branchを作ってみました
gitでブランチを操作しながら開発してるとき、よくブランチを完全削除ではなく一旦ゴミ箱的な場所に移したいと思うケースがありました。
gitのブランチ削除は復元する方法がないため、もし削除してしまったブランチをもとに戻す場合は泣きながらreflogでハッシュ番号を漁る必要があります。しかし、それを恐れて無駄なブランチを削除しないと使わないブランチがどんどん増えて、どれが今開発してる(生きている)ブランチなのかわからなくなってきます。
現状ではそういった「たぶんいらないブランチ」はgit branch -mオプションを利用してtrash/というプレフィックスをつけていました。これにより今使ってるブランチといらないブランチをはっきりと区別することができます。ただ、branchAをtrashへ移動させたい場合、
$ git branch -m branchA trash/branchA
とbranchAという文字列を2度打つ必要があり面倒でした。加えて、全体的にコマンドが長いです。
そこで、gitのサブコマンドを自作して以下のように打てるようにしました。
$ git trash-branch branchA
ソースコード、インストール方法、使い方はbigwheel/git-trash-branchを参照してください。
今回はシェルスクリプトのコードに対してrspecで単体テストを書くという自分では初めての挑戦をしています。これ、やってみるとかなり良かったです。ruby自体がかなりコマンド実行と親和性が高いため、両方書ける人ならかなり直感的に書くことができます。
あとやり残したこととしてはインストールをchefで書いて、chef-applyからコマンド一発でできるようにすることぐらい。
gitサブコマンドの書き方備忘録
gitのサブコマンドを書こうとしてもはや何度目かわからないshell scriptの書き方再勉強をしていた。不毛なので、ここに関連URLを残しておく。
- 割と素晴らしいbashの文法まとめ。はてぶ数815!
- 忘れやすいif & testのまとめ
- コマンドの実行結果を変数へ代入する方法
- stack overflowに上がってたbashのshell script用テンプレートについての議論
- カレントディレクトリをスクリプトがあるディレクトリへ変更する方法。わりと頻繁に使う
- [http://qiita.com/ka_/items/6e4d1ff9800937a6bd8c:title=ShellScript - そのシェルスクリプトのあるディレクトリに移動する - Qiita [キータ]]
- 標準出力/標準エラー出力関連
- 配列
- ヒアドキュメント概要説明
- bashでヒアドキュメント : とある技術者の外部記憶媒体
- ヒアドキュメントの書き方で変数へ保存したい場合
- git サブコマンド関連
- クエリ
- gitのサブコマンドの作り方概要
- git nowの概要。ソースコードを参考にできる
- git count。上と同様
- git trash
- 別のgit trash
- ZSHの補完関数関連
テーロス4-3-2-2 3勝
青黒コン。パックが全体的に弱かった
続きを読む自炊で自宅の本を一掃した話(使用した道具編)
概要
作業期間 | 12/31〜01/02の丸3日 |
使用したスキャナ | FUJITSU ScanSnap iX500 FI-IX500 |
使用した裁断機 | ディスクカッター DC-210N 3冊で諦めて → ダーレー Durodex 自炊裁断機 200DXへ移行 |
スキャンした本の数 | 211冊 |
本の種類 | ライトノベル、技術書など |
かかったコスト合計 | \39,000(ScanSnap) + \9,500(DC-210N) + \37,800(200DX) = \86,300 |
話をまとめず箇条書きでつらつらと気づいた点を列挙
- ScanSnapすごい
- 両面のスキャンを一度にしてくれることがこんなに楽だと思わなかった
- 一度に約40枚の紙を一気にスキャンしてくれる。複合機で1枚ずつ表裏を手作業でスキャンしてたのが馬鹿らしくなる便利さ
- 紙の重なりを今のところ100%検出してくれているため、スキャン後のデータチェックへそれほど神経を払わなくてもいい。超音波センサーらしいが素晴らしい精度
- スキャンした画像に白い筋が入ってしまう現象があったが、これはスキャナ内部にへばりついたホコリが原因だった。古い本を大量にスキャンしたためホコリが蓄積されてスキャナへ付着してしまった結果だが、どうやらよくあることのようなので今後もスキャン後の画像へ筋が入ってないか気を払う必要はある
- 全然場所を取らない。複合機の半分ぐらいの専有容積。まったく重くなく、女性でも楽に運べる大きさ
- ScanSnapを接続するとOSの音量が半分になるよくわからないバグが有る。解決法はまだ見つけてない
- 裁断機には金を出し惜しまないほうがいい
- 最初DC-210Nを購入して本を裁断しようとしたが、小説を百冊単位で処分しようとしていた自分では機能不足だった
- DC-210Nは実売1万円、200DXは実売4万円とたしかに大きな違いがあるが、それぞれが一度に裁断できる紙の枚数も40枚vs200枚と大きく異る。本を裁断することに比べて本を分割することはかなり手間だ*1
- DC-210Nは非常に辛い。まず最初にカッターで本を分割するのが酷く手間な上、歯がローリングカッター式なのでテコの原理などを使えず、体重をかける必要がある
- 200DXは高い。高いが30冊以上の本を裁断したいなら200DXかPK-513LN-Aのどちらかは絶対必要になる
- 自分が513LN-Aより約1万円高い200DXをあえて選んだ理由は1.未使用時の収納しやすさ 2.最大裁断枚数の多さ(15mm→18mm) の2点
- 200DXは重い。たぶん513LN-Aも同じぐらい重い。210Nはこれらに比べるとかなり軽いが、専有容積はほとんど変わらない
- 最初DC-210Nを購入して本を裁断しようとしたが、小説を百冊単位で処分しようとしていた自分では機能不足だった
身の回りの書籍を電子化する、ということが自分の生活へどのような影響を及ぼしたのか、についてはまた日を改めてまとめる。たぶん。
*1:自分はその手間をなくすために追加で3万円払うことは十分その価値が有ると思ったため、DC-210Nから200DXへ移った
テーロスドラフト4-3-2-2 1没
これで負けたのは納得いかない。
続きを読むテーロスドラフト4-3-2-2 全勝
最近調子よくて楽しい。この後渾身の3勝デッキで1没したけど。
続きを読む