TimesBlog
TimesBlog
null256code

null256code

私はどこにでもいるエンジニアです。 このページは自作ブログです。

タグ検索

環境構築 (3)
好き (1)
技術 (1)
リーディングリストをNotionで管理している の続き
2024/10/13

ちなみにこのリーディングリストを作ろうとしたモチベーションだが、以下のような感じ。

  • プライベートでかなり忙しい時期で、技術的な学びの時間がなかなか取れない
  • せめてインプットだけでも継続的にしたほうが良さそうと思った
  • どれほど読めたのか分かりやすくすると、まだやる気が出るかもと思った

このリーディングリストを作っても読めないときは全然読めてないのだけれど、作って良かったかな~とは思っている。あと「とりあえず軽そうな記事でも良いから一つ読むか」というような考え方で消化しているときがあり、これは事前には想像してなかったメリットだった。(全く記事を読まないより、軽い記事でも読んだほうが良い)

Notion

リーディングリストをNotionで管理している

タイトル通り、ちょっと前からリーディングリストをNotionで管理してる。
https://null256.notion.site/Reading-Stats-22287e4a0c9e42108a12db4ef7edb47c

  • Webクリッパーで読みたい記事をデータベースに貯めておく
  • 「読んだら押すボタン」を作っておき、押すと読んだ時間を書き込むようにしておく
  • 読んだ記事の日次や週次レポートをデータベースのスケジュール作成機能で作る

こんな感じ。上のNotionで作ったデータベースは以下のような感じ。

データベース

用途

Reading List

  • Webクリッパーの内容を溜め込む
  • 追加/読了時間を管理する

User

  • Reading Listとリレーションを貼っている
  • 数式でUserから全てのReading Listを参照するために作成

Daily Report / Weekly Report

  • 数式で追加/読了を見れるようにしている

基本的にはWebクリッパーで追加して、読んだらNotionでボタン押すだけでOKの形にしている。
Reading List ↔ User のリレーションを貼るのだけ手動でやる必要がある。
Notionに課金してたら、ページ作成時に設定するオートメーションを作ればOKのハズ。

Notion

Zaimのアプリケーション名だが、先頭に数字を使うことができないようだ。
アプリケーション作成時に先頭に数字を入力した場合は以下のようなエラー表示になった。

見た限り上記の制約は書かれていなかったのと、エラー表示も不適切なため最初は何故アプリケーションが作成できないのか分からず時間をかなり使ってしまった…。

Zaim

Zaim APIの認証に関してドキュメントには以下のように書いてあり、 OAuth 1.0a 使ってねという旨が書いてあった。

Check the format of OAuth 1.0a in this page: http://oauth.net/core/1.0a/

Zaim OAuth format is nearly the same with Twitter API: https://dev.twitter.com/docs/auth/oauth

Zaim API requires that all OAuth requests be signed using the HMAC-SHA1 algorithm.

(内容が当時から更新されていない感は少しある)

どう実装するかと思ったが、ScribeJavaを用いると比較的簡単に実装できた。
ScribeJavaのサンプルにある .build(TwitterApi.instance()); のようなサービス別のクラスは使えないので、以下のように OAuth10aService を Overrideして使った。

@Configuration
class ZaimApiClientConfig(
    @Value("\${consumer_key}") private val consumerKey: String,
    @Value("\${consumer_secret}") private val consumerSecret: String,
) {
    companion object {
        const val API_BASE_URL = "https://api.zaim.net/v2"
    }

    @Bean
    fun zaimOAUthClient(): OAuth10aService = ServiceBuilder(consumerKey).apiSecret(consumerSecret)
        .build(object : DefaultApi10a() {
            override fun getRequestTokenEndpoint() = "${API_BASE_URL}/auth/request"
            override fun getAccessTokenEndpoint() = "${API_BASE_URL}/auth/access"
            override fun getAuthorizationBaseUrl() = "https://auth.zaim.net/users/auth"
        })
}
Zaim
ScribeJava

ZaimのAPIで遊んだ時のメモ

結構前に家計簿アプリのデータで遊べないかなと思い、ZaimのAPIを触ったことがあった。
ある程度触ったあとにクレジットカードの履歴などが取得できないことに気づき、問い合わせたところ 金融機関との自動連携で取得したデータは法人向けの API のみ開放しております。 とのことだったので当初の目的は果たせなかったのだが、何点か備忘用のメモを残しておく。(当時のtimesから引っ張ってきた)

ちなみに「課金したら金融機関のデータも取得できる」という記事も調べたら出るが、問い合わせた結果上の回答だったということを改めて書いておく。

Zaim

KALDIのカフェオレベース

KALDIのカフェオレベース、最近飲み始めたけど美味しくてすき
https://www.kaldi.co.jp/ec/pro/disp/1/4515996915284

好き
コーヒー

ここから先はWindowsでの話。

設定としては上記で終わりのはずだが、設定すると No such file or directory のエラーが出るようになってrebaseできなくなった。(rebase時にCursorが呼び出されない)

結論としてはCursorのバグっぽく、以下のIssueを参考にcursorファイルを修正すると呼び出されるようになった。
https://github.com/getcursor/cursor/issues/1121

どこかのアプデで直ってくれると良いな…。

rebaseするときに指定のエディタを開くようにする

最近 Cursor を使い始めた。
CursorのGit Graphでコミットをスカッシュしたいなと思ってrebaseしようとすると、VSCodeの方が開いてしまった。

原因はシンプルな話で Git とのテキストエディタの関連付け の通り、git configで設定してあげればよい。
また、rebaseの時のみのsequence.editorという設定 があるようなのでそちらを設定してあげることにした。
結論として、今回は以下のように設定した。

git config --global sequence.editor "cursor --wait"

Macのセットアップ時にIntelliJに設定すること

自分はWindowsのEclipse(とか)を長く使っていたりした関係で、IntelliJのデフォのキーマップにあまり慣れていない。
セットアップ時によくキーマップを設定するので、備忘用に何を変えたか残しておく。

  • 「Visual Studio (macOS)」に設定する
  • コード > コード補完 > 基本:⌘ + Space
  • コード > コード補完 > 型一致:⇧ + ⌘ + Space
  • その他 > ブックマーク > プロジェクトビューでファイル選択:⌘ + ¥
  • 移動 > 戻る:⌥ + ←
  • 移動 > 次へ:⌥ + →
  • リファクタリング > リファクタリング…:⇧ + ⌥ + R
  • メインメニュー > 移動 > 名前によるジャンプアクション > ファイル…:⇧ + ⌘ + R
  • コード > コードフォーマットアクション > インポートの最適化:⇧ + ⌥ + O
  • メインメニュー > コード > コードフォーマットアクション > コードの整形:⇧ + ⌥ + F
  • メインメニュー > コード >コメントアクション > 行コメント:⌘ + /
環境構築
IntelliJ

GitHubのリポジトリ

  • Next.js
  • MUI(Joy UI)
  • MicroCMS

上記などを使って実装した。
あとPrettierを Installのページ を見て入れたりした。

技術
このブログのこと