Skip to content

Instantly share code, notes, and snippets.

/**
* DIR-655 Network Monitor.
* Based on Network Monitor v2.0 for Yahoo! Widgets.
*/
let lan_tx_bytes;
let lan_rx_bytes;
let last_timestamp;
const readValues = () => {
@koteq
koteq / gen.sh
Created September 25, 2017 14:57
openssl self-signed certificate creation for web server
set -e
if [ -z "$1" ]; then
hostname="$HOSTNAME"
else
hostname="$1"
fi
local_openssl_config="
[req]
@koteq
koteq / gplus_img_title.user.js
Created June 23, 2017 11:44
G+ hover image title
// ==UserScript==
// @name G+ hover image title
// @version 1.0
// @match *://plus.google.com/*
// @run-at document-end
// @grant none
// ==/UserScript==
/* jshint esnext: true */
const decodeFileName = (src) => {
// ==UserScript==
// @name Sankaku fast pagination
// @version 0.1
// @match *://chan.sankakucomplex.com/*
// @grant none
// @run-at document-start
// ==/UserScript==
/* jshint esnext: true */
const originalSetTimeout = window.setTimeout;
@echo off
:: WARNING: after some testing considered as not recommended.
:: Filter to keep only non similar frames.
:: It selects only first frame `eq(n\,0)`
:: and frames with differences `gt(scene\,{sensivity})`
:: see https://ffmpeg.org/ffmpeg-filters.html#select_002c-aselect
set similar_frames_sensivity=0.002
set skip_similar_frames=select=eq(n\,0)+gt(scene\,%similar_frames_sensivity%)
:: Adaptive Temporal Averaging Denoise.
// ==UserScript==
// @name G+ two columns mode
// @version 0.1
// @match https://plus.google.com/*
// @grant none
// @run-at document-start
// ==/UserScript==
window.innerWidth = 1200;
@koteq
koteq / myanimelist people you may know.js
Created November 25, 2016 19:26
Parses friends of your friends and show you links profiles with people you may know. Usage: open your friends page, open dev tools, copypaste the script to console, press enter and wait. You may watch the downloading process on networks tab.
const DEPTH = 2; // 1 is usless, 3 is insane
const PROFILE_RE = /profile\/(.*?)(?:\/|$)/;
const SELF_PROFILE_RE = /profile\/(.*?)\/friends/;
const PROFILE_URL = 'https://myanimelist.net/profile/{profile}';
const FRIENDS_URL = 'https://myanimelist.net/profile/{profile}/friends';
function promiseWhile(condition, action) {
return new Promise((resolve, reject) => {
function loop() {
if (!condition()) {
// ==UserScript==
// @version 1.0
// @name Pixiv Top
// @description Load 7 pages and order it by bookmarks count
// @match *://www.pixiv.net/search.php*
// @grant none
// @require https://cdnjs.cloudflare.com/ajax/libs/jquery/2.2.1/jquery.min.js
// @require https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.13.0/moment.min.js
// @require https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.min.js
// ==/UserScript==
@koteq
koteq / qbittorrent web api add torrent (utorrent).pyw
Created July 10, 2016 00:23
Adapter to pair Taiga with qBittorrent
#!/usr/bin/env python3
import os
import sys
import argparse
# pip install requests
import requests
def main():
@koteq
koteq / ht2000 pool to json.py
Last active June 28, 2016 11:39
ht2000 ht-2000 co2 monitor pooler
import os
import json
import time
from struct import unpack_from
from datetime import datetime
import usb.core
import usb.backend.libusb1