Web Analytics Made Easy -
StatCounter

めモらンだム・ヤード

自分用のアプリ設定やスクリプト類の備忘録・覚え書き(Memorandum) / 作った物のライセンスはCC BY-NC-SAで。 / 内容が古いまま、間違ったまま、書いている途中、途中で放置など、手入れはあまり行き届いていない庭 / 対象の仕様変更で動かなくなったもの多々。WorkFlowy向けは全滅したので削除 / 製作物のインストール及び使用は各自の責任で。使用によって、利用者および第三者に損害が発生したとしても、当方は一切責任を負いかねます

2020-01-18 (iOS/iPadOSショートカット単体で、Webページ以外でJavascriptを動かす)

メモ作成: 2020-01-18
メモ更新: 2024-01-08

かなり前のことで確かではないがRedditで見つけたはずの、この『「WebページでJavascriptを実行」アクションを使わない、Data URIスキームを使ったJavascript実行方法』は、OSのアップデートを乗り越えて現在でも有効そうだ。(2020-01-18現在)

例:
ショートカット「数値文字参照に変換
 https://www.icloud.com/shortcuts/4006803edf294cbc9219826353c2d901


(return〜 の行と、次の {t};`; は表示上2行に分かれているいるだけで実際は一行。)

  1. HTML内にJavascriptを書き
  2. Data URIスキームにする。(URLアクションは勝手にURLエンコードしてくれる。)
  3. Webページの内容を取得アクションでページを取り込み
  4. そこから、入力からテキストを取得アクションで結果を取り出す。


※上のショートカットでは、出力データの直後に不必要な半角スペースが付いてしまう。それを無くすには、HTMLの最後の部分を

</script></body></html>

と、改行せずに1行にした方が良い。


実際に、作ったショートカットを使ってみる。

はてなブログ(無料版)を使っていると、はてなキーワード(はてなブログ タグ?)の誤リンクによく出会う。

本来、はてなキーワードになるべきなのは「トークン」なのに、「トーク」と中途半端な箇所で切られてはてなキーワードになってしまっている。


この「数値文字参照に変換」ショートカットを実行し、「トーク」と入れる。


クリップボードに変換結果がコピーされる。


はてなの編集画面で、該当部分をコピーされた内容で置き換える。

誤リンクされていたはてなキーワードが消えた。

実際はこんなことをしなくても、[]トーク[]のようにすればリンクされなくなる。
Javascriptの実行例として書いた。




2024-01-08 最近のiOSのアップデートで、base64エンコードが必要になったのかな?

とうとう何も値が返ってこなくなった。
こうなったら、Actionsアプリの「Transform Text with JavaScript」アクションとかで代用するしかないのかな?

と思ったが、試しにHTMLをbase64エンコードしてから渡すように変更してみたら動いてくれた。 (行区切りなしで) https://www.icloud.com/shortcuts/90db6299c8944d7eac25006d91052996

©︎ 2022 Sorashima