tech

docker であげてる mysql を peco で選んで sequel pro でシュッと開く

alias sequel-docker='sequel-open -docker -host $(docker ps --format "{{.Names}}" | grep mysql | peco) -ssh-password $BARGEE_PASSWORD -ssh-user $BARGEE_USER -user root' こんな感じ。いちいち履歴から探すみたいなのをしないようになった。自分は …

Ray Tracing in One Weekend を rust で勉強した

Safari のリーディングリストを整理していたら In One Weekend: Ray Tracing in One Weekend このサイトを発見したので、折角のなので勉強を始めた。3D とかは全く知識なし。 本は amazon で売っていて 355 円で買える。 www.amazon.co.jp 基本的にはベクト…

aws-sdk-go のモックとデータの組み立て

aws-sdk-go にはこういうモックの仕方あるよという感じでこういう記事があります。 雑に言えば各サービスのクライアントの interface 用意しておくのでそれ使えば、という感じ。まぁ自分で用意しても良さそう。インターフェイスが変わったらコンパイル出来な…

macvim の menu のショートカットを消す

macvim を使っている最中に、たまにタイポなのか、make らしきものが実行されていて謎だった。今日それが解決して macvim には cmd+b (メニュー -> ツール -> メイクに定義されている)に :make が割り当てられていた。英字キーボードで cmd に変換を割り当…

タイムアウト(キャンセル)を context.Context に寄せてみる

気が向いたので前書いた go のライブラリの一つのタイムアウトの指定(キャンセルも含む)を context.Context に寄せてみた。 (https://github.com/soh335/test-mysqld-docker/pull/6) このライブラリは docker で test 用の mysqld のプロセスを管理するも…

MacVim.app に入ってる mvim の位置が MacVim.app/Contents/bin/mvim になってた

前は MacVim.app/Contents/MacOS/mvim だった。いつから変わったんだろう?(最近な気がする)

vue シリーズをシュッと試す

自分のローカルで作業する為のフロントを作るのに気になっていた vue シリーズ(vue.js, vuex, vue-router, vue-cli)をシュッと使ってみた。(ついでに material design lite も試した) 片手間のものなのであまり有益な情報ではないけど、一応思うところ含…

safari のロケーションバーでの検索のカスタマイズ

~/Library/Safari/SearchDescriptions.plist にロケーションバーでの検索についての設定が書かれているので、挙動がおかしい場合とか(手元でなぜか amazon 検索が本カテゴリで行われるようになったため)に見る。 新規追加も出来て、alc 等自動で検出されな…

go で mysql のテストに docker を使う

mysql を含むものをテストする際に例えば go だと、lestrrat/go-test-mysqld とかを使います。 perl には Test::Docker::MySQL っていうのがあって、面白いなと思ったので、(雰囲気 go-test-mysqld インターフェースで)go で書いてみました。 github.com g…

Screencast に終了機能とファイルが録画が終わったらファインダーで開く機能を追加した

github.com そういうのがあると便利という意見を頂いたので追加した。 次、治したいのはアップデートのところで、このアプリ最初から全画面だから、自動アップデートのウィンドウが出て来てもそれよりも前にマスクがかかってしまう。設定画面を表示すると押…

Sierra でシュッと JIS キーボードを US キーボードとして認識させる

Sierra で MacBookPro の JIS キーボードを US キーボードとして扱いたかったので作りました。 github.com 10.11 までは Karabiner にこの要件を満たせていましたが、現状はまだ動いていませんのでその繋ぎという感じです。 README.md にも書きましたが、キ…

シュッとウィンドウを選択してスクリーンキャストを撮れるようにした

soh335.hatenablog.com 少し前に上のようなものを作った。たまにウィンドウをシュッと選択したい感じだったので、スペースキーを押すと選択出来るようにした。 github.com sierra にしても何もコード変えることなく動いててよかった。ついでに dmg を sign …

parallel_tests で rspec を並列化する

test-queue でもなんでもいいけど今回は parallel_tests を使った。 readme.md に書いてある通りにすれば使える。二つちょっと工夫した。 一点目は web アプリのテストコードとかでアップロード周りはローカルに切り替えるみたいなのをやるけど、アップロー…

apns ( http2 ) で Token Authentication を行う

apns ( http2 ) で新たに Token Authentication という jwt による認証機能が追加されました。 詳しい内容は下記にあります。 developer.apple.com developer.apple.com 上にある通り、今までは証明書の期限切れという問題がありましたが、Token Authenticat…

mac でシュッとスクリーンキャストを gif とかで撮ってバーンと dropbox にあげる

mac でシュッとスクリーンキャストを gif とかで撮りたいなと思ったので Screencast というのを作りました。github releases からダウンロード出来ます。 github.com なぜ自作したかというと以下の条件を満たしたものが欲しかったからです。 quicktime playe…

ライセンスファイルをシュッと集めてばーんと連結して html にする

github.com carthage を使っているとライセンスファイル集めて、連結するのを自分でやる必要がある(という認識)。 それに加えて他のライブラリとかも使っていたら、それも集めてきて連結する必要がある。 ので、上のようなツールを書いた。 $ licenser --c…

NSToolbar でサイズが切り替わる設定画面のような WIndow を作る

下のようなXcode の設定ウィンドウのように NSToolbar が上部にあり、表示内容のサイズをアニメーション付きで変わるものを作ります。 storyboard NSWindowController を用意します。 NSToolbar をセットし、下のように必要な NSToolbarItem を追加したりし…

mac アプリに go のコードをリンクする

ios の場合は gomobile を使う必要がありますが、osx の場合は必要ないので go build -buildmode=c-archive したものをリンクすると mac アプリから呼ぶことが出来ます。 例えば適当に、 libdummy というディレクトリを作り main.go として以下のようなファ…

GIF の color table を調べる

gif の color table を調べたくなったのでシュッと確認できるよう gifpalette というのを書きました。 github.com 実行すると このように出力されます。 golang には gif の parser が標準でついてるので読むと color table がどこに入っているかとかがわか…

elasticsearch-model レベルでモック・スタブする

github.com これのモック・スタブを行う。 RESPONSE = { 'hits' => { 'total' => 123, 'max_score' => 456, 'hits' => [{'_id' => '1', 'foo' => 'bar'}] } } RESULTS = Elasticsearch::Model::Response::Results.new DummyModel, RESPONSE setup do search …

WERCKER_REPORT_ARTIFACTS_DIR と WERCKER_OUTPUT_DIR

$WERCKER_REPORT_ARTIFACTS_DIR このディレクトリに何かを入れると、web ui からダウンロードができる。 $WERCKER_OUTPUT_DIR 次のフェーズに使うものを入れる。このディレクトリが空の場合 $WERCKER_ROOT ( $WERCKER_SOURCE_DIR ) が使われる。 また、1000 …

gist の comment を rss feed にする

gist で色々やりとりされてるものを追うことがあったので作りました。 github.com $ gist-comments-feed -id <gist id> こういう感じで使います。私は dropbox に定期的に出力したやつを置いて、feedly で追います。</gist>

docker でたてた mysql コンテナに Sequel Pro でアクセスする

mac で mysql の操作を雑にする際に Sequel Pro を使っている。最近は手元に docker で開発していることもあって Sequel Pro から docker でたてた mysql コンテナにアクセスしている。 Sequel Pro は ssh トンネルでのアクセスができるので mysql ホストに…

hugo で特定の記事を noindex にしたり、rss に表示しないようにする

soh335.hatenablog.com こういうどうでもいい記事は noindex になってても良いし、もっとどうでもいい記事*1は rss に表示されなくても良い。 自分で(ある程度)手をいれることが出来れば特定の記事を noindex にしたり rss に表示しないことも出来る。今回も…

vim で markdown のリンクをタイトルを取得しインサートする

前回の続きになるが、もし hugo 等にブログを乗り換えた際はてな記法が使えなくなり markdown 等で書く必要がある。 現在このブログは基本的には markdown で記述しているが、リンク周りは [http://example.com:title] というはてな記法を使っていることが多…

vim で再度開いた場合にカーソルの位置を復元する、ただし gitcommit 以外。

autocmd BufReadPost * if ine("'\"") > 0 && line("'\"") <= line("$") | exe "normal g`\"" | endif と設定していたけど、コミットメッセージを書く際にも効いていてこの場合は先頭位置にカーソルがあるべきなので autocmd BufReadPost * if &filetype != …

はてなブログの記事データを hugo のデータに変換する

soh335.hatenablog.com にて記事データのパースをすることが可能になったので今度はそれを hugo のデータに変換することを試みる。そのために hatenablog2hugo というコマンドを書いた *1 github.com パースした内容を hugo の下記のようなフォーマットに変…

Movable Type ( はてなブログ ) からエクスポートした内容をパースする

直ちにブログを置き換えたいというわけではないけど、いざそうなあった場合にどうすべきか考えてはてなブログの過去の記事のエクスポートについて調べた。 help.hatenablog.com 上の記事に書いてある通り Movable Type 形式というものでエクスポートされる。…

native webrtc で動画や音声のデータにアクセスする

通常のビデオチャットのような使用用途で native webrtc を用いる場合 *1、動画を表示する view などが sdk レベルで提供されているので、そのまま使えば良い。(音声データは中で複数音声をミキシングなどしてよしなに再生するところまでやっている)ただ、…

swift で FSEvents をシュッと扱う

swift だけで書いてみたかったので書いてみた github.com import FileWatch let filewatch = try! FileWatch(paths: ["/path/to/dir"], createFlag: [.UseCFTypes, .FileEvents], runLoop: NSRunLoop.currentRunLoop(), latency: 3.0, eventHandler: { event…