Obsidian Clipper

Clip url of current page to Obsidian existing note

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

You will need to install an extension such as Tampermonkey to install this script.

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         Obsidian Clipper
// @version      0.2
// @description  Clip url of current page to Obsidian existing note
// @author       declider
// @match        *://*/*
// @icon         https://obsidian.md/favicon.ico
// @grant        GM_registerMenuCommand
// @namespace    https://greasyfork.org/users/1257876
// @noframes
// @license      MIT
// ==/UserScript==

/* eslint-disable no-multi-spaces */

// First of all, you need to install advancedURI in Obsidian plugins and enable it
// Then edit values below
const vault       = "Daily" // Name of your vault
const filepath    = "Заметки/Chrome Clippings" // Path to your note
const includeDate = true // Include date or not, can be false or true
// The end of settings





const url = `obsidian://advanced-uri?mode=append&vault=${vault}&filepath=${filepath}&data=` // don't edit this

function openURL(data) {
    let a = document.createElement('a')
    a.href = encodeURI(data)
    a.style.display = 'none'
    document.body.appendChild(a)
    a.click()
    document.body.removeChild(a)
}


function saveURL() {
    let title = prompt("Enter name for link", document.title)
    if (!title) { return }
    let link = encodeURIComponent(window.location.href)
    let date = includeDate ? "  " + new Date().toLocaleDateString() : ""
    let data = `\n${url}\n[${title}](${link})${date}`
    openURL(data)
}

GM_registerMenuCommand("Bookmark", saveURL, "u")