Волшебные выражения
Скрипт обладает широкими возможностями по пользовательскому управлению загруженным на странице контентом, включая скрытие постов по различным условиям, и замену содержимого посредством регулярных выражений. В связи с тем, что скрипт находится в состоянии перманентной разработки, набор управляющих слов может изменяться и дополнятся.
Простая строка
Каждая операция вводится с новой строки в текстовое поле настроек. Простая строка, введенная в поле, позволяет скрыть посты, содержащие эту строку в тексте, либо в поле “тема”. При этом, регистр и разметка в посте не имеют значения. Если строка встречается в оп-посте, скрывается весь тред (если у вас включена опция "Фильтровать треды"
). Пример – скрыть посты "Привет, %boardname%, есть одна тян"
, "Ньюфаги не умеют трифорсить"
, "Очередной ЕОТ-тред"
:
есть одна тян
трифорс
еот
Вышеприведенная конфигурация будет действовать во всех досках и тредах, где работает скрипт.
#доска/номер_треда
Если вы хотите применить фильтр к постам конкретного треда или доски, используйте оператор #доска/номер_треда. Примеры:
#b/32768 свиной эякулянт
#s/65536 соснули
#vg/ yoba
#b/ тян
#op
Оператор #op позволить указать область действия ваших выражений применительно к ОП-постам, тем самым получая возможность скрывать треды, не затрагивая обычные посты. Обратите внимание, что при использовании оператора #доска/
, оператор #op
нужно указывать вторым. Также учтите, что он, по понятным причинам, не действует на странице треда, и не совместим с операторами #skip
, #num
, #rep
и #outrep
. Примеры:
#op triforce
– скрыть треды на любой доске со словом “triforce” в тексте/теме оп-поста
#op ^
– то же самое, для символа трифорса
#a/ #op Touhou
– скрыть треды на доске /a/ со словом Touhou в тексте/теме оп-поста
#b/ #op #exph /hurr|durr|derp/ig
– скрыть треды в /b/ со словами hurr, durr или derp в содержимом оп-поста
#skip
Для того, чтобы исключить посты из области действия любых фильтров, используйте оператор #skip [список]. В списке должны перечисляться через запятую порядковые номера постов в виде диапазонов x1-x2
, либо отдельными номерами. Примеры:
#b/16384 #skip 10
– занести в “белый список” 10 пост в треде 16384 доски b
#a/32768 #skip 20-70
– посты c 20 по 70 в треде a/32768
#b/65536 #skip 10-15, 20, 40-50, 60-70, 72, 80-100
– сложное перечисление
#b/131072 #skip 0-9000
– не применять никаких фильтров к треду b/131072, и его постам
#num
Обратную задачу, безусловное прямое скрытие постов по порядковым номерам, выполняет оператор #num [список]. Примеры:
#b/32768 #num 80-150
– скрыть посты c 80 по 150 в треде b/32768
#b/65536 #num 200-215, 240, 256, 300-400
– скрыть перечисленные посты в b/65536
#sage
Оператор #sage позволяет скрыть посты с сажей. Он также автоматически добавляется по клику на иконку сажи в заголовке поста. Обратите внимание, что в открытом треде при этом добавится #доска/номер_треда #sage
, а при клике на странице доски – #sage
. Примеры:
#b/32768 #sage
– скрыть посты с сажей в треде b/32768
#sage
– cкрыть сажу по всей борде
В дальнейшем будет подразумеваться, что любой оператор может работать как глобально по всему имиджборду, так и в отдельных тредах совместно с оператором #доска/номер_треда.
#notxt
Оператор #notxt позволяет скрыть посты, не содержащие текста. Этот оператор добавляется в список автоматически, если выбрать меню "Скрыть схожий текст"
по кнопке скрытия поста/треда, при условии, что в посте нет текста (а содержится, например, лишь картинка). Синтаксис:
#notxt
#noimg
Оператор #noimg скрывает посты, не содержащие прикрепленных изображений. Этот оператор добавляется в список автоматически, если выбрать меню "Скрывать изображение"
или "Скрыв. схожие изобр."
по кнопке скрытия поста/треда, при условии, что в посте нет прикрепленного изображения. Синтаксис:
#noimg
#trip
Оператор #trip скрывает посты, содержащие трипкод:
#trip
#tmax
Оператор #tmax [N] скрывает посты с текстом, который имеет длину, большую, чем N
символов. Пример:
#tmax 800
– cкрывать посты с текстом, большим, чем 800 символов
#name
Для борьбы с неймфагами, используйте оператор #name [имя][!трипкод][!!трипкод]. Например, скрыть неймфага Sage-kun!Canc3RL0L4!!H5Yfe4PW
можно такими способами:
#name Sage-kun!Canc3RL0L4!!H5Yfe4PW
#name Sage-kun!Canc3RL0L4
#name Sage-kun
#name !Canc3RL0L4
#name !!H5Yfe4PW
#name !Canc3RL0L4!!H5Yfe4PW
#exp
Оператор #exp [выражение] позволяет использовать регулярные выражения для поиска и скрытия по текстовому содержимому поста, без учета разметки. Подробнее с регулярными выражениями вы можете ознакомиться, например, здесь и здесь. Выражение должно иметь вид /шаблон/
, либо /шаблон/i
, где i
– флаг нечувствительности к регистру. Прочие флаги для оператора #exp
бесполезны, так как пост скрывается при первом найденном совпадении. Примеры:
#exp /\u25b2\s\u25b2/
– скрыть трифорсы
#exp /(>>\d+\s*){8}/
– скрыть вайп »ссылками
#exp /[оа]н[ие]м[еэу][^а-я]/i
– аниме, Аниму, ОНЕМЭ, и т.д.
#exp /кукл\[оа]([её]б|бляд|быдл)/i
#exp /^[^A-ZА-Я\.]+$/g
– скрыть посты без заглавных букв и точек
Важно! Перед использованием #exp, подумайте о целесообразности его использования, если вместо этого можно воспользоваться более быстрым простым поиском. Например, вместо #exp /ололо/i
и #exp /!!!1/
гораздо более логичным было бы ввести строки ололо
и !!!1
, соответственно.
#exph
Оператор #exph [выражение] дает возможность скрывать посты, применяя к их html коду регулярные выражения. Это позволяет делать анализ по разметке и структуре поста. Обратите внимание, что данный оператор выполняется медленнее, чем #exp
, но охватывает все содержимое поста, тогда, как #exp
проверяет только само текстовое сообщение. Примеры использования:
#exph /(< strong> |< b> )[А-Я]+/
– скрыть посты с жирным капслоком
#exph /(< br> \s*){4}/i
– скрыть вайп пустыми строками (переносами строки)
#exph /mailto:sage/i
– аналог оператора #sage
#exph /< span[^> ]+postertrip/i
– аналог оператора #trip
#op #exph /(new|old)fags can.*t/i
– скрывать “Newfags can’t triforce” треды
#op #exph /\/sticky\.png/i
– автоскрытие закреплённых тредов, например
#exph /src="\/images\/balls\/fi.png"/
– скрыть все посты из Финляндии на krautchan.net/int/
#rep
Оператор автозамены #rep [выражение] [замена] позволяет изменять html код тредов посредством регулярных выражений по усмотрению пользователя. После внесения команды в список, изменения произойдут только при обновлении страницы. В регулярном выражении обязателен флаг /g
, чтобы изменения происходили по всем найденным совпадениям. Примеры использования:
#rep /Вася/g Петя
– примитивная замена слова
#rep /chrome|хром/ig псевдобраузер
#rep /-red-(.*?)-red-/ig < font color="red"> $1< /font>
– можно писать -red-красным-red-
#rep /(г[оа]вн|школ|ху[ийеёя]|пизд|пид.?р|п[еи]ту[хш]|сперм|параш|[^\s]бляд|бугурт|б.т+х.рт|сосн|с[ьъ]еб|еба[лнт]|тро[ль]+|ололо)[а-я]*/ig ко-ко-ко-ко
– “Милости прошу к нашему шалашу!”
#s/ #rep /([^a-zа-я])(?:(?:GNU|ЖМУ|ГНУ).?)?(?:linu(?:x|ks)|лин\[еуа](?:[кп]с|х)(?:а|е|о[мв]|у)?|debian|gentoo|arch|fedora|slackware|(?:open)?suse|red ?hat|RHEL|[a-z]?ubuntu|(?:[а-я]?убунт|(?:г|дж)ент|федор|слак)(?:а|у|ой|е)|(?:дебиан|арч)(?:[ое]м|ч?ик|е|а|у)?|сус(?:я|ю|ей))/ig $1ПитухОС
– автозамена для /s
#rep /< span[^> ]+color[^> ]+> сосницкий< \/span> /ig школьник
– исправление автозамены на 2ch.so
#outrep
Оператор автозамены #outrep [выражение] [замена] позволяет изменять текст сообщения при его отправке на сервер, и будет полезен, например, при обходе автозамены. Примеры использования:
#outrep /быдло/ig б*ы*дло
#b/ #outrep /школьник/ig школь[b][/b]ник
#img
Оператор #img [><=][вес[-вес2]][@{ширина[-ширина2]}x{высота[-высота2]}] позволяет скрывать посты по числовой информации о прикрепленных картинках, посредством сравнения параметров их веса, ширины и высоты. Отметьте, что в скрипте для указания веса картинки на любых имиджбордах, имеется унифицирована запись, с умножением числа Мб на 1000, делением числа байт на 1000, и с округлением до двух цифр после 0, при нецелых значениях. К примеру, если в посте указано текстом 100KB, то нужно ввести 100. Аналогично: 100.85KB = 100.85, 1.84MB = 1840, 150955B = 150.96, 760B = 0.76
. Если вам лень вводить параметры изображения и вычислять их вес, вы можете выбрать меню "Скрывать изображение"
кнопки скрытия поста/треда, и этот оператор добавляется в список автоматически. Вам остается только отредактировать условия. Примеры использования с точными значениями, без указания диапазона:
#img <35@640x480
– скрыть посты с картинками меньше 35Кб, и размером меньше 640x480
#img >@640x480
– скрыть все посты с картинками больше 640x480
#img <@300x100
– скрыть все посты с картинками меньше 300x100
#op #img =@900x700
– скрыть треды с картинками размером 900x700
#a/32768 #img =180.50
– скрыть все посты с картинками весом в 180.5Кб в треде a/32768/
#b/ #op #img >1500
– скрыть треды с картинками весом больше 1.5 Мб на доске /b/
#img <1
– скрыть все посты с картинками весом меньше 1 Кб
Примеры с указанием диапазона значений в качестве параметра. Обратите внимание, что литералы >
и <
чувствительны только к первому значению диапазона:
#img =30-60@640x480
– скрыть посты с картинками весом от 30 до 60 Кб, с размером 640x480
#img =29.80-30.20
– скрыть посты с картинками весом от 29.8 до 30.2 Кб
#img =@300-500x500-700
– скрыть посты с картинками размером от 300x500 до 500x700
#img =75@700-900x200
#img <200-300
– эквивалентно #img <200
#img >@800-1000x600
– эквивалентно #img >@800x600
#imgn
Оператор #imgn [выражение] позволяет скрывать посты, применяя регулярные выражения непосредственно к текстовой информации прикрепленных картинок/файлов. Например, для досок с информацией вида (1040 KB, 900x700, Trollface.gif)
, это может выглядеть так:
#imgn /\.gif/i
– скрыть все посты с .gif-файлами
#imgn /trollface/i
– скрыть все посты, содержащие имя файла trollface
#imgn /Trollface\.gif/
– скрыть все посты, содержащие файл Trollface.gif
#imgn /1040 KB/
– аналог #img =1040, плюс – выполняется быстрее, минус – привязано к особенности текущего имиджборда. На другом имиджборде это может быть “1040Кб”, либо “1.04 Mb”, например
#imgn /900x700/
– аналог #img =@900x700, выполняется быстрее. Учтите, на некоторых имиджбордах вместо “x” может быть другой символ, например, “?”.
#video
Оператор #video [выражение] позволяет скрывать посты, применяя регулярные выражения к названиям загруженных youtube-видеороликов, при включенной опции "Загружать названия к YouTube-ссылкам*"
:
#video /rickroll/i
– скрыть посты с youtube-рикроллом
#video /\+100500/
– скрыть посты с видео от “+100500”
#video /vocaloid|miku|iosys|nya|neko|japan|touhou|anime/i
- скрыть по всем перечисленным совпадениям в названии
#theme
Оператор #theme [выражение] позволяет скрывать содержимое, применяя регулярные выражения к Теме в постах:
#op #theme /официальный/i
– скрыть “Официальные” треды
#theme /sage/i
– скрыть посты с sage в поле темы
#theme /./
– скрыть любой пост/тред, содержащий тему
#ihash
Оператор #ihash [хеш] позволяет интеллектуально скрывать схожие изображения, сравнивая их хеш-код, получаемый методом фильтрации и вычисления контрольной суммы. Для этого наведите курсор на кнопку скрытия поста с изображением, и выберите в меню "Скрыв. схожие изобр."
. Сгенерированный хеш с оператором скрытия автоматически добавится в список выражений. Если пост не содержит изображений, в список добавится оператор #noimg
, и скроются все посты без картинок. Пример полученных выражений:
#ihash 603323568
– все посты с изображениями, соответствующими данному хеш-коду, будут скрыты.
#ihash 267050447