Difference between revisions of "Vesper:scratchspace"
(New page: ==Welcome to Vesper's Scratchspace~== ================================================================================================ var noun_type_url = { _name: "Valid URL", ...) |
(→Welcome to Vesper's Scratchspace~) |
||
Line 1: | Line 1: | ||
==Welcome to Vesper's Scratchspace~== | ==Welcome to Vesper's Scratchspace~== | ||
+ | |||
+ | Today's menu: [https://wiki.mozilla.org/Labs/Ubiquity Ubiquity] URL noun type (and a basic function that uses it) | ||
+ | |||
+ | The regex in the code more or less says this: | ||
+ | |||
+ | (some protocol name) :// (a string) [. (a string)] [/ (a string)] (maybe / if you want) | ||
+ | |||
+ | Items in square brackets can be repeated. So, | ||
+ | |||
+ | pasta://a.taste.from.little.italy | ||
+ | |||
+ | is a valid url, according to this model. And, so is this: | ||
+ | |||
+ | universe://milky.way/earth/north-america/canada/ontario/ | ||
+ | |||
+ | This is not valid. | ||
+ | |||
+ | a://b.c/d.e | ||
+ | |||
+ | All of these choices were arbitrarily chosen by me. I'll be pursuing the community for a better description of what a URL should and should not be. | ||
================================================================================================ | ================================================================================================ | ||
− | + | var noun_type_url = { | |
− | + | _name: "Valid URL", | |
− | + | ||
− | + | suggest: function( text, html ) { | |
− | + | if (!text) | |
− | + | return [ CmdUtils.makeSugg("http://") ]; | |
− | + | ||
− | + | ||
− | + | if(/^[A-Za-z0-9]+:\/\/([A-Za-z0-9_-]+)(\.([A-Za-z0-9_-]+))+(\/([A-Za-z0-9_-~]+))+[/]?$/.test(text)){ | |
− | + | return [ CmdUtils.makeSugg(text) ]; | |
− | + | } | |
− | + | ||
− | + | return [ CmdUtils.makeSugg("http://" + text) ]; | |
− | + | } | |
− | + | }; | |
Revision as of 20:47, 11 September 2008
Welcome to Vesper's Scratchspace~
Today's menu: Ubiquity URL noun type (and a basic function that uses it)
The regex in the code more or less says this:
(some protocol name) :// (a string) [. (a string)] [/ (a string)] (maybe / if you want)
Items in square brackets can be repeated. So,
pasta://a.taste.from.little.italy
is a valid url, according to this model. And, so is this:
universe://milky.way/earth/north-america/canada/ontario/
This is not valid.
a://b.c/d.e
All of these choices were arbitrarily chosen by me. I'll be pursuing the community for a better description of what a URL should and should not be.
================================================================================================
var noun_type_url = {
_name: "Valid URL",
suggest: function( text, html ) { if (!text) return [ CmdUtils.makeSugg("http://") ];
if(/^[A-Za-z0-9]+:\/\/([A-Za-z0-9_-]+)(\.([A-Za-z0-9_-]+))+(\/([A-Za-z0-9_-~]+))+[/]?$/.test(text)){ return [ CmdUtils.makeSugg(text) ]; }
return [ CmdUtils.makeSugg("http://" + text) ]; }
};
CmdUtils.CreateCommand({ name: "url", takes: {"your shout": noun_type_url}, preview: function( pblock, theShout ) { pblock.innerHTML = "Will verify: " + theShout.text; }, execute: function( theShout ) { var msg = theShout.text; displayMessage( msg ); } })