Changes to open-protocol-stream, preparing for merging it with open-network-stream.
[emacs.git] / etc / tutorials / TUTORIAL.he
blob529c42a1c406ead33a8ec8b19ba58d273d99bef1
1 שיעור ראשון בשימוש ב־Emacs. זכויות שימוש ראה בסוף המסמך.
3 פקודות רבות של Emacs משתמשות במקש CONTROL (לפעמים הוא מסומן ב־CTRL או CTL)
4 או במקש META (לפעמים מסומן EDIT או ALT). במקום לציין את כל השמות האפשריים
5 בכל פעם, נשתמש בקיצורים הבאים:
7 ‏<תו>-C  משמעותו לחץ והחזק מקש CONTROL ואז הקש על מקש <תו>.
8          לדוגמא, C-f משמעותו: לחץ והחזק CONTROL והקש על f.
9 ‏<תו>-M  משמעותו לחץ והחזק מקש META או EDIT או ALT ואז הקש על מקש <תו>.
10          אם במקלדת אין אף אחד ממקשי META או EDIT או ALT, אפשר להקיש
11          ולשחרר מקש ESC ואז להקיש <תו>. אנו נכתוב <ESC> עבור מקש ESC.
13 הערה חשובה: כדי לצאת מ־Emacs יש להקיש C-x C-c (שני תוים, משמאל לימין).
14 כדי להפסיק פקודה באמצע ההקשה, יש להקיש C-g.
15 המחרוזת ">>" בקצה הימני מסמנת הוראות עבורכם כדי לנסות להשתמש בפקודה כלשהי.
16 לדוגמה:
17 <<שורות ריקות תתווספנה סביב השורה הבאה ע"י help-with-tutorial>>
18 [אמצע העמוד הושאר ריק למטרות לימודיות. הטקסט ממשיך להלן]
19 >>  הקישו עתה C-v (הצג העמוד הבא) על־מנת להתקדם לעמוד הבא. (קדימה, נסו
20     זאת ע"י לחיצה והחזקה של מקש CONTROL והקשה על v.)
21     מעתה והלאה, עליכם לעשות זאת בכל פעם שתסיימו לקרוא את המוצג על המסך.
23 שימו לב לחפיפה של שתי שורות כאשר אתם עוברים ממסך למשך, מה שמבטיח רציפות
24 מסוימת בעת קריאת הטקסט.
26 דבר ראשון שעליכם ללמוד הוא כיצד לנוע ממקום אחד למשנהו בתוך הטקסט. אתם
27 כבר יודעים כיצד להתקדם לעמוד הבא, עם C-v. לחזרה לעמוד הקודם הקישו M-v
28 (החזיקו מקש META והקישו v או הקישו ‭<ESC>v‬ אם אין במקלדת מקש META
29 או EDIT או ALT).
31 >>  נסו עתה כמה פעמים להקיש M-v ואחר־כך C-v.
34 * סיכום עד כאן
35 --------------
37 לשם תנועה בעמודים שלמים וצפייה בהם, השתמשו בפקודות הבאות:
39         ‏C-v    התקדם לעמוד הבא
40         ‏M-v    חזור לעמוד הקודם
41         ‏C-l    נקה תצוגה והצג מחדש את הטקסט,
42                 כך שהטקסט ליד הסמן יימצא במרכז התצוגה
43                 (שימו לב: CONTROL-L ולא CONTROL-1.)
45 >> מצאו את הסמן על־גבי התצוגה וזכרו את הטקסט לידו. לאחר מכן הקישו C-l.
46    מצאו את הסמן שנית ושימו לב שהוא עדיין ליד אותו הטקסט, אבל עכשיו
47    הוא במרכז התצוגה.
48    אם תקישו C-l שוב, קטע הטקסט הזה יזוז לקצה העליון של התצוגה. הקישו
49    C-l שוב והוא יזוז לתחתית התצוגה.
51 גם מקשי PageUp ו־PageDn, אם הם קיימים במקלדת שלכם, יכולים לשמש לתנועה
52 בעמודים שלמים, אולם השימוש ב־C-v ו־M-v יעיל יותר.
54 * תנועת סמן בסיסית
55 ------------------
57 תנועה בעמודים שלמים הינה שימושית, אבל כיצד ניתן להגיע למקום ספציפי
58 בתוך הטקסט שעל־גבי התצוגה?
60 ניתן לעשות זאת בכמה דרכים. אפשר למשל להשתמש במקשי החצים, אולם יהיה
61 זה יעיל יותר אם תחזיקו את הידיים מעל החלק הסטנדרטי של המקלדת ותשתמשו
62 בפקודות C-p, C-b, C-f ו־C-n. פקודות אלו שוות ערך לארבעת מקשי החצים,
63 כדלקמן:
65                         שורה קודמת, C-p
66                                  :
67                                  :
68            קדימה, C-f ... מיקום סמן נוכחי ... אחורה, C-b
69                                  :
70                                  :
71                         השורה הבאה, C-n
73 >> השתמשו במקשי C-n ו־C-p על־מנת להגיע לשורה האמצעית של הדיאגרמה.
74    הקישו C-l כדי למרכז את הדיאגרמה על־גבי התצוגה.
76 קל יותר לזכור את המקשים הללו באמצעות המלים שהם מייצגים:
77 P מ־previous (קודם), N מ־Next (הבא), B מ־Backward (אחורה)
78 ו־F מ־Forward (קדימה). מקשי התנועה הבסיסיים הללו ישמשו אתכם כל הזמן.
80 >> הקישו C-n כמה פעמים כדי למקם את הסמן בשורה זו.
82 >> הניעו את הסמן בתוך השורה עם C-f ואחר־כך למעלה עם C-p.
83    שימו לב מה עושה C-p כאשר הסמן נמצא באמצע השורה.
85 כל שורה של טקטס מסתיימת בתו מיוחד הנקרא Newline. תו זה מפריד בין
86 השורה לזו שאחריה. (בדרך כלל, השורה האחרונה בקובץ תסתיים אף היא
87 ב־Newline, אך Emacs אינו זקוק לכך.)
89 >> נסו C-b בתחילת שורה. הוא יגרום לסמן לנוע לסוף השורה הקודמת. זאת,
90    משום שהוא נע אחורה וחולף על־פני תו ה־Newline.
92 גם C-f יכול לחלוף על־פני Newline, בדיוק כמו C-b.
94 >> הקישו C-b עוד כמה פעמים כדי לקבל הרגשה היכן נמצא הסמן.
95    עתה הקישו C-f מספר פעמים הדרוש לשוב לסוף השורה. ואז הקישו
96    C-f עוד פעם אחת כדי לנוע לתחילת השורה הבאה.
98 כשהסמן יוצא מגבולות הטקסט המוצג, חלקי הטקסט מעבר לחלק המוצג נכנסים
99 לתצוגה. לזה קוראים "גלילה". גלילה מאפשרת ל־Emacs להניע את הסמן למקום
100 כלשהו בטקסט מבלי שהסמן ייעלם מהתצוגה.
102 >> נסו להניע את הסמן אל מחוץ לתצוגה ע"י הקשת C-n ושימו לב למה שקורה.
104 אם תנועה תו־תו איטית מדי, תוכלו לנוע מילים שלמות. M-f ‏(META-f) מזיז
105 את הסמן מילה אחת קדימה ואילו M-b זז מילה אחורה.
107 >> הקישו M-f ו־M-b מספר פעמים.
109 אם הסמן נמצא באמצע מילה, M-f זז לסוף המילה. אם הסמן נמצא בין שתי מלים,
110 M-f עובר את המילה הבאה ונעצר בסופה. M-b פועל באופן דומה בכיוון הפוך.
112 >> הקישו עתה M-f ו־M-b פעמים אחדות, וגם C-f ו־C-b פה ושם כדי שתוכלו
113    להתרשם מהתוצאה של M-f ו־M-b במקומות שונים בתוך ובין המלים.
115 שימו לב להקבלה שבין C-f ו־C-b מצד אחד ו־M-f ו־M-b מהצד השני. לעתים
116 קרובות מאד מקשים עם META משמשים לפעולות הקשורות ליחידות של שפה (מלים,
117 משפטים, פסקאות) ואילו מקשים עם CONTROL פועלים על יחידות בסיסיות שאינן
118 תלויות בסוג הטקסט שהינכך עורכים (תוים, שורות, וכד').
120 ההקבלה הזאת קיימת גם לגבי שורות ומשפטים: C-a ו־C-e נעים לתחילת השורה
121 וסופה, בהתאמה, ואילו M-a ו־M-e נעים לתחילת המשפט וסופו.
123 >> נסו עתה שתי הקשות על C-a ואחר־כך שתי הקשות על C-e.
124    נסו שני M-a ואחר־כך שני M-e.
126 שימו לב שחזרה על C-a אינה עושה דבר, ואילו כל הקשה חוזרת על M-a מניעה
127 את הסמן במשפט נוסף. אמנם אין כאן אנלוגיה מושלמת, אבל התוצאה נראית
128 טבעית בשני המקרים.
130 מקום הסמן בתוך הטקסט נקרא "point" ("נקודה"). במלים אחרות, הסמן מראה
131 את מיקומו של "point" בתוך הטקסט.
133 הנה סיכום של פקודות פשוטות להנעת הסמן, כולל פקודות שנעות במלים
134 ומשפטים שלמים:
136         ‏C-f    נוע תו אחד קדימה
137         ‏C-b    נוע תו אחד אחורה
139         ‏M-f    נוע מילה קדימה
140         ‏M-b    נוע מילה אחורה
142         ‏C-n    נוע לשורה הבאה
143         ‏C-p    נוע לשורה הקודמת
145         ‏C-a    נוע לתחילת השורה
146         ‏C-e    נוע לסוף השורה
148         ‏M-a    נוע קדימה לסוף המשפט
149         ‏M-e    נוע אחורה לתחילת המשפט
151 >> נסו את כל הפקודות הללו מספר פעמים, לשם תרגול.
152    אלו הן הפקודות הנפוצות ביותר.
154 שתי פקודות תנועה חשובות אחרת הן ‭M-<‬ ‏(META פחות), אשר נעה לתחילת
155 הטקסט, ו־‭M->‬ ‏(META יותר), אשר נעה לסוף הטקסט.
157 ברוב המקלדות המקש ">" נמצא מעל הפסיק, לכן כדי להקישו יש צורך ללחוץ
158 ולהחזיק מקש Shift. באופן דומה יש ללחוץ על Shift כדי להקיש ‭M-<‬כי
159 אחרת היה יוצא M-פסיק.
161 >> נסו עתה ‭M-<‬ כדי להגיע לתחילת השיעור.
162    אחר־כך הקישו C-v מספר פעמים, עד שתגיעו לכאן.
164 >> עכשיו נסו ‭M->‬ כדי להגיע לסוף השיעור.
165    לאחר מכן הקישו M-v כמה פעמים כדי לחזור לכאן.
167 ניתן להזיז את הסמן גם בעזרת מקשי החצים, אם הם קיימים במקלדת שלכם.
168 אבל אנחנו ממליצים ללמוד להשתמש ב־C-b, C-f, C-n ו־C-p משלוש סיבות.
169 קודם כל, הם יעבדו עם כל מקלדת. שנית, כשתתרגלו לעבוד עם Emacs, תראו
170 כי השימוש במקשים אלו מהיר יותר מהשימוש בחצים (מכיון שאין צורך להזיז
171 את היד מהחלק העיקרי של המקלדת). ושלישית, כשהמקשים הללו יהפכו להרגל,
172 יהיה לכם קל יותר ללמוד פקודות מתקדמות יותר של תנועת הסמן.
174 רוב הפקודות של Emacs מקבלות ארגומנט נומרי; עבור רוב הפקודות הארגומנט
175 משמש כמונה של מספר החזרות על הפקודה. כדי לספק ארגומנט לפקודה, יש להקיש
176 C-u ואחר־כך ספרות, וזאת לפני שמקישים את הפקודה עצמה. עם במקלדת קיים
177 מקש META (או EDIT או ALT), יש גם אפשרות אחרת לציין ארגומנט נומרי:
178 הקישו את הספרות תוך כדי החזקת מקש META. אנו ממליצים על C-u משום שהוא
179 יעבוד עם כל מקלדת. הארגומנט הנומרי נקרא גם "ארגומנט קידומת" (prefix
180 argument) משום מקישים אותו לפני הפקודה אליה הוא מתייחס.
182 למשל, C-u 8 C-f מניע את הסמן 8 תוים קדימה.
184 >> נסו להקיש C-n או C-p עם ארגומנט נומרי, כדי להזיז את הסמן אל שורה
185    מסוימת בפקודה אחת בלבד.
187 רוב הפקודות מפרשות את הארגומנט הנומרי כמונה חזרות, אבל פקודות מסוימות
188 משתמשות בו בצורות אחרות. כמה פקודות (אבל אף אחת מבין אלו שלמדנו עד כה)
189 משתמשות בו כדגלון -- נוכחותו של הארגומנט, ללא קשר לערכו המספרי, גורמת
190 לפקודה להתנהג קצת אחרת.
192 ‏C-v ו־M-v יוצאים מהכלל הזה באופן אחר. כשפקודות אלו מקבלות ארגומנט,
193 הן גוללים את התצוגה כמספר הזה של שורות, ולא בדפים. למשל, C-u 8 C-v
194 יגלול את התצוגה ב־8 שורות.
196 >> נסו עתה להקיש C-u 8 C-v.
198 כתוצאה, התצוגה היתה צריכה לזוז ב־8 שורות. אם ברצונכם לגלול בחזרה,
199 אפשר להשיג זאת ע"י מתן ארגומנט ל־M-v.
201 אם הפעלתם את Emacs על־גבי מערכת חלונאית כגון X או MS-Windows, אתם
202 צריכים לראות פס צר וגבוה, ששמו פס גלילה (scroll bar) בצידו של החלון
203 של Emacs. (שימו לב שבשני צידי החלון קיימים פסים נוספים. אלה נקראים
204 "השוליים" -- "fringes" -- ומשמשים להצגת סימני המשך שורה וסימונים
205 אחרים. פס הגלילה, לעומתם, מופיע רק בצד אחד והוא הכי קרוב לקצה החלון
206 בצד ההוא.)
208 >> נסו עתה להקליק בכפתור האמצעי של העכבר בחלק העליון של האזור המודגש
209    של פס הגלילה. פעולה זו אמורה לגלול את הטקסט בשיעור שתלוי במקום בו
210    הקלקתם.
212 >> נסו לגרור את העכבר מעלה ומטה, תוך כדי לחיצה על הכפתור האמצעי.
213    כתוצאה, Emacs יגלול את הטקסט מעלה ומטה בהתאם לתנועת העכבר.
215 אם העכבר שלכם מצויד בגלגל, תוכלו להשתמש גם בו לגלילת הטקסט.
217 * אם Emacs מפסיק להגיב
218 ----------------------
220 אם Emacs מפסיק להגיב לפקודות, תוכלו להפסיק אותו בבטחה ע"י הקשת C-g.
221 פקודות שביצוען מתארך אף הן ניתנות להפסקה בעזרת C-g.
223 בנוסף, תגרום הקשת C-g לביטול הארגומנט הנומרי או תחילת הפקודה שטרם
224 השלמתם להקיש והתחרטתם.
226 >> הקישו C-u 100 כדי לציין ארגומנט של 100, ולאחר מכן C-g. עתה הקישו
227    C-f. הוא צריך לנוע תו אחד בלבד, שכן ביטלתם את הארגומנט בעזרת C-g.
229 אם הקשתם <ESC> בטעות, ניתן לבטלו בעזרת C-g.
231 * פקודות מנוטרלות
232 -----------------
234 מספר פקודות ב־Emacs מנוטרלות בכוונה כדי שמשתמשים מתחילים לא יפעילו
235 אותן בדרך מקרה.
237 אם תקישו את אחת הפקודות הללו, Emacs יציג הודעה המתארת את הפקודה וישאל
238 אם לבצע את הפקודה או לבטלה.
240 אם אכן בכוונתכם לנסות את הפקודה, הקישו <SPC> (מקש הרווח) בתשובה לשאלה.
241 בדרך כלל, אם אינכם מעוניינים לבצע את הפקודה המנוטרלת, הקישו "n" בתשובה
242 לשאלה הזו.
244 * חלונות
245 --------
247 תצוגת Emacs יכולה לכלול יותר מחלון אחד, כשכל אחד מהם מציג טקסט משלו.
248 מאוחר יותר נסביר כיצד להשתמש בחלונות מרובים. כעת ברצוננו להסביר כיצד
249 להפטר מחלונות מנותרים ולחזור לעריכה בחלון יחיד. אין דבר פשוט מזה:
251         ‏C-x 1  חלון אחד בלבד (כלומר, סגור את כל החלונות האחרים).
253 כדי להפעיל פקודה זו, הקישו CONTROL-x ולאחריו את הספרה 1. הפקודה C-x 1
254 מרחיבה את החלון המציג את הסמן כך שהוא תופס את כל שטח התצוגה. הפקודה
255 מבטלת את שאר החלונות.
257 >> הניעו את הסמן לתוך שורה זו והקישו C-u 0 C-l.
258 >> עתה הקישו CONTROL-h k CONTROL-f.
259    שימו לב כיצד החלון הנוכחי מצטמצם ומופיע חלון חדש שבו מוצג
260    התיעוד של הפקודה CONTROL-f.
262 >> הקישו C-x 1 ושימו לב שהחלון עם ההסבר על C-f נעלם.
264 פקודה זו שונה מכל שאר הפקודות שלמדנו עד כה בכך שהיא מכילה שני תוים.
265 היא מתחילה עם התו CONTROL-x. פקודות רבות מאד מתחילות ב־CONTROL-x; חלק
266 גדול מהן עוסקות בחלונות, קבצים, חוצצים ונושאים דומים אחרים. פקודות אלו
267 מכילות שנים, שלושה ואפילו ארבעה תוים.
270 * הכנסה ומחיקה
271 --------------
273 אם ברצונכם להכניס טקסט, פשוט הקישו על המקשים המתאימים. תוים רגילים,
274 כגון A, א, 7, * וכד' מתפרשים ע"י Emacs כטקסט ומיד מתווספים לטקסט
275 הקיים. הקישו <Return> (מקש חזרת גרר) כדי להכניס את תו השורה החדשה
276 (Newline).
278 למחיקת התו האחרון שהקשתם הקישו <DelBack>. המקש שאנו קוראים לו <DelBack>
279 יכול להתקרא בשמות שונים -- "Delete", "DEL" או "Backspace". בדרך כלל
280 זהו מקש גדול ובולט שנמצא לא הרחק ממקש <Return>, והוא משמש אתכם למחיקת
281 התו אחרון גם בתוכניות אחרות, לא רק ב־Emacs.
283 אם קיים במקלדת שלכם מקש גדול שעליו רשום <Backspace>, אז זהון המקש אשר
284 ישמש כ־<DelBack>. גם אם יהיה מקש אחר המסומן ב־"Delete" במקום אחרת זה
285 אינו ה־<DelBack> שלכם.
287 באופן כללי יותר, <DelBack> מוחק את התו שקודם למיקום הסמן.
289 >> הקישו עתה מספר תוים, ואחר־כך מחקו אותם ע"י הקשות אחדות
290    על <DelBack>. אל תחששו לשנות את הקובץ הזה -- העותק המקורי
291    של השיעור יישאר ללא שינוי. אתם עובדים על העותק האישי שלכם.
293 כאשר שורה של טקסט נעשית ארוכה משורה אחת של תצוגה, חלק מהטקסט ממשיך
294 בשורת תצוגה נוספת, היא "שורת ההמשך". תו לוכסן ("/") בסוף השורה (או
295 חץ עקלקל קטן באזור השוליים -- "fringe") מסמל שלשורה יש שורת המשך.
297 >> הקישו טקסט עד שתגיעו לקצה השורה, ואז תמשיכו להקיש עוד טקסט.
298    כתוצאה, תראו שמופיעה שורת המשך.
300 >> עתה הקישו <DelBack> על־מנת למחוק טקסט עד שהשורה תיעשה קצרה מספיק
301    ותתאים לשורה בודדת על־גבי התצוגה. שורת ההמשך תיעלם.
303 ניתן למחוק את תו ה־Newline כמו כל תו אחר. מחיקת ה־Newline בין שתי
304 שורות תמזג את השורות לשורה אחת. אם השורה המשולבת תהיה ארוכה מרוחב
305 התצוגה, היא תוצג עם שורת המשך.
307 >> הניעו את הסמן לתחילת השורה והקישו <DelBack>. כתוצאה, השורה תתמזג
308    אם קודמתה.
310 >> עתה הקישו <Return> כדי להחזיר את ה־Newline שמחקתם.
312 זכרו כי לרוב הפקודות ב־Emacs אפשר לציין מספר חזרות. גם תוי טקסט
313 שייכים לקבוצת פקודות זו. חזרה על תו טקסט מכניסה אותו מספר פעמים.
315 >> נסו זאת עכשיו -- הקישו ‪C-u 8 *‬ על־מנת להכניס ********.
317 ובכן, למדתם את האופן הבסיסי ביותר להדפיס משהו ב־Emacs ולתקן שגיאות.
318 אפשר למחוק גם מלים ואף שורות שלמות. להלן סיכום פקודות המחיקה:
320         ‏<Delback>      מחק תו שלפני הסמן
321         ‏C-d            מחק תו מתחת או אחרי הסמן
323         ‏‭M-<Delback>‬  גזור מילה שלפני הסמן
324         ‏M-d            גזור מילה שאחרי הסמן
326         ‏C-k            גזור טקסט מהסמן ועד סוף השורה
327         ‏M-k            גזור טקסט עד סוף המשפט הנוכחי.
329 שימו לב שהיחס בין <Delback> ו־C-d לעומת M-<Delback>‎ ו־M-d ממשיכים את
330 ההקבלה שבין C-f ו־M-f (אמנם <Delback> איננו תו בקרה, בוא נזניח את
331 הנקודה הזו לעת־עתה). C-k ו־M-k דומים ל־C-e ו־M-e, אם נקביל שורות
332 למשפטים.
334 בנוסף, קיימת שיטה אחידה שמאפשרת לגזור קטע כלשהו של טקסט. לשם כך, תגיעו
335 לקצה האחד של חלק הטקסט והקישו C-@‎ או C-<SPC>‎ (אחד מבין שני אלו).
336 (<SPC> הוא מקש הרווח.) עתה הניעו את הסמן לקצה השני של חלק הטקסט והקישו
337 C-w. כתוצאה, כל הטקסט בין שני המקומות הללו ייגזר.
339 >> הניעו את הסמן אל האות ב בתחילת הפיסקה הקודמת.
340 >> הקישו C-<SPC>‎. ‏Emacs צריך להציג הודעה האומרת "Mark set" בתחתית
341    התצוגה.
342 >> הניעו את הסמן אל האות צ בשורה השניה של הפיסקה.
343 >> הקישו C-w. בכך תגזרו את חלק הטקסט שמתחיל ב־ב ומסתיים לפני ה־צ.
345 ההבדל בין "מחיקה" ("deletion") ו־"גזירה" ("killing") הוא שהטקסט
346 "הגזור" ניתן לאחזור ולהכנסה (במקום כלשהוא בטקסט), ואילו טקסט "מחוק" לא
347 ניתן להכניס מחדש בשיטה זו. (אבל ניתן לבטל את מחיקה -- ראה להלן.) אחזור
348 הטקסט הגזור נקרא "הדבקה" ("yanking"). באופן כללי, פקודות אשר עלולות
349 להעלים כמויות גדולות של טקסט תמיד גוזרות את הטקסט (כך שניתן יהיה בקלות
350 לשחזרו) בעוד הפקודות שמורידות תו בודד או שורות ריקות ותוי רווח --
351 מוחקות (כך שלא ניתן להדביק את הטקסט שנמחק). כך, <Delback> ו־C-d מוחקים
352 כאשר מפעילים אותם ללא ארגומנט, אבל גוזרים כאשר מפעילים אותם עם ארגומנט.
354 >> הניעו את הסמן לתחילת שורה שאינה ריקה. אחר־כך הקישו C-k כדי לגזור
355    את כל הטקסט של אותה שורה.
356 >> הקישו C-k פעם נוספת. שימו לב שהוא גוזר את ה־Newline שבסוף השורה.
358 שימו לב ש־C-k בודד גוזר את תכולת השורה, ו־C-k נוסף גוזר גם את השורה
359 עצמה וגורם לשאר השורות לנוע כלפי מעלה. C-k מפרש את הארגומנט הנומרי
360 באופן מיוחד: הוא גוזר כמספר הזה שורות, כולל ה־Newlines שלהן. זה שונה
361 מסתם הפעלה חוזרת: C-u 2 C-k גוזר שתי שורות כולל ה־Newlines שלהן,
362 ואילו הקשה על C-k פעמיים לא עושה כן.
364 אחזור הטקסט שגזרנו נקרא "הדבקה" ("yanking"). (תחשבו על זה כעל שליפה
365 של טקסט מתהום הנשייה אליה הוא נלקח.) ניתן להדביק את הטקסט שגזרתם
366 באותו מקום ממנו נגזר או במקום אחר כלשהו בתוך הטקסט שאתם עורכים, או
367 אפילו בקובץ אחר. ניתן להדביק את אותו הטקסט מספר פעמים ובכך ליצור
368 עותקים מרובים ממנו. תוכניות עריכה אחרות משתמשות במונחים "cutting"
369 ו־"pasting" במקום "killing" ו־"yanking" (ראה את מילון המונחים בפרק
370 ה־"Glossary" של מדריך למשתמשי Emacs).
372 הפקודה להדבקה היא C-y. היא מכניסה את הטקסט הגזור במקום הנוכחי של הסמן.
374 >> נסו זאת: הקישו C-y כדי לאחזר טקסט שגזרתם קודם לכן.
376 אם תקישו C-k מספר פעמים ברצף, כל הטקסט שגזרתם בדרך זו נשמר ביחד, כך
377 ש־C-y בודד ידביק את כולו בבת אחת.
379 >> עשו זאת עתה: הקישו C-k כמה פעמים.
381 עכשיו לאחזור הטקסט שגזרתם:
383 >> הקישו C-y. אחר־כך הניעו את הסמן כמה שורות כלפי מטה והקישו C-y שוב.
384    כפי שראיתם, כך תוכלו להעתיק חלק מהטקסט ממקום למקום.
386 מה לעשות אם יש לכם טקסט להדבקה, אבל בינתיים גזרתם טקסט אחר? C-y ידביק
387 רק את הגזירה האחרונה. אולם הטקסט שגזרתם קודם לכן אינו הלך לאיבוד. ניתן
388 לאחזרו בעזרת הפקודה M-y. אחרי שהקשתם C-y שמדביק את הטקסט שגזרתם
389 לאחרונה, הקשה על M-y מחליפה את הטקסט המודבק בטקסט שגזרתם בפעם לפני
390 האחרונה. הקשה חוזרת ונשנית על M-y מביאה טקסט שגזרתם בפעמים קודמות יותר
391 ויותר. כשתראו שהטקסט המודבק הוא מה שרציתם להדביק, תפסיקו להקיש M-y
392 ותמשיכו בעריכה כרגיל. אין צורך בשום פקודה מיוחדת לשם כך.
394 אם תקישו M-y מספיק פעמים בזו אחר זו, תגיעו חזרה לנקודת ההתחלה (טקסט
395 שגזרתם לאחרונה).
397 >> גזרו שורה, אחר־כך תניעו את הסמן אנה ואנה, ולבסוף גזרו שורה נוספת.
398    הקישו C-y כדי לאחזר את השורה השניה שגזרתם.
399    עתה הקישו M-y והשורה שאחזרתם תוחלף בשורה הראשונה שגזרתם.
400    הקישו M-y מספר פעמים נוספות ושימו לב לתוצאות. המשיכו להקיש M-y
401    עד שהשורה השניה שגזרתם תופיע שוב, ואז תמשיכו עוד מספר פעמים.
402    אם תרצו, תוכלו לנסות M-y עם ארגומנט חיובי או שלילי.
405 * ביטול פעולות
406 --------------
408 אם שיניתם את הטקסט ואז החלטתם שהשינוי היה טעות, תוכלו לבטל את השינוי
409 בעזרת פקודת הביטול, C-x u.
411 בדרך כלל, C-x u מבטל את השינויים שבוצעו ע"י פקודה אחת. הפעלה חוזרת של
412 C-x u ברצף מבטלת שינויים של פקודות קודמות, אחת אחרי השניה.
414 שני יוצאים מהכלל הזה: פקודות שאינן משנות טקסט (למשל פקודות הנעת הסמן
415 ופקודות גלילה) אינן נספרות ותוים שמכניסים את עצמם מקובצים בקבוצות של
416 עד 20, כדי להקטין את מספר הפעמים שיש להקיש C-x u כדי לבטל הכנסת טקסט.
418 >> גזרו שורה זו עם C-k, אחר־כך הקישו C-x u והיא תופיע שוב.
420 ‏C-_‎ הינה דרך חלופית להפעיל את פקודת הביטול. היא פועלת בדיוק כמו C-x u,
421 אבל קלה יותר להקשה מספר פעמים בזו אחר זו. החסרון של C-_‎ הוא שבכמה
422 מקלדות לא ברור מאליו כיצד להקיש זאת. זו הסיבה לקיומו של C-x u. במקלדות
423 אחדות ניתן להקיש C-_‎ ע"י החזקת CONTROL והקשת לוכסן /.
425 ארגומנט נומרי ל־C-_‎ או ל־C-x u משמש כמספר החזרות על הפקודה.
427 ניתן לבטל מחיקה של טקסט בדיוק כמו שניתן לבטל גזירה. ההבדלים בין מחיקה
428 וגזירה משפיעים על יכולתכם להדביק את הטקסט הגזור עם C-y; הם אינם חשובים
429 לעניין הביטול.
432 * קבצים
433 -------
435 על־מנת שהטקסט שערכתם יישמר, יש לשים אותו בקובץ. אחרת, הוא ייעלם ברגע
436 שתצאו מ־Emacs. כדי לשים את הטקס בקובץ, יש "לפתוח" ("find") את הקובץ
437 לפני שמתחילים להקיש טקסט. (שם אחר לכך הוא "לפקוד" את הקובץ - "visit".)
439 פתיחת הקובץ משמעותה שתוכן הקובץ מוצג בתוך Emacs. מבחינות רבות הדבר
440 דומה לעריכת הקובץ עצמו. אולם, השוניים שלכם בתוך Emacs אינם הופכים חלק
441 מהקובץ עד שאתם "שומרים" את הקובץ. זאת, כדי להימנע מיצירת קובץ שאינו
442 שלם במערכת שלא כרצונכם. אפילו אם אתם שומרים את הקובץ, Emacs משאיר את
443 התוכן המקורי בשם שונה למקרה שמאוחר יותר תחליטו שהשינויים נעשו בטעות.
445 אם תביטו בחלק התחתון של התצוגה, תראו שם שורה בולטת שמתחילה ומסתיימת
446 במקפים וליד הקצה השמאלי שלה כתוב "TUTORIAL.he". חלק זה של התצוגה בדרך
447 כלל מציג את שם הקובץ אותו אתם פוקדים. כרגע אתם פוקדים קובץ בשם
448 "TUTORIAL.he" שהוא עותק הטיוטה האישי שלכם של שיעור השימוש ב־Emacs.
449 פתיחת קובץ כלשהו ב־Emacs תציג את שמו של הקובץ במקום זה.
451 היבט אחד מיוחד של פתיחת קובץ הוא שיש לציין את שם הקובץ אשר ברצונכם
452 לפתוח. אנו אומרים שהפקודה "קוראת ארגומנט מהמסוף" (במקרה זה הארגומנט
453 הוא שם הקובץ). אחרי שתקישו את הפקודה
455         ‏C-x C-f    פתח קובץ
457 ‏Emacs מבקש שתקישו את שם הקובץ. שם הקובץ שתקישו מופיע בשורה התחתונה של
458 התצוגה. שורה זו נקראת "מיני־חוצץ" ("minibuffer") כשהיא משמשת לסוג זה
459 של קלט. ניתן להשתמש בכל פקודות העריכה הרגילות של Emacs כשמקישים את
460 שם הקובץ בחוצץ זה.
462 אם טרם סיימתם להקיש את שם הקובץ (או כל סוג אחר של קלט במיני־חוצץ),
463 ניתן לבטל את הפקודה בעזרת C-g.
465 >> הקישו C-x C-f ואחר־כך הקישו C-g. זה מבטל את המיני־חוצץ וגם מבטל
466    את הפקודה C-x C-f שהשתמשה במיני־חוצץ. התוצאה היא שאף קובץ לא נפתח.
468 משסיימתם להקיש את שם הקובץ, הקישו <Return> לסיים את הקלט. או־אז תיגש
469 C-x C-f לעבודה ותמצא ותפתח את הקובץ שבחרתם. המיני־חוצץ נעלם כאשר
470 פקודת ה־C-x C-f תסיים את עבודתה.
472 זמן קצר אחר־כך תוכן הקובץ יופיע על־גבי התצוגה ותוכלו לבצע בו שינויים.
473 כשתחליטו לשמור את השינויים, הקישו את הפקודה הבאה:
475         ‏C-x C-s    שמור את הקובץ
477 פקודה זו שומרת בקובץ את הטקסט המוחזק בתוך Emacs. בפעם הראשונה שתפעילו
478 פקודה זו, Emacs משנה את שם הקובץ המקורי לשם חדש כך שהמקור לא ילך
479 לאיבוד. השם החדש נוצר ע"י הוספת "~" בסוף השם המקורי של הקובץ.
481 כשהשמירה מסתיימת, Emacs מציג בשורה התחתונה את שם הקובץ שנשמר. נסו
482 לשמור לעתים מזומנות על־מנת להימנע מלאבד יותר מדי מהעבודה שלכם אם המחשב
483 ייפול (ראה להלן פיסקה על שמירה אוטומטית).
485 >> הקישו C-x C-s כדי לשמור את העותק שלכם של השיעור.
486    כתוצאה, תופיע ההודעה "Wrote ... TUTORIAL.he" בתחתית התצוגה.
488 ניתן לפתוח קובץ קיים על־מנת לצפות בו או לערוך אותו. ניתן גם לפתוח קובץ
489 שאינו קיים. זו הדרך ליצור קבצים חדשים בעזרת Emacs: פתחו את הקובץ
490 שיהיה תחילה ריק ואז התחילו להקיש טקסט לתוכו. כשתפעילו את פקודת השמירה,
491 Emacs ייצור את הקובץ עם הטקסט שהקשתם. מאותו רגע ואילך, תוכלו לחשוב
492 שהינכם עורכים קובץ קיים.
495 * חוצצים
496 --------
498 אם תפתחו קובץ נוסף עם C-x C-f, הקובץ הראשון עדיין נשאר פתוח ב־Emacs.
499 תוכלו לחזור אליו ע"י C-x C-f. כך תוכלו לפתוח מספר רב של קבצים.
501 >> ניצור עתה קובץ בשם "foo" ע"י הקשת C-x C-f foo <Return>‎.
502    אחר־כך הכניסו קצת טקסט, ערכו אותו ולבסוף שמרו בקובץ "foo"
503    ע"י C-x C-s. עתה חזרו לשיעור בעזרת C-x C-f TUTORIAL.he <Return>‎.
505 ‏Emacs מחזיק כל קובץ בתוך יישות בשם "חוצץ" ("buffer"). פתיחת קובץ יוצרת
506 חוצץ חדש בתוך Emacs. כדי לראות את רשימת החוצצים הקיימים בתוך Emacs,
507 הקישו
509         ‏C-x C-b    הצג רשימת כל החוצצים
511 >> נסו את C-x C-b בנקודה זו.
513 שימו לב שלכל חוצץ יש שם וכל חוצץ עשוי גם לציין את שם הקובץ שאת תוכנו
514 הוא מחזיק. כל טקסט שאתם מקישים בחלון Emacs תמיד יהיה חלק של חוצץ
515 כלשהו.
517 >> הקישו C-x 1 כדי להפטר מרשימת החוצצים.
519 כשקיימים מספר חוצצים, רק אחד מהם יכול להיות החוצץ "הנוכחי" בכל רגע
520 נתון. זהו החוצץ בו אתם מבצעים עריכה באותו רגע. אם ברצונכם לערוך חוצץ
521 אחר, עליכם "לעבור" חוצץ. עבור חוצצים שמתאימים לקבצים, ניתן לעשות זאת
522 ע"י C-x C-f שיפקוד את הקובץ בשנית. אבל קיימת דרך פשוטה יותר: שימוש
523 בפקודה C-x b. פקודה זו תחייב אותכם להקיש את שם החוצץ.
525 >> הקישו C-x b foo <Return>‎ כדי לחזור לחוצץ "foo" אשר מחזיק טקסט של
526    הקובץ "foo". אחר־כך הקישו C-x b TUTORIAL.he <Return>‎ כדי לשוב
527    לשיעור זה.
529 ברוב המקרים שם החוצץ זהה לשם הקובץ (ללא שם התיקיה שלו). אבל אין זה
530 תמיד כך. רשימת החוצצים שנוצרת ע"י C-x C-b תמיד תציג את שמות כל החוצצים
531 הקיימים ב־Emacs.
533 כל טקסט שמוצג בחלון של Emacs הינו תמיד חלק של חוצץ כלשהו. קיימים
534 חוצצים שאינם קשורים לשום קובץ. לדוגמא, החוצץ בשם "*Buffer List*" אינו
535 מציג שום קובץ. זהו חוצץ המחזיק את רשימת החוצצים שנוצר ע"י C-x C-b.
536 חוצץ בשם "*Messages*" אף הוא אינו קשור לשום קובץ; הוא מחזיק את ההודעות
537 שהופיעו בשורה התחתונה במהלך עבודתכם בתוך Emacs.
539 >> הקישו C-x b *Messages* <Return>‎ כדי לצפות בחוצץ של הודעות.
540    אחר־כך הקישו C-x b TUTORIAL.he <Return>‎ על־מנת לחזור לשיעור זה.
542 אם עשיתם שינויים בטקסט של קובץ ואחר־כך פתחתם קובץ אחר, אין הדבר שומר
543 את השינויים שעשיתם לקובץ הראשון. השינויים הללו נשארים בתוך Emacs, בתוך
544 החוצץ של אותו קובץ. יצירתו ועריכתו של הקובץ הנוסף אינם משפיעים על
545 החוצץ של הקובץ הראשון. דבר זה הוא שימושי, אך משמעותו היא שיש צורך
546 בשיטה נוחה לשמור את החוצץ של הקובץ הראשון. היה זה מאד לא נוח אילו
547 לשם כך הייתם צריכים לעבור לחוצץ ההוא בעזרת C-x C-f ואז לשמור עם
548 C-x C-s. לכן קיימת פקודה
550         ‏C-x s     שמור חוצצים אחדים
552 ‏C-x s עובר על כל החוצצים אשר מכילים שינויים שטרם נשמרו. לגבי כל חוצץ
553 כזה הוא שואל אתכם האם לשמור אותו או לא.
555 >> הכניסו שורה של טקסט ואחר־כך הקישו C-x s.
556    הוא צריך לשאול האם לשמור חוצץ בשם TUTORIAL.he.
557    השיבו בחיוב ע"י הקשה על "y".
560 * הרחבת אוסף הפקודות
561 --------------------
563 מספר הפקודות ב־Emacs גדול בהרבה ממה שניתן להפעיל ע"י כל תוי ה־control
564 וה־meta. כדי להתגבר על בעיה זו, Emacs משתמש בפקודות X המרחיבות (eXtend)
565 את אוסף הפקודות הרגיל. פקודות הרחבה אלו הן שתים:
567         ‏C-x     הרחבת תו. תו בודד שבא אחריו משלים את הפקודה.
568         ‏M-x     הרחבה ע"י שם הפקודה. אחריו בא שם ארוך של פקודה.
570 בעזרת שתי אלו ניתן להפעיל פקודות שימושיות שבהן משתמשים לעתים רחוקות
571 יותר מאשר פקודות שלמדתם עד עכשיו. כמה מהן כבר ראיתם: C-x C-f לפתיחת
572 קובץ, ו־C-x C-s לשמירת קובץ, לדוגמא. דוגמא נוספת היא פקודה לצאת
573 מ־Emacs -- ‏C-x C-c. (כשאתם מפעילים C-x C-c, אל תדאגו לשינויים שטרם
574 נשמרו; C-x C-c מציע לשמור כל קובץ ששיניתם לפני שהוא מסיים את Emacs.)
576 אם אתם משתמשים בצג גרפי אשר תומך במספר תוכניות במקביל, אינכם זקוקים
577 לפקודה מיוחדת כדי לעבור מ־Emacs לתוכנית אחרת. אפשר לעשות זאת בעזרת
578 העכבר או פקודות של מנהל החלונות. אולם, כאשר אתם משתמשים בתצוגה
579 טקסטואלית שמסוגלת להציג רק תוכנית אחת בו־זמנית, תצטרכו "להשעות"
580 ("suspend") את Emacs על־מנת לעבור לתוכנית אחרת.
582 הפקודה C-z יוצאת מ־Emacs *באופן זמני* -- כך שתוכלו לשוב אליו מאוחר
583 יותר ולהמשיך מאותה נקודה. כאשר Emacs רץ על תצוגת טקסט, C-z "משעה" את
584 Emacs: הוא מחזיר אתכם לשורת הפקודות הבסיסית של מערכת ההפעלה ("shell"),
585 אבל אינו מסיים את Emacs. ברוב המערכות, כדי להמשיך בעבודתכם ב־Emacs,
586 תצטרכו להקיש את הפקודה "fg" או ‭"%emacs"‬.
588 הרגע הנכון להשתמש ב־C-x C-c הוא כאשר אתם עומדים להתנתק (log out).
589 כמו־כן, תצטרכו להשתמש בו כדי לצאת מ־Emacs שהופעל ע"י תוכניות אחרות
590 כגון קריאת דואר אלקטרוני -- תוכניות אלו לא תמיד יודעות להסתדר עם
591 השעיית Emacs.
593 קיימות פקודות C-x רבות מאד. להלן רשימת אלו שכבר למדתם:
595         ‏C-x C-f        פתח קובץ
596         ‏C-x C-s        שמור קובץ
597         ‏C-x s          שמור חוצצים אחדים
598         ‏C-x C-b        הצג רשימת חוצצים
599         ‏C-x b          החלף חוצץ
600         ‏C-x C-c        צא מ־Emacs
601         ‏C-x 1          השאר רק חלון אחד ומחק כל השאר
602         ‏C-x u          בטל פקודה אחרונה
604 הרחבה ע"י שם הפקודה שימושית עם פקודות עוד יותר נדירות או פקודות
605 ספציפיות רק לאופני פעולה (modes) מיוחדים. דוגמא לכך היא פקודה
606 replace-string (החלף מחרוזת) אשר מחליפה מחרוזת אחת במשנה בכל החוצץ.
607 אחרי שתקישו M-x, ‏Emacs מציג M-x בתחתית התצוגה ומחכה שתקישו את שם
608 הפקודה, במקרה זה "replace-string". מספיק שתקישו "repl s<TAB>‎" ו־Emacs
609 ישלים את השם המלא. (<TAB> הוא מקש Tab, בדרך כלל תמצאו אותו מעל מקש
610 ה־CapsLock או Shift, ליד הקצה השמאלי של המקלדת.) סיימו את שם הפקודה
611 ע"י הקשת <Return>.
613 הפקודה להחלפת מחרוזת זקוקה לשני ארגומנטים -- המחרוזת שתוחלף וזו שתחליף
614 אותה. סיימו הקשה של כל אחת מהן ע"י <Return>.
616 >> הביאו את הסמן שתי שורות מתחת לשורה זו.
617    עתה הקישו M-x repl s<Return>changed<Return>altered<Return>‎.
619    שימו לב שהמילה "changed" בשורה זו שתנתה: זה עתה החלפתם את
620    המילה c-h-a-n-g-e-d במילה "altered" בכל מקום בו היא נמצאת אחרי
621    הסמן.
624 * שמירה אוטומטית
625 ----------------
627 שינויים שערכתם בקובץ אבל טרם שמרתם עלולים ללכת לאיבוד אם המחשב שלכם
628 נתקע. על־מנת להגן עליכם מפני סכנה זו, Emacs שומר לעתים מזומנות כל קובץ
629 שנמצא בעריכה. השמירה האוטומטית הזאת נעשית לקובץ נפרד ששמו מתחיל
630 ומסתיים בתו #. לדוגמא, אם הינכם עורכים קובץ בשם "hello.c", קובץ השמירה
631 האוטומטית שיווצר עבורו ייקרא "#hello.c#". שמירה רגילה של הקובץ על ידכם
632 מוחקת את קובץ השמירה האוטומטית.
634 אם המחשב אכן נתקע, תוכלו לנציל את השינויים שלא הספקתם לשמור. לשם כך,
635 יש לפתוח את הקובץ כרגיל (את הקובץ בשמו המקורי, לא את קובץ השמירה
636 האוטומטית), ואחר־כך להקיש M-x recover-file <Return>‎. כש־Emacs יבקש
637 אישור, הקישו yes<Return>‎ כדי ש־Emacs ישחזר את הקובץ כפי שנשמר
638 אוטומטית.
641 * תצוגת הד
642 ----------
644 אם Emacs מגלה שאתם מקישים פקודה לאט, הוא מציג את שהקשתם בתחתית התצוגה,
645 באזור שנקרא "אזור תצוגת הד". אזור זה משתמש בשורה התחתונה של התצוגה.
648 * שורת סטטוס
649 ------------
651 השורה שמעל אזור תצוגת הד נקראת "שורת הסטטוס" (mode line). שורה זו
652 מציגה משהו כמו:
654     -U:**-  TUTORIAL.he    63% L651    (Fundamental)-----------------------
656 שורה זו מציגה מידע חשוב לגבי מצבו של Emacs ולגבי הטקסט שנמצא בעריכה.
658 אתם כבר יודעים מהי משמעותו של שם הקובץ -- זהו הקובץ שפתחתם. NN%‎ מציין
659 את מיקומכם הנוכחי בתוך הטקסט, לאמור כי NN אחוזים מהטקסט קודמים לטקסט
660 המוצג כרגע בחלון. אם המוצג בחלון כולל את תחילת הטקסט, תראו שם "Top"
661 במקום "0% ". אם המוצג בחלון כולל את סוף הטקסט, תראו שם "Bot" ‏(bottom).
662 אם הטקסט כל־כך קצר שכולו מוצג בחלון, שורת הסטטוס תציג "All".
664 האות L והמספר שאחריה מציינים את המיקום הנוכחי בדרך אחרת: הם מראים את
665 מספר השורה שבה נמצא הסמן.
667 הכוכביות ליד הקצה השמאלי משמעותן כי שיניתם את הטקסט. מיד אחרי פתיחת
668 הקובץ או אחרי שמירתו החלק הזה של שורת הסטטוס אינו מציג כוכביות, אלא רק
669 מקפים.
671 החלק שבתוך הסוגריים אומר לכם מהo אופני העריכה (editing modes) הפעילים
672 כעת. ברירת המחדל היא Fundamental, האופן הבסיס, שבו אתם משתמשים כעת.
673 זוהי דוגמא של "אופן עריכה ראשי" (major mode).
675 ל־Emacs אופני עריכה ראשיים רבים ומגוונים. חלק מהם נועדו לעריכה של שפת
676 תכנות מסוימת ו/או סוג מסוים של טקסט, כגון Lisp mode, Text mode וכד'.
677 בכל רגע נתון רק אופן עיקרי אחד יכול להיות פעיל ושמו תמיד מצויין בשורת
678 הסטטוס באותו מקום בו כרגע אתם רואים "Fundamental".
680 כל אופן עיקרי גורם לכמה פקודות לפעול בצורה מיוחדת. למשל, ישנן פקודות
681 ליצירת הערות בתוך תוכנית, והיות וכל שפת תכנות מגדירה את הפורמט של
682 הערות בצורה אחרת, כל אופן עיקרי חייב להכניס הערות בצורה שמתאימה לשפה.
683 כל אופן עיקרי הינו למעשה שם הפקודה שבעזרתה אפשר להפעיל את אותו האופן.
684 למשל הפקודה להפעיל את האופן Fundamental הינה M-x fundamental-mode.
686 אם בכוונתכם לערוך טקסט בשפה אנושית כלשהי, כמו הקובץ הזה, כדאי לכם
687 להשתמש ב־Text mode.
689 >> הקישו M-x text-mode <Return>‎.
691 אל דאגה: אף אחת מפקודות Emacs שלמדתם עד כה משנה את התנהגותה באופן
692 מהותי. עם זאת, שימו לב ש־M-f ו־M-b מתייחסים עכשיו ל־'גרש' כחלק מהמילה.
693 לפני־כן, ב־Fundamental mode, ‏M-f ו־M-b התנהגו עם הגרש כמפריד בין
694 מילים.
696 אופנים ראשיים בדרך־כלל משנים קלות את התנהגות הפקודות: רוב הפקודות
697 עדיין "עושות אותה עבודה" בכל האופנים הראשיים, אבל עושות אותה קצת אחרת.
699 לצפיה בתיעוד של האופן הראשי הנוכחי יש להקיש C-h m.
701 >> השתמשו ב־C-u C-v פעם אחת או יותר כדי להביא שורה זו לראשית התצוגה.
702 >> עתה הקישו C-h m כדי לראות במה Text mode שונה מה־Fundamental mode.
703 >> לבסוף, הקישו C-x 1 כדי לסלק את התיעוד מהתצוגה.
705 אופנים ראשיים נקראים כך משום שקיימים גם אופני־משנה (minor modes).
706 אופני משנה אינם מהווים חלופה לאופנים הראשיים, הם רק משנים אותם במקצת.
707 כל אופן־משנה ניתן להפעלה או ביטול ללא תלות בכל שאר אופני המשנה וללא
708 תלות באופן הראשי הנוכחי. לכן תוכלו להפעיל אופן־משנה אחד או יותר, או אף
709 אופן־משנה.
711 אחד מאופני־המשנה השימושיים ביותר, במיוחד לשם עריכת טקס בשפת־אנוש, הוא
712 Auto Fill mode. כאשר אופן זה מופעל, Emacs אוטומטית פותח שורה חדשה
713 בסיום מילה אם הטקסט שהקשתם ארוך מדי בשביל שורה אחת.
715 להפעלת Auto Fill mode יש להקיש M-x auto-fill-mode <Return>‎. כאשר אופן
716 זה מופעל, ניתן לבטלו ע"י M-x auto-fill-mode <Return>‎. זאת אומרת, פקודה
717 זו מפעילה את האופן כשאינו פעיל ומבטלת אותו כשהוא פעיל. לפעולה זו
718 קוראים "מיתוג" -- הפקודה "ממתגת" את האופן.
720 >> הקישו עתה M-x auto-fill-mode <Return>‎. אחר־כך הקישו "שדגכ " (עם
721    הרווח בסוף) שוב ושוב עד שתיפתח שורה חדשה. הרווחים חשובים משום
722    ש־Auto Fill mode שובר שורות אך ורק ברווח שבין המלים.
724 השוליים (margin) ש־Emacs שומר בדרך־כלל מתחילים אחרי 70 תווים, אבל ניתן
725 לשנות הגדרה זו בעזרת הפקודה C-x f. פקודה זו מקבלת את ההגדרה החדשה של
726 השוליים כארגומנט נומרי.
728 >> הקישו C-x f עם ארגומנט של 20. (C-u 2 0 C-x f). אחר־כך הקישו טקסט
729    כלשהו ושימו לב ש־Emacs פותח שורות חדשות אחרי 20 תווים לכל היותר.
730    לבסוף, החזירו את הגדרת השוליים ל־70 ע"י שימוש חוזר ב־C-x f.
732 אם ערכתם שינויים באמצע פסקה, Auto Fill mode לא ימלא שורות מחדש באופן
733 אוטומטי.
734 כדי למלא מחדש את כל הפסקה הקישו M-q ‏(META-q) כשהסמן נמצא בתוך
735 הפסקה.
737 >> הניעו את הסמן לתוך הפסקה הקודמת והקישו M-q.
740 * חיפוש
741 -------
743 ‏Emacs יכול לחפש מחרוזות (רצף של תווים או מילים) קדימה או אחורה בתוך
744 הטקסט. חיפוש של מחרוזת הוא סוג של פקודה להנעת הסמן: הוא ממקם את הסמן
745 היכן שנמצאה המחרוזת הבאה.
747 החיפוש של Emacs הינו "מצטבר" ("incremental"). פירוש הדבר הוא שהחיפוש
748 מתבצע במקביל להקשתכם את המחרוזת אותה ברצונכם למצוא.
750 הפקודה להתחיל בחיפוש היא C-s לחיפוש קדימה ו־C-r לחיפוש אחורה. חכו! אל
751 תפעילו אותן עדיין.
753 כשתקישו C-s, תראו שבאזור תצוגת ההד יופיע הטקסט "I-search". זה אומר
754 ש־Emacs נמצא במצב "חיפוש מצטבר" ("incremental search") והוא ממתין
755 להקשתכם את המחרוזת אותה ברצונכם למצוא. הקשה על <Return> מסיימת את
756 החיפוש.
758 >> הקישו עתה C-s כדי להתחיל בחיפוש. לאט־לאט, אות־אות, הקישו את המילה
759    "סמן", עם הפסקה אחרי כל אות, ושימו לב להתנהגות הסמן.
760    זה עתה מצאתם את המילה "סמן" פעם אחת.
761 >> הקישו C-s שוב, כדי למצוא את "סמן" במקומות נוספים בטקסט.
762 >> הקישו <Delback> שלוש פעמים ושימו לב לתנועת הסמן בכל הקשה.
763 >> הקישו <Return> לסיום החיפוש.
765 האם שמתם לב למה שקרה? במהלך "חיפוש מצטבר" Emacs מנסה למצוא את המקום
766 הבא בו מופיעה המחרוזת שהקשתם. כדי למצוא את המחרוזת במקום הבא, פשוט
767 הקישו C-s פעם נוספת. אם המחרוזת אינה נמצאת בהמשך הטקסט, Emacs מצפצף
768 ומודיע שהחיפוש נכנס למצב של "כשלון" ("failing"). הקשה על C-g גם היא
769 מסיימת את החיפוש.
771 (הערה: במערכות אחדות הקשה על C-s מקפיעה את תצוגת המסך, כך שלא תראו
772 יותר שום פלט של Emacs. משמעות הדבר שתכונת מערכת ההפעלה ששמה "flow
773 control" מופעלת ע"י C-s ואינה מעבירה את C-s ל־Emacs. לביטול הקפאת
774 התצוגה במערכות אלו יש להקיש C-q.)
776 אם במהלך החיפוש תקישו על <Delback>, תראו שהתו האחרון של המחרוזת
777 המבוקשת נמחק והחיפוש חוזר למקום הקודם בו נמצאה המחרוזת ללא התו האחרון.
778 למשל, נניח שהקשתם "ס" על־מנת למצוא את המקום הבא בו מופיעה האות "ס". אם
779 עכשיו תקישו "מ", הסמן יזוז למקום בו נמצא "סמ". עתה הקישו <Delback>.
780 ה־"מ" נמחק מהמחרוזת והסמן חוזר למקום בו הוא מצא את "ס" לראשונה.
782 אם במהלך החיפוש תפעילו פקודה כלשהי ע"י הקשה על מקש תוך לחיצה על
783 CONTROL או META, החיפוש יסתיים. (כמה תווים יוצאים מכלל זה -- אלו תווים
784 מיוחדים בעת חיפוש, כדוגמת C-s ו־C-r.)
786 הקשה על C-s מתחילה חיפוש שמנסה למצוא את המחרוזת _אחרי_ הסמן. אם
787 ברצונכם למצוא משהו בטקסט הקודם למקום הנוכחי, הקישו C-r במקום C-s. כל
788 מה שאמרנו לגבי C-s תקף גם לגבי C-r, אלא שכיוון החיפוש מתהפך.
791 * חלונות מרובים
792 ---------------
794 אחת התכונות הנוחות של Emacs היא כי ניתן להציג יותר מחלון אחד על המסך
795 בו־זמנית. (הערה: Emacs משתמש במונח "frame" -- "תבנית" -- בשביל מה
796 שתוכניות אחרות מכנות "חלון". תבניות מתוארות בפסקה הבאה. תוכלו למצוא את
797 רשימת המונחים של Emacs בפרק "Glossary" של מדריך משתמש.)
799 >> הביאו סמן לשורה זו והקישו C-u 0 C-l ‏(CONTROL-L ולא CONTROL-1).
801 >> עתה הקישו C-x 2 וכתוצאה מכך החלון יתחלק לשניים. כל אחד משני החלונות
802    מציג את השיעור הזה. הסמן נשאר בחלון העליוןץ
804 >> הקישו C-M-v כדי לגלול את החלון התחתון.
805    (אם במקלדת שלכם אין מקש META אמיתי, הקישו ‎<ESC> C-v כתחליף.)
807 >> הקישו C-x o ‏("o" הוא רמז ל־"other", "אחר") על־מנת להעביר את הסמן
808    לחלון התחתון.
809 >> הקישו C-v ו־M-v בחלון התחתון כדי לגלול אותו.
810    המשיכו לקרוא הוראות אלו בחלון העליון.
812 >> הקישו C-x o שוב לחזור לחלון העליון.
813    הסמן בחלון העליון יישאר במקום בו הוא היה לפני־כן.
815 תוכלו להמשיך להשתמש ב־C-x o כדי לדלג בין שני החלונות. לכל חלון מיקום
816 סמן משלו, אבל רק חלון אחד מציג את הסמן בכל רגע. כל פקודות העריכה
817 הרגילות פועלות על החלון שבו מוצג הסמן. אנו קוראים לחלון זה "החלון
818 הנבחר".
820 הפקודה C-M-v נוחה מאד כאשר הינכם עורכים טקסט בחלון אחד ומשתמשים בחלון
821 אחר לייחוס. תוכלו בכל עת לשמור על הסמן בחלון בו אתם עורכים טקסט
822 ולהתקדם בחלון השני בעזרת C-M-v.
824 ‏C-M-v היא דוגמא אחת של פקודת CONTROL-META. אם במקלדת שלכם קיים מקש
825 META אמיתי, תוכלו להקיש את הפקודה ע"י לחיצה והחזקה של מקשי CONTROL
826 ו־META גם יחד ואז להקיש v. הסדר שבו תלחצו על CONTROL ו־META אינו משנה
827 כי שני המקשים הללו פועלים ע"י שינוי התו המוקש יחד איתם.
829 אם אין במקלדת מקש META אמיתי ואתם משתמשים ב־<ESC> כתחליף, הסדר כן
830 משנה: חייבים להקיש <ESC> ורק לאחר מכן CONTROL-v, וזאת משום
831 ש־CONTROL-<ESC> v לא יעבוד. <ESC> הוא תו בזכות עצמו, שלא כמו CONTROL
832 או META.
834 >> הקישו C-x 1 (בחלון העליון) כדי לסלק את החלון התחתון.
836 (אילו הקשתם C-x 1 בחלון התחתון, הייתם מסלקים את החלון העליון. תוכלו
837 לחשוב על פקודה זו כ־"השאר רק חלון אחד -- החלון בו אני נמצא עתה".)
839 אין חובה להציג את אותו החוצץ בשני החלונות. תוכלו להשתמש ב־C-x C-f
840 לפתיחת קובץ באחד החלונות -- דבר זה אינו משפיע על החלון השני. אפשר גם
841 לפתוח קבצים שונים בכל אחד משני החלונות באופן בלתי־תלוי.
843 הנה עוד שיטה להשתמש בשני חלונות להצגה של שני דברים שונים:
845 >> הקישו C-x 4 C-f ואחר־כך הקישו שם של אחד הקבצים שלכם.
846    סיימו עם <Return>. שימו לב שהקובץ המבוקש מוצג בחלון התחתון. הסמן
847    מדלג לשם אף הוא.
849 >> הקישו C-x o לעבור לחלון העליון ואחר־כך הקישו C-x 1 כדי לסלק את
850    החלון התחתון.
853 * תבניות מרובות
854 ---------------
856 ‏Emacs מסוגל לפתוח מספר "תבניות" ("frames") בתנאי שאינכם משתמשים בצג
857 שמסוגל להציג רק טקסט. תבנית כוללת קבוצת חלונות, תפריט, פסי גלילה, אזור
858 תצוגת הד וכו'. (תוכניות אחרות נוהגות לקרוא לזה "חלון".)
860 >> הקישו M-x make-frame <Return>‎.
861    כתוצאה, תבנית חדשה תופיע על המסך.
863 כל מה שעשיתם בתבנית המקורית ניתן לעשות גם בתבנית החדשה. התבנית הראשונה
864 אין בה שום דבר מיוחד.
866 >> הקישו M-x delete-frame <Return>‎.
867    התבנית שבה הקשתם את הפקודה תיסגר ותיעלם מהמסך.
869 כמו־כן, ניתן לסגור תבנית בדרך הרגילה הנתמכת ע"י מנהל החלונות של המערכת
870 שלכם (בדרך־כלל, ע"י הקלקה על הכפתור המסומן ב־"X" בפינה עליונה של
871 התבנית.) שום מידע אינו הולך לעיבוד כאשר סוגרים תבנית (או חלון). המידע
872 הזה פשוט יורד מהתצוגה, אבל ניתן לאחזרו מאוחר יותר.
875 * רמות עריכה רקורסיביות
876 -----------------------
878 יתכן ותיקלעו למצב שקרוי "רמת עריכה רקורסיבית". Emacs מציין זאת ע"י
879 סוגריים מרובעים בשורת הסטטוס מסביב לשם האופן הראשי. למשל, יוצג שם
880 [(Fundamental)] במקום (Fundamental).
882 כדי להחלץ מרמת עריכה רקורסיבית יש להקיש <ESC> <ESC> <ESC>. זוהי פקודה
883 כללית של "הימלטות". ניתן להשתמש בה גם כדי לסלק חלונות מיותרים וליציאה
884 מתוך מיני־חוצץ.
886 >> הקישו M-x כדי להיכנס למיני־חוצץ; אחר־כך הקישו <ESC> <ESC> <ESC> כדי
887    להיחלץ משם.
889 הקשה על C-g לא תחלץ אתכם מרמות עריכה רקורסיביות. זאת, משום ש־C-g מבטל
890 פקודות וארגומנטים _במסגרת_ הרמה הרקורסיבית, מבלי לצאת ממנה.
893 * לקבלת עזרה נוספת
894 ------------------
896 בשיעור הראשון הזה השתדלנו לתת בידיכם מידע שאך יספיק להתחלת השימוש שלכם
897 ב־Emacs. ‏Emacs מכיל כל־כך הרבה שאין שום אפשרות לתאר ולהסביר כאן את
898 הכל. אולם, סביר שתרצו ללמוד יותר על Emacs שכן יש בו עוד הרבה תכונות
899 שימושיות. Emacs כולל פקודות לשם קריאת תיעוד על הפקודות של Emacs.
900 הפעלת פקודות "עזרה" אלו תמיד מתחילה במקש CONTROL-h שעל־כן נקרא "מקש
901 עזרה" ("help").
903 להפעלת פקודות עזרה יש להקיש את C-h ואחר־כך עוד תו שמבקש עזרה מסוג
904 מסויים. אם אתם _באמת_ אבודים, הקישו C-h ?‎ ו־Emacs יציג את סוגי העזרה
905 שהוא מעמיד לרשותכם. אם הקשתם C-h ובסופו של דבר החלטתם שאין צורך בשום
906 עזרה, פשוט הקישו C-g לבטל את הפקודה.
908 (אם הקשת C-h אינה מציגה בתחתית התצוגה הודעה בדבר עזרה, נסו להקיש F1 או
909 M-x help <Return>‎ כתחליף.)
911 סוג העזרה הבסיס ביותר הוא C-h c. הקישו C-h, אחריו את האות c ואז הקישו
912 סדרת מקשים שמפעילה פקודה כלשהי. Emacs יציג תיאור מאד קצר של הפקודה
913 ההיא.
915 >> הקישו C-h c C-p.
917 התוצאה שתוצג צריכה להיות משהו כמו זה:
919                 C-p runs the command previous-line
921 ההודעה הזו מראה את "שם הפונקציה". היות ושמות הפונקציות נבחרים כדי
922 לציין מה הן עושות, השמות עשויים לשמש כתיעוד מקוצר -- מספיק כדי להזכיר
923 לכם את הפקודות שלמדתם בעבר.
925 ניתן לציין אחרי C-h c גם פקודות שמופעלות ע"י סדרת מקשים באורך גדול
926 מאחד, כגון C-x C-s או (אם אין מקש META או EDIT או ALT) ‏‎<ESC> v.
928 לקבלת מידע מפורט יותר על פקודה, השתמשו בפקודה C-h k במקום C-h c.
930 >> הקישו C-h k C-p.
932 כתוצאה, יוצגו השם והתיעוד של הפונקציה בחלון Emacs נפרד. כשתסיימו לקרוא
933 את התיעוד, הקישו C-x 1 כדי לסלק את חלון העזרה. לא חייבים לעשות זאת
934 מיד. אפשר לבצע קצת עריכה תוך שימוש בתיעוד המוצג ורק אחר־כך להקיש C-x 1.
936 הנה עוד כמה פקודות עזרה שימושיות:
938     ‏C-h f      תן הסבר על פונקציה. יש להקיש את שם הפונקציה.
940 >> נסו להקיש C-h f previous-line <Return>‎.
941    כתוצאה, יוצג תיעוד מלא של הפונקציה המממשת את הפקודה C-p כפי שהוא
942    ידוע ל־Emacs.
944 פקודה דומה C-h v מציגה תיעוד של משתנה, כולל אלו שאת הערכים שלהם ניתן
945 לשנות כדי לקסטם את Emacs. יש להקיש את שם המשתנה כאשר Emacs יבקש זאת.
947     ‏C-h a      פקודות בנוגע לנושא מסויים. הקישו מילת מפתח ו־Emacs
948                 יציג את רשימת הפקודות ששמותיהן מכילות את מילת המפתח.
949                 כל הפקודות הללו ניתנות להפעלה ע"י META-x. עבור חלק
950                 מהפקודות תוצג גם סדרת מקשים שמפעילה את הפקודה.
952 >> הקישו C-h a file <Return>‎.
954 כתוצאה מזה, יוצג חלון עם רשימה של כל הפקודות ששמותיהן מכילות את המילה
955 "file". ביניהן תראו גם מקשי קיצור כגון C-x C-f לצד שמות הפקודות כגון
956 find-file.
958 >> הקישו C-M-v כדי לגלול את חלון העזרה. עשו זאת פעמים אחדות.
960 >> עתה הקישו C-x 1 כדי לסגור את חלון העזרה.
962     ‏C-h i      הצג מדריכים למשתמש הכלולים בחבילת Emacs. (פקודה זו
963                 ידועה גם בשם "Info".) פקודה זאת פותחת חוצץ מיוחד הקרוי
964                 "*info*" שבו תוכלו לקרוא מדריכים המותקנים במערכת שלכם.
965                 הקישו m emacs <Return>‎ כדי לקרוא במדריך למשתמשי Emacs.
966                 אם אינכם מכירים את Info, הקישו ? ו־Emacs יקח אתכם
967                 לשיעור על התכונות של Info mode. כשתסיימו עם השיעור
968                 הזה, אנו בהחלט ממליצים להשתמש במדריך Emacs בתור התיעוד
969                 העיקרי שלכם.
972 * עוד תכונות
973 ------------
975 תוכלו ללמוד עוד על־אודות Emacs ע"י קריאה במדריך למשתמש שלו, אם כספר
976 מודפס או בגירסה מקוונת בתוך Emacs עצמו. (תוכלו להגיע אל המדריך דרך
977 תפריט Help או ע"י הקשה על C-h r.) אולם שתי תכונות שבוודאי ימצאו חן
978 בעיניכם הן השלמה אשר חוסכת הקשות, ו־dired שמאפשרת טיפול נוח בקבצים.
980 השלמה היא דרך להימנע מהקשות מיותרות. למשל, אם ברצונכם לעבור לחוצץ
981 *Messages*, תוכלו להקיש C-x b *M<Tab>‎ ו־Emacs ישלים את שאר האותיות של
982 שם החוצץ ככל שניתן להסיק ממה שהקשתם. השלמה פועלת גם על שמות הפקודות
983 ושמות קבצים. תכונת ההשלמה מתוארת במלואה במדריך למשתמש Emacs בצומת
984 (node) בשם "Completion".
986 ‏Dired מאפשר להציג רשימת קבצים בתיקיה (וכאפציה גם בתת-תיקיות שלה), לנוע
987 בתוך הרשימה הזו, לפתוח קבצים, לשנות את שמותיהם, למחוק אותם ולבצע עליהם
988 עוד פעולות רבות. Dired מתואר במלואו במדריך למשתמש בצומת בשם "Dired".
990 בנוסף, מדריך למשתמש מתאר עוד הרבה מאד תכונות של Emacs.
993 * לסיום
994 -------
996 כדי לצאת מ־Emacs יש להקיש C-x C-c.
998 שיעור זה נכתב כדי להיות מובן לכל המשתמשים החדשים, לכן אם מצאתם שמשהו
999 כאן אינו ברור, אל תשבו ותאשימו את עצמכם -- תתלוננו!
1002 * זכויות שימוש
1003 --------------
1005 שיעור זה הינו צאצא של שורה ארוכה של שיעורים בשימוש ב־Emacs, החל מהגרסה
1006 הראשונה שנכתבה ע"י Stuart Cracraft עבור גירסת ה־Emacs המקורית.
1008 גירסה זו של השיעור הינה חלק מחבילת GNU Emacs. היא מוגנת בזכויות יוצרים
1009 וניתנת להעתקה והפצת עותקים בתנאים מסויימים כדלקמן:
1011                        Copyright (C) 2010-2011 Free Software Foundation, Inc.
1013 ‏GNU Emacs הינו תכנה חפשית; זכותכם להפיצו ו\או לשנותו בכפוף לתנאי
1014 הרשיון GNU General Public License, כפי שהוא יוצא לאור ע"י Free
1015 Software Foundation, אם בגרסא 3 של הרשיון, ואם (כאופציה השמורה לכם)
1016 בכל גרסא מאוחרת יותר.
1018 ‏GNU Emacs מופץ מתוך תקווה שהוא יביא תועלת, אולם ללא כל כתב אחריות;
1019 אפילו לא אחריות־במשתמע של סחירות או התאמה לאיזו תכלית מסוימת. לפרטים,
1020 אנא עיינו ב־GNU General Public License.
1022 ‏GNU Emacs אמור להיות מלווה בעותק של GNU General Public License; אם לא
1023 קיבלתם אותו, תוכלו למצוא אותו ב־‭<http://www.gnu.org/licenses/>‬.
1025 הנכם מוזמנים לקרוא את הקובץ COPYING ואז אכן לחלק עותקים של GNU Emacs
1026 לחבריכם. עזרו לנו לחסל את "הבעלות" על תוכנה שאינה אלא חבלה בתוכנה,
1027 וזאת ע"י שימוש, כתיבה ושיתוף של תוכנה חופשית!
1031 --- end of TUTORIAL.he ---
1033 ;;; Local Variables:
1034 ;;;   coding: utf-8
1035 ;;;   bidi-display-reordering: t
1036 ;;;   sentence-end-double-space: nil
1037 ;;;   bidi-paragraph-direction: nil
1038 ;;; End: