以下の内容はhttps://wineroses.hatenablog.com/entry/2025/11/23/103206より取得しました。


Obsidian:カードを積んどくデッキを考えた

これ、カード・スタイルには必須でしょう。

cardy.css

Obsidianをカード・スタイルにするcss

今そのスタイルで書いてます。 「ぼくがかんがえたさいきょうのえでぃた」ですね、これは。 趣味の世界。

「見出し+内容」のカードを並べるとノートになる。 それを視覚化するデザインです。 むっちゃ気に入ってます。

デッキとは何か

書いていると「このカードは要らないなあ」となるときがあります。 削除したい。 あるいは「さっき消したカードはここで欲しい」となることもあります。 復活したい。

これまでノートコンポーザーでやってたんですが、 少し手数が多いのでうんざりしてきます。 執筆中にそうした操作にコストを尽くすのはもったいない。

ということで「とりあえず不要なカードは避けておく」。 カードを積んでおくので「デッキ」と呼ぶことにします。

decky.md

Templaterスクリプトです。 hotkeyに登録してお使いください。

Import Obsidian: decky

<%*
// 一時退避用のノートを設定してください。
const Deck = "@deck.md"

const Head = "\n#"
const DeckPath = app.vault.getAbstractFileByPath(Deck)
e = app.workspace.activeLeaf.view.editor
p = e.getCursor().line
s = e.getLine(p)

if(s) {
  s = tp.file.content
  d = s.split(Head)
  for(i=j=k=0; k<=p; i++) {
    j = k
    k+= d[i].split("\n").length
  }
  a = d.splice(i-1, 1)
  block = a[0]
  s = d.join(Head)
  await e.setValue(s)
  e.setCursor(j-1, 0)
  if(DeckPath) {
    await app.vault.append(DeckPath, `${Head}${block}`)
  } else {
    await app.vault.create(Deck, block)
  }
  new Notice("Move to the deck.")
} else {
  if(DeckPath) {
    s = await app.vault.read(DeckPath)
    d = s.split(Head).filter(x => x)
    d0 = d.map(x => "#"+x.split("\n")[0])
    if(d.length) {
      if(d.length == 1) {
        s = d[0]
        content = ""
      } else {
        s = await tp.system.suggester(d0, d)
        if(!s) return
        content = d.filter(x => x != s).join(Head)
      }
      await app.vault.modify(DeckPath, content)
      tp.file.cursor_append(`${Head}${s}`)
    } else {
      new Notice("No Deck.")
    }
  } else {
    new Notice("No Deck file.")
  }
}
%>

使い方

カーソル行が空行でなければ カードを@deck.mdに移動します。 もし空行であれば @deck.md内のカードを一覧表示します。

こんなふうにカードの「見出し」が並ぶメニューが出ます。 選ぶとカードがカーソル位置に挿入されます。 大幅な入れ替えをする場合に便利。

ショットガン・シャッフルはカードを痛めるぜ。

まとめ

今週の『グノーシア』はアニミズム問題だった。 「魂があるとは何か」と。 イルカが出てきてラキオがいなかった。 彼がいなくてギャグ回なのはちょっとさみしいね。




以上の内容はhttps://wineroses.hatenablog.com/entry/2025/11/23/103206より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14