# Is there an AND operations on ignore/favorite lists (possible feature request)

I just started using tags and I was wonder if there was an AND type of operations. So, for example, suppose I have no problem homework or calculus but I am tired of seeing calculus and homework so I would add something like "(calculus $\land$ homework)" to my ignore list. This makes it so if a question has the homework tag but not the calculus tag I could still see it. Does something like that already exist? If not I would like to request this feature.

• No, it does not currently exist. It's a reasonable feature request, though unlikely to be implemented (as most feature requests are). Are you open to the possibility of using a userscript/extension in your browser to the same effect? – ˈjuː.zɚ79365 Jun 17 '13 at 5:43
• @ˈjuː.zɚ79365 I would be willing to use an extension to get the same effect. Is there one that does this already? – Paul Plummer Jun 17 '13 at 5:46

Ignored questions are hidden on the client side: they are present on pages you load from SE, but get hidden by a script. So it makes sense to use another client-side script to make the filtering smarter. The script below improves on the built-in mechanism in two ways:

• it is possible to ignore tag combinations such as homework AND calculus
• a question that has at least one of your favorite tags will not be hidden

The list of ignored tags should be entered as the variable ignored, separated by commas. Each must be preceded by .t-: for example, .t-big-list, .t-analysis. To ignore a tag combination, concatenate two (or more) tags: .t-homework.t-calculus. See the second line here:

$(document).ready(function() { var ignored = '.t-homework.t-calculus, .t-analysis, .t-soft-question';$('.question-summary').each(function() {
if (!question.is('.tagged-interesting')) {
var question = $(this); question.find('.tags').each(function() { if ($(this).is(ignored)) { question.css('display', 'none'); }
}); } }); });


To make this script run in your browser, some extra work is needed. One option is to turn it into userscript by adding a metablock, as is done below. I tested this userscript under Greasemonkey in Firefox.

// ==UserScript==
// @name        Hide questions
// @namespace   Math.SE scripts
// @description ignored = '.t-A.t-B, .t-C' hides (A AND B) OR C
// @include     http://math.stackexchange.com/*
$(document).ready(function() { var ignored = '.t-homework.t-calculus, .t-analysis, .t-soft-question';$('.question-summary').each(function() {
var question = $(this); question.find('.tags').each(function() { if ($(this).is(ignored)) { question.css('display', 'none'); }

Although in principle Chrome can take userscripts, automatically converting them into extensions, @require is problematic (at least for me). One possibility (untested) is to use Tampermonkey. Another is to turn the script into self-contained extension (see readme.txt for installation steps).