您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Adds a link to Sefaria on Hebrew Wikisource pages
- // ==UserScript==
- // @name Add Sefaria Link to Wikisource
- // @namespace http://torahchats.com/
- // @version 1.1
- // @description Adds a link to Sefaria on Hebrew Wikisource pages
- // @author Binjomin Szanto-Varnagy
- // @license MIT
- // @match https://he.wikisource.org/wiki/*
- // @grant none
- // ==/UserScript==
- (function() {
- 'use strict';
- // Dictionary mapping Hebrew book names to Sefaria's English book names
- const bookNameMap = {
- "בראשית": "Genesis",
- "שמות": "Exodus",
- "ויקרא": "Leviticus",
- "במדבר": "Numbers",
- "דברים": "Deuteronomy",
- "יהושע": "Joshua",
- "שופטים": "Judges",
- "שמואל א": "I_Samuel",
- "שמואל ב": "II_Samuel",
- "מלכים א": "I_Kings",
- "מלכים ב": "II_Kings",
- "ישעיהו": "Isaiah",
- "ירמיהו": "Jeremiah",
- "יחזקאל": "Ezekiel",
- "הושע": "Hosea",
- "יואל": "Joel",
- "עמוס": "Amos",
- "עובדיה": "Obadiah",
- "יונה": "Jonah",
- "מיכה": "Micah",
- "נחום": "Nahum",
- "חבקוק": "Habakkuk",
- "צפניה": "Zephaniah",
- "חגי": "Haggai",
- "זכריה": "Zechariah",
- "מלאכי": "Malachi",
- "תהלים": "Psalms",
- "משלי": "Proverbs",
- "איוב": "Job",
- "שיר השירים": "Song_of_Songs",
- "רות": "Ruth",
- "איכה": "Lamentations",
- "קהלת": "Ecclesiastes",
- "אסתר": "Esther",
- "דניאל": "Daniel",
- "עזרא": "Ezra",
- "נחמיה": "Nehemiah",
- "דברי הימים א": "I_Chronicles",
- "דברי הימים ב": "II_Chronicles"
- };
- // Step 1: Extract the reference from the URL
- const url = decodeURI(window.location.href);
- const regex = /קטגוריה:([^_]+)_([^_]+)_([^_]+)/;
- const match = url.match(regex);
- if (match) {
- const hebrewBook = match[1].replace(/_/g, " "); // Get Hebrew book name
- const chapter = hebrewToNumber(match[2]); // Get chapter number
- const verse = hebrewToNumber(match[3]); // Get verse number
- // Step 2: Translate the Hebrew book name to English using the dictionary
- const englishBook = bookNameMap[hebrewBook];
- if (englishBook) {
- // Step 3: Create the Sefaria URL
- const sefariaUrl = `https://www.sefaria.org/${englishBook}.${chapter}.${verse}?lang=bi`;
- // Step 4: Inject the link to Sefaria at the top of the Wikisource page
- const sefariaLink = document.createElement('a');
- sefariaLink.href = sefariaUrl;
- sefariaLink.innerText = "View this chapter on Sefaria";
- sefariaLink.style.display = 'block';
- sefariaLink.style.margin = '10px';
- sefariaLink.style.fontWeight = 'bold';
- sefariaLink.style.color = 'blue';
- // Step 5: Append the link to the top of the body
- document.body.prepend(sefariaLink);
- }
- }
- })();
- function hebrewToNumber(hebrew) {
- // Special cases for 15 (טו) and 16 (טז)
- if (hebrew === "טו") return 15;
- if (hebrew === "טז") return 16;
- // Map of Hebrew letters to their corresponding numeric values
- const gematriaMap = {
- 'א': 1, 'ב': 2, 'ג': 3, 'ד': 4, 'ה': 5, 'ו': 6, 'ז': 7, 'ח': 8, 'ט': 9,
- 'י': 10, 'כ': 20, 'ל': 30, 'מ': 40, 'נ': 50, 'ס': 60, 'ע': 70, 'פ': 80, 'צ': 90,
- 'ק': 100, 'ר': 200, 'ש': 300, 'ת': 400
- };
- // Convert the Hebrew string into a number
- let number = 0;
- for (let i = 0; i < hebrew.length; i++) {
- const letter = hebrew[i];
- if (gematriaMap[letter]) {
- number += gematriaMap[letter];
- } else {
- console.warn(`Unknown Hebrew letter: ${letter}`);
- }
- }
- return number;
- }
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址