以下の内容はhttps://wineroses.hatenablog.com/entry/2024/12/21/220529より取得しました。


Obsidian:テキスト転送するスクリプト

こういうこと?

選択範囲転送

こちらのスクリプトですね。 カーソル行が空行だと全文転送するけど、プロパティも一緒に送っちゃってた。

ここを改造してみます。

Twitter2.md

プロパティが --- で挟まれていることが前提です。

<%*
url = "twitter://post?message="

s = tp.file.selection()
if(s){
  tp.file.cursor_append(s)
}else{
  e = app.workspace.activeLeaf.view.editor
  p = e.getCursor().line
  s = e.getLine(p)
  if(!s){
    s = tp.file.content
    if(/^---/.test(s)){
      d = s.split("---\n\n")
      d.shift()
      s = d.join("---\n\n")
    }
  }
}
s = s.replace(/!?\[\[(.+?)\]\]/mg, "$1")
open(`${url}${encodeURIComponent(s)}`)
%>

それと、プロパティのあとに空行を挟んで本文という形式を考えています。

登録の仕方

TemplaterのTemplate hotkeysに登録すると、ホットキーやモバイルツールバーで使えるようになります。

まとめ

変数urlを書き換えれば、ほかのアプリにも転送できます。 いろいろ応用が利く。

追記 12/22

Templaterの実行用にするのを忘れてたので、書き換えました。 <%* %>で挟むだけ。

追記 12/23

全文転送のときだけタイトルを入れるなら:

<%*
url = "twitter://post?message="

s = tp.file.selection()
if(s){
  tp.file.cursor_append(s)
}else{
  e = app.workspace.activeLeaf.view.editor
  p = e.getCursor().line
  s = e.getLine(p)
  if(!s){
    s = tp.file.content
    if(/^---/.test(s)){
      d = s.split("---\n\n")
      d.shift()
      s = d.join("---\n\n")
    }
    s = tp.file.title + "\n" + s
  }
}
s = s.replace(/!?\[\[(.+?)\]\]/mg, "$1")
open(`${url}${encodeURIComponent(s)}`)
%>

プロパティをカットしたあとに置くのがいいかも。

追記 2025/1/3

そうですそうです。 プロパティのあとに一行開けてください。 解決して良かったです。




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

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