作業中、リモートシェルのコマンドの実行結果や、SQLの実行結果などをコピーしてどこかに貼っておきたくなる事はよくある。
そこまでなら標準のメモアプリなどでもよい。
ただし、それに対して、正規表現での置換などをしたくなる。そうなると標準のメモアプリでは物足りない。
また、その時その作業が済み、アプリを閉じる。「保存しますか」と聞かれるが、作業は終わっているのでいらないと思い閉じてしまう。
しかし翌日、漏れがあって追加作業をする際に、昨日の作業メモが見たい、となってしまう事がよくある。
保存しておこうにも、「ファイル名」と「保存先ディレクトリ」を聞かれる。私の作業は終わって、次の作業に取り掛かりたいのだ。そんなものどこでもよく、非常に煩わしい。メモ置き場に、今日の日付か何かで勝手に置いておけと思う。
世の中にはObsidianなどメモ用のアプリもある。私も試してみようとした。だがどうにも重厚で、指に合わない。
起動が遅いので開いておく必要があり、テキストをコピーし、「これを貼りたい」と思った時に、Obsidianのウィンドウを探すAlt-Tabで探す手間が煩わしい。これはWebベースのメモアプリも同様。
シェルスクリプトを書いた。
#!/bin/bash
DT=`date +%Y%m%d_%H%M%S`
mkdir -p ~/Documents/memo
code ~/Documents/memo/ ~/Documents/memo/${DT}.txt
こいつを起動すると、VSCodeが、~/Documents/memo を作業ディレクトリとし、そこに現在のタイムスタンプのファイル名の新規ファイルを開いてくれる。
これで、作業中にテキストをコピーしたら、
- Win+M でメモ用のVSCodeが開くので
- そこに Ctrl-V で貼り付け、
- Ctrl-S を押せばとりあえず保存
できる。
VSCodeのプロジェクトエクスプローラに過去のファイルも並ぶので、ワンクリックで調べられる。
あとは時々気が向いたときに、不要なものは消したり、有用なものを他に転記するなり、ファイル名を変えてわかりやすくしておくなりすればよい。
ただのファイルなので、どうとでもできる。