2021年に使うSnipMate
今までいわゆるスニペット系のvimプラグインは使わずに来たのだが、Rustを書くようになって
Default::default()とタイプするのが面倒collect::<Vec<_>>とタイプするのが面倒use std::collection::HashMap;とタイプするのが面倒
…のように、スニペットの必要性が分かるようになった。
どのようなプラグインがあるかは以下がとても参考になった。
今までいわゆるスニペット系のvimプラグインは使わずに来たのだが、Rustを書くようになって
Default::default()とタイプするのが面倒collect::<Vec<_>>とタイプするのが面倒use std::collection::HashMap;とタイプするのが面倒…のように、スニペットの必要性が分かるようになった。
どのようなプラグインがあるかは以下がとても参考になった。
ALETH42を組み立てた。キー数が少ないのでキーマップ調整に手間取ったけど、まあまあいい感じになってきた。今は自宅で仕事するときに使っている。
Keyboard: ALETH42
— yhara (Yutaka HARA) (@yhara) April 18, 2021
Switch: Kailh speed silver (+ rose pink)
Keycap: MDA Pineapple#KEEB_PD #KEEB_PD_R40 pic.twitter.com/Hm31kyejT6
↑はじめての#KEEB_PD。
もともとは分割キーボードにしか興味がなかったのだが、nillpoさんのKUMOキーボード(この3枚目)を見てrow-staggeredな一体型のよさに目覚めてしまったのだ。とはいえKUMOはもう手に入らないので諦めていたところ、タイミングよくALETH42が登場して、作ってみることにした。
自作のRubyスクリプトに簡単なGUIを付けたくて少し調査してみた。
shoes3, shoes4, fxruby, tkあたりを少し見てみたが、2021年現在ではgtk3 gemを使うのが一番楽そう。なんといってもインストールが簡単。
$ gem install gtk3
Macの「サービス」からRubyスクリプトを起動する手順。
まず以下を参考に、Automator.appを起動し、「シェルスクリプトを実行」を登録する。
入力の引き渡し方法は「引数として」を選択。
シェルスクリプト部分を以下のように変更。
qmkの環境構築をしてたら、tmuxが起動しなくなった。
/Users/yhara % tmux
[exited]
^[[?62;4c^[[ITERM2 3.3.12n%
brew upgradeを^Cで止めたりしたせいか…?と思ったが、ps aux | grep tmux してみたら起動中のtmuxが一つあった。
killall tmux で当該プロセスを止めたら無事起動できるようになった。(参考)
Rust + LLVMで自作プログラミング言語Shiikaを作っているのだが、開発中に遭遇するエラーには以下の種類がある。
一番面倒なのはもちろん最後のケースだが、これもさらにいくつかの種類に分けられる。
tl;dr This worked for me (iTerm2 on Mac)
$ cargo --color always build | less -R 2>&1
When I use lv (or bat) to read the output of cargo build, the output is not colored, even with --color always (i.e. $ cargo --color always build |& lv).
Shiikaのctx周りをリファクタリングしたので、何をやったかメモしておく。
リファクタリングしたのはHirMakerContextという構造体である。こいつはASTからHIR(高レベル中間表現)を作る際に使うもので、もとはこういう定義だった。