Skip to content
Go back

PCでもスマホでも Notionに思考の速度でメモする方法

Edit page

思考を書き溜めておきたい

何かの拍子にふと思ったことだったり、瞬間的な自分の思考を書き溜めておきたい

でもその度に専用のアプリを開いたり、メモ帳を開くのはめんどくさいし、何よりもともとやっている行動を妨げないようにメモをとりたい

最初はObsidianというメモアプリを使っていたので、Obsidian URIを使って実現していました

RaycastのScript Commandで、入力するとObsidianの特定のノートに1行追加される、という仕組みを作るというものです

その際はこの記事で紹介されているやり方を参考にしました

最初のうちはこれで満足していたのですが、後々スマホでも同じように素早くメモをとりたくなり、それがObsidianだと難しかったです

Obsidianでもできないことはないと思うのですが、無料のiCloud連携を使っているとVaultが大きくなるにつれ顕著に同期の時間が長くなり、かなり使い勝手が悪くなっていたので早々に諦め、Obsidian以外の方法を探し始めました

そうだ、Notion APIがあるじゃないか

ちょうどその頃Notion APIのドキュメントを眺めていたら自分のやりたいことができそうだったので作ってみたところ、かなり自分としては使い心地に満足いくものが出来上がりました

基本的な作りはObsidianを使う場合とほとんど同じで、スマホからはiOSのショートカットを使ってNotion APIを叩くようにしています

これによって

PC

Mobile

というUXが実現できました

実装方法の紹介

前提として僕がやりたかったことは以下で、それを最低限実現できるだけの方法になっています

Obsidianだとデイリーノートを使っている人が多いと思いますが、今回は日によってメモを追加するページを変える、という要件には対応していません

それでは本題に戻って、おおまかな流れは以下です

  1. Notion APIを叩くための設定
  2. (PC) RaycastのScript Commandを作る
  3. (スマホ) ショートカットを作る

1. Notion APIを叩くための設定

まずはNotionでPrivate Integrationを作り、APIキーを取得しましょう

これについてはいろんなところでやり方が紹介されているので、詳細は割愛します

Notionではページ側でも、そのIntegrationからのアクセスを許可する必要があります

そのためメモを追加するページを作ったら、設定メニュー → Connections → Add Connection から上記で作ったIntegrationを追加します

また、そのページのURLからページIDを取得しておきましょう

Title-xxx のようになっている、xxxの部分がページIDです

Notion側の設定は以上です

2. (PC) RaycastのScript Commandを作る

まずは以下の内容でbashスクリプトを作り、1の手順で取得して、ページID、APIキーをそれぞれ、page_id, api_keyにセットします

#!/bin/bash

# Required parameters:
# @raycast.schemaVersion 1
# @raycast.title memo
# @raycast.mode silent

# Optional parameters:
# @raycast.icon 🤖
# @raycast.argument1 { "type": "text", "placeholder": "Placeholder" }

# Documentation:
# @raycast.author zakinomiya

page_id="xxx"
api_key="xxx"

current_time=$(date +"%H:%M")
memo=$1
curl -X PATCH "https://api.notion.com/v1/blocks/${page_id}/children" \
  -H "Authorization: Bearer ${api_key}`" \
  -H "Content-Type: application/json" \
  -H "Notion-Version: 2022-06-28" \
  --data "{
    \"children\": [
      {
        \"object\": \"block\",
        \"type\": \"bulleted_list_item\",
        \"bulleted_list_item\": {
          \"rich_text\": [
            {
              \"type\": \"text\",
          ]
        }
      }
    ]
  }"
echo ""

RaycastのScript Commandsという設定グループに、上記のスクリプトが置かれているディレクトリを追加すると自動でコマンドが追加されるはずです

上記はコマンド名がmemoとなっているので、Raycastを開いてmemoと入力するとロボットのアイコンとともにコマンドが表示されると思います

このコマンドを実行すると、入力した文字が上記で作ったページに追加されているのが確認できると思います

PCはこれだけです

あとはコマンドに対して自分が好きなショートカットを割り当てれば一発でコマンドを起動できるようになります

👏👏👏

3. (スマホ) ショートカットを作る

もともとMemoToNotionというショートカットがあったので、それを自分用にアレンジして使っています

以下が今回のショートカットへのリンクです

ここでも先ほどのAPIキーとページIDをそれぞれ置き換えます

https://www.icloud.com/shortcuts/719507166d5d450cb61be9715c474d85

ショートカットを起動すると、入力欄が表示されるので入力し完了を押すとNotionに1行追加されるのが確認できると思います

これでスマホでも一瞬でNotionにメモが保存できるようになりました!

あとはこのショートカットを起動するトリガーを自分好みに設定してみてください

最初は背面のダブルタップにしていたのですが、ケースのせいか感度が悪かったので今はAssistiveTouchにしています

👏👏👏

まとめ

これでPCからでもスマホからでも思考の速度でメモが取れるようになりました

この仕組みを作ってから、スマホでKindleを読んでいるときに気に入った文章をすぐに保存したり、読んでるWebページをすぐに保存したり、感じたことや考えたことをすぐにメモしたりできているのですごく満足しています

みなさんもぜひ


Edit page
Share this post on:

Previous Post
Arcの代わりを探していたらZenがほぼArcだった