Skip to content

Instantly share code, notes, and snippets.

@kms70847
kms70847 / remove_signup_bar.user.js
Created October 29, 2021 14:21
Remove Signup Bar From Twitter
// ==UserScript==
// @name Remove Signup Bar
// @namespace http://tampermonkey.net/
// @version 1.0
// @description Remove the "sign up for twitter!" bar that blocks 20% of the content on every Twitter page
// @author Kevin
// @match https://twitter.com/*
// @icon https://www.google.com/s2/favicons?domain=twitter.com
// @grant none
// ==/UserScript==
@kms70847
kms70847 / original.py
Last active May 8, 2021 02:36
A reverse-engineering of Aran-Fey's obfuscated script
#copied from https://chat.stackoverflow.com/transcript/message/52153354#52153354
class folly(zip(), zip(__name__), zip(), zip(__file__), zip()):
hel = help
locals()[r""u'''d
'''fr''] = __qualname__
exc = exit
def Tel(f, a, k):
return getattr(a[0], f)(*a[1:], **dict(tuple(k.items())[2:]))
@kms70847
kms70847 / SoChatSpoilerAdd.bookmarklet
Last active April 28, 2021 18:50
Adds a spoiler button to SO chat (sopython.com/spoiler variant)
javascript:(function(){function urlsafe_encode(s){return btoa(s).replace(/\+/g, "-").replace(/\//g, "_")};function encode_utf8(s) {return unescape(encodeURIComponent(s));};function add_spoiler(){try{var input = document.getElementById("input");var left = input.value.slice(0, input.selectionStart);var middle = input.value.slice(input.selectionStart, input.selectionEnd);var right = input.value.slice(input.selectionEnd);if (middle.length == 0){var response = window.prompt("Enter spoiler text.", "");if (response == null || response.length == 0){return;}else{middle = response;};};middle = encode_utf8(middle);middle = encodeURIComponent(urlsafe_encode(middle));middle = "[view spoiler](http://sopython.com/spoiler/" + middle + ")";input.value = left + middle + right;input.setSelectionRange(left.length + middle.length, left.length + middle.length);input.focus();}catch(e){console.log(e);};};function create_button(name, id, func){var buttonArea = document.getElementById("chat-buttons");var button = document.createElemen
@kms70847
kms70847 / share_markdown.user.js
Last active April 21, 2021 16:00
For each Stack Overflow question, adds an additional box to the "share" button, containing a link with markdown
// ==UserScript==
// @name Share Markdown (Stack Overflow)
// @namespace about:blank
// @include /^https?:\/\/\w*.?(stackexchange.com|stackoverflow.com|serverfault.com|superuser.com|askubuntu.com|stackapps.com|mathoverflow.net)\/questions/.*/
// @version 8
// @grant none
// ==/UserScript==
function make_input(text){
var input = document.createElement("input");
@kms70847
kms70847 / MakingFilesImportableAnywhere.txt
Last active December 17, 2019 18:34
The Simplest Possible Way To Make A Python File Into A Package That's Importable From Anywhere
The Simplest Possible Way To Make A Python File Into A Package That's Importable From Anywhere
~~~ A Guide For (And By) the Incurably Befuddled ~~~
==============================================================================================
SCENARIO: while writing a one-shot project, you construct a module named LovelyCoconut.py.
#main.py
import LovelyCoconut
LovelyCoconut.bang_halves_together()
@kms70847
kms70847 / usernotes.user.js
Last active November 19, 2019 16:37
Adds persistent user notes to Stack Overflow chat
// ==UserScript==
// @name User Notes (SO Chat)
// @namespace .
// @include http://chat.stackoverflow.com/rooms/*
// @include https://chat.stackoverflow.com/rooms/*
// @version 2
// @grant GM_getValue
// @grant GM_setValue
// ==/UserScript==
@kms70847
kms70847 / char_count_adder.user.js
Last active November 19, 2019 16:37
In SO chat, adds a label indicating the character count of your message
// ==UserScript==
// @name char count adder (SO Chat)
// @namespace .
// @description Adds a label indicating the character count of your message
// @include http://chat.stackoverflow.com/rooms/*
// @include https://chat.stackoverflow.com/rooms/*
// @version 3
// @grant none
// ==/UserScript==
@kms70847
kms70847 / main.py
Last active October 22, 2019 18:15
Gold Badge Counter
import requests
import base64
import os
import pickle
import time
import re
import json
from bs4 import BeautifulSoup as BS
MIN_TIME_BETWEEN_REQUESTS = 10
@kms70847
kms70847 / UnicodeEmojiAdder.user.js
Last active September 26, 2019 19:53
Unicode Emoji Adder
// ==UserScript==
// @name UnicodeEmojiAdder
// @version 6
// @include http://chat.stackoverflow.com/rooms/*
// @include https://chat.stackoverflow.com/rooms/*
// @grant none
// ==/UserScript==
var style_template = `
.boxPositioner{
@kms70847
kms70847 / EmoticonAdder.user.js
Last active September 25, 2019 20:29
Emoticon Adder Userscript
// ==UserScript==
// @name Emoticon Adder
// @version 1
// @include http://chat.stackoverflow.com/rooms/*
// @include https://chat.stackoverflow.com/rooms/*
// @grant none
// ==/UserScript==
//note: emoticons with slash characters, for example ¯\_(ツ)_/¯, must be quadruple-escaped. Once for javascript, and again for markdown.
var choices = ["---", "(◕‿◕)", "(╯°□°)╯︵ ┻━┻", "( ͡° ͜ʖ ͡°)", "ಠ_ಠ", " ¯\\\\_(ツ)_/¯", "👍", "🐍"];