Vimでscrapboxのようにメモを取りたいので、RustでLSPサーバを書いている

vimscrapboxっぽいフォーマットでメモをとりたくて、以前pythonでlsp serverを実装していた:

ompugao.hatenablog.com

ただ、やはりpythonで実装するとパースが遅すぎてだんだん使い辛くなっていた。 また、pythonのランタイムが必要というのも(特にwindowsでインストールする際に)イマイチだった。

そこで今はrustで少しずつ実装し直している:

github.com

デモ

rustのstrがutf-8なのでほとんどなにも考えなくていいのが非常に楽。 crateもたくさんあるし速度も速いし言うことなし。rust最高!

今回の再実装にあたり、Todo管理するための記法を取り入れた。 すでに普段使いしていて、シンプルながら結構いい感じになっている。

task aggregation in a workspace
タスク管理

Live previewがまだなかったり、markdownへのエクスポートの作りが甘かったりとまだまだ作りこめていないけれど、少しずつ進めていくつもり。

ただ、チャットツールやAIへの入力のデファクトスタンダードmarkdownとなっている現状、どこまで自分を貫けるかのチキンレースとなっており、悩んでないと言えば嘘になる…

git-credential-libsecretがkeyringに登録してくれなくなった

git-credential-libsecretがkeyringに登録してくれなくなった。 Authenticaiton Required: An application wants access to the keyring "Default Keyring", but it is locked. というポップアップが毎回出てくる。

ompugao.hatenablog.com

~/.local/share/keyringsディレクトリが消えていたせいっぽい。

mkdir -p ~/.local/share/keyrings

で解決。

博士論文を図書館提出した

ディフェンスも通ったので、これにて博士課程終了。 やっと一段落した。長くて短かった。 8月の卒業式に出席するには5月までに終えないといけなかったらしく間に合わなかった。来年都合が合えば卒業式に出席したい。本当は今年同じタイミングで博士号をとったラボ仲間と一緒に出席したかったけど仕方ない。

結果としてはICRA, IROS, ICRAの3通でフィニッシュ。 自信作はIROSの論文だけだけど、一通でも自信があるものが生み出せたのはよかった。 博士課程の中で、理論に弱いことがつくづく身に沁みてわかって険しい。直感の働く幾何的なところは得意だけど、式をこねくり回さないといけないとなると手が止まる。苦手というのもあるが、そもそも訓練を怠ってきたという自覚があるので、学部レベルの式変形でも手を動かすようにしないといけない。精進。

今思えばもっと学べたし研究できたよなぁと後悔する時期がたくさんある。 今後に生かす。