Halcyon Days

海のように穏やかに生きたい

資格試験で大量のフラッシュカードを作るためにObsidian_to_Ankiの使い方をまとめた

資格試験でまたAnkiを使い出したので、Obsidian_to_Ankiの使い方をまとめました。

自分用にまとめていますが、試験対策などでこれから使いたい人も参考になると思います。

公式ドキュメントやPADAoneさんの記事などを参考にさせていただきました。

とても便利なプラグイン、そして良質な記事をありがとうございました。

 

 

Obsidian_to_Ankiとは?

ObsidianのファイルからAnkiフラッシュカードを作成できるプラグイン。神。

ざっくり初期設定

詳しい初期設定の方法はGithubのREADMEを参照してください。

Pythonでやりたいんじゃ」って人もREADMEを見てください。

https://github.com/ObsidianToAnki/Obsidian_to_Anki

  1. Ankiをインストールしていない人はインストールとセットアップを行う(インストール済みの人は2へ)
  2. AnkiConnectのインストール(インストール済みの人は3へ)
  3. Obsidianのインストール(インストール済みの人は4へ)
  4. コミュニティプラグインで「Obisidian_to_Anki」をインストール
  5. Ankiを開き、ツール > アドオン > AnkiConnect > 設定を開く
  6. テキストボックスに下記のコードを貼り付ける
  7. Ankiを再起動して設定を反映させる
  8. Ankiバックグラウンドで起動しつつ、ファイルを作成してプラグインをロードするとフラッシュカードが作成される

{
    "apiKey": null,
    "apiLogPath": null,
    "webBindAddress": "127.0.0.1",
    "webBindPort": 8765,
    "webCorsOrigin": "<http://localhost>",
    "webCorsOriginList": [
        "<http://localhost>",
        "app://obsidian.md"
    ]
}

All users
1.Start up Anki, and navigate to your desired profile.
2.Ensure that you've installed AnkiConnect. **Obsidian plugin users
3.Have Obsidian downloaded
4.Search the 'Community plugins' list for this plugin
5.Install the plugin.
6.In Anki, navigate to Tools->Addons->AnkiConnect->Config, and change it to look like this:

{
"apiKey": null,
"apiLogPath": null,
"webBindAddress": "127.0.0.1",
"webBindPort": 8765,
"webCorsOrigin": "<http://localhost>",
"webCorsOriginList": [
"<http://localhost>",
"app://obsidian.md"
]
}
7.Restart Anki to apply the above changes
8.With Anki running in the background, load the plugin. This will generate the plugin settings.

Obsidian_to_Anki README

PADAoneさんのZenn記事がわかりやすかったです。

Obsidian_to_Ankiの使い方 : ZettelkastenとSRSを組み合わせる

使い方

Obsidian_to_Ankiにはいくつかの文法がありますが、今回は最も基本の文法を紹介します。

基本文法通りにファイルを作成して、コマンドパレットでObsidian_to_Anki: Scan Valut を実行、またはAnkiアイコンをクリックすると自動でフラッシュカードにしてくれます。

基本文法

START / END

とりあえずこの文法通りに書いておけばカードは作れます。

START
// カードタイプを書く
// カードの内容を書く
Tags: // タグを書く
END

具体例をあげます。

表面が「Cat」裏面が「ねこ」というフラッシュカードを作成したい場合は下記のようになります。

START
基本
Front: Cat
Back: ねこ
Tags: 英単語
END

簡単ですね。

Front に書かれた部分が表面に、 Back に書かれた部分が裏面になります。

Front を省略した書き方も可能です。

START
基本
Cat
Back: ねこ
Tags: 英単語
END

複数行もできます。

START
基本
次の文章を和訳しなさい。
My cat is very pretty.
Back: 私のねこはとても可愛い。
Tags: 和訳
END

インライン

インラインでAnki化もできます。

その場合はAnki化したいものを STARTIENDI で囲みます。

STARTI [カードタイプ] {カードの内容} ENDI

実際に作成すると下記のようになります。

STARTI [基本] 1 + 1 = Back: 2 ENDI

ノートタイプの指定も忘れずにしましょう。

タグ

タグはTagsに入力します。

START
基本
Front: Dog
Back: イッヌ
Tags: 英単語 // 英単語のタグができる
END

Tagsはなくても問題ありません。

START
基本
Dog
Back: イッヌ
END

複数個のTagを追加することもできます。

START
基本
次の文章を和訳しなさい。
My cat is very pretty.
Back: 私のねこはとても可愛い。
Tags: 和訳 英語 レベル1
END

ノート作成時の注意

カードのタイプは必ず設定

カードのタイプを設定しないとAnki化されないので注意してください。

例えば、

START
基本
Front: ミッフィーの作者は?
Back: ディック・ブルーナ
Tags: Art Design
END

はAnki化されます。

しかし、下記のようにカードのタイプを設定していないとAnki化されません。

START
Front: ミッフィーの本名は?
Back: ナインチェ・プラウス
Tags: Art Design
END

どのタイプでフラッシュカードを作成すればいいかわからないからですね。

IDは消さないで!

Anki化されたものはブロックに一意のIDが挿入されます。

START
基本
Front: Cat
Back: ねこ
Tags: 英単語
<!--ID: 123456789-->
END

削除やアップデート時に必要なのでIDは消さないように!

カードの削除

ファイルの内容を削除してもカードは削除されません。

カードの削除をするには削除対象カードのIDを指定してプラグインを実行しなければなりません。

削除対象カードのIDを指定するには下記のようにします。

DELETE
ID: 123456789

このように指定した後、プラグインを実行します。

削除したいカードが複数個ある場合は、 DELETE ブロックを削除したいカードの分だけ書きます。

DELETE
ID: 123456789

DELETE
ID: 987654321

削除したカードを再度カード化する

削除したカードのIDを消して、再度プラグインを実行するとカード化されます。

例えば、下記のようにカード化したブロックがあります。

START
基本
Front: Cat
Back: ねこ
Tags: 英単語
<!--ID: 123456789-->
END

DELETE ブロックを書いて、プラグインを実行してカードを削除します。

DELETE
ID: 123456789

プラグイン実行後、削除したカードのブロックを見てもIDが残っています。

START
基本
Front: Cat
Back: ねこ
Tags: 英単語
<!--ID: 123456789--> // 削除してもブロックにIDが残っているのでこれを削除する
END

このIDを削除してプラグインを実行すると再度カード化されます。

START
基本
Front: Cat
Back: ねこ
Tags: 英単語 // IDを消してプラグイン実行
END

プラグイン実行後、再度ブロックを確認すると新しい一意のIDが割り振られています。

START
基本
Front: Cat
Back: ねこ
Tags: 英単語
<!--ID: 987654321--> // 新しいIDが割り振られる
END

カード化も削除もIDで管理しているので、IDを消してやる必要があるわけです。

再度カード化したくない場合はIDを消さなければOKです。

タグやデッキを指定する

タグやデッキを指定することもできます。

タグ指定

FILE TAGS をファイル内に設定するとタグ指定できます。

FILE TAGS
AWS EC2 CLF

FILE TAGS: AWS EC2 CLF

デッキ指定

デッキ指定には TARGET DECK をファイル内に設定します。

TARGET DECK
AWSCLF

TARGET DECK: AWSCLF

Anki化されるブロック内にデッキ指定がなければ TARGET DECK で指定したデッキにカードが作成されます。

上記2つの指定を組み合わせてみると下記のようになります。

TARGET DECK
AWSCLF

FILE TAGS
AWS EC2 CLF

ファイルのすべてのノートブロックを「AWSCLF」デッキにして、「AWS」「EC2」「CLF」という3つのタグを挿入したカードを作成してくれます。

もうひとつFrozenという機能もありますがまだ詳しくないので割愛。後日追加します。

Obsidian_to_Ankiではなく、Spaced Repetitionプラグインを使いたいって人はgumpenさんの記事がわかりやすかったのでそちらを見てください(ぶん投げ)。

Obsidianで暗記学習ができる[Spaced Repetitionプラグイン]|gumpen

参照ドキュメント