סקריפט Tampermonkey שמתרגם את הממשק של github.com לעברית.
- מונחי GitHub נשארים באנגלית: commit, pull request, issue, branch, repository, fork ועוד.
- הטקסט העברי מוצג מימין לשמאל, בלי להפוך את פריסת האתר ובלי יישור לימין.
- המילון חיצוני לקוד, ומתעדכן אוטומטית מהמאגר הזה.
- מצב איסוף: הסקריפט מזהה מחרוזות שעוד לא תורגמו, ואפשר לשלוח אותן למפתח בלחיצת כפתור.
- עובד ברשת של נטפרי (מצריך גישה ל-
raw.githubusercontent.comאו ל-cdn.jsdelivr.netרק לעדכון המילון; בלי גישה — הסקריפט ממשיך לעבוד עם המילון המובנה).
⚠️ גרסה 0.0.2 — ניסיונית. נבדקה בדפדפן אמיתי רק מול עמוד דוגמה, ולא מול github.com עצמו. ייתכנו טקסטים שלא יתורגמו, ומקרים שבהם הכיווניות לא מושלמת. דיווחים יתקבלו בברכה.
הפרויקט עצמאי ואינו קשור ל-GitHub, Inc. ואינו מאושר על ידה.
-
התקינו את התוסף Tampermonkey (או Violentmonkey) בדפדפן.
-
פתחו את הקישור הבא, ו-Tampermonkey יציע להתקין:
(הקובץ נוצר ומתפרסם אוטומטית ע"י ה-CI בכל מיזוג ל-
main, אחרי שכל הבדיקות עברו. ראו "איפה הקבצים הבנויים" למטה.) -
היכנסו ל-github.com. הממשק אמור להיות בעברית.
אם raw.githubusercontent.com חסום ברשת שלכם: הורידו את github-he.user.js מדף ה-Releases (או מהפורום), ואז Tampermonkey ← "כלי עזר" ← "ייבוא", או גררו את הקובץ לדפדפן.
- הקוד: Tampermonkey בודק עדכוני גרסה לבד (הגדרות Tampermonkey ← "בדוק עדכונים").
- המילון: מתעדכן כל כמה שעות מהקובץ
he.jsonבענףdistשל המאגר, בלי קשר לגרסת הקוד. אפשר לכבות בתפריט, ואפשר לעדכן ידנית ("עדכון המילון עכשיו").
לחצו על סמל Tampermonkey בזמן שאתם באתר GitHub:
| פקודה | מה היא עושה |
|---|---|
| תרגום: מופעל/כבוי | הפעלה או כיבוי של התרגום (דורש רענון, נעשה אוטומטית) |
| איסוף מחרוזות: מופעל/כבוי | רישום מקומי של מחרוזות שלא תורגמו |
| 📤 שליחה למפתח… | חלון לבדיקה ושליחה של המחרוזות שנאספו |
| ייצוא מחרוזות שנאספו | הורדת קובץ JSON (חלופה לשליחה) |
| מחיקת מחרוזות שנאספו | ניקוי האיסוף המקומי |
| כיווניות | auto (ברירת מחדל) / css / isolate / off |
| עדכון המילון עכשיו | בדיקה מיידית מול המאגר |
| עדכון אוטומטי של המילון | הפעלה/כיבוי |
| ייבוא מילון אישי | קובץ JSON {"English": "עברית"} שגובר על המילון המובנה |
| ℹ️ מצב ומידע | גרסה, גודל מילון, כיסוי בדף הנוכחי, מצב האיסוף |
לדיבוג, בקונסולה של הדפדפן:
GHE.stats() // כמה צמתים תורגמו/לא תורגמו בדף וכיסוי באחוזים
GHE.untranslated() // המחרוזות שלא תורגמו בדף הנוכחי- תפריט ← איסוף מחרוזות: מופעל.
- גלשו באתר כרגיל. הסקריפט רושם מקומית (באחסון של Tampermonkey) מחרוזות ממשק שאין להן תרגום.
- מחרוזת נחשבת "מוכנה" רק אחרי שנראתה לפחות 3 פעמים ב-2 סוגי עמודים שונים (כדי שלא נאסוף תוכן אישי).
- כשיש מחרוזות מוכנות מופיע כפתור 📤 שליחה למפתח (N). הוא פותח חלון עם הרשימה המלאה: עברו עליה, בטלו מה שנראה לכם אישי, אשרו, ושלחו.
- השליחה יוצרת Issue ציבורי במאגר הזה, בחשבון GitHub שלכם. אם היא נכשלת, יש חלופות: העתקה ללוח או טופס Issue מוכן.
פרטים מלאים על הפרטיות: docs/PRIVACY.md.
העברית מוצגת RTL בלי לשנות את פריסת האתר:
- אלמנט שמכיל רק טקסט מקבל
data-gheו-CSS:direction: rtl; unicode-bidi: isolate; text-align: left. - אלמנט שמכיל גם אייקון/רכיבים אחרים — הטקסט עצמו עטוף בתווי
RLI/PDI, כדי שהאייקון לא יזוז.
מגבלות: העתקת טקסט וחיפוש בדף (Ctrl+F) עלולים לכלול תווי בקרה בצמתים מסוג השני; text-overflow: ellipsis ב-RTL חותך מצד שמאל. אם משהו נשבר, נסו מצב אחר בתפריט.
- משפטים שמורכבים מכמה אלמנטים ("
useropened this issue3 days ago") מתורגמים רק בחלקם. ראו ROADMAP.md. - תאריכים יחסיים (
relative-time) לא מטופלים עדיין. - תוכן משתמשים (issues, הערות, README, קוד) לא מתורגם בכוונה.
- GitHub Enterprise Server, Gist ו-docs אינם נתמכים.
- שליחת Issue מתבצעת דרך הטופס של האתר ולא נבדקה מול github.com האמיתי. אם GitHub ישנה את הטופס, ישנן שתי חלופות ידניות.
הקבצים הבנויים לא נשמרים ב-main (כך אפשר להגן על main עם PR ובדיקות חובה). בכל מיזוג ל-main, אחרי שכל הבדיקות עברו, ה-CI מפרסם אותם בשלושה מקומות:
| מה | איפה | מי משתמש |
|---|---|---|
ענף dist |
github-he.user.js, github-he.meta.js, he.json, SHA256SUMS |
עדכון אוטומטי של הסקריפט (Tampermonkey) ושל המילון |
Release latest-build (pre-release) |
אותם קבצים, מתעדכן בכל שינוי בתוצר | הורדה ידנית של הבנייה האחרונה |
Release vX.Y.Z |
אותם קבצים + הערות שחרור | נוצר אוטומטית כשמעלים את version ב-package.json |
אם התוצר הבנוי לא השתנה (למשל שינוי תיעוד בלבד), לא מתפרסם דבר חדש.
הגדרה חד-פעמית אחרי ההעלאה הראשונה: בדקו ב-Settings ← Actions ← General ← Workflow permissions שמוגדר "Read and write permissions". הענף dist והריליסים ייווצרו אוטומטית בהרצה הראשונה.
דרישות: Node 18+ (בלי תלויות בזמן ריצה).
npm run validate # בדיקת המילון
npm test # בדיקות יחידה
npm run build # dict/he.json + dist/github-he.user.js (נוצרים מקומית, לא נשמרים ב-git)
npm run test:e2e # בונה ואז בדיקות דפדפן (דורש: npm i && npx playwright install chromium)מבנה המאגר:
src/ קוד הסקריפט (מודולים CommonJS)
dict/ dict/sources/ (מקורות המילון); dict/he.json נוצר בבנייה
tools/ build, validate_dict, merge_collected
test/ בדיקות יחידה ו-e2e
dist/ github-he.user.js + github-he.meta.js (נוצרים בבנייה)
docs/ SPEC, GLOSSARY, CONTRIBUTING, PRIVACY
מקורות המילון לפי עדיפות (הנמוך בראשון): seed-app.json ← reviewed.json ← manual.json.
ראו docs/CONTRIBUTING.md ו-docs/GLOSSARY.md (כללי תרגום ומונחים שנשארים באנגלית).