Colored logger for Greasemonkey scripts. Drop-in extension for 'console' logging methods (debug/info/log/warn/error). Filters messages generated via 'console.debug' per default – set 'window.DEBUG = true' anywhere to show them.
当前为
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.gf.qytechs.cn/scripts/38888/257559/Greasemonkey%20%7C%20Color%20Log.js
// ==UserScript==
// @name Greasemonkey | Color Log
// @namespace de.sidneys.greasemonkey
// @homepage https://gist.githubusercontent.com/sidneys/5d44a978d18a1b91f554b2358406671d/raw/
// @version 10.0.0
// @description Colored logger for Greasemonkey scripts. Drop-in extension for 'console' logging methods (debug/info/log/warn/error). Filters messages generated via 'console.debug' per default – set 'window.DEBUG = true' anywhere to show them.
// @author sidneys
// @icon https://www.greasespot.net/favicon.ico
// @include http*://*/*
// @grant unsafeWindow
// ==/UserScript==
/**
* Check DEBUG within window and Greasemonkey context
* @return {Boolean} - Yes/no
*/
let isDebug = () => Boolean(unsafeWindow.DEBUG) || Boolean(this.DEBUG);
isDebug = isDebug.bind(this);
/**
* Get log prefix
* @return {String} - Prefix
*/
let getPrefix = () => GM_info.script.name;
/**
* Original log method
* @type {function}
* @constant
*/
const originalLog = console.log;
/**
* Color log
* @type {Object}
* @constant
*/
const colorLog = {
debug() {
if (!isDebug()) { return; }
const color = `rgb(255, 150, 70)`;
originalLog.call(this, `? %c[${getPrefix()}] %c${Array.from(arguments).join(' ')}`, `font-weight: 600; color: ${color};`, `font-weight: 400; color: ${color};`);
},
error() {
const color = `rgb(220, 0, 30)`;
originalLog.call(this, `?️ %c[${getPrefix()}] %c${Array.from(arguments).join(' ')}`, `font-weight: 600; color: ${color};`, `font-weight: 400; color: ${color};`);
},
info() {
const color = `rgb(0, 200, 180)`;
originalLog.call(this, `ℹ️ %c[${getPrefix()}] %c${Array.from(arguments).join(' ')}`, `font-weight: 600; color: ${color};`, `font-weight: 400; color: ${color};`);
},
log() {
const color = `rgb(70, 70, 70)`;
originalLog.call(this, `✳️ %c[${getPrefix()}] %c${Array.from(arguments).join(' ')}`, `font-weight: 600; color: ${color};`, `font-weight: 400; color: ${color};`);
},
warn() {
const color = `rgb(255, 100, 0)`;
originalLog.call(this, `⚠️ %c[${getPrefix()}] %c${Array.from(arguments).join(' ')}`, `font-weight: 600; color: ${color};`, `font-weight: 400; color: ${color};`);
}
};
/**
* Main
* Replace console methods (debug, info, log, warn, error)
*/
Object.assign(console, colorLog);
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址