]> code.delx.au - gnu-emacs/blob - etc/tutorials/TUTORIAL.he
Ibuffer change marks
[gnu-emacs] / etc / tutorials / TUTORIAL.he
1 שיעור ראשון בשימוש ב־‫Emacs‬. זכויות שימוש ראה בסוף המסמך.
2
3 פקודות רבות של Emacs משתמשות במקש CONTROL (לפעמים הוא מסומן ב־CTRL או CTL)
4 או במקש META (לפעמים מסומן EDIT או ALT). במקום לציין את כל השמות האפשריים
5 בכל פעם, נשתמש בקיצורים הבאים:
6
7 ‏<תו>-C משמעותו לחץ והחזק מקש CONTROL ואז הקש על מקש <תו>.
8 לדוגמא, C-f משמעותו: לחץ והחזק CONTROL והקש על f.
9 ‏<תו>-M משמעותו לחץ והחזק מקש META או EDIT או ALT ואז הקש על מקש <תו>.
10 אם במקלדת אין אף אחד ממקשי META או EDIT או ALT, אפשר להקיש
11 ולשחרר מקש ESC ואז להקיש <תו>. אנו נכתוב <ESC> עבור מקש ESC.
12
13 הערה חשובה: כדי לצאת מ־Emacs יש להקיש C-x C-c (שני תוים, משמאל לימין).
14 כדי להפסיק פקודה באמצע ההקשה, יש להקיש C-g.
15 המחרוזת ">>" בקצה הימני מסמנת הוראות עבורכם כדי לנסות להשתמש בפקודה כלשהי.
16 לדוגמה:
17 <<שורות ריקות תתווספנה סביב השורה הבאה ע״י help-with-tutorial>>
18 [אמצע העמוד הושאר ריק למטרות לימודיות. הטקסט ממשיך להלן]
19 >> הקישו עתה C-v (הצג העמוד הבא) על־מנת להתקדם לעמוד הבא. (קדימה, נסו
20 זאת ע״י לחיצה והחזקה של מקש CONTROL והקשה על v.)
21 מעתה והלאה, עליכם לעשות זאת בכל פעם שתסיימו לקרוא את המוצג על המסך.
22
23 שימו לב לחפיפה של שתי שורות כאשר אתם עוברים ממסך למשך, מה שמבטיח רציפות
24 מסוימת בעת קריאת הטקסט.
25
26 דבר ראשון שעליכם ללמוד הוא כיצד לנוע ממקום אחד למשנהו בתוך הטקסט. אתם
27 כבר יודעים כיצד להתקדם לעמוד הבא, עם C-v. לחזרה לעמוד הקודם הקישו M-v
28 (החזיקו מקש META והקישו v או הקישו ‪<ESC>v‬ אם אין במקלדת מקש META
29 או EDIT או ALT).
30
31 >> נסו עתה כמה פעמים להקיש M-v ואחר־כך C-v.
32
33
34 * סיכום עד כאן
35 --------------
36
37 לשם תנועה בעמודים שלמים וצפייה בהם, השתמשו בפקודות הבאות:
38
39 ‏C-v התקדם לעמוד הבא
40 ‏M-v חזור לעמוד הקודם
41 ‏C-l נקה תצוגה והצג מחדש את הטקסט,
42 כך שהטקסט ליד הסמן יימצא במרכז התצוגה
43 (שימו לב: CONTROL-L ולא CONTROL-1.)
44
45 >> מצאו את הסמן על־גבי התצוגה וזכרו את הטקסט לידו. לאחר מכן הקישו C-l.
46 מצאו את הסמן שנית ושימו לב שהוא עדיין ליד אותו הטקסט, אבל עכשיו
47 הוא במרכז התצוגה.
48 אם תקישו C-l שוב, קטע הטקסט הזה יזוז לקצה העליון של התצוגה. הקישו
49 C-l שוב והוא יזוז לתחתית התצוגה.
50
51 גם מקשי PageUp ו־PageDn, אם הם קיימים במקלדת שלכם, יכולים לשמש לתנועה
52 בעמודים שלמים, אולם השימוש ב־C-v ו־M-v יעיל יותר.
53
54 * תנועת סמן בסיסית
55 ------------------
56
57 תנועה בעמודים שלמים הינה שימושית, אבל כיצד ניתן להגיע למקום ספציפי
58 בתוך הטקסט שעל־גבי התצוגה?
59
60 ניתן לעשות זאת בכמה דרכים. אפשר למשל להשתמש במקשי החצים, אולם יהיה
61 זה יעיל יותר אם תחזיקו את הידיים מעל החלק הסטנדרטי של המקלדת ותשתמשו
62 בפקודות C-p, C-b, C-f ו־C-n. פקודות אלו שוות ערך לארבעת מקשי החצים,
63 כדלקמן:
64
65 שורה קודמת, C-p
66 :
67 :
68 קדימה, C-f ... מיקום סמן נוכחי ... אחורה, C-b
69 :
70 :
71 השורה הבאה, C-n
72
73 >> השתמשו במקשי C-n ו־C-p על־מנת להגיע לשורה האמצעית של הדיאגרמה.
74 הקישו C-l כדי למרכז את הדיאגרמה על־גבי התצוגה.
75
76 קל יותר לזכור את המקשים הללו באמצעות המלים שהם מייצגים:
77 P מ־previous (קודם), N מ־Next (הבא), B מ־Backward (אחורה)
78 ו־F מ־Forward (קדימה). מקשי התנועה הבסיסיים הללו ישמשו אתכם כל הזמן.
79
80 >> הקישו C-n כמה פעמים כדי למקם את הסמן בשורה זו.
81
82 >> הניעו את הסמן בתוך השורה עם C-f ואחר־כך למעלה עם C-p.
83 שימו לב מה עושה C-p כאשר הסמן נמצא באמצע השורה.
84
85 כל שורה של טקטס מסתיימת בתו מיוחד הנקרא Newline. תו זה מפריד בין
86 השורה לזו שאחריה. (בדרך כלל, השורה האחרונה בקובץ תסתיים אף היא
87 ב־Newline, אך Emacs אינו זקוק לכך.)
88
89 >> נסו C-b בתחילת שורה. הוא יגרום לסמן לנוע לסוף השורה הקודמת. זאת,
90 משום שהוא נע אחורה וחולף על־פני תו ה־Newline.
91
92 גם C-f יכול לחלוף על־פני Newline, בדיוק כמו C-b.
93
94 >> הקישו C-b עוד כמה פעמים כדי לקבל הרגשה היכן נמצא הסמן.
95 עתה הקישו C-f מספר פעמים הדרוש לשוב לסוף השורה. ואז הקישו
96 C-f עוד פעם אחת כדי לנוע לתחילת השורה הבאה.
97
98 כשהסמן יוצא מגבולות הטקסט המוצג, חלקי הטקסט מעבר לחלק המוצג נכנסים
99 לתצוגה. לזה קוראים "גלילה". גלילה מאפשרת ל־Emacs להניע את הסמן למקום
100 כלשהו בטקסט מבלי שהסמן ייעלם מהתצוגה.
101
102 >> נסו להניע את הסמן אל מחוץ לתצוגה ע״י הקשת C-n ושימו לב למה שקורה.
103
104 אם תנועה תו־תו איטית מדי, תוכלו לנוע מילים שלמות. M-f ‏(META-f) מזיז
105 את הסמן מילה אחת קדימה ואילו M-b זז מילה אחורה.
106
107 >> הקישו M-f ו־M-b מספר פעמים.
108
109 אם הסמן נמצא באמצע מילה, M-f זז לסוף המילה. אם הסמן נמצא בין שתי מלים,
110 M-f עובר את המילה הבאה ונעצר בסופה. M-b פועל באופן דומה בכיוון הפוך.
111
112 >> הקישו עתה M-f ו־M-b פעמים אחדות, וגם C-f ו־C-b פה ושם כדי שתוכלו
113 להתרשם מהתוצאה של M-f ו־M-b במקומות שונים בתוך ובין המלים.
114
115 שימו לב להקבלה שבין C-f ו־C-b מצד אחד ו־M-f ו־M-b מהצד השני. לעתים
116 קרובות מאד מקשים עם META משמשים לפעולות הקשורות ליחידות של שפה (מלים,
117 משפטים, פסקאות) ואילו מקשים עם CONTROL פועלים על יחידות בסיסיות שאינן
118 תלויות בסוג הטקסט שהינכך עורכים (תוים, שורות, וכד').
119
120 ההקבלה הזאת קיימת גם לגבי שורות ומשפטים: C-a ו־C-e נעים לתחילת השורה
121 וסופה, בהתאמה, ואילו M-a ו־M-e נעים לתחילת המשפט וסופו.
122
123 >> נסו עתה שתי הקשות על C-a ואחר־כך שתי הקשות על C-e.
124 נסו שני M-a ואחר־כך שני M-e.
125
126 שימו לב שחזרה על C-a אינה עושה דבר, ואילו כל הקשה חוזרת על M-a מניעה
127 את הסמן במשפט נוסף. אמנם אין כאן אנלוגיה מושלמת, אבל התוצאה נראית
128 טבעית בשני המקרים.
129
130 מקום הסמן בתוך הטקסט נקרא "point" ("נקודה"). במלים אחרות, הסמן מראה
131 את מיקומו של "point" בתוך הטקסט.
132
133 הנה סיכום של פקודות פשוטות להנעת הסמן, כולל פקודות שנעות במלים
134 ומשפטים שלמים:
135
136 ‏C-f נוע תו אחד קדימה
137 ‏C-b נוע תו אחד אחורה
138
139 ‏M-f נוע מילה קדימה
140 ‏M-b נוע מילה אחורה
141
142 ‏C-n נוע לשורה הבאה
143 ‏C-p נוע לשורה הקודמת
144
145 ‏C-a נוע לתחילת השורה
146 ‏C-e נוע לסוף השורה
147
148 ‏M-a נוע קדימה לסוף המשפט
149 ‏M-e נוע אחורה לתחילת המשפט
150
151 >> נסו את כל הפקודות הללו מספר פעמים, לשם תרגול.
152 אלו הן הפקודות הנפוצות ביותר.
153
154 שתי פקודות תנועה חשובות אחרת הן ‪M-<‬ ‏(META פחות), אשר נעה לתחילת
155 הטקסט, ו־‪M->‬ ‏(META יותר), אשר נעה לסוף הטקסט.
156
157 ברוב המקלדות המקש ">" נמצא מעל הפסיק, לכן כדי להקישו יש צורך ללחוץ
158 ולהחזיק מקש Shift. באופן דומה יש ללחוץ על Shift כדי להקיש ‪M-<‬ כי
159 אחרת היה יוצא M-פסיק.
160
161 >> נסו עתה ‪M-<‬ כדי להגיע לתחילת השיעור.
162 אחר־כך הקישו C-v מספר פעמים, עד שתגיעו לכאן.
163
164 >> עכשיו נסו ‪M->‬ כדי להגיע לסוף השיעור.
165 לאחר מכן הקישו M-v כמה פעמים כדי לחזור לכאן.
166
167 ניתן להזיז את הסמן גם בעזרת מקשי החצים, אם הם קיימים במקלדת שלכם.
168 אבל אנחנו ממליצים ללמוד להשתמש ב־C-b, C-f, C-n ו־C-p משלוש סיבות.
169 קודם כל, הם יעבדו עם כל מקלדת. שנית, כשתתרגלו לעבוד עם Emacs, תראו
170 כי השימוש במקשים אלו מהיר יותר מהשימוש בחצים (מכיון שאין צורך להזיז
171 את היד מהחלק העיקרי של המקלדת). ושלישית, כשהמקשים הללו יהפכו להרגל,
172 יהיה לכם קל יותר ללמוד פקודות מתקדמות יותר של תנועת הסמן.
173
174 רוב הפקודות של Emacs מקבלות ארגומנט נומרי; עבור רוב הפקודות הארגומנט
175 משמש כמונה של מספר החזרות על הפקודה. כדי לספק ארגומנט לפקודה, יש להקיש
176 C-u ואחר־כך ספרות, וזאת לפני שמקישים את הפקודה עצמה. עם במקלדת קיים
177 מקש META (או EDIT או ALT), יש גם אפשרות אחרת לציין ארגומנט נומרי:
178 הקישו את הספרות תוך כדי החזקת מקש META. אנו ממליצים על C-u משום שהוא
179 יעבוד עם כל מקלדת. הארגומנט הנומרי נקרא גם "ארגומנט קידומת" (prefix
180 argument) משום מקישים אותו לפני הפקודה אליה הוא מתייחס.
181
182 למשל, C-u 8 C-f מניע את הסמן 8 תוים קדימה.
183
184 >> נסו להקיש C-n או C-p עם ארגומנט נומרי, כדי להזיז את הסמן אל שורה
185 מסוימת בפקודה אחת בלבד.
186
187 רוב הפקודות מפרשות את הארגומנט הנומרי כמונה חזרות, אבל פקודות מסוימות
188 משתמשות בו בצורות אחרות. כמה פקודות (אבל אף אחת מבין אלו שלמדנו עד כה)
189 משתמשות בו כדגלון -- נוכחותו של הארגומנט, ללא קשר לערכו המספרי, גורמת
190 לפקודה להתנהג קצת אחרת.
191
192 ‏C-v ו־M-v יוצאים מהכלל הזה באופן אחר. כשפקודות אלו מקבלות ארגומנט,
193 הן גוללים את התצוגה כמספר הזה של שורות, ולא בדפים. למשל, C-u 8 C-v
194 יגלול את התצוגה ב־8 שורות.
195
196 >> נסו עתה להקיש C-u 8 C-v.
197
198 כתוצאה, התצוגה היתה צריכה לזוז ב־8 שורות. אם ברצונכם לגלול בחזרה,
199 אפשר להשיג זאת ע״י מתן ארגומנט ל־M-v.
200
201 אם הפעלתם את Emacs על־גבי תצוגה גרפית כגון X או MS-Windows, אתם
202 צריכים לראות פס צר וגבוה, ששמו פס גלילה (scroll bar) בצידו של החלון
203 של Emacs. ניתן לגלול את הטקסט ע״י הקלקת עכבר בתוך פס הגלילה.
204
205 אם העכבר שלכם מצויד בגלגל, תוכלו להשתמש גם בו לגלילת הטקסט.
206
207 * אם Emacs מפסיק להגיב
208 ----------------------
209
210 אם Emacs מפסיק להגיב לפקודות, תוכלו להפסיק אותו בבטחה ע״י הקשת C-g.
211 פקודות שביצוען מתארך אף הן ניתנות להפסקה בעזרת C-g.
212
213 בנוסף, תגרום הקשת C-g לביטול הארגומנט הנומרי או תחילת הפקודה שטרם
214 השלמתם להקיש והתחרטתם.
215
216 >> הקישו C-u 100 כדי לציין ארגומנט של 100, ולאחר מכן C-g. עתה הקישו
217 C-f. הוא צריך לנוע תו אחד בלבד, שכן ביטלתם את הארגומנט בעזרת C-g.
218
219 אם הקשתם <ESC> בטעות, ניתן לבטלו בעזרת C-g.
220
221 * פקודות מנוטרלות
222 -----------------
223
224 מספר פקודות ב־Emacs מנוטרלות בכוונה כדי שמשתמשים מתחילים לא יפעילו
225 אותן בדרך מקרה.
226
227 אם תקישו את אחת הפקודות הללו, Emacs יציג הודעה המתארת את הפקודה וישאל
228 אם לבצע את הפקודה או לבטלה.
229
230 אם אכן בכוונתכם לנסות את הפקודה, הקישו <SPC> (מקש הרווח) בתשובה לשאלה.
231 בדרך כלל, אם אינכם מעוניינים לבצע את הפקודה המנוטרלת, הקישו "n" בתשובה
232 לשאלה הזו.
233
234 * חלונות
235 --------
236
237 תצוגת Emacs יכולה לכלול יותר מחלון אחד, כשכל אחד מהם מציג טקסט משלו.
238 מאוחר יותר נסביר כיצד להשתמש בחלונות מרובים. כעת ברצוננו להסביר כיצד
239 להפטר מחלונות מנותרים ולחזור לעריכה בחלון יחיד. אין דבר פשוט מזה:
240
241 ‏C-x 1 חלון אחד בלבד (כלומר, סגור את כל החלונות האחרים).
242
243 כדי להפעיל פקודה זו, הקישו CONTROL-x ולאחריו את הספרה 1. הפקודה C-x 1
244 מרחיבה את החלון המציג את הסמן כך שהוא תופס את כל שטח התצוגה. הפקודה
245 מבטלת את שאר החלונות.
246
247 >> הניעו את הסמן לתוך שורה זו והקישו C-u 0 C-l.
248 >> עתה הקישו C-h k C-f.
249 שימו לב כיצד החלון הנוכחי מצטמצם ומופיע חלון חדש שבו מוצג
250 התיעוד של הפקודה C-f.
251
252 >> הקישו C-x 1 ושימו לב שהחלון עם ההסבר על C-f נעלם.
253
254 פקודה זו שונה מכל שאר הפקודות שלמדנו עד כה בכך שהיא מכילה שני תוים.
255 היא מתחילה עם התו CONTROL-x. פקודות רבות מאד מתחילות ב־CONTROL-x; חלק
256 גדול מהן עוסקות בחלונות, קבצים, חוצצים ונושאים דומים אחרים. פקודות אלו
257 מכילות שנים, שלושה ואפילו ארבעה תוים.
258
259
260 * הכנסה ומחיקה
261 --------------
262
263 אם ברצונכם להכניס טקסט, פשוט הקישו על המקשים המתאימים. תוים רגילים,
264 כגון A, א, 7, * וכד' מיד מתווספים לטקסט הקיים. הקישו <Return> (מקש
265 חזרת גרר שלעתים נהוג לקרוא לו "Enter") כדי להכניס את תו השורה החדשה
266 (Newline).
267
268 למחיקת התו האחרון שהקשתם הקישו <DEL>. בדרך כלל זהו מקש שמסומן
269 ב־"Backspace", והוא משמש אתכם למחיקת התו אחרון גם בתוכניות אחרות, לא
270 רק ב־Emacs.
271
272 יתכן שבמקלדת שלכם קיים מקש שעליו רשום <Delete>, אך זה אינו המקש שאנו
273 קוראים לו <DEL>.
274
275 >> הקישו עתה מספר תוים, ואחר־כך מחקו אותם ע״י הקשות אחדות
276 על <DEL>. אל תחששו לשנות את הקובץ הזה -- העותק המקורי
277 של השיעור יישאר ללא שינוי. אתם עובדים על העותק האישי שלכם.
278
279 כאשר שורה של טקסט נעשית ארוכה משורה אחת של תצוגה, חלק מהטקסט ממשיך
280 בשורת תצוגה נוספת, היא "שורת ההמשך". על תצוגה גרפית יופיע חץ עקלקל קטן
281 באזור השוליים -- "fringe" שמסמל כי לשורה יש שורת המשך, ואילו על תצוגה
282 טקסטואלית יופיע תו לוכסן ('/' או '\', תלוי אם הוא בצד שמאל או בצד ימין)
283 לאותה תכלית, בסוף השורה.
284
285 >> הקישו טקסט עד שתגיעו לקצה השורה, ואז תמשיכו להקיש עוד טקסט.
286 כתוצאה, תראו שמופיעה שורת המשך.
287
288 >> עתה הקישו <DEL> על־מנת למחוק טקסט עד שהשורה תיעשה קצרה מספיק
289 ותתאים לשורה בודדת על־גבי התצוגה. שורת ההמשך תיעלם.
290
291 ניתן למחוק את תו ה־Newline כמו כל תו אחר. מחיקת ה־Newline בין שתי
292 שורות תמזג את השורות לשורה אחת. אם השורה המשולבת תהיה ארוכה מרוחב
293 התצוגה, היא תוצג עם שורת המשך.
294
295 >> הניעו את הסמן לתחילת השורה והקישו <DEL>. כתוצאה, השורה תתמזג
296 אם קודמתה.
297
298 >> עתה הקישו <Return> כדי להחזיר את ה־Newline שמחקתם.
299
300 מקש <Return> הוא מיוחד בכך שהקשה עליו עשויה לגרום יותר מהכנסת תו
301 ה־Newline. בתלות בטקסט מסביב יתכן כי Emacs יכניס תווי רווח או TAB אחרי
302 תו ה־Newline, וזאת כדי ליישר את תחילת השורה החדשה עם הטקסט בשורה
303 הקודמת. התנהגות זו, שבה הקשה על מקש גורמת לתוצאות מעבר להכנסה פשוטה של
304 התו המתאים, נקראת "חשמלית" ("electric").
305
306 זכרו כי לרוב הפקודות ב־Emacs אפשר לציין מספר חזרות. גם תוי טקסט
307 שייכים לקבוצת פקודות זו. חזרה על תו טקסט מכניסה אותו מספר פעמים.
308
309 >> נסו זאת עכשיו -- הקישו ‪C-u 8 *‬ על־מנת להכניס ********.
310
311 ובכן, למדתם את האופן הבסיסי ביותר להדפיס משהו ב־Emacs ולתקן שגיאות.
312 אפשר למחוק גם מלים ואף שורות שלמות. להלן סיכום פקודות המחיקה:
313
314 ‏<DEL> מחק תו שלפני הסמן
315 ‏C-d מחק תו מתחת או אחרי הסמן
316
317 ‏‪M-<DEL>‬ גזור מילה שלפני הסמן
318 ‏M-d גזור מילה שאחרי הסמן
319
320 ‏C-k גזור טקסט מהסמן ועד סוף השורה
321 ‏M-k גזור טקסט עד סוף המשפט הנוכחי.
322
323 שימו לב שהיחס בין <DEL> ו־C-d לעומת M-<DEL>‎ ו־M-d ממשיכים את ההקבלה
324 שבין C-f ו־M-f (אמנם <DEL> איננו תו בקרה, אבל בוא נזניח את הנקודה הזו
325 לעת־עתה). C-k ו־M-k דומים ל־C-e ו־M-e, אם נקביל שורות למשפטים.
326
327 בנוסף, קיימת שיטה אחידה שמאפשרת לגזור קטע כלשהו של טקסט. לשם כך, תגיעו
328 לקצה האחד של חלק הטקסט והקישו C-<SPC>‎. (<SPC> הוא מקש הרווח.) עתה
329 הניעו את הסמן לקצה השני של חלק הטקסט אשר ברצונכם לגזור. תוך כדי תנועת
330 הסמן Emacs צובע את הטקסט בין הסמן לבין המקום בו הקשתם C-<SPC>‎. לבסוף,
331 הקישו C-w. כתוצאה, כל הטקסט בין שני המקומות הללו ייגזר.
332
333 >> הניעו את הסמן אל האות ב בתחילת הפיסקה הקודמת.
334 >> הקישו C-<SPC>‎. ‏Emacs צריך להציג הודעה האומרת "Mark set" בתחתית
335 התצוגה.
336 >> הניעו את הסמן אל האות צ בשורה השניה של הפיסקה.
337 >> הקישו C-w. בכך תגזרו את חלק הטקסט שמתחיל ב־ב ומסתיים לפני ה־צ.
338
339 ההבדל בין "מחיקה" ("deletion") ו־"גזירה" ("killing") הוא שהטקסט
340 "הגזור" ניתן לאחזור ולהכנסה (במקום כלשהוא בטקסט), ואילו טקסט "מחוק" לא
341 ניתן להכניס מחדש בשיטה זו. (אבל ניתן לבטל את מחיקה -- ראה להלן.) אחזור
342 הטקסט הגזור נקרא "הדבקה" ("yanking"). באופן כללי, פקודות אשר עלולות
343 להעלים כמויות גדולות של טקסט תמיד גוזרות את הטקסט (כך שניתן יהיה בקלות
344 לשחזרו) בעוד הפקודות שמורידות תו בודד או שורות ריקות ותוי רווח --
345 מוחקות (כך שלא ניתן להדביק את הטקסט שנמחק). כך, <DEL> ו־C-d מוחקים
346 כאשר מפעילים אותם ללא ארגומנט, אבל גוזרים כאשר מפעילים אותם עם ארגומנט.
347
348 >> הניעו את הסמן לתחילת שורה שאינה ריקה. אחר־כך הקישו C-k כדי לגזור
349 את כל הטקסט של אותה שורה.
350 >> הקישו C-k פעם נוספת. שימו לב שהוא גוזר את ה־Newline שבסוף השורה.
351
352 שימו לב ש־C-k בודד גוזר את תכולת השורה, ו־C-k נוסף גוזר גם את השורה
353 עצמה וגורם לשאר השורות לנוע כלפי מעלה. C-k מפרש את הארגומנט הנומרי
354 באופן מיוחד: הוא גוזר כמספר הזה שורות, כולל ה־Newlines שלהן. זה שונה
355 מסתם הפעלה חוזרת: C-u 2 C-k גוזר שתי שורות כולל ה־Newlines שלהן,
356 ואילו הקשה על C-k פעמיים לא עושה כן.
357
358 אחזור הטקסט שגזרנו נקרא "הדבקה" ("yanking"). (תחשבו על זה כעל שליפה
359 של טקסט מתהום הנשייה אליה הוא נלקח.) ניתן להדביק את הטקסט שגזרתם
360 באותו מקום ממנו נגזר או במקום אחר כלשהו בתוך הטקסט שאתם עורכים, או
361 אפילו בקובץ אחר. ניתן להדביק את אותו הטקסט מספר פעמים ובכך ליצור
362 עותקים מרובים ממנו. תוכניות עריכה אחרות משתמשות במונחים "cutting"
363 ו־"pasting" במקום "killing" ו־"yanking" (ראה את מילון המונחים בפרק
364 ה־"Glossary" של מדריך למשתמשי Emacs).
365
366 הפקודה להדבקה היא C-y. היא מכניסה את הטקסט הגזור במקום הנוכחי של הסמן.
367
368 >> נסו זאת: הקישו C-y כדי לאחזר טקסט שגזרתם קודם לכן.
369
370 אם תקישו C-k מספר פעמים ברצף, כל הטקסט שגזרתם בדרך זו נשמר ביחד, כך
371 ש־C-y בודד ידביק את כולו בבת אחת.
372
373 >> עשו זאת עתה: הקישו C-k כמה פעמים.
374
375 עכשיו לאחזור הטקסט שגזרתם:
376
377 >> הקישו C-y. אחר־כך הניעו את הסמן כמה שורות כלפי מטה והקישו C-y שוב.
378 כפי שראיתם, כך תוכלו להעתיק חלק מהטקסט ממקום למקום.
379
380 מה לעשות אם יש לכם טקסט להדבקה, אבל בינתיים גזרתם טקסט אחר? C-y ידביק
381 רק את הגזירה האחרונה. אולם הטקסט שגזרתם קודם לכן אינו הלך לאיבוד. ניתן
382 לאחזרו בעזרת הפקודה M-y. אחרי שהקשתם C-y שמדביק את הטקסט שגזרתם
383 לאחרונה, הקשה על M-y מחליפה את הטקסט המודבק בטקסט שגזרתם בפעם לפני
384 האחרונה. הקשה חוזרת ונשנית על M-y מביאה טקסט שגזרתם בפעמים קודמות יותר
385 ויותר. כשתראו שהטקסט המודבק הוא מה שרציתם להדביק, תפסיקו להקיש M-y
386 ותמשיכו בעריכה כרגיל. אין צורך בשום פקודה מיוחדת לשם כך.
387
388 אם תקישו M-y מספיק פעמים בזו אחר זו, תגיעו חזרה לנקודת ההתחלה (טקסט
389 שגזרתם לאחרונה).
390
391 >> גזרו שורה, אחר־כך תניעו את הסמן אנה ואנה, ולבסוף גזרו שורה נוספת.
392 הקישו C-y כדי לאחזר את השורה השניה שגזרתם.
393 עתה הקישו M-y והשורה שאחזרתם תוחלף בשורה הראשונה שגזרתם.
394 הקישו M-y מספר פעמים נוספות ושימו לב לתוצאות. המשיכו להקיש M-y
395 עד שהשורה השניה שגזרתם תופיע שוב, ואז תמשיכו עוד מספר פעמים.
396 אם תרצו, תוכלו לנסות M-y עם ארגומנט חיובי או שלילי.
397
398
399 * ביטול פעולות
400 --------------
401
402 אם שיניתם את הטקסט ואז החלטתם שהשינוי היה טעות, תוכלו לבטל את השינוי
403 בעזרת פקודת הביטול, ‪C-/‬.
404
405 בדרך כלל,‪C-/‬ מבטל את השינויים שבוצעו ע״י פקודה אחת. הפעלה חוזרת של
406 ‪C-/‬ ברצף מבטלת שינויים של פקודות קודמות, אחת אחרי השניה.
407
408 שני יוצאים מהכלל הזה: פקודות שאינן משנות טקסט (למשל פקודות הנעת הסמן
409 ופקודות גלילה) אינן נספרות ותוים שמכניסים את עצמם מקובצים בקבוצות של
410 עד 20, כדי להקטין את מספר הפעמים שיש להקיש ‪C-/‬ כדי לבטל הכנסת טקסט.
411
412 >> גזרו שורה זו עם C-k, אחר־כך הקישו ‪C-/‬ והיא תופיע שוב.
413
414 ‏C-_‎ הינה דרך חלופית להפעיל את פקודת הביטול. היא פועלת בדיוק כמו ‪C-/‬.
415 במקלדות אחדות הקשה על ‪C-/‬ שולחת ל־Emacs את התו C-_‎. חלופה נוספת היא
416 C-x u, אם־כי היא פחות נוחה להקשה מספר פעמים בזו אחר זו.
417
418 ארגומנט נומרי ל־‪C-/‬ או ל־C-_‎ או ל־C-x u משמש כמספר החזרות על הפקודה.
419
420 ניתן לבטל מחיקה של טקסט בדיוק כמו שניתן לבטל גזירה. ההבדלים בין מחיקה
421 וגזירה משפיעים על יכולתכם להדביק את הטקסט הגזור עם C-y; הם אינם חשובים
422 לעניין הביטול.
423
424
425 * קבצים
426 -------
427
428 על־מנת שהטקסט שערכתם יישמר, יש לשים אותו בקובץ. אחרת, הוא ייעלם ברגע
429 שתצאו מ־Emacs. כדי לשים את הטקס בקובץ, יש "לפתוח" ("find") את הקובץ
430 לפני שמתחילים להקיש טקסט. (שם אחר לכך הוא "לפקוד" את הקובץ - "visit".)
431
432 פתיחת הקובץ משמעותה שתוכן הקובץ מוצג בתוך Emacs. מבחינות רבות הדבר
433 דומה לעריכת הקובץ עצמו. אולם, השוניים שלכם בתוך Emacs אינם הופכים חלק
434 מהקובץ עד שאתם "שומרים" את הקובץ. זאת, כדי להימנע מיצירת קובץ שאינו
435 שלם במערכת שלא כרצונכם. אפילו אם אתם שומרים את הקובץ, Emacs משאיר את
436 התוכן המקורי בשם שונה למקרה שמאוחר יותר תחליטו שהשינויים נעשו בטעות.
437
438 אם תביטו בחלק התחתון של התצוגה, תראו שם שורה בולטת שמתחילה במקפים וליד
439 הקצה השמאלי שלה כתוב "TUTORIAL.he". חלק זה של התצוגה בדרך כלל מציג את
440 שם הקובץ אותו אתם פוקדים. כרגע אתם פוקדים קובץ בשם "TUTORIAL.he" שהוא
441 עותק הטיוטה האישי שלכם של שיעור השימוש ב־Emacs. פתיחת קובץ כלשהו
442 ב־Emacs תציג את שמו של הקובץ במקום זה.
443
444 היבט אחד מיוחד של פתיחת קובץ הוא שיש לציין את שם הקובץ אשר ברצונכם
445 לפתוח. אנו אומרים שהפקודה "קוראת ארגומנט" (במקרה זה הארגומנט הוא שם
446 הקובץ). אחרי שתקישו את הפקודה
447
448 ‏C-x C-f פתח קובץ
449
450 ‏Emacs מבקש שתקישו את שם הקובץ. שם הקובץ שתקישו מופיע בשורה התחתונה של
451 התצוגה. שורה זו נקראת "מיני־חוצץ" ("minibuffer") כשהיא משמשת לסוג זה
452 של קלט. ניתן להשתמש בכל פקודות העריכה הרגילות של Emacs כשמקישים את
453 שם הקובץ בחוצץ זה.
454
455 אם טרם סיימתם להקיש את שם הקובץ (או כל סוג אחר של קלט במיני־חוצץ),
456 ניתן לבטל את הפקודה בעזרת C-g.
457
458 >> הקישו C-x C-f ואחר־כך הקישו C-g. זה מבטל את המיני־חוצץ וגם מבטל
459 את הפקודה C-x C-f שהשתמשה במיני־חוצץ. התוצאה היא שאף קובץ לא נפתח.
460
461 משסיימתם להקיש את שם הקובץ, הקישו <Return> לסיים את הקלט. או־אז
462 המיני־חוצץ נעלם והפקודה C-x C-f תיגש לעבודה ותמצא ותפתח את הקובץ
463 שבחרתם. כאשר פקודת ה־C-x C-f תסיים את עבודתה, תוכן הקובץ יופיע על־גבי
464 התצוגה ותוכלו לבצע בו שינויים. כשתחליטו לשמור את השינויים, הקישו את
465 הפקודה הבאה:
466
467 ‏C-x C-s שמור את הקובץ
468
469 פקודה זו שומרת בקובץ את הטקסט המוחזק בתוך Emacs. בפעם הראשונה שתפעילו
470 פקודה זו, Emacs משנה את שם הקובץ המקורי לשם חדש כך שהמקור לא ילך
471 לאיבוד. השם החדש נוצר ע״י הוספת "~" בסוף השם המקורי של הקובץ.
472
473 כשהשמירה מסתיימת, Emacs מציג בשורה התחתונה את שם הקובץ שנשמר. נסו
474 לשמור לעתים מזומנות על־מנת להימנע מלאבד יותר מדי מהעבודה שלכם אם המחשב
475 ייפול (ראה להלן פיסקה על שמירה אוטומטית).
476
477 >> הקישו C-x C-s TUTORIAL.he ותסיימו בהקשת <Return>. כתוצאה, שיעור זה
478 יישמר בקובץ בשם TUTORIAL.he ובתחתית התצוגה תופיע ההודעה
479 "Wrote ...TUTORIAL.he".
480
481 ניתן לפתוח קובץ קיים על־מנת לצפות בו או לערוך אותו. ניתן גם לפתוח קובץ
482 שאינו קיים. זו הדרך ליצור קבצים חדשים בעזרת Emacs: פתחו את הקובץ
483 שיהיה תחילה ריק ואז התחילו להקיש טקסט לתוכו. כשתפעילו את פקודת השמירה,
484 Emacs ייצור את הקובץ עם הטקסט שהקשתם. מאותו רגע ואילך, תוכלו לחשוב
485 שהינכם עורכים קובץ קיים.
486
487
488 * חוצצים
489 --------
490
491 אם תפתחו קובץ נוסף עם C-x C-f, הקובץ הראשון עדיין נשאר פתוח ב־Emacs.
492 תוכלו לחזור אליו ע״י C-x C-f. כך תוכלו לפתוח מספר רב של קבצים.
493
494 ‏Emacs מחזיק כל קובץ בתוך יישות בשם "חוצץ" ("buffer"). פתיחת קובץ יוצרת
495 חוצץ חדש בתוך Emacs. כדי לראות את רשימת החוצצים הקיימים בתוך Emacs,
496 הקישו
497
498 ‏C-x C-b הצג רשימת כל החוצצים
499
500 >> נסו את C-x C-b בנקודה זו.
501
502 שימו לב שלכל חוצץ יש שם וכל חוצץ עשוי גם לציין את שם הקובץ שאת תוכנו
503 הוא מחזיק. כל טקסט שאתם מקישים בחלון Emacs תמיד יהיה חלק של חוצץ
504 כלשהו.
505
506 >> הקישו C-x 1 כדי להפטר מרשימת החוצצים.
507
508 כשקיימים מספר חוצצים, רק אחד מהם יכול להיות החוצץ "הנוכחי" בכל רגע
509 נתון. זהו החוצץ בו אתם מבצעים עריכה באותו רגע. אם ברצונכם לערוך חוצץ
510 אחר, עליכם "לעבור" חוצץ. עבור חוצצים שמתאימים לקבצים, ניתן לעשות זאת
511 ע״י C-x C-f שיפקוד את הקובץ בשנית. אבל קיימת דרך פשוטה יותר: שימוש
512 בפקודה C-x b. פקודה זו תחייב אותכם להקיש את שם החוצץ.
513
514 >> ניצור עתה קובץ בשם "foo" ע״י הקשת C-x C-f foo <Return>‎.
515 עתה חזרו לשיעור זה בעזרת C-x b TUTORIAL.he <Return>‎.
516
517 ברוב המקרים שם החוצץ זהה לשם הקובץ (ללא שם התיקיה שלו). אבל אין זה
518 תמיד כך. רשימת החוצצים שנוצרת ע״י C-x C-b תציג הן את שם החוצץ והן את
519 שם הקובץ עבור כל החוצצים הקיימים ב־Emacs.
520
521 כל טקסט שמוצג בחלון של Emacs הינו תמיד חלק של חוצץ כלשהו. קיימים
522 חוצצים שאינם קשורים לשום קובץ. לדוגמא, החוצץ בשם "*Buffer List*"
523 המחזיק את רשימת החוצצים שנוצרה ע״י C-x C-b אינו מציג שום קובץ. גם
524 לחוצץ הנוכחי ששמו TUTORIAL.he לא היה קובץ עד שהקשתם על C-x C-s כדי
525 לשמור אותו בקובץ.
526
527 חוצץ בשם "*Messages*" אף הוא אינו קשור לשום קובץ; הוא מחזיק את ההודעות
528 שהופיעו בשורה התחתונה במהלך עבודתכם בתוך Emacs.
529
530 >> הקישו C-x b *Messages* <Return>‎ כדי לצפות בחוצץ של הודעות.
531 אחר־כך הקישו C-x b TUTORIAL.he <Return>‎ על־מנת לחזור לשיעור זה.
532
533 אם עשיתם שינויים בטקסט של קובץ ואחר־כך פתחתם קובץ אחר, אין הדבר שומר
534 את השינויים שעשיתם לקובץ הראשון. השינויים הללו נשארים בתוך Emacs, בתוך
535 החוצץ של אותו קובץ. יצירתו ועריכתו של הקובץ הנוסף אינם משפיעים על
536 החוצץ של הקובץ הראשון. דבר זה הוא שימושי, אך משמעותו היא שיש צורך
537 בשיטה נוחה לשמור את החוצץ של הקובץ הראשון. היה זה מאד לא נוח אילו
538 לשם כך הייתם צריכים לעבור לחוצץ ההוא בעזרת C-x C-f ואז לשמור עם
539 C-x C-s. לכן קיימת פקודה
540
541 ‏C-x s שמור חוצצים אחדים
542
543 ‏C-x s עובר על כל החוצצים אשר מכילים שינויים שטרם נשמרו. לגבי כל חוצץ
544 כזה הוא שואל אתכם האם לשמור אותו או לא.
545
546 >> הכניסו שורה של טקסט ואחר־כך הקישו C-x s.
547 הוא צריך לשאול האם לשמור חוצץ בשם TUTORIAL.he.
548 השיבו בחיוב ע״י הקשה על "y".
549
550
551 * הרחבת אוסף הפקודות
552 --------------------
553
554 מספר הפקודות ב־Emacs גדול בהרבה ממה שניתן להפעיל ע״י כל תוי ה־control
555 וה־meta. כדי להתגבר על בעיה זו, Emacs משתמש בפקודות X המרחיבות (eXtend)
556 את אוסף הפקודות הרגיל. פקודות הרחבה אלו הן שתים:
557
558 ‏C-x הרחבת תו. תו בודד שבא אחריו משלים את הפקודה.
559 ‏M-x הרחבה ע״י שם הפקודה. אחריו בא שם ארוך של פקודה.
560
561 בעזרת שתי אלו ניתן להפעיל פקודות שימושיות שבהן משתמשים לעתים רחוקות
562 יותר מאשר פקודות שלמדתם עד עכשיו. כמה מהן כבר ראיתם: C-x C-f לפתיחת
563 קובץ, ו־C-x C-s לשמירת קובץ, לדוגמא. דוגמא נוספת היא פקודה לצאת
564 מ־Emacs -- ‏C-x C-c. (כשאתם מפעילים C-x C-c, אל תדאגו לשינויים שטרם
565 נשמרו; C-x C-c מציע לשמור כל קובץ ששיניתם לפני שהוא מסיים את Emacs.)
566
567 אם אתם משתמשים בצג גרפי, אינכם זקוקים לפקודה מיוחדת כדי לעבור מ־Emacs
568 לתוכנית אחרת. אפשר לעשות זאת בעזרת העכבר או פקודות של מנהל החלונות.
569 אולם, כאשר אתם משתמשים בתצוגה טקסטואלית שמסוגלת להציג רק תוכנית אחת
570 בו־זמנית, תצטרכו "להשעות" ("suspend") את Emacs על־מנת לעבור לתוכנית
571 אחרת.
572
573 הפקודה C-z יוצאת מ־Emacs *באופן זמני* -- כך שתוכלו לשוב אליו מאוחר
574 יותר ולהמשיך מאותה נקודה. כאשר Emacs רץ על תצוגת טקסט, C-z "משעה" את
575 Emacs: הוא מחזיר אתכם לשורת הפקודות הבסיסית של מערכת ההפעלה ("shell"),
576 אבל אינו מסיים את Emacs. ברוב המערכות, כדי להמשיך בעבודתכם ב־Emacs,
577 תצטרכו להקיש את הפקודה "fg" או ‪"%emacs"‬.
578
579 הרגע הנכון להשתמש ב־C-x C-c הוא כאשר אתם עומדים להתנתק (log out).
580 כמו־כן, תצטרכו להשתמש בו כדי לצאת מ־Emacs שהופעל ע״י תוכניות אחרות
581 כגון קריאת דואר אלקטרוני.
582
583 קיימות פקודות C-x רבות מאד. להלן רשימת אלו שכבר למדתם:
584
585 ‏C-x C-f פתח קובץ
586 ‏C-x C-s שמור קובץ
587 ‏C-x s שמור חוצצים אחדים
588 ‏C-x C-b הצג רשימת חוצצים
589 ‏C-x b החלף חוצץ
590 ‏C-x C-c צא מ־Emacs
591 ‏C-x 1 השאר רק חלון אחד ומחק כל השאר
592 ‏C-x u בטל פקודה אחרונה
593
594 הרחבה ע״י שם הפקודה שימושית עם פקודות עוד יותר נדירות או פקודות
595 ספציפיות רק לאופני פעולה (modes) מיוחדים. דוגמא לכך היא פקודה
596 replace-string (החלף מחרוזת) אשר מחליפה מחרוזת אחת במשנה בכל החוצץ.
597 אחרי שתקישו M-x, ‏Emacs מציג M-x בתחתית התצוגה ומחכה שתקישו את שם
598 הפקודה, במקרה זה "replace-string". מספיק שתקישו "repl s<TAB>‎" ו־Emacs
599 ישלים את השם המלא. (<TAB> הוא מקש Tab, בדרך כלל תמצאו אותו מעל מקש
600 ה־CapsLock או Shift, ליד הקצה השמאלי של המקלדת.) סיימו את הזנת הפקודה
601 ע״י הקשת <Return>.
602
603 הפקודה להחלפת מחרוזת זקוקה לשני ארגומנטים -- המחרוזת שתוחלף וזו שתחליף
604 אותה. סיימו הקשה של כל אחת מהן ע״י <Return>.
605
606 >> הביאו את הסמן שתי שורות מתחת לשורה זו.
607 עתה הקישו M-x repl s<Return>changed<Return>altered<Return>‎.
608
609 שימו לב שהמילה "changed" בשורה זו שתנתה: זה עתה החלפתם את
610 המילה c-h-a-n-g-e-d במילה "altered" בכל מקום בו היא נמצאת אחרי
611 הסמן.
612
613
614 * שמירה אוטומטית
615 ----------------
616
617 שינויים שערכתם בקובץ אבל טרם שמרתם עלולים ללכת לאיבוד אם המחשב שלכם
618 נתקע. על־מנת להגן עליכם מפני סכנה זו, Emacs שומר לעתים מזומנות כל קובץ
619 שנמצא בעריכה. השמירה האוטומטית הזאת נעשית לקובץ נפרד ששמו מתחיל
620 ומסתיים בתו #. לדוגמא, אם הינכם עורכים קובץ בשם "hello.c", קובץ השמירה
621 האוטומטית שיווצר עבורו ייקרא "#hello.c#". שמירה רגילה של הקובץ על ידכם
622 מוחקת את קובץ השמירה האוטומטית.
623
624 אם המחשב אכן נתקע, תוכלו לנציל את השינויים שלא הספקתם לשמור. לשם כך,
625 יש לפתוח את הקובץ כרגיל (את הקובץ בשמו המקורי, לא את קובץ השמירה
626 האוטומטית), ואחר־כך להקיש M-x recover-file <Return>‎. כש־Emacs יבקש
627 אישור, הקישו yes<Return>‎ כדי ש־Emacs ישחזר את הקובץ כפי שנשמר
628 אוטומטית.
629
630
631 * תצוגת הד
632 ----------
633
634 אם Emacs מגלה שאתם מקישים פקודה לאט, הוא מציג את שהקשתם בתחתית התצוגה,
635 באזור שנקרא "אזור תצוגת הד". אזור זה משתמש בשורה התחתונה של התצוגה.
636
637
638 * שורת סטטוס
639 ------------
640
641 השורה שמעל אזור תצוגת הד נקראת "שורת הסטטוס" (mode line). שורה זו
642 מציגה משהו כמו:
643
644 U:**- TUTORIAL.he 63% L651 (Fundamental)
645
646 שורה זו מציגה מידע חשוב לגבי מצבו של Emacs ולגבי הטקסט שנמצא בעריכה.
647
648 אתם כבר יודעים מהי משמעותו של שם הקובץ -- זהו הקובץ שפתחתם. NN%‎ מציין
649 את מיקומכם הנוכחי בתוך הטקסט, לאמור כי NN אחוזים מתכולת החוצץ קודמים
650 לטקסט המוצג כרגע בחלון. אם המוצג בחלון כולל את תחילת הטקסט, תראו שם
651 "Top" במקום "0% ". אם המוצג בחלון כולל את סוף הטקסט, תראו שם "Bot"
652 ‏(bottom). אם הטקסט כל־כך קצר שכולו מוצג בחלון, שורת הסטטוס תציג "All".
653
654 האות L והמספר שאחריה מציינים את המיקום הנוכחי בדרך אחרת: הם מראים את
655 מספר השורה שבה נמצא הסמן.
656
657 הכוכביות ליד הקצה השמאלי משמעותן כי שיניתם את הטקסט. מיד אחרי פתיחת
658 הקובץ או אחרי שמירתו החלק הזה של שורת הסטטוס אינו מציג כוכביות, אלא רק
659 מקפים.
660
661 החלק שבתוך הסוגריים אומר לכם מהo אופני העריכה (editing modes) הפעילים
662 כעת. ברירת המחדל היא Fundamental, האופן הבסיס, שבו אתם משתמשים כעת.
663 זוהי דוגמא של "אופן עריכה ראשי" (major mode).
664
665 ל־Emacs אופני עריכה ראשיים רבים ומגוונים. חלק מהם נועדו לעריכה של שפת
666 תכנות מסוימת ו/או סוג מסוים של טקסט, כגון Lisp mode, Text mode וכד'.
667 בכל רגע נתון רק אופן עיקרי אחד יכול להיות פעיל ושמו תמיד מצויין בשורת
668 הסטטוס באותו מקום בו כרגע אתם רואים "Fundamental".
669
670 כל אופן עיקרי גורם לכמה פקודות לפעול בצורה מיוחדת. למשל, ישנן פקודות
671 ליצירת הערות בתוך תוכנית, והיות וכל שפת תכנות מגדירה את הפורמט של
672 הערות בצורה אחרת, כל אופן עיקרי חייב להכניס הערות בצורה שמתאימה לשפה.
673 כל אופן עיקרי הינו למעשה שם הפקודה שבעזרתה אפשר להפעיל את אותו האופן.
674 למשל הפקודה להפעיל את האופן Fundamental הינה M-x fundamental-mode.
675
676 אם בכוונתכם לערוך טקסט בשפה אנושית כלשהי, כמו הקובץ הזה, כדאי לכם
677 להשתמש ב־Text mode.
678
679 >> הקישו M-x text-mode <Return>‎.
680
681 אל דאגה: אף אחת מפקודות Emacs שלמדתם עד כה משנה את התנהגותה באופן
682 מהותי. עם זאת, שימו לב ש־M-f ו־M-b מתייחסים עכשיו ל־'גרש' כחלק מהמילה.
683 לפני־כן, ב־Fundamental mode, ‏M-f ו־M-b התנהגו עם הגרש כמפריד בין
684 מילים.
685
686 אופנים ראשיים בדרך־כלל משנים קלות את התנהגות הפקודות: רוב הפקודות
687 עדיין "עושות אותה עבודה" בכל האופנים הראשיים, אבל עושות אותה קצת אחרת.
688
689 לצפיה בתיעוד של האופן הראשי הנוכחי יש להקיש C-h m.
690
691 >> הקישו C-l C-l כדי להביא שורה זו לראשית התצוגה.
692 >> עתה הקישו C-h m כדי לראות במה Text mode שונה מה־Fundamental mode.
693 >> לבסוף, הקישו C-x 1 כדי לסלק את התיעוד מהתצוגה.
694
695 אופנים ראשיים נקראים כך משום שקיימים גם אופני־משנה (minor modes).
696 אופני משנה אינם מהווים חלופה לאופנים הראשיים, הם רק משנים אותם במקצת.
697 כל אופן־משנה ניתן להפעלה או ביטול ללא תלות בכל שאר אופני המשנה וללא
698 תלות באופן הראשי הנוכחי. לכן תוכלו להפעיל אופן־משנה אחד או יותר, או אף
699 אופן־משנה.
700
701 אחד מאופני־המשנה השימושיים ביותר, במיוחד לשם עריכת טקס בשפת־אנוש, הוא
702 Auto Fill mode. כאשר אופן זה מופעל, Emacs אוטומטית פותח שורה חדשה
703 בסיום מילה אם הטקסט שהקשתם ארוך מדי בשביל שורה אחת.
704
705 להפעלת Auto Fill mode יש להקיש M-x auto-fill-mode <Return>‎. כאשר אופן
706 זה מופעל, ניתן לבטלו ע״י M-x auto-fill-mode <Return>‎. זאת אומרת, פקודה
707 זו מפעילה את האופן כשאינו פעיל ומבטלת אותו כשהוא פעיל. לפעולה זו
708 קוראים "מיתוג" -- הפקודה "ממתגת" את האופן.
709
710 >> הקישו עתה M-x auto-fill-mode <Return>‎. אחר־כך הקישו "שדגכ " (עם
711 הרווח בסוף) שוב ושוב עד שתיפתח שורה חדשה. הרווחים חשובים משום
712 ש־Auto Fill mode שובר שורות אך ורק ברווח שבין המלים.
713
714 השוליים (margin) ש־Emacs שומר בדרך־כלל מתחילים אחרי 70 תווים, אבל ניתן
715 לשנות הגדרה זו בעזרת הפקודה C-x f. פקודה זו מקבלת את ההגדרה החדשה של
716 השוליים כארגומנט נומרי.
717
718 >> הקישו C-x f עם ארגומנט של 20. (C-u 2 0 C-x f). אחר־כך הקישו טקסט
719 כלשהו ושימו לב ש־Emacs פותח שורות חדשות אחרי 20 תווים לכל היותר.
720 לבסוף, החזירו את הגדרת השוליים ל־70 ע״י שימוש חוזר ב־C-x f.
721
722 אם ערכתם שינויים באמצע פסקה, Auto Fill mode לא ימלא שורות מחדש באופן
723 אוטומטי.
724 כדי למלא מחדש את כל הפסקה הקישו M-q ‏(META-q) כשהסמן נמצא בתוך
725 הפסקה.
726
727 >> הניעו את הסמן לתוך הפסקה הקודמת והקישו M-q.
728
729
730 * חיפוש
731 -------
732
733 ‏Emacs יכול לחפש מחרוזות (רצף של תווים) קדימה או אחורה בתוך הטקסט.
734 חיפוש של מחרוזת הוא סוג של פקודה להנעת הסמן: הוא ממקם את הסמן היכן
735 שנמצאה המחרוזת הבאה.
736
737 החיפוש של Emacs הינו "מצטבר" ("incremental"). פירוש הדבר הוא שהחיפוש
738 מתבצע במקביל להקשתכם את המחרוזת אותה ברצונכם למצוא.
739
740 הפקודה להתחיל בחיפוש היא C-s לחיפוש קדימה ו־C-r לחיפוש אחורה. חכו! אל
741 תפעילו אותן עדיין.
742
743 כשתקישו C-s, תראו שבאזור תצוגת ההד יופיע הטקסט "I-search". זה אומר
744 ש־Emacs נמצא במצב "חיפוש מצטבר" ("incremental search") והוא ממתין
745 להקשתכם את המחרוזת אותה ברצונכם למצוא. הקשה על <Return> מסיימת את
746 החיפוש.
747
748 >> הקישו עתה C-s כדי להתחיל בחיפוש. לאט־לאט, אות־אות, הקישו את המילה
749 "סמן", עם הפסקה אחרי כל אות, ושימו לב להתנהגות הסמן.
750 זה עתה מצאתם את המילה "סמן" פעם אחת.
751 >> הקישו C-s שוב, כדי למצוא את "סמן" במקומות נוספים בטקסט.
752 >> הקישו <DEL> שלוש פעמים ושימו לב לתנועת הסמן בכל הקשה.
753 >> הקישו <Return> לסיום החיפוש.
754
755 האם שמתם לב למה שקרה? במהלך "חיפוש מצטבר" Emacs מנסה למצוא את המקום
756 הבא בו מופיעה המחרוזת שהקשתם. כדי למצוא את המחרוזת במקום הבא, פשוט
757 הקישו C-s פעם נוספת. אם המחרוזת אינה נמצאת בהמשך הטקסט, Emacs מצפצף
758 ומודיע שהחיפוש נכנס למצב של "כשלון" ("failing"). הקשה על C-g גם היא
759 מסיימת את החיפוש.
760
761 אם במהלך החיפוש תקישו על <DEL>, החיפוש "נסוג" למצב קודם. אם הקשתם
762 <DEL> מיד אחרי C-s, הקשת <DEL> מחזירה את הסמן למקום הקודם בו נמצאה
763 המחרוזת. אם אין מקומות קודמים בהם מופיעה המחרוזת, הקשת <DEL> מוחקת את
764 התו האחרון של המחרוזת המבוקשת. למשל, נניח שהקשתם "ס" על־מנת למצוא את
765 המקום הבא בו מופיעה האות "ס". אם עכשיו תקישו "מ", הסמן יזוז למקום בו
766 נמצא "סמ". עתה הקישו <DEL>. ה־"מ" נמחק מהמחרוזת והסמן חוזר למקום בו
767 הוא מצא את "ס" לראשונה.
768
769 אם במהלך החיפוש תפעילו פקודה כלשהי ע״י הקשה על מקש תוך לחיצה על
770 CONTROL או META, החיפוש יסתיים. (כמה תווים יוצאים מכלל זה -- אלו תווים
771 מיוחדים בעת חיפוש, כדוגמת C-s ו־C-r.)
772
773 הקשה על C-s מתחילה חיפוש שמנסה למצוא את המחרוזת _אחרי_ הסמן. אם
774 ברצונכם למצוא משהו בטקסט הקודם למקום הנוכחי, הקישו C-r במקום C-s. כל
775 מה שאמרנו לגבי C-s תקף גם לגבי C-r, אלא שכיוון החיפוש מתהפך.
776
777
778 * חלונות מרובים
779 ---------------
780
781 אחת התכונות הנוחות של Emacs היא כי ניתן להציג יותר מחלון אחד על המסך
782 בו־זמנית. (הערה: Emacs משתמש במונח "frame" -- "תבנית" -- בשביל מה
783 שתוכניות אחרות מכנות "חלון". תבניות מתוארות בפסקה הבאה. תוכלו למצוא את
784 רשימת המונחים של Emacs בפרק "Glossary" של מדריך משתמש.)
785
786 >> הביאו סמן לשורה זו והקישו C-l C-l ‏(CONTROL-L ולא CONTROL-1).
787
788 >> עתה הקישו C-x 2 וכתוצאה מכך החלון יתחלק לשניים. כל אחד משני החלונות
789 מציג את השיעור הזה. הסמן נשאר בחלון העליון.
790
791 >> הקישו C-M-v כדי לגלול את החלון התחתון.
792 (אם במקלדת שלכם אין מקש META אמיתי, הקישו ‎<ESC> C-v כתחליף.)
793
794 >> הקישו C-x o ‏("o" הוא רמז ל־"other", "אחר") על־מנת להעביר את הסמן
795 לחלון התחתון.
796 >> הקישו C-v ו־M-v בחלון התחתון כדי לגלול אותו.
797 המשיכו לקרוא הוראות אלו בחלון העליון.
798
799 >> הקישו C-x o שוב לחזור לחלון העליון.
800 הסמן בחלון העליון יישאר במקום בו הוא היה לפני־כן.
801
802 תוכלו להמשיך להשתמש ב־C-x o כדי לדלג בין החלונות. "החלון הנבחר", אותו
803 חלון בו הנכם עורכים טקסט, מזוהה ע״י סמן בולט שמהבהב בזמן שאינכם
804 מקלידים. לכל החלונות האחרים מיקום סמן משלהם; אם הפעלתם את Emacs על צג
805 גרפי, מיקום הסמן בחלונות האחרים מוצג כתיבה ריקה שאינה מהבהבת.
806
807 הפקודה C-M-v נוחה מאד כאשר הינכם עורכים טקסט בחלון אחד ומשתמשים בחלון
808 אחר לייחוס. תוכלו להתקדם בחלון השני בעזרת C-M-v מבלי לעזוב את החלון
809 הנבחר.
810
811 ‏C-M-v היא דוגמא אחת של פקודת CONTROL-META. אם במקלדת שלכם קיים מקש
812 META (או Alt) אמיתי, תוכלו להקיש את הפקודה ע״י לחיצה והחזקה של מקשי
813 CONTROL ו־META גם יחד ואז להקיש v. הסדר שבו תלחצו על CONTROL ו־META
814 אינו משנה כי שני המקשים הללו פועלים ע״י שינוי התו המוקש יחד איתם.
815
816 אם אין במקלדת מקש META אמיתי ואתם משתמשים ב־<ESC> כתחליף, הסדר כן
817 משנה: חייבים להקיש <ESC> ורק לאחר מכן CONTROL-v, וזאת משום
818 ש־CONTROL-<ESC> v לא יעבוד. <ESC> הוא תו בזכות עצמו, שלא כמו CONTROL
819 או META.
820
821 >> הקישו C-x 1 (בחלון העליון) כדי לסלק את החלון התחתון.
822
823 (אילו הקשתם C-x 1 בחלון התחתון, הייתם מסלקים את החלון העליון. תוכלו
824 לחשוב על פקודה זו כ־"השאר רק חלון אחד -- החלון בו אני נמצא עתה".)
825
826 אין חובה להציג את אותו החוצץ בשני החלונות. תוכלו להשתמש ב־C-x C-f
827 לפתיחת קובץ באחד החלונות -- דבר זה אינו משפיע על החלון השני. אפשר גם
828 לפתוח קבצים שונים בכל אחד משני החלונות באופן בלתי־תלוי.
829
830 הנה עוד שיטה להשתמש בשני חלונות להצגה של שני דברים שונים:
831
832 >> הקישו C-x 4 C-f ואחר־כך הקישו שם של אחד הקבצים שלכם.
833 סיימו עם <Return>. שימו לב שהקובץ המבוקש מוצג בחלון התחתון. הסמן
834 מדלג לשם אף הוא.
835
836 >> הקישו C-x o לעבור לחלון העליון ואחר־כך הקישו C-x 1 כדי לסלק את
837 החלון התחתון.
838
839
840 * תבניות מרובות
841 ---------------
842
843 ‏Emacs מסוגל לפתוח מספר "תבניות" ("frames"). תבנית כוללת קבוצת חלונות,
844 תפריט, פסי גלילה, אזור תצוגת הד וכו'. על צג גרפי מה שאנו קוראים
845 "תבנית" נקרא בדרך־כלל "חלון". ניתן להציג תבניות אחדות על אותו צג גרפי
846 בו־זמנית על צג טקסטואלי אפשר להציג רק תבנית אחת בכל עת.
847
848 >> הקישו M-x make-frame <Return>‎.
849 כתוצאה, תבנית חדשה תופיע על המסך.
850
851 כל מה שעשיתם בתבנית המקורית ניתן לעשות גם בתבנית החדשה. התבנית הראשונה
852 אין בה שום דבר מיוחד.
853
854 >> הקישו M-x delete-frame <Return>‎.
855 התבנית שבה הקשתם את הפקודה תיסגר ותיעלם מהמסך.
856
857 כמו־כן, ניתן לסגור תבנית בדרך הרגילה הנתמכת ע״י התצוגה הגרפית של
858 המערכת שלכם (בדרך־כלל, ע״י הקלקה על הכפתור המסומן ב־"X" בפינה עליונה
859 של התבנית.) שום מידע אינו הולך לעיבוד כאשר סוגרים תבנית (או חלון).
860 המידע הזה פשוט יורד מהתצוגה, אבל ניתן לאחזרו מאוחר יותר.
861
862
863 * רמות עריכה רקורסיביות
864 -----------------------
865
866 יתכן ותיקלעו למצב שקרוי "רמת עריכה רקורסיבית". Emacs מציין זאת ע״י
867 סוגריים מרובעים בשורת הסטטוס מסביב לשם האופן הראשי. למשל, יוצג שם
868 [(Fundamental)] במקום (Fundamental).
869
870 כדי להחלץ מרמת עריכה רקורסיבית יש להקיש <ESC> <ESC> <ESC>. זוהי פקודה
871 כללית של "הימלטות". ניתן להשתמש בה גם כדי לסלק חלונות מיותרים וליציאה
872 מתוך מיני־חוצץ.
873
874 >> הקישו M-x כדי להיכנס למיני־חוצץ; אחר־כך הקישו <ESC> <ESC> <ESC> כדי
875 להיחלץ משם.
876
877 הקשה על C-g לא תחלץ אתכם מרמות עריכה רקורסיביות. זאת, משום ש־C-g מבטל
878 פקודות וארגומנטים _במסגרת_ הרמה הרקורסיבית, מבלי לצאת ממנה.
879
880
881 * לקבלת עזרה נוספת
882 ------------------
883
884 בשיעור הראשון הזה השתדלנו לתת בידיכם מידע שאך יספיק להתחלת השימוש שלכם
885 ב־Emacs. ‏Emacs מכיל כל־כך הרבה שאין שום אפשרות לתאר ולהסביר כאן את
886 הכל. אולם, סביר שתרצו ללמוד יותר על Emacs שכן יש בו עוד הרבה תכונות
887 שימושיות. Emacs כולל פקודות לשם קריאת תיעוד על הפקודות של Emacs.
888 הפעלת פקודות "עזרה" אלו תמיד מתחילה במקש CONTROL-h שעל־כן נקרא "מקש
889 עזרה" ("help").
890
891 להפעלת פקודות עזרה יש להקיש את C-h ואחר־כך עוד תו שמבקש עזרה מסוג
892 מסויים. אם אתם _באמת_ אבודים, הקישו C-h ?‎ ו־Emacs יציג את סוגי העזרה
893 שהוא מעמיד לרשותכם. אם הקשתם C-h ובסופו של דבר החלטתם שאין צורך בשום
894 עזרה, פשוט הקישו C-g לבטל את הפקודה.
895
896 (אם הקשת C-h אינה מציגה בתחתית התצוגה הודעה בדבר עזרה, נסו להקיש F1 או
897 M-x help <Return>‎ כתחליף.)
898
899 סוג העזרה הבסיס ביותר הוא C-h c. הקישו C-h, אחריו את האות c ואז הקישו
900 סדרת מקשים שמפעילה פקודה כלשהי. Emacs יציג תיאור מאד קצר של הפקודה
901 ההיא.
902
903 >> הקישו C-h c C-p.
904
905 התוצאה שתוצג צריכה להיות משהו כמו זה:
906
907 C-p runs the command previous-line
908
909 ההודעה הזו מראה את "שם הפונקציה". היות ושמות הפונקציות נבחרים כדי
910 לציין מה הן עושות, השמות עשויים לשמש כתיעוד מקוצר -- מספיק כדי להזכיר
911 לכם את הפקודות שלמדתם בעבר.
912
913 ניתן לציין אחרי C-h c גם פקודות שמופעלות ע״י סדרת מקשים באורך גדול
914 מאחד, כגון C-x C-s או (אם אין מקש META או EDIT או ALT) ‏‎<ESC> v.
915
916 לקבלת מידע מפורט יותר על פקודה, השתמשו בפקודה C-h k במקום C-h c.
917
918 >> הקישו C-h k C-p.
919
920 כתוצאה, יוצגו השם והתיעוד של הפונקציה בחלון Emacs נפרד. כשתסיימו לקרוא
921 את התיעוד, הקישו C-x 1 כדי לסלק את חלון העזרה. לא חייבים לעשות זאת
922 מיד. אפשר לבצע קצת עריכה תוך שימוש בתיעוד המוצג ורק אחר־כך להקיש C-x 1.
923
924 הנה עוד כמה פקודות עזרה שימושיות:
925
926 ‏C-h f תן הסבר על פונקציה. יש להקיש את שם הפונקציה.
927
928 >> נסו להקיש C-h f previous-line <Return>‎.
929 כתוצאה, יוצג תיעוד מלא של הפונקציה המממשת את הפקודה C-p כפי שהוא
930 ידוע ל־Emacs.
931
932 פקודה דומה C-h v מציגה תיעוד של משתנה, כולל אלו שאת הערכים שלהם ניתן
933 לשנות כדי לקסטם את Emacs. יש להקיש את שם המשתנה כאשר Emacs יבקש זאת.
934
935 ‏C-h a פקודות בנוגע לנושא מסויים. הקישו מילת מפתח ו־Emacs
936 יציג את רשימת הפקודות ששמותיהן מכילות את מילת המפתח.
937 כל הפקודות הללו ניתנות להפעלה ע״י META-x. עבור חלק
938 מהפקודות תוצג גם סדרת מקשים שמפעילה את הפקודה.
939
940 >> הקישו C-h a file <Return>‎.
941
942 כתוצאה מזה, יוצג חלון עם רשימה של כל הפקודות ששמותיהן מכילות את המילה
943 "file". ביניהן תראו גם מקשי קיצור כגון C-x C-f לצד שמות הפקודות כגון
944 find-file.
945
946 >> הקישו C-M-v כדי לגלול את חלון העזרה. עשו זאת פעמים אחדות.
947
948 >> עתה הקישו C-x 1 כדי לסגור את חלון העזרה.
949
950 ‏C-h i הצג מדריכים למשתמש הכלולים בחבילת Emacs. (פקודה זו
951 ידועה גם בשם "Info".) פקודה זאת פותחת חוצץ מיוחד הקרוי
952 "*info*" שבו תוכלו לקרוא מדריכים המותקנים במערכת שלכם.
953 הקישו m emacs <Return>‎ כדי לקרוא במדריך למשתמשי Emacs.
954 אם אינכם מכירים את Info, הקישו ? ו־Emacs יקח אתכם
955 לשיעור על התכונות של Info mode. כשתסיימו עם השיעור
956 הזה, אנו בהחלט ממליצים להשתמש במדריך Emacs בתור התיעוד
957 העיקרי שלכם.
958
959
960 * עוד תכונות
961 ------------
962
963 תוכלו ללמוד עוד על־אודות Emacs ע״י קריאה במדריך למשתמש שלו, אם כספר
964 מודפס או בגירסה מקוונת בתוך Emacs עצמו. (תוכלו להגיע אל המדריך דרך
965 תפריט Help או ע״י הקשה על C-h r.) אולם שתי תכונות שבוודאי ימצאו חן
966 בעיניכם הן השלמה אשר חוסכת הקשות, ו־dired שמאפשרת טיפול נוח בקבצים.
967
968 השלמה היא דרך להימנע מהקשות מיותרות. למשל, אם ברצונכם לעבור לחוצץ
969 *Messages*, תוכלו להקיש C-x b *M<Tab>‎ ו־Emacs ישלים את שאר האותיות של
970 שם החוצץ ככל שניתן להסיק ממה שהקשתם. השלמה פועלת גם על שמות הפקודות
971 ושמות קבצים. תכונת ההשלמה מתוארת במלואה במדריך למשתמש Emacs בצומת
972 (node) בשם "Completion".
973
974 ‏Dired מאפשר להציג רשימת קבצים בתיקיה (וכאפציה גם בתת־תיקיות שלה), לנוע
975 בתוך הרשימה הזו, לפתוח קבצים, לשנות את שמותיהם, למחוק אותם ולבצע עליהם
976 עוד פעולות רבות. Dired מתואר במלואו במדריך למשתמש בצומת בשם "Dired".
977
978 בנוסף, מדריך למשתמש מתאר עוד הרבה מאד תכונות של Emacs.
979
980
981 * לסיום
982 -------
983
984 כדי לצאת מ־Emacs יש להקיש C-x C-c.
985
986 שיעור זה נכתב כדי להיות מובן לכל המשתמשים החדשים, לכן אם מצאתם שמשהו
987 כאן אינו ברור, אל תשבו ותאשימו את עצמכם -- תתלוננו!
988
989
990 * זכויות שימוש
991 --------------
992
993 שיעור זה הינו צאצא של שורה ארוכה של שיעורים בשימוש ב־Emacs, החל מהגרסה
994 הראשונה שנכתבה ע״י Stuart Cracraft עבור גירסת ה־Emacs המקורית.
995
996 גירסה זו של השיעור הינה חלק מחבילת GNU Emacs. היא מוגנת בזכויות יוצרים
997 וניתנת להעתקה והפצת עותקים בתנאים מסויימים כדלקמן:
998
999 Copyright (C) 2010-2016 Free Software Foundation, Inc.
1000
1001 ‏GNU Emacs הינו תכנה חפשית; זכותכם להפיצו ו\או לשנותו בכפוף לתנאי
1002 הרשיון GNU General Public License, כפי שהוא יוצא לאור ע״י Free
1003 Software Foundation, אם בגרסא 3 של הרשיון, ואם (כאופציה השמורה לכם)
1004 בכל גרסא מאוחרת יותר.
1005
1006 ‏GNU Emacs מופץ מתוך תקווה שהוא יביא תועלת, אולם ללא כל כתב אחריות;
1007 אפילו לא אחריות־במשתמע של סחירות או התאמה לאיזו תכלית מסוימת. לפרטים,
1008 אנא עיינו ב־GNU General Public License.
1009
1010 ‏GNU Emacs אמור להיות מלווה בעותק של GNU General Public License; אם לא
1011 קיבלתם אותו, תוכלו למצוא אותו ב־‪<http://www.gnu.org/licenses/>‬.
1012
1013 הנכם מוזמנים לקרוא את הקובץ COPYING ואז אכן לחלק עותקים של GNU Emacs
1014 לחבריכם. עזרו לנו לחסל את "הבעלות" על תוכנה שאינה אלא חבלה בתוכנה,
1015 וזאת ע״י שימוש, כתיבה ושיתוף של תוכנה חופשית!
1016
1017
1018
1019 --- end of TUTORIAL.he ---
1020
1021 ;;; Local Variables:
1022 ;;; coding: utf-8
1023 ;;; bidi-display-reordering: t
1024 ;;; sentence-end-double-space: nil
1025 ;;; bidi-paragraph-direction: nil
1026 ;;; End: