WikifyWeb: Difference between revisions
(When dragging the WikifyWeb bookmarklet, some browsers confused that with the title of the page. So f renamed it to WikiFy) |
(work in progress) |
||
(31 intermediate revisions by the same user not shown) | |||
Line 7: | Line 7: | ||
== About == | == About == | ||
This BookMarklet | This '''BookMarklet''' WikifyWeb turns WikiWords into UserDefinable MultiLinks. On this page you get the actual bookmarklet. | ||
== | == Use of the Bookmarklet == | ||
Clicking on the link WikifyWeb (at the end of this page) enriches each WikiWord in any document in the Web (articles, blogs, posts, .. ) with the following inks: | |||
1. '''Mainlink''': GoogleSearch | |||
2. letter '''i''': iqWikiSearch | |||
3. letter '''w''': WikiPediaSearch | |||
4. letter '''t''': TwitterSearch | |||
5. letter '''h''': TwitterHashSearch | |||
6. letter '''y''': YouTubeSearch | |||
7. letter '''a''': Fridemar.aiSearch | |||
Drag and drop the below link WikifyWeb into your BookmarksList | Drag and drop the below link WikifyWeb (on this page, not that in the sidebar) into your (Chrome, Safari Browser) BookmarksList and you can apply Wikify (nearly) everywhere in the Web. | ||
For simplicity test all five search links on the word '''BookMarklet''', since the author verified, that it always gives results. | |||
To get rid of the MultiLinks simply refresh the page of the browser. | To get rid of the MultiLinks simply refresh the page of the browser. | ||
== Versions == | |||
v1.1: with number subscripts | |||
v1.2: made it mnemonic friendly with letters | |||
v1.3: used this WikiMap =<nowiki> | |||
['http://google.com/search?q=','iq.wiki/wiki/wiki/','https://wikipedia.org/wiki/','https://twitter.com/search?q=','https://twitter.com/hashtag/'] | |||
</nowiki>, | |||
','iq.wiki/wiki/wiki/' | |||
v1.4: used this WikiMap =<nowiki> | |||
['http://google.com/search?q=','iq.wiki/wiki/wiki/','https://wikipedia.org/wiki/','https://twitter.com/search?q=','https://twitter.com/hashtag/','https://www.youtube.com/results?search_query=', 'https://fridemar.ai/wiki/' ]</nowiki>, | |||
== Disclaimer == | == Disclaimer == | ||
Line 44: | Line 59: | ||
<html> | <html> | ||
<a href="javascript:function ai() { | |||
var WikiMap = ['http://google.com/search?q=','','iq.wiki/wiki/wiki/','https://twitter.com/search?q=','https://twitter.com/hashtag/','https://www.youtube.com/results?search_query=', 'https://fridemar.ai/wiki/' ], | |||
<a href="javascript:function ai() | i, j, k, len, llen, link, linkpatt, | ||
[link,' ( | linkText, linkTextArray = [], msg, myArray, node, txt, href, a, reg, span, | ||
lastLastIndex, textNodeXpath, textNodes; | |||
</html> | textNodeXpath = './/text()[not(ancestor::a) and not(ancestor::head)and not(ancestor::option) and not(ancestor::textarea)]'; | ||
textNodes = document.evaluate(textNodeXpath, document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); | |||
len = textNodes.snapshotLength; | |||
reg = /^\s+$/g; | |||
linkpatt = /\b(?:([a-z0-9äöü]*(?:[A-ZÄÖÜ_]|_)[a-z0-9äöü_]*){2,})\b/g; | |||
for (i = 0; i < len; i++) { | |||
node = textNodes.snapshotItem(i); | |||
txt = node.nodeValue; txt = txt.replace(reg, ''); | |||
if (linkpatt.test(txt)) { | |||
span = document.createElement('span'); | |||
lastLastIndex = 0; | |||
linkpatt.lastIndex = 0; | |||
try { | |||
while (true) { | |||
myArray = linkpatt.exec(txt); | |||
if (!myArray) break; | |||
link = myArray[0]; | |||
linkTextArray = [link, ' (i', ' w', ' t', ' h', ' y', ' a)']; | |||
span.appendChild(document.createTextNode(txt.substring(lastLastIndex, myArray.index))); | |||
lastLastIndex = linkpatt.lastIndex; | |||
linkText = myArray[1]; | |||
link = myArray[0]; | |||
llen = link.length; | |||
if (link.substring(0, 2) === '' && link.substring(llen - 2, llen) === '') { | |||
link = link.substring(2, llen - 2); | |||
} | |||
for (j = 0; j < Math.min(WikiMap.length, linkTextArray.length); j++) { | |||
href = WikiMap[j] + link; | |||
a = document.createElement('a'); | |||
a.setAttribute('href', href); | |||
a.appendChild(document.createTextNode(linkTextArray[j])); | |||
span.appendChild(a); | |||
} | |||
} | |||
span.appendChild(document.createTextNode(txt.substring(lastLastIndex))); | |||
node.parentNode.replaceChild(span, node); | |||
} catch (e) { | |||
alert(e); | |||
} | |||
} | |||
} | |||
} | |||
ai();">WikifyWeb</a> | |||
</html> work in progress | |||
---- | |||
See also [[BookmarkletWikifyWebAlsKlartext]] |
Latest revision as of 21:15, 17 October 2023
Intro
What if we could create links everywhere in the Web, by just writing CamelCase words like the inventor of Wikis WardCunningham introduced them in WardsWiki.
Currently the author fridemar offers this as a free OpenSource BookMarklet to empower work and collaboration on the EveriPedia.
About
This BookMarklet WikifyWeb turns WikiWords into UserDefinable MultiLinks. On this page you get the actual bookmarklet.
Use of the Bookmarklet
Clicking on the link WikifyWeb (at the end of this page) enriches each WikiWord in any document in the Web (articles, blogs, posts, .. ) with the following inks:
1. Mainlink: GoogleSearch
2. letter i: iqWikiSearch
3. letter w: WikiPediaSearch
4. letter t: TwitterSearch
5. letter h: TwitterHashSearch
6. letter y: YouTubeSearch
7. letter a: Fridemar.aiSearch
Drag and drop the below link WikifyWeb (on this page, not that in the sidebar) into your (Chrome, Safari Browser) BookmarksList and you can apply Wikify (nearly) everywhere in the Web.
For simplicity test all five search links on the word BookMarklet, since the author verified, that it always gives results.
To get rid of the MultiLinks simply refresh the page of the browser.
Versions
v1.1: with number subscripts
v1.2: made it mnemonic friendly with letters
v1.3: used this WikiMap = ['http://google.com/search?q=','iq.wiki/wiki/wiki/','https://wikipedia.org/wiki/','https://twitter.com/search?q=','https://twitter.com/hashtag/'] , ','iq.wiki/wiki/wiki/' v1.4: used this WikiMap = ['http://google.com/search?q=','iq.wiki/wiki/wiki/','https://wikipedia.org/wiki/','https://twitter.com/search?q=','https://twitter.com/hashtag/','https://www.youtube.com/results?search_query=', 'https://fridemar.ai/wiki/' ],
Disclaimer
The author fridemar did his best to make this a useful contribution to the CreativeCommons, but cannot guarantee that each WikiWord has SearchResults nor can he take responsibility
1. for the user chosen link targets
2. for modifications of the source, which is under CcBySa
Enjoy
WikifyWeb
work in progress
See also BookmarkletWikifyWebAlsKlartext