あんパン

こしあん派

別ブランチの特定のファイルを直接開くコマンド

欲しいときがありますよね。 masawada.hatenablog.jp 方法は4年前に書いてたんですが、最近欲しくなってちまちま打つのがだるくなってきたのでgitのサブコマンドにしました。Vimを使っているので直接Vimに流し込んでいます。pecoが2回起動するので、ブランチ…

リポジトリ内の特定の制御文字を削除するワンライナー

$ git grep -I --name-only $'\x08' | xargs -I{} sed -i -e "s/\x08//g" {} リポジトリ内にbackspace(^H)のような制御文字が含まれてしまっていることに気付いたとき、消すのに便利です。 -I でバイナリを無視する $'\x' で特定のASCIIコードの文字を検索す…

Arch LiunxのyayでAURからgconfをアップグレードする際にconfigure: error: XML::Parser perl module is required for intltool

自分向けメモ。 autoreconfで以下のようなエラーが出る場合の対処方法。 checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool perl-xml-parserを入れてしまう。systemのPerlで利用できるので、plenvを利用して…

自分のはてなブログで1年以上前の記事に警告を出すようにした

ふと自分のブログのアクセスログを見ていたところ、1年以上前の記事への参照が意外と多かった。過去記事全ての情報の鮮度に責任は負えないなと思ったので、1年以上前の記事には警告を出すようにした。例えば以下の記事には警告が出る。 masawada.hatenablog.…

gitで自分が関わったことがあるファイルだけを一覧するワンライナー

$ git log --name-status --author="$(git config --get user.name)" | grep -E '^(A|M|D)\b' | awk '{ print $2 }' | sort | uniq git logの最後にディレクトリ名を入れると、そのディレクトリ以下のファイル一覧を取得することができます。昔書き捨てたス…

dunstとsystemdのtimerで端末のバッテリが減ったら通知を出す

昨晩夕飯食べずに寝落ちしてしまい、PCの電源も刺さずにつけっぱなしにしてしまった。それを忘れて朝PCを触っていたところ電源が落ちた。以前からバッテリが減っていることに気づけず困っていたので、バッテリが減っていて充電もしていなかった場合に通知を…

(Arch) LinuxでGitHub CLIを利用する

github.com READMEにある通り $ yay -S github-cli でインストールできる。yay はGoで書かれているAURヘルパで、要はナウい yaourt 。他のAURヘルパを利用しても良い。 go-pie が依存になっており、 go がインストールされているとコンフリクトする可能性が…

git addするときにerror: 's/' does not have a commit checked outというエラーが出て困ったので原因を追う

小ネタです。 $ git add -A error: 's/' does not have a commit checked out fatal: adding files failed addできない。困った。 何が起きているのか $ ls README.md s/ $ ls -la s total 12 drwxr-xr-x 3 masawada masawada 4096 Jan 7 16:46 ./ drwxr-xr-…

年始にLinuxデスクトップを使い始めて1年が経とうとしている

これは はてなエンジニア Advent Calendar 2019 2日目の記事です。 こんにちは、 id:masawada です。2ヶ月前まではブログチームのエンジニアでしたが、最近はマンガビューアを開発するチームに在籍しています。 弊社では開発に利用する端末を決められた上限…

Vim + aleで保存時にperltidyを実行してコードを整形する

aleはこちら。非同期でLinterを実行したり、autofixしたりといった作業をやってくれるいつものやつ。 github.com $ cpanm Perl::Tidy して Perl::Tidy をインストールしつつ、aleが入っている状態で .vimrc に let g:ale_fixers = { 'perl': ['perltidy'] } …

近況

これまでアルバイト期間含めて4年程度はてなブログの開発に携わっていましたが、今月の頭にマンガのビューアなどを作る部署へ転属になりました。 肩書きとしてはWebアプリケーションエンジニアなので普段はPerlとTypeScriptを書きつつ、ここ1年くらいはイン…

freetypeのバージョンを2.10.0に上げたらfc-listにSijiが出てこなくなったので直す

polybarのアイコンフォントにSijiを使っているんだけど、突然壊れた。 github.com From lucy/tewi-font#35 FreeType now uses the `defaultChar' property of PCF fonts to set the glyph for the undefined character at glyph index 0 (as FreeType alread…

株式会社はてなに入社しました

株式会社はてなに入社しました 新卒入社から4年目です。引き続きブログの開発を担当しております。今後ともよろしくお願いいたします。 株式会社はてなに入社しました - hitode909の日記

ghqの配下に良い感じにリポジトリを新規作成する

どんどん小ネタ放出していくぞ ghqが便利なんだけど、新しいリポジトリをローカルに作るときにいちいち適当な既存のリポジトリに入ってからcd ..してmkdirして…とやるのがだるかったので、そのあたりを1コマンドでやってくれるgit subcommandを作った。適当…

最近のタスク管理とか

昔からタスク管理ツールを使うのが苦手。WunderlistもTodoistもGoogle Keepもいろいろと試したんだけど、結局使うのを諦めた。ここ2年くらいはMarkdownでタスクリストを書くようにしている。その心は: キーボードだけで操作が全て完結する 複数項目を一気に…

Scrapbox Drinkup Self-made Keyboard Edition参加レポート

こんにちは、id:masawadaといいます。普段は、はてなブログの開発をして生活しているエンジニアです。自作キーボードはレツプリ祭りのころにウォッチしはじめましたが、まだLet's Splitしか作ったことがない初心者です。 いつも便利につかわせていただいてい…

はてなブログおみくじ2018

はてなブログおみくじ2014

AWS IoT 1-ClickでSlackに通知を飛ばす

この記事は、 はてなエンジニア Advent Calendar 2018 10日目の記事です。 昨日は id:papix さんの『「手順書」のススメ』でした。 こんにちは、 id:masawada です。普段は、はてなブログの開発(フロントエンド・サーバサイド)に携わっています。今日は社内でA…

GitHubにcurlで公開鍵を登録する

developer.github.com Adds a public SSH key to the authenticated user's GitHub account. Requires that you are authenticated via Basic Auth, or OAuth with at least write:public_key scope. とのことで、BASIC認証でAPIを叩くことができる。知らな…

Minami Aoyama Night #6で「よりよいレビュー環境を求めて」という発表をしました

先週金曜日に開催されたMinami Aoyama Night #6で「よりよいレビュー環境を求めて」という発表をしたので資料を公開します。以下、発表内容を文字に書き起こしたのでよろしければお読みください。 tl;dr Disclaimer なぜコードレビューをするのか はてなブロ…

Minami Aoyama Night #6 に登壇します

6月29日(金)のMinami Aoyama Night #6に登壇します。テーマは「アンチパターン(失敗談)」とのことで、「よりよいレビュー環境を求めて」というタイトルで発表します。 みなさんはレビュー周りでめちゃくちゃになったことはありませんか? 僕はあります。めち…

Dentoo.LT #20に登壇します

母校、電気通信大学の公認サークルMMAが主催するLT大会、Dentoo.LT #20に登壇します。第1回を始めてから20回。まさか主催が幾度も引き継がれてこんなに続くことになるとは… 題は未定だけど、最近話題のPWAについて話す予定です。自分のトーク以外でも様々な…

サポーターズさんの勉強会で、はてなブログの開発フローなどの話をします(再演)

来る4月4日、サポーターズさん@東京の勉強会にご招待いただき、『はてなブログの実例で学ぶ「はてな流」大規模Webサービス開発の勘所』と題して、はてなブログで実践している開発・運用Tipsなどの話をします。 supporterzcolab.com 昨年12月20日に開催した同…

やっていく技術テーマを探す: masawadaの場合

はこべさんのエントリを読んで、自分も今後時間をかけてやっていく技術テーマを探そうと思い立った。まだ本職でWebエンジニアを始めてから2年弱くらいだけれど、自分なりの強みを出せる領域がないのではと危機感を覚え始めたところだった。 アウトラインはは…

GitHubのPull Requestでコードを開閉するやつ

$$('.js-details-target').forEach((e) => e.click()) 最近便利に使っているのでChrome拡張つくってボタンみたいなの置いても良いかもしれない。GitHub Enterpriseでも使えるヨ

yarn-outdated-formatter@2.0.0をリリースしました

yarn outdated --jsonを整形するツールの新しいバージョンをリリースしました。 yarn@1.2.1からyarn outdated --jsonの出力形式が変わり、その対応を入れたバージョンです。(id:wadackelさんにPull Requestいただきました。ありがとうございます!) このリリ…

spec/factories以下に正しいfactoryの定義が存在するのにFactory not registered

結論: springのせい、らしい spec/spec_helper.rbで Rspec.configure do |config| config.before(:all) do FactoryBot.reload end ... end したら直った。もっと良い直し方あるのかなこれ。 spring起因の問題にぶち当たること多くて、世の中のRails使ってい…

docker-compose run --rm app bundle exec rails cがうごかなかったやつ

これ。 masawada.hatenadiary.com Dockerfileで FROM ruby:2.4.2 ... ENV BUNDLE_PATH /bundle としていたけど、ruby:2.4.2の方はこういう状態で、$BUNDLE_BINがあらぬ方向を向いている状態になってたっぽい?なぜかruby:2.4.1だとうまく行ってたんだけどナ…

サポーターズさんの勉強会で、はてなブログの開発フローなどの話をします

来る12月20日、サポーターズさん@東京の勉強会にご招待いただき、『はてなブログの実例で学ぶ「はてな流」大規模Webサービス開発の勘所』と題して、はてなブログで実践している開発・運用Tipsなどの話をします。 supporterzcolab.com 完全に煽ったタイトルを…

Google Homeで血圧を記録できるようにした

Google Homeを購入したのは日記に書いたとおり。 ぼくは高血圧ぎみで薬を飲んでいて最近は毎日血圧を測っているのだけれど、億劫で記録はしていなかった。いちいちノートにつけるのは面倒だしスマートフォンを開いてメモアプリを立ち上げるのも挫折した。 Go…