ユーザーコマンド/シーケンス

Last-modified: 2026-03-21 (土) 15:00:53

実証実験中だが、正式版でも既に一部が利用可能となっているユーザーコマンドの連続実行機能「シーケンス」の用法、用例、ならびに開発状況を記載している。


コマンドの連続実行(β)

0.37.5-beta.1より、ユーザーコマンドにおけるコマンドの連続実行「コマンドシーケンス」が実験的に実装された。βテストということで若干の試用期間の後で一旦キャンセルとなったが、機能としては0.37.5でも引き続き利用可能。正式リリースは0.38.0の予定で、それまでに仕様変更となる可能性があることに留意。

https://egg.5ch.io/test/read.cgi/software/1754326352/468-471

468: RomTenma sage 2025/08/24(日) 16:12:11.30 ID:qm0fwa3q0
Siki 0.37.5-beta.1

ユーザーコマンドに記述することで連続でコマンド実行出来るように
読めなくなっていた5chの過去ログの読み込みに一部対応

469: RomTenma sage 2025/08/24(日) 16:21:42.50 ID:qm0fwa3q0
ユーザーコマンドの記述で"command": "コマンド名" となっている部分を

"sequence": [{"command": "コマンド名1"}, {"command":"コマンド名2",  "params":["~~~"]}]

と変更することで2つのコマンドを連続で実行します

usercommand.jsを一度削除して初期化すると"新着タブを順に開いて下までスクロール","スレッド以外を非表示"のサンプルコマンドが設定されます

470: RomTenma sage 2025/08/24(日) 16:30:17.87 ID:qm0fwa3q0
スレッドの更新やワークスペースの更新チェックはコマンドが完了するまで待機しますが、ほとんどのコマンドは非同期で連続して実行されてしまいます
コマンド実行の間に遅延を与えたい場合は

{"command": "コマンド名", "wait": { "delay": 5000 }}

と記述するか、

{"command": "sequence:wait", "params":[5000]}

"sequence:wait"という単純に待つだけのコマンドを設定してください
非常に実験的な要素なのでコマンドによってはうまく動かない可能性が高いです

471: RomTenma sage 2025/08/24(日) 16:34:42.22 ID:qm0fwa3q0
連続コマンド実行中に止めたい場合はESCキー(core:clearコマンド)を押してください

GUI化に伴い、waitの書式は上記の2番目の"sequence:wait"を用いるものが標準となったようだ。

https://egg.5ch.io/test/read.cgi/software/1754326352/495

495: RomTenma sage 2025/08/26(火) 00:47:57.35 ID:7RJtamPY0
>>487
はい、リピート等の機能はまだありませんね

無茶をして各サイトに迷惑をかけたり、兵器に転用される等の懸念があるので慎重に進めていく必要があります

ループ構造がまだ存在しないため、繰り返し処理は同じコマンドを大量に縦に並べるしかない状況となっている。(例:『テンプレ > タブ > 新着タブを順に開いて下までスクロール』)

https://egg.5ch.io/test/read.cgi/software/1754326352/547

547: RomTenma sage 2025/08/30(土) 01:31:56.51 ID:9XleYnEF0
連続実行できるユーザーコマンドの実装は一旦キャンセルします
テキスト編集が必要ないようにUIを作っていましたが変更箇所が多くなりそうなので0.38.0の機能になります

https://egg.5ch.io/test/read.cgi/software/1754326352/552

552: RomTenma sage 2025/08/30(土) 17:36:09.51 ID:9XleYnEF0
betaの連続でコマンド実行出来る機能はそのまま残っていますが、パラメータの設定方法等は今後変わる可能性があります

ユーザーコマンドのGUIによる編集

0.37.6-beta.1以降、『設定 > ユーザーコマンド』からGUIによるユーザーコマンドの編集が可能となっている。GUIで編集した場合には即時に反映され、再起動の必要はない。従来通り、usercommand.jsの直接編集も可能である。

https://egg.5ch.io/test/read.cgi/software/1754326352/665-666

666: RomTenma sage 2025/09/04(木) 00:59:52.58 ID:vjYOon5p0
ユーザーコマンドの設定はコマンド一つ一つを精査できていないのでパラメータを設定できないものが多く、インターフェースも模索中です
(後略)

https://egg.5ch.io/test/read.cgi/software/1754326352/779

779: RomTenma sage 2025/09/08(月) 01:05:10.33 ID:4UbABes20
これまではuserrcommand.jsをダウンロードして使っていたと思いますが、大体の機能はテンプレに入っているのでそこから必要な分だけを設定したほうが良いです

テンプレートのフォーマットは${TEXT}は${T}も使えるようになり、replaceやnumref変換が使えるなど変更が入っています
選択したテキストを置換する機能、クリップボードの中身を置換して貼り付ける機能もユーザーコマンドから実行出来るようになります

siki-sequence-editting-beta.png
画像は開発中のものです

シーケンスの初期作例

これらのユーザーコマンド、ならびにusercommand.jsの削除により追加されるテンプレートのシーケンス入りサンプル(「新着タブを順に開いて下までスクロール」「スレッド以外を非表示」など)は非βの0.37.5系でも利用可能だが、機能の正式リリース予定である0.38.0までにはそのままでは使えなくなっている可能性もあることに留意。

GUIによる編集も可能となっているが、以下のサンプルや「ユーザーコマンド」に掲載されている従来型のユーザーコマンド例を追加したい場合は従来通りusercommand.jsを直接編集すれば良い。

タブを閉じてペインを入れ替える

  "tab.close.swap.pane": {
    "label": "タブを閉じてペイン切替",
    "sequence": [
      {"command": "tab:close", "wait": { "delay": 50 }},
      {"command": "layout:change.swap"},
    ],
  },

delayの単位はms。この例ではわずかでもwaitを入れないと2番目のコマンドが実行されないようだ。

閉じた板とスレッドの履歴を削除

  "closed.truncate": {
    "label": "閉じた板とスレッドの履歴を削除",
    "sequence": [
      {
        "command": "workspace:closed.board.truncate",
        "wait": { "delay": 500 }
      },
      {
        "command": "workspace:closed.thread.truncate",
      },
    ],
  },

HTTPキャッシュとCookieを削除

  "session.clear.all": {
    "label": "HTTPキャッシュとCookieを削除",
    "sequence": [
      {
        "command": "session:cache.clear",
        "wait": { "delay": 500 }
      },
      {
        "command": "session:cookie.clear.all",
      },
    ],
  },

スレッドのログを削除してタブを開き直す

  "tab.close.rm.reopen": {
    "label": "ログ削除してタブを開き直す",
    "sequence": [
      {
        "command": "tab:close.rm"
      },
      {
        "command": "sequence:wait",
        "params": [
          "500"
        ]
      },
      {
        "command": "tab:reopen"
      }
    ],
    "attach": [
      "tab.thread"
    ]
  },

ログ破損時の修復操作を一度で済ませるコマンド。