Last active
September 15, 2021 19:12
-
-
Save ashtonmeuser/21427841853c9f2292c8f7d7af0079ea to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//bookmarklet_title: Word Frequency | |
//bookmarklet_about: Display the top five most common words on a webpage. Drag the bookmarklet to your bookmarks bar to use it anywhere! If the word hippo shows up a lot, hippo should have a high occurrence (hippo hippo HIPPO). | |
var counts = { }; | |
var text = document.body.innerText || document.body.textContent || ''; | |
var words = text.split(/\b/).filter((word) => { | |
return word.match(/^\w+$/) !== null; | |
}); | |
words.forEach((word) => { | |
counts['_'+word.toLowerCase()] = (counts['_'+word.toLowerCase()] || 0) + 1; | |
}); | |
var sorted = Object.keys(counts).sort((a, b) => { | |
return counts[b] - counts[a]; | |
}); | |
var message = sorted[0]===undefined ? 'No words found!' : 'Top 5 words:'; | |
sorted.forEach((word, index) => { | |
if(index>4 || word===undefined) return; | |
message += '\n#'+(index+1)+': '+word.substring(1)+' ('+counts[word]+' occurrences)'; | |
}); | |
alert(message); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// bookmarklet_title: Emoji! | |
// bookmarklet_about: This is an example bookmarklet that adds a random emoji to the DOM. Click 'view gist' to see how you can generate a bookmarklet from a js snippet. Bookmarklets can be dragged to the bookmarks bar of your browser in order to use them later. | |
const link = document.createElement('link'); | |
link.type = 'text/css'; | |
link.rel = 'stylesheet'; | |
link.href = 'https://afeld.github.io/emoji-css/emoji.css'; | |
document.head.appendChild(link); | |
const emojis = ['-1','--1','100','1234','8ball','a','ab','abc','abcd','accept','aerial_tramway','airplane','alarm_clock','alien','ambulance','anchor','angel','anger','angry','anguished','ant','apple','aquarius','aries','arrow_backward','arrow_double_down','arrow_double_up','arrow_down','arrow_down_small','arrow_forward','arrow_heading_down','arrow_heading_up','arrow_left','arrow_lower_left','arrow_lower_right','arrow_right','arrow_right_hook','arrow_up','arrow_up_down','arrow_up_small','arrow_upper_left','arrow_upper_right','arrows_clockwise','arrows_counterclockwise','art','articulated_lorry','astonished','atm','b','baby','baby_bottle','baby_chick','baby_symbol','back','baggage_claim','balloon','ballot_box_with_check','bamboo','banana','bangbang','bank','bar_chart','barber','baseball','basketball','bath','bathtub','battery','bear','bee','beer','beers','beetle','beginner','bell','bento','bicyclist','bike','bikini','bird','birthday','black_circle','black_joker','black_medium_small_square','black_medium_square','black_nib','black_small_square','black_square','black_square_button','blossom','blowfish','blue_book','blue_car','blue_heart','blush','boar','boat','bomb','book','bookmark','bookmark_tabs','books','boom','boot','bouquet','bow','bowling','bowtie','boy','bread','bride_with_veil','bridge_at_night','briefcase','broken_heart','bug','bulb','bullettrain_front','bullettrain_side','bus','busstop','bust_in_silhouette','busts_in_silhouette','cactus','cake','calendar','calling','camel','camera','cancer','candy','capital_abcd','capricorn','car','card_index','carousel_horse','cat','cat2','cd','chart','chart_with_downwards_trend','chart_with_upwards_trend','checkered_flag','cherries','cherry_blossom','chestnut','chicken','children_crossing','chocolate_bar','christmas_tree','church','cinema','circus_tent','city_sunrise','city_sunset','cl','clap','clapper','clipboard','clock1','clock10','clock1030','clock11','clock1130','clock12','clock1230','clock130','clock2','clock230','clock3','clock330','clock4','clock430','clock5','clock530','clock6','clock630','clock7','clock730','clock8','clock830','clock9','clock930','closed_book','closed_lock_with_key','closed_umbrella','cloud','clubs','cn','cocktail','coffee','cold_sweat','collision','computer','confetti_ball','confounded','confused','congratulations','construction','construction_worker','convenience_store','cookie','cool','cop','copyright','corn','couple','couple_with_heart','couplekiss','cow','cow2','credit_card','crocodile','crossed_flags','crown','cry','crying_cat_face','crystal_ball','cupid','curly_loop','currency_exchange','curry','custard','customs','cyclone','dancer','dancers','dango','dart','dash','date','de','deciduous_tree','department_store','diamond_shape_with_a_dot_inside','diamonds','disappointed','disappointed_relieved','dizzy','dizzy_face','do_not_litter','dog','dog2','dollar','dolls','dolphin','donut','door','doughnut','dragon','dragon_face','dress','dromedary_camel','droplet','dvd','e-mail','ear','ear_of_rice','earth_africa','earth_americas','earth_asia','egg','eggplant','eight','eight_pointed_black_star','eight_spoked_asterisk','electric_plug','elephant','email','end','envelope','es','euro','european_castle','european_post_office','evergreen_tree','exclamation','expressionless','eyeglasses','eyes','facepunch','factory','fallen_leaf','family','fast_forward','fax','fearful','feelsgood','feet','ferris_wheel','file_folder','finnadie','fire','fire_engine','fireworks','first_quarter_moon','first_quarter_moon_with_face','fish','fish_cake','fishing_pole_and_fish','fist','five','flags','flashlight','floppy_disk','flower_playing_cards','flushed','foggy','football','fork_and_knife','fountain','four','four_leaf_clover','fr','free','fried_shrimp','fries','frog','frowning','fu','fuelpump','full_moon','full_moon_with_face','game_die','gb','gem','gemini','ghost','gift','gift_heart','girl','globe_with_meridians','goat','goberserk','godmode','golf','grapes','green_apple','green_book','green_heart','grey_exclamation','grey_question','grimacing','grin','grinning','guardsman','guitar','gun','haircut','hamburger','hammer','hamster','hand','handbag','hankey','hash','hatched_chick','hatching_chick','headphones','hear_no_evil','heart','heart_decoration','heart_eyes','heart_eyes_cat','heartbeat','heartpulse','hearts','heavy_check_mark','heavy_division_sign','heavy_dollar_sign','heavy_exclamation_mark','heavy_minus_sign','heavy_multiplication_x','heavy_plus_sign','helicopter','herb','hibiscus','high_brightness','high_heel','hocho','honey_pot','honeybee','horse','horse_racing','hospital','hotel','hotsprings','hourglass','hourglass_flowing_sand','house','house_with_garden','hurtrealbad','hushed','ice_cream','icecream','id','ideograph_advantage','imp','inbox_tray','incoming_envelope','information_desk_person','information_source','innocent','interrobang','iphone','it','izakaya_lantern','jack_o_lantern','japan','japanese_castle','japanese_goblin','japanese_ogre','jeans','joy','joy_cat','jp','key','keycap_ten','kimono','kiss','kissing','kissing_cat','kissing_closed_eyes','kissing_face','kissing_heart','kissing_smiling_eyes','koala','koko','kr','large_blue_circle','large_blue_diamond','large_orange_diamond','last_quarter_moon','last_quarter_moon_with_face','laughing','leaves','ledger','left_luggage','left_right_arrow','leftwards_arrow_with_hook','lemon','leo','leopard','libra','light_rail','link','lips','lipstick','lock','lock_with_ink_pen','lollipop','loop','loudspeaker','love_hotel','love_letter','low_brightness','m','mag','mag_right','mahjong','mailbox','mailbox_closed','mailbox_with_mail','mailbox_with_no_mail','man','man_with_gua_pi_mao','man_with_turban','mans_shoe','maple_leaf','mask','massage','meat_on_bone','mega','melon','memo','mens','metal','metro','microphone','microscope','milky_way','minibus','minidisc','mobile_phone_off','money_with_wings','moneybag','monkey','monkey_face','monorail','moon','mortar_board','mount_fuji','mountain_bicyclist','mountain_cableway','mountain_railway','mouse','mouse2','movie_camera','moyai','muscle','mushroom','musical_keyboard','musical_note','musical_score','mute','nail_care','name_badge','neckbeard','necktie','negative_squared_cross_mark','neutral_face','new','new_moon','new_moon_with_face','newspaper','ng','nine','no_bell','no_bicycles','no_entry','no_entry_sign','no_good','no_mobile_phones','no_mouth','no_pedestrians','no_smoking','non-potable_water','nose','notebook','notebook_with_decorative_cover','notes','nut_and_bolt','o','o2','ocean','octocat','octopus','oden','office','ok','ok_hand','ok_woman','older_man','older_woman','on','oncoming_automobile','oncoming_bus','oncoming_police_car','oncoming_taxi','one','open_file_folder','open_hands','open_mouth','ophiuchus','orange_book','outbox_tray','ox','package','page_facing_up','page_with_curl','pager','palm_tree','panda_face','paperclip','parking','part_alternation_mark','partly_sunny','passport_control','paw_prints','peach','pear','pencil','pencil2','penguin','pensive','performing_arts','persevere','person_frowning','person_with_blond_hair','person_with_pouting_face','phone','pig','pig2','pig_nose','pill','pineapple','pisces','pizza','plus1','point_down','point_left','point_right','point_up','point_up_2','police_car','poodle','poop','post_office','postal_horn','postbox','potable_water','pouch','poultry_leg','pound','pouting_cat','pray','princess','punch','purple_heart','purse','pushpin','put_litter_in_its_place','question','rabbit','rabbit2','racehorse','radio','radio_button','rage','rage1','rage2','rage3','rage4','railway_car','rainbow','raised_hand','raised_hands','raising_hand','ram','ramen','rat','recycle','red_car','red_circle','registered','relaxed','relieved','repeat','repeat_one','restroom','revolving_hearts','rewind','ribbon','rice','rice_ball','rice_cracker','rice_scene','ring','rocket','roller_coaster','rooster','rose','rotating_light','round_pushpin','rowboat','ru','rugby_football','runner','running','running_shirt_with_sash','sa','sagittarius','sailboat','sake','sandal','santa','satellite','satisfied','saxophone','school','school_satchel','scissors','scorpius','scream','scream_cat','scroll','seat','secret','see_no_evil','seedling','seven','shaved_ice','sheep','shell','ship','shipit','shirt','shit','shoe','shower','signal_strength','six','six_pointed_star','ski','skull','sleeping','sleepy','slot_machine','small_blue_diamond','small_orange_diamond','small_red_triangle','small_red_triangle_down','smile','smile_cat','smiley','smiley_cat','smiling_imp','smirk','smirk_cat','smoking','snail','snake','snowboarder','snowflake','snowman','sob','soccer','soon','sos','sound','space_invader','spades','spaghetti','sparkle','sparkler','sparkles','sparkling_heart','speak_no_evil','speaker','speech_balloon','speedboat','squirrel','star','star2','stars','station','statue_of_liberty','steam_locomotive','stew','straight_ruler','strawberry','stuck_out_tongue','stuck_out_tongue_closed_eyes','stuck_out_tongue_winking_eye','sun_with_face','sunflower','sunglasses','sunny','sunrise','sunrise_over_mountains','surfer','sushi','suspect','suspension_railway','sweat','sweat_drops','sweat_smile','sweet_potato','swimmer','symbols','syringe','tada','tanabata_tree','tangerine','taurus','taxi','tea','telephone','telephone_receiver','telescope','tennis','tent','thought_balloon','three','thumbsdown','thumbsup','ticket','tiger','tiger2','tired_face','tm','toilet','tokyo_tower','tomato','tongue','top','tophat','tractor','traffic_light','train','train2','tram','triangular_flag_on_post','triangular_ruler','trident','triumph','trolleybus','trollface','trophy','tropical_drink','tropical_fish','truck','trumpet','tshirt','tulip','turtle','tv','twisted_rightwards_arrows','two','two_hearts','two_men_holding_hands','two_women_holding_hands','u5272','u5408','u55b6','u6307','u6708','u6709','u6e80','u7121','u7533','u7981','u7a7a','uk','umbrella','unamused','underage','unlock','up','us','v','vertical_traffic_light','vhs','vibration_mode','video_camera','video_game','violin','virgo','volcano','vs','walking','waning_crescent_moon','waning_gibbous_moon','warning','watch','water_buffalo','watermelon','wave','wavy_dash','waxing_crescent_moon','waxing_gibbous_moon','wc','weary','wedding','whale','whale2','wheelchair','white_check_mark','white_circle','white_flower','white_large_square','white_medium_small_square','white_medium_square','white_small_square','white_square_button','wind_chime','wine_glass','wink','wolf','woman','womans_clothes','womans_hat','womens','worried','wrench','x','yellow_heart','yen','yum','zap','zero','zzz']; | |
const emoji = emojis[Math.floor(Math.random() * emojis.length)]; | |
const div = document.createElement('div'); | |
const page = { | |
width: Math.max(document.body.scrollWidth, document.documentElement.scrollWidth, document.body.offsetWidth, document.documentElement.offsetWidth, document.documentElement.clientWidth), | |
height: Math.max(document.body.scrollHeight, document.documentElement.scrollHeight, document.body.offsetHeight, document.documentElement.offsetHeight, document.documentElement.clientHeight), | |
}; | |
const dimensions = Math.random() * 20 + 20; | |
const position = { | |
x: Math.random() * (page.width - dimensions), | |
y: Math.random() * (page.height - dimensions), | |
}; | |
div.innerHTML = `<i class="em em-${emoji}"></i>`; | |
div.style.cssText = `position:absolute;left:${position.x}px;top:${position.y}px;font-size:${dimensions}px;width:${dimensions}px;height:${dimensions}px;z-index:1000;`; | |
document.body.appendChild(div); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// bookmarklet-title: img-- | |
// bookmarklet-about: Hide images until mouseover (v1.3) | |
const style = document.createElement('style'); | |
style.innerHTML = `*, *::before, *::after {background-image: none !important;}`; | |
document.head.appendChild(style); | |
for (let e of ['img', 'video', 'iframe']) { | |
for (let i of document.getElementsByTagName(e)) { | |
i.style.transition = 'opacity 400ms ease'; | |
i.style.opacity = 0.05; | |
i.onmouseover = function () { this.style.opacity = 1.0; }; | |
i.onmouseout = function () { this.style.opacity = 0.05; }; | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// bookmarklet-title: QR Code | |
// bookmarklet-about: Generate a QR code for the website you're currently browsing. | |
const address = encodeURIComponent(window.location.href); | |
window.open(`http://chart.googleapis.com/chart?cht=qr&chs=177x177&chl=${address}`, '_blank'); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// bookmarklet-about: This is just a dummy bookmarklet. Using it to test transpilation via Babel and potentially CoreJS. As you may have noticed while reading this, I'm also testing the usage of a large bookmarklet description. Please ignore. Thanks. | |
const timer = (t) => new Promise((resolve) => { | |
setTimeout(() => { | |
console.log(`timer ${t}`); | |
resolve(); | |
}, t); | |
}); | |
(async () => { | |
timer(2000); | |
console.log('A'); | |
await timer(1000); | |
console.log('B'); | |
console.log(['A', 'B', 'C'].includes('B')); | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment