FrontPage > nlFilter

nlFilter

Javaの正規表現を用いたフィルタを簡単に記述できます。

NicoCache_nlをインストールしたフォルダ(jarと同じフォルダ)にある「nlFilters」フォルダにあるテキストファイルは、自動的にフィルタとして読み込まれます。
すでにあるファイルに追加すると、バージョンアップ時に上書きされることがあるので、新しく適当な名前のテキストファイルを作成して、そちらに追加するのがお勧めです。
その時、すでにあるフィルタの一行目をコピーしておくと、フィルタの文字コードで悩まなくてすみます(Windowsの方はあまり気にしなくてもいいです)。

また、フィルタはファイル名順に適用され、同じファイルの中でも上に書かれている物から順に適用されます。

nlFilterの記述例はnlFilter.txt
正規表現の仕方は正規表現
あります。

フィルタ一覧

ヘッダ系フィルタ

ユーザー名・プレミアム登録を削除 (一般会員) (2010/02/23)

# 2010/02/23 ユーザー名・プレミアム登録を削除 (一般会員)
# デフォではみ出すようになったので作ってみた
[Replace]
Name = removeUsername (Regular)
URL = www\.nicovideo\.jp
Match<
<span style="color:#FFF;">一般会員 .* さん</span> - <a href="/\?p=premium_top&sec=bar" style="color:#3CC;">プレミアム登録</a> \| 
>
Replace<
>

#作者注:\|の後に半角スペースが1つあります。

NicoVideo: header light(9) (2010/03/10)

NicoVideo: header_light(9) ヘッダ用フィルタセット (100310)
http://nicolist.net/nicocache_nl/up/img/nl355.zip

05_topBarFilter.txt 改造版 (2010/07/03)

http://nicolist.net/nicocache_nl/up/img/nl457.txt

ランキング_PopupMenu (2010/03/09)

http://nicolist.net/nicocache_nl/up/img/nl354.zip

コメント系フィルタ

kill @JUMP(2009/11/09)

[Replace]
Name = kill @JUMP
URL = msg.nicovideo.jp/\d+/api/
EachLine = TRUE
Multi = TRUE
Match<
(<chat [^>]*?fork="1")([^>]*>)((@|@)ジャンプ( | )[^##][\s\S]*?</chat>)
(<chat [^>]*?fork="1")([^>]*>)/[\s\S]*?jump\(["'](..\d+)["'][\s\S]*?(,msg:["']([\s\S]*?)["']|)[\s\S]*?\)</chat>
(<chat [^>]*?fork="1")([^>]*>)/seekDisabled=true</chat>
(<chat [^>]*?fork="1") mail="([^"]*)"([^>]*>)((@|@)シーク禁止[^<]*</chat>)
(<chat [^>]*?fork="1")([^>]*>)((@|@)シーク禁止[^<]*</chat>)
>
Replace<
$1 mail="@30 shita cyan"$2[投コメ]$3
$1 mail="@30 shita cyan"$2[投コメ]/JUMP $3 $5</chat>
$1 mail="@100 shita cyan"$2[投コメ]/seekDisabled=true</chat>
$1 mail="$2 shita cyan"$3[投コメ]$4
$1 mail="@30 shita cyan"$2[投コメ]$3
>

commentFilter(2009/05/27)

commentFilter 1.0.5
http://oamaxa2.u-abel.net/NicoCache/commentFilter.txt

消去系フィルタ

「メニュー▼」を削除(2010/04/17)

[Replace]
Name = 「メニュー▼」を削除
URL = www.nicovideo.jp
Match<
$NEST(<td,onmouseover="showOBJ\('headmenu_g2'\);",</td>)
>
Replace<
> 

色々まとめて削除(2009/10/30)

[Replace]
Name = 色々まとめて削除
URL = www\.nicovideo\.jp/
EachLine = TRUE
Multi = FALSE
Match<
<title>(?:マイリスト )?(.+?)‐ニコニコ動画.+?</title>
<td><div class="ads_468"><!--↓表示してもよい↓-->(?s:.+?)<!--↑表示してもよい↑-->\r\n\r\n</div></td>
Event\.observe\(document, "keydown", function \(event\) \{[^\}]+}.bindAsEventListener\(window\)\);
>
Replace<
<title>$1</title>
>
# ページタイトルから-ニコニコ動画(*)などを消す
# 上部広告消去
# キー操作制限解除

rankingページ宣伝削除(2009/05/06)

[Replace]
Name = rankingページ 宣伝削除
URL = www.nicovideo.jp/ranking/
Multi = TRUE
Match<
<div id="item\d+_uad_current"[\s\S]*?</div>
>
Replace<
>

watchページ色々まとめて削除(2009/12/19)

[Replace]
Name = watchページ色々まとめて削除 1
URL = www\.nicovideo\.jp/watch/
EachLine = TRUE
Multi = FALSE
Match<
(?<=id="des_2") style="display:none;"
<!--↓省略モード↓-->(?s:.+?)<!--↑省略モード↑-->
$NEST(<p,alt="隠す",</p>)
<!--↓メニュー↓-->(?s:.+?)<!--↑メニュー↑-->
>
Replace<
 style="display:block;"
>
# 常に詳細モード表示
# 省略モード消去
# 切り替え用画像消去
# [ニコニ広告で宣伝する]等消去

[Replace]
Name = watchページ色々まとめて削除 2
URL = www\.nicovideo\.jp/watch/
EachLine = FALSE
Multi = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
#PAGEHEADER { display:none;}/* 検索の消去 */
img[alt="登録タグ"]           { display:none;}/* [登録タグ]画像の消去 */
.mb16p4                       { display:none;}/* タグ連動広告消去 */
.ads_tag                      { display:none;}/* 下部の動画情報とその下の広告 */
form[id^="mymemory"] + p      { display:none;}/* [マイメモリーに保存する]等の消去 */
#WATCHFOOTER > p:first-of-type { display:none; }/* 動画下の「使い方」等の消去 */
--></style>
$0
>

検索ページ色々まとめて削除(2010/06/24)

[Replace]
Name = 検索ページ色々まとめて削除
URL = www\.nicovideo\.jp/(?:tag/|search/)
EachLine = FALSE
Multi = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
#web_pc_footer  { display:none;} /* 下部広告 */
#nicoads, .uad_container { display:none;}/* ニコニ広告消去 */
--></style>
$0
>

myページ色々まとめて削除(2009/12/28)

[Replace]
Name = myいろいろ調整
URL = www\.nicovideo\.jp/(?:my(?:/top)?$|user/)
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
.content_312 > table:first-of-type { display:none;}/* [生放送中の番組]下の広告 */
--></style>
$0
>

liveページ色々まとめて削除(2009/12/28)

[Replace]
Name = 検索等消去
URL = live\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
#header                      { display:none;}/* 検索消去 */
#nextprev                    { display:none;}/* [前・次の番組へ]消去 */
img[alt="Twitterでつぶやく"] { display:none;}/* [Twitterでつぶやく]を消去 */
#alertbar { display:none;}/* 生放送下の[使い方]等 */
.ichiba_frm + div { display:none;}/* 市場下の「ニコ生アラート」「ニコ生モバイル」の広告 */
--></style>
</head>
>

右列の広告消去(2009/12/04)

[Replace]
Name = 右列の広告消去
URL = www\.nicovideo\.jp/(?:tag/|search/|mylist/|newarriva|history|ranking)
EachLine = TRUE
Multi = TRUE
Match<
</head>(\r\n)
(class="SYS_box_item".+\r?\n<table) width="672"
width="672" (border="0" cellpadding="4" cellspacing="0" summary="history")
<!--↓右列↓-->(?s:.+?)<!--↑右列↑-->
>
Replace<
<style type="text/css"><!-- .content_672 { width:100%;} .body_984 { width:984px; } --></style>$1$0
$1
$1
>
# 左列の幅&3列フィルタとの干渉よけ
# 動画説明部の幅(mylist)
# 動画説明部の幅(history)
# 右列の広告

強調表示系フィルタ

検索系ページ再生時間で色分け(2010/07/24)

[Replace]
Name = 検索系ページ再生時間で色分け css
URL = www.nicovideo.jp/(?:search/|tag/|newarrival)
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
.vinfo_title { white-space:normal;}/* 1列表示時にタイトルを折り返し */

.nl_thumb_frm_1 { background-color:#F9FCFC; border:#C9CFCF 2px solid;}			/* 0~9分*/
.nl_thumb_frm_2 { background-color:lightcyan; border:solid 2px royalblue;}		/* 10分台 */
.nl_thumb_frm_3 { background-color:antiquewhite; border:solid 2px salmon;}		/* 20分台 */
.nl_thumb_frm_4 { background-color:#CCFFBB; border:solid 2px mediumseagreen;}	/* 30分台 */
.nl_thumb_frm_5 { background-color:#eaeaea; border:solid 2px black;}			/* 40分以上 */
--></style>
$0
>

[Replace]
Name = 検索系ページ再生時間で色分け 1列 div
URL = www.nicovideo.jp/(?:search/|tag/|newarrival)
Multi = TRUE
EachLine = FALSE
Require = alt="1列"><a
Match<
(?<=<!---->\r\n<div style="width:640px; overflow:hidden;")(?=>)
>
Replace<
 class="nl_search_1"
>

[Replace]
Name = 検索系ページ再生時間で色分け 2列 div
URL = www.nicovideo.jp/(?:search/|tag/|newarrival)
Multi = TRUE
EachLine = FALSE
Require = </a><img[^>]+?alt="2列"
Match<
(?<=<!---->\r\n<div style="width:336px; overflow:hidden;")(?=>)
>
Replace<
 class="nl_search_2"
>

[Replace]
Name = 検索系ページ再生時間で色分け 4列 div
URL = www.nicovideo.jp/(?:search/|tag/|newarrival)
Multi = TRUE
EachLine = FALSE
Require = </a><img[^>]+?alt="4列"
Match<
(?<=<!---->\r\n<div style="width:160px; overflow:hidden; padding:4px;")(>\r\n)(<p(?s:.+?))(?=</div>\r\n<!---->)
>
Replace<
 class="nl_search_4"$1<table><tbody><tr><td style="width:500px;">$2</td></tr></tbody></table>
>

[Replace]
Name = 検索系ページ再生時間で色分け
URL = www\.nicovideo\.jp/(?:search|tag/|newarrival)
Multi = TRUE
EachLine = TRUE
Match<
class="(?:nl_search_[124]|nc_thumb_block)">\r?\n(?:<!---->\r?\n)?<table(?=.+(?:\r\n)+(?:.+\r?\n(?!<!---->))+?<p class="vinfo_length"><span>\d:)
class="(?:nl_search_[124]|nc_thumb_block)">\r?\n(?:<!---->\r?\n)?<table(?=.+(?:\r\n)+(?:.+\r?\n(?!<!---->))+?<p class="vinfo_length"><span>1\d:)
class="(?:nl_search_[124]|nc_thumb_block)">\r?\n(?:<!---->\r?\n)?<table(?=.+(?:\r\n)+(?:.+\r?\n(?!<!---->))+?<p class="vinfo_length"><span>2\d:)
class="(?:nl_search_[124]|nc_thumb_block)">\r?\n(?:<!---->\r?\n)?<table(?=.+(?:\r\n)+(?:.+\r?\n(?!<!---->))+?<p class="vinfo_length"><span>3\d:)
class="(?:nl_search_[124]|nc_thumb_block)">\r?\n(?:<!---->\r?\n)?<table(?=.+(?:\r\n)+(?:.+\r?\n(?!<!---->))+?<p class="vinfo_length"><span>(?:[4-9]\d|\d{3}):)
>
Replace<
$0 class="nl_thumb_frm_1"
$0 class="nl_thumb_frm_2"
$0 class="nl_thumb_frm_3"
$0 class="nl_thumb_frm_4"
$0 class="nl_thumb_frm_5"
>

ranking カテゴリページ再生時間で色分け(2009/10/30)

[Replace]
Name = rankingカテゴリページ再生時間で色分け
URL = www\.nicovideo\.jp/ranking/
Multi = TRUE
EachLine = TRUE
Match<
id="item\d+" (class="thumb_frm") style="[^"]+"(>(?:\r\n)+<table) width="648"((?:.+\r?\n)+?<p class="vinfo_length"><span>\d:)
id="item\d+" (class="thumb_frm" style=")[^"]+(">(?:\r\n)+<table) width="648"((?:.+\r?\n)+?<p class="vinfo_length"><span>1\d:)
id="item\d+" (class="thumb_frm" style=")[^"]+(">(?:\r\n)+<table) width="648"((?:.+\r?\n)+?<p class="vinfo_length"><span>2\d:)
id="item\d+" (class="thumb_frm" style=")[^"]+(">(?:\r\n)+<table) width="648"((?:.+\r?\n)+?<p class="vinfo_length"><span>3\d:)
id="item\d+" (class="thumb_frm" style=")[^"]+(">(?:\r\n)+<table) width="648"((?:.+\r?\n)+?<p class="vinfo_length"><span>(?:[4-9]\d|\d{3}):)
>
Replace<
$1$2$3
$1background-color:lightcyan; border:solid 2px royalblue;$2$3
$1background-color:antiquewhite; border:solid 2px salmon;$2$3
$1background-color:#CCFFBB; border:solid 2px mediumseagreen;$2$3
$1background-color:#eaeaea; border:solid 2px black;$2$3
>
# 副作用として宣伝状態の色変更が解除される

rankingページ関連フィルタ

カテゴリページ 1 → 2列表示(2010/06/24)

[Replace]
Name = ranking 1→2列表示1
URL = www\.nicovideo\.jp/ranking/
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
.body_984     { width:100%;}
.content_672 { width:100%;}
.content_312 { display:none;}
.list_count { width:45px !important;}/* 順位部分のスペース調整 */
[class^="thumb_frm"] { width:auto !important; padding-left:2px !important;}/* thumb_frmの順位部分左側スペース調整 */
[class^="thumb_frm"] > table, [class^="thumb_frm"] td:last-of-type, [class^="thumb_frm"] td > div { width:100% !important;}
.watch { white-space:normal; line-height:1.2;}
--></style>
$0
>

[Replace]
Name = ranking 1→2列表示2
URL = www\.nicovideo\.jp/ranking/
Multi = FALSE
EachLine = TRUE
Match<
(?<=<!--↑カテゴリ選択↑-->\r?\n</div>\r?\n)
(?=\r?\n<script type="text/javascript"><!--\r?\nNico\.LazyImage\.initialize\(\);)
>
Replace<
<table style="width:100%; table-layout:fixed;"><tbody>
</tbody></table>
>
# tableタグ開始
# tableタグ終了

[Replace]
Name = ranking 1→2列表示3
URL = www\.nicovideo\.jp/ranking/
Multi = TRUE
EachLine = FALSE
Match<
(<!--↓id有↓-->(?s:.+?)<!--↑id有↑-->(?:\r?\n)+)
(<!--↓id有↓-->(?s:.+?)<!--↑id有↑-->(?:\r?\n)+)
>
Replace<
<tr>
<td style="width:50%; vertical-align:top;">
$1</td>
<td style="width:50%; vertical-align:top;">
$2</td>
</tr>
>
# tr,td挿入

[Replace]
Name = ranking 1→2列表示4
URL = www\.nicovideo\.jp/ranking/
Multi = FALSE
EachLine = FALSE
Match<
<table width="664"( cellpadding="4" cellspacing="0" id="switch">(?s:.+?)</form></td>)
(?=(?s:.+?)
(<td nowrap align="right">期間:</td>(?s:.+?))
<td style="color:#666;">\|</td>\r?\n
(<td nowrap align="right">対象:</td>(?s:.+?)</select></form></td>))
>
Replace<
<table width="100%" class="font12"$1$2$3
>
#右側にある「期間」「対象」を「カテゴリ合算」の位置に

[Replace]
Name = ranking 1→2列表示5
URL = www\.nicovideo\.jp/ranking/
Multi = TRUE
EachLine = FALSE
Match<
(<!--↓id有↓-->(?s:.+?))
(\t<!---->(?s:.+?)<!---->)
((?s:.+?))
(?=</div>\r?\n<!--↑id有↑-->)
>
Replace<
$1$3$2
>
# 宣伝コメントの表示入れ替え

watchページ関連フィルタ

wrapperReplaceFilter 改造版 (2010/05/03)

新プレデフォルト:http://nicolist.net/nicocache_nl/up/img/nl383.txt wrapperデフォルト:http://nicolist.net/nicocache_nl/up/img/nl382.txt

ニコニコ市場を表示・非表示リンク(2010/08/12)

[Replace]
Name = ニコニコ市場を表示・非表示リンク
URL = www\.nicovideo\.jp/watch/
Match<
(<div id="WATCHFOOTER">[\s\S]+?)(?=</p>)
>
Replace<
$0
<span class="font12" style="color:#CCC; float:right;">
<a id="nlIchibaToggle1" href="javascript:void(0);" style="display:none;" onclick="Cookie.set('nlIchibaToggle', 1); hideOBJ('nlIchibaToggle1'); showOBJ('nlIchibaToggle2'); showOBJ('ichiba_placeholder'); return false;">ニコニコ市場を表示</a>
<a id="nlIchibaToggle2" href="javascript:void(0);" style="display:none;" onclick="Cookie.set('nlIchibaToggle', 0); showOBJ('nlIchibaToggle1'); hideOBJ('nlIchibaToggle2'); hideOBJ('ichiba_placeholder'); return false;">ニコニコ市場を隠す</a>
</span>
<script type="text/javascript"><!--
Nico.onReady(function(){
	if (Cookie.get('nlIchibaToggle')=='1') {
		\$('nlIchibaToggle1').onclick();
	} else {
		\$('nlIchibaToggle2').onclick();
	}
});
--></script>
>

主コメ高さ制限 + 連続する空白文字を改行に変換(2009/07/30)

[Replace]
Name = 主コメ高さ制限
URL = www.nicovideo.jp/watch/
EachLine = TRUE
Match<
(<p class="video_des")([^>]*>.+?</p>)
[\u0020\u2000\u3000]{9,}+(?=.+<span id="nl_br">)
<p><[^>]+class="video_des_top"></p>
>
Replace<
$1 style="max-height:72px; overflow-y:auto; border-top-width:2px; word-break:break-all;"$2<span id="nl_br"></span>
<br />
> 

動画タイトル横にキャッシュアイコンを表示(2010/08/28)

[Replace]
Name = 動画タイトル横にキャッシュアイコンを表示
URL = www\.nicovideo\.jp/watch/
idGroup = 1
Match<
</h1>(?s:.+?)\?vid=(.+?)&watch_ads
>
Replace<
<img src="/local/cacheicon.gif" style="margin-left:10px;">$0
<$>
<img src="/local/cacheeconomy.gif" style="margin-left:10px;">$0
>

"大百科の記事"を記事がある場合のみ表示するフィルタ(2009/11/01)

[Replace]
Name = view article
URL = www.nicovideo.jp/watch/
EachLine = TRUE
Match<
(<!--↓大百科↓-->\s*<table[^>]+style="[^"]+\smargin:4px;)">
(\$\("nicopedia_video_des"\))(\.update\(summary\);)[^;]+;
>
Replace<
$1 display:none;">
$1$2 Element.show($1.parentNode.parentNode.parentNode.parentNode);
>

説明文横サムネ追加(2009/06/13)

[Replace]
Name = 説明文横サムネ追加
URL = www.nicovideo.jp/watch/
Multi = FALSE
Match<
(<div style="margin:4px;)(">[\s\S]*?)(<p>[\s\S]*?</p>[\r\n]*?)(<p class="video_des")(>[\s\S]*?</div>)
>
Replace<
<table id="thumbnail" border="0" style="border:solid 1px #CCC;background-color: rgb(249, 249, 249);"><tr>
<td valign="top">$1$2$4 style="border:none;"$5</td>
<td><img style="border:solid 1px #CCC; margin:4px;" src="http://tn-skr2.smilevideo.jp/smile?i=<id>"></td>
</tr></table>
>

※「50_nlFilter_sample」の「Watchページサムネ追加」は使用しないでください

削除にワンクッション(2010/02/14)

[Replace]
Name = 削除にワンクッション
URL = www.nicovideo.jp/watch/
Match<
(?<=onclick=")(?=var nl_delBtn)
>
Replace<
if(!confirm('消しますよ?'))return;
>

投稿者コメント部分調整(2010/06/09)

[Replace]
Name = 投稿者コメント部分調整css
URL = www\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
#video_des_table { border:solid 1px #BBB; margin-left:4px; width:100%;}/* 動画説明table */
#video_des_nl    { line-height:1.34; padding:2px 2px 2px 4px; height:96px; overflow-y:auto; border-left:solid 1px #BBB;}/* 動画説明部分 */
--></style>
$0
>

[Replace]
Name = 投稿者コメント部分をスクロール式に変える + サムネ表示
URL = www\.nicovideo\.jp/watch/
EachLine = FALSE
Multi = FALSE
Match<
<table[^>]+?style="border:solid 2px #CCC; margin:4px;">\r?\n
<tr>\r?\n
.+?( class="video_des_tit"></td>\r?\n
<td width="100%" style="background:#F9F9F9;"><p)( class="font12">.+?</p></td>)\r?\n
</tr>\r?\n
</table>
>
Replace<
<table cellpadding="0" cellspacing="0" id="video_des_table"><tbody><tr>
<td><img src="http://tn-skr1.smilevideo.jp/smile?i=<id>" style="width:130px; height:100px; background-image:none;"$1 id="video_des_nl"$2<!-- nl_br -->
</tr></tbody></table>
>

[Replace]
Name = 投稿者コメント部分にあるスペースを改行タグに置換 + α
URL = www\.nicovideo\.jp/watch/
Multi = TRUE
EachLine = TRUE
Require = !<br \\/>
Match<
(。)( | )*(?!</p>|[^「」\n]*」|。)(?=.+?<!-- nl_br)
(?<!<br />|class="font12">)(?: | )*(■|◆)(?=.+?<!-- nl_br)
(?<!class="font12">)[ ]{1,}(?=.+?<!-- nl_br)
>
Replace<
$1<br />
<br />$1
<br />
>

※もともと改行が入っているものには改行を追加しない ※全角スペースのみ、マッチする最低個数を変更するには「 {2,} 」の数字を変えてください ※「50_nlFilter_sample」の「Watchページサムネ追加」は使用しないでください

タイトル周りの整理(2010/07/01)

[Replace]
Name = コミュニティ所属の調整とメニューを隠すボタンの消去
URL = www\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = TRUE
Match<
<strong>この動画は.+\r?\n
$NEST(<p,class="btn_info_close",</p>)
>
Replace<
>

[Replace]
Name = タイトル周りの整理1
URL = www\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
(</p>\r?\n\r?\n(?:<h1|<p><b)(?s:.+?))
<span style="color:#CCC;">\|\r?\n
(?:(<a[^<]+</a>) \| (?:(<a[^<]+</a>) \| )?)?<span id="nicommons"></span>\r?\n
(?:<span style="color:#C00;">.+?</span> \| |)</span>\r?\n
</p>\r?\n
\r?\n
<p class="font12" style="color:#CCC; margin-top:2px;">\r?\n
(?:(<strong[^<]+</strong> )<span style="color:#333;">(.+?)</span> \|\r?\n)?
(.+?) \|\r?\n
(.+?) \|\r?\n
(.+?) \|\r?\n
</p>
>
Replace<
<span style="float:right; margin-top:2px;" class="headmenu">
<a href="javascript:void(0);" onclick="showOBJ('movie_inf'); return false;" style="color:black;">動画情報▼</a>
	<div id="movie_inf" style="position:relative; display:none;" onmouseover="showOBJ('movie_inf'); return false;" onmouseout="hideOBJ('movie_inf'); return false;">
	<div class="headmenu_nl" style="right:-8px; top:0px;">
	<table border="0" cellpadding="0" cellspacing="4" class="font12">
	<tr><td nowrap>
	<div>$2</div>
	<div>$3</div>
	<div style="color:#CCC;">$4$5</div>
	$6<br>
	$7<br>
	$8<br>
	<!-- end_movie_inf -->
	</td></tr>
	</table>
	</div>
	</div>
</span>
$1
>

[Replace]
Name = タイトル周りの整理2
URL = www\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
(<!-- end_movie_inf -->(?s:.+?))
<td valign="bottom">\r?\n
(<div style="position:relative;">\r?\n
\t<div id="MSG_deflist" style="display:none;)(">\r?\n
(?s:.+?)</div>\r?\n)
\t<table(?s:.+?)
<td><a href="http://uad\.nicovideo\.jp[^"]+" target="_blank">.+\r?\n
.+?(<a[^>]+>).+\r?\n
.+?(<a[^>]+>).+\r?\n
\t\t</tr>\r?\n
\t</table>\r?\n
</td>\r?\n
>
Replace<
	<div class="line">$4マイリスト登録</a></div>
	$5とりあえず一発登録</a><br />
$2 margin:0px; right:-4px; top:4px;$3
	$1
>
[Replace]
Name = タイトル周りの整理3
URL = www\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
.headmenu_nl { background:#111; border:solid 2px #FFF; opacity:0.9; position:absolute;}
.headmenu_nl a { color:#CCC !important;}
--></style>
>

ResizeVideoCustom for FlvPlayerWrapper(2010/06/13)

[Replace]
Name = ResizeVideoCustom for FlvPlayerWrapper
URL = www\.nicovideo\.jp/watch/
Match<
(?=<div id="flvplayer_container")
>
Replace<
<script type="text/javascript"><!--
function reaspect(r) {
	var swf=\$('flvplayer');
	var obj="nico.videowindow.video_mc.video.";
	var w=swf.TGetProperty(obj,8);
	var h=swf.TGetProperty(obj,9);
	var y=swf.TGetProperty(obj,1);
	swf.TSetProperty(obj,9,w*r);
	swf.TSetProperty(obj,1,parseFloat(y)+(h-w*r)/2);
}
function resize(p) {
	var swf=\$('flvplayer');
	var swfc=\$('flvplayer_container');
	swf.TSetProperty("_root",2,p);
	swf.TSetProperty("_root",3,p);
	swf.style.width=swfc.style.width=952*p/100+"px";
	swf.style.height=swfc.style.height=540*p/100+"px";
}
--></script>
<table><tr><td>
<div class="tool_bg_L"><div class="tool_bg_R">VIEW SIZE</div></div></td><td>
<button onclick="resize(0)">BGM</button>
<button onclick="resize(50)">x0.5</button>
<button onclick="resize(100)">x1.0</button>
<button onclick="resize(125)">x1.25</button>
<button onclick="resize(150)">x1.5</button>
<button onclick="resize(200)">x2.0</button>
<button onclick="reaspect(0.75)">4:3</button>
<button onclick="reaspect(0.5625)">16:9</button>
</td></tr></table>
>

mylistページ関連フィルタ

mylistで最新コメ表示(2010/03/29)

[Replace]
Name = mylistで最新コメ表示
URL = www\.nicovideo\.jp/(?:mylist/\d+|my/mylist)
EachLine = TRUE
Match<
</head>
\$item\.item_data\.title\|word_wrap\}</a></h3>
>
Replace<
<script type="text/javascript" src="/local/nlThumbInfoRewriter.js"></script>$0
$0<p class="font12"><a href="javascript:void(0);" onclick="getFullDesc(this);">...</a></p><p class="vinfo_last_res">{\$item.item_data.last_res_body|word_wrap}</p>
>

※「15_thumbInfoFilter(基本).txt」の「動画説明全文読み込み(mylist)」と置き換え

マイリスト500件表示(2009/11/07)

[Replace]
Name = マイリスト500件表示
URL = res\.nimg\.jp/js/mylist2\.js
Match<
items_per_page:\s*\d+,
>
Replace<
items_per_page: 500,
>
# 修正したらブラウザのキッシュクリア&リロードが必要

マイリストコメント部分にあるスペースを改行タグに置換 + α(2009/11/01)

[Replace]
Name = マイリストコメント部分整形
URL = www\.nicovideo\.jp/mylist/\d+
Multi = TRUE
EachLine = TRUE
Match<
description: "[^"]+",
(。)(?: | )*+(?!(?:\\r|\\n))(?=.+?// nl_br)
(?<!(?:"|\\n))(?: | )*+(■|◆)(?=.+?// nl_br)
(?: | ){2,}+(?!(?:\\r|\\n))(?=.+?// nl_br)
>
Replace<
$0// nl_br
$1\\r\\n
\\r\\n$1
\\r\\n
>

マイリスト 1 → 2列表示(2010/06/02)

[Replace]
Name = マイリスト 1→2列表示(公開mylist)
URL = www\.nicovideo\.jp/mylist/
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
.body_984                               { width:1300px;}/* マイリスト全体の幅 */
.content_672                           { width:100%;}/* 左列の幅 */
.content_312                           { display:none;}/* 右列消去 */
#SYS_page_items:after             { content:"."; clear:both; height:0px; display:block; visibility:hidden;}/* 下部のページングが上に移動してこないように */
.SYS_box_item                     { width:50%; float:left;}/* 2列化用float指定 */
.SYS_box_item:nth-of-type(odd) { clear:both; }          /* 2列化用奇数clear指定 */
.SYS_box_item > table         { width:auto; margin:0px 6px 6px 0px !important; background-color:#F9FCFC; border:#C9CFCF 2px solid; -moz-border-radius:10px; -webkit-border-radius:10px; -moz-box-shadow:4px 4px 4px gray; -webkit-box-shadow:4px 4px 4px gray;}/* 動画説明部分のスタイル */
--></style>
$0
>
[Replace]
Name = マイリスト 1→2列表示(my/mylist)
URL = www\.nicovideo\.jp/my/mylist
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
.body_984                               { width:1300px;}/* マイリスト全体の幅 */
.content_672                           { width:988px;}/* 右列の幅 */
#SYS_page_items:after             { content:"."; clear:both; height:0px; display:block; visibility:hidden;}/* 下部のページングが上に移動してこないように */
.SYS_box_item                     { width:50%; float:left;}/* 2列化用float指定 */
.SYS_box_item:nth-of-type(odd) { clear:both; }          /* 2列化用奇数clear指定 */
.SYS_box_item > table         { width:auto; margin:0px 6px 6px 0px !important; background-color:#F9FCFC; border:#C9CFCF 2px solid; -moz-border-radius:10px; -webkit-border-radius:10px; -moz-box-shadow:4px 4px 4px gray; -webkit-box-shadow:4px 4px 4px gray;}/* 動画説明部分のスタイル */
--></style>
$0
>

※CSS3の使えるブラウザ専用(Firefox,Google Chrome等)、IE8以下では表示が崩れます

historyページ関連フィルタ

視聴履歴 1 → 2列表示(2010/02/04)

[Replace]
Name = 視聴履歴 1 → 2列表示
URL = www\.nicovideo\.jp/history
Multi = TRUE
EachLine = FALSE
Match<
(<tr><td colspan="2">(?s:.+?)</p>\r\n</td>\r\n</tr>\r\n)
(<tr><td colspan="2">(?s:.+?)</p>\r\n</td>\r\n</tr>\r\n)?
>
Replace<
<tr><td style="width:50%; vertical-align:top;">
<table>
$1
<tr><td></td></tr>
</table>
</td><td style="width:50%; vertical-align:top;">
<table>
$2
<tr><td></td></tr>
</table>
</td></tr>
>

※IE8で「視聴履歴を個別に削除」と一緒に使うと消去できない不具合を修正

視聴履歴を個別に削除(2010/06/05)

[Replace]
Name = 視聴履歴を個別に削除 1 (2010/06/05)
URL = www\.nicovideo\.jp/history
Multi = TRUE
EachLine = FALSE
Match<
(<table)( [^>]+>\r\n<tr valign="top">\r\n<td>\r\n<p><a href="watch/(\w{2}\d+)"[^>]*><img(?s:.+?))(?=</p>)
>
Replace<
$1 class="history_remove" id="history_$3"$2<input style="float:right;" type="button" class="submit" value="削除" title="" onclick="history_remove('$3')">
>
[Replace]
Name = 視聴履歴を個別に削除 2 (2010/06/05)
URL = www\.nicovideo\.jp/history
Multi = FALSE
EachLine = FALSE
Match<
</body>
>
Replace<
<script type="text/javascript"><!--
function history_remove(id){
/*	Element.remove(\$('history_'+id).nextSibling);*/
	Element.remove(\$('history_'+id));
	(Cookie.get('nicohistory')+',').match('^(.*?)('+id+':[^,]+,)(.*)\$');
	if(RegExp.\$2){
		Cookie.set('nicohistory',RegExp.\$1+RegExp.\$3.slice(0,-1),9999999999,'.nicovideo.jp','/')
	}
	if(document.getElementsByClassName('history_remove').length==0){
		location.reload()
	}
}
--></script>
$0
>

firefox3.5,chrome5.0,IE8で確認。消すボタンは画像の下です。

視聴履歴を個別に削除 + 1→2列表示(2010/06/09)

[Replace]
Name = 視聴履歴を個別に削除 + 1→2列表示 1
URL = www\.nicovideo\.jp/history
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
.body_984 { width:1400px;}
.history_remove                     { width:50%; float:left;}
.history_remove:nth-of-type(odd) { clear:both;}
.history_remove > table             { width:auto !important; margin:0px 6px 6px 0px !important; background-color:#F9FCFC; border:#C9CFCF 2px solid; -moz-border-radius:10px; -webkit-border-radius:10px; -moz-box-shadow:4px 4px 4px gray; -webkit-box-shadow:4px 4px 4px gray;}
.nl_history:after                 { content:"."; clear:both; height:0px; display:block; visibility:hidden;}
--></style>
$0
>
[Replace]
Name = 視聴履歴を個別に削除 + 1→2列表示 2
URL = www\.nicovideo\.jp/history
Multi = FALSE
EachLine = TRUE
Match<
alt="履歴の消去"></a></p>
<div style="margin:0 0 16px;">
>
Replace<
$0<div class="nl_history">
</div>$0
>
[Replace]
Name = 視聴履歴を個別に削除 + 1→2列表示 3
URL = www\.nicovideo\.jp/history
Multi = TRUE
EachLine = FALSE
Match<
(<table width="672" cellpadding="4" cellspacing="0" summary="history"(?s:.+?)<p><a href="watch/([^"]+)">(?s:.+?))
(<p class="font12 thumb_num">(?s:.+?)</table>)
>
Replace<
<div class="history_remove" id="history_$2">
$1
<input style="float:right; padding:0;" type="button" class="submit" value="削除" title="" onclick="history_remove('$2')">
$3
</div>
>
[Replace]
Name = 視聴履歴を個別に削除 + 1→2列表示 4
URL = www\.nicovideo\.jp/history
Multi = FALSE
EachLine = FALSE
Match<
</body>
>
Replace<
<script type="text/javascript"><!--
function history_remove(id){
	Element.remove(\$('history_'+id).nextSibling);
	Element.remove(\$('history_'+id));
	(Cookie.get('nicohistory')+',').match('^(.*?)('+id+':[^,]+,)(.*)\$');
	if(RegExp.\$2){
		Cookie.set('nicohistory',RegExp.\$1+RegExp.\$3.slice(0,-1),9999999999,'.nicovideo.jp','/')
	}
	if(document.getElementsByClassName('history_remove').length==0){
		location.reload()
	}
}
--></script>
$0
>

※CSS3の使えるブラウザ専用(Firefox,Google Chrome等)、IE8以下では表示が崩れます

検索系ページ関連フィルタ

マイリスト数プログレスバー表示(2010/06/21)

http://nicolist.net/nicocache_nl/up/img/nl435.txt

キーワード検索ページ色検索箱削除(2010/06/25)

[Replace]
Name = キーワード検索ページ色検索箱削除
URL = www\.nicovideo\.jp/search
Match<
(?s)(<div id="PAGEBODY">).+?<p class="form_result_2"><strong>(.+?)</strong>.+?<strong class="search_total">(.+?)</strong>(.+?)<!--↑関連タグ↑-->
>
Replace<
$1
<div class="mb8p4">
<h1>キーワード <span class="search_word" style="font-size:32px;" id="search_words"><span class="search_word">$2</span> </span> を含む動画の検索結果</h1>
<p class="font12">キーワード"<span class="search_word">$2</span>"を含む動画が<strong class="search_total">$3件</strong>みつかりました。
</p>
</div>
>

Liveページ関連フィルタ

アイコンと日付の改行消去(2009/08/16)

[Replace]
Name = アイコンと日付の改行消去
URL = live\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
(<img src="img/nicolive/now_on_air\.gif\?\d+" alt="ONAIR">)\r?\n.+</p>\r?\n
>
Replace<
$1
>

その他フィルタ

検索のソートを変更(2010/06/05)

[Replace]
Name = 検索ソート変更1(コンボ設置)
URL = (?:seiga|www)\.nicovideo\.jp/(?!(?:mylist_)?search)
Match<
</p>\r\n
(<table cellpadding="0" cellspacing="0" summary="" style="border:solid 1px #C9CFCF;">)
>
Replace<
<select id="SearchSort" size="1">
<option value="?sort=f&order=d">投稿:新</option><option value="?sort=f&order=a">投稿:古</option>
<option value="?sort=v&order=d"" selected="selected" style="background-color: #CCCCCC;">再生:多</option><option value="?sort=v&order=a" style="background-color: #CCCCCC;">再生:少</option>
<option value="?sort=n&order=d"">コメント:新</option><option value="?sort=n&order=a">コメント:古</option>
<option value="?sort=r&order=d"" style="background-color: #CCCCCC;">コメント:多</option><option value="sort=r&order=a" style="background-color: #CCCCCC;">コメント:少</option>
<option value="?sort=m&order=d"">マイリス:多</option><option value="?sort=m&order=a">マイリス:少</option>
<option value="?sort=l&order=d"" style="background-color: #CCCCCC;">時間:長</option><option value="?sort=l&order=a" style="background-color: #CCCCCC;">時間:短</option></select>
</p>$1
>

[Replace]
Name = 検索ソート変更2(コンボ設置)
URL = (?:seiga|www)\.nicovideo\.jp/(?:mylist_)?search
Match<
<!---->を含む(?:マイリスト|動画)が.+
>
Replace<
$0
<select id="SearchSort" size="1">
<option value="?sort=f&order=d"">投稿:新</option><option value="?sort=f&order=a">投稿:古</option>
<option value="?sort=v&order=d"" selected="selected" style="background-color: #CCCCCC;">再生:多</option><option value="?sort=v&order=a" style="background-color: #CCCCCC;">再生:少</option>
<option value="?sort=n&order=d"">コメント:新</option><option value="?sort=n&order=a">コメント:古</option>
<option value="?sort=r&order=d"" style="background-color: #CCCCCC;">コメント:多</option><option value="sort=r&order=a" style="background-color: #CCCCCC;">コメント:少</option>
<option value="?sort=m&order=d"">マイリス:多</option><option value="?sort=m&order=a">マイリス:少</option>
<option value="?sort=l&order=d"" style="background-color: #CCCCCC;">時間:長</option><option value="?sort=l&order=a" style="background-color: #CCCCCC;">時間:短</option></select>
>

[Replace]
Name = 検索ソート変更3(リンク変更)
URL = (?:seiga|www)\.nicovideo\.jp/
Match<
(?<=p \+ "/" \+ encodeURIComponent\(s\))
>
Replace<
 + document.getElementById('SearchSort').value
>

※このままだと「再生:多」が選択されているので、変えたい人はselectedを変えてください。6月最初にあったレイアウト変更に対応

投稿者フィルター削除(2010/02/05)

[Replace]
Name = 投稿者フィルター削除
URL = [^/]+\.nicovideo\.jp/api/getflv[/\?]
Match<
&ng_up=[^&]+
>
Replace<
>

マウスオーバーのちらつき除去(2010/01/17)

[Replace]
Name = マウスオーバーのちらつき除去
URL = www.nicovideo.jp
Multi = TRUE
Match<
(onmouseover=)(".*)(showOBJ\(\'.*\'\);)
>
Replace<
onmousemove="$3" $1$2$3
>

削除済み動画をdeletedフォルダへ移動(2010/08/12)

[Replace]
Name = watchページ
URL = www\.nicovideo\.jp/watch/\w{2}\d+
Require = isDeleted:\s*true,
idGroup = 1
Match<
video:\s*'([a-z]{2}[0-9]+)',
[\s\S]*?</script>
>
Replace<
$0
<iframe src="http://www.nicovideo.jp/cache/ajax_topmove?$1-deleted" height="0" width="0" style="display: none;"></iframe>
<$>
$0
<iframe src="http://www.nicovideo.jp/cache/ajax_topmove?$1low-deleted" height="0" width="0" style="display: none;"></iframe>
>
[Replace]
Name = 外部サムネ
URL = ext\.nicovideo\.jp/thumb/\w{2}\d+
Require = video_deleted.jpg
idGroup = 1
Match<
<a href="http://www.nicovideo.jp/watch/([a-z]{2}[0-9]+)"[^>]+><img [^>]*?video_deleted.jpg"[^>]+></a>
>
Replace<
$0
<iframe src="http://www.nicovideo.jp/cache/ajax_topmove?$1-deleted" height="0" width="0" style="display: none;"></iframe>
<$>
$0
<iframe src="http://www.nicovideo.jp/cache/ajax_topmove?$1low-deleted" height="0" width="0" style="display: none;"></iframe>
>
[Replace]
Name = マイリスト
URL = www\.nicovideo\.jp/mylist/
Match<
<p class="vinfo_length">
>
Replace<
{if \$item.item_data.deleted % 8}
{if \$item.item_data.cacheicon == "icon"}
<iframe src="http://www.nicovideo.jp/cache/ajax_topmove?{\$item.item_data.video_id|escape:url}-deleted" height="0" width="0" style="display: none;"></iframe>
{elseif \$item.item_data.cacheicon == "economy"}
<iframe src="http://www.nicovideo.jp/cache/ajax_topmove?{\$item.item_data.video_id|escape:url}low-deleted" height="0" width="0" style="display: none;"></iframe>
{/if}
{/if}
$0
>
[Replace]
Name = ランキング
URL = www\.nicovideo\.jp/ranking
Require = deletedVideoList
Match<
</head>
>
Replace<
<script type="text/javascript"><!--
if (deletedVideoList && Nico && typeof Nico.onReady == "function") {
	Nico.onReady(function (){
		new Ajax.Request('/cache/cachelist.json', {
			method: 'GET',
			asynchronous: true,
			onComplete: function (xhr, json) {
				var cachelist = (json) ? json : xhr.responseText.evalJSON();
				var A;
				for (var i = 0,len = deletedVideoList.length; i < len; i++){
					var smid = deletedVideoList[i];
					if (A = (cachelist[smid] || cachelist[smid + 'low'])) {
						if (A[1] == "") {
							new Ajax.Request('/cache/ajax_topmove?' + smid + '-deleted', {
								method: 'GET',
								asynchronous: true
							});
						}
					}
				}
			}
		});
	});
}
//--></script> 
$0
>

サムネ拡大(2009/12/12)

[Replace]
Name = サムネ拡大
URL = www\.nicovideo\.jp
Multi = FALSE
EachLine = FALSE
Match<
</head>
>
Replace<
<style type="text/css"><!--
img.video_w64, img.video_w80, img.video_w96, img.video_w128 { width:130px; height:100px; border-width:1px;}
.img_std64, .img_std80, .img_std96, .img_std128 { width:130px; height:100px; border-width:1px;}
--></style>
$0
>

mylist消去サムネ復活(2009/11/16)

[Replace]
Name = mylist消去サムネ復活
URL = www\.nicovideo\.jp/(?:mylist/|my/mylist)
Multi = FALSE
EachLine = FALSE
Match<
title="\{if[^"]+?(\{\$item\.item_data\.thumbnail_url\})\{/if\}"
>
Replace<
title="$1"
>

history消去サムネ復活(2009/11/16)

[Replace]
Name = history消去サムネ復活
URL = www\.nicovideo\.jp/history
Multi = TRUE
EachLine = FALSE
Match<
(<a href="watch/[a-z]{2}(\d+)">)<img src="[^"]+?video_deleted\.jpg"
>
Replace<
$1<img src="http://tn-skr1.smilevideo.jp/smile?i=$2"
>

外部サムネ消去サムネ復活(2009/11/16)

[Replace]
Name = 外部サムネ消去サムネ復活
URL = ext\.nicovideo\.jp/thumb/
Multi = FALSE
EachLine = FALSE
Match<
(<a href="[^"]+?watch/[a-z]{2}(\d+)"[^>]+><img[^>]+?) src="[^"]+?video_deleted\.jpg"
>
Replace<
$1 src="http://tn-skr1.smilevideo.jp/smile?i=$2"
>

メニューをプルダウンに(2010/03/20)

[Replace]
Name = topBar(watch)
URL = www\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
>ランキング</a>
>
Replace<
$0<span id="nlbar"></span> \|
<a href="/cache/">キャッシュ</a> \|
</td><td nowrap>
<a href="javascript:void(0)" onclick="showOBJ('headmenu_nl'); return false;">nlMenu▼</a>
<div id="headmenu_nl" style="position:relative; display:none;">
	<div class="headmenu_g" style="right:0px; text-align:center;" onmouseover="showOBJ('headmenu_nl'); return false;" onmouseout="hideOBJ('headmenu_nl'); return false;">
	<div><a href="/cache/<smid>/movie" style="display:inline-block;">動画保存</a> | <a href="/cache/<smid>/audio" style="display:inline-block;">音声抽出</a><div>
	<div style="border-top:1px #AAA solid; color:#FFF;"><span style="padding:0 4px;">コメ抽出 (<a href="/cache/<memoryId>.xml" style="display:inline-block;">通常</a><a href="/cache/_<memoryId>.xml" style="display:inline-block;">投コメ</a>)</span><div>
<a style="text-decoration:none;" href="javascript:void(0)" onclick="var nl_delBtn=this;new Ajax.Request('http://www.nicovideo.jp/cache/ajax_rm?<smid>',{method:'get',onSuccess:function(h){if(h.responseText=='OK'){nl_delBtn.style.display='none';}}})">動画を削除</a>
	</div>
</div>
</td><td>
<span><!--nlbar_end--></span>
>

※「05_topBarFilter.txt」に書いてある「topBar(watch)」と交換して使ってください

topBar左側をプルダウンに(2010/02/22)

[Replace]
Name = topBar左側プルダウン
URL = www\.nicovideo\.jp/
Multi = FALSE
EachLine = FALSE
Match<
<td><strong style="color:#FFF;">ニコニコ</strong>[^<]+
(<a[^>]+>動画</a>) \| (<a[^>]+>静画</a>) \| (<a[^>]+>生放送</a>) \| (<a[^>]+>チャンネル</a>)
>
Replace<
<td nowrap onmouseover="showOBJ('site_jump_nl');"><span style="color:#CCC; text-decoration:underline;">ニコニコ▼</span>
<div id="site_jump_nl" style="position:relative; display:none;" onmouseover="showOBJ('site_jump_nl'); return false;">
	<div class="headmenu_g" onmouseout="hideOBJ('site_jump_nl'); return false;" style="left:-8px;">
	<!--site_jump_stert-->
	$1
	$2
	$3
	$4
	<!--site_jump_end-->
	</div>
</div>
</td><td>
>

nlAnimeChannelRewriter の簡易nlFilter版(2009/06/18)

nlAnimeChannelRewriter の簡易nlFilter版
http://nicolist.net/nicocache_nl/up/img/nl174.zip

Wrapper使用で動画タイトルに「@」が含まれる動画の不具合回避(2010/01/19)

[Replace]
Name = wrapper_@
URL = www.nicovideo.jp/watch/
Multi = TRUE
Match<
(so.addVariable\("(wv_title|thumbTitle)", "[^"]*?")
>
Replace<
$0.replace(/%40/g,"%EF%BC%A0")
>

※Wrapper使用で動画タイトルに「@」が含まれる動画を再生しようとすると 「ローカル記憶領域」ダイアログが毎回表示される不具合を回避します

nlApiUtilExtension用フィルタ

FaMyList TopBar(2010/02/22)

[Replace]
Name = FaMyList TopBar
URL = www\.nicovideo\.jp/mylist/(\d+)
Multi = FALSE
EachLine = FALSE
Match<
<!--nlbar_end--></span>
>
Replace<
$0 |
</td><td nowrap>
<a href="javascript:void(0);" onclick="showOBJ('FaMyList'); return false;">FaMyList▼</a>
<div id="FaMyList" style="position:relative; display:none;">
	<div class="headmenu_g" onmouseover="showOBJ('FaMyList'); return false;" onmouseout="hideOBJ('FaMyList'); return false;">
	<a style="text-decoration:none;" href="/cache/ids?famylist">FaMyListに移動</a>
	<div id="a_1" style="color:#CDD;"><a style="text-decoration:none;" href="javascript:void(0);" onclick="getFIAdd2('$URL1','fa','a_1');">FaMyListに追加</a></div>
	<div id="r_1" style="color:#CDD;"><a style="text-decoration:none;" href="javascript:void(0);" onclick="getFIRemove2('$URL1','fa','r_1');">FaMyListから消去</a></div>
	<script type="text/javascript" src="/local/nlApiUtilExAdd.js"></script>
	</div>
</td><td>
>

InfiMyList TopBar(2010/02/22)

[Replace]
Name = InfiMyList TopBar
URL = www\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
<!--nlbar_end--></span>
>
Replace<
$0 |
</td><td nowrap>
<a href="javascript:void(0);" onclick="showOBJ('FaMyList'); return false;">FaMyList▼</a>
<div id="FaMyList" style="position:relative; display:none;">
	<div class="headmenu_g" onmouseover="showOBJ('FaMyList'); return false;" onmouseout="hideOBJ('FaMyList'); return false;">
	<a style="text-decoration:none;" href="http://www.nicovideo.jp/cache/ids?infimylist">InfiMyListに移動</a>
	<div id="a_1" style="color:#CDD;"><a style="text-decoration:none;" href="javascript:void(0);" onclick="getFIAdd2('<memoryId>','infi','a_1');">InfiMyListに追加</a></div>
	<div id="r_1" style="color:#CDD;"><a style="text-decoration:none;" href="javascript:void(0);" onclick="getFIRemove2('<memoryId>','infi','r_1');">InfiMyListから消去</a></div>
	<script type="text/javascript" src="/local/nlApiUtilExAdd.js"></script>
	</div>
</td><td>
>

watchページにコメント一覧を埋め込む(2010/01/31)

[Replace]
Name = コメント一覧表示
URL = www\.nicovideo\.jp/watch/
Multi = FALSE
EachLine = FALSE
Match<
<div id="WATCHFOOTER">(?s:.+?)(?=</p>)
>
Replace<
$0
<span class="font12" style="color:#CCC; float:right;">
	<a href="javascript:void(0);" onclick="showOBJ('nlApiUtil_2'); showOBJ('nlApiUtil_3'); hideOBJ('nlApiUtil_1'); return false;" style="display:block;" id="nlApiUtil_1">コメントを表示</a>
	<a href="javascript:void(0);" onclick="showOBJ('nlApiUtil_1'); hideOBJ('nlApiUtil_2'); hideOBJ('nlApiUtil_3'); return false;" style="display:none;" id="nlApiUtil_2">コメントを非表示</a>
</span>

<iframe src="/cache/ids?data=<memoryId>&cdh" style="display:none; width:100%; height:253px; border-width:0px;" id="nlApiUtil_3"></iframe>
>

フィルタ編集支援

正規表現

Javaの正規表現が使えます。

フィルタのリロード(NicoCache_nlの再起動)

※現在はファイルの更新日時を見て自動リロードするのでこの記述は必要無いはず

バッチファイルを書いて簡略化できます

taskkill.exeがない環境(WinXP Home等)はググれば簡易版がフリーで手に入るので
それを使うといいでしょう

Restart.bat を作成、以下の3パターンのいずれかのように記述

 1.NicoCache_GUI 併用  

taskkill /f /im javaw.exe
call NicoCacheGUI.bat
exit


2.GUI未使用

taskkill /f /im javaw.exe
call NicoCache_nl.bat


3.GUI未使用、起動後最小化

taskkill /f /im javaw.exe
start /min NicoCache_nl.bat

コメント

最新の10件を表示しています。 コメントページを参照

  • テスト -- 2008-07-28 (月) 04:55:03
  • 適当に分類してみる -- 2008-07-28 (月) 15:01:05
  • 色々まとめて削除の備考を修正。ページ上部広告削除って色々まとめて削除機能と重複してませんか?私は詳しく分かる訳では無いのですが・・・ -- 2008-08-02 (土) 00:33:30
  • 重複してますけど上部広告削除のフィルタを作ったのが私ではないためちょっと忍びなかったり。消しても問題はないと思いますよ -- 2008-08-05 (火) 11:25:50
お名前:


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-08-28 (土) 00:03:36 (11d)