What is meta? ×
Meta Stack Exchange is where users like you discuss bugs, features, and support issues that affect the software powering all 134 Stack Exchange communities.

I maintain an extensive list of interesting/ignored tags, and add to it almost daily. It would be extremely usefull to be able to click on a tag in the question and have the option of adding it to the interesting or ignored list.

It is really a conveniance feature but could potentail be usefull for others and highlight the use of tags much more effectively.

A similiar request was posted here.

share|improve this question

5 Answers 5

up vote 7 down vote accepted

It could be just a small '+' and/or '-' sign next to each tag (depending on it already being in your favorite or ignore tags), which only become visible when you hover over the tag (like with voting or flagging comments), then it isn't intrusive and very easy to use.

share|improve this answer
1  
Would be lovely! –  rdkleine Sep 16 '09 at 19:09
    
DO WANT. Would be great. If only I could actually filter ignored questions from the main page too... –  Eddie Parker Jan 15 '10 at 1:59

It would have to be some other button next to or near it, since clicking on the tag gives you questions in that tag.

I for example only have 6 interesting tags and 1 ignored tag and it has stayed that way since the introduction of the feature.

So it would not interest me.

share|improve this answer

I liked this feature request, so I figured I'd build a greasemonkey version...

Once installed, all tag links across the site, no matter what page they're on, will display a drop down menu if you hover over them (click functions as it always did and the hover only triggers after a half second delay so it doesn't annoyingly popup everywhere unless you make the deliberate choice to). The menu contains two links for adding/removing to interesting/ignored tag lists.

Enjoy.


hovertastic


The code:

(function() {
    function GM_wait() {
        if (typeof unsafeWindow.jQuery == 'undefined') { 
            window.setTimeout(GM_wait,100); 
        } else { 
            $ = unsafeWindow.jQuery; letsJQuery(); 
        }
    }
    GM_wait();
    function letsJQuery() {
        $(function() {
            var timeout;
            var overMenu = false;
            $(".post-tag").unbind("mouseenter").mouseenter(function() {
                var link = $(this).attr("title", "");
                timeout = setTimeout(function() {
                    $("#tagMenu").remove();
                    var menu = $("<div id='tagMenu'/>").hide().css({
                        position: "absolute",
                        left: link.offset().left + "px",
                        top: (link.offset().top + link.outerHeight()) + "px",
                        backgroundColor: $("#topbar").css("background-color"),
                        border: "solid 1px " + link.css("border-bottom-color"),
                        textAlign: "left",
                        padding: "0 10px"
                    }).appendTo("body").hover(function() {
                        overMenu = true;
                    },function() {
                        overMenu = false;
                        $("#tagMenu").remove();
                    });

                    var linkCss = { display: "block", padding: "5px 0" };
                    var tagName = link.text();
                    var interesting = $("<a>Loading Interesting Tags...</a>").css(linkCss).appendTo(menu);
                    var ignored = $("<a>Loading Ignored Tags...</a>").css(linkCss).appendTo(menu);

                    getTags(function() {
                        if ($("#interestingTags").text().indexOf(tagName) > -1) {
                            interesting.html("Remove <b>" + tagName + "</b> from Interesting Tags")
                                .click(function() { $("#interestingTags .post-tag:contains('" + tagName + "') + span.delete-tag").click(); menu.remove() });
                        } else {
                            interesting.html("Add <b>" + tagName + "</b> to Interesting Tags")
                                .click(function() { $("#interestingTag").val(tagName); $("#interestingAdd").click(); menu.remove(); });
                        }

                        if ($("#ignoredTags").text().indexOf(tagName) > -1) {
                            ignored.html("Remove <b>" + tagName + "</b> from Ignored Tags")
                                .click(function() { $("#ignoredTags .post-tag:contains('" + tagName + "') + span.delete-tag").click(); menu.remove(); });
                        } else {
                            ignored.html("Add <b>" + tagName + "</b> to Ignored Tags")
                                .click(function() { $("#ignoredTag").val(tagName); $("#ignoredAdd").click(); menu.remove(); });
                        }
                    });

                    function getTags(andThen) {
                        if ($("#interesting-tags").length > 0) {
                            andThen();
                        } else {
                            $("<div/>").hide().appendTo("body")
                                .load($("#hlinks-user > a:eq(1)").attr("href") + "?tab=preferences #interesting-tags",
                                    function() {
                                        unsafeWindow.preffkey = $("#fkey").val();
                                        try { unsafeWindow.initTagPrefs(); } catch(e) {}
                                        andThen();
                                    });
                        }
                    }

                    menu.slideDown("fast");
                }, 500);

                return false;
            });

            $(".post-tag").unbind("mouseleave").mouseleave(function() {
                clearTimeout(timeout);
                setTimeout(function() {
                    if (!overMenu) {
                        $("#tagMenu").remove();
                    }
                }, 100);
            });
        });
    }
})();

Code should work across all sites (tested on http://stackoverflow.com/* and http://meta.stackoverflow.com/*).

share|improve this answer

Was about to request the same feature. I would like this as well. A few options:

  • drop down context list from clicking the tag
  • the tags on the lists already have the X icon, perhaps add other icons for tags on no lists to ignore/interested them.
  • the least intrusive option, when you click on a tag and go to its search page, have an option to add to a list on that page.
share|improve this answer

I was going to suggest exactly that. Being able to do this from any page (not only from the tag page as the linked question) would be very good.

To avoid cluttering the interface for those who, like Ólafur, don't see much use in the feature, maybe the "+/-" signs would be visible only to users who have added a certain number of tags to their interesting/ignored lists.

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .