1
0
Fork 0
elinks/contrib/smjs
Witold Filipczyk 060abde3d6 [config] Changed in more places ~/.elinks -> ~/.config/elinks 2023-01-26 12:41:46 +01:00
..
README Move most of contrib/smjs/README into the manual. 2008-07-10 20:31:22 +03:00
google_video.js Fix for recent change in Google Video 2006-03-26 20:28:25 +00:00
hooks.js [config] Changed in more places ~/.elinks -> ~/.config/elinks 2023-01-26 12:41:46 +01:00
pornotube.js SMJS: Add scripts for YouTube and PornoTube 2006-10-20 23:11:25 +00:00
smartprefixes_bookmarks.js Return uri from rewrite_uri instead of true. 2005-12-29 22:28:58 +00:00
smartprefixes_classic.js [mozjs24] Allow build elinks with g++ 2020-10-05 20:14:55 +02:00
smartprefixes_common.js [mozjs24] Allow build elinks with g++ 2020-10-05 20:14:55 +02:00
youtube.js SMJS: Add scripts for YouTube and PornoTube 2006-10-20 23:11:25 +00:00
youtube2.js youtube2.js: Show link to the video instead of the <meta refresh../>. 2009-01-03 17:39:02 +01:00

README

Most of the SpiderMonkey scripting interface is documented in the
ELinks manual.  This README describes only features added by
contrib/smjs/*.js.


Multiple functions in the same hook
-----------------------------------

The default hooks file contrib/smjs/hooks.js assigns functions that
provide a mechanism to register multiple functions to each hook. When
these default hooks are called, they iterate over all functions that
are registered to them, calling each one in serial.

If you want to register a preformat_html hook, for example,
the preferred way to do so is not this:

   elinks.preformat_html = foo;

but rather this:

   elinks.preformat_html_hooks.push(foo);

which adds foo to an array of functions, over which the default
elinks.preformat_html function will iterate.

If any function in that array returns false, the default hook
will stop iteration, not calling any more handlers. This applies
to all of the default hooks:

- elinks.preformat_html_hooks
- elinks.goto_url_hooks
- elinks.follow_url_hooks