<[ ]>
by
noromanba
2018-04-19 [2018/04/19 08:54:38]
NxN, NxM enlarge
@@ -13,8 +13,8 @@
'use strict';
//*/
const enlarged =
- location.pathname.replace(/\/(?<x>\d+)x(?<y>\d+)\//, (orig, ...sizes) => {
- const { x, y } = sizes[sizes.length - 1];
+ location.pathname.replace(/\/(?<x>\d+)x(?<y>\d+)\//, (orig, ...args) => {
+ const { x, y } = args[args.length - 1];
if (x !== y) return orig;
// x === y; square
/*
* @title <[ ]>
* @description NxN enlarge
* @include http://*
* @include https://*
* @license MIT License https://opensource.org/licenses/MIT
* @javascript_url
*/
// e.g.
// https://thumbnailer.mixcloud.com/unsafe/300x300/extaudio/3/3/f/b/e75c-b5da-4d33-bfe4-bc454c707ad1
(() => {
'use strict';
//*/
const enlarged =
location.pathname.replace(/\/(?<x>\d+)x(?<y>\d+)\//, (orig, ...args) => {
const { x, y } = args[args.length - 1];
if (x !== y) return orig;
// x === y; square
const side = Number(x);
return `/${ side * 2 }x${ side * 2 }/`;
});
// suppress reload
if (location.pathname === enlarged) return;
location.pathname = enlarged;
/*/
// WIP .match();
const [sides, x, y] = location.pathname.match(/\/(?<x>\d+)x(?<y>\d+)\//);
if (x !== y) return;
// x === y; square
const side = Number(x);
// TODO replace size
location.pathname = `/${ side * 2 }x${ side * 2 }/`;
//*/
})();
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。