ויקיטקסט:ביטול מרחב קטע
מראה
הקדמה
[עריכה]לאור הנימוקים הבאים, הוחלט לבטל את מרחב השם "קטע".
- קשה למצוא את הדפים במרחב קטע.
- מקשה בתבניות - בחלק משתמשים בקטע ובחלק לא.
- אחידות.
- מקשה בציטוט - למשל כשרוצים להפנות לרש"י על בראשית א א, צריך להפנות לקטע:רש"י על בראשית א א.
- (קל לבצע העברה באמצעות pywikibot)
צורת ההעברה
[עריכה]- הדפים נמצאים כאן.
- שלב א': הוספת תבניות ניווט בתוך תגי <noinclude></noinclude>, ר' #תבניות ניווט.
- שלב ב': העברת הדפים, ר' #העברת הדפים.
- שלב ג': החלפת המופעים של [[קטע:, {{קטע: וכו' לצורה החדשה, [[ ו-{{: בהתאמה, ראה #החלפת טקסט
- יש להחליף הכללה בנפרד וקישור בנפרד, כי ההכללה צריכה להיות עם נקודותיים בהתחלה וקישור בלי.
- יש להחליף גם בויקיפדיה - אולי ע"י בוט דומה.
- שלב ד': ביטול המרחב באמצעות פתיחת פניה בפבריקטור וקישור לדיון במזנון.
קודים לבוטים
[עריכה]הבוטים כתובים בשפת פייתון דרך pywikibot.
תבניות ניווט
[עריכה]מפרשי התנ"ך:
python pwb.py add_text -start:! -ns:100 -text:"<noinclude>{{ניווט קטעים|{{ס:שם הדף}}}}</noinclude>" -summary:'הוספת {{ניווט קטעים|{{ס:שם הדף}}}}' -except:"ניווט" -up -always -titleregex:'(מסורה קטנה|תרגום שני|מסורה גדולה|מיוחס לרש\"י|שפ\"ח|רשב\"ם|אבן עזרא|תשובות דונש בן לברט לרב סעדיה גאון|שפת יתר|רד\"ק|רמב\"ן|רבינו בחיי|רלב\"ג|ספורנו|חזקוני|בכור שור|רבנו יונה|אברבנאל|רבי ישעיה די טראני|מלבי\"ם|אלשיך|חיד\"א|כלי יקר|אור החיים|הגאון מווילנה|רבי יוסף אבן כספי|רבי יוסף קרא|מגילת סתרים|מצודות|מצודת ציון|מצודת דוד|העמק דבר|משה דוד ואלי|תו\"א|תולדות אהרן|מכילתא|ספרא|ספרי|התורה והמצוה|ילקוט שמעוני|מנחת שי|בעל הטורים|נחמיאש) על (בראשית|שמות|ויקרא|במדבר|דברים|יהושע|שופטים|שמואל א|שמואל ב|מלכים א|מלכים ב|ישעיהו|ירמיהו|יחזקאל|תרי עשר|הושע|יואל|עמוס|עובדיה|יונה|מיכה|נחום|חבקוק|צפניה|חגי|זכריה|מלאכי|תהלים|משלי|איוב|שיר השירים|רות|אסתר|קהלת|איכה|דניאל|עזרא|נחמיה|דברי הימים א|דברי הימים ב|ישעיה|ירמיה|תהילים)( ק?[ט-צ]?[א-י]?){2}'
מפרשי בראשית רבה (פורמט דפי משנה):
python pwb.py add_text -links:'משתמש:shalomori123/טיוטה' -text:"<noinclude>{{ניווט קטעים|{{ס:שם הדף}}}}</noinclude>" -summary:'הוספת {{ניווט קטעים|{{ס:שם הדף}}}}' -except:"ניווט" -up -always -titleregex:'(יפה תואר|עץ יוסף|רש"י) על בראשית רבה(/[ט-ק]?[א-י]?){2}'
מפרשי התנ"ך שנמצאים כבר במרחב הראשי: (לצורך הבדלתם, התבנית ששמנו בהם היא שונה זמנית)
python pwb.py add_text -links:'משתמש:shalomori123/קישורים לבוט' -text:"<noinclude>{{ניווט קטעים זמני|{{ס:שם הדף}}}}</noinclude>" -summary:'הוספת {{ניווט קטעים זמני|{{ס:שם הדף}}}}' -except:"ניווט" -up -always
שאר הדפים אינם בשלים להעברה ויש לעבור עליהם ידנית ולשלבם במקומם. אפשר למצוא אותם כאן.
העברת הדפים
[עריכה]import pywikibot
import re
from pywikibot.bot import (SingleSiteBot, CurrentPageBot, ExistingPageBot, FollowRedirectPageBot)
from pywikibot.pagegenerators import AllpagesPageGenerator
class ketaTransformBot(SingleSiteBot, ExistingPageBot):
def __init__(self):
super().__init__()
self.site = pywikibot.Site()
self.generator = self.site.allpages(namespace=100)
self.edit_page = pywikibot.Page(self.site, 'טיוטה:דפים כפולים בין המרחבים')
def treat(self, page):
if not re.match('קטע:(מסורה קטנה|תרגום שני|מסורה גדולה|רש"י|מיוחס לרש\"י|שפ\"ח|רשב\"ם|אבן עזרא|תשובות דונש בן לברט לרב סעדיה גאון|שפת יתר|רד\"ק|רמב\"ן|רבינו בחיי|רלב\"ג|ספורנו|חזקוני|בכור שור|רבנו יונה|אברבנאל|רבי ישעיה די טראני|מלבי\"ם|אלשיך|חיד\"א|כלי יקר|אור החיים|הגאון מווילנה|רבי יוסף אבן כספי|רבי יוסף קרא|מגילת סתרים|מצודות|מצודת ציון|מצודת דוד|העמק דבר|משה דוד ואלי|תו\"א|תולדות אהרן|מכילתא|ספרא|ספרי|התורה והמצוה|ילקוט שמעוני|מנחת שי|בעל הטורים|נחמיאש) על (בראשית|שמות|ויקרא|במדבר|דברים|יהושע|שופטים|שמואל א|שמואל ב|מלכים א|מלכים ב|ישעיהו|ירמיהו|יחזקאל|תרי עשר|הושע|יואל|עמוס|עובדיה|יונה|מיכה|נחום|חבקוק|צפניה|חגי|זכריה|מלאכי|תהלים|משלי|איוב|שיר השירים|רות|אסתר|קהלת|איכה|דניאל|עזרא|נחמיה|דברי הימים א|דברי הימים ב|ישעיה|ירמיה|תהילים)( ק?[ט-צ]?[א-י]?){2}', page.title()) \
and not re.match('קטע:(יפה תואר|עץ יוסף|רש"י) על בראשית רבה(/[ט-ק]?[א-י]?){2}', page.title()):
print(page.title(), 'skipped')
return
new_title = page.title().replace('קטע:', '')
if page.isRedirectPage():
redirect_to = page.getRedirectTarget()
if redirect_to.title() == new_title:
print(page.title(), 'already moved')
return
if pywikibot.Page(self.site, new_title).exists():
pywikibot.output('New title: "{}" is already exists!'.format(new_title))
if new_title in self.edit_page.text:
return
self.edit_page.text += '\n* [[קטע:{}]] ← [[{}]]'.format(new_title, new_title)
self.edit_page.save()
return
pywikibot.output('Moving page {} to [[{}]]'.format(page, new_title))
page.move(new_title, reason='העברה בעקבות ביטול מרחב השם "קטע"')
bot = ketaTransformBot()
bot.run()
לאחר מכן נצטרך לעבור ידנית על הדף טיוטה:דפים כפולים בין המרחבים שכנראה יווצר במהלך הרצת הבוט.
החלפת טקסט
[עריכה]python pwb.py replace -ns:0 '[[קטע:' '[[' '{{קטע:' '{{:'
לאחר מכן יש לעבור על תבניות בולטות שמשתמשות בקטעים ולשנות אותם.