Emacs

מתוך ויקיפדיה, האנציקלופדיה החופשית
GNU Emacs
EmacsIcon.svg
תמונת מסך מתוך התוכנה
תמונת מסך מתוך התוכנה
מפתח מיזם GNU
תאריך השקה 20 במרץ 1985 של GNU Emacs הנמצא בשימוש כיום, אך EMACS המקורי הושק ב־1976.
גרסה אחרונה 28.1 (4 באפריל 2022) עריכת הנתון בוויקינתונים
מערכת הפעלה חוצה פלטפורמות
נכתבה בשפות Emacs Lisp, C
סוג רישיון GPLv3 GNU
קטגוריה עורך טקסט
http://www.gnu.org/software/emacs//
לעריכה בוויקינתונים שמשמש מקור לחלק מהמידע בתבנית OOjs UI icon info big.svg

Emacs או EMACS (ראשי תיבות: Editor MACroS; בעברית: אִימֶקְס) היא משפחה של עורכי טקסט שנודעו בעיקר בזכות האפשרות להרחיב אותם לשימושים חדשים. רק גרסה אחת, זו המכונה GNU Emacs (בעברית יש לבטא גְנוּ אִימֶקְס), שנוצרה על ידי ריצ'רד סטולמן עבור מיזם GNU, נפוצה עדיין בשימוש ולמעשה נחשבת לתוכנה החופשית הוותיקה ביותר בפיתוח פעיל.

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

ההיסטוריה של GNU Emacs[עריכת קוד מקור | עריכה]

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

חלקים של Emacs נכתבו בשפת C, אך ליבתו של העורך היא מפרש עבור ניב Lisp הנקרא Emacs Lisp. בשפה זו נכתבות מרבית ההרחבות השונות.

Emacs זמינה עבור מערכות הפעלה היסטוריות ומודרניות רבות, בהן במיוחד לינוקס, חלונות ו-macOS וכן גרסאות שונות של מערכות BSD, סולאריס ואחרות.

במהלך השנים הפרויקט, לו תרמו רבבות מתכנתים מרחבי העולם, פוצל למספר גרסאות שנועדו לספק את צורכיהם של המשתמשים השונים. בולטת במיוחד XEmacs (שנקראה תחילה Lucid Emacs), אשר הייתה הגרסה הראשונה של Emacs עבורה פותח ממשק גרפי לשימוש במערכת X11. XEmacs, להבדיל מ-GNU Emacs, איננה נמצאת בפיתוח פעיל.

בעקבות יצירת הגרסה המתחרה החל סטולמן להבחין בין הגרסה המקורית ו"חיקוייה" על ידי כתיבת השם המקורי כ-"Emacs" בעוד שהשם "emacs" התייחס לגרסאות אחרות.

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

יכולת ההרחבה וההתאמה של Emacs למשימות שונות היא אחת התכונות החשובות והמוכרות ביותר של העורך. הוא מופץ בדרך כלל בליווי מגוון הרחבות - בהן מנהל קבצים (dired), קורא דואר אלקטרוני וקבוצות דיון (gnus), דפדפן אינטרנט (eww) ועוד.

Emacs בשימוש בראש ובראשונה כעורך קוד מקור. לצורך זה הוא כולל תמיכה מובנית בשפות קוד רבות. תמיכה עבור שפות קוד חדשות זמינה באמצעות הרחבות צד-שלישי.

Emacs משנה את התנהגותו בהתאם לסוג הקובץ שהמשתמשים עורכים ברגע נתון, זאת על ידי מעבר אוטומטי מ"מצב עריכה" (mode) אחד לאחר. מצבי העריכה הבסיסיים ביותר הם של קובץ טקסט פשוט, קובץ HTML וכיוצא בזה.

התמיכה בשפות התכנות השונות כוללת התאמה לצורת העימוד (indentation), צביעת התחביר (highlighting) וגישה לכלים ועזרים שונים בשימוש בפיתוח בכל שפה.

Emacs מתאימה מאוד גם לעריכת מסמכים. היא תומכת בשפות רבות, בהן גם שפות הנכתבות מימין לשמאל, כמו עברית, ערבית, פרסית, או אמהרית, אבל גם שפות שאינן מבוססות על מערכות כתב או אלפבית לטיני, כמו רוסית, יוונית, יפנית, קוריאנית, תאית, וייטנאמית, וכן מספר מערכות כתב בשימוש על ידי עמים ילידים ביבשת אמריקה.

קיצורי המקשים המקובלים ב-Emacs הפכו בעצמם פופולריים גם בקרב משתמשי מערכות הפעלה מבוססות יוניקס, שהם הם מוצעים כאפשרות לבחירת המשתמשים, הן ברמת מערכת ההפעלה, או כתכונה בעורכי טקסט ותוכנות שונים. עורכי טקסט שפותחו בהשראת Emacs, כמו QEmacs ו־Zile (ראשי תיבות של Zile Is Lossy Emacs) הם דוגמאות בולטות.

מלבד גמישות רבה בהתאמה אישית, הן תכנותית והן דרך מערכת ניהול הגדרות התאמה מובנית, Emacs נודע גם כעורך קוד הכולל בתוכו תיעוד מגוון ועשיר.

התאמה אישית[עריכת קוד מקור | עריכה]

כמעט כל היבט של Emacs ניתן להתאמה אישית. משתמשים יוצרים קובץ תצורה .emacs או emacs.el או init.el (הנקודה הכרחית ומציינת קובץ ניסתר במערכת הקבצים) אותם הם שומרים בספריית הבית, או בספרייה .emacs.d או .config/emacs/ (במערכות מבוססות לינוקס) הנקרא על ידי Emacs בעת ההפעלה, וההוראות המצויות בו מבוצעות זו אחר זו.

קובץ התצורה מאפשר לקבוע הגדרות מערכת שונות מברירת המחדל (למשל שיטת קידוד הקבצים המועדפת) ולהפעיל הרחבות שונות, בהתאם לצורך. בקובץ זה ניתן לתאר מקשי קיצור להפעלת פונקציות מערכת או פקודות, לבחור את ערכת הצבעים בשימוש, או להגדיר אילו פעולות יבוצעו בתגובה לאירועים שונים. למשל, ניתן לקבוע כי לפני שמירת הקובץ Emacs ינקה מהקובץ תווים מיותרים.

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

הפולקלור הרווח בקרב משתמשי Emacs הוא שעיקר הזמן של המשתמשים בו מוקדש לניהול התצורה ולהתאמה אישית. הגמישות האינסופית לכאורה נובעת מהאופן בו נבנתה Emacs ומהיתרונות שמציעה שפת Emacs Lisp, שהיא שפת ניהול התצורה. השימוש בשפה זו מחייב ידע מוקדם ומיומנות. כתוצאה מכך קהילת המשתמשים יצרה במהלך השנים "ערכות" תצורה, שאפשרו למשתמשים להעתיק קובץ אחד או יותר למערכת ההפעלה שלהם ועל ידי כך לאמץ את גישת המפתחים שיצרו את הערכה, במקום להמציא את הגלגל מחדש. הבולטות בדור החדש של ערכות התצורה כיום הן Spacemacs,[1] ו-Doom Emacs,[2] המפותחות ומתוחזקות על ידי קהילת מתנדבים, בנפרד מפרויקט Emacs.

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

קישורים חיצוניים[עריכת קוד מקור | עריכה]

ויקישיתוף מדיה וקבצים בנושא Emacs בוויקישיתוף

הערות שוליים[עריכת קוד מקור | עריכה]