Skip to content

Instantly share code, notes, and snippets.

@christianp
Created October 17, 2017 11:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save christianp/14a91aea354fe80a5e893970ca83ef4f to your computer and use it in GitHub Desktop.
Save christianp/14a91aea354fe80a5e893970ca83ef4f to your computer and use it in GitHub Desktop.
Everyone's a Mathematician bookmarklet
javascript:(function() {function textNodesUnder(el){ var n, a=[], walk=document.createTreeWalker(el,NodeFilter.SHOW_TEXT,null,false); while(n=walk.nextNode()) a.push(n); return a; }; var nodes=textNodesUnder(document.body); var lowercase = 'a-zàèìòùáéíóúýâêîôûãñõäëïöüÿçßøåæœ'; var uppercase = 'A-ZÀÈÌÒÙÁÉÍÓÚÝÂÊÎÔÛÃÑÕÄËÏÖÜŸÇØÅÆ'; var one_name = '['+uppercase+']['+lowercase+']+\\.?'; var re_name = new RegExp('((?:(?:'+one_name+'(?:-'+one_name+')*|(?:['+uppercase+']\\.)+)(?: (?:(?:['+uppercase+']\\.)+|'+one_name+'(?:-'+one_name+')*))* (?:(?:de|von|van|ibn) |(?:ibn )?al-|el-|d\')?'+one_name+'(?:-'+one_name+')*)|Euclid|Archimedes|Pythagoras|Brahmagupta|Eudoxus|Fibonacci|Aryabhata|Apollonius|Diophantus|Bháscara|Hipparchus|Archytus|Panini|Aristotle|Pappus|Hippocrates|Thales)','g'); Array.prototype.map.call(nodes,function(n){ n.textContent = n.textContent.replace(re_name,'Mathematician $1')}) })()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment