עריכת הדף "
חב"דפדיה:לואה
" (פסקה)
קפיצה לניווט
קפיצה לחיפוש
אזהרה:
אינכם מחוברים לחשבון. כתובת ה־IP שלכם תוצג בפומבי אם תבצעו עריכות כלשהן. אם
תיכנסו לחשבון
או
תיצרו חשבון
, העריכות שלכם תיוחסנה לשם המשתמש שלכם ותקבלו גם יתרונות אחרים.
בדיקת אנטי־ספאם.
אין
למלא שדה זה!
==איך זה פועל== להבדיל מתבניות, שהן בעצם דפים "רגילים" שיכולים להימצא במרחב שם כלשהו, מודולים חייבים להמצא במרחב שם חדש שנקרא "יחידה" (באנגלית module). כל יחידה מחזירה משתנה מקומי, שהשדות השונים שלו הם פונקציות שתבניות יכולות להשתמש בהן. כך נראית יחידה שנקראת, נניח, M, (כלומר, נמצאת בדף [[יחידה:M]]) ומייצאת שתי פונקציות: f1 ו-f2: <syntaxhighlight lang="lua"> local m = {} -- you can use any name you want - it does not have to be identical to the module name function m.f1(frame) return "שלום לכולם" end -- these two ways to define the function are practically synonymous. the 2nd form below is more common. m.f2 = function(frame) return "להתראות" end -- this function cannot be called using #invoke, because it's not a member of m. it can be called from other functions in the module. function f3(x) return x * 2 end -- however, we can expose a function, say, f4, by defining it first, and then adding it to m like so: function something(frame) -- do something end m.f4 = something -- for Hebrew function names, use the following syntax: m["עברית"] = function(frame) return "שלום בעברית" end return m </syntaxhighlight> כדי להשתמש במודול, יש "מילת קסם" חדשה בשם invoke. למילה הזו יש לתת שני פרמטרים: שם המודול ושם הפונקציה. בנוסף, אפשר להוסיף פרמטרים נוספים ככל שנדרש - פרמטרים נוספים אלו יועברו לפונקציה. הנה דוגמה להפעלת הפונקציה f1 בלי פרמטרים: {{משמאל לימין| <nowiki>{{#invoke:M|f1}}</nowiki>}} כנראה גם למילת הקסם invoke יהיה תרגום לעברית. ===העברת פרמטרים לפונקציה ב-Lua=== הפונקציה שנקראת מ-invoke מקבלת תמיד פרמטר יחיד שנהוג (אם כי לא חובה) לקרוא לו frame. פרמטר זה אורז בתוכו מידע שהפונקציה ב-lua יכולה למצות ולהשתמש בו. לדוגמה, מידע על התבנית שמכילה את הקריאה ל-invoke ארוז ב-{{משמאל לימין|frame:getParent()}}. בדומה, הפרמטרים שמועברים מהתבנית ארוזים ב-frame.args. בדומה לפרמטרים לתבניות, פרמטרים לפונקציה יכולים להיות מבוססי סדר או שמיים. נניח שאנחנו רוצים להעביר לפונקציה king_wives שלושה פרמטרים: פרמטר שמי בשם "מלך", ושני פרמטרים מבוססי סדר: {{משמאל לימין| <nowiki>{{#invoke:m|king_wives|מלך=שלמה|40|25}}</nowiki>}} הפונקציה ניגשת לפרמטרים בעזרת args: <syntaxhighlight lang="lua"> function m.king_wives(frame) local king = frame.args["מלך"] local param1 = frame.args[1] local param2 = frame.args[2] -- do something with the parameters, e.g.: return string.format("ל%s המלך היו %d נשים", king, param1 * param2) end </syntaxhighlight> אם נקרא לפונקציה כמו בדוגמה למעלה, נקבל בדף "לשלמה המלך היו 1000 נשים". לעומת זאת, הקריאה: {{משמאל לימין| <nowiki>{{#invoke:m|king_wives|מלך=דוד|3|6}}</nowiki>}} תניב "לדוד המלך היו 18 נשים". ===הערך המוחזר מהפונקציה=== הפונקציות הפנימיות במודול יכולות להחזיר ערך מסוג כלשהו - שום דבר, מספר, מחרוזת, טבלה, ערך בוליאני, או אפילו פונקציה. פונקציה "ראשית", כלומר כזו שנקראת מקוד ויקי, צריכה להחזיר מחרוזת. אחרי הקריאה לפונקציה, המחרוזת שהוחזרה מועברת לפורס (parser) להמשך העיבוד. המשמעות היא שאם הפונקציה רוצה, למשל, לצייר תמונה, היא לא אמורה להחזיר מחרוזת html עם תג img, אלא מחרוזת בקוד ויקי, כמו שהייתם שמים בדף - <nowiki>[[קובץ:שם הקובץ]]</nowiki>. אם הפונקציה רוצה לצייר טבלה, היא מחזירה את קוד הוויקי של הטבלה. בדומה, ניתן להחזיר קריאה לתבנית וכן הלאה.
תקציר:
לתשומת ליבך: תרומתך לאתר חב"דפדיה תפורסם לפי תנאי הרישיון GNU Free Documentation License 1.2 (אפשר לעיין בדף
חב"דפדיה:זכויות יוצרים
לפרטים נוספים). אם אינך רוצה שעבודתך תהיה זמינה לעריכה על־ידי אחרים, שתופץ לעיני כול, ושאחרים יוכלו להעתיק ממנה תוך ציון המקור – אין לפרסם אותה פה.
כמו־כן, שמירת העריכה משמעה הבטחה שכתבת את הטקסט הזה בעצמך או העתקת אותו ממקור בנחלת הכלל (שאינו מוגבל בזכויות יוצרים) או מקור חופשי דומה.
אין לשלוח חומר מוגבל בזכויות יוצרים ללא רשות!
ביטול
עזרה בעריכה
(נפתח בחלון חדש)
תפריט ניווט
כלים אישיים
לא בחשבון
שיחה
תרומות
יצירת חשבון
כניסה לחשבון
מרחבי שם
דף מיזם
שיחה
עברית
צפיות
קריאה
עריכת קוד מקור
גרסאות קודמות
עוד
ניווט
עמוד ראשי
ברוכים הבאים
אולם דיונים
לוח מודעות
שינויים אחרונים
ערך אקראי
דיווח על טעות
עזרה
חב"דפדיה להורדה
צור קשר/תרומה
פורטלים
נשיאי חב"ד
ימי חב"ד
גאולה ומשיח
תורת החסידות
תורת הנגלה
ניגוני חב"ד
ספרות חב"ד
בית רבי
אישי חב"ד
הפצת המעיינות
קישורים
חב"ד אינפו
ארכיון גאולה ומשיח
כלים
דפים המקושרים לכאן
שינויים בדפים המקושרים
דפים מיוחדים
מידע על הדף