Merge branch 'master' of git.sv.gnu.org:/srv/git/emacs
[emacs.git] / etc / tutorials / TUTORIAL.he
blob499971646303b16ac4940a60d0df277091504273
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 כדי להפסיק שיעור זה, יש להקיש C-x k, ואז <Return> בתשובה לשאלה.
16 המחרוזת ">>" בקצה הימני מסמנת הוראות עבורכם כדי לנסות להשתמש בפקודה כלשהי.
17 לדוגמה:
18 <<שורות ריקות תתווספנה סביב השורה הבאה ע״י help-with-tutorial>>
19 [אמצע העמוד הושאר ריק למטרות לימודיות. הטקסט ממשיך להלן]
20 >>  הקישו עתה C-v (הצג העמוד הבא) על־מנת להתקדם לעמוד הבא. (קדימה, נסו
21     זאת ע״י לחיצה והחזקה של מקש CONTROL והקשה על v.)
22     מעתה והלאה, עליכם לעשות זאת בכל פעם שתסיימו לקרוא את המוצג על המסך.
24 שימו לב לחפיפה של שתי שורות כאשר אתם עוברים ממסך למשך, מה שמבטיח רציפות
25 מסוימת בעת קריאת הטקסט.
27 דבר ראשון שעליכם ללמוד הוא כיצד לנוע ממקום אחד למשנהו בתוך הטקסט. אתם
28 כבר יודעים כיצד להתקדם לעמוד הבא, עם C-v. לחזרה לעמוד הקודם הקישו M-v
29 (החזיקו מקש META והקישו v או הקישו ‪<ESC>v‬ אם אין במקלדת מקש META
30 או EDIT או ALT).
32 >>  נסו עתה כמה פעמים להקיש M-v ואחר־כך C-v.
35 * סיכום עד כאן
36 --------------
38 לשם תנועה בעמודים שלמים וצפייה בהם, השתמשו בפקודות הבאות:
40         ‏C-v    התקדם לעמוד הבא
41         ‏M-v    חזור לעמוד הקודם
42         ‏C-l    נקה תצוגה והצג מחדש את הטקסט,
43                 כך שהטקסט ליד הסמן יימצא במרכז התצוגה
44                 (שימו לב: CONTROL-L ולא CONTROL-1.)
46 >> מצאו את הסמן על־גבי התצוגה וזכרו את הטקסט לידו. לאחר מכן הקישו C-l.
47    מצאו את הסמן שנית ושימו לב שהוא עדיין ליד אותו הטקסט, אבל עכשיו
48    הוא במרכז התצוגה.
49    אם תקישו C-l שוב, קטע הטקסט הזה יזוז לקצה העליון של התצוגה. הקישו
50    C-l שוב והוא יזוז לתחתית התצוגה.
52 גם מקשי PageUp ו־PageDn, אם הם קיימים במקלדת שלכם, יכולים לשמש לתנועה
53 בעמודים שלמים, אולם השימוש ב־C-v ו־M-v יעיל יותר.
55 * תנועת סמן בסיסית
56 ------------------
58 תנועה בעמודים שלמים הינה שימושית, אבל כיצד ניתן להגיע למקום ספציפי
59 בתוך הטקסט שעל־גבי התצוגה?
61 ניתן לעשות זאת בכמה דרכים. אפשר למשל להשתמש במקשי החצים, אולם יהיה
62 זה יעיל יותר אם תחזיקו את הידיים מעל החלק הסטנדרטי של המקלדת ותשתמשו
63 בפקודות C-p, C-b, C-f ו־C-n. פקודות אלו שוות ערך לארבעת מקשי החצים,
64 כדלקמן:
66                         שורה קודמת, C-p
67                                  :
68                                  :
69            קדימה, C-f ... מיקום סמן נוכחי ... אחורה, C-b
70                                  :
71                                  :
72                         השורה הבאה, C-n
74 >> השתמשו במקשי C-n ו־C-p על־מנת להגיע לשורה האמצעית של הדיאגרמה.
75    הקישו C-l כדי למרכז את הדיאגרמה על־גבי התצוגה.
77 קל יותר לזכור את המקשים הללו באמצעות המלים שהם מייצגים:
78 P מ־previous (קודם), N מ־Next (הבא), B מ־Backward (אחורה)
79 ו־F מ־Forward (קדימה). מקשי התנועה הבסיסיים הללו ישמשו אתכם כל הזמן.
81 >> הקישו C-n כמה פעמים כדי למקם את הסמן בשורה זו.
83 >> הניעו את הסמן בתוך השורה עם C-f ואחר־כך למעלה עם C-p.
84    שימו לב מה עושה C-p כאשר הסמן נמצא באמצע השורה.
86 כל שורה של טקטס מסתיימת בתו מיוחד הנקרא Newline. תו זה מפריד בין
87 השורה לזו שאחריה. (בדרך כלל, השורה האחרונה בקובץ תסתיים אף היא
88 ב־Newline, אך Emacs אינו זקוק לכך.)
90 >> נסו C-b בתחילת שורה. הוא יגרום לסמן לנוע לסוף השורה הקודמת. זאת,
91    משום שהוא נע אחורה וחולף על־פני תו ה־Newline.
93 גם C-f יכול לחלוף על־פני Newline, בדיוק כמו C-b.
95 >> הקישו C-b עוד כמה פעמים כדי לקבל הרגשה היכן נמצא הסמן.
96    עתה הקישו C-f מספר פעמים הדרוש לשוב לסוף השורה. ואז הקישו
97    C-f עוד פעם אחת כדי לנוע לתחילת השורה הבאה.
99 כשהסמן יוצא מגבולות הטקסט המוצג, חלקי הטקסט מעבר לחלק המוצג נכנסים
100 לתצוגה. לזה קוראים "גלילה". גלילה מאפשרת ל־Emacs להניע את הסמן למקום
101 כלשהו בטקסט מבלי שהסמן ייעלם מהתצוגה.
103 >> נסו להניע את הסמן אל מחוץ לתצוגה ע״י הקשת C-n ושימו לב למה שקורה.
105 אם תנועה תו־תו איטית מדי, תוכלו לנוע מילים שלמות. M-f ‏(META-f) מזיז
106 את הסמן מילה אחת קדימה ואילו M-b זז מילה אחורה.
108 >> הקישו M-f ו־M-b מספר פעמים.
110 אם הסמן נמצא באמצע מילה, M-f זז לסוף המילה. אם הסמן נמצא בין שתי מלים,
111 M-f עובר את המילה הבאה ונעצר בסופה. M-b פועל באופן דומה בכיוון הפוך.
113 >> הקישו עתה M-f ו־M-b פעמים אחדות, וגם C-f ו־C-b פה ושם כדי שתוכלו
114    להתרשם מהתוצאה של M-f ו־M-b במקומות שונים בתוך ובין המלים.
116 שימו לב להקבלה שבין C-f ו־C-b מצד אחד ו־M-f ו־M-b מהצד השני. לעתים
117 קרובות מאד מקשים עם META משמשים לפעולות הקשורות ליחידות של שפה (מלים,
118 משפטים, פסקאות) ואילו מקשים עם CONTROL פועלים על יחידות בסיסיות שאינן
119 תלויות בסוג הטקסט שהינכך עורכים (תוים, שורות, וכד').
121 ההקבלה הזאת קיימת גם לגבי שורות ומשפטים: C-a ו־C-e נעים לתחילת השורה
122 וסופה, בהתאמה, ואילו M-a ו־M-e נעים לתחילת המשפט וסופו.
124 >> נסו עתה שתי הקשות על C-a ואחר־כך שתי הקשות על C-e.
125    נסו שני M-a ואחר־כך שני M-e.
127 שימו לב שחזרה על C-a אינה עושה דבר, ואילו כל הקשה חוזרת על M-a מניעה
128 את הסמן במשפט נוסף. אמנם אין כאן אנלוגיה מושלמת, אבל התוצאה נראית
129 טבעית בשני המקרים.
131 מקום הסמן בתוך הטקסט נקרא "point" ("נקודה"). במלים אחרות, הסמן מראה
132 את מיקומו של "point" בתוך הטקסט.
134 הנה סיכום של פקודות פשוטות להנעת הסמן, כולל פקודות שנעות במלים
135 ומשפטים שלמים:
137         ‏C-f    נוע תו אחד קדימה
138         ‏C-b    נוע תו אחד אחורה
140         ‏M-f    נוע מילה קדימה
141         ‏M-b    נוע מילה אחורה
143         ‏C-n    נוע לשורה הבאה
144         ‏C-p    נוע לשורה הקודמת
146         ‏C-a    נוע לתחילת השורה
147         ‏C-e    נוע לסוף השורה
149         ‏M-a    נוע קדימה לסוף המשפט
150         ‏M-e    נוע אחורה לתחילת המשפט
152 >> נסו את כל הפקודות הללו מספר פעמים, לשם תרגול.
153    אלו הן הפקודות הנפוצות ביותר.
155 שתי פקודות תנועה חשובות אחרת הן ‪M-<‬ ‏(META פחות), אשר נעה לתחילת
156 הטקסט, ו־‪M->‬ ‏(META יותר), אשר נעה לסוף הטקסט.
158 ברוב המקלדות המקש ">" נמצא מעל הפסיק, לכן כדי להקישו יש צורך ללחוץ
159 ולהחזיק מקש Shift. באופן דומה יש ללחוץ על Shift כדי להקיש ‪M-<‬ כי
160 אחרת היה יוצא M-פסיק.
162 >> נסו עתה ‪M-<‬ כדי להגיע לתחילת השיעור.
163    אחר־כך הקישו C-v מספר פעמים, עד שתגיעו לכאן.
165 >> עכשיו נסו ‪M->‬ כדי להגיע לסוף השיעור.
166    לאחר מכן הקישו M-v כמה פעמים כדי לחזור לכאן.
168 ניתן להזיז את הסמן גם בעזרת מקשי החצים, אם הם קיימים במקלדת שלכם.
169 אבל אנחנו ממליצים ללמוד להשתמש ב־C-b, C-f, C-n ו־C-p משלוש סיבות.
170 קודם כל, הם יעבדו עם כל מקלדת. שנית, כשתתרגלו לעבוד עם Emacs, תראו
171 כי השימוש במקשים אלו מהיר יותר מהשימוש בחצים (מכיון שאין צורך להזיז
172 את היד מהחלק העיקרי של המקלדת). ושלישית, כשהמקשים הללו יהפכו להרגל,
173 יהיה לכם קל יותר ללמוד פקודות מתקדמות יותר של תנועת הסמן.
175 רוב הפקודות של Emacs מקבלות ארגומנט נומרי; עבור רוב הפקודות הארגומנט
176 משמש כמונה של מספר החזרות על הפקודה. כדי לספק ארגומנט לפקודה, יש להקיש
177 C-u ואחר־כך ספרות, וזאת לפני שמקישים את הפקודה עצמה. עם במקלדת קיים
178 מקש META (או EDIT או ALT), יש גם אפשרות אחרת לציין ארגומנט נומרי:
179 הקישו את הספרות תוך כדי החזקת מקש META. אנו ממליצים על C-u משום שהוא
180 יעבוד עם כל מקלדת. הארגומנט הנומרי נקרא גם "ארגומנט קידומת" (prefix
181 argument) משום מקישים אותו לפני הפקודה אליה הוא מתייחס.
183 למשל, C-u 8 C-f מניע את הסמן 8 תוים קדימה.
185 >> נסו להקיש C-n או C-p עם ארגומנט נומרי, כדי להזיז את הסמן אל שורה
186    מסוימת בפקודה אחת בלבד.
188 רוב הפקודות מפרשות את הארגומנט הנומרי כמונה חזרות, אבל פקודות מסוימות
189 משתמשות בו בצורות אחרות. כמה פקודות (אבל אף אחת מבין אלו שלמדנו עד כה)
190 משתמשות בו כדגלון -- נוכחותו של הארגומנט, ללא קשר לערכו המספרי, גורמת
191 לפקודה להתנהג קצת אחרת.
193 ‏C-v ו־M-v יוצאים מהכלל הזה באופן אחר. כשפקודות אלו מקבלות ארגומנט,
194 הן גוללים את התצוגה כמספר הזה של שורות, ולא בדפים. למשל, C-u 8 C-v
195 יגלול את התצוגה ב־8 שורות.
197 >> נסו עתה להקיש C-u 8 C-v.
199 כתוצאה, התצוגה היתה צריכה לזוז ב־8 שורות. אם ברצונכם לגלול בחזרה,
200 אפשר להשיג זאת ע״י מתן ארגומנט ל־M-v.
202 אם הפעלתם את Emacs על־גבי תצוגה גרפית כגון X או MS-Windows, אתם
203 צריכים לראות פס צר וגבוה, ששמו פס גלילה (scroll bar) בצידו של החלון
204 של Emacs. ניתן לגלול את הטקסט ע״י הקלקת עכבר בתוך פס הגלילה.
206 אם העכבר שלכם מצויד בגלגל, תוכלו להשתמש גם בו לגלילת הטקסט.
208 * אם Emacs מפסיק להגיב
209 ----------------------
211 אם Emacs מפסיק להגיב לפקודות, תוכלו להפסיק אותו בבטחה ע״י הקשת C-g.
212 פקודות שביצוען מתארך אף הן ניתנות להפסקה בעזרת C-g.
214 בנוסף, תגרום הקשת C-g לביטול הארגומנט הנומרי או תחילת הפקודה שטרם
215 השלמתם להקיש והתחרטתם.
217 >> הקישו C-u 100 כדי לציין ארגומנט של 100, ולאחר מכן C-g. עתה הקישו
218    C-f. הוא צריך לנוע תו אחד בלבד, שכן ביטלתם את הארגומנט בעזרת C-g.
220 אם הקשתם <ESC> בטעות, ניתן לבטלו בעזרת C-g.
222 * פקודות מנוטרלות
223 -----------------
225 מספר פקודות ב־Emacs מנוטרלות בכוונה כדי שמשתמשים מתחילים לא יפעילו
226 אותן בדרך מקרה.
228 אם תקישו את אחת הפקודות הללו, Emacs יציג הודעה המתארת את הפקודה וישאל
229 אם לבצע את הפקודה או לבטלה.
231 אם אכן בכוונתכם לנסות את הפקודה, הקישו <SPC> (מקש הרווח) בתשובה לשאלה.
232 בדרך כלל, אם אינכם מעוניינים לבצע את הפקודה המנוטרלת, הקישו "n" בתשובה
233 לשאלה הזו.
235 * חלונות
236 --------
238 תצוגת Emacs יכולה לכלול יותר מחלון אחד, כשכל אחד מהם מציג טקסט משלו.
239 מאוחר יותר נסביר כיצד להשתמש בחלונות מרובים. כעת ברצוננו להסביר כיצד
240 להפטר מחלונות מנותרים ולחזור לעריכה בחלון יחיד. אין דבר פשוט מזה:
242         ‏C-x 1  חלון אחד בלבד (כלומר, סגור את כל החלונות האחרים).
244 כדי להפעיל פקודה זו, הקישו CONTROL-x ולאחריו את הספרה 1. הפקודה C-x 1
245 מרחיבה את החלון המציג את הסמן כך שהוא תופס את כל שטח התצוגה. הפקודה
246 מבטלת את שאר החלונות.
248 >> הניעו את הסמן לתוך שורה זו והקישו C-u 0 C-l.
249 >> עתה הקישו C-h k C-f.
250    שימו לב כיצד החלון הנוכחי מצטמצם ומופיע חלון חדש שבו מוצג
251    התיעוד של הפקודה C-f.
253 >> הקישו C-x 1 ושימו לב שהחלון עם ההסבר על C-f נעלם.
255 פקודה זו שונה מכל שאר הפקודות שלמדנו עד כה בכך שהיא מכילה שני תוים.
256 היא מתחילה עם התו CONTROL-x. פקודות רבות מאד מתחילות ב־CONTROL-x; חלק
257 גדול מהן עוסקות בחלונות, קבצים, חוצצים ונושאים דומים אחרים. פקודות אלו
258 מכילות שנים, שלושה ואפילו ארבעה תוים.
261 * הכנסה ומחיקה
262 --------------
264 אם ברצונכם להכניס טקסט, פשוט הקישו על המקשים המתאימים. תוים רגילים,
265 כגון A, א, 7, * וכד' מיד מתווספים לטקסט הקיים. הקישו <Return> (מקש
266 חזרת גרר שלעתים נהוג לקרוא לו "Enter") כדי להכניס את תו השורה החדשה
267 (Newline).
269 למחיקת התו האחרון שהקשתם הקישו <DEL>. בדרך כלל זהו מקש שמסומן
270 ב־"Backspace", והוא משמש אתכם למחיקת התו אחרון גם בתוכניות אחרות, לא
271 רק ב־Emacs.
273 יתכן שבמקלדת שלכם קיים מקש שעליו רשום <Delete>, אך זה אינו המקש שאנו
274 קוראים לו <DEL>.
276 >> הקישו עתה מספר תוים, ואחר־כך מחקו אותם ע״י הקשות אחדות
277    על <DEL>. אל תחששו לשנות את הקובץ הזה -- העותק המקורי
278    של השיעור יישאר ללא שינוי. אתם עובדים על העותק האישי שלכם.
280 כאשר שורה של טקסט נעשית ארוכה משורה אחת של תצוגה, חלק מהטקסט ממשיך
281 בשורת תצוגה נוספת, היא "שורת ההמשך". על תצוגה גרפית יופיע חץ עקלקל קטן
282 באזור השוליים -- "fringe" שמסמל כי לשורה יש שורת המשך, ואילו על תצוגה
283 טקסטואלית יופיע תו לוכסן ('/' או '\', תלוי אם הוא בצד שמאל או בצד ימין)
284 לאותה תכלית, בסוף השורה.
286 >> הקישו טקסט עד שתגיעו לקצה השורה, ואז תמשיכו להקיש עוד טקסט.
287    כתוצאה, תראו שמופיעה שורת המשך.
289 >> עתה הקישו <DEL> על־מנת למחוק טקסט עד שהשורה תיעשה קצרה מספיק
290    ותתאים לשורה בודדת על־גבי התצוגה. שורת ההמשך תיעלם.
292 ניתן למחוק את תו ה־Newline כמו כל תו אחר. מחיקת ה־Newline בין שתי
293 שורות תמזג את השורות לשורה אחת. אם השורה המשולבת תהיה ארוכה מרוחב
294 התצוגה, היא תוצג עם שורת המשך.
296 >> הניעו את הסמן לתחילת השורה והקישו <DEL>. כתוצאה, השורה תתמזג
297    אם קודמתה.
299 >> עתה הקישו <Return> כדי להחזיר את ה־Newline שמחקתם.
301 מקש <Return> הוא מיוחד בכך שהקשה עליו עשויה לגרום יותר מהכנסת תו
302 ה־Newline. בתלות בטקסט מסביב יתכן כי Emacs יכניס תווי רווח או TAB אחרי
303 תו ה־Newline, וזאת כדי ליישר את תחילת השורה החדשה עם הטקסט בשורה
304 הקודמת. התנהגות זו, שבה הקשה על מקש גורמת לתוצאות מעבר להכנסה פשוטה של
305 התו המתאים, נקראת "חשמלית" ("electric").
307 זכרו כי לרוב הפקודות ב־Emacs אפשר לציין מספר חזרות. גם תוי טקסט
308 שייכים לקבוצת פקודות זו. חזרה על תו טקסט מכניסה אותו מספר פעמים.
310 >> נסו זאת עכשיו -- הקישו ‪C-u 8 *‬ על־מנת להכניס ********.
312 ובכן, למדתם את האופן הבסיסי ביותר להדפיס משהו ב־Emacs ולתקן שגיאות.
313 אפשר למחוק גם מלים ואף שורות שלמות. להלן סיכום פקודות המחיקה:
315         ‏<DEL>          מחק תו שלפני הסמן
316         ‏C-d            מחק תו מתחת או אחרי הסמן
318         ‏‪M-<DEL>‬      גזור מילה שלפני הסמן
319         ‏M-d            גזור מילה שאחרי הסמן
321         ‏C-k            גזור טקסט מהסמן ועד סוף השורה
322         ‏M-k            גזור טקסט עד סוף המשפט הנוכחי.
324 שימו לב שהיחס בין <DEL> ו־C-d לעומת M-<DEL>‎ ו־M-d ממשיכים את ההקבלה
325 שבין C-f ו־M-f (אמנם <DEL> איננו תו בקרה, אבל בוא נזניח את הנקודה הזו
326 לעת־עתה). C-k ו־M-k דומים ל־C-e ו־M-e, אם נקביל שורות למשפטים.
328 בנוסף, קיימת שיטה אחידה שמאפשרת לגזור קטע כלשהו של טקסט. לשם כך, תגיעו
329 לקצה האחד של חלק הטקסט והקישו C-<SPC>‎. (<SPC> הוא מקש הרווח.) עתה
330 הניעו את הסמן לקצה השני של חלק הטקסט אשר ברצונכם לגזור. תוך כדי תנועת
331 הסמן Emacs צובע את הטקסט בין הסמן לבין המקום בו הקשתם C-<SPC>‎. לבסוף,
332 הקישו C-w. כתוצאה, כל הטקסט בין שני המקומות הללו ייגזר.
334 >> הניעו את הסמן אל האות ב בתחילת הפיסקה הקודמת.
335 >> הקישו C-<SPC>‎. ‏Emacs צריך להציג הודעה האומרת "Mark set" בתחתית
336    התצוגה.
337 >> הניעו את הסמן אל האות צ בשורה השניה של הפיסקה.
338 >> הקישו C-w. בכך תגזרו את חלק הטקסט שמתחיל ב־ב ומסתיים לפני ה־צ.
340 ההבדל בין "מחיקה" ("deletion") ו־"גזירה" ("killing") הוא שהטקסט
341 "הגזור" ניתן לאחזור ולהכנסה (במקום כלשהוא בטקסט), ואילו טקסט "מחוק" לא
342 ניתן להכניס מחדש בשיטה זו. (אבל ניתן לבטל את מחיקה -- ראה להלן.) אחזור
343 הטקסט הגזור נקרא "הדבקה" ("yanking"). באופן כללי, פקודות אשר עלולות
344 להעלים כמויות גדולות של טקסט תמיד גוזרות את הטקסט (כך שניתן יהיה בקלות
345 לשחזרו) בעוד הפקודות שמורידות תו בודד או שורות ריקות ותוי רווח --
346 מוחקות (כך שלא ניתן להדביק את הטקסט שנמחק). כך, <DEL> ו־C-d מוחקים
347 כאשר מפעילים אותם ללא ארגומנט, אבל גוזרים כאשר מפעילים אותם עם ארגומנט.
349 >> הניעו את הסמן לתחילת שורה שאינה ריקה. אחר־כך הקישו C-k כדי לגזור
350    את כל הטקסט של אותה שורה.
351 >> הקישו C-k פעם נוספת. שימו לב שהוא גוזר את ה־Newline שבסוף השורה.
353 שימו לב ש־C-k בודד גוזר את תכולת השורה, ו־C-k נוסף גוזר גם את השורה
354 עצמה וגורם לשאר השורות לנוע כלפי מעלה. C-k מפרש את הארגומנט הנומרי
355 באופן מיוחד: הוא גוזר כמספר הזה שורות, כולל ה־Newlines שלהן. זה שונה
356 מסתם הפעלה חוזרת: C-u 2 C-k גוזר שתי שורות כולל ה־Newlines שלהן,
357 ואילו הקשה על C-k פעמיים לא עושה כן.
359 אחזור הטקסט שגזרנו נקרא "הדבקה" ("yanking"). (תחשבו על זה כעל שליפה
360 של טקסט מתהום הנשייה אליה הוא נלקח.) ניתן להדביק את הטקסט שגזרתם
361 באותו מקום ממנו נגזר או במקום אחר כלשהו בתוך הטקסט שאתם עורכים, או
362 אפילו בקובץ אחר. ניתן להדביק את אותו הטקסט מספר פעמים ובכך ליצור
363 עותקים מרובים ממנו. תוכניות עריכה אחרות משתמשות במונחים "cutting"
364 ו־"pasting" במקום "killing" ו־"yanking" (ראה את מילון המונחים בפרק
365 ה־"Glossary" של מדריך למשתמשי Emacs).
367 הפקודה להדבקה היא C-y. היא מכניסה את הטקסט הגזור במקום הנוכחי של הסמן.
369 >> נסו זאת: הקישו C-y כדי לאחזר טקסט שגזרתם קודם לכן.
371 אם תקישו C-k מספר פעמים ברצף, כל הטקסט שגזרתם בדרך זו נשמר ביחד, כך
372 ש־C-y בודד ידביק את כולו בבת אחת.
374 >> עשו זאת עתה: הקישו C-k כמה פעמים.
376 עכשיו לאחזור הטקסט שגזרתם:
378 >> הקישו C-y. אחר־כך הניעו את הסמן כמה שורות כלפי מטה והקישו C-y שוב.
379    כפי שראיתם, כך תוכלו להעתיק חלק מהטקסט ממקום למקום.
381 מה לעשות אם יש לכם טקסט להדבקה, אבל בינתיים גזרתם טקסט אחר? C-y ידביק
382 רק את הגזירה האחרונה. אולם הטקסט שגזרתם קודם לכן אינו הלך לאיבוד. ניתן
383 לאחזרו בעזרת הפקודה M-y. אחרי שהקשתם C-y שמדביק את הטקסט שגזרתם
384 לאחרונה, הקשה על M-y מחליפה את הטקסט המודבק בטקסט שגזרתם בפעם לפני
385 האחרונה. הקשה חוזרת ונשנית על M-y מביאה טקסט שגזרתם בפעמים קודמות יותר
386 ויותר. כשתראו שהטקסט המודבק הוא מה שרציתם להדביק, תפסיקו להקיש M-y
387 ותמשיכו בעריכה כרגיל. אין צורך בשום פקודה מיוחדת לשם כך.
389 אם תקישו M-y מספיק פעמים בזו אחר זו, תגיעו חזרה לנקודת ההתחלה (טקסט
390 שגזרתם לאחרונה).
392 >> גזרו שורה, אחר־כך תניעו את הסמן אנה ואנה, ולבסוף גזרו שורה נוספת.
393    הקישו C-y כדי לאחזר את השורה השניה שגזרתם.
394    עתה הקישו M-y והשורה שאחזרתם תוחלף בשורה הראשונה שגזרתם.
395    הקישו M-y מספר פעמים נוספות ושימו לב לתוצאות. המשיכו להקיש M-y
396    עד שהשורה השניה שגזרתם תופיע שוב, ואז תמשיכו עוד מספר פעמים.
397    אם תרצו, תוכלו לנסות M-y עם ארגומנט חיובי או שלילי.
400 * ביטול פעולות
401 --------------
403 אם שיניתם את הטקסט ואז החלטתם שהשינוי היה טעות, תוכלו לבטל את השינוי
404 בעזרת פקודת הביטול, ‪C-/‬.
406 בדרך כלל,‪C-/‬ מבטל את השינויים שבוצעו ע״י פקודה אחת. הפעלה חוזרת של
407 ‪C-/‬ ברצף מבטלת שינויים של פקודות קודמות, אחת אחרי השניה.
409 שני יוצאים מהכלל הזה: פקודות שאינן משנות טקסט (למשל פקודות הנעת הסמן
410 ופקודות גלילה) אינן נספרות ותוים שמכניסים את עצמם מקובצים בקבוצות של
411 עד 20, כדי להקטין את מספר הפעמים שיש להקיש ‪C-/‬ כדי לבטל הכנסת טקסט.
413 >> גזרו שורה זו עם C-k, אחר־כך הקישו ‪C-/‬ והיא תופיע שוב.
415 ‏C-_‎ הינה דרך חלופית להפעיל את פקודת הביטול. היא פועלת בדיוק כמו ‪C-/‬.
416 במקלדות אחדות הקשה על ‪C-/‬ שולחת ל־Emacs את התו C-_‎. חלופה נוספת היא
417 C-x u, אם־כי היא פחות נוחה להקשה מספר פעמים בזו אחר זו.
419 ארגומנט נומרי ל־‪C-/‬ או ל־C-_‎ או ל־C-x u משמש כמספר החזרות על הפקודה.
421 ניתן לבטל מחיקה של טקסט בדיוק כמו שניתן לבטל גזירה. ההבדלים בין מחיקה
422 וגזירה משפיעים על יכולתכם להדביק את הטקסט הגזור עם C-y; הם אינם חשובים
423 לעניין הביטול.
426 * קבצים
427 -------
429 על־מנת שהטקסט שערכתם יישמר, יש לשים אותו בקובץ. אחרת, הוא ייעלם ברגע
430 שתצאו מ־Emacs. כדי לשים את הטקס בקובץ, יש "לפתוח" ("find") את הקובץ
431 לפני שמתחילים להקיש טקסט. (שם אחר לכך הוא "לפקוד" את הקובץ - "visit".)
433 פתיחת הקובץ משמעותה שתוכן הקובץ מוצג בתוך Emacs. מבחינות רבות הדבר
434 דומה לעריכת הקובץ עצמו. אולם, השוניים שלכם בתוך Emacs אינם הופכים חלק
435 מהקובץ עד שאתם "שומרים" את הקובץ. זאת, כדי להימנע מיצירת קובץ שאינו
436 שלם במערכת שלא כרצונכם. אפילו אם אתם שומרים את הקובץ, Emacs משאיר את
437 התוכן המקורי בשם שונה למקרה שמאוחר יותר תחליטו שהשינויים נעשו בטעות.
439 אם תביטו בחלק התחתון של התצוגה, תראו שם שורה בולטת שמתחילה במקפים וליד
440 הקצה השמאלי שלה כתוב "TUTORIAL.he". חלק זה של התצוגה בדרך כלל מציג את
441 שם הקובץ אותו אתם פוקדים. כרגע אתם פוקדים קובץ בשם "TUTORIAL.he" שהוא
442 עותק הטיוטה האישי שלכם של שיעור השימוש ב־Emacs. פתיחת קובץ כלשהו
443 ב־Emacs תציג את שמו של הקובץ במקום זה.
445 היבט אחד מיוחד של פתיחת קובץ הוא שיש לציין את שם הקובץ אשר ברצונכם
446 לפתוח. אנו אומרים שהפקודה "קוראת ארגומנט" (במקרה זה הארגומנט הוא שם
447 הקובץ). אחרי שתקישו את הפקודה
449         ‏C-x C-f    פתח קובץ
451 ‏Emacs מבקש שתקישו את שם הקובץ. שם הקובץ שתקישו מופיע בשורה התחתונה של
452 התצוגה. שורה זו נקראת "מיני־חוצץ" ("minibuffer") כשהיא משמשת לסוג זה
453 של קלט. ניתן להשתמש בכל פקודות העריכה הרגילות של Emacs כשמקישים את
454 שם הקובץ בחוצץ זה.
456 אם טרם סיימתם להקיש את שם הקובץ (או כל סוג אחר של קלט במיני־חוצץ),
457 ניתן לבטל את הפקודה בעזרת C-g.
459 >> הקישו C-x C-f ואחר־כך הקישו C-g. זה מבטל את המיני־חוצץ וגם מבטל
460    את הפקודה C-x C-f שהשתמשה במיני־חוצץ. התוצאה היא שאף קובץ לא נפתח.
462 משסיימתם להקיש את שם הקובץ, הקישו <Return> לסיים את הקלט. או־אז
463 המיני־חוצץ נעלם והפקודה C-x C-f תיגש לעבודה ותמצא ותפתח את הקובץ
464 שבחרתם. כאשר פקודת ה־C-x C-f תסיים את עבודתה, תוכן הקובץ יופיע על־גבי
465 התצוגה ותוכלו לבצע בו שינויים. כשתחליטו לשמור את השינויים, הקישו את
466 הפקודה הבאה:
468         ‏C-x C-s    שמור את הקובץ
470 פקודה זו שומרת בקובץ את הטקסט המוחזק בתוך Emacs. בפעם הראשונה שתפעילו
471 פקודה זו, Emacs משנה את שם הקובץ המקורי לשם חדש כך שהמקור לא ילך
472 לאיבוד. השם החדש נוצר ע״י הוספת "~" בסוף השם המקורי של הקובץ.
474 כשהשמירה מסתיימת, Emacs מציג בשורה התחתונה את שם הקובץ שנשמר. נסו
475 לשמור לעתים מזומנות על־מנת להימנע מלאבד יותר מדי מהעבודה שלכם אם המחשב
476 ייפול (ראה להלן פיסקה על שמירה אוטומטית).
478 >> הקישו C-x C-s TUTORIAL.he ותסיימו בהקשת <Return>. כתוצאה, שיעור זה
479    יישמר בקובץ בשם TUTORIAL.he ובתחתית התצוגה תופיע ההודעה
480    "Wrote ...TUTORIAL.he".
482 ניתן לפתוח קובץ קיים על־מנת לצפות בו או לערוך אותו. ניתן גם לפתוח קובץ
483 שאינו קיים. זו הדרך ליצור קבצים חדשים בעזרת Emacs: פתחו את הקובץ
484 שיהיה תחילה ריק ואז התחילו להקיש טקסט לתוכו. כשתפעילו את פקודת השמירה,
485 Emacs ייצור את הקובץ עם הטקסט שהקשתם. מאותו רגע ואילך, תוכלו לחשוב
486 שהינכם עורכים קובץ קיים.
489 * חוצצים
490 --------
492 אם תפתחו קובץ נוסף עם C-x C-f, הקובץ הראשון עדיין נשאר פתוח ב־Emacs.
493 תוכלו לחזור אליו ע״י C-x C-f. כך תוכלו לפתוח מספר רב של קבצים.
495 ‏Emacs מחזיק כל קובץ בתוך יישות בשם "חוצץ" ("buffer"). פתיחת קובץ יוצרת
496 חוצץ חדש בתוך Emacs. כדי לראות את רשימת החוצצים הקיימים בתוך Emacs,
497 הקישו
499         ‏C-x C-b    הצג רשימת כל החוצצים
501 >> נסו את C-x C-b בנקודה זו.
503 שימו לב שלכל חוצץ יש שם וכל חוצץ עשוי גם לציין את שם הקובץ שאת תוכנו
504 הוא מחזיק. כל טקסט שאתם מקישים בחלון Emacs תמיד יהיה חלק של חוצץ
505 כלשהו.
507 >> הקישו C-x 1 כדי להפטר מרשימת החוצצים.
509 כשקיימים מספר חוצצים, רק אחד מהם יכול להיות החוצץ "הנוכחי" בכל רגע
510 נתון. זהו החוצץ בו אתם מבצעים עריכה באותו רגע. אם ברצונכם לערוך חוצץ
511 אחר, עליכם "לעבור" חוצץ. עבור חוצצים שמתאימים לקבצים, ניתן לעשות זאת
512 ע״י C-x C-f שיפקוד את הקובץ בשנית. אבל קיימת דרך פשוטה יותר: שימוש
513 בפקודה C-x b. פקודה זו תחייב אותכם להקיש את שם החוצץ.
515 >> ניצור עתה קובץ בשם "foo" ע״י הקשת C-x C-f foo <Return>‎.
516    עתה חזרו לשיעור זה בעזרת C-x b TUTORIAL.he <Return>‎.
518 ברוב המקרים שם החוצץ זהה לשם הקובץ (ללא שם התיקיה שלו). אבל אין זה
519 תמיד כך. רשימת החוצצים שנוצרת ע״י C-x C-b תציג הן את שם החוצץ והן את
520 שם הקובץ עבור כל החוצצים הקיימים ב־Emacs.
522 כל טקסט שמוצג בחלון של Emacs הינו תמיד חלק של חוצץ כלשהו. קיימים
523 חוצצים שאינם קשורים לשום קובץ. לדוגמא, החוצץ בשם "*Buffer List*"
524 המחזיק את רשימת החוצצים שנוצרה ע״י C-x C-b אינו מציג שום קובץ. גם
525 לחוצץ הנוכחי ששמו TUTORIAL.he לא היה קובץ עד שהקשתם על C-x C-s כדי
526 לשמור אותו בקובץ.
528 חוצץ בשם "*Messages*" אף הוא אינו קשור לשום קובץ; הוא מחזיק את ההודעות
529 שהופיעו בשורה התחתונה במהלך עבודתכם בתוך Emacs.
531 >> הקישו C-x b *Messages* <Return>‎ כדי לצפות בחוצץ של הודעות.
532    אחר־כך הקישו C-x b TUTORIAL.he <Return>‎ על־מנת לחזור לשיעור זה.
534 אם עשיתם שינויים בטקסט של קובץ ואחר־כך פתחתם קובץ אחר, אין הדבר שומר
535 את השינויים שעשיתם לקובץ הראשון. השינויים הללו נשארים בתוך Emacs, בתוך
536 החוצץ של אותו קובץ. יצירתו ועריכתו של הקובץ הנוסף אינם משפיעים על
537 החוצץ של הקובץ הראשון. דבר זה הוא שימושי, אך משמעותו היא שיש צורך
538 בשיטה נוחה לשמור את החוצץ של הקובץ הראשון. היה זה מאד לא נוח אילו
539 לשם כך הייתם צריכים לעבור לחוצץ ההוא בעזרת C-x C-f ואז לשמור עם
540 C-x C-s. לכן קיימת פקודה
542         ‏C-x s     שמור חוצצים אחדים
544 ‏C-x s עובר על כל החוצצים אשר מכילים שינויים שטרם נשמרו. לגבי כל חוצץ
545 כזה הוא שואל אתכם האם לשמור אותו או לא.
547 >> הכניסו שורה של טקסט ואחר־כך הקישו C-x s.
548    הוא צריך לשאול האם לשמור חוצץ בשם TUTORIAL.he.
549    השיבו בחיוב ע״י הקשה על "y".
552 * הרחבת אוסף הפקודות
553 --------------------
555 מספר הפקודות ב־Emacs גדול בהרבה ממה שניתן להפעיל ע״י כל תוי ה־control
556 וה־meta. כדי להתגבר על בעיה זו, Emacs משתמש בפקודות X המרחיבות (eXtend)
557 את אוסף הפקודות הרגיל. פקודות הרחבה אלו הן שתים:
559         ‏C-x     הרחבת תו. תו בודד שבא אחריו משלים את הפקודה.
560         ‏M-x     הרחבה ע״י שם הפקודה. אחריו בא שם ארוך של פקודה.
562 בעזרת שתי אלו ניתן להפעיל פקודות שימושיות שבהן משתמשים לעתים רחוקות
563 יותר מאשר פקודות שלמדתם עד עכשיו. כמה מהן כבר ראיתם: C-x C-f לפתיחת
564 קובץ, ו־C-x C-s לשמירת קובץ, לדוגמא. דוגמא נוספת היא פקודה לצאת
565 מ־Emacs -- ‏C-x C-c. (כשאתם מפעילים C-x C-c, אל תדאגו לשינויים שטרם
566 נשמרו; C-x C-c מציע לשמור כל קובץ ששיניתם לפני שהוא מסיים את Emacs.)
568 אם אתם משתמשים בצג גרפי, אינכם זקוקים לפקודה מיוחדת כדי לעבור מ־Emacs
569 לתוכנית אחרת. אפשר לעשות זאת בעזרת העכבר או פקודות של מנהל החלונות.
570 אולם, כאשר אתם משתמשים בתצוגה טקסטואלית שמסוגלת להציג רק תוכנית אחת
571 בו־זמנית, תצטרכו "להשעות" ("suspend") את Emacs על־מנת לעבור לתוכנית
572 אחרת.
574 הפקודה C-z יוצאת מ־Emacs *באופן זמני* -- כך שתוכלו לשוב אליו מאוחר
575 יותר ולהמשיך מאותה נקודה. כאשר Emacs רץ על תצוגת טקסט, C-z "משעה" את
576 Emacs: הוא מחזיר אתכם לשורת הפקודות הבסיסית של מערכת ההפעלה ("shell"),
577 אבל אינו מסיים את Emacs. ברוב המערכות, כדי להמשיך בעבודתכם ב־Emacs,
578 תצטרכו להקיש את הפקודה "fg" או ‪"%emacs"‬.
580 הרגע הנכון להשתמש ב־C-x C-c הוא כאשר אתם עומדים להתנתק (log out).
581 כמו־כן, תצטרכו להשתמש בו כדי לצאת מ־Emacs שהופעל ע״י תוכניות אחרות
582 כגון קריאת דואר אלקטרוני.
584 קיימות פקודות C-x רבות מאד. להלן רשימת אלו שכבר למדתם:
586         ‏C-x C-f        פתח קובץ
587         ‏C-x C-s        שמור קובץ
588         ‏C-x s          שמור חוצצים אחדים
589         ‏C-x C-b        הצג רשימת חוצצים
590         ‏C-x b          החלף חוצץ
591         ‏C-x C-c        צא מ־Emacs
592         ‏C-x 1          השאר רק חלון אחד ומחק כל השאר
593         ‏C-x u          בטל פקודה אחרונה
595 הרחבה ע״י שם הפקודה שימושית עם פקודות עוד יותר נדירות או פקודות
596 ספציפיות רק לאופני פעולה (modes) מיוחדים. דוגמא לכך היא פקודה
597 replace-string (החלף מחרוזת) אשר מחליפה מחרוזת אחת במשנה בכל החוצץ.
598 אחרי שתקישו M-x, ‏Emacs מציג M-x בתחתית התצוגה ומחכה שתקישו את שם
599 הפקודה, במקרה זה "replace-string". מספיק שתקישו "repl s<TAB>‎" ו־Emacs
600 ישלים את השם המלא. (<TAB> הוא מקש Tab, בדרך כלל תמצאו אותו מעל מקש
601 ה־CapsLock או Shift, ליד הקצה השמאלי של המקלדת.) סיימו את הזנת הפקודה
602 ע״י הקשת <Return>.
604 הפקודה להחלפת מחרוזת זקוקה לשני ארגומנטים -- המחרוזת שתוחלף וזו שתחליף
605 אותה. סיימו הקשה של כל אחת מהן ע״י <Return>.
607 >> הביאו את הסמן שתי שורות מתחת לשורה זו.
608    עתה הקישו M-x repl s<Return>changed<Return>altered<Return>‎.
610    שימו לב שהמילה "changed" בשורה זו שתנתה: זה עתה החלפתם את
611    המילה c-h-a-n-g-e-d במילה "altered" בכל מקום בו היא נמצאת אחרי
612    הסמן.
615 * שמירה אוטומטית
616 ----------------
618 שינויים שערכתם בקובץ אבל טרם שמרתם עלולים ללכת לאיבוד אם המחשב שלכם
619 נתקע. על־מנת להגן עליכם מפני סכנה זו, Emacs שומר לעתים מזומנות כל קובץ
620 שנמצא בעריכה. השמירה האוטומטית הזאת נעשית לקובץ נפרד ששמו מתחיל
621 ומסתיים בתו #. לדוגמא, אם הינכם עורכים קובץ בשם "hello.c", קובץ השמירה
622 האוטומטית שיווצר עבורו ייקרא "#hello.c#". שמירה רגילה של הקובץ על ידכם
623 מוחקת את קובץ השמירה האוטומטית.
625 אם המחשב אכן נתקע, תוכלו לנציל את השינויים שלא הספקתם לשמור. לשם כך,
626 יש לפתוח את הקובץ כרגיל (את הקובץ בשמו המקורי, לא את קובץ השמירה
627 האוטומטית), ואחר־כך להקיש M-x recover-this-file <Return>‎. כש־Emacs
628 יבקש אישור, הקישו yes<Return>‎ כדי ש־Emacs ישחזר את הקובץ כפי שנשמר
629 אוטומטית.
632 * תצוגת הד
633 ----------
635 אם Emacs מגלה שאתם מקישים פקודה לאט, הוא מציג את שהקשתם בתחתית התצוגה,
636 באזור שנקרא "אזור תצוגת הד". אזור זה משתמש בשורה התחתונה של התצוגה.
639 * שורת סטטוס
640 ------------
642 השורה שמעל אזור תצוגת הד נקראת "שורת הסטטוס" (mode line). שורה זו
643 מציגה משהו כמו:
645      U:**-  TUTORIAL.he    63% L651    (Fundamental)
647 שורה זו מציגה מידע חשוב לגבי מצבו של Emacs ולגבי הטקסט שנמצא בעריכה.
649 אתם כבר יודעים מהי משמעותו של שם הקובץ -- זהו הקובץ שפתחתם. NN%‎ מציין
650 את מיקומכם הנוכחי בתוך הטקסט, לאמור כי NN אחוזים מתכולת החוצץ קודמים
651 לטקסט המוצג כרגע בחלון. אם המוצג בחלון כולל את תחילת הטקסט, תראו שם
652 "Top" במקום "0% ". אם המוצג בחלון כולל את סוף הטקסט, תראו שם "Bot"
653 ‏(bottom). אם הטקסט כל־כך קצר שכולו מוצג בחלון, שורת הסטטוס תציג "All".
655 האות L והמספר שאחריה מציינים את המיקום הנוכחי בדרך אחרת: הם מראים את
656 מספר השורה שבה נמצא הסמן.
658 הכוכביות ליד הקצה השמאלי משמעותן כי שיניתם את הטקסט. מיד אחרי פתיחת
659 הקובץ או אחרי שמירתו החלק הזה של שורת הסטטוס אינו מציג כוכביות, אלא רק
660 מקפים.
662 החלק שבתוך הסוגריים אומר לכם מהo אופני העריכה (editing modes) הפעילים
663 כעת. ברירת המחדל היא Fundamental, האופן הבסיס, שבו אתם משתמשים כעת.
664 זוהי דוגמא של "אופן עריכה ראשי" (major mode).
666 ל־Emacs אופני עריכה ראשיים רבים ומגוונים. חלק מהם נועדו לעריכה של שפת
667 תכנות מסוימת ו/או סוג מסוים של טקסט, כגון Lisp mode, Text mode וכד'.
668 בכל רגע נתון רק אופן עיקרי אחד יכול להיות פעיל ושמו תמיד מצויין בשורת
669 הסטטוס באותו מקום בו כרגע אתם רואים "Fundamental".
671 כל אופן עיקרי גורם לכמה פקודות לפעול בצורה מיוחדת. למשל, ישנן פקודות
672 ליצירת הערות בתוך תוכנית, והיות וכל שפת תכנות מגדירה את הפורמט של
673 הערות בצורה אחרת, כל אופן עיקרי חייב להכניס הערות בצורה שמתאימה לשפה.
674 כל אופן עיקרי הינו למעשה שם הפקודה שבעזרתה אפשר להפעיל את אותו האופן.
675 למשל הפקודה להפעיל את האופן Fundamental הינה M-x fundamental-mode.
677 אם בכוונתכם לערוך טקסט בשפה אנושית כלשהי, כמו הקובץ הזה, כדאי לכם
678 להשתמש ב־Text mode.
680 >> הקישו M-x text-mode <Return>‎.
682 אל דאגה: אף אחת מפקודות Emacs שלמדתם עד כה משנה את התנהגותה באופן
683 מהותי. עם זאת, שימו לב ש־M-f ו־M-b מתייחסים עכשיו ל־'גרש' כחלק מהמילה.
684 לפני־כן, ב־Fundamental mode, ‏M-f ו־M-b התנהגו עם הגרש כמפריד בין
685 מילים.
687 אופנים ראשיים בדרך־כלל משנים קלות את התנהגות הפקודות: רוב הפקודות
688 עדיין "עושות אותה עבודה" בכל האופנים הראשיים, אבל עושות אותה קצת אחרת.
690 לצפיה בתיעוד של האופן הראשי הנוכחי יש להקיש C-h m.
692 >> הקישו C-l C-l כדי להביא שורה זו לראשית התצוגה.
693 >> עתה הקישו C-h m כדי לראות במה Text mode שונה מה־Fundamental mode.
694 >> לבסוף, הקישו C-x 1 כדי לסלק את התיעוד מהתצוגה.
696 אופנים ראשיים נקראים כך משום שקיימים גם אופני־משנה (minor modes).
697 אופני משנה אינם מהווים חלופה לאופנים הראשיים, הם רק משנים אותם במקצת.
698 כל אופן־משנה ניתן להפעלה או ביטול ללא תלות בכל שאר אופני המשנה וללא
699 תלות באופן הראשי הנוכחי. לכן תוכלו להפעיל אופן־משנה אחד או יותר, או אף
700 אופן־משנה.
702 אחד מאופני־המשנה השימושיים ביותר, במיוחד לשם עריכת טקס בשפת־אנוש, הוא
703 Auto Fill mode. כאשר אופן זה מופעל, Emacs אוטומטית פותח שורה חדשה
704 בסיום מילה אם הטקסט שהקשתם ארוך מדי בשביל שורה אחת.
706 להפעלת Auto Fill mode יש להקיש M-x auto-fill-mode <Return>‎. כאשר אופן
707 זה מופעל, ניתן לבטלו ע״י M-x auto-fill-mode <Return>‎. זאת אומרת, פקודה
708 זו מפעילה את האופן כשאינו פעיל ומבטלת אותו כשהוא פעיל. לפעולה זו
709 קוראים "מיתוג" -- הפקודה "ממתגת" את האופן.
711 >> הקישו עתה M-x auto-fill-mode <Return>‎. אחר־כך הקישו "שדגכ " (עם
712    הרווח בסוף) שוב ושוב עד שתיפתח שורה חדשה. הרווחים חשובים משום
713    ש־Auto Fill mode שובר שורות אך ורק ברווח שבין המלים.
715 השוליים (margin) ש־Emacs שומר בדרך־כלל מתחילים אחרי 70 תווים, אבל ניתן
716 לשנות הגדרה זו בעזרת הפקודה C-x f. פקודה זו מקבלת את ההגדרה החדשה של
717 השוליים כארגומנט נומרי.
719 >> הקישו C-x f עם ארגומנט של 20. (C-u 2 0 C-x f). אחר־כך הקישו טקסט
720    כלשהו ושימו לב ש־Emacs פותח שורות חדשות אחרי 20 תווים לכל היותר.
721    לבסוף, החזירו את הגדרת השוליים ל־70 ע״י שימוש חוזר ב־C-x f.
723 אם ערכתם שינויים באמצע פסקה, Auto Fill mode לא ימלא שורות מחדש באופן
724 אוטומטי.
725 כדי למלא מחדש את כל הפסקה הקישו M-q ‏(META-q) כשהסמן נמצא בתוך
726 הפסקה.
728 >> הניעו את הסמן לתוך הפסקה הקודמת והקישו M-q.
731 * חיפוש
732 -------
734 ‏Emacs יכול לחפש מחרוזות (רצף של תווים) קדימה או אחורה בתוך הטקסט.
735 חיפוש של מחרוזת הוא סוג של פקודה להנעת הסמן: הוא ממקם את הסמן היכן
736 שנמצאה המחרוזת הבאה.
738 החיפוש של Emacs הינו "מצטבר" ("incremental"). פירוש הדבר הוא שהחיפוש
739 מתבצע במקביל להקשתכם את המחרוזת אותה ברצונכם למצוא.
741 הפקודה להתחיל בחיפוש היא C-s לחיפוש קדימה ו־C-r לחיפוש אחורה. חכו! אל
742 תפעילו אותן עדיין.
744 כשתקישו C-s, תראו שבאזור תצוגת ההד יופיע הטקסט "I-search". זה אומר
745 ש־Emacs נמצא במצב "חיפוש מצטבר" ("incremental search") והוא ממתין
746 להקשתכם את המחרוזת אותה ברצונכם למצוא. הקשה על <Return> מסיימת את
747 החיפוש.
749 >> הקישו עתה C-s כדי להתחיל בחיפוש. לאט־לאט, אות־אות, הקישו את המילה
750    "סמן", עם הפסקה אחרי כל אות, ושימו לב להתנהגות הסמן.
751    זה עתה מצאתם את המילה "סמן" פעם אחת.
752 >> הקישו C-s שוב, כדי למצוא את "סמן" במקומות נוספים בטקסט.
753 >> הקישו <DEL> שלוש פעמים ושימו לב לתנועת הסמן בכל הקשה.
754 >> הקישו <Return> לסיום החיפוש.
756 האם שמתם לב למה שקרה? במהלך "חיפוש מצטבר" Emacs מנסה למצוא את המקום
757 הבא בו מופיעה המחרוזת שהקשתם. כדי למצוא את המחרוזת במקום הבא, פשוט
758 הקישו C-s פעם נוספת. אם המחרוזת אינה נמצאת בהמשך הטקסט, Emacs מצפצף
759 ומודיע שהחיפוש נכנס למצב של "כשלון" ("failing"). הקשה על C-g גם היא
760 מסיימת את החיפוש.
762 אם במהלך החיפוש תקישו על <DEL>, החיפוש "נסוג" למצב קודם. אם הקשתם
763 <DEL> מיד אחרי C-s, הקשת <DEL> מחזירה את הסמן למקום הקודם בו נמצאה
764 המחרוזת. אם אין מקומות קודמים בהם מופיעה המחרוזת, הקשת <DEL> מוחקת את
765 התו האחרון של המחרוזת המבוקשת. למשל, נניח שהקשתם "ס" על־מנת למצוא את
766 המקום הבא בו מופיעה האות "ס". אם עכשיו תקישו "מ", הסמן יזוז למקום בו
767 נמצא "סמ". עתה הקישו <DEL>. ה־"מ" נמחק מהמחרוזת והסמן חוזר למקום בו
768 הוא מצא את "ס" לראשונה.
770 אם במהלך החיפוש תפעילו פקודה כלשהי ע״י הקשה על מקש תוך לחיצה על
771 CONTROL או META, החיפוש יסתיים. (כמה תווים יוצאים מכלל זה -- אלו תווים
772 מיוחדים בעת חיפוש, כדוגמת C-s ו־C-r.)
774 הקשה על C-s מתחילה חיפוש שמנסה למצוא את המחרוזת _אחרי_ הסמן. אם
775 ברצונכם למצוא משהו בטקסט הקודם למקום הנוכחי, הקישו C-r במקום C-s. כל
776 מה שאמרנו לגבי C-s תקף גם לגבי C-r, אלא שכיוון החיפוש מתהפך.
779 * חלונות מרובים
780 ---------------
782 אחת התכונות הנוחות של Emacs היא כי ניתן להציג יותר מחלון אחד על המסך
783 בו־זמנית. (הערה: Emacs משתמש במונח "frame" -- "תבנית" -- בשביל מה
784 שתוכניות אחרות מכנות "חלון". תבניות מתוארות בפסקה הבאה. תוכלו למצוא את
785 רשימת המונחים של Emacs בפרק "Glossary" של מדריך משתמש.)
787 >> הביאו סמן לשורה זו והקישו C-l C-l ‏(CONTROL-L ולא CONTROL-1).
789 >> עתה הקישו C-x 2 וכתוצאה מכך החלון יתחלק לשניים. כל אחד משני החלונות
790    מציג את השיעור הזה. הסמן נשאר בחלון העליון.
792 >> הקישו C-M-v כדי לגלול את החלון התחתון.
793    (אם במקלדת שלכם אין מקש META אמיתי, הקישו ‎<ESC> C-v כתחליף.)
795 >> הקישו C-x o ‏("o" הוא רמז ל־"other", "אחר") על־מנת להעביר את הסמן
796    לחלון התחתון.
797 >> הקישו C-v ו־M-v בחלון התחתון כדי לגלול אותו.
798    המשיכו לקרוא הוראות אלו בחלון העליון.
800 >> הקישו C-x o שוב לחזור לחלון העליון.
801    הסמן בחלון העליון יישאר במקום בו הוא היה לפני־כן.
803 תוכלו להמשיך להשתמש ב־C-x o כדי לדלג בין החלונות. "החלון הנבחר", אותו
804 חלון בו הנכם עורכים טקסט, מזוהה ע״י סמן בולט שמהבהב בזמן שאינכם
805 מקלידים. לכל החלונות האחרים מיקום סמן משלהם; אם הפעלתם את Emacs על צג
806 גרפי, מיקום הסמן בחלונות האחרים מוצג כתיבה ריקה שאינה מהבהבת.
808 הפקודה C-M-v נוחה מאד כאשר הינכם עורכים טקסט בחלון אחד ומשתמשים בחלון
809 אחר לייחוס. תוכלו להתקדם בחלון השני בעזרת C-M-v מבלי לעזוב את החלון
810 הנבחר.
812 ‏C-M-v היא דוגמא אחת של פקודת CONTROL-META. אם במקלדת שלכם קיים מקש
813 META (או Alt) אמיתי, תוכלו להקיש את הפקודה ע״י לחיצה והחזקה של מקשי
814 CONTROL ו־META גם יחד ואז להקיש v. הסדר שבו תלחצו על CONTROL ו־META
815 אינו משנה כי שני המקשים הללו פועלים ע״י שינוי התו המוקש יחד איתם.
817 אם אין במקלדת מקש META אמיתי ואתם משתמשים ב־<ESC> כתחליף, הסדר כן
818 משנה: חייבים להקיש <ESC> ורק לאחר מכן CONTROL-v, וזאת משום
819 ש־CONTROL-<ESC> v לא יעבוד. <ESC> הוא תו בזכות עצמו, שלא כמו CONTROL
820 או META.
822 >> הקישו C-x 1 (בחלון העליון) כדי לסלק את החלון התחתון.
824 (אילו הקשתם C-x 1 בחלון התחתון, הייתם מסלקים את החלון העליון. תוכלו
825 לחשוב על פקודה זו כ־"השאר רק חלון אחד -- החלון בו אני נמצא עתה".)
827 אין חובה להציג את אותו החוצץ בשני החלונות. תוכלו להשתמש ב־C-x C-f
828 לפתיחת קובץ באחד החלונות -- דבר זה אינו משפיע על החלון השני. אפשר גם
829 לפתוח קבצים שונים בכל אחד משני החלונות באופן בלתי־תלוי.
831 הנה עוד שיטה להשתמש בשני חלונות להצגה של שני דברים שונים:
833 >> הקישו C-x 4 C-f ואחר־כך הקישו שם של אחד הקבצים שלכם.
834    סיימו עם <Return>. שימו לב שהקובץ המבוקש מוצג בחלון התחתון. הסמן
835    מדלג לשם אף הוא.
837 >> הקישו C-x o לעבור לחלון העליון ואחר־כך הקישו C-x 1 כדי לסלק את
838    החלון התחתון.
841 * תבניות מרובות
842 ---------------
844 ‏Emacs מסוגל לפתוח מספר "תבניות" ("frames"). תבנית כוללת קבוצת חלונות,
845 תפריט, פסי גלילה, אזור תצוגת הד וכו'. על צג גרפי מה שאנו קוראים
846 "תבנית" נקרא בדרך־כלל "חלון". ניתן להציג תבניות אחדות על אותו צג גרפי
847 בו־זמנית על צג טקסטואלי אפשר להציג רק תבנית אחת בכל עת.
849 >> הקישו C-x 5 2.
850    כתוצאה, תבנית חדשה תופיע על המסך.
852 כל מה שעשיתם בתבנית המקורית ניתן לעשות גם בתבנית החדשה. התבנית הראשונה
853 אין בה שום דבר מיוחד.
855 >> הקישו C-x 5 0.
856    התבנית שבה הקשתם את הפקודה תיסגר ותיעלם מהמסך.
858 כמו־כן, ניתן לסגור תבנית בדרך הרגילה הנתמכת ע״י התצוגה הגרפית של
859 המערכת שלכם (בדרך־כלל, ע״י הקלקה על הכפתור המסומן ב־"X" בפינה עליונה
860 של התבנית.) שום מידע אינו הולך לעיבוד כאשר סוגרים תבנית (או חלון).
861 המידע הזה פשוט יורד מהתצוגה, אבל ניתן לאחזרו מאוחר יותר.
864 * רמות עריכה רקורסיביות
865 -----------------------
867 יתכן ותיקלעו למצב שקרוי "רמת עריכה רקורסיבית". Emacs מציין זאת ע״י
868 סוגריים מרובעים בשורת הסטטוס מסביב לשם האופן הראשי. למשל, יוצג שם
869 [(Fundamental)] במקום (Fundamental).
871 כדי להחלץ מרמת עריכה רקורסיבית יש להקיש <ESC> <ESC> <ESC>. זוהי פקודה
872 כללית של "הימלטות". ניתן להשתמש בה גם כדי לסלק חלונות מיותרים וליציאה
873 מתוך מיני־חוצץ.
875 >> הקישו M-x כדי להיכנס למיני־חוצץ; אחר־כך הקישו <ESC> <ESC> <ESC> כדי
876    להיחלץ משם.
878 הקשה על C-g לא תחלץ אתכם מרמות עריכה רקורסיביות. זאת, משום ש־C-g מבטל
879 פקודות וארגומנטים _במסגרת_ הרמה הרקורסיבית, מבלי לצאת ממנה.
882 * לקבלת עזרה נוספת
883 ------------------
885 בשיעור הראשון הזה השתדלנו לתת בידיכם מידע שאך יספיק להתחלת השימוש שלכם
886 ב־Emacs. ‏Emacs מכיל כל־כך הרבה שאין שום אפשרות לתאר ולהסביר כאן את
887 הכל. אולם, סביר שתרצו ללמוד יותר על Emacs שכן יש בו עוד הרבה תכונות
888 שימושיות. Emacs כולל פקודות לשם קריאת תיעוד על הפקודות של Emacs.
889 הפעלת פקודות "עזרה" אלו תמיד מתחילה במקש CONTROL-h שעל־כן נקרא "מקש
890 עזרה" ("help").
892 להפעלת פקודות עזרה יש להקיש את C-h ואחר־כך עוד תו שמבקש עזרה מסוג
893 מסויים. אם אתם _באמת_ אבודים, הקישו C-h ?‎ ו־Emacs יציג את סוגי העזרה
894 שהוא מעמיד לרשותכם. אם הקשתם C-h ובסופו של דבר החלטתם שאין צורך בשום
895 עזרה, פשוט הקישו C-g לבטל את הפקודה.
897 (אם הקשת C-h אינה מציגה בתחתית התצוגה הודעה בדבר עזרה, נסו להקיש F1 או
898 M-x help <Return>‎ כתחליף.)
900 סוג העזרה הבסיס ביותר הוא C-h c. הקישו C-h, אחריו את האות c ואז הקישו
901 סדרת מקשים שמפעילה פקודה כלשהי. Emacs יציג תיאור מאד קצר של הפקודה
902 ההיא.
904 >> הקישו C-h c C-p.
906 התוצאה שתוצג צריכה להיות משהו כמו זה:
908                 C-p runs the command previous-line
910 ההודעה הזו מראה את "שם הפונקציה". היות ושמות הפונקציות נבחרים כדי
911 לציין מה הן עושות, השמות עשויים לשמש כתיעוד מקוצר -- מספיק כדי להזכיר
912 לכם את הפקודות שלמדתם בעבר.
914 ניתן לציין אחרי C-h c גם פקודות שמופעלות ע״י סדרת מקשים באורך גדול
915 מאחד, כגון C-x C-s או ‏‎<ESC> v (כתחליף ל־M-v, אם אין מקש META או EDIT
916 או ALT).
918 לקבלת מידע מפורט יותר על פקודה, השתמשו בפקודה C-h k במקום C-h c.
920 >> הקישו C-h k C-p.
922 כתוצאה, יוצגו השם והתיעוד של הפונקציה בחלון Emacs נפרד. כשתסיימו לקרוא
923 את התיעוד, הקישו C-x 1 כדי לסלק את חלון העזרה. לא חייבים לעשות זאת
924 מיד. אפשר לבצע קצת עריכה תוך שימוש בתיעוד המוצג ורק אחר־כך להקיש C-x 1.
926 הנה עוד כמה פקודות עזרה שימושיות:
928     ‏C-h f      תן הסבר על פונקציה. יש להקיש את שם הפונקציה.
930 >> נסו להקיש C-h f previous-line <Return>‎.
931    כתוצאה, יוצג תיעוד מלא של הפונקציה המממשת את הפקודה C-p כפי שהוא
932    ידוע ל־Emacs.
934 פקודה דומה C-h v מציגה תיעוד של משתנה, כולל אלו שאת הערכים שלהם ניתן
935 לשנות כדי לקסטם את Emacs. יש להקיש את שם המשתנה כאשר Emacs יבקש זאת.
937     ‏C-h a      פקודות בנוגע לנושא מסויים. הקישו מילת מפתח ו־Emacs
938                 יציג את רשימת הפקודות ששמותיהן מכילות את מילת המפתח.
939                 כל הפקודות הללו ניתנות להפעלה ע״י META-x. עבור חלק
940                 מהפקודות תוצג גם סדרת מקשים שמפעילה את הפקודה.
942 >> הקישו C-h a file <Return>‎.
944 כתוצאה מזה, יוצג חלון עם רשימה של כל הפקודות ששמותיהן מכילות את המילה
945 "file". ביניהן תראו גם מקשי קיצור כגון C-x C-f לצד שמות הפקודות כגון
946 find-file.
948 >> הקישו C-M-v כדי לגלול את חלון העזרה. עשו זאת פעמים אחדות.
950 >> עתה הקישו C-x 1 כדי לסגור את חלון העזרה.
952     ‏C-h i      הצג מדריכים למשתמש הכלולים בחבילת Emacs. (פקודה זו
953                 ידועה גם בשם "Info".) פקודה זאת פותחת חוצץ מיוחד הקרוי
954                 "*info*" שבו תוכלו לקרוא מדריכים המותקנים במערכת שלכם.
955                 הקישו m emacs <Return>‎ כדי לקרוא במדריך למשתמשי Emacs.
956                 אם אינכם מכירים את Info, הקישו h ו־Emacs יקח אתכם
957                 לשיעור על התכונות של Info mode. כשתסיימו עם השיעור
958                 הזה, אנו בהחלט ממליצים להשתמש במדריך Emacs בתור התיעוד
959                 העיקרי שלכם.
962 * עוד תכונות
963 ------------
965 תוכלו ללמוד עוד על־אודות Emacs ע״י קריאה במדריך למשתמש שלו, אם כספר
966 מודפס או בגירסה מקוונת בתוך Emacs עצמו. (תוכלו להגיע אל המדריך דרך
967 תפריט Help או ע״י הקשה על C-h r.) אולם שתי תכונות שבוודאי ימצאו חן
968 בעיניכם הן השלמה אשר חוסכת הקשות, ו־dired שמאפשרת טיפול נוח בקבצים.
970 השלמה היא דרך להימנע מהקשות מיותרות. למשל, אם ברצונכם לעבור לחוצץ
971 *Messages*, תוכלו להקיש C-x b *M<Tab>‎ ו־Emacs ישלים את שאר האותיות של
972 שם החוצץ ככל שניתן להסיק ממה שהקשתם. השלמה פועלת גם על שמות הפקודות
973 ושמות קבצים. תכונת ההשלמה מתוארת במלואה במדריך למשתמש Emacs בצומת
974 (node) בשם "Completion".
976 ‏Dired מאפשר להציג רשימת קבצים בתיקיה (וכאפציה גם בתת־תיקיות שלה), לנוע
977 בתוך הרשימה הזו, לפתוח קבצים, לשנות את שמותיהם, למחוק אותם ולבצע עליהם
978 עוד פעולות רבות. Dired מתואר במלואו במדריך למשתמש בצומת בשם "Dired".
980 בנוסף, מדריך למשתמש מתאר עוד הרבה מאד תכונות של Emacs.
983 * לסיום
984 -------
986 כדי לצאת מ־Emacs יש להקיש C-x C-c.
988 שיעור זה נכתב כדי להיות מובן לכל המשתמשים החדשים, לכן אם מצאתם שמשהו
989 כאן אינו ברור, אל תשבו ותאשימו את עצמכם -- תתלוננו!
992 * זכויות שימוש
993 --------------
995 שיעור זה הינו צאצא של שורה ארוכה של שיעורים בשימוש ב־Emacs, החל מהגרסה
996 הראשונה שנכתבה ע״י Stuart Cracraft עבור גירסת ה־Emacs המקורית.
998 גירסה זו של השיעור הינה חלק מחבילת GNU Emacs. היא מוגנת בזכויות יוצרים
999 וניתנת להעתקה והפצת עותקים בתנאים מסויימים כדלקמן:
1001                        Copyright (C) 2010-2017 Free Software Foundation, Inc.
1003 ‏GNU Emacs הינו תכנה חפשית; זכותכם להפיצו ו\או לשנותו בכפוף לתנאי
1004 הרשיון GNU General Public License, כפי שהוא יוצא לאור ע״י Free
1005 Software Foundation, אם בגרסא 3 של הרשיון, ואם (כאופציה השמורה לכם)
1006 בכל גרסא מאוחרת יותר.
1008 ‏GNU Emacs מופץ מתוך תקווה שהוא יביא תועלת, אולם ללא כל כתב אחריות;
1009 אפילו לא אחריות־במשתמע של סחירות או התאמה לאיזו תכלית מסוימת. לפרטים,
1010 אנא עיינו ב־GNU General Public License.
1012 ‏GNU Emacs אמור להיות מלווה בעותק של GNU General Public License; אם לא
1013 קיבלתם אותו, תוכלו למצוא אותו ב־‪<http://www.gnu.org/licenses/>‬.
1015 הנכם מוזמנים לקרוא את הקובץ COPYING ואז אכן לחלק עותקים של GNU Emacs
1016 לחבריכם. עזרו לנו לחסל את "הבעלות" על תוכנה שאינה אלא חבלה בתוכנה,
1017 וזאת ע״י שימוש, כתיבה ושיתוף של תוכנה חופשית!
1021 --- end of TUTORIAL.he ---
1023 ;;; Local Variables:
1024 ;;;   coding: utf-8
1025 ;;;   bidi-display-reordering: t
1026 ;;;   sentence-end-double-space: nil
1027 ;;;   bidi-paragraph-direction: nil
1028 ;;; End: