Skip to content

Instantly share code, notes, and snippets.

View myfreeer's full-sized avatar
💭
I may be slow to respond.

myfreeer

💭
I may be slow to respond.
View GitHub Profile
@myfreeer
myfreeer / hex2string.js
Last active July 3, 2016 11:52 — forked from taterbase/bin2string.js
Convert bytes to string Javascript
function str2arr(str){
var array_=new Array();
for(var i = 0; i < str.length; ++i){
array_[i]=str.charCodeAt(i);};
return array_;
}
function hex2arr(str){
var b_=new Uint8Array();
eval("b_=["+str+"]");
@myfreeer
myfreeer / EvalGuy.cs
Last active July 7, 2016 06:58
eval strings in C#
using System;
using System.Data;
using System.Configuration;
using System.Text;
using System.CodeDom.Compiler;
using Microsoft.CSharp;
using System.Reflection;
namespace EvalGuy
{
@myfreeer
myfreeer / clearChromeCache.bat
Last active July 12, 2016 08:03
a batch file aimed to clean chrome's cache files in one click
@echo off
pushd "%~dp0"
REM 批处理中%~dp0为批处理文件所在路径
if not exist "%~dp0\User Data" exit
for %%i in (
"%~dp0\User Data\Default\Cache"
"%~dp0\User Data\PnaclTranslationCache"
"%~dp0\User Data\ShaderCache"
"%~dp0\User Data\Default\Application Cache"
"%~dp0\User Data\Default\JumpListIconsOld"
@myfreeer
myfreeer / rebuilding-icon-cache.cmd
Last active August 24, 2016 08:06
Rebuild Windows' Icon Cache And Disable Notification Center
@echo off
taskkill /f /im explorer.exe
reg delete "HKEY_CLASSES_ROOT\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify" /v IconStreams /f
REG ADD HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Windows\Explorer /v DisableNotificationCenter /t REG_DWORD /d 1 /f
REG ADD "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /f /v HideSCAHealth /t REG_DWORD /d 1
REG ADD "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer" /f /v HideSCAHealth /t REG_DWORD /d 1
for %%i in (
%USERPROFILE%\AppData\Local\Microsoft\Windows\Explorer
%USERPROFILE%\AppData\Local\IconCache.db
) do (
@myfreeer
myfreeer / canClearAd.user.js
Last active November 8, 2016 10:32
just a dev example
// ==UserScript==
// @name canClearAd Element Fucker
// @namespace myfreeer
// @version 1.3
// @description Remove or replace some unwanted element
// @author myfreeer, ineer
// @include *
// @downloadURL https://gist.github.com/myfreeer/57e9973ebe5398a246de23c152ff1d05/raw/canClearAd.user.js
// @license MIT
// @grant GM_getValue
//rewrite from https://github.com/jonbern/fetch-retry
let fetchretry = (url, options) => {
var retries = (options && options.retries) ? options.retries : 3;
var retryDelay = (options && options.retryDelay) ? options.retryDelay : 500;
return new Promise((resolve, reject) => {
let wrappedFetch = n => fetch(url, options).then(response => resolve(response)).catch(error => n > 0 ? setTimeout(() => wrappedFetch(--n), retryDelay) : reject(error));
wrappedFetch(retries);
});
};
@myfreeer
myfreeer / parseXmlSafe-babel.js
Last active November 30, 2016 07:11
parse Xml with invalid characters
var parseXmlSafe = function parseXmlSafe(text) {
"use strict";
text = text.replace(/(?:[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/g, "");
if (window.DOMParser) return new window.DOMParser().parseFromString(text, "text/xml");else if (ActiveXObject) {
var activeXObject = new ActiveXObject("Microsoft.XMLDOM");
activeXObject.async = false;
activeXObject.loadXML(text);
return activeXObject;
} else throw new Error("parseXmlSafe: XML Parser Not Found.");
};
@myfreeer
myfreeer / 按发帖时间排序(改).bookmarklet.js
Last active December 1, 2016 13:23
按发帖时间排序小书签,对discuz特别的优化
javascript:void((function(){if(/\#tabA|-orderway-|orderby=/.test(location.href))return;var bydate = document.querySelectorAll('#filter_dateline_menu > .pop_moremenu a[href*="orderby=dateline"], #filter_threadsort_menu > .pop_moremenu a[href*="orderby=dateline"], #filter_orderby_menu a[href*="orderby=dateline"], .colplural .author a[href*="orderby=dateline"], a[href$="orderby=dateline"]') || document.querySelectorAll('.content_filter a[href*="orderby=postdate"], .thread_sort a[href*="orderway"][href*="postdate"], #threadlist .mr20 a[href][onclick^="orderThreads(\'postdate\')"]'); for(var i in bydate) if (bydate[i].href&&bydate[i].href.match(location.href.match(/(fid=|forum-)([0-9]+)/)[2]))location.href=bydate[i].href;})())
@myfreeer
myfreeer / resolvePromiseArrayWait-babel.js
Last active December 5, 2016 13:21
resolve array one after another using Promise with timeout
var resolvePromiseArrayWait = function resolvePromiseArrayWait(array, myPromise) {
'use strict';
var timeout = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
var retries = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
return new Promise(function (resolve, reject) {
var resultArray = [];
var resolver = function resolver(index) {
return setTimeout(function () {
return myResolver(index);
@myfreeer
myfreeer / baidu-pan-show-md5-es6.user.js
Last active December 21, 2016 10:02
在只有一个文件的百度网盘分享页显示文件的md5
// ==UserScript==
// @name 百度网盘md5显示
// @namespace undefined
// @version 0.3
// @description 在只有一个文件的百度网盘分享页显示文件的md5
// @author myfreeer
// @match *://pan.baidu.com/s/*
// @match *://yun.baidu.com/s/*
// @match *://pan.baidu.com/share/link*
// @match *://yun.baidu.com/share/link*