Gitのworking dirのrootを取得する

TL;DR: git rev-parse --show-toplevel

Cのプロジェクトで、language serverのために compile_commands.json を作るのだが、 ライブラリーのレポジトリだったりすると、makeするのはrootディレクトリではなくて、examples以下だったりする。

そこでmakeするけど、 compile_commands.json はgitのrootにおきたい、みたいな時に

bear -a -o ../../compile_commands.json make

みたいにしてたんだけど、ほかのプロジェクトでこの履歴をそのまま使うとこまることもある。 gitのrootをコマンドラインで取得できれば、これを共通のコマンドにできそう。

というわけで調べたら git rev-parse --show-toplevel で出来た。

さっきのコマンドは

bear -a -o (git rev-parse --show-toplevel)/compile_commands.json make

みたいにすればだいたいどこでもつかえるものに。[1]

Google Photosの画像をブログにはりつけたい

ブログに画像を貼り付ける方法に良い方法がなくてこまっている。

写真などは基本的にGoogle PhotosにすべてUPしているので、そこから貼り付けられるのがベストだが、 Goole Photosで普通にShareしようとしてもURLしか発行されないし…、 また、そのURLを開くと位置情報などのプライベートな情報も見れてしまってあまりよろしくない。

ググると、Share URLから画像のURLだけを取ってきて使っている人が結構いる…(そういうツールやサービスもあるようだ)

が、それってGoogle Photos的にオッケーなのか? という疑問があるし、 そもそもその画像URLは永続的に使える保証もなさそうだし微妙な感じ。

Flickrはそのへんよくできてたんだよなぁ。位置情報はFamily & Friendsのみに共有。 みたいに細かくプライバシーの設定ができたし。

とにかくなにか良い方法をさがさないと画像が貼れないぞ! 困ったな〜

口がさびしいからという理由でビールを飲むのをやめる

夜仕事しながらもビールを飲んでいたりして、でもよくよく考えると、そういう時ってあまりあじわって飲んでいない。 たんじゅんに口がさびしいからという理由で飲んでいる気がする。

昼間はそれがコーヒーなわけだが、夜にカフェインを取りたくはないので、そうなるととりあえずビール…となってしまうわけだな(笑)

そこで代替を考えてみる。

まず最初にくるのはやっぱりカフェイン抜きのコーヒー。最近の水で抽出したものはなかなかおいしくて、 味だけならぜんぜん代替になる。が、コスパがわるすぎる。普通のコーヒーよりだいぶ値が張る。

つぎはお茶とか? でもこれは物によってはカフェイン入ってそうだし、昆布茶とか好きだけどこれは塩分とりすぎになりそう。 ただ種類がいろいろあるところなので、調べたらおもしろそう。ここは今後要調査ということにしておく。

他にいま家にあるものでよさそうなのをさがしてたどりついたのが、レモン水。 ホットで飲むとレモネードみたいになってうまい。お湯わかして、そこにレモン汁を注入するだけの簡単さも良い。

サイトをFirebaseに移行した

そろそろ自分のサイトもhttpsにしないとな〜と思いつつも、証明書の管理とか自分でやりたくないので、いろいろ考えた結果、 firebaseでホスティングすることにした。

いろいろな理由:

  1. 動的生成をやめたい
  2. React+TypeScriptでサイトを作りたい

のため、ついにblosxomと決別することとなった。

2に関しては仕事で慣れ親しんだ環境だからだ。ただ、Webの世界で使ったことはないので[1]、 良い感じにめんどくさいことを隠蔽してくれそうな Next.js を使ってみた。

結果、特にハマることもなくサイト作れたので、なかなか良いフレームワークだと思う。

とはいえ、もろもろ突貫で移行したので、いろいろ中途半端なところが残っているが、気長にちょこちょこ対応していく所存だ。

エディタのフォントを変えた

Emacsのフォントは長くRictyを使っていたのだが、なんとなく変えたくなり、検索してみたところ、 Source Han Code JP というフォントが良さそうだったので、それにしてみた。

英字部分の Source Code Pro はなかなか見易くて気にいったのだけど、 英字と日本語の幅のレートがが 1:2 ではなく、 1:1.5 になっていて、org-modeのテーブルが崩れてしまうのが残念。

Emacsの日本語フォントをうまく設定すれば 1:2 にすることはできそうだけど、調べるのがめんどうでやりたくない…。

Google Driveを使う

howmメモ、orgファイル、skkの個人辞書などをいままではDropboxにいれてsyncしていたが、Google Driveに変更した。

syncツールには grive2 というのを採用。Arch Linuxだとaurにあるので、

yay -S grive-git

でokだった。[1]

全部syncしてほしくはないので ~/drive/.griveignore として以下のようなファイルを作る:

*
!howm
!org
!skk

それを作ったあとで、

cd ~/drive
grive -a

とすると、OAuth認証のプロセスになって、それが通ると初回同期が走る。認証だけじゃなくて、ファイルもおとしてきてしまうので、ignoreファイルを最初に作っておかないと悲しいことになる(なった…w)

あとはこれを自動で動かすために、

systemctl --user enable grive-timer@drive.timer
systemctl --user start grive-timer@drive.timer
systemctl --user enable grive-changes@drive.service
systemctl --user start grive-changes@drive.service

をやっておけば勝手に同期してくれるっぽい。[2]

ブログというか日記というか

あけましておめでとうございます。

すっかりサイトを更新しないままはや数年…。

ちゃんとした記事を公開しようとすると、ドラフトの山ができるということがわかったので、 ちゃんとしてない記事を公開する場所をあらたにブログとして新設した。

今年は下の子もだいぶ大きくなって手がかからなくなってきたので、ようやくいろんな意味で社会復帰できそうだなぁという感じ。