UBUNTUで思いつきをパッとメモするスクリプト
目次
今回のネタはとてつもなくピンポイントです。
対象は、 「パソコンを使っていて、思いついたことをホームポジションから手を動かすことなく記録したい人」 です。
すべてはEvernote+Posteverから始まった
パソコンを使う前に、Evernoteというアプリというかウェブサービスの話をするべきですね。
Evernoteは、どんな情報でも残せるノートとして登場しました。メモやテキスト原稿だけでなく画像ファイルやPDFもぜんぶ入れておけるアプリ。自分の中では一時、人間が持っている情報はここに入れとけばいいや、みたいな感じになりました。いつの間にか自分が人間代表みたいになっていますが。
スマホが普及してくると、「スマホからパッと思いついたことをEvernoteに送りたい」というニーズが出てくるわけです。人間は思いつきがあった時に必ずパソコンの前にいるわけではないですからね。いつの間にか自分が人間代表みたいになっていますが。
そんなニーズに答えたのが、Fasteverというアプリです。ぱっと立ち上げてさっと書き込んでダダっとEvernoteに送付できる。
ただFasteverは、送るたびにメモがバラバラになります。思いつきじゃなくて、ちょっと気がついたことというか、デイリーログ的なものを残すにはちょっと向かない。というか、その瞬間に感じたことを日記形式で残したという人類共通の願望には答えられないわけです。人類代表として発言しています。
Posteverというアプリが、人類の夢を叶えました。日付をタイトルにしたメモに、時間を見出しにしたメモをどんどん追記してくれるアプリです。
https:ただ、人間とは欲深いもので、いつのまにか「スマホだけじゃなくてパソコンからもメモを送りたい」というよこしまな気持ちが芽生えてくるのです。その気持ちに答えてくれた、聖人のような人が世の中に履いたのです。聖人のような人、と直喩にする意味はありませんね。聖人です。
そのアプリの名前はPostEN。まあPosteverの仕組みをパソコンから可能にしたやつですね。
いまはどこからからダウンロードできるのだろうか。Mac版は下の記事が参考になります。
EvernoteからNOTIONへ、さらにObsidianへ
ただいま自分が使っているコンピュータはWindowsでもMacでもなくUBUNTU。Evernoteのデスクトップアプリはない。上の仕組みを移植するスキルもありません。
そんなこんなしているうちに、Evernoteが同期する端末の数を減らしてきた。これはあかん。いままでは仕事用PCとプライベート用PCとスマホとタブレットで使ってきたのに。
そこでNOTIONにデータを引っ越し。こっちはちょっと癖があるけれど、Evernoteよりも自分にあっている気がします。
ところがそんなNOTIONにも弱点があって、情報をビルドアップしたり整理したりにはとても役立つのですが、思いつきを保存する場所だったり、つらつらと日々の思いを書き連ねる場所としてはしっくりこない。
そこで、タスクやプロジェクト的な情報の塊はNOTIONを使いつつ、日記やデイリーログ的な、断片的な情報をまとめておく場所としてObsidianを使い始めました。
Obsidianはデータの取扱が容易
Obsidianを一言でいうと、超イケてるMarkdownエディタ&オーガナイザーです。基本はマークダウンファイル。マークダウンファイルとは、HTMLがマークアップするのに対してマークダウン、つまり簡単な表記でテキストを構造化したり、リッチ化できる仕組みです。「つまり」という接続詞がぜんぜん使いこなせていないですね。
で、Obsidianのアドオンにデイリーノートというのがあります。日付をタイトルにしたファイルを自動で作ってくれる的なものです。
このデイリーノートに、PostENのように、グローバルショートカットからメモを追記できたらいいのではないか。
スクリプトをショートカットに割り当てる
その思いを実現したのがこちらのスクリプトです。いろいろなところから集めてきた要素を合体させています。
もし、デイリーノートがないときに実行すると、まず日付タイトルのファイルを作成し、そこにメモを記入する。
もしデイリーノートが存在しているなら、その末尾に日時を見出しにしたメモを追記する。そんな仕組みのスクリプトです。
#!/bin/sh \# 今日の日付を「yyyy-MM-dd\_hh:mm:ss」という書式で取得 todaydate=\`date +%F\_%T\` #もし日付名のファイルがなければ、作成する if \[ ! \-e /home/your-path/daily-note/\`date +%F\`.md \] then touch /home/your-path/daily-note/\`date +%F\`.md fi #文章を記入するダイアログを表示 textcontent=\`zenity --entry --title="JOT NOW!" --text="Jot your thoughts now" --width=600 \` #入力内容があった場合、「改行+見出し+入力内容」を追記する if \[ $? \-eq 0 \] then echo "\\n### "$todaydate"\\n\\n"$textcontent"\\n" \>> /home/your-path/daily-note/\`date +%F\`.md fi
自分は、上記のスクリプトを「JOT.SH」として保存し、ショートカットキーのコントロール+シフト+Jに割り当てています。
グローバルショートカットなので、どんな状態でもショートカットでテキスト入力の小窓が出現し、エンターで入力できるようになります。
「なにか思いついた」→「アプリを立ち上げる」→「メモの新規作成」→「思いついた内容と入力日時を記入」→「保存」という一連の流れを、ホームポジションから手を話すことなく実行可能です。