BookmarkletWikifyWebAlsKlartext: Difference between revisions
Jump to navigation
Jump to search
(von WikifyWeb:) |
m (formatting) |
||
Line 6: | Line 6: | ||
linkText, linkTextArray = [], msg, myArray, node, txt, href, a, reg, span, | linkText, linkTextArray = [], msg, myArray, node, txt, href, a, reg, span, | ||
lastLastIndex, textNodeXpath, textNodes; | lastLastIndex, textNodeXpath, textNodes; | ||
textNodeXpath = './/text()[not(ancestor::a) and not(ancestor::head)and not(ancestor::option) and not(ancestor::textarea)]'; | 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); | textNodes = document.evaluate(textNodeXpath, document, null, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null); | ||
len = textNodes.snapshotLength; | len = textNodes.snapshotLength; | ||
reg = /^\s+$/g; | reg = /^\s+$/g; | ||
linkpatt = /\b(?:([a-z0-9äöü]*(?:[A-ZÄÖÜ_]|_)[a-z0-9äöü_]*){2,})\b/g; | linkpatt = /\b(?:([a-z0-9äöü]*(?:[A-ZÄÖÜ_]|_)[a-z0-9äöü_]*){2,})\b/g; | ||
for (i = 0; i < len; i++) { | for (i = 0; i < len; i++) { | ||
node = textNodes.snapshotItem(i); | node = textNodes.snapshotItem(i); | ||
txt = node.nodeValue; txt = txt.replace(reg, ''); | txt = node.nodeValue; txt = txt.replace(reg, ''); | ||
if (linkpatt.test(txt)) { | if (linkpatt.test(txt)) { | ||
span = document.createElement('span'); | span = document.createElement('span'); | ||
Line 26: | Line 22: | ||
myArray = linkpatt.exec(txt); | myArray = linkpatt.exec(txt); | ||
if (!myArray) break; | if (!myArray) break; | ||
link = myArray[0]; | link = myArray[0]; | ||
linkTextArray = [link, ' (e', ' w', ' t', ' h', ' y', ' a)']; | linkTextArray = [link, ' (e', ' w', ' t', ' h', ' y', ' a)']; | ||
Line 34: | Line 29: | ||
link = myArray[0]; | link = myArray[0]; | ||
llen = link.length; | llen = link.length; | ||
if (link.substring(0, 2) === '' && link.substring(llen - 2, llen) === '') { | if (link.substring(0, 2) === '' && link.substring(llen - 2, llen) === '') { | ||
link = link.substring(2, llen - 2); | link = link.substring(2, llen - 2); | ||
} | } | ||
for (j = 0; j < Math.min(WikiMap.length, linkTextArray.length); j++) { | for (j = 0; j < Math.min(WikiMap.length, linkTextArray.length); j++) { | ||
href = WikiMap[j] + link; | href = WikiMap[j] + link; |
Revision as of 12:08, 27 June 2018
von WikifyWeb:
<a href="javascript:function ai() {
var WikiMap = ['http://google.com/search?q=','https://everipedia.org/wiki/','https://wikipedia.org/wiki/','https://twitter.com/search?q=','https://twitter.com/hashtag/','https://www.youtube.com/results?search_query=', 'https://aipedia.eu/wiki/' ], i, j, k, len, llen, link, linkpatt, linkText, linkTextArray = [], msg, myArray, node, txt, href, a, reg, span, lastLastIndex, textNodeXpath, textNodes; 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, ' (e', ' 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>