您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
修复 Notion Page Content 复制为 Markdown 后的格式错乱问题。
- // ==UserScript==
- // @name fix-markdown-format-of-notion-page
- // @name:en Fix markdown format of notion page after copy action
- // @name:zh-CN 修复 Notion Page Content 复制为 Markdown 后的格式错乱问题
- // @description 修复 Notion Page Content 复制为 Markdown 后的格式错乱问题。
- // @description:zh-CN 修复 Notion Page Content 复制为 Markdown 后的格式错乱问题。
- // @description:en Fix markdown format of notion page after copy action.
- // @namespace https://github.com/Seven-Steven/tampermonkey-scripts/tree/main/fix-markdown-format-of-notion-page
- // @version 0.1
- // @license MIT
- // @author Seven
- // @match *://www.notion.so/*
- // @icon https://www.google.com/s2/favicons?sz=64&domain=notion.so
- // ==/UserScript==
- (function () {
- 'use strict';
- init();
- /**
- * 初始化动作
- */
- function init() {
- window.addEventListener('copy', fixNotionMarkdownInClipboard);
- }
- /**
- * 修正剪切板中 markdown 的格式
- */
- function fixNotionMarkdownInClipboard(event) {
- navigator.clipboard.readText().then(text => {
- const markdown = fixMarkdownFormat(text);
- navigator.clipboard.writeText(markdown).then(() => {
- }, () => {
- console.log('failed.');
- })
- })
- }
- /**
- * 修正 markdown 格式
- */
- function fixMarkdownFormat(markdown) {
- if (!markdown) {
- return;
- }
- // 给没有 Caption 的图片添加默认 ALT 文字
- markdown = markdown.replaceAll(/\!(http.*\.\w+)/g, (match, group1) => {
- const processedText = decodeURIComponent(group1);
- console.log('regex', processedText);
- return ``;
- });
- // 给有 Caption 的图片去除多余文字
- const captionRegex = /(\!\[(?<title>.+?)\]\(.*?\)\s*)\k<title>\s*/g;
- return markdown.replaceAll(captionRegex, '$1');
- }
- })();