* lisp/textmodes/table.el (table-insert): Don't use `symbol-name' on
[emacs.git] / etc / tutorials / TUTORIAL.he
blobe0c85a379a96ab5d34e8522a664cd9a87b4afb6c
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. ניתן לגלול את הטקסט ע"י הקלקת עכבר בתוך פס הגלילה.
205 אם העכבר שלכם מצויד בגלגל, תוכלו להשתמש גם בו לגלילת הטקסט.
207 * אם Emacs מפסיק להגיב
208 ----------------------
210 אם Emacs מפסיק להגיב לפקודות, תוכלו להפסיק אותו בבטחה ע"י הקשת C-g.
211 פקודות שביצוען מתארך אף הן ניתנות להפסקה בעזרת C-g.
213 בנוסף, תגרום הקשת C-g לביטול הארגומנט הנומרי או תחילת הפקודה שטרם
214 השלמתם להקיש והתחרטתם.
216 >> הקישו C-u 100 כדי לציין ארגומנט של 100, ולאחר מכן C-g. עתה הקישו
217    C-f. הוא צריך לנוע תו אחד בלבד, שכן ביטלתם את הארגומנט בעזרת C-g.
219 אם הקשתם <ESC> בטעות, ניתן לבטלו בעזרת C-g.
221 * פקודות מנוטרלות
222 -----------------
224 מספר פקודות ב־Emacs מנוטרלות בכוונה כדי שמשתמשים מתחילים לא יפעילו
225 אותן בדרך מקרה.
227 אם תקישו את אחת הפקודות הללו, Emacs יציג הודעה המתארת את הפקודה וישאל
228 אם לבצע את הפקודה או לבטלה.
230 אם אכן בכוונתכם לנסות את הפקודה, הקישו <SPC> (מקש הרווח) בתשובה לשאלה.
231 בדרך כלל, אם אינכם מעוניינים לבצע את הפקודה המנוטרלת, הקישו "n" בתשובה
232 לשאלה הזו.
234 * חלונות
235 --------
237 תצוגת Emacs יכולה לכלול יותר מחלון אחד, כשכל אחד מהם מציג טקסט משלו.
238 מאוחר יותר נסביר כיצד להשתמש בחלונות מרובים. כעת ברצוננו להסביר כיצד
239 להפטר מחלונות מנותרים ולחזור לעריכה בחלון יחיד. אין דבר פשוט מזה:
241         ‏C-x 1  חלון אחד בלבד (כלומר, סגור את כל החלונות האחרים).
243 כדי להפעיל פקודה זו, הקישו CONTROL-x ולאחריו את הספרה 1. הפקודה C-x 1
244 מרחיבה את החלון המציג את הסמן כך שהוא תופס את כל שטח התצוגה. הפקודה
245 מבטלת את שאר החלונות.
247 >> הניעו את הסמן לתוך שורה זו והקישו C-u 0 C-l.
248 >> עתה הקישו C-h k C-f.
249    שימו לב כיצד החלון הנוכחי מצטמצם ומופיע חלון חדש שבו מוצג
250    התיעוד של הפקודה C-f.
252 >> הקישו C-x 1 ושימו לב שהחלון עם ההסבר על C-f נעלם.
254 פקודה זו שונה מכל שאר הפקודות שלמדנו עד כה בכך שהיא מכילה שני תוים.
255 היא מתחילה עם התו CONTROL-x. פקודות רבות מאד מתחילות ב־CONTROL-x; חלק
256 גדול מהן עוסקות בחלונות, קבצים, חוצצים ונושאים דומים אחרים. פקודות אלו
257 מכילות שנים, שלושה ואפילו ארבעה תוים.
260 * הכנסה ומחיקה
261 --------------
263 אם ברצונכם להכניס טקסט, פשוט הקישו על המקשים המתאימים. תוים רגילים,
264 כגון A, א, 7, * וכד' מיד מתווספים לטקסט הקיים. הקישו <Return> (מקש
265 חזרת גרר שלעתים נהוג לקרוא לו "Enter") כדי להכניס את תו השורה החדשה
266 (Newline).
268 למחיקת התו האחרון שהקשתם הקישו <DEL>. בדרך כלל זהו מקש שמסומן
269 ב־"Backspace", והוא משמש אתכם למחיקת התו אחרון גם בתוכניות אחרות, לא
270 רק ב־Emacs.
272 יתכן שבמקלדת שלכם קיים מקש שעליו רשום <Delete>, אך זה אינו המקש שאנו
273 קוראים לו <DEL>.
275 >> הקישו עתה מספר תוים, ואחר־כך מחקו אותם ע"י הקשות אחדות
276    על <DEL>. אל תחששו לשנות את הקובץ הזה -- העותק המקורי
277    של השיעור יישאר ללא שינוי. אתם עובדים על העותק האישי שלכם.
279 כאשר שורה של טקסט נעשית ארוכה משורה אחת של תצוגה, חלק מהטקסט ממשיך
280 בשורת תצוגה נוספת, היא "שורת ההמשך". על תצוגה גרפית יופיע חץ עקלקל קטן
281 באזור השוליים -- "fringe" שמסמל כי לשורה יש שורת המשך, ואילו על תצוגה
282 טקסטואלית יופיע תו לוכסן ("/") לאותה תכלית בסוף השורה.
284 >> הקישו טקסט עד שתגיעו לקצה השורה, ואז תמשיכו להקיש עוד טקסט.
285    כתוצאה, תראו שמופיעה שורת המשך.
287 >> עתה הקישו <DEL> על־מנת למחוק טקסט עד שהשורה תיעשה קצרה מספיק
288    ותתאים לשורה בודדת על־גבי התצוגה. שורת ההמשך תיעלם.
290 ניתן למחוק את תו ה־Newline כמו כל תו אחר. מחיקת ה־Newline בין שתי
291 שורות תמזג את השורות לשורה אחת. אם השורה המשולבת תהיה ארוכה מרוחב
292 התצוגה, היא תוצג עם שורת המשך.
294 >> הניעו את הסמן לתחילת השורה והקישו <DEL>. כתוצאה, השורה תתמזג
295    אם קודמתה.
297 >> עתה הקישו <Return> כדי להחזיר את ה־Newline שמחקתם.
299 זכרו כי לרוב הפקודות ב־Emacs אפשר לציין מספר חזרות. גם תוי טקסט
300 שייכים לקבוצת פקודות זו. חזרה על תו טקסט מכניסה אותו מספר פעמים.
302 >> נסו זאת עכשיו -- הקישו ‪C-u 8 *‬ על־מנת להכניס ********.
304 ובכן, למדתם את האופן הבסיסי ביותר להדפיס משהו ב־Emacs ולתקן שגיאות.
305 אפשר למחוק גם מלים ואף שורות שלמות. להלן סיכום פקודות המחיקה:
307         ‏<DEL>          מחק תו שלפני הסמן
308         ‏C-d            מחק תו מתחת או אחרי הסמן
310         ‏‪M-<DEL>‬      גזור מילה שלפני הסמן
311         ‏M-d            גזור מילה שאחרי הסמן
313         ‏C-k            גזור טקסט מהסמן ועד סוף השורה
314         ‏M-k            גזור טקסט עד סוף המשפט הנוכחי.
316 שימו לב שהיחס בין <DEL> ו־C-d לעומת M-<DEL>‎ ו־M-d ממשיכים את ההקבלה
317 שבין C-f ו־M-f (אמנם <DEL> איננו תו בקרה, אבל בוא נזניח את הנקודה הזו
318 לעת־עתה). C-k ו־M-k דומים ל־C-e ו־M-e, אם נקביל שורות למשפטים.
320 בנוסף, קיימת שיטה אחידה שמאפשרת לגזור קטע כלשהו של טקסט. לשם כך, תגיעו
321 לקצה האחד של חלק הטקסט והקישו C-<SPC>‎. (<SPC> הוא מקש הרווח.) עתה
322 הניעו את הסמן לקצה השני של חלק הטקסט אשר ברצונכם לגזור. תוך כדי תנועת
323 הסמן Emacs צובע את הטקסט בין הסמן לבין המקום בו הקשתם C-<SPC>‎. לבסוף,
324 הקישו C-w. כתוצאה, כל הטקסט בין שני המקומות הללו ייגזר.
326 >> הניעו את הסמן אל האות ב בתחילת הפיסקה הקודמת.
327 >> הקישו C-<SPC>‎. ‏Emacs צריך להציג הודעה האומרת "Mark set" בתחתית
328    התצוגה.
329 >> הניעו את הסמן אל האות צ בשורה השניה של הפיסקה.
330 >> הקישו C-w. בכך תגזרו את חלק הטקסט שמתחיל ב־ב ומסתיים לפני ה־צ.
332 ההבדל בין "מחיקה" ("deletion") ו־"גזירה" ("killing") הוא שהטקסט
333 "הגזור" ניתן לאחזור ולהכנסה (במקום כלשהוא בטקסט), ואילו טקסט "מחוק" לא
334 ניתן להכניס מחדש בשיטה זו. (אבל ניתן לבטל את מחיקה -- ראה להלן.) אחזור
335 הטקסט הגזור נקרא "הדבקה" ("yanking"). באופן כללי, פקודות אשר עלולות
336 להעלים כמויות גדולות של טקסט תמיד גוזרות את הטקסט (כך שניתן יהיה בקלות
337 לשחזרו) בעוד הפקודות שמורידות תו בודד או שורות ריקות ותוי רווח --
338 מוחקות (כך שלא ניתן להדביק את הטקסט שנמחק). כך, <DEL> ו־C-d מוחקים
339 כאשר מפעילים אותם ללא ארגומנט, אבל גוזרים כאשר מפעילים אותם עם ארגומנט.
341 >> הניעו את הסמן לתחילת שורה שאינה ריקה. אחר־כך הקישו C-k כדי לגזור
342    את כל הטקסט של אותה שורה.
343 >> הקישו C-k פעם נוספת. שימו לב שהוא גוזר את ה־Newline שבסוף השורה.
345 שימו לב ש־C-k בודד גוזר את תכולת השורה, ו־C-k נוסף גוזר גם את השורה
346 עצמה וגורם לשאר השורות לנוע כלפי מעלה. C-k מפרש את הארגומנט הנומרי
347 באופן מיוחד: הוא גוזר כמספר הזה שורות, כולל ה־Newlines שלהן. זה שונה
348 מסתם הפעלה חוזרת: C-u 2 C-k גוזר שתי שורות כולל ה־Newlines שלהן,
349 ואילו הקשה על C-k פעמיים לא עושה כן.
351 אחזור הטקסט שגזרנו נקרא "הדבקה" ("yanking"). (תחשבו על זה כעל שליפה
352 של טקסט מתהום הנשייה אליה הוא נלקח.) ניתן להדביק את הטקסט שגזרתם
353 באותו מקום ממנו נגזר או במקום אחר כלשהו בתוך הטקסט שאתם עורכים, או
354 אפילו בקובץ אחר. ניתן להדביק את אותו הטקסט מספר פעמים ובכך ליצור
355 עותקים מרובים ממנו. תוכניות עריכה אחרות משתמשות במונחים "cutting"
356 ו־"pasting" במקום "killing" ו־"yanking" (ראה את מילון המונחים בפרק
357 ה־"Glossary" של מדריך למשתמשי Emacs).
359 הפקודה להדבקה היא C-y. היא מכניסה את הטקסט הגזור במקום הנוכחי של הסמן.
361 >> נסו זאת: הקישו C-y כדי לאחזר טקסט שגזרתם קודם לכן.
363 אם תקישו C-k מספר פעמים ברצף, כל הטקסט שגזרתם בדרך זו נשמר ביחד, כך
364 ש־C-y בודד ידביק את כולו בבת אחת.
366 >> עשו זאת עתה: הקישו C-k כמה פעמים.
368 עכשיו לאחזור הטקסט שגזרתם:
370 >> הקישו C-y. אחר־כך הניעו את הסמן כמה שורות כלפי מטה והקישו C-y שוב.
371    כפי שראיתם, כך תוכלו להעתיק חלק מהטקסט ממקום למקום.
373 מה לעשות אם יש לכם טקסט להדבקה, אבל בינתיים גזרתם טקסט אחר? C-y ידביק
374 רק את הגזירה האחרונה. אולם הטקסט שגזרתם קודם לכן אינו הלך לאיבוד. ניתן
375 לאחזרו בעזרת הפקודה M-y. אחרי שהקשתם C-y שמדביק את הטקסט שגזרתם
376 לאחרונה, הקשה על M-y מחליפה את הטקסט המודבק בטקסט שגזרתם בפעם לפני
377 האחרונה. הקשה חוזרת ונשנית על M-y מביאה טקסט שגזרתם בפעמים קודמות יותר
378 ויותר. כשתראו שהטקסט המודבק הוא מה שרציתם להדביק, תפסיקו להקיש M-y
379 ותמשיכו בעריכה כרגיל. אין צורך בשום פקודה מיוחדת לשם כך.
381 אם תקישו M-y מספיק פעמים בזו אחר זו, תגיעו חזרה לנקודת ההתחלה (טקסט
382 שגזרתם לאחרונה).
384 >> גזרו שורה, אחר־כך תניעו את הסמן אנה ואנה, ולבסוף גזרו שורה נוספת.
385    הקישו C-y כדי לאחזר את השורה השניה שגזרתם.
386    עתה הקישו M-y והשורה שאחזרתם תוחלף בשורה הראשונה שגזרתם.
387    הקישו M-y מספר פעמים נוספות ושימו לב לתוצאות. המשיכו להקיש M-y
388    עד שהשורה השניה שגזרתם תופיע שוב, ואז תמשיכו עוד מספר פעמים.
389    אם תרצו, תוכלו לנסות M-y עם ארגומנט חיובי או שלילי.
392 * ביטול פעולות
393 --------------
395 אם שיניתם את הטקסט ואז החלטתם שהשינוי היה טעות, תוכלו לבטל את השינוי
396 בעזרת פקודת הביטול, ‪C-/‬.
398 בדרך כלל,‪C-/‬ מבטל את השינויים שבוצעו ע"י פקודה אחת. הפעלה חוזרת של
399 ‪C-/‬ ברצף מבטלת שינויים של פקודות קודמות, אחת אחרי השניה.
401 שני יוצאים מהכלל הזה: פקודות שאינן משנות טקסט (למשל פקודות הנעת הסמן
402 ופקודות גלילה) אינן נספרות ותוים שמכניסים את עצמם מקובצים בקבוצות של
403 עד 20, כדי להקטין את מספר הפעמים שיש להקיש ‪C-/‬ כדי לבטל הכנסת טקסט.
405 >> גזרו שורה זו עם C-k, אחר־כך הקישו ‪C-/‬ והיא תופיע שוב.
407 ‏C-_‎ הינה דרך חלופית להפעיל את פקודת הביטול. היא פועלת בדיוק כמו ‪C-/‬.
408 במקלדות אחדות הקשה על ‪C-/‬ שולחת ל־Emacs את התו C-_‎. חלופה נוספת היא
409 C-x u, אם־כי היא פחות נוחה להקשה מספר פעמים בזו אחר זו.
411 ארגומנט נומרי ל־‪C-/‬ או ל־C-_‎ או ל־C-x u משמש כמספר החזרות על הפקודה.
413 ניתן לבטל מחיקה של טקסט בדיוק כמו שניתן לבטל גזירה. ההבדלים בין מחיקה
414 וגזירה משפיעים על יכולתכם להדביק את הטקסט הגזור עם C-y; הם אינם חשובים
415 לעניין הביטול.
418 * קבצים
419 -------
421 על־מנת שהטקסט שערכתם יישמר, יש לשים אותו בקובץ. אחרת, הוא ייעלם ברגע
422 שתצאו מ־Emacs. כדי לשים את הטקס בקובץ, יש "לפתוח" ("find") את הקובץ
423 לפני שמתחילים להקיש טקסט. (שם אחר לכך הוא "לפקוד" את הקובץ - "visit".)
425 פתיחת הקובץ משמעותה שתוכן הקובץ מוצג בתוך Emacs. מבחינות רבות הדבר
426 דומה לעריכת הקובץ עצמו. אולם, השוניים שלכם בתוך Emacs אינם הופכים חלק
427 מהקובץ עד שאתם "שומרים" את הקובץ. זאת, כדי להימנע מיצירת קובץ שאינו
428 שלם במערכת שלא כרצונכם. אפילו אם אתם שומרים את הקובץ, Emacs משאיר את
429 התוכן המקורי בשם שונה למקרה שמאוחר יותר תחליטו שהשינויים נעשו בטעות.
431 אם תביטו בחלק התחתון של התצוגה, תראו שם שורה בולטת שמתחילה במקפים וליד
432 הקצה השמאלי שלה כתוב "TUTORIAL.he". חלק זה של התצוגה בדרך כלל מציג את
433 שם הקובץ אותו אתם פוקדים. כרגע אתם פוקדים קובץ בשם "TUTORIAL.he" שהוא
434 עותק הטיוטה האישי שלכם של שיעור השימוש ב־Emacs. פתיחת קובץ כלשהו
435 ב־Emacs תציג את שמו של הקובץ במקום זה.
437 היבט אחד מיוחד של פתיחת קובץ הוא שיש לציין את שם הקובץ אשר ברצונכם
438 לפתוח. אנו אומרים שהפקודה "קוראת ארגומנט" (במקרה זה הארגומנט הוא שם
439 הקובץ). אחרי שתקישו את הפקודה
441         ‏C-x C-f    פתח קובץ
443 ‏Emacs מבקש שתקישו את שם הקובץ. שם הקובץ שתקישו מופיע בשורה התחתונה של
444 התצוגה. שורה זו נקראת "מיני־חוצץ" ("minibuffer") כשהיא משמשת לסוג זה
445 של קלט. ניתן להשתמש בכל פקודות העריכה הרגילות של Emacs כשמקישים את
446 שם הקובץ בחוצץ זה.
448 אם טרם סיימתם להקיש את שם הקובץ (או כל סוג אחר של קלט במיני־חוצץ),
449 ניתן לבטל את הפקודה בעזרת C-g.
451 >> הקישו C-x C-f ואחר־כך הקישו C-g. זה מבטל את המיני־חוצץ וגם מבטל
452    את הפקודה C-x C-f שהשתמשה במיני־חוצץ. התוצאה היא שאף קובץ לא נפתח.
454 משסיימתם להקיש את שם הקובץ, הקישו <Return> לסיים את הקלט. או־אז
455 המיני־חוצץ נעלם והפקודה C-x C-f תיגש לעבודה ותמצא ותפתח את הקובץ
456 שבחרתם. כאשר פקודת ה־C-x C-f תסיים את עבודתה, תוכן הקובץ יופיע על־גבי
457 התצוגה ותוכלו לבצע בו שינויים. כשתחליטו לשמור את השינויים, הקישו את
458 הפקודה הבאה:
460         ‏C-x C-s    שמור את הקובץ
462 פקודה זו שומרת בקובץ את הטקסט המוחזק בתוך Emacs. בפעם הראשונה שתפעילו
463 פקודה זו, Emacs משנה את שם הקובץ המקורי לשם חדש כך שהמקור לא ילך
464 לאיבוד. השם החדש נוצר ע"י הוספת "~" בסוף השם המקורי של הקובץ.
466 כשהשמירה מסתיימת, Emacs מציג בשורה התחתונה את שם הקובץ שנשמר. נסו
467 לשמור לעתים מזומנות על־מנת להימנע מלאבד יותר מדי מהעבודה שלכם אם המחשב
468 ייפול (ראה להלן פיסקה על שמירה אוטומטית).
470 >> הקישו C-x C-s TUTORIAL.he ותסיימו בהקשת <Return>. כתוצאה, שיעור זה
471    יישמר בקובץ בשם TUTORIAL.he ובתחתית התצוגה תופיע ההודעה
472    "Wrote ...TUTORIAL.he".
474 ניתן לפתוח קובץ קיים על־מנת לצפות בו או לערוך אותו. ניתן גם לפתוח קובץ
475 שאינו קיים. זו הדרך ליצור קבצים חדשים בעזרת Emacs: פתחו את הקובץ
476 שיהיה תחילה ריק ואז התחילו להקיש טקסט לתוכו. כשתפעילו את פקודת השמירה,
477 Emacs ייצור את הקובץ עם הטקסט שהקשתם. מאותו רגע ואילך, תוכלו לחשוב
478 שהינכם עורכים קובץ קיים.
481 * חוצצים
482 --------
484 אם תפתחו קובץ נוסף עם C-x C-f, הקובץ הראשון עדיין נשאר פתוח ב־Emacs.
485 תוכלו לחזור אליו ע"י C-x C-f. כך תוכלו לפתוח מספר רב של קבצים.
487 ‏Emacs מחזיק כל קובץ בתוך יישות בשם "חוצץ" ("buffer"). פתיחת קובץ יוצרת
488 חוצץ חדש בתוך Emacs. כדי לראות את רשימת החוצצים הקיימים בתוך Emacs,
489 הקישו
491         ‏C-x C-b    הצג רשימת כל החוצצים
493 >> נסו את C-x C-b בנקודה זו.
495 שימו לב שלכל חוצץ יש שם וכל חוצץ עשוי גם לציין את שם הקובץ שאת תוכנו
496 הוא מחזיק. כל טקסט שאתם מקישים בחלון Emacs תמיד יהיה חלק של חוצץ
497 כלשהו.
499 >> הקישו C-x 1 כדי להפטר מרשימת החוצצים.
501 כשקיימים מספר חוצצים, רק אחד מהם יכול להיות החוצץ "הנוכחי" בכל רגע
502 נתון. זהו החוצץ בו אתם מבצעים עריכה באותו רגע. אם ברצונכם לערוך חוצץ
503 אחר, עליכם "לעבור" חוצץ. עבור חוצצים שמתאימים לקבצים, ניתן לעשות זאת
504 ע"י C-x C-f שיפקוד את הקובץ בשנית. אבל קיימת דרך פשוטה יותר: שימוש
505 בפקודה C-x b. פקודה זו תחייב אותכם להקיש את שם החוצץ.
507 >> ניצור עתה קובץ בשם "foo" ע"י הקשת C-x C-f foo <Return>‎.
508    עתה חזרו לשיעור זה בעזרת C-x b TUTORIAL.he <Return>‎.
510 ברוב המקרים שם החוצץ זהה לשם הקובץ (ללא שם התיקיה שלו). אבל אין זה
511 תמיד כך. רשימת החוצצים שנוצרת ע"י C-x C-b תציג הן את שם החוצץ והן את
512 שם הקובץ עבור כל החוצצים הקיימים ב־Emacs.
514 כל טקסט שמוצג בחלון של Emacs הינו תמיד חלק של חוצץ כלשהו. קיימים
515 חוצצים שאינם קשורים לשום קובץ. לדוגמא, החוצץ בשם "*Buffer List*"
516 המחזיק את רשימת החוצצים שנוצרה ע"י C-x C-b אינו מציג שום קובץ. גם
517 לחוצץ הנוכחי ששמו TUTORIAL.he לא היה קובץ עד שהקשתם על C-x C-s כדי
518 לשמור אותו בקובץ.
520 חוצץ בשם "*Messages*" אף הוא אינו קשור לשום קובץ; הוא מחזיק את ההודעות
521 שהופיעו בשורה התחתונה במהלך עבודתכם בתוך Emacs.
523 >> הקישו C-x b *Messages* <Return>‎ כדי לצפות בחוצץ של הודעות.
524    אחר־כך הקישו C-x b TUTORIAL.he <Return>‎ על־מנת לחזור לשיעור זה.
526 אם עשיתם שינויים בטקסט של קובץ ואחר־כך פתחתם קובץ אחר, אין הדבר שומר
527 את השינויים שעשיתם לקובץ הראשון. השינויים הללו נשארים בתוך Emacs, בתוך
528 החוצץ של אותו קובץ. יצירתו ועריכתו של הקובץ הנוסף אינם משפיעים על
529 החוצץ של הקובץ הראשון. דבר זה הוא שימושי, אך משמעותו היא שיש צורך
530 בשיטה נוחה לשמור את החוצץ של הקובץ הראשון. היה זה מאד לא נוח אילו
531 לשם כך הייתם צריכים לעבור לחוצץ ההוא בעזרת C-x C-f ואז לשמור עם
532 C-x C-s. לכן קיימת פקודה
534         ‏C-x s     שמור חוצצים אחדים
536 ‏C-x s עובר על כל החוצצים אשר מכילים שינויים שטרם נשמרו. לגבי כל חוצץ
537 כזה הוא שואל אתכם האם לשמור אותו או לא.
539 >> הכניסו שורה של טקסט ואחר־כך הקישו C-x s.
540    הוא צריך לשאול האם לשמור חוצץ בשם TUTORIAL.he.
541    השיבו בחיוב ע"י הקשה על "y".
544 * הרחבת אוסף הפקודות
545 --------------------
547 מספר הפקודות ב־Emacs גדול בהרבה ממה שניתן להפעיל ע"י כל תוי ה־control
548 וה־meta. כדי להתגבר על בעיה זו, Emacs משתמש בפקודות X המרחיבות (eXtend)
549 את אוסף הפקודות הרגיל. פקודות הרחבה אלו הן שתים:
551         ‏C-x     הרחבת תו. תו בודד שבא אחריו משלים את הפקודה.
552         ‏M-x     הרחבה ע"י שם הפקודה. אחריו בא שם ארוך של פקודה.
554 בעזרת שתי אלו ניתן להפעיל פקודות שימושיות שבהן משתמשים לעתים רחוקות
555 יותר מאשר פקודות שלמדתם עד עכשיו. כמה מהן כבר ראיתם: C-x C-f לפתיחת
556 קובץ, ו־C-x C-s לשמירת קובץ, לדוגמא. דוגמא נוספת היא פקודה לצאת
557 מ־Emacs -- ‏C-x C-c. (כשאתם מפעילים C-x C-c, אל תדאגו לשינויים שטרם
558 נשמרו; C-x C-c מציע לשמור כל קובץ ששיניתם לפני שהוא מסיים את Emacs.)
560 אם אתם משתמשים בצג גרפי, אינכם זקוקים לפקודה מיוחדת כדי לעבור מ־Emacs
561 לתוכנית אחרת. אפשר לעשות זאת בעזרת העכבר או פקודות של מנהל החלונות.
562 אולם, כאשר אתם משתמשים בתצוגה טקסטואלית שמסוגלת להציג רק תוכנית אחת
563 בו־זמנית, תצטרכו "להשעות" ("suspend") את Emacs על־מנת לעבור לתוכנית
564 אחרת.
566 הפקודה C-z יוצאת מ־Emacs *באופן זמני* -- כך שתוכלו לשוב אליו מאוחר
567 יותר ולהמשיך מאותה נקודה. כאשר Emacs רץ על תצוגת טקסט, C-z "משעה" את
568 Emacs: הוא מחזיר אתכם לשורת הפקודות הבסיסית של מערכת ההפעלה ("shell"),
569 אבל אינו מסיים את Emacs. ברוב המערכות, כדי להמשיך בעבודתכם ב־Emacs,
570 תצטרכו להקיש את הפקודה "fg" או ‪"%emacs"‬.
572 הרגע הנכון להשתמש ב־C-x C-c הוא כאשר אתם עומדים להתנתק (log out).
573 כמו־כן, תצטרכו להשתמש בו כדי לצאת מ־Emacs שהופעל ע"י תוכניות אחרות
574 כגון קריאת דואר אלקטרוני.
576 קיימות פקודות C-x רבות מאד. להלן רשימת אלו שכבר למדתם:
578         ‏C-x C-f        פתח קובץ
579         ‏C-x C-s        שמור קובץ
580         ‏C-x s          שמור חוצצים אחדים
581         ‏C-x C-b        הצג רשימת חוצצים
582         ‏C-x b          החלף חוצץ
583         ‏C-x C-c        צא מ־Emacs
584         ‏C-x 1          השאר רק חלון אחד ומחק כל השאר
585         ‏C-x u          בטל פקודה אחרונה
587 הרחבה ע"י שם הפקודה שימושית עם פקודות עוד יותר נדירות או פקודות
588 ספציפיות רק לאופני פעולה (modes) מיוחדים. דוגמא לכך היא פקודה
589 replace-string (החלף מחרוזת) אשר מחליפה מחרוזת אחת במשנה בכל החוצץ.
590 אחרי שתקישו M-x, ‏Emacs מציג M-x בתחתית התצוגה ומחכה שתקישו את שם
591 הפקודה, במקרה זה "replace-string". מספיק שתקישו "repl s<TAB>‎" ו־Emacs
592 ישלים את השם המלא. (<TAB> הוא מקש Tab, בדרך כלל תמצאו אותו מעל מקש
593 ה־CapsLock או Shift, ליד הקצה השמאלי של המקלדת.) סיימו את הזנת הפקודה
594 ע"י הקשת <Return>.
596 הפקודה להחלפת מחרוזת זקוקה לשני ארגומנטים -- המחרוזת שתוחלף וזו שתחליף
597 אותה. סיימו הקשה של כל אחת מהן ע"י <Return>.
599 >> הביאו את הסמן שתי שורות מתחת לשורה זו.
600    עתה הקישו M-x repl s<Return>changed<Return>altered<Return>‎.
602    שימו לב שהמילה "changed" בשורה זו שתנתה: זה עתה החלפתם את
603    המילה c-h-a-n-g-e-d במילה "altered" בכל מקום בו היא נמצאת אחרי
604    הסמן.
607 * שמירה אוטומטית
608 ----------------
610 שינויים שערכתם בקובץ אבל טרם שמרתם עלולים ללכת לאיבוד אם המחשב שלכם
611 נתקע. על־מנת להגן עליכם מפני סכנה זו, Emacs שומר לעתים מזומנות כל קובץ
612 שנמצא בעריכה. השמירה האוטומטית הזאת נעשית לקובץ נפרד ששמו מתחיל
613 ומסתיים בתו #. לדוגמא, אם הינכם עורכים קובץ בשם "hello.c", קובץ השמירה
614 האוטומטית שיווצר עבורו ייקרא "#hello.c#". שמירה רגילה של הקובץ על ידכם
615 מוחקת את קובץ השמירה האוטומטית.
617 אם המחשב אכן נתקע, תוכלו לנציל את השינויים שלא הספקתם לשמור. לשם כך,
618 יש לפתוח את הקובץ כרגיל (את הקובץ בשמו המקורי, לא את קובץ השמירה
619 האוטומטית), ואחר־כך להקיש M-x recover-file <Return>‎. כש־Emacs יבקש
620 אישור, הקישו yes<Return>‎ כדי ש־Emacs ישחזר את הקובץ כפי שנשמר
621 אוטומטית.
624 * תצוגת הד
625 ----------
627 אם Emacs מגלה שאתם מקישים פקודה לאט, הוא מציג את שהקשתם בתחתית התצוגה,
628 באזור שנקרא "אזור תצוגת הד". אזור זה משתמש בשורה התחתונה של התצוגה.
631 * שורת סטטוס
632 ------------
634 השורה שמעל אזור תצוגת הד נקראת "שורת הסטטוס" (mode line). שורה זו
635 מציגה משהו כמו:
637      U:**-  TUTORIAL.he    63% L651    (Fundamental)
639 שורה זו מציגה מידע חשוב לגבי מצבו של Emacs ולגבי הטקסט שנמצא בעריכה.
641 אתם כבר יודעים מהי משמעותו של שם הקובץ -- זהו הקובץ שפתחתם. NN%‎ מציין
642 את מיקומכם הנוכחי בתוך הטקסט, לאמור כי NN אחוזים מתכולת החוצץ קודמים
643 לטקסט המוצג כרגע בחלון. אם המוצג בחלון כולל את תחילת הטקסט, תראו שם
644 "Top" במקום "0% ". אם המוצג בחלון כולל את סוף הטקסט, תראו שם "Bot"
645 ‏(bottom). אם הטקסט כל־כך קצר שכולו מוצג בחלון, שורת הסטטוס תציג "All".
647 האות L והמספר שאחריה מציינים את המיקום הנוכחי בדרך אחרת: הם מראים את
648 מספר השורה שבה נמצא הסמן.
650 הכוכביות ליד הקצה השמאלי משמעותן כי שיניתם את הטקסט. מיד אחרי פתיחת
651 הקובץ או אחרי שמירתו החלק הזה של שורת הסטטוס אינו מציג כוכביות, אלא רק
652 מקפים.
654 החלק שבתוך הסוגריים אומר לכם מהo אופני העריכה (editing modes) הפעילים
655 כעת. ברירת המחדל היא Fundamental, האופן הבסיס, שבו אתם משתמשים כעת.
656 זוהי דוגמא של "אופן עריכה ראשי" (major mode).
658 ל־Emacs אופני עריכה ראשיים רבים ומגוונים. חלק מהם נועדו לעריכה של שפת
659 תכנות מסוימת ו/או סוג מסוים של טקסט, כגון Lisp mode, Text mode וכד'.
660 בכל רגע נתון רק אופן עיקרי אחד יכול להיות פעיל ושמו תמיד מצויין בשורת
661 הסטטוס באותו מקום בו כרגע אתם רואים "Fundamental".
663 כל אופן עיקרי גורם לכמה פקודות לפעול בצורה מיוחדת. למשל, ישנן פקודות
664 ליצירת הערות בתוך תוכנית, והיות וכל שפת תכנות מגדירה את הפורמט של
665 הערות בצורה אחרת, כל אופן עיקרי חייב להכניס הערות בצורה שמתאימה לשפה.
666 כל אופן עיקרי הינו למעשה שם הפקודה שבעזרתה אפשר להפעיל את אותו האופן.
667 למשל הפקודה להפעיל את האופן Fundamental הינה M-x fundamental-mode.
669 אם בכוונתכם לערוך טקסט בשפה אנושית כלשהי, כמו הקובץ הזה, כדאי לכם
670 להשתמש ב־Text mode.
672 >> הקישו M-x text-mode <Return>‎.
674 אל דאגה: אף אחת מפקודות Emacs שלמדתם עד כה משנה את התנהגותה באופן
675 מהותי. עם זאת, שימו לב ש־M-f ו־M-b מתייחסים עכשיו ל־'גרש' כחלק מהמילה.
676 לפני־כן, ב־Fundamental mode, ‏M-f ו־M-b התנהגו עם הגרש כמפריד בין
677 מילים.
679 אופנים ראשיים בדרך־כלל משנים קלות את התנהגות הפקודות: רוב הפקודות
680 עדיין "עושות אותה עבודה" בכל האופנים הראשיים, אבל עושות אותה קצת אחרת.
682 לצפיה בתיעוד של האופן הראשי הנוכחי יש להקיש C-h m.
684 >> הקישו C-l C-l כדי להביא שורה זו לראשית התצוגה.
685 >> עתה הקישו C-h m כדי לראות במה Text mode שונה מה־Fundamental mode.
686 >> לבסוף, הקישו C-x 1 כדי לסלק את התיעוד מהתצוגה.
688 אופנים ראשיים נקראים כך משום שקיימים גם אופני־משנה (minor modes).
689 אופני משנה אינם מהווים חלופה לאופנים הראשיים, הם רק משנים אותם במקצת.
690 כל אופן־משנה ניתן להפעלה או ביטול ללא תלות בכל שאר אופני המשנה וללא
691 תלות באופן הראשי הנוכחי. לכן תוכלו להפעיל אופן־משנה אחד או יותר, או אף
692 אופן־משנה.
694 אחד מאופני־המשנה השימושיים ביותר, במיוחד לשם עריכת טקס בשפת־אנוש, הוא
695 Auto Fill mode. כאשר אופן זה מופעל, Emacs אוטומטית פותח שורה חדשה
696 בסיום מילה אם הטקסט שהקשתם ארוך מדי בשביל שורה אחת.
698 להפעלת Auto Fill mode יש להקיש M-x auto-fill-mode <Return>‎. כאשר אופן
699 זה מופעל, ניתן לבטלו ע"י M-x auto-fill-mode <Return>‎. זאת אומרת, פקודה
700 זו מפעילה את האופן כשאינו פעיל ומבטלת אותו כשהוא פעיל. לפעולה זו
701 קוראים "מיתוג" -- הפקודה "ממתגת" את האופן.
703 >> הקישו עתה M-x auto-fill-mode <Return>‎. אחר־כך הקישו "שדגכ " (עם
704    הרווח בסוף) שוב ושוב עד שתיפתח שורה חדשה. הרווחים חשובים משום
705    ש־Auto Fill mode שובר שורות אך ורק ברווח שבין המלים.
707 השוליים (margin) ש־Emacs שומר בדרך־כלל מתחילים אחרי 70 תווים, אבל ניתן
708 לשנות הגדרה זו בעזרת הפקודה C-x f. פקודה זו מקבלת את ההגדרה החדשה של
709 השוליים כארגומנט נומרי.
711 >> הקישו C-x f עם ארגומנט של 20. (C-u 2 0 C-x f). אחר־כך הקישו טקסט
712    כלשהו ושימו לב ש־Emacs פותח שורות חדשות אחרי 20 תווים לכל היותר.
713    לבסוף, החזירו את הגדרת השוליים ל־70 ע"י שימוש חוזר ב־C-x f.
715 אם ערכתם שינויים באמצע פסקה, Auto Fill mode לא ימלא שורות מחדש באופן
716 אוטומטי.
717 כדי למלא מחדש את כל הפסקה הקישו M-q ‏(META-q) כשהסמן נמצא בתוך
718 הפסקה.
720 >> הניעו את הסמן לתוך הפסקה הקודמת והקישו M-q.
723 * חיפוש
724 -------
726 ‏Emacs יכול לחפש מחרוזות (רצף של תווים) קדימה או אחורה בתוך הטקסט.
727 חיפוש של מחרוזת הוא סוג של פקודה להנעת הסמן: הוא ממקם את הסמן היכן
728 שנמצאה המחרוזת הבאה.
730 החיפוש של Emacs הינו "מצטבר" ("incremental"). פירוש הדבר הוא שהחיפוש
731 מתבצע במקביל להקשתכם את המחרוזת אותה ברצונכם למצוא.
733 הפקודה להתחיל בחיפוש היא C-s לחיפוש קדימה ו־C-r לחיפוש אחורה. חכו! אל
734 תפעילו אותן עדיין.
736 כשתקישו C-s, תראו שבאזור תצוגת ההד יופיע הטקסט "I-search". זה אומר
737 ש־Emacs נמצא במצב "חיפוש מצטבר" ("incremental search") והוא ממתין
738 להקשתכם את המחרוזת אותה ברצונכם למצוא. הקשה על <Return> מסיימת את
739 החיפוש.
741 >> הקישו עתה C-s כדי להתחיל בחיפוש. לאט־לאט, אות־אות, הקישו את המילה
742    "סמן", עם הפסקה אחרי כל אות, ושימו לב להתנהגות הסמן.
743    זה עתה מצאתם את המילה "סמן" פעם אחת.
744 >> הקישו C-s שוב, כדי למצוא את "סמן" במקומות נוספים בטקסט.
745 >> הקישו <DEL> שלוש פעמים ושימו לב לתנועת הסמן בכל הקשה.
746 >> הקישו <Return> לסיום החיפוש.
748 האם שמתם לב למה שקרה? במהלך "חיפוש מצטבר" Emacs מנסה למצוא את המקום
749 הבא בו מופיעה המחרוזת שהקשתם. כדי למצוא את המחרוזת במקום הבא, פשוט
750 הקישו C-s פעם נוספת. אם המחרוזת אינה נמצאת בהמשך הטקסט, Emacs מצפצף
751 ומודיע שהחיפוש נכנס למצב של "כשלון" ("failing"). הקשה על C-g גם היא
752 מסיימת את החיפוש.
754 אם במהלך החיפוש תקישו על <DEL>, החיפוש "נסוג" למצב קודם. אם הקשתם
755 <DEL> מיד אחרי C-s, הקשת <DEL> מחזירה את הסמן למקום הקודם בו נמצאה
756 המחרוזת. אם אין מקומות קודמים בהם מופיעה המחרוזת, הקשת <DEL> מוחקת את
757 התו האחרון של המחרוזת המבוקשת. למשל, נניח שהקשתם "ס" על־מנת למצוא את
758 המקום הבא בו מופיעה האות "ס". אם עכשיו תקישו "מ", הסמן יזוז למקום בו
759 נמצא "סמ". עתה הקישו <DEL>. ה־"מ" נמחק מהמחרוזת והסמן חוזר למקום בו
760 הוא מצא את "ס" לראשונה.
762 אם במהלך החיפוש תפעילו פקודה כלשהי ע"י הקשה על מקש תוך לחיצה על
763 CONTROL או META, החיפוש יסתיים. (כמה תווים יוצאים מכלל זה -- אלו תווים
764 מיוחדים בעת חיפוש, כדוגמת C-s ו־C-r.)
766 הקשה על C-s מתחילה חיפוש שמנסה למצוא את המחרוזת _אחרי_ הסמן. אם
767 ברצונכם למצוא משהו בטקסט הקודם למקום הנוכחי, הקישו C-r במקום C-s. כל
768 מה שאמרנו לגבי C-s תקף גם לגבי C-r, אלא שכיוון החיפוש מתהפך.
771 * חלונות מרובים
772 ---------------
774 אחת התכונות הנוחות של Emacs היא כי ניתן להציג יותר מחלון אחד על המסך
775 בו־זמנית. (הערה: Emacs משתמש במונח "frame" -- "תבנית" -- בשביל מה
776 שתוכניות אחרות מכנות "חלון". תבניות מתוארות בפסקה הבאה. תוכלו למצוא את
777 רשימת המונחים של Emacs בפרק "Glossary" של מדריך משתמש.)
779 >> הביאו סמן לשורה זו והקישו C-l C-l ‏(CONTROL-L ולא CONTROL-1).
781 >> עתה הקישו C-x 2 וכתוצאה מכך החלון יתחלק לשניים. כל אחד משני החלונות
782    מציג את השיעור הזה. הסמן נשאר בחלון העליון.
784 >> הקישו C-M-v כדי לגלול את החלון התחתון.
785    (אם במקלדת שלכם אין מקש META אמיתי, הקישו ‎<ESC> C-v כתחליף.)
787 >> הקישו C-x o ‏("o" הוא רמז ל־"other", "אחר") על־מנת להעביר את הסמן
788    לחלון התחתון.
789 >> הקישו C-v ו־M-v בחלון התחתון כדי לגלול אותו.
790    המשיכו לקרוא הוראות אלו בחלון העליון.
792 >> הקישו C-x o שוב לחזור לחלון העליון.
793    הסמן בחלון העליון יישאר במקום בו הוא היה לפני־כן.
795 תוכלו להמשיך להשתמש ב־C-x o כדי לדלג בין החלונות. "החלון הנבחר", אותו
796 חלון בו הנכם עורכים טקסט, מזוהה ע"י סמן בולט שמהבהב בזמן שאינכם
797 מקלידים. לכל החלונות האחרים מיקום סמן משלהם; אם הפעלתם את Emacs על צג
798 גרפי, מיקום הסמן בחלונות האחרים מוצג כתיבה ריקה שאינה מהבהבת.
800 הפקודה C-M-v נוחה מאד כאשר הינכם עורכים טקסט בחלון אחד ומשתמשים בחלון
801 אחר לייחוס. תוכלו להתקדם בחלון השני בעזרת C-M-v מבלי לעזוב את החלון
802 הנבחר.
804 ‏C-M-v היא דוגמא אחת של פקודת CONTROL-META. אם במקלדת שלכם קיים מקש
805 META (או Alt) אמיתי, תוכלו להקיש את הפקודה ע"י לחיצה והחזקה של מקשי
806 CONTROL ו־META גם יחד ואז להקיש v. הסדר שבו תלחצו על CONTROL ו־META
807 אינו משנה כי שני המקשים הללו פועלים ע"י שינוי התו המוקש יחד איתם.
809 אם אין במקלדת מקש META אמיתי ואתם משתמשים ב־<ESC> כתחליף, הסדר כן
810 משנה: חייבים להקיש <ESC> ורק לאחר מכן CONTROL-v, וזאת משום
811 ש־CONTROL-<ESC> v לא יעבוד. <ESC> הוא תו בזכות עצמו, שלא כמו CONTROL
812 או META.
814 >> הקישו C-x 1 (בחלון העליון) כדי לסלק את החלון התחתון.
816 (אילו הקשתם C-x 1 בחלון התחתון, הייתם מסלקים את החלון העליון. תוכלו
817 לחשוב על פקודה זו כ־"השאר רק חלון אחד -- החלון בו אני נמצא עתה".)
819 אין חובה להציג את אותו החוצץ בשני החלונות. תוכלו להשתמש ב־C-x C-f
820 לפתיחת קובץ באחד החלונות -- דבר זה אינו משפיע על החלון השני. אפשר גם
821 לפתוח קבצים שונים בכל אחד משני החלונות באופן בלתי־תלוי.
823 הנה עוד שיטה להשתמש בשני חלונות להצגה של שני דברים שונים:
825 >> הקישו C-x 4 C-f ואחר־כך הקישו שם של אחד הקבצים שלכם.
826    סיימו עם <Return>. שימו לב שהקובץ המבוקש מוצג בחלון התחתון. הסמן
827    מדלג לשם אף הוא.
829 >> הקישו C-x o לעבור לחלון העליון ואחר־כך הקישו C-x 1 כדי לסלק את
830    החלון התחתון.
833 * תבניות מרובות
834 ---------------
836 ‏Emacs מסוגל לפתוח מספר "תבניות" ("frames"). תבנית כוללת קבוצת חלונות,
837 תפריט, פסי גלילה, אזור תצוגת הד וכו'. על צג גרפי מה שאנו קוראים
838 "תבנית" נקרא בדרך־כלל "חלון". ניתן להציג תבניות אחדות על אותו צג גרפי
839 בו־זמנית על צג טקסטואלי אפשר להציג רק תבנית אחת בכל עת.
841 >> הקישו M-x make-frame <Return>‎.
842    כתוצאה, תבנית חדשה תופיע על המסך.
844 כל מה שעשיתם בתבנית המקורית ניתן לעשות גם בתבנית החדשה. התבנית הראשונה
845 אין בה שום דבר מיוחד.
847 >> הקישו M-x delete-frame <Return>‎.
848    התבנית שבה הקשתם את הפקודה תיסגר ותיעלם מהמסך.
850 כמו־כן, ניתן לסגור תבנית בדרך הרגילה הנתמכת ע"י התצוגה הגרפית של
851 המערכת שלכם (בדרך־כלל, ע"י הקלקה על הכפתור המסומן ב־"X" בפינה עליונה
852 של התבנית.) שום מידע אינו הולך לעיבוד כאשר סוגרים תבנית (או חלון).
853 המידע הזה פשוט יורד מהתצוגה, אבל ניתן לאחזרו מאוחר יותר.
856 * רמות עריכה רקורסיביות
857 -----------------------
859 יתכן ותיקלעו למצב שקרוי "רמת עריכה רקורסיבית". Emacs מציין זאת ע"י
860 סוגריים מרובעים בשורת הסטטוס מסביב לשם האופן הראשי. למשל, יוצג שם
861 [(Fundamental)] במקום (Fundamental).
863 כדי להחלץ מרמת עריכה רקורסיבית יש להקיש <ESC> <ESC> <ESC>. זוהי פקודה
864 כללית של "הימלטות". ניתן להשתמש בה גם כדי לסלק חלונות מיותרים וליציאה
865 מתוך מיני־חוצץ.
867 >> הקישו M-x כדי להיכנס למיני־חוצץ; אחר־כך הקישו <ESC> <ESC> <ESC> כדי
868    להיחלץ משם.
870 הקשה על C-g לא תחלץ אתכם מרמות עריכה רקורסיביות. זאת, משום ש־C-g מבטל
871 פקודות וארגומנטים _במסגרת_ הרמה הרקורסיבית, מבלי לצאת ממנה.
874 * לקבלת עזרה נוספת
875 ------------------
877 בשיעור הראשון הזה השתדלנו לתת בידיכם מידע שאך יספיק להתחלת השימוש שלכם
878 ב־Emacs. ‏Emacs מכיל כל־כך הרבה שאין שום אפשרות לתאר ולהסביר כאן את
879 הכל. אולם, סביר שתרצו ללמוד יותר על Emacs שכן יש בו עוד הרבה תכונות
880 שימושיות. Emacs כולל פקודות לשם קריאת תיעוד על הפקודות של Emacs.
881 הפעלת פקודות "עזרה" אלו תמיד מתחילה במקש CONTROL-h שעל־כן נקרא "מקש
882 עזרה" ("help").
884 להפעלת פקודות עזרה יש להקיש את C-h ואחר־כך עוד תו שמבקש עזרה מסוג
885 מסויים. אם אתם _באמת_ אבודים, הקישו C-h ?‎ ו־Emacs יציג את סוגי העזרה
886 שהוא מעמיד לרשותכם. אם הקשתם C-h ובסופו של דבר החלטתם שאין צורך בשום
887 עזרה, פשוט הקישו C-g לבטל את הפקודה.
889 (אם הקשת C-h אינה מציגה בתחתית התצוגה הודעה בדבר עזרה, נסו להקיש F1 או
890 M-x help <Return>‎ כתחליף.)
892 סוג העזרה הבסיס ביותר הוא C-h c. הקישו C-h, אחריו את האות c ואז הקישו
893 סדרת מקשים שמפעילה פקודה כלשהי. Emacs יציג תיאור מאד קצר של הפקודה
894 ההיא.
896 >> הקישו C-h c C-p.
898 התוצאה שתוצג צריכה להיות משהו כמו זה:
900                 C-p runs the command previous-line
902 ההודעה הזו מראה את "שם הפונקציה". היות ושמות הפונקציות נבחרים כדי
903 לציין מה הן עושות, השמות עשויים לשמש כתיעוד מקוצר -- מספיק כדי להזכיר
904 לכם את הפקודות שלמדתם בעבר.
906 ניתן לציין אחרי C-h c גם פקודות שמופעלות ע"י סדרת מקשים באורך גדול
907 מאחד, כגון C-x C-s או (אם אין מקש META או EDIT או ALT) ‏‎<ESC> v.
909 לקבלת מידע מפורט יותר על פקודה, השתמשו בפקודה C-h k במקום C-h c.
911 >> הקישו C-h k C-p.
913 כתוצאה, יוצגו השם והתיעוד של הפונקציה בחלון Emacs נפרד. כשתסיימו לקרוא
914 את התיעוד, הקישו C-x 1 כדי לסלק את חלון העזרה. לא חייבים לעשות זאת
915 מיד. אפשר לבצע קצת עריכה תוך שימוש בתיעוד המוצג ורק אחר־כך להקיש C-x 1.
917 הנה עוד כמה פקודות עזרה שימושיות:
919     ‏C-h f      תן הסבר על פונקציה. יש להקיש את שם הפונקציה.
921 >> נסו להקיש C-h f previous-line <Return>‎.
922    כתוצאה, יוצג תיעוד מלא של הפונקציה המממשת את הפקודה C-p כפי שהוא
923    ידוע ל־Emacs.
925 פקודה דומה C-h v מציגה תיעוד של משתנה, כולל אלו שאת הערכים שלהם ניתן
926 לשנות כדי לקסטם את Emacs. יש להקיש את שם המשתנה כאשר Emacs יבקש זאת.
928     ‏C-h a      פקודות בנוגע לנושא מסויים. הקישו מילת מפתח ו־Emacs
929                 יציג את רשימת הפקודות ששמותיהן מכילות את מילת המפתח.
930                 כל הפקודות הללו ניתנות להפעלה ע"י META-x. עבור חלק
931                 מהפקודות תוצג גם סדרת מקשים שמפעילה את הפקודה.
933 >> הקישו C-h a file <Return>‎.
935 כתוצאה מזה, יוצג חלון עם רשימה של כל הפקודות ששמותיהן מכילות את המילה
936 "file". ביניהן תראו גם מקשי קיצור כגון C-x C-f לצד שמות הפקודות כגון
937 find-file.
939 >> הקישו C-M-v כדי לגלול את חלון העזרה. עשו זאת פעמים אחדות.
941 >> עתה הקישו C-x 1 כדי לסגור את חלון העזרה.
943     ‏C-h i      הצג מדריכים למשתמש הכלולים בחבילת Emacs. (פקודה זו
944                 ידועה גם בשם "Info".) פקודה זאת פותחת חוצץ מיוחד הקרוי
945                 "*info*" שבו תוכלו לקרוא מדריכים המותקנים במערכת שלכם.
946                 הקישו m emacs <Return>‎ כדי לקרוא במדריך למשתמשי Emacs.
947                 אם אינכם מכירים את Info, הקישו ? ו־Emacs יקח אתכם
948                 לשיעור על התכונות של Info mode. כשתסיימו עם השיעור
949                 הזה, אנו בהחלט ממליצים להשתמש במדריך Emacs בתור התיעוד
950                 העיקרי שלכם.
953 * עוד תכונות
954 ------------
956 תוכלו ללמוד עוד על־אודות Emacs ע"י קריאה במדריך למשתמש שלו, אם כספר
957 מודפס או בגירסה מקוונת בתוך Emacs עצמו. (תוכלו להגיע אל המדריך דרך
958 תפריט Help או ע"י הקשה על C-h r.) אולם שתי תכונות שבוודאי ימצאו חן
959 בעיניכם הן השלמה אשר חוסכת הקשות, ו־dired שמאפשרת טיפול נוח בקבצים.
961 השלמה היא דרך להימנע מהקשות מיותרות. למשל, אם ברצונכם לעבור לחוצץ
962 *Messages*, תוכלו להקיש C-x b *M<Tab>‎ ו־Emacs ישלים את שאר האותיות של
963 שם החוצץ ככל שניתן להסיק ממה שהקשתם. השלמה פועלת גם על שמות הפקודות
964 ושמות קבצים. תכונת ההשלמה מתוארת במלואה במדריך למשתמש Emacs בצומת
965 (node) בשם "Completion".
967 ‏Dired מאפשר להציג רשימת קבצים בתיקיה (וכאפציה גם בתת־תיקיות שלה), לנוע
968 בתוך הרשימה הזו, לפתוח קבצים, לשנות את שמותיהם, למחוק אותם ולבצע עליהם
969 עוד פעולות רבות. Dired מתואר במלואו במדריך למשתמש בצומת בשם "Dired".
971 בנוסף, מדריך למשתמש מתאר עוד הרבה מאד תכונות של Emacs.
974 * לסיום
975 -------
977 כדי לצאת מ־Emacs יש להקיש C-x C-c.
979 שיעור זה נכתב כדי להיות מובן לכל המשתמשים החדשים, לכן אם מצאתם שמשהו
980 כאן אינו ברור, אל תשבו ותאשימו את עצמכם -- תתלוננו!
983 * זכויות שימוש
984 --------------
986 שיעור זה הינו צאצא של שורה ארוכה של שיעורים בשימוש ב־Emacs, החל מהגרסה
987 הראשונה שנכתבה ע"י Stuart Cracraft עבור גירסת ה־Emacs המקורית.
989 גירסה זו של השיעור הינה חלק מחבילת GNU Emacs. היא מוגנת בזכויות יוצרים
990 וניתנת להעתקה והפצת עותקים בתנאים מסויימים כדלקמן:
992                        Copyright (C) 2010-2012 Free Software Foundation, Inc.
994 ‏GNU Emacs הינו תכנה חפשית; זכותכם להפיצו ו\או לשנותו בכפוף לתנאי
995 הרשיון GNU General Public License, כפי שהוא יוצא לאור ע"י Free
996 Software Foundation, אם בגרסא 3 של הרשיון, ואם (כאופציה השמורה לכם)
997 בכל גרסא מאוחרת יותר.
999 ‏GNU Emacs מופץ מתוך תקווה שהוא יביא תועלת, אולם ללא כל כתב אחריות;
1000 אפילו לא אחריות־במשתמע של סחירות או התאמה לאיזו תכלית מסוימת. לפרטים,
1001 אנא עיינו ב־GNU General Public License.
1003 ‏GNU Emacs אמור להיות מלווה בעותק של GNU General Public License; אם לא
1004 קיבלתם אותו, תוכלו למצוא אותו ב־‪<http://www.gnu.org/licenses/>‬.
1006 הנכם מוזמנים לקרוא את הקובץ COPYING ואז אכן לחלק עותקים של GNU Emacs
1007 לחבריכם. עזרו לנו לחסל את "הבעלות" על תוכנה שאינה אלא חבלה בתוכנה,
1008 וזאת ע"י שימוש, כתיבה ושיתוף של תוכנה חופשית!
1012 --- end of TUTORIAL.he ---
1014 ;;; Local Variables:
1015 ;;;   coding: utf-8
1016 ;;;   bidi-display-reordering: t
1017 ;;;   sentence-end-double-space: nil
1018 ;;;   bidi-paragraph-direction: nil
1019 ;;; End: