您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Exports a simple function that can be passed a template literal. It strips code indentation from it while preserving intended indentation, by stripping out the smallest indent every line has in common.
此脚本不应直接安装。它是供其他脚本使用的外部库,要使用该库请加入元指令 // @require https://update.cn-greasyfork.org/scripts/511046/1460584/DeindentTemplateLiteralString.js
// ==UserScript== // @name DeindentTemplateLiteralString // @license Unlicense // @namespace 1N07 // @match *://*/* // @version 1.2 // @author 1N07 // @description Exports a simple function that can be passed a template literal. It strips code indentation from it while preserving intended indentation, by stripping out the smallest indent every line has in common. // ==/UserScript== /** * Takes a string (usually evaluated from a template literal) and strips code indentation from it, * while preserving intended intendation, by slicing out the smallest indentation each line has in common. * @param {String} str * @returns str with code indentation removed */ function DeindentTemplateLiteralString(str) { const smallestIndent = Math.min( ...str .split("\n") .filter((line) => line.trim()) .map((line) => line.match(/^\s+/)?.[0]?.length), ); return str .split("\n") .map((line) => line.slice(smallestIndent)) .join("\n") .trim(); } //aliases const Deindent = DeindentTemplateLiteralString;