2019 年振り返り

とにかく辛い一年だった。今までの一番の底。 春先に辛い出来事があって、今年はその状態から立て直そうと精一杯生きようとしてたら、夏に退職勧奨を受けたので職場を変えた。 悲しみのどん底にいるときに、色々察してくれて、そっと支えてくれた最高のチー…

Tsuquyomi で popup する

Vim

本記事は Vim advent calendar 21 日目の記事です。 例年は割と準備してたけど、もっとカジュアルに書いていい気がしたという完全な言い訳をして、自分の vimrc に書いてた設定をブログにコピペ。 その 1 TypeScript で変数とか関数のシグネチャーとかをポッ…

2018 年振り返り

今年もほぼお仕事のコミット。 py-pixela を作ったくらい。あとは Vim script。 健康問題 年末(先週くらい)から風邪をひいている。体が弱いくせに風邪は滅多にひかないと言う特殊体質なので、咳が止まらなくて寒気でからが震え、頭痛がする。 加齢とともに回…

tsuquyomi を魔改造している

Vim

https://qiita.com/advent-calendar/2018/vim 22 日目の記事です。 tl;dr tsuquyomi でエラーチェックが同期で走って Vim の UI をブロックしストレスがたまるから、魔改造して非同期で動く仕組みを作った。 https://github.com/heavenshell/tsuquyomi/tree/…

Python Pixela client 作った

ちょっと Python 書いてないかったからリハビリ兼ねて。py-pixela 一応現時点で全ての API には対応してる。 お仕事の Django アプリケーションは mixin がたくさんあり、また今まであんまり mixin しなかったけど練習がてら。

Jest の create() がエラーになるお話

忘備録。 Jest と react-test-renderer の create() を使って snapshot の比較のテストが落ちるようになった。 TypeError: Cannot read property 'addEventListener' of null さんざか調べまくった結果 react-test-renderer では ref を使ってコールバックを…

react-router-redux でハマった

忘備録。 react-router-redux v5.0.0-alpha.9 で表示している URL と match.params が一致していないことが起きた。 症状的には https://s8a.jp/react-router-redux-5-does-not-work-correctly#%E7%8F%BE%E8%B1%A1 こちらと同じ。 ブラウザの戻る/進むボタン…

docker-compose で mysql を立ててローカルで開発する

忘備録。 古い Django で作られたシステムがあって、訳あってローカルで動かしたい。 docker-compose があったので、動かした際にハマった問題。 version: '3.3' services: db: image: 'mysql:5.7.22' restart: always ports: - '3306:3306' environment: MY…

illegal hardware instruction

freezegun を使ってテストをした際に使っているテストで illegal hardware instruction が出た。 https://github.com/spulec/freezegun/issues/222 環境的には Virtualenv で Python3.6.2(ちょっと古い)で発生。 CI とか他の環境ではでない。 ググったり、上…

gdb を使ったデバッグ

Vim

macOS での方法の忘備録。 brew なり MacPorts で入れてコード署名をする必要がある。 OS XでGDBを使う(ためにコード署名をする) taskgated を再起動するの忘れててしばらく使えなくて混乱した。 普通に pkill すれば良い。 Vim をデバッグオプション付き…

2017 年振り返り

ほぼお仕事のコミット。プライベートな開発があんまりできなかった。 Vim プラグインを幾つか作った程度。 Firefox57 になって Vimperator が完全に死んだので、Vim-Vixen にしたが自分にとって致命的に使いづらかった問題があったので PR 送った。 無事に取…

vader.vim をつかって E2E をやる

Vim

この記事は Vim Advent Calendar 2017 16日目の記事です。 「人は生まれたままの姿が一番美しい。ノーパンタイプ」に憧れるけど、風邪をひいちゃうので厚着の vimrc です。 TL;DR 日本語で vader.vim のことを書かれてるのを見たことないので書いた vader.vi…

Misspell を Vim から呼べるようにした

Vim

GitHub - heavenshell/vim-misspell: misspell for Vim.Misspell が便利だったので Vim から呼べるようにプラグイン化した*1。 直接 buffer を misspell に突っ込んだら Vim が SEGV したので channel 経由で入れたらうまくいった*2。便利。 *1:多分 ale に…

MacPorts + MySQL5.7

プライベートな環境を久々に更新しようと思ってやったら思いの外はまった。 仕事は homebrew だけどプライベートマシンは MacPorts を使ってる。 *1 Python3.6.0, MySQL5.6 だったので Python3.6.1, MySQL5.7.17 にするかとports upgrade outdated して、MyS…

vim-noqalign を作った

同僚氏が noqalign と言うツールを作った。 今のお仕事では Python の `__init__.py` にモジュールを import する。 import だけしてるので flake8 対策として `# noqa: F401` をつけるが、これを面倒と感じた同僚氏が自動で入れるようなツールを作った。 お…

vim-prettier を作った

Vim

tl;dr GitHub - heavenshell/vim-prettier: Prettier-Eslint-Cli for Vim Prettier と言う JavaScript のフォーマッターがある。 こいつ単体ではお仕事で設定している ESlint の設定とは関係なくフォーマットするが、prettier-eslint と言うのがあり、これを…

Vim を mocha から実行する際の注意

QuickRun を利用して、 Vim から各種テストフレームワークを実行してる。 GitHub - heavenshell/vim-quickrun-hook-unittest: Quickrun hook for enable to unittest by selecting method.mocha も実行できるようにしたけど、mocha.opts に自分のプロジェク…

SQLALchemy seed を作った

お仕事で Django を使ってて便利だなーと思ったのが fixtures。 初期データを突っ込むのに便利。 Providing initial data for models | Django documentation | Django yaml で初期データの定義を書いて、コマンド経由で DB にデータを入れられる。 Flask で…

Python の Flake8 と Mypy のプラグイン作った

tl;dr Flake8 と Mypy のチェックが動く Vim プラグイン作った。 Flake8 のプラグインは何個あるんだって感じだが、GitHub - kevinw/pyflakes-vim: on the fly Python checking in Vim with PyFlakespyflakes-vim はとっくに deprecated だし、Python3 の ty…

2016 年振り返り

かなり激しい一年だった。 デスマった。春先に倒れた 見事に 2 月から 4 月までコミットがない。 特に 4 月は体調が最悪だった。 3 月末に案件が終わってホッとしたところで見事に倒れた。 いのちたいせつに。 転職した 働き方を変えようと思ってたところに…

FlowType のプラグイン作った

Vim

この記事は Vim アドベントカレンダー 2016 の23日目の記事です。 id:yuttie さんの comfortable-motion.vim よさそうなので入れてみたが自分の MacVim な環境では "E118: 関数の引数が多過ぎます: 128_tick" が出たので追いかけようと思います。 …と思った…

型定義ファイルの管理方法

TypeScript を書いていて、型定義ファイルがライブラリのリポジトリや DefinitelyTyped/DefinitelyTyped にある場合は、npm 経由でインストールしている。 型定義ファイルに漏れがあると、修正して Pull Request を送っている。また存在しない場合は、Defini…

eslint と tslint を Vim から

Vim

textlint.vim を流用。GitHub - heavenshell/vim-eslint-config: Wrapper for ESLint [deprecated] GitHub - heavenshell/vim-tslint-config: Wrapper for TSLint 作った理由は textlint.vim と全く同じ。syntastic-local-eslint.vim とかは system() でパス…

最近作った Vim plugin

Vim

textlint を今のプロジェクトでは使ってて、textlint を 開いているバッファから行いたい。 先人がすでにいるし、プラグインもある。 syntastic watchdogs.vim textlint の設定ファイルを npm で管理していて、そこから読み込むというのが二つともできない。…

Vim-Pokemon 〜あなたが Vim で開いているファイルに潜んでいるポケモン〜

Vim

see Pokemon-Emacs 〜あなたが Emacs で開いているファイルに潜んでいるポケモン〜 - Thanks Driven Life TL;DR 最近は Pokemon Go が流行っているようで、正式サービス開始を待ち望まれているようです。 『Pokemon GO』は、位置情報を活用することにより、…

Testinfra を使って見る

Ruby の Infrataster ではなく Testinfra。 Testinfra aims to be a Serverspec equivalent in python and is written as a plugin to the powerful Pytest test engine https://github.com/philpep/testinfra ってある通り Python 版 Serverspec。 テストラ…

Flask 0.11 の後方互換がなくなる機能

Flask 0.11 がリリースされた。 Flask 0.11 Released | The Pallets Projects # ちなみにどうでもいいけど、Flask のコードネームは酒の名前 後方互換がいくつかなくなってるので、まとめてみる。 # 漏れがあったら追記する予定 とりあえず自分のプロジェク…

Electron1.0 の起動時のエラー

遊びで作ってる Electron なアプリケーションの electron-prebuilt を 1.0.2 にあげて起動したら、エラーになった。 Cannot find module ‘app’Cannot find module 'app' - electron - Atom Discussion ということで、 import electron from 'electron'; impo…

Vim の起動速度2

Vim

前回 Vim の packadd を使って、起動速度改善をした。 その後 MacVim Kaoriya に Timer 機能が追加されたバージョンが出たので、Timer に置き換えた。.vimrc は以下みたいな感じで定義。 let s:plugins = [ \ 'vim-l9', \ 'vim-fuzzyfinder', \ 'vim-fuzzyfi…

Jedi.vim と Vim の起動速度

Vim

あるいは、いかにして Vim の起動速度を取り戻したか。 いつのころか Vim の起動速度が遅くなった。 正確に言うと、Python のファイルを起動する際に遅い。 とりあえず起動時に何が遅いかプロファイルを取ってみた。 954.157 614.589 614.589: sourcing /Use…