Jazzと読書の日々

iPadを筆記具として使う方法を模索します

Obsidian Playlistをドラッグで並べ替え

Playlistを使いやすくするために。

Playlist

Obsidianで複数ファイルを束ねて連結ファイルを作る。 その順番を指定するのがプレイリスト。 連結順を決める重要なファイルです。

このプレイリストでは並べ替えがよく起こるけど、ツールバーでの操作が少し面倒ですよね。 「上の行と入れ替える」を何度も押さないといけない。 つい横にあるインデント・ボタンを押してしまい、げんなりします。

それでドラッグでの並べ替えを考えてみました。

Setlist.md

プレイリストを見出し形式のリストに変換します。

何がいいかというと「アウトライン」が使えること。 並び順を指先で変更できます。

<%*
s = tp.file.content
if(/^\- /m.test(s)){
  s = s.replace(/^ {8} +\- /mg, "##### ")
  s = s.replace(/^ {4} +\- /mg, "#### ")
  s = s.replace(/^ +\- /mg, "### ")
  s = s.replace(/^\- /mg, "## ")
}else{
  s = s.replace(/^#{5} /mg, "            - ")
  s = s.replace(/^#{4} /mg, "        - ")
  s = s.replace(/^#{3} /mg, "    - ")
  s = s.replace(/^#{2} /mg, "- ")
  s = s.replace(/\n+/g, "\n")
  s = s.replace(/\n/, "\n\n")
}
e = app.workspace.activeLeaf.view.editor
e.setValue(s)
%>

Templaterに登録してお使いください。

使い方

プレイリストでスクリプトを実行。 見出しリストになりましたね。

この状態で右サイドパネルの「アウトライン」を開くと、段差構造が表示されます。 この項目を長押しするとドラッグできます。 ドロップで順番の入れ替えができる。 ドロップ先のラインが出るので、それを見ながら。 これはハマりますね。

もう一度Setlistを実行するとプレイリスト形式に戻ります。

応用編

プレイリストでしか使わないのはもったいない。 ObsidianはOutlinerプラグインを使うことでWorkflowyのように書けますが、モバイルではドラッグができない。

そこで一時的に見出しリストに変換してみる。 これで並び順を変えることができます。 段差のグループ化が保たれるのが地味に便利。

リスト表示に戻すと2行目に空行が入るので、手で修正が要るけど。

まとめ

見出しリストにするとx?が行頭につきますが、プレイリストに戻すのに必要な情報なので消さないようご注意ください。