リクエスト広場

#recent除外設定をしたい

2 コメント
views
3 フォロー

RecentChangeの除外設定はソースレベルで行うため変更できません。
それは仕方ないとして#recentとか#recentdetailといったpluginはユーザが任意に設置するものなのでユーザレベルで設定できるといいなと思います。
一応#lsx(/,num=1:10,sort=date,except=正規表現,date=on,new=on)で実現できるのですが、おそらく処理が重い気がしますし、出力も煩雑です。
例えば#recentx(20,except=正規表現)くらいで、出力も#recentないし#recentdetailから指定ページを除外しただけくらいの見た目が希望です。
例えばコメントページは直ぐに目に入る更新には上がらないようにする(RecentChangeでは見える)ような使い方を想定してます。

ななっしー
作成: 2022/06/01 (水) 22:30:21
最終更新: 2022/06/01 (水) 22:31:14
通報 ...
1
01v 2022/06/02 (木) 01:30:05 修正

MenuBarに限定しなければ以下のような方法があります。

  • lsxで更新情報を別ページに置く
    lsxにすることにより全ページの履歴に対応できる。件数を絞らなくてよい。
    MenuBarにlsxを置かなければ多少重くても問題ない。lsxを呼び出す人は限定される。
    MenuBarに置くとスクロールや狭さの問題がある。ページ本体側に置くことにより見やすくなる。
  • コメントをzawazawa化する
    pcommentで作られるコメントページが発生しなくなる。

私の場合は上記を合わせて以下のようにしてます。

#nomenubar // #zrecentを使う場合はMenuBarのほう表示しない。
zawazawaとwikiwikiの更新履歴100件(ページ送り)
|~[[zawazawa>https://zawazawa.jp/グループ/all-comments]]|~[[wikiwiki>https://wikiwiki.jp/サイト名/?cmd=diff_log]]|h
|#zrecent(100,グループ)|#lsx(prefix=/,sort=date,num=1:100,date,new,next,except=RecentChanges)|
  • ヘッダー部がdiff_logなどのリンクになってます。
  • zrecentをMenuBarとページ本体両方に設置すると表示がおかしくなります。
    (この問題が今も起きるかは未確認。)
    その場合の対策は#nomenubarでMenuBarを非表示にします。
    ページ幅が広くなるのでこっちのほうが都合がよいです。
  • ただしこのページはだれも気が付かないので隠しページ的になってます。
  • テーブル内で#ブロック型を使うのは推奨されてません。flex_boxとかのほうが無難かも。

他の手として

  • RecentChangesをincludexする
    実際には運用してませんが、RecentChangesページの記述から必要なページの行だけ抽出する方法もあります。
    このページは更新があったタイミングで記述として更新されます。(Plugin表示ではない。)
    RecentChangesは200件です。lsxはサイト全ページを対象とするためそれに比べれば軽いはずです。
    といっても、1000ページ以上あるサイトでlsxを使ってもHtmlConveter(右上)的には問題なさそうですが。
    コメントページを除外して100件表示
    #includex(RecentChanges,except=コメント,num=1:100,titlestr=off,firsthead=off)
    
2
ななっしー 2022/06/03 (金) 00:03:52 38475@b4e9d

RecentChangesからincludeは目からウロコでした。自分の意図としてはzawazawaがよさそうなので検討してみます。ありがとうございました。