コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

編集フィルター設定

版間での差分

項目2022年11月10日 (木) 00:14Dragoniez による版2024年7月30日 (火) 02:57Dragoniez による版
フィルター条件
条件:
/* 編集操作 */
/* 編集操作 */
action === "edit"
action === "edit"


/* 拡張承認されておらず、100編集未満 */
/* 拡張承認されておらず、100編集未満 */
&  !contains_any(user_groups, "bot", "extendedconfirmed", "sysop", "eliminator")
&  !contains_any(user_groups, "bot", "extendedconfirmed", "sysop", "eliminator")
&  user_editcount < 100
&  user_editcount < 100


/* 除去した部分に削除依頼テンプレートまたは、著作権侵害テンプレートを含む */
& /* 除去判定 */
&
(
(
     tp_head := "\{\{(:?template:|:?テンプレート:)?";
     tp_start := "\{\{";
     tp_tail := "(\|[^\}]*)?\}\}";
    tp_namespace := "(?i::?template:|:?テンプレート:)?";
     sakujo := tp_head + "([sS]akujo\/本体|[cC]opy(rights?|vio)|著作権(侵害)?)" + tp_tail;
     tp_arg := "(?:\|([^|]*))?"; /* +1 capturing group */
     tp_end := "\}\}";


     rmwhitespace(removed_lines) rlike sakujo
    /* $1: 日付, $2: サブページ名 */
     &   !rmwhitespace(added_lines) rlike sakujo
    rSakujo := tp_start + tp_namespace + "[sS]akujo\/本体" + tp_arg + tp_arg + tp_end;
 
     rmwhitespace(removed_lines) rlike rSakujo
     & (
        /* 削除依頼テンプレートが除去されている */
        !rmwhitespace(added_lines) rlike rSakujo
 
        /**
        * 以下、{{subst:sakujo}}へ{{Sakujo/本体}}が貼りかえられた場合を除外する条件だが未完成
        * 1. "#### ####" 部分にtimestampのパーザーコードが必要
        * 2. "* *" 部はコメント
        */
        /*&
        (  * かつ、{{subst:sakujo}}に貼り替えられていない *
 
            tp_subst := "(?:[sS][uU][bB][sS][tT]:)";
 
            * $1: 日付, $2: サブページ名 *
            rSubstSakujo := tp_start + tp_subst + tp_namespace + "(?:[sS]akujoS?|削除(?:依頼)?|[vV]fd2?)" + tp_arg + tp_arg + tp_end;
           
            removed := get_matches(rSakujo, rmwhitespace(removed_lines));
            r_date := removed[1] | "";
            r_subpage := removed[2] | page_prefixedtitle;
           
            added := get_matches(rSubstSakujo, rmwhitespace(added_lines));
            a_body := added[0];
            a_date := added[1] | (######## timestampを"Y年M月D日"に変換したものをここで代入 ########);
            a_subpage := added[2] | page_prefixedtitle;
           
            * 追加された文字列内に{{subst:sakujo}}がない *
            a_body === false
            |
            * または、あっても日付とサブページ名のどちらかが異なる *
            !(r_date === a_date & r_subpage === a_subpage)
        )*/
 
    )
)
)


/* 30byte以上減少 */
/* 30byte以上減少 */
&  edit_delta <= -30
&  edit_delta <= -30