Greasemonkey


Greasemonkey is a Mozilla Firefox extension that allows users to install scripts that make on-the-fly changes to web page content after or before the page is loaded in the browser also known as augmented browsing

The changes made to the web pages are executed every time the page is viewed, making them effectively permanent for the user running the script

Greasemonkey can be used for customizing page appearance, adding new functions to web pages for example, embedding price comparisons within shopping sites, fixing rendering bugs, combining data from multiple web pages, and numerous other purposes

Contents

  • 1 History
    • 11 Userscriptsorg
  • 2 Technical details
    • 21 User scripts
  • 3 Compatibility
  • 4 Equivalents for other browsers
  • 5 See also
  • 6 References
  • 7 External links

History

The Greasemonkey project began 28 November 2004, written by Aaron Boodman[4][5][6] Boodman was inspired to write Greasemonkey after looking at a Firefox extension designed to clean up the interface of Allmusic[7] This extension was written by Adrian Holovaty, who later became a userscript developer By May 2005, there were approximately 60 general and 115 site-specific userscripts distributed for Greasemonkey[7] During this time, a Greasemonkey compiler was also developed for converting a userscript into a standalone Firefox extension[8] Greasemonkey was initially met with complaints by publishers, for its ability to block ads[9] However, this criticism shifted its focus to other addons starting with the 2006 release of Adblock Plus

Userscriptsorg

To accommodate the growing number of scripts, userscriptsorg was founded by Britt Selvitelle and other members of the Greasemonkey community in late 2005 Userscriptsorg was open sourced in 2007 but the site later moved away from this code base[10] As the main script repository listed on Greasemonkey's official site, userscriptsorg accumulated thousands of scripts per year

In 2010, the last known admin Jesse Andrews posted that the site was in maintenance mode due to lack of time and asked for a new maintainer to volunteer[11] Nevertheless, he remained the sole admin of the site until a discussion about install counts began on 1 April 2013[12] Prior to this, many of the "most popular scripts" as listed by the site had nominal install counts of zero Over the following year spam scripts became more common, server downtime increased and the install count bug remained[13] With no further communication by Andrews, userscript writers described the site as neglected and the official Greasemonkey site removed its front page link[14][15] In response, script writers and other developers began working on the fork "openuserjsorg",[16][17] and later greasyforkorg,[18] as an immediate replacement[19]

In May 2014, userscriptsorg became inaccessible on port 80, prompting users to access it on port 8080 instead[13] In August 2014, the site was shut down completely Most of its scripts were backed up to the static mirror "http://userscripts-mirrororg"[20] where they can now be found[13]

Technical details

Greasemonkey user scripts are written in JavaScript and manipulate the contents of a web page using the Document Object Model interface Scripts are generally written to be either page-specific or domain-specific applying to all pages within a domain but may also be tagged to apply to all domains for global browser enhancements Users of Greasemonkey can write or download scripts and save them to their own personal library When users visit a website matching a script in their personal script library, Greasemonkey invokes the relevant scripts

Greasemonkey scripts can modify a webpage in any way that JavaScript allows, with certain Greasemonkey security restrictions Scripts can also access other web pages and web services via a non-domain-restricted XMLHTTP request, allowing external content to be merged with the original page content

Scripts are named somenameuserjs, and Greasemonkey offers to install any such script when a URL ending in that suffix is requested Greasemonkey scripts contain metadata which specifies the name of the script, a description, resources required by the script, a namespace URL used to differentiate identically named scripts, and URL patterns for which the script is intended to be invoked or not

Writing a Greasemonkey script is similar to writing JavaScript for a web page, with some additional allowances such as cross-site XMLHttpRequests Compared to writing a full-fledged Firefox extension, user scripting is a very modest step up in complexity from basic web programming However, Greasemonkey scripts are limited due to security restrictions imposed by Mozilla's XPCNativeWrappers[21] For example, Greasemonkey scripts do not have access to many of Firefox's components, such as the download manager, I/O processes or its main toolbars Additionally, Greasemonkey scripts run per instance of a matching webpage Because of this, managing lists of items globally is difficult However, script writers have been using cookies and Greasemonkey even offers APIs such as GM_getValue and GM_setValue to overcome this

User scripts

File hosting servers for Greasemonkey require that the URLs for the scripts end with userjs and not with a MIME type like text/html Support for HTTPS will meet with Greasemonkey's built in update checker As of February 2016, the Greasemonkey project lists three recommended user script hostings:[19]

  • Gist, a pastebin service operated by GitHub where simple files are hosted Files can be pasted into a web form and saved HTTPS is used by default Files may follow the naming scheme with the "userjs" suffix for the URL serving as an install link
  • Greasy Fork, a HTTPS site created by the maintainer of http://userstylesorg/[18]
  • OpenUserJSorg, a HTTPS site that started as a fork for the deprecated script repository userscriptsorg[16][17]

Compatibility

Greasemonkey is available for Firefox, Flock and Web formerly called Epiphany The Greasemonkey extension for Web is part of the Web extensions package However, this extension is not fully compatible as of release 2151, since some Greasemonkey API functions eg GM_getValue are unsupported There are also custom versions for SeaMonkey[22][23] and Songbird[24]

Equivalents for other browsers

Chrome has browser extensions that enable the installation of user scripts[25][26][27] Chrome had limited[28][29] "native support" for Greasemonkey scripts in February 2010 by internally converting them to extensions[30] Support for these user created extensions and other unsigned extensions was removed in May 2014 from the MS Windows builds of Chrome[31]

On Safari for Mac and other WebKit applications, there is a SIMBL-managed plug-in called GreaseKit Since the release of Safari 5 there is an extension called NinjaKit that uses the new API interface[32] Fluid is a site-specific browser with integrated GreaseKit

The Kango[33] framework allows creating extensions for Firefox, Chrome, Internet Explorer, Opera, and Safari using the same JavaScript code for all these browsers Kango supports[34] user scripts

See also

  • software portal
  • Scriptish, a fork of Greasemonkey
  • List of augmented browsing software
  • List of Firefox extensions
  • ShiftSpace, an extensible platform for annotating and modifying web content, built on top of Greasemonkey

References

  1. ^ "The weblog about Greasemonkey" 
  2. ^ "The greasemonkey network graph" 
  3. ^ "Initial Greasemonkey Release" 
  4. ^ "Greasemonkey Project Info" 
  5. ^ Pilgrim, Mark 2005 Greasemonkey Hacks O'Reilly 
  6. ^ "Aaron Boodman wrote Greasemonkey in 2004" 
  7. ^ a b Singel, Ryan 17 May 2005 "Firefox Users Monkey With the Web" Wired magazine 
  8. ^ Nivi 8 May 2005 "Greasemonkey will blow up business models as well as your mind" Archived from the original on 5 February 2008 Retrieved 22 July 2010 
  9. ^ Festa, Paul 24 March 2005 "Firefox add-on lets surfers tweak sites, but is it safe" CNET 
  10. ^ Selvitelle, Britt 3 January 2007 "Userscriptsorg Opensource!" Archived from the original on 17 January 2007 Retrieved 21 May 2014 
  11. ^ "Passing the torch on userscriptsorg" Hacker News 2010 Retrieved 24 October 2014 
  12. ^ "Fixing Install Counts" 1 April 2013 Archived from the original on 3 November 2013 Retrieved 21 May 2014 
  13. ^ a b c Brinkmann, Martin 9 May 2014 "Userscriptsorg down for good Here are alternatives" Retrieved 21 May 2014 
  14. ^ "User Script Hosting" 16 May 2014 Retrieved 21 May 2014 
  15. ^ "Please change the official userscript site" greasemonkey-dev Mailing list 21 April 2014 Retrieved 21 May 2014 
  16. ^ a b "OpenUserJS" openuserjsorg 
  17. ^ a b "Fixing Install Counts - Page 6" 1 April 2013 Archived from the original on 3 November 2013 Retrieved 5 November 2015 
  18. ^ a b "Greasy Fork" greasyforkorg 
  19. ^ a b Barnabe, Jason 19 February 2014 "Introducing Greasy Fork - a user scripts site" Retrieved 5 November 2015 
  20. ^ "Userscriptsorg" userscripts-mirrororg 
  21. ^ https://developermozillaorg/en/XPCNativeWrapper
  22. ^ "Greasemonkey" mozdevorg mozdev Retrieved 2009-05-05 
  23. ^ https://openuserjsorg/about/Greasemonkey-Port-for-SeaMonkey
  24. ^ ianloic "Greasemonkey" Songbird Retrieved 5 May 2009 
  25. ^ "NinjaKit" Chrome web store Retrieved 16 November 2015 
  26. ^ "Tampermonkey" Chrome web store 6 November 2015 
  27. ^ "Control Freak" Chrome web store Retrieved 9 November 2015 
  28. ^ "User Scripts – The Chromium Projects" Retrieved 24 October 2010 
  29. ^ Paul, Ian 18 January 2012 "How to Access Wikipedia on SOPA Protest Day" PC World Retrieved 28 January 2013 
  30. ^ Boodman, Aaron 1 February 2010 "40,000 More Extensions!" blogchromiumorg Retrieved 1 February 2010 
  31. ^ Kay, Erik 27 May 2014 "Protecting Chrome users from malicious extensions" Google Retrieved 24 October 2014 
  32. ^ "New extension for Safari 5 called NinjaKit lets you install GM scripts" Excellatronic Communications Retrieved 22 July 2010 
  33. ^ "Kango framework" 
  34. ^ "Modifying content of web pages using Kango Framework and jQuery" 

External links

  • Greasemonkey at Mozilla Add-ons
  • Greasemonkey Wiki
  • Greasemonkey source code at GitHub
  • Greasemonkey discussion group at Google Groups
  • Greasemonkey blog
  • Greasemonkey Makes Firefox Unbeatable, an article on Greasemonkey for end-users
  • Greasemonkey in the Enterprise, a blog series on security and deployment issues when using Greasemonkey for IT projects
  • Monkey see, GreaseMonkey do!, a video tutorial for Greasemonkey userscript development
  • Userscript repositories


Greasemonkey Information about

Greasemonkey

Greasemonkey
Greasemonkey

Greasemonkey Information Video


Greasemonkey viewing the topic.
Greasemonkey what, Greasemonkey who, Greasemonkey explanation

There are excerpts from wikipedia on this article and video



Random Posts

Social Accounts

Facebook Twitter VK
Copyright © 2014. Search Engine