1

I don't like scripts that use:

// @include http://*

they overload many pages, where we didn't want to, also because I had problems in past, while writing a script, console was full of errors produced by scripts of this kind. I recognize scripts like these ones anti-adblock , noPicAds are on my required list, but in order to use them I change the includes to the specific page I use. Let's suppose, I entered on a webpage and it says: "You need to disable Adblock" so I grab the url, go manually and edit the anti-adblock script adding

// @include http://example.com/*

refresh the page and it's working. Now when the scripts update, everything is lost. No I don't want to stop updating, because I think these kind of scripts are essentially needed to stay updated.

My question is, there's anyway to keep include changes after update?

Commentator
  • 640
  • 1
  • 6
  • 22

2 Answers2

1

If the problem is include/exclude, you can override it with your own user preferences which stays on after script update.

Go to Add-ons - User Scripts ('Ctrl+ Shift + a' on Firefox)
Click on the Script's Option
Under User Settings Tab, Add Included/Excluded Pages that you want the script to run on Click OK

More Info: User Specified Rules

Since Greasemonkey 0.9.9, users have been able to specify their own exclude and include values through the script options dialog in the Add Ons Manager. Thus, each script has its own rules plus optionally the user's rules.

The user's rules are checked first, then the script's rules are checked. If any exclude matches the page, the script does not run. If any include matches the page, the script will run. If a script include matches, but a user exclude also matches, the user exclude will take precedence over the script, and it will not run. If a script exclude matches, but a user include also matches, the user include will take precedence over the script, and it will run.

For example under Excluded Pages try: http://*

erosman
  • 7,094
  • 7
  • 27
  • 46
  • 1
    Thanks for answer, but did not solve, still runs on every page, because script include is http*://* – Commentator Aug 07 '14 at 21:20
  • If I keep the list of websites on user settings I still have to change the user script and replace http://* for one website, but it's better than before, because the list is saved there. So I don't need to grab a list of includes saved and paste. – Commentator Aug 07 '14 at 21:30
  • It looks like exclude has the priority, once I used the script did not work for any page. So what I have is, the list of sites on user settings include and http://* on user settings exclude, plus, include http://* on script settings, which is default from the script. – Commentator Aug 08 '14 at 17:45
  • erosman I found a solution, which didn't pleasant me, but looks like is the only way. Thank you for your support. – Commentator Aug 11 '14 at 02:00
1

I was told and verified that with scriptish extension it is possible to solve. This topic.

I hope the greasemonkey developers implement this. So the best answer so far would be, migrate to scriptish and use the check box that disables script include patterns. Unfortunately, I've already experimented scriptish in past and didn't familiarize.

While greasemonkey doesn't has a solution, I'm going to use both, scriptish only for the scripts with @include http://*

Commentator
  • 640
  • 1
  • 6
  • 22