Skip to content

Instantly share code, notes, and snippets.

View ricky9w's full-sized avatar
🏠
Working from home

Richard Wang ricky9w

🏠
Working from home
View GitHub Profile
@ricky9w
ricky9w / README.md
Last active May 27, 2026 05:49
Amazon 利润计算器 — 油猴脚本(自动更新源 / revcal)

Amazon 利润计算器 · 油猴脚本

www.amazon.com 商品页一键估算单品毛利毛利率,辅助选品 / 市场考察。仅支持美国站

这是项目的油猴脚本端说明。还有功能一致的网页版(部署在 Cloudflare Workers)。

安装(从 Gist 安装才能自动更新)

  1. 浏览器安装 Tampermonkey
  2. 打开下面的链接,Tampermonkey 会拦截 .user.js 并弹出安装页:
@ricky9w
ricky9w / README.md
Last active May 27, 2026 04:47
知乎直答链接还原 - Tampermonkey 用户脚本,去除知乎回答/文章中的「知乎直答」链接干扰

知乎直答链接还原

一个 Tampermonkey 用户脚本,用于去除知乎回答、文章中被自动插入的「知乎直答」链接干扰。

背景

知乎会自动识别正文中的部分关键词,将其转换为指向 zhida.zhihu.com(知乎直答)的链接,并在词尾附加一个四角星图标。这些链接并非作者本意,且在阅读时造成明显干扰。本脚本将它们还原为普通文字。

工作方式

@ricky9w
ricky9w / README.md
Last active September 10, 2026 20:55
URL Trimmer — 清理浏览器地址栏中的跟踪参数 (Tampermonkey 用户脚本)

URL Trimmer

一个轻量的 Tampermonkey 用户脚本,只清理浏览器地址栏里的跟踪参数,让你复制、分享出去的链接干净整洁。

设计思路

  • 只动地址栏,不碰网络请求。 与 ClearURLs 之类的工具不同,本脚本不拦截、不改写 fetch / XMLHttpRequest,也不阻止参数发往服务器。它唯一的目标是:让地址栏中显示、以及你复制出去的 URL 是干净的。因此它不会破坏任何依赖这些参数的页面功能。
  • 黑名单模式。 只删除已知的垃圾 / 跟踪参数,其余参数原样保留。没有白名单,不清理 hash,不解包跳转链接。
  • 两级规则:
  1. 全局规则 —— 对所有网站生效(如 utm_*fbclidgclidmsclkid 等);
@ricky9w
ricky9w / settings.example.json
Created February 25, 2026 17:10
A simple status line script for Claude Code that shows token usage.
{
"statusLine": {
"type": "command",
"command": "/bin/bash ~/.claude/statusline.sh",
"padding": 0
}
}
@ricky9w
ricky9w / waf-block-chinese-browsers.lua
Created April 24, 2025 17:09
Blacklist of user agent strings for Cloudflare WAF targeting Chinese browsers/apps/devices/spiders
(http.user_agent contains "360")
or (http.user_agent contains "360SE")
or (http.user_agent contains "360EE")
or (http.user_agent contains "360AI")
or (http.user_agent contains "360ENT")
or (http.user_agent contains "QHBrowser")
or (http.user_agent contains "QihooBrowser")
or (http.user_agent contains "UCBrowser")
or (http.user_agent contains "UCWEB")
or (http.user_agent contains "UBrowser")
@ricky9w
ricky9w / sohu-hide-distractions.user.js
Created March 21, 2025 12:35
Remove Sohu pop-ups and slide-bar ads
// ==UserScript==
// @name Sohu Hide Distractions
// @version 0.1
// @description Remove Sohu pop-ups and slide-bar ads
// @author ricky9w
// @match https://www.sohu.com/a/*
// @grant none
// ==/UserScript==
(function() {
@ricky9w
ricky9w / keep-bilibili-subtitle.js
Created September 3, 2024 07:24
自动记忆并应用哔哩哔哩视频字幕的开关状态,在观看多P视频时保持一致的字幕设置
// ==UserScript==
// @name Bilibili字幕状态记忆
// @namespace http://tampermonkey.net/
// @version 0.4
// @description 自动记忆并应用哔哩哔哩视频字幕的开关状态,在观看多P视频时保持一致的字幕设置
// @author Richard Wang
// @email me@rikko.top
// @match *://www.bilibili.com/video/*
// ==/UserScript==
@ricky9w
ricky9w / XHS-Downloader.js
Created August 2, 2024 13:45
下载小红书无水印图文/视频作品
// ==UserScript==
// @name XHS-Downloader
// @namespace https://github.com/ricky9w
// @version 1.4.1
// @description 下载小红书无水印图文/视频作品
// @author JoeanAmier (improved and compiled by ricky9w & Claude AI)
// @match http*://www.xiaohongshu.com/*
// @grant GM_getValue
// @grant GM_setValue
// @grant unsafeWindow
@ricky9w
ricky9w / HumidityCalculator.tsx
Created August 1, 2024 20:18
A Next.js component that calculates the amount of water needed to adjust room humidity
import React, { useState } from 'react';
import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"
import { Input } from "@/components/ui/input"
import { Button } from "@/components/ui/button"
import { Label } from "@/components/ui/label"
const HumidityCalculator = () => {
const [temperature, setTemperature] = useState('');
const [currentHumidity, setCurrentHumidity] = useState('');
const [targetHumidity, setTargetHumidity] = useState('');
@ricky9w
ricky9w / HideAdsFromGoogleSearch.js
Created July 31, 2024 06:38
Hide 'Sponsored' results from Google search results
// ==UserScript==
// @name Hide Ads From Google Search Page
// @description Hide 'Sponsored' results from Google search results
// @match https://www.google.com/search*
// ==/UserScript==
(function() {
'use strict';
// Function to hide elements