יחידה:פרשן שולחן ערוך

מתוך ויקיטקסט, מאגר הטקסטים החופשי
קפיצה לניווט קפיצה לחיפוש

דף התיעוד: יחידה:פרשן שולחן ערוך/תיעוד

יחידה זו נועדה להחליף את הפונקציונליות של {{פרשע}} בשל הסיבות שנכתבו על כך במזנון.

היחידה מנסה לשמור על הפונקציונליות הרצויה מ{{פרשע}}, ואם היא איננה עושה זו, נא להעיר על כך בדף השיחה, או לפנות לאלישיב ליפא (שיחה | תרומות | מונה) בדף השיחה שלו.

יחידה זו גם משמשת ב{{משע}}, כך ששתי התבניות יישארו מתואמות.

שינויים מ{{פרשע}}[עריכה]

דוגמאות[עריכה]

{{#invoke:פרשן שולחן ערוך|פרשע|סמע|ג|חומ|רא}}

ניתן לראות דוגמא בה הקישור מוסתר בשולחן ערוך חושן משפט פו ומוצג בשולחן ערוך חושן משפט פו א

{{#invoke:פרשן שולחן ערוך|משע|מב|ג|נסיון}}

יוצא:

(ג) נסיון

קיצורים לשמות הספרים[עריכה]

-- הורד בגירסא הנוכחית. לצורך הסתרת הקישור או הצגתו בדף יש לשנות את הפונקציה viewComments. ראה להלן #הסתרת הקישורים.

קיצורים לפרשנים[עריכה]

הפרשן התקציר הצבע
באר היטב בהט זהב כהה
בית שמואל בש חום
ביאור הלכה בהל טורקיז
טורי זהב טז ירוק
כף החיים כהח סגול
מגן אברהם מגא/מא חום
משנה ברורה מב תכלת
פתחי תשובה פת תכלת
ספר מאירת עיניים סמע מג'נטה
שפתי כהן שך חום
באר הגולה בהג שזיף
עולת תמיד עת לא נקבע

הסתרת הקישורים[עריכה]

הפונקציה viewComments בודקת האם להציג או להסתיר את הקישורים לפירוש. אם יש דף שבו הקישורים מוצגים/מוסתרים שלא כדין, יש לתקן פונקציה זו.


-- Alias for commenters.
-- We want to use the same name, discard the alias that is used.
local commenterAlias = {}
-- assigning the shortcuts for the commenters.
-- line is split for readability.
commenterAlias["מב"] = 
	"מב"
commenterAlias["משנה ברורה"] = 
	"מב"
	
commenterAlias["פת"] = 
	"פת"
commenterAlias["פתחי תשובה"] = 
	"פת"
	
commenterAlias["בהט"] = 
	"בהט"
commenterAlias["באר היטב"] = 
	"בהט"
	
commenterAlias["מא"] = 
	"מא"
commenterAlias["מגא"] = 
	"מא"
commenterAlias["מגן אברהם"] = 
	"מא"

commenterAlias["שך"] = 
	"שך"
commenterAlias["שפתי כהן"] = 
	"שך"

commenterAlias["קצות"] = 
	"קצות"
commenterAlias["קצות החושן"] = 
	"קצות"

commenterAlias["בש"] = 
	"בש"
commenterAlias["בית שמואל"] = 
	"בש"

commenterAlias["בהל"] = 
	"בהל"
commenterAlias["ביאור הלכה"] = 
	"בהל"

commenterAlias["טז"] = 
	"טז"
commenterAlias["טורי זהב"] = 
	"טז"

commenterAlias["חמ"] = 
	"חמ"
commenterAlias["חלקת מחוקק"] = 
	"חמ"

commenterAlias["סמע"] = 
	"סמע"
commenterAlias["ספר מאירת עיניים"] = 
	"סמע"

commenterAlias["כהח"] = 
	"כהח"
commenterAlias["כף החיים"] = 
	"כהח"

commenterAlias["בהג"] = 
	"בהג"
commenterAlias["באר הגולה"] = 
	"בהג"

commenterAlias["שעת"] =
	"שעת"

commenterAlias["עת"] =
	"עת"

commenterAlias["בגר"] = 
	"בגר"

commenterAlias["פרמג"] = 
	"פרמג"

local colours = {}
-- assigning the colours.
-- line is split for readability.
colours["מב"] = 
	"תכלת" 
colours["פתחי תשובה"] = 
	"תכלת"
colours["פת"] = 
	"תכלת"
colours["בהט"] = 
	"זהב כהה" 
colours["מגא"] = 
	"חום"
colours["מא"] = 
	"חום"
colours["שך"] = 
	"חום"
colours["בש"] = 
	"חום"
colours["בהל"] = 
	"טורקיז"
colours["טז"] = 
	"ירוק"
colours["חמ"] = 
	"מג'נטה"
colours["סמע"] = 
	"מג'נטה"
colours["כהח"] = 
	"סגול"
colours["בהג"] = 
	"שזיף"
colours["בגר"]=
	"שחור"
colours["פרמג"]=
	"שחור"
--end of colour assignments

--shortcut names assignments
local BooksShortcuts = {}
BooksShortcuts["חומ"] =
	"שולחן ערוך חושן משפט"
BooksShortcuts["אהע"] =
	"שולחן ערוך אבן העזר"
BooksShortcuts["אוח"] =
	"שולחן ערוך אורח חיים"
BooksShortcuts["יוד"] =
	"שולחן ערוך יורה דעה"
BooksShortcuts["משנב"] =
	"משנה ברורה על אורח חיים"
--end of shortcuts assignments

local p = {}

local function commentIdModifier(commentID, commenter)
	if commenter == "בהל" then
		commentID = "*"
	end
	return commentID
end

local function viewComments(title)
	if mw.ustring.match(title, '%a+ %a+ %a+ %a+ %a%a?%a?%a? %a%a?%a?') then
		return true
	else
		return nil
	end
end

--frame[1] = name of commenter
--frame[2] = the comment ID
--frame[3] = the short book name
--frame[4] = the section
local function commenterRef(frame)
	local book = frame.args[3] or "חומ"
	local section = frame.args[4] or "פז"
	assert(section, "section is nil")
	--local iPName =  BooksShortcuts[book].. " ".. section -- the page on which the comment reference won't be shown.
	local commenter = commenterAlias[frame.args[1]] or "סמע"
	local commentID = frame.args[2] or "א"
	
	--if iPName == mw.title.getCurrentTitle().text then return nil
	if not viewComments(mw.title.getCurrentTitle().text) then return nil
	else
		local modifiedText = commentIdModifier(commentID, commenter)
		ret = mw.html.create('span')
				:attr('id', commentID..'_'..commenter)
		ret:tag('sup'):wikitext("[[#"..commenter.." "..commentID.."|"..frame:expandTemplate{
									title = "צבע גופן",
									args = {colours[commenter],
											modifiedText
											}
									}.."]]"
								)
		return ret
	end
end

local function commenterStart(frame)
	local commentID = frame.args[2]
	local commenterName = commenterAlias[frame.args[1]]
	local text = frame.args[3]
	local mCommentId = commentIdModifier(commentID, commenterName)
	

		return tostring(mw.html.create('span')
			:attr('id', commenterName..'_'..commentID))
			.."'''"
			.."[[#"
			..commentID..'_'..commenterName
			..'|'..'('..mCommentId..')'..']] '
			..text
			.."'''"
	
end

return {
	commenterRef = commenterRef,
	['פרשע'] = commenterRef,
	commenterStart = commenterStart,
	['משע'] = commenterStart
}