שיחת מדיה ויקי:סקריפטים/49.js

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

סקריפט "כלי עריכה אישיים"[עריכת קוד מקור]

מה זה עושה?[עריכת קוד מקור]

סקריפט זה פועל כאשר אתם במצב "עריכה". ממצב זה, הסקריפט קורא את הדף בשם "כלי עריכה" במרחב המשתמש שלכם (מיוחד:הדף שלי/כלי עריכה), ופורס את תוכנו בקופסה חדשה שנוספת מתחת לתיבת העריכה. על ידי שימוש בתג מיוחד בשם charinsert, תווים או קטעים מהדף הזה מועתקים בלחיצת מקש לתוך תיבת העריכה. במלים אחרות, הסקריפט הזה מאפשר לכם להגדיר כפתורי עריכה אישיים.

מבנה הדף המיוחד[עריכת קוד מקור]

דוגמה פשוטה[עריכת קוד מקור]

(בגלל שימוש בתג nowiki, יש צורך להכנס לדוגמה במצב "עריכה" כדי לראות את תוכן הדף).

בדוגמה זו, אנו משתמשים בתג charinsert יחיד. כל מה שמופיע אחרי התג הופך ל"כפתורים", כאשר לחיצה על כל כפתור מזריקה את תוכנו לתיבת העריכה. אם מופיע "+" בטקסט, לאחה ההזרקה זה יהיה מיקום הסמן לאחר שהתוכן יוזרק. בנוסף, אם בזמן הלחיצה על הכפתור יש טקסט מסומן בתיבת העריכה, תוכן הכפתור יקיף את הטקסט המסומן שיופיע במקום ה-"+".

תוכלו לראות את הכפתורים בצורה נאה יותר (דומה יותר לכפתורים ממש) על ידי הכללת הקוד הבא בדף ה-css האישי שלכם (מיוחד:הדף שלי/common.css)

/**
 * Styling for links generated by [[MediaWiki:Edittools]]
 * @source www.mediawiki.org/wiki/Extension:CharInsert#Styling
 * @updated 2012-02-29
 */
.mw-charinsert-buttons {
        margin-top: 10px;
        border: 1px solid #aaaaaa;
        padding: 1px;
        text-align: center;
        font-size: 110%;
}
.mw-charinsert-buttons a {
        color: black;
        background-color: #cde !important;
        font-weight: bold;
        font-size: .9em;
        text-decoration: none;
        border: thin #069 outset;
        border-radius: 4px;
        -moz-box-shadow:    3px 3px 3px #999;
        -webkit-box-shadow: 3px 3px 3px #999;
        box-shadow:         3px 3px 3px #999;
        padding: 0 .1em .1em;
        margin: 0.2em;
}
.mw-charinsert-buttons a:hover,
.mw-charinsert-buttons a:active {
        background-color: #bcd;
        border-style: inset;
}
.client-js .mw-edittools-section {
        display: inline;
}
.client-js .mw-edittools-section input[type="button"] {
        font-size: 0.9em;
        padding-left: 1px;
        padding-right: 1px;
        margin-left: 1px;
}

תיעוד מבנה הדף[עריכת קוד מקור]

מבנה הדף מיוחד:הדף שלי/כלי עריכה מתועד במלואו בדף mw:Extension:Charinsert.
הדף יכול להכיל טקסט פשוט, ו"כפתורים". הכפתורים הם מה שנמצא בין תגי charinsert (כמו בדוגמה למעלה). תו בודד או רצף תווים בלי רווחים ייצרו כפתור אחד. לסימן "+" (פלוס) יש משמעות מיוחדת: אם לוחצים על כפתור שבהגדרה שלו מופיע + בזמן שיש בתיבת העריכה טקסט מסומן, תוכן הכפתור יוזרק לתיבת העריכה באופן שהטקסט המסומן יחליף את ה-+. אם אין טקסט מסומן בתיבת העריכה, אחרי הזרקת תוכן הכפתור לתיבת העריכה, מיקום הסמן יהיה במקום בו היה סימן הפלוס, וסימן הפלוס עצמו ייעלם.

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

כדי לערב בכלי העריכה טקסט פשוט וכפתורים, יש להקיף את הכפתורים בלבד בתגי charinsert, כך:

תיאור כפתור 1: <charinsert>תוכן-1</charinsert>  תיאור כפתור 2: <charinsert>תוכן-2</charinsert>  תיאור כפתור 3: <charinsert>תוכן-3</charinsert>  

והתוצאה:

תיאור כפתור 1: תוכן-1 תיאור כפתור 2: תוכן-2 תיאור כפתור 3: תוכן-3

שימו לב שבדוגמה למעלה תוכן הכפתורים לא כולל רווחים או סימנים מיוחדים. אם היינו רוצים גם רווחים, היינו צריכים להקיף את תוכן הכפתורים בתג nowiki, כך שתג nowiki פנימי לתג charinsert.

כפתורים לפי מרחבים[עריכת קוד מקור]

ניתן להגדיר בדף מיוחד:הדף שלי/כלי עריכה, כפתורים שיופיעו רק במרחבי שם ספציפיים. זה מתבצע על ידי יצירת אלמנט html עם id מיוחד: personal-edittools-NAMESPACENAME כאשר במקום NAMESPACENAME יופיע השם הקנוני של מרחב השם (עבור מרחב הערכים, שאין לו שם קאנוני, נשתמש ב-Article), ועם style שמכיל display:none.

הדוגמה הבאה מראה סעיף בדף "כלי עריכה" עם תגי includeonly, noinclude ו-onlyinclude כך שהכפתורים הללו זמינים רק כאשר אתם עורכים דף במרחב התבניות:

<p id="personal-edittools-Template" style="display:none; direction:ltr">
<charinsert><includeonly>+</includeonly> <onlyinclude>+</onlyinclude> <noinclude>+</noinclude></charinsert></p>

בדומה, הדוגמה הבאה מראה שורת כפתורים דוגמת {{אזהרה}} ו-{{בה}} שזמינים רק במרחב "שיחת משתמש" (User_talk):

<p id="personal-edittools-User_talk" style="display:none;">
<charinsert>{{אזהרה}} {{לך}} {{בה}}</charinsert></p>

כדי להקל על השימוש, נוצרה תבנית {{כלי עריכה רק במרחב}}, כך שהדוגמאות הופכות ל:

{{כלי עריכה רק במרחב
|מרחב=Template
|כיוון=ltr
|תוכן=<charinsert><includeonly>+</includeonly> <onlyinclude>+</onlyinclude> <noinclude>+</noinclude></charinsert>
}}
{{כלי עריכה רק במרחב
|מרחב=User_talk
|תוכן=<charinsert>{{אזהרה}} {{לך}} {{בה}}</charinsert>
}}

השמות הקנוניים של המרחבים הם:

  • המרחב הראשי: Article (למעשה, השם הקנוני של המרחב הראשי הוא ריק, אבל הסקריפט משתמש ב-Article)
  • מרחב השיחה: Talk
  • משתמש: User
  • שיחת משתמש: User_talk
  • ויקיפדיה: Project
  • שיחת ויקיפדיה: Project_talk
  • קובץ: File
  • שיחת קובץ: File_talk
  • מדיה ויקי: Mediawiki
  • שיחת מדיה ויקי: Mediawiki_talk
  • תבנית: Template
  • שיחת תבנית: Template_talk
  • עזרה: Help
  • שיחת עזרה: Help_talk
  • קטגוריה: Category
  • שיחת קטגוריה: Category_talk
  • פורטל: פורטל
  • שיחת פורטל: שיחת_פורטל
  • ספר: ספר
  • שיחת ספר: שיחת_ספר