aboutsummaryrefslogtreecommitdiffstats
path: root/etc/tutorials
diff options
context:
space:
mode:
authorVibhav Pant2023-06-06 19:30:27 +0530
committerVibhav Pant2023-06-06 19:30:27 +0530
commit49ffcbf86a32a8a217538d4df3736fe069ccf35d (patch)
treea5f16157cc20fb19a844473a6fbd2b434f4c8260 /etc/tutorials
parentaf569fa3d90a717983b743eb97adbf869c6d1736 (diff)
parent7ca1d782f5910d0c3978c6798a45c6854ec668c7 (diff)
downloademacs-49ffcbf86a32a8a217538d4df3736fe069ccf35d.tar.gz
emacs-49ffcbf86a32a8a217538d4df3736fe069ccf35d.zip
Merge branch 'master' into scratch/comp-static-data
Diffstat (limited to 'etc/tutorials')
-rw-r--r--etc/tutorials/TUTORIAL2
-rw-r--r--etc/tutorials/TUTORIAL.cn152
-rw-r--r--etc/tutorials/TUTORIAL.fa1164
-rw-r--r--etc/tutorials/TUTORIAL.translators5
4 files changed, 1256 insertions, 67 deletions
diff --git a/etc/tutorials/TUTORIAL b/etc/tutorials/TUTORIAL
index e72b972441e..4e6d7b9b287 100644
--- a/etc/tutorials/TUTORIAL
+++ b/etc/tutorials/TUTORIAL
@@ -4,7 +4,7 @@ Emacs commands generally involve the CONTROL key (often labeled CTRL)
4or the META key (usually labeled ALT). Rather than writing that 4or the META key (usually labeled ALT). Rather than writing that
5in full each time, we'll use the following abbreviations: 5in full each time, we'll use the following abbreviations:
6 6
7 C-<chr> means hold the CONTROL key while typing the character <chr> 7 C-<chr> means hold the CONTROL key while typing the character <chr>.
8 Thus, C-f would be: hold the CONTROL key and type f. 8 Thus, C-f would be: hold the CONTROL key and type f.
9 M-<chr> means hold the META or ALT key down while typing <chr>. 9 M-<chr> means hold the META or ALT key down while typing <chr>.
10 If there is no META or ALT key, instead press and release the 10 If there is no META or ALT key, instead press and release the
diff --git a/etc/tutorials/TUTORIAL.cn b/etc/tutorials/TUTORIAL.cn
index 73df2cff4e7..e4c90102f53 100644
--- a/etc/tutorials/TUTORIAL.cn
+++ b/etc/tutorials/TUTORIAL.cn
@@ -15,10 +15,10 @@ META 键(有时候用 EDIT 或 ALT 来标示)。为了避免每次都要写
15 ESC 键。 15 ESC 键。
16 16
17重要提示:要退出 Emacs,请用 C-x C-c(两个连续的组合键)。 17重要提示:要退出 Emacs,请用 C-x C-c(两个连续的组合键)。
18退出一个正在行中的命令,请用 C-g。 18个正在的命令,请用 C-g。
19下文中左边顶行的“>>”字样用来提示你尝试键盘命令。比如: 19下文中左边顶行的“>>”字样用来提示你尝试键盘命令。比如:
20<<Blank lines inserted around following line by help-with-tutorial>> 20<<Blank lines inserted around following line by help-with-tutorial>>
21[本页当中特意留出一些空白是出于教学目的,请继续往后阅读] 21本页当中特意留出一些空白是出于教学目的,请继续往后阅读
22>> 现在输入 C-v (查看下一屏文字)移动到下一屏。 22>> 现在输入 C-v (查看下一屏文字)移动到下一屏。
23 (别紧张,在输入字符 v 的同时注意要按住 CONTROL 键) 23 (别紧张,在输入字符 v 的同时注意要按住 CONTROL 键)
24 从现在开始,每读完当前一屏你都需要这样做一次。 24 从现在开始,每读完当前一屏你都需要这样做一次。
@@ -26,12 +26,17 @@ META 键(有时候用 EDIT 或 ALT 来标示)。为了避免每次都要写
26值得注意的是,当你从上一屏滚到下一屏时,中间会有两行的重复;这样做是为 26值得注意的是,当你从上一屏滚到下一屏时,中间会有两行的重复;这样做是为
27了维持滚屏的连续性,方便你顺畅、连续地阅读。 27了维持滚屏的连续性,方便你顺畅、连续地阅读。
28 28
29这是 Emacs 教程文本的一个经过少量修改的副本。不久后我们会让你尝试不同
30的命令来修改此文本。若你在我们提到这些命令前修改了文本,不要担心;这就
31叫做“编辑”,而这就是 Emacs 存在的根本原因。
32
29用编辑器,开门第一件事就是学会在文字中移动。你已经知道了 C-v 可以向下移 33用编辑器,开门第一件事就是学会在文字中移动。你已经知道了 C-v 可以向下移
30动一屏,要往上移,请用 M-v (也就是按住 META 键,然后输入v,如果你没有 34动一屏,要往上移,请用 M-v (也就是按住 META 键,然后输入v,如果你没有
31META、EDIT 或 ALT 键那么就先按 <ESC> 再按 v)。 35META、EDIT 或 ALT 键那么就先按 <ESC> 再按 v)。
32 36
33>> 试试 M-v,然后再试试 C-v,来回遛几次。 37>> 试试 M-v,然后再试试 C-v,来回遛几次。
34 38
39若你知道其他移动文本的方式,也可以在这里试试。
35 40
36* 小结(SUMMARY) 41* 小结(SUMMARY)
37----------------- 42-----------------
@@ -101,7 +106,7 @@ P 代表 previous(上一行),N 代表 next(下一行),B 代表 backw
101 106
102如果你嫌一个字符一个字符地挪光标太慢,你还可以一个词一个词地跳。M-f 107如果你嫌一个字符一个字符地挪光标太慢,你还可以一个词一个词地跳。M-f
103(META-f) 可以将光标往前移动一个词,而 M-b 则是往后移。【这里的“词”指 108(META-f) 可以将光标往前移动一个词,而 M-b 则是往后移。【这里的“词”指
104英文单词,对中文来说,则是指移动到下一个标点符号。】 109英文单词,对中文来说,则是指移动到下一个点符号。】
105 110
106>> 试试 M-f 和 M-b。 111>> 试试 M-f 和 M-b。
107 112
@@ -132,8 +137,8 @@ P 代表 previous(上一行),N 代表 next(下一行),B 代表 backw
132 C-f 向右移动一个字符 137 C-f 向右移动一个字符
133 C-b 向左移动一个字符 138 C-b 向左移动一个字符
134 139
135 M-f 向右移动一个词【对中文是移动到下一个标点符号】 140 M-f 向右移动一个词【对中文是移动到下一个点符号】
136 M-b 向左移动一个词【对中文是移动到上一个标点符号】 141 M-b 向左移动一个词【对中文是移动到上一个点符号】
137 142
138 C-n 移动到下一行 143 C-n 移动到下一行
139 C-p 移动到上一行 144 C-p 移动到上一行
@@ -160,24 +165,25 @@ M-comma(META 逗号)。
160 然后再按几次 M-v 回到这里。 165 然后再按几次 M-v 回到这里。
161 166
162如果你的键盘上有方向键的话,也可以用它们来移动光标。不过我们有三个理由 167如果你的键盘上有方向键的话,也可以用它们来移动光标。不过我们有三个理由
163推荐你学习 C-b 、C-f 、C-n 、和 C-p:(1)它们在任何键盘上都能用。(2) 168推荐你学习 C-b 、C-f 、C-n 、和 C-p:(1)它们在任何终端(terminal)上
164当你熟练使用 Emacs 之后,你会发现用这些组合键比用方向键要快得多,因为你 169都能用。(2)当你熟练使用 Emacs 之后,你会发现用这些组合键比用方向键要
165的手不需要离开打字区。(3)一旦你习惯了使用这些组合键,你也可以很容易地 170快得多,因为你的手不需要离开打字区。(3)一旦你习惯了使用这些组合键,
166适应其它更高级的光标移动命令。 171你也可以很容易地适应其它更高级的光标移动命令。
167 172
168大部分的 Emacs 命令接受数字参数,并且对于多数命令而言,这些数字参数的作 173大部分的 Emacs 命令接受数字参数,并且对于多数命令而言,这些数字参数的
169用是指定命令的重复次数。为一个命令指定数字参数(也就是重复次数)的方法 174作用是指定命令的重复次数。为一个命令指定数字参数(也就是重复次数)的方
170是:先输入 C-u,然后输入数字作为参数,最后再输入命令。如果你有META (或 175法是:先输入 C-u,然后输入数字作为参数,最后再输入命令。如果你有
171EDIT 或 ALT)键,那么还有另一种办法:按住 META 键不放,然后输入数字。不 176META(或EDIT 或 ALT)键,那么还有另一种办法:按住 META 键不放,然后输
172过我们还是建议你用 C-u,因为它在任何终端机上都能用。这种数字参数也称为 177入数字。不过我们还是建议你用 C-u,因为它在任何终端上都能用。这种数字参
173“前缀参数”,意思是说这个参数是先于使用它的命令而输入的。 178数也称为“前缀参数”(prefix argument),意思是说这个参数是先于使用它的
179命令而输入的。
174 180
175举例来说, C-u 8 C-f 会向前移动 8 个字符。 181举例来说, C-u 8 C-f 会向前移动 8 个字符。
176 182
177>> 为 C-n 或者 C-p 指定一个数字参数,这样你可以只用一个命令就把光标移动 183>> 为 C-n 或者 C-p 指定一个数字参数,这样你可以只用一个命令就把光标移动
178 到本行的附近。 184 到本行的附近。
179 185
180虽然大部分命令把数字参数解为其重复次数,但是也有些命令例外,它们将数 186虽然大部分命令把数字参数解为其重复次数,但是也有些命令例外,它们将数
181字参数另做它用。比如有些命令(我们目前还没学到)仅仅将前缀参数作为一个 187字参数另做它用。比如有些命令(我们目前还没学到)仅仅将前缀参数作为一个
182标志――只要给出有一个前缀参数,不管其值为何,它都会改变命令的功能。 188标志――只要给出有一个前缀参数,不管其值为何,它都会改变命令的功能。
183 189
@@ -189,7 +195,7 @@ EDIT 或 ALT)键,那么还有另一种办法:按住 META 键不放,然
189这个命令应该已经将文字向上滚动了 8 行。如果你想将它再次地向下滚动,你可 195这个命令应该已经将文字向上滚动了 8 行。如果你想将它再次地向下滚动,你可
190以给定一个参数然后执行 M-v。 196以给定一个参数然后执行 M-v。
191 197
192如果你正在使用图形界面,比如 X 或者微软的 Windows,那么在 Emacs窗 198如果你正在使用图形界面,比如 X 或者微软的 Windows,那么在 Emacs
193口的一边应该有一个长方形的区域叫“滚动条”。你可以用鼠标操纵滚动条来滚动 199口的一边应该有一个长方形的区域叫“滚动条”。你可以用鼠标操纵滚动条来滚动
194文字。 200文字。
195 201
@@ -235,8 +241,8 @@ Emacs 可以有多个“窗格”,每个窗格显示不同的文字。后面
235 241
236 C-x 1 只保留一个窗格(也就是关掉其它所有窗格)。 242 C-x 1 只保留一个窗格(也就是关掉其它所有窗格)。
237 243
238也就是先按 CONTROL-x 然后再按 1。C-x 1 会保留光标所在的窗格,并将其扩大 244也就是先按 CONTROL-x 然后再按数字 1。C-x 1 会保留光标所在的窗格,并将
239到整个屏幕,同时关掉所有其它的窗格。 245扩大整个屏幕,同时关掉所有其它的窗格。
240 246
241>> 把光标移到本行然后输入 C-u 0 C-l。 247>> 把光标移到本行然后输入 C-u 0 C-l。
242 248
@@ -266,12 +272,13 @@ Emacs 可以有多个“窗格”,每个窗格显示不同的文字。后面
266 不用担心文件被修改,你做什么都没关系,这里就是专给你练习用的。 272 不用担心文件被修改,你做什么都没关系,这里就是专给你练习用的。
267 273
268如果一行文字很长、超出了窗格的宽度,显示不下的部分会在紧邻的下一行继续 274如果一行文字很长、超出了窗格的宽度,显示不下的部分会在紧邻的下一行继续
269显示。如果你使用的是图形界面,文本区域两边的狭窄区域(左右“边缘”)会出 275显示,称为接续行(continuation line)。如果你使用的是图形界面,文本区
270现小小的转弯箭头,表明这是某一行的接续显示。如果你使用的是文本终端,接 276域两边的狭窄区域(左右“边缘”)会出现小小的转弯箭头,表明这是某一行的接
271续显示由屏幕最右边一列的一个反斜线(“\”)来表示。 277续显示。如果你使用的是文本终端,接续显示由屏幕最右边一列的一个“\”来表
278示。
272 279
273>> 输入文字,一直到屏幕的右边界,然后继续。 280>> 输入文字,一直到屏幕的右边界,然后继续。
274你会看到一个接续行出现。 281 你会看到一个接续行出现。
275 282
276>> 用 <DEL> 删掉一些文字,直到此行长度小于窗格宽度,接续行就消失了。 283>> 用 <DEL> 删掉一些文字,直到此行长度小于窗格宽度,接续行就消失了。
277 284
@@ -286,7 +293,9 @@ Emacs 可以有多个“窗格”,每个窗格显示不同的文字。后面
286 293
287<Return> 是一个特殊的键,因为按下这个键后,得到的可能不仅仅是一个换行 294<Return> 是一个特殊的键,因为按下这个键后,得到的可能不仅仅是一个换行
288符。根据周围文本的不同,Emacs 可能会在换行符之后插入一些空白字符,这样, 295符。根据周围文本的不同,Emacs 可能会在换行符之后插入一些空白字符,这样,
289当你在新的一行开始打字时,文本会自动与前一行对齐。 296当你在新的一行开始打字时,文本会自动与前一行对齐。我们称这种行为(在按
297这个按键时不只是插入其对应字符)为“electric”,可以理解为“通电的,自动
298的”。
290 299
291>> 这是一个自动缩进的例子。 300>> 这是一个自动缩进的例子。
292 在这一行的末尾输入 <Return>。 301 在这一行的末尾输入 <Return>。
@@ -338,7 +347,8 @@ Emacs 可以有多个“窗格”,每个窗格显示不同的文字。后面
338了。】重新插入被移除的文字称为“召回(yank)”。一般而言,那些可能消除很 347了。】重新插入被移除的文字称为“召回(yank)”。一般而言,那些可能消除很
339多文字的命令会把消除掉的文字记录下来(它们被设定成了“可召回”),而那些 348多文字的命令会把消除掉的文字记录下来(它们被设定成了“可召回”),而那些
340只消除一个字符或者只消除空白的命令就不会记录被消除的内容(自然你也就无 349只消除一个字符或者只消除空白的命令就不会记录被消除的内容(自然你也就无
341法召回了)。 350法召回了)。<DEL> 和 C-d 在无前缀参数的情况下进行“删除”,而有前缀参数
351时则改用“移除”。
342 352
343>> 移动光标到一非空白行的行头,然后输入 C-k 移除那一行上的文字。 353>> 移动光标到一非空白行的行头,然后输入 C-k 移除那一行上的文字。
344 354
@@ -350,10 +360,11 @@ Emacs 可以有多个“窗格”,每个窗格显示不同的文字。后面
350C-k 会把两行以及它们的换行符移除;而如果只是输入 C-k 两次显然不是这个结 360C-k 会把两行以及它们的换行符移除;而如果只是输入 C-k 两次显然不是这个结
351果。 361果。
352 362
353重新插入被移除的文字恢复的动作称为“召回(yanking)”。(就好像把别人从你身边 363【重新插入被移除的文字恢复的动作称为“召回(yanking)”,就好像把别人
354移走的东西又猛力地拉回来。)你可以在你删除文字的地方召回,也可以在别的 364从你身边移走的东西又猛力地拉回来。】你可以在你删除文字的地方召回,也
355地方召回,还可以多次召回同样的文字以得到它的多个拷贝。很多其它的编辑器 365可以在别的地方召回,还可以多次召回同样的文字以得到它的多个拷贝。很多其
356把移除和召回叫做“剪切”和“粘贴” (详情可见 Emacs 使用手册里的术语表)。 366它的编辑器把移除和召回叫做“剪切”和“粘贴” (详情可见 Emacs 使用手册里的
367术语表)。
357 368
358召回的命令是 C-y。它会在光标所在处插入你最后移除的文字。 369召回的命令是 C-y。它会在光标所在处插入你最后移除的文字。
359 370
@@ -372,8 +383,8 @@ C-y 就可以把它们都召回。
372C-y 可以召回最近一次移除的内容,那如何召回前几次移除的内容呢?它们当然 383C-y 可以召回最近一次移除的内容,那如何召回前几次移除的内容呢?它们当然
373没有丢,你可以用 M-y 来召回它们。在用 C-y 召回最近移除的文字之后,紧接 384没有丢,你可以用 M-y 来召回它们。在用 C-y 召回最近移除的文字之后,紧接
374着再按 M-y 就可以召回再前一次被移除的内容,再按一次 M-y 又可以召回再上 385着再按 M-y 就可以召回再前一次被移除的内容,再按一次 M-y 又可以召回再上
375一次的……连续使用 M-y 直到找到你想要召回的东西,然后什么也不用做,继续 386一次的内容……连续使用 M-y 直到找到你想要召回的东西,然后什么也不用做,
376编辑就行了。 387辑就行了。
377 388
378如果连续按 M-y 很多次,你可能会回到起始点,也就是最近移除的文字。 389如果连续按 M-y 很多次,你可能会回到起始点,也就是最近移除的文字。
379【看得出这实际上是一个环。】 390【看得出这实际上是一个环。】
@@ -401,14 +412,16 @@ C-/,你会把以前的命令也依次撤销。
401 412
402>> 用 C-k 将这一行移除,然后输入 C-/ ,它会再次出现。 413>> 用 C-k 将这一行移除,然后输入 C-/ ,它会再次出现。
403 414
404C-_ 也是撤销命令;它的作用跟 C-/ 一样,但是它比较容易多次输入。在 415C-_ 也是撤销命令;它的作用跟 C-/ 一样,但是它比较容易多次输入。在某些
405某些终端上,输入 C-/ 实际上向 Emacs 发送的是 C-_ 。 416终端上,你可以不 shift 键(即 C--)。在些终端上,输入 C-/ 实际上向
406另外, C-x u 和 C-/ 完全一样,但是按起来有些麻烦。 417Emacs 送的是 C-_ 。外, C-x u 和 C-/ 完全一样,但是按起来有些麻烦。
407 418
408数字参数对于 C-/ 、 C-_ 和 C-x u 的意义是执行撤销的重复次数。 419数字参数对于 C-/ 、 C-_ 和 C-x u 的意义是执行撤销的重复次数。
409 420
421你可以撤销文字的删除,就像你能撤销文字的移除一样。删除与移除的区别只在
422于你是否能召回被影响的文字;对于撤销来说没有区别。
410 423
411* 文件(FILE) 424* 文件(FILES
412-------------- 425--------------
413 426
414想保存工作成果就要记得存盘,否则一旦退出 Emacs 你编辑的文字就会丢失。要 427想保存工作成果就要记得存盘,否则一旦退出 Emacs 你编辑的文字就会丢失。要
@@ -424,7 +437,7 @@ C-_ 也是撤销命令;它的作用跟 C-/ 一样,但是它比较容易多
424在屏幕的下方,你应该能够看到头部有短线“-”的一行,行首通常是一些诸如“ 437在屏幕的下方,你应该能够看到头部有短线“-”的一行,行首通常是一些诸如“
425-:--- TUTORIAL.cn”的文字,这些文字代表了你当前正在访问的文件。比如你现 438-:--- TUTORIAL.cn”的文字,这些文字代表了你当前正在访问的文件。比如你现
426在正在访问的文件是对 Emacs 快速指南的一份临时拷贝,叫做“TUTORIAL.cn”。 439在正在访问的文件是对 Emacs 快速指南的一份临时拷贝,叫做“TUTORIAL.cn”。
427每当Emacs 寻找到一个文件,文件名就会出现在这个位置。 440每当 Emacs 寻找到一个文件,文件名就会出现在这个位置。
428 441
429寻找文件的命令有一个特点,那就是你必须给出文件名。我们称这个命令“读入 442寻找文件的命令有一个特点,那就是你必须给出文件名。我们称这个命令“读入
430了一个参数”(在这里,这个参数显然就是文件名)。在你输入这条命令之后: 443了一个参数”(在这里,这个参数显然就是文件名)。在你输入这条命令之后:
@@ -435,14 +448,14 @@ Emacs 会提示你输入文件名。你输入的文件名会出现在屏幕最
435行被称为小缓冲(minibuffer),在小缓冲里你可以使用通常的 Emacs 编辑命令 448行被称为小缓冲(minibuffer),在小缓冲里你可以使用通常的 Emacs 编辑命令
436来编辑文件名。 449来编辑文件名。
437 450
438在小缓冲里输入文件名(其实输入其它东西也一样)时可以用 C-g 取消。 451在小缓冲里输入文件名(其实输入其它东西也一样)时可以用 C-g 取消这个命令
439 452
440>> 输入 C-x C-f,然后输入 C-g 453>> 输入 C-x C-f,然后输入 C-g
441 这会关掉小缓冲,同时也会取消使用小缓冲的 C-x C-f 命令。 454 这会关掉小缓冲,同时也会取消使用小缓冲的 C-x C-f 命令。
442 当然了,你也没有找任何文件。 455 当然了,你也没有找任何文件。
443 456
444用 <Return> 结束文件名的输入。之后,小缓冲会消失,C-x C-f 将会去寻找你 457当你写完要寻找文件名时, <Return> 结束文件名的输入。之后,小缓冲会
445定的文冲在 C-x C-f 458C-x C-f
446 459
447文件被显示在了屏幕上,你可以开始编辑了。存盘用这条命令: 460文件被显示在了屏幕上,你可以开始编辑了。存盘用这条命令:
448 461
@@ -453,20 +466,21 @@ Emacs 会提示你输入文件名。你输入的文件名会出现在屏幕最
453【对许多人来说,这是一个烦人的特性,关掉文件备份可以用如下命令: 466【对许多人来说,这是一个烦人的特性,关掉文件备份可以用如下命令:
454 M-x customize-variable <Return> make-backup-files <Return>】 467 M-x customize-variable <Return> make-backup-files <Return>】
455 468
456存盘结束后,Emacs 会显示写入文件的文件名。你最好养成经常存盘的习惯,这 469存盘结束后,Emacs 会显示写入文件的文件名。【你最好养成经常存盘的习惯,
457可以减少系统崩溃和死机给你带来的损失(也可参见下面的“自动保存”一节)。 470这可以减少系统崩溃和死机给你带来的损失(也可参见下面的“自动保存”一
471节)。】
458 472
459>> 输入 C-x C-s TUTORIAL.cn <Return> 。 473>> 输入 C-x C-s TUTORIAL.cn <Return> 。
460 这将会把该指南保存为一个名为 TUTORIAL.cn 的文件,并且在屏幕的下方显 474 这将会把该指南保存为一个名为 TUTORIAL.cn 的文件,并且在屏幕的下方显
461 示一条消息:“Wrote ...TUTORIAL.cn”。 475 示一条消息:“Wrote TUTORIAL.cn”。
462 476
463你不但可以寻找一个已有的文件来查看或编辑,还可以寻找一个不存在的文件。 477你不但可以寻找一个已有的文件来查看或编辑,还可以寻找一个不存在的文件。
464实际上这正是 Emacs 创建新文件的方法:找到不存在的新文件。事 478实际上这正是 Emacs 创建新文件的方法:找到不存在的新文件
465在存盘的时候,Emacs 才会真正创建这个文件。而在这之后的一切就跟编辑一个 479的,然你就可以开始插入文。事实上,只有存盘的时候,Emacs 才会真正
466已有文件没有区别了。 480建这个文件。而在这之后的一切就编辑一个有文件没有区别了。
467 481
468 482
469* 缓冲区(BUFFER) 483* 缓冲区(BUFFERS
470------------------ 484------------------
471 485
472你可以用 C-x C-f 找到并打开第二个文件,但第一个文件仍然在 Emacs 中。要 486你可以用 C-x C-f 找到并打开第二个文件,但第一个文件仍然在 Emacs 中。要
@@ -495,7 +509,7 @@ C-x C-f 是一种办法。不过还有一个更简单的办法,那就是用 C-
495 然后输入 C-x b TUTORIAL.cn <Return> 回到这里。 509 然后输入 C-x b TUTORIAL.cn <Return> 回到这里。
496 510
497大多数情况下,缓冲区与跟其对应的文件是同名的(不包括目录名),不过这也 511大多数情况下,缓冲区与跟其对应的文件是同名的(不包括目录名),不过这也
498不是绝对的。用 C-x C-b 得到的缓冲区列表总是显示缓冲区名。 512不是绝对的。因此用 C-x C-b 得到的缓冲区列表总是显示缓冲区名与文件名
499 513
500缓冲区未必有对应文件。显示缓冲区列表的缓冲区(叫做“*Buffer List*”)就 514缓冲区未必有对应文件。显示缓冲区列表的缓冲区(叫做“*Buffer List*”)就
501是这样。这个 TUTORIAL.cn 缓冲区起初没有对应的文件,但是现在有了,因为 515是这样。这个 TUTORIAL.cn 缓冲区起初没有对应的文件,但是现在有了,因为
@@ -516,8 +530,8 @@ C-x C-f 是一种办法。不过还有一个更简单的办法,那就是用 C-
516 530
517 C-x s 保存多个缓冲区 531 C-x s 保存多个缓冲区
518 532
519C-x s 会找出所有已被修改但尚未存盘的缓冲区,然后向你逐个询问:是否需要 533C-x s 会找出所有访问文件的、且已被修改但尚未存盘的缓冲区,然后向你逐个
520存盘? 534询问:是需要此文件
521 535
522>> 插入一行文字,然后输入 C-x s。 536>> 插入一行文字,然后输入 C-x s。
523 它应该会问你,是否要储存名为 TUTORIAL.cn 的缓冲区? 537 它应该会问你,是否要储存名为 TUTORIAL.cn 的缓冲区?
@@ -554,7 +568,9 @@ C-x 的扩展命令有很多,下面列出的是你已经学过的:
554 568
555 C-x C-f 寻找文件。 569 C-x C-f 寻找文件。
556 C-x C-s 保存文件。 570 C-x C-s 保存文件。
571 C-x s 保存多个缓冲区。
557 C-x C-b 列出缓冲区。 572 C-x C-b 列出缓冲区。
573 C-x b 切换缓冲区。
558 C-x C-c 离开 Emacs。 574 C-x C-c 离开 Emacs。
559 C-x 1 关掉其它所有窗格,只保留一个。 575 C-x 1 关掉其它所有窗格,只保留一个。
560 C-x u 撤销。 576 C-x u 撤销。
@@ -608,10 +624,10 @@ replace-string(字符串替换)这个命令,它会把一个字符串替换
608 624
609状态栏显示了 Emacs 的状态和你正在编辑的文字的一些信息。 625状态栏显示了 Emacs 的状态和你正在编辑的文字的一些信息。
610 626
611你应该知道文件名的意思吧?就是你找到的那个文件嘛。-NN%-- 显示的是光标在 627你应该知道文件名的意思吧?就是你找到的那个文件嘛。NN% 显示的是光标在
612全文中的位置。如果位于文件的开头,那么就显示 --Top-- 而不是 --00%--;如 628全文中的位置。如果位于文件的开头,那么就显示 Top 而不是 0%;如
613果位于文件的末尾,就显示 --Bot--。如果文件很小,一屏就足以显示全部内容, 629果位于文件的末尾,就显示 Bot。如果文件很小,一屏就足以显示全部内容,
614那么状态栏会显示 --All-- 630那么状态栏会显示 All。
615 631
616“L” 和其后的数字给出了光标所在行的行号。 632“L” 和其后的数字给出了光标所在行的行号。
617 633
@@ -723,7 +739,10 @@ C-s 是向前搜索,C-r 是向后搜索。不过手别这么快!别着急试
723* 多窗格(MULTIPLE WINDOWS) 739* 多窗格(MULTIPLE WINDOWS)
724---------------------------- 740----------------------------
725 741
726Emacs 的迷人之处很多,能够在屏幕上同时显示多个窗格就是其中之一。 742Emacs 的迷人之处很多,能够在屏幕上同时显示多个窗格就是其中之一。(请注
743意在 Emacs 里的“窗口(frame)”与“窗格(window)”的定义可能与其他应用程
744序不同,详见Emacs 手册里的术语表。)【另见此教程末尾的翻译章节的术语译
745词对照表。】
727 746
728>> 移动光标到这一行,然后输入 C-l C-l。 747>> 移动光标到这一行,然后输入 C-l C-l。
729 748
@@ -782,13 +801,13 @@ Emacs 可以创建多个窗口。窗口由许多窗格以及菜单、滚动条
782在图形界面下,多个窗口可以同时显示出来。在文本终端中,只能同时显示一个 801在图形界面下,多个窗口可以同时显示出来。在文本终端中,只能同时显示一个
783窗口。 802窗口。
784 803
785>> 输入 M-x make-frame <Return> 804>> 输入 C-x 5 2
786 可以看到一个新的窗口出现在了你的屏幕上。 805 可以看到一个新的窗口出现在了你的屏幕上。
787 806
788你可以在新的窗口里做最初的窗口里可以做的任何事情。第一个窗口没有什么特 807你可以在新的窗口里做最初的窗口里可以做的任何事情。第一个窗口没有什么特
789别的。 808别的。
790 809
791>> 输入 M-x delete-frame <Return>. 810>> 输入 C-x 5 0。
792 这个命令将会关闭选中的窗口。 811 这个命令将会关闭选中的窗口。
793 812
794你也可以通过图形系统来关闭某个窗口(通常是在窗口上面的某个角落里的一个 813你也可以通过图形系统来关闭某个窗口(通常是在窗口上面的某个角落里的一个
@@ -853,9 +872,9 @@ Emacs 可以创建多个窗口。窗口由许多窗格以及菜单、滚动条
853 872
854还有一些其它有用的 C-h 命令: 873还有一些其它有用的 C-h 命令:
855 874
856 C-h f 解释一个。需要输入名。 875 C-h x 解释一个。需要输入名。
857 876
858>> 试试看,输入 C-h f previous-line <Return>。 877>> 试试看,输入 C-h x previous-line <Return>。
859 Emacs 会给出它所知道的所有有关“实现 C-p 命令功能的函数”的信息。 878 Emacs 会给出它所知道的所有有关“实现 C-p 命令功能的函数”的信息。
860 879
861C-h v 用来显示 Emacs 变量的文档。Emacs 变量可以被用来“定制 Emacs 的行 880C-h v 用来显示 Emacs 变量的文档。Emacs 变量可以被用来“定制 Emacs 的行
@@ -905,15 +924,15 @@ Dired 能够在一个缓冲区里列出一个目录下的所有文件(可以
905 924
906Emacs 使用手册里还有许许多多的精彩功能等着你来了解。 925Emacs 使用手册里还有许许多多的精彩功能等着你来了解。
907 926
908* 安装包(INSTALLING PACKAGES) 927* 安装软件包(INSTALLING PACKAGES)
909--------------------------- 928---------------------------
910 929
911Emacs 社区著作了许多持有扩展性的包(packages),其中包括对各种语言 930Emacs 社区著作了许多持有扩展性的软件包(packages),其中包括对各种语言
912支持、色彩鲜艳的主题、用于集成外部程序的包,等等。 931支持、色彩鲜艳的主题、用于集成外部程序的软件包,等等。
913 932
914使用 M-x list-packages 便可浏览的包。这个命令显示的界面中可以安 933使用 M-x list-packages 便可浏览所有软件包。这个命令显示的界面
915装和卸载包,以及查看包的简介。Emacs 使用手册中有对管理更 934中可以安装和卸载软件包,以及查看软件包的简介。Emacs 使用手册中有对
916介绍。 935包管理更详细的介绍。
917 936
918* 总结(CONCLUSION) 937* 总结(CONCLUSION)
919-------------------- 938--------------------
@@ -929,6 +948,7 @@ Emacs 社区著作了许多持有扩展性的包裹(packages),其中包括
929 948
930翻译:孙一江 <sunyijiang@gmail.com> 949翻译:孙一江 <sunyijiang@gmail.com>
931维护:薛富侨 <xfq.free@gmail.com> 950维护:薛富侨 <xfq.free@gmail.com>
951 余睿杰 <ruijie@netyu.xyz>
932校对:水木社区(www.newsmth.net)Emacs 板众多网友及众多 Emacs 中文用户 952校对:水木社区(www.newsmth.net)Emacs 板众多网友及众多 Emacs 中文用户
933 953
934Emacs 快速指南(Tutorial)早有两个刘昭宏的中文译本,繁简各一。其简体版本 954Emacs 快速指南(Tutorial)早有两个刘昭宏的中文译本,繁简各一。其简体版本
diff --git a/etc/tutorials/TUTORIAL.fa b/etc/tutorials/TUTORIAL.fa
new file mode 100644
index 00000000000..1333b47cae2
--- /dev/null
+++ b/etc/tutorials/TUTORIAL.fa
@@ -0,0 +1,1164 @@
1آموزش Emacs «ایمکس». برای شرایط کپی به پایان مراجعه کنید.
2
3فرمانهای Emacs عموماً شامل کلید CONTROL (گاهی اوقات با برچسب CTRL)
4یا کلید META (معمولا با برچسب ALT) هستند. به جای هر بار بطور کامل نوشتن،
5از خلاصه زیر استفاده خواهیم کرد:
6
7‏ ‪C-<chr>‬ به معنای نگه داشتن کلید CONTROL در حین تایپ کاراکترِ <chr> است.
8 بنابراین، C-f خواهد بود: کلید CONTROL را نگه دارید و f را تایپ کنید.
9‏ ‪M-<chr>‬ یعنی کلید META یا ALT را هنگام تایپ حرفِ <chr> پایین نگه دارید.
10 اگر کلید META، یا ALT وجود ندارد، به جای آن کلید ESC را فشار
11 داده و رها کنید، سپس <حرف> را تایپ کنید.
12 برای کلید ESC می نویسیم <ESC>.
13
14نکته مهم: برای پایان دادن به جلسه Emacs، دو حرف C-x C-c را تایپ کنید.
15برای خروج از یک فرمانِ ناکامل، C-g را تایپ کنید.
16برای توقف آموزش، C-x k و سپس در پاسخ به نشانگر <Return> را تایپ کنید.
17کاراکترهای ">>" در حاشیه سمت راست فرمانهایی را برای شمامشخص می کند. برای مثال:
18<<خطهای خالی بعد از خط بعدی توسط help-with-tutorial درج میشود>>
19[وسط صفحه برای اهداف آموزشی خالی مانده است. ادامه متن در زیر]
20>> اکنون C-v را تایپ کنید (نمایش صفحه بعدی) تا یک صفحه کامل به پایین بروید.
21 (این کار را با نگه داشتن کلید CONTROL و فشار کلید v انجام دهید).
22 از این پس، لطفاً هر زمان که به انتهای صفحه رسیدید، این کار را انجام دهید.
23
24توجه داشته باشید که وقتی یک صفحه کامل را اسکرول می کنید، دو خط همپوشانی دارند؛
25این مقداری تداوم را فراهم می کند تا بتوانید به خواندن متن ادامه دهید.
26
27این یک کپی از متن آموزشی Emacs است که کمی برای شما شخصی سازی شده است.
28بعداً به شما آموزش خواهیم داد که فرمانهای مختلفی را برای تغییر این متن استفاده
29کنید. اگر قبل از اینکه به شماگفته باشیم، این متن را تغییر داده اید،
30نگران نباشید. این کار «ویرایش» نامیده می شود و Emacs برای همین است.
31
32اولین چیزی که باید بدانید این است که چگونه از یک مکان به اطراف حرکت کنید.
33شما از قبل می دانید که با C-v چگونه یک صفحه به جلو حرکت میکند.
34برای حرکت یک صفحه به سمت عقب، M-v را تایپ کنید (کلید META را نگه دارید
35و v را تایپ کنید، یا اگر کلید META، یا ALT را ندارید، ‪ <ESC>v‬را تایپ کنید).
36
37>> چند بار M-v و سپس C-v را تایپ و امتحان کنید.
38
39شما می توانید این متن را با روش های دیگری که میدانید اسکرول کنید.
40
41* خلاصه
42---------
43
44فرمانهای زیر برای مشاهده کل صفحه نمایش مفید هستند:
45
46‏ C-v یک صفحه نمایش به جلو حرکت کنید.
47‏ M-v یک صفحه نمایش به عقب حرکت کنید.
48‏ C-l پاک کردن صفحه و نمایش مجدد تمام متن،
49 جابجایی مکان نما و متن به مرکز صفحه نمایش
50 (این CONTROL-L است، نه CONTROL-1.)
51
52>> مکان‌نما را پیدا کنید و توجه داشته باشید که چه متنی در نزدیکی آن است.
53 سپس C-l را تایپ کنید. دوباره مکان نما را پیدا کنید وتوجه کنید که هنوز
54 نزدیک همان متن است. اما مکان نما، اکنون در مرکز صفحه است.
55 اگر دوباره C-l را فشار دهید، این قطعه متن به بالای صفحه منتقل می شود.
56 مجددا C-l را فشار دهید، صفحه نمایش دوباره به پایین حرکت می کند.
57
58اگر ترمینال شما کلیدهای PageUp و PageDn را دارد، میتوانید برای جابه‌جایی یک
59صفحه کامل از آنها استفاده کنید.
60اما در صورت استفاده از C-v و M-v شما می توانید کارآمدتر ویرایش کنید.
61
62* کنترل مکان نما
63----------------------
64
65حرکت از یک صفحه نمایش به صفحه نمایش دیگر مفید است، اما چگونه
66به مکان خاصی در متنِ روی صفحه حرکت کنید؟
67
68چندین راه وجود دارد که می توانید این کار را انجام دهید. می توانید از
69کلیدهای جهت دار استفاده کنید، اما کارآمدتر است که دستان خود را در وضعیت
70استاندارد نگه دارید. از فرمانهایِ C-p، C-b، C-f و C-n استفاده کنید. این فرمان ها
71معادل چهار کلید جهت دار هستند، مانند:
72
73 سطر قبل، C-p
74 :
75 :
76 به عقب، C-b .... موقعیت مکان نما فعلی .... به جلو، C-f
77 :
78 :
79 خط بعدی، C-n
80
81>> با استفاده از C-n یا C-p مکان نما را به خط وسط نمودار بالا حرکت دهید.
82 سپس C-l را تایپ کنید تا کل نمودار را در مرکز صفحه نمایش ببینید.
83
84
85به راحتی می توانید این حروف را با کلماتی که مخفف آنها هستند به خاطر بسپارید:
86Previous) p) برای قبلی، Next) n) برای بعدی, Backward) b) برای عقب و
87Forward) f) برای جلو. شما همیشه از این فرمانهایِ اصلی تعیین موقعیت مکان نما
88استفاده خواهید کرد.
89
90>> برای پایین آوردن مکان نما به این خط، چند C-n انجام دهید.
91
92>> حرکت به جلو، روی خط با C-f و سپس به بالا با C-p.
93 ببینید C-p وقتی مکان نما در وسط خط قرار دارد چه می کند.
94
95هر خط از متن با یک کاراکترِ Newline به پایان می رسد، که
96آن را از خط زیر جدا میکند. (به طور معمول،یک فایل در پایان دارای
97یک Newline خواهد بود، اما Emacs به آن نیاز ندارد.)
98
99>> هنگامی که نشانگر در ابتدای خط است، از C-b استفاده کنید. باید به انتهای
100 خط قبلی حرکت کند. به این دلیل است که این حرکت از سراسر Newline میگذرد.
101
102فرمان C-f می تواند مانند C-b روی خط جدید حرکت کند.
103
104>> چند C-b دیگر انجام دهید، بنابراین می توانید نشانگر را در مکان مورد
105 نظر قرار دهید. سپس C-f را انجام دهید تا به انتهای خط برگردید.
106 سپس یک C-f دیگر انجام دهید تا به خط زیر بروید.
107
108
109وقتی از بالا یا پایین صفحه عبور می کنید، متن فراتر می رود
110لبه روی صفحه نمایش جابجا می شود. به این "پیمایش یا اسکرول" می گویند. این
111Emacs را قادر می سازد تا مکان نما را به مکان مشخص شده در متن منتقل کند
112بدون اینکه آن را از صفحه نمایش جدا کنید.
113
114>> سعی کنید مکان نما را از پایین صفحه با C-n حرکت دهید و
115 ببیند چه اتفاقی می افتد.
116
117اگر حرکت بر اساس کاراکترها خیلی کند است، می توانید با کلمات حرکت کنید. M-f
118(META-f) یک کلمه را جلو می برد و M-b یک کلمه را به عقب می برد.
119
120>> چند M-f و M-b تایپ کنید.
121
122وقتی در وسط یک کلمه هستید، M-f به انتهای کلمه می رود.
123هنگامی که در فضای خالی بین کلمات قرار دارید، M-f به انتهای کلمه بعدی منتقل
124می شود. M-b نیز در جهت مخالف کار می کند.
125
126>> فرمان M-f و M-b را چند بار با C-f و C-b در هم آمیخته تایپ کنید،
127 تا عمل M-f و M-b را از انواع مکان های درون و بین کلمات مختلف مشاهده کنید.
128
129
130به موازات بین C-f و C-b از یک طرف و M-f و M-b از طرف دیگر توجه کنید.
131
132عملیات مربوط به واحدهای تعریف شده توسط زبان (کلمات، جملات، پاراگراف ها)
133اغلب با کاراکترهای متا انجام می شود،
134در حالی که کاراکترهای Control بر روی واحدهای اصلی، مستقل از آنچه در حال
135ویرایش هستید (حروف، خطوط و غیره) عمل می کنند.
136
137این توازی بین خطوط و جملات اعمال می شود: C-a و C-e حرکت به
138ابتدا یا انتهای یک خط، و M-a و M-e به ابتدا یا پایان یک جمله حرکت می کنند.
139
140
141>>دو C-a، و سپس دو C-e را امتحان کنید.
142 چند M-a و سپس چند M-e را امتحان کنید.
143
144
145ببینید چگونه C-a های تکراری هیچ کاری انجام نمی دهند، اما M-a های تکراری به
146حرکت خود ادامه می دهند. اگرچه اینها کاملاً مشابه نیستند، اما هر یک طبیعی
147به نظر می رسد.
148
149
150به مکانِ مکان نما در متن "نقطه" نیز می گویند.
151به عبارت دیگر، مکان نما روی صفحه نشان می دهد که نقطه در کجای متن قرار دارد.
152
153
154در اینجا خلاصه ای از عملیات ساده حرکت مکان نما، از جمله
155فرمانهایِ حرکت کلمه و جمله نشان داده می شود:
156
157‏ C-f یک کاراکتر را به جلو حرکت دهید
158‏ C-b یک کاراکتر را به عقب حرکت دهید
159
160‏ M-f یک کلمه را به جلو حرکت دهید
161‏ M-b یک کلمه را به عقب حرکت دهید
162
163‏ C-n به خط بعدی بروید
164‏ C-p به خط قبلی بروید
165
166‏ C-a حرکت به ابتدای خط
167‏ C-e حرکت به انتهای خط
168
169‏ M-a به ابتدای جمله برگردید
170‏ M-e حرکت به جلو تا پایان جمله
171
172>> همه این فرمانها را اکنون چند بار برای تمرین امتحان کنید.
173 این فرمانها بیشترین استفاده را دارند.
174
175دو فرمان مهم دیگر حرکت مکان نما عبارتند از‪ M-< :‬ (META کمتر از)،
176که به ابتدای کل متن حرکت می کند و ‪M->‬ (META بزرگتر از)،
177که به انتهای کل متن می رود.
178
179در اکثر ترمینالها، ">" بالای کاما است، بنابراین باید با استفاده از کلید
180shift آن را تایپ کنید.
181در این ترمینالها باید از کلید shift برای تایپ >-M نیز استفاده کنید.
182بدون کلید shift، شما کاما، M را تایپ می کنید.
183
184>> اکنون >-M را امتحان کنید تا به ابتدای آموزش بروید.
185 سپس از C-v مکرراً برای بازگشت به اینجا استفاده کنید.
186
187>> اکنون <-M را امتحان کنید تا به انتهای آموزش بروید.
188 سپس از M-v مکرراً برای بازگشت به اینجا استفاده کنید.
189
190همچنین می توانید مکان نما را با کلیدهای جهت دار حرکت دهید، اگر ترمینال شما
191آن را داشته باشد. ما استفاده از C-b، C-f، C-n و C-p را به سه دلیل توصیه میکنیم.
192
193اول، آنها بر روی انواع ترمینالها کار می کنند.
194دوم, هنگامی که مهارت شما در استفاده از Emacs بیشتر شود، متوجه خواهید شد که
195تایپ با کنترل کاراکترها، سریعتر از تایپ کلیدهای جهت دار است.
196(زیرا احتیاج نیست که شما دستان خود را از موقعیت تایپ لمسی دور کنید).
197سوم، وقتی شما عادت به استفاده از فرمانهایِ کاراکتر Control را دارید، می توانید
198به راحتی یاد بگیرید که از دیگر فرمانهایِ پیشرفته حرکت مکان نما نیز استفاده کنید.
199
200اکثر فرمانهایِ Emacs یک آرگومان عددی را می پذیرند. برای اکثر فرمانها، این
201به عنوان یک شمارش تکرار عمل می کند.
202نحویِ تحویل تعداد تکرار، با تایپ C-u و سپس اعداد قبل از تایپ فرمان است. اگر
203شما یک کلید META (یا ALT) دارید، راه جایگزینی دیگری برای وارد کردن
204آرگومان عددی وجود دارد: ارقام را در حالی که کلید META را نگه داشته‌اید
205تایپ کنید. ما توصیه می کنیم استفاده از C-u را یاد بگیرید زیرا در هر ترمینال
206کار می کند. آرگومان عددی "آرگومان پیشوند" نیز نامیده می شود.
207زیرا آرگومان را قبل از فرمانی که روی آن اعمال می شود تایپ می کنید.
208
209به عنوان مثال، C-u 8 C-f هشت کاراکتر به جلو حرکت می کند.
210
211>> سعی کنید فقط با یک فرمان، C-n یا C-p با آرگومان عددی برای حرکت مکان نما
212 از خط نزدیک به این خط استفاده کنید.
213
214اکثر فرمانها از آرگومان عددی به عنوان تعداد تکرار استفاده می کنند،
215اما برخی فرمانها از آن به روش دیگری استفاده می کنند.
216چندین فرمان که از آن به عنوان یک علامت تعغیر استفاده میشود.
217(اما هیچ کدام از فرمانهایِی که تا به حال آموخته اید نیستند.)
218وجود یک آرگومان پیشوند، صرف نظر از مقدار آن، فرمان متفاوتی را انجام می دهد.
219
220‏C-v و M-v استثناهای دیگری هستند. با تحویل آرگومان،
221آنها متن را با این تعداد خط به بالا یا پایین اسکرول می کنند نه با یک
222صفحه نمایش. برای مثال، C-u 8 C-v هشت خط پیمایش می کند.
223
224>> اکنون C-u 8 C-v را تایپ کنید.
225
226این فرمان باید متن را 8 خط به بالا اسکرول کند. اگر مایل باشید
227دوباره به پایین برگردید، می توانید یک آرگومان به M-v بدهید.
228
229اگر از یک سیستم نمایشِ گرافیکی مانند X یا MS-Windows استفاده می کنید،
230باید یک ناحیه مستطیل شکل بلند به نام نوار پیمایش در یک طرف پنجره Emacs
231وجود داشته باشد. با کلیک کردن بر روی نوار، متن را اسکرول کنید.
232
233اگر ماوس شما دگمه چرخ دارد، می توانید از آن برای اسکرول نیز استفاده کنید.
234
235
236* اگر EMACS پاسخ نمی دهد.
237---------------------------
238
239اگر Emacs به فرمانهایِ شما پاسخ نمی دهد، می توانید با خیال راحت با
240تایپ کردن C-g آن را متوقف کنید. می توانید از C-g برای متوقف کردن فرمانی که
241انجامش طولانی شده است استفاده کنید.
242
243همچنین می‌توانید از C-g برای حذف یک آرگومان عددی یا ابتدای فرمانی که
244نمی خواهید آن را تمام کنید استفاده کنید.
245
246>> با عمل C-u 100 یک آرگومان عددی 100 بسازید، سپس C-g وبعد از آن
247 C-f را تایپ کنید. بااین فرمانها فقط یک حرف به جلو حرکت می کنید، زیرا شما
248 آرگومان را با C-g لغو کرده اید.
249
250اگر یک <ESC> را اشتباه تایپ کرده اید، می توانید با یک C-g از شر آن خلاص شوید.
251
252
253* فرمانهایِ غیر فعال
254-------------------
255
256برخی از فرمانهایِ Emacs "غیرفعال" هستند تا کاربران مبتدی نتوانند
257از آنها به طور تصادفی استفاده کنند.
258
259اگر یکی از فرمانهایِ غیرفعال را تایپ کنید، Emacs پیامی را نمایش می دهد
260که فرمان چیست و از شما می پرسد که آیامایل به اجرای آن هستید؟
261
262اگر واقعاً می خواهید فرمان را اجرا کنید، <SPC> (نوار فاصله) را در پاسخ به
263سوال تایپ کنید. به طور معمول، اگر نمی خواهید آن را اجرا کنید، به سوال با
264"n" پاسخ دهید.
265
266>> عمل C-x C-l (که یک فرمان غیرفعال است) را انجام دهید،
267 سپس n را در پاسخ به سوال تایپ کنید.
268
269
270* پنجره ها
271----------
272
273با Emacs می تواند چندین "پنجره" داشته باشد که هر کدام متن خاص خود را نشان
274می دهد. ما بعداً در مورد نحوه استفاده از چندین پنجره توضیح خواهیم داد. در
275حال حاضر می خواهیم برای نحوه حذف پنجره های اضافی و بازگشت به حالت اولیه
276ویرایش یک پنجره توضیح دهیم. این عمل آسان است:
277
278‏ C-x 1 یک پنجره (یعنی تمام پنجره های دیگر را حذف کنید).
279
280فرمان C-x 1 پنجره ای تمام صفحه، که حاوی مکان نما است را باز می کند.
281این فرمان تمام پنجره های دیگر را حذف میکند.
282
283
284>> مکان نما را به این خط ببرید و C-u 0 C-l را تایپ کنید.
285>> C-h k C-f را تایپ کنید.
286 ببینید چگونه این پنجره کوچک می شود، در حالی که یک پنجره جدید برای نمایش
287 اطلا عات در فرمان C-f ظاهر می شود.
288
289
290>> با تایپ C-x 1 پنجره فهرست اسناد ناپدید می شود.
291
292یک سری کامل از فرمانها با CONTROL-x شروع می شوند. بسیاری از
293آنها با ویندوز، فایل ها، بافرها و موارد وابسته ارتباط دارند.
294این فرمانها دو، سه یا چهار کاراکتر هستند.
295
296
297* درج و حذف
298------------
299
300اگر می خواهید متن را وارد کنید، فقط متن را تایپ کنید. حروف معمولی،
301مانند A، 7، *، و غیره، هنگام تایپ آنها نوشته می شوند. برای انجام نوشتن
302 خط جدید، <Return> را تایپ کنید (این کلید روی صفحه کلید است
303که گاهی اوقات با عنوان "Enter" شناخته می شود).
304
305برای حذف کاراکترِ قبل از مکان نمای فعلی ، <DEL> را تایپ کنید. این کلید روی
306صفحه کلید است که معمولاً با برچسب "Backspace"است −− همان که معمولاً در خارج
307از Emacs نیز برای حذف آخرین حرفِ نوشته شده استفاده می کنید.
308
309
310همچنین ممکن است کلید دیگری روی صفحه کلید شما با عنوان <Delete> وجود داشته
311باشد، اما این چیزی نیست که ما در Emacs به آن <DEL> می گوییم.
312
313>> اکنون این کار را انجام دهید - چند کاراکتر را تایپ کنید، سپس آنها را حذف
314 کنید. چند بار <DEL> را تایپ کنید. نگران این فایل نباشید در حال تغییر؛
315 شما آموزش اصلی را تغییر نمی دهید. این کپی شخصی شما از آن است.
316
317وقتی نوشتن یک خط در متن بیش از حد طولانی می شود، خط بر روی سطر دوم صفحه
318"ادامه" می یابد. اگر از یک صفحه نمایش گرافیکی استفاده می کنید برای نشان
319دادن جایی که یک خط ادامه یافته است فلش های منحنی کوچکی در فضاهای باریک در
320دو طرف ناحیه متن (حاشیه‌های چپ و راست ) ظاهر می شوند. اگر از ترمینال متنی
321استفاده می کنید، خطِ ادامه یافته با علامت معکوس ('\') در سمت راست ستون
322صفحه نمایش نشان داده می شود.
323
324
325>> به نوشتن متن پس از رسیدن به انتهای خط ادامه دهید.
326خواهید دید که یک خطِ ادامه ظاهر می شود.
327
328>> از <DEL > برای حذف متن استفاده کنید تا زمانی که نوشته مجدداً روی یک خط
329 صفحه قرار گیرد. خط ادامه از بین می رود.
330
331شما می توانید حروف خط جدید را مانند هر حرف دیگری حذف کنید. حذف کاراکتر
332Newline بین دو خط آنها را با هم ادغام می کند. اگر خط ترکیبی به دست آمده
333بیش از حد طولانی باشد که در آن جا نمی شود، عرض صفحه نمایش، با یک خط ادامه،
334نمایش داده می شود.
335
336>> مکان نما را به ابتدای یک خط ببرید و <DEL> را تایپ کنید. این فرمان
337 آن خط را با خط قبلی ادغام می کند.
338
339>> حالا <Return> را تایپ کنید تا خط جدیدی را که حذف کرده اید دوباره وارد کنید.
340
341کلید <Return> ویژه است، زیرا با فشار دادن آن ممکن است بیش از این کار انجام شود.
342فقط یک کاراکتر Newline وارد کنید. بسته به متن اطراف،
343ممکن است بعد از کاراکتر Newline فضای خالی را وارد کند، به طوری که وقتی
344شما شروع به تایپ کردن در خط جدید می کنید، متن با خط قبلی آن ردیف می شود.
345ما به این رفتار (که در آن فشار دادن یک
346کلید چیزی بیش از وارد کردن کاراکتر مربوطه انجام می دهد) می گوییم "electric".
347
348>> در اینجا مثالی از الکتریکی بودن <Return> آورده شده است.
349 <Return> را در انتهای این خط تایپ کنید.
350
351باید ببینید که بعد از درج Newline فاصله ها هم درج می شوند،
352به طوری که مکان نمابه جای مناسب حرکت می کند.
353
354به یاد داشته باشید که به اکثر فرمانهایِ Emacs می توان تعداد تکرار، داده شود.
355این شامل کاراکترهای متنی نیز است. تکرار درج کاراکتر متنی برای چندین بار.
356
357
358>> اکنون آن را امتحان کنید - ‪ C-u 8 *‬ را برای درج ******** تایپ کنید.
359
360شما اکنون ابتدایی ترین راه را برای تایپ با Emacs و تصحیح خطاها یاد گرفته اید.
361شما می توانید کلمات یا خطوط را نیز حذف کنید.
362در اینجا خلاصه ای از عملیات حذف آمده است:
363
364 ‏ <DEL> کاراکتر را درست قبل از مکان نما حذف می کنید.
365 ‏ C−d کاراکتر بعدی، بعد از مکان نما را حذف می کنید.
366
367 ‏ <M-<DEL کلمه را بلافاصله قبل از مکان نما حذف می کنید.
368 ‏ M-d کلمه بعدی را بعد از مکان نما حذف می کنید.
369
370 ‏ C-k از موقعیت مکان نما تا انتهای خط را حذف می کنید.
371 ‏ M-k از موقعیت مکان نما تا انتهای جمله را حذف میکنِید.
372
373توجه داشته باشید که <DEL> و C-d در مقابل <M-<DEL و M-d موازاتی را گسترش می دهند
374که با C-f و M-f شروع شده است (خوب، <DEL> واقعاً یک کاراکتر کنترلی نیست، اما
375بیایید نگران این نباشیم). C-k و M-k مانند C-e و M-e هستند، به نوعی، در آن
376خطوط با جملات جفت می شوند.
377
378شما همچنین می توانید یک بخش از متن را با یک روش یکسان حذف کنید . به انتهای
379یک قسمت حرکت کنید، و سپس <C-<SPC را تایپ کنید. (<SPC> کلید نوار Space
380است.) سپس مکان نما را به انتهای دیگر متنی که قصد دارید حذف کنید، ببرید.
381با انجام این کار، Emacs متن بین مکان نما وموقعیتی که با <C-<SPC تایپ کرده اید
382را مشخص می کند. در نهایت C-w را تایپ کنید. با این عمل متنِ بین دو موقعیت
383را حذف میکنید.
384
385
386>> مکان نما را در ابتدای پاراگراف قبلی به «ش» حرکت دهید.
387
388>> با تایپ <C-<SPC، در پایین صفحه نمایش Emacs باید یک پیام "Mark set" را
389 نمایش دهد.
390
391>> در خط دوم ازمتن، مکان نما را به «ی» در "یک"، حرکت دهید.
392
393‏>> C-w را تایپ کنید. با این کار متنی که از «ش» شروع می شود و درست قبل از
394«ی» به پایان می رسد را از بین می برید.
395
396تفاوت بین "کشتن" و "حذف" در همان متن این است که "کشته" را می توان دوباره
397درج کرد (در هر موقعیتی)، در حالی که چیزهای "حذف شده" را نمی توانید به این
398روش دوباره درج کنید (اما می توانید حذف را لغو کنید - در زیر ببینید.) درج
399مجدد متن کشته شده "yanking" نامیده می شود. ( به عنوان عقب نشینی یا عقب
400کشیدن متنی که برداشته شده است به آن فکرکن.)
401
402به طور کلی، فرمانهایِی که می توانند متن زیادی را حذف کنند، متن را «میکشند».
403(آنها به گونه ای تنظیم شده اند که بتوانید متن را باز گردانند)، در حالی که
404فرمانهایِی که فقط یک کاراکتر را حذف می کند، یا فقط خطوط و فاصله های خالی را
405حذف می کند، حذف را انجام می دهند (بنابراین نمی توانید آن متن را برگرداند).
406<DEL> و C-d در ساده ترین حالت، بدون هیچ آرگومان حذف را انجام می دهند.وقتی
407آرگومان به آنها داده می شود درعوض مکشند.
408
409>> مکان نما را به ابتدای خطی که خالی نیست حرکت دهید.
410سپس C-k را تایپ کنید تا متن روی آن خط حذف شود.
411
412>> بار دوم C-k را تایپ کنید. خواهید دید که Newline را می کشد که بعد از آن
413 خط است.
414
415توجه داشته باشید که یک C-k محتویات خط را می کشد و یک C-k ثانوی خود خط را
416می کشد و همه خطوط دیگر را به سمت بالا حرکت می دهد. C-kبه طور خاص با یک
417آرگومان عددی برخورد می کند: این تعداد خطوط و محتویات آنهارا میکشد. این
418صرفا یک تکرار نیست. C-u 2 C-k دو خط و Newline آنها را می کشد. دو بار تایپ
419کردن C-k این کار را نمی کند.
420
421می‌توانید متن کشته‌شده را در همان مکانی که در آن قرار داشت، باز گردانید.
422یا در جای دیگری از متنی که در حال ویرایش آن هستید، یا حتی در
423یک فایل متفاوت می‌توانید یک متن را چندین بار باز گردانید. که
424چندین کپی از آن می سازد. با مراجعه به کتابچه راهنمایِ Emacs در موارد "کشتن" و
425انحرافِ "برش" و "چسباندن" میتوانید اطلاعات بیشتری کسب کنید.
426
427
428فرمانِ‪"yank" ,C-y ‬ است. آخرین متن کشته شده را در موقعیت مکان نما فعلی دوباره
429درج می کند.
430
431
432>> آن را امتحان کنید. C-y را تایپ کنید تا متن را به عقب برگردانید.
433
434اگر چندین C-k را پشت سر هم انجام دهید، تمام متن کشته شده ذخیره می شود،
435 به طوری که یک C-y همه خطوط را به یکباره انحراف می دهد.
436
437>> اکنون این کار را انجام دهید، C-k را چندین بار تایپ کنید.
438
439حال برای بازیابی آن متن کشته شده:
440
441‏>> C-y را تایپ کنید. سپس مکان نما را چند خط پایین ببرید و دوباره C-y را
442تایپ کنید اکنون نحوه کپی کردن متن را مشاهده می کنید.
443
444اگر متنی داشته باشید که می خواهید به عقب برگردید، چه کار می کنید چیز دیگری
445می کشید؟ C-y کشتن اخیر را از بین می برد. ولی متن قبلی گم نمی شود می توانید
446با استفاده از M-y به آن برگردید فرمان بعد از اینکه C-y را برای دریافت
447آخرین kill انجام دادید، تایپ کنید M-y آن متن یاک شده را با kill قبلی
448جایگزین می کند. تایپ کردن M-y بارها و بارها کشتارهای قبلی و قبلی را به
449ارمغان می آورد. وقتی به متن مورد نظر رسیدید، لازم نیست کاری انجام دهید تا
450نگهش دارید. فقط به ویرایش خود ادامه دهید و متن انحرافی را رها کنید.
451
452اگر تعداد M-y به دفعات کافی داشته باشید، به نقطه شروع باز می گردید
453(بیشترین کشتن اخیر).
454
455>> یک خط را بکشید، در اطراف حرکت کنید، یک خط دیگر را بکشید.
456 سپس C-y را انجام دهید تا دومین خط کشته شده را برگردانید.
457 سپس M-y را انجام دهید تا اولین خط کشته شده جایگزین آن شود.
458 M-y های بیشتری انجام دهید و ببینید چه چیزی به دست می آورید. به انجام
459 آنها ادامه دهید تا زمانی که خط کشتن دوم برمی گردد، و سپس چند بار دیگر.
460 اگر دوست دارید، می‌توانید امتحان کنیدو به M-y آرگومانهای مثبت و منفی
461 بدهید.
462
463
464
465* لغو
466------
467
468اگر تغییری در متن ایجاد کنید و سپس تصمیم به برگرداندن آن تغییر بگیرید،
469شما می توانید تغییر را با فرمان ‪(undo) C-/‬ لغو کنید.
470
471به طور معمول، ‪ C-/‬ تغییرات ایجاد شده توسط یک فرمان را خنثی می کند.
472اگر ‪ C-/‬ را چندین بار پشت سر هم، تکرار کنید هر تکرار یک فرمان دیگر
473را خنثی می کند.
474
475اما دو استثنا وجود دارد: فرمانهایِی که متن را تغییر نمی دهند
476به حساب نمی آیند (این شامل فرمانهایِ حرکت مکان نما و فرمانهایِ اسکرول می شود.)
477و کاراکترهای خود درج معمولاً در گروهای، تا ۲۰ تایی رسیدگی می شوند.
478(این برای کاهش تعداد‪ C-/ ‬ هایی است که باید برای لغو درج متن) تایپ کنید.
479
480
481>> این خط را با C-k بکشید، سپس /-C را تایپ کنید تا دوباره ظاهر شود. ـ-C یک
482 فرمان لغو جایگزین است. دقیقاً مانند‪ C-/ ‬ کار می کند. در برخی از پایانه
483 های متنی، تایپ‪ C-/ ‬ در واقع _-C را به Emacs ارسال می کند. از طرف
484 دیگر، C-x u نیز دقیقاً مانند‪ C-/ ‬ کار می کند، اما کمی کمتر است و راحتر
485 تایپ میشود.
486
487
488یک آرگومان عددی /-C-_ ، C, یا C-x u به عنوان یک تعداد تکرار عمل می کند.
489
490همانطور که می توانید حذف متن را لغو کنید، می توانید کشتن متن رانیز لغو کنید.
491تمایز بین کشتن چیزی و حذف آن در مورد C-y تأثیر می گذارد، برای لغو فرقی نمی کند.
492
493
494* فایل ها
495---------
496
497برای اینکه متنی را که ویرایش می کنید دائمی کنید، باید آن را در یک فایل
498قرار دهید. در غیر این صورت، با خروج از Emacs از بین می رود. برای اینکه متن
499خود را در یک فایل قرار دهید، قبل از وارد کردن فایل باید آن را "پیدا کنید".
500(به این "بازدید از فایل" نیز گفته می شود.)
501
502پیدا کردن یک فایل به این معنی است که شما محتویات فایل را در داخل Emacs
503می بینید از بسیاری جهات، گویی در حال ویرایش خود فایل هستید. با این حال،
504تغییراتی که با استفاده از Emacs ایجاد می کنید دائمی نمی شوند تا زمانی که
505فایل را "ذخیره" کنید. این به این دلیل است که شما بتوانید از ذخیره کردن
506فایل نیمه کامل اجتناب کنید. حتی هنگامی که فایل را ذخیره کردید Emacs فایل
507اصلی را با نام دیگری برایتان نگه میدارد، چون ممکن است بعداً تصمیم بگیرید که
508تغییرات شما اشتباه بوده است.
509
510اگر به پایین صفحه نگاه کنید، خطی را خواهید دید که
511با حروف "−" شروع می شود و چیزی مانند: "TUTORIAL ---:-" در آن را نشان می دهد.
512این قسمت از صفحه نمایش معمولاً نام فایلی که در حال حاضر از آن بازدید می
513کنید را نشان میدهد. شما اکنون در حال بازدید از کپی شخصی آموزش Emacs خود که
514"TUTORIAL" نام دارد هستید. وقتی شما یک فایل را با Emacs پیدا کردید، نام آن
515فایل بطور دقیق در همان نقطه ظاهر می شود.
516
517یک مورد خاص در مورد فرمان برای یافتن یک فایل این است که شما باید بگویید چه
518نام فایلی را می خواهید. ما می گوییم فرمان "خواندن یک ارگومان"
519(در این مورد، آرگومان نام فایل است.)بعد از تایپ فرمان.
520
521
522با C-x C-f یک فایل را پیدا کنید. Emacs از شما می خواهد که نام فایل را تایپ
523کنید. نام فایلی که تایپ می کنید در خط پایین صفحه نمایش ظاهر می شود. خط
524پایین زمانی که برای این نوع ورودی استفاده می شود، «مینی بافر» نامیده می
525شود. شما می توانید ازفرمانهایِ ویرایش معمولی Emacs برای ویرایش نام فایل
526استفاده کنید.
527
528در حالی که نام فایل (یا هر ورودی مینی بافر دیگر) را وارد می کنید،
529می توانید با C-g فرمان را لغو کنید.
530
531>> فرمانِ C-x C-f را تایپ کنید، سپس C-g را تایپ کنید. این فرمانِ مینی بافر
532 را لغو می کند، و همچنین فرمان C-x C-f را که مینی بافر از آن استفاده می
533 کرد را لغو می کند، بنابراین شما هیچ فایلی را پیدا نمی کنید.
534
535وقتی نام فایل را وارد کردید، <Return> را تایپ کنید تا
536آن را خاتمه دهید. مینی بافر ناپدید می شود و فرمان C-x C-f
537برای یافتن فایلی که انتخاب کرده اید اعمال میشود.
538
539محتویات فایل اکنون روی صفحه ظاهر می شود و می توانید آن را ویرایش کنید.
540هنگامی که می خواهید تغییرات خود را دائمی کنید، فرمان
541
542‏ C-x C-s فایل را ذخیره کنید
543
544این فرمان متن را در فایل درون Emacs کپی می کند. اولین باری که این
545کار را انجام دهید، Emacs نام فایل اصلی را به نام جدید تغییر می دهد بنابر این
546گم نمی شود. نام جدید با افزودن "~" به انتهای نام فایل اصلی ساخته می شود.
547هنگامی که ذخیره به پایان رسید، Emacs نام فایل نوشته شده را نمایش می دهد.
548
549
550‏>> <C-x C-s TUTORIAL <Return را تایپ کنید.
551 این فرمان باید این آموزش را در فایلی به نام TUTORIAL ذخیره کند و
552 و " Wrote...TUTORIAL " را در پایین صفحه نشان دهد.
553
554می توانید یک فایل موجود را پیدا کنید، آن را مشاهده یا ویرایش کنید. شما
555همچنین می توانید فایلی را پیدا کنید که قبلاً وجود ندارد. این راه ایجاد یک
556فایل با Emacs است: فایل را پیدا کنید که خالی شروع می شود و سپس شروع به درج
557متن در آن کنید، وقتی شما درخواست ذخیره فایل را می کنید، Emacs در واقع فایل
558را با متنی که شما درج کرده اید ایجاد می کند. از آن به بعد، می توانید خود
559را در حال ویرایش فایل موجود بدانید.
560
561
562
563* بافرها
564---------
565
566اگر فایل دومی را با C-x C-f پیدا کردید، فایل اول داخل Emacs باقی می ماند.
567برای برگشت مجدد به آن شما می‌توانید با C-x C-f ، دو باره آن را پیدا کنید.
568با این روش می توانید تعداد زیادی فایل را در داخل Emacs باز کنید.
569
570ایمکس متن هر فایل را در یک مکان به نام "بافر" ذخیره می کند.
571پیدا کردن یک فایل، یک بافر جدید در Emacs ایجاد می کند. برای دیدن لیستی از
572بافرهایی که در حال حاضر وجود دارند، تایپ کنید
573
574‏ C-x C-b لیست بافرها
575
576>> اکنون C-x C-b را امتحان کنید.
577
578ببینید که چگونه هر بافر یک نام دارد و همچنین ممکن است نام فایلی که محتویات
579آن را نگه می دارد داشته باشد. هر متنی که در پنجره Emacs می بینید همیشه
580بخشی از یک بافر است.
581
582>> با تایپ C-x 1 میتوانید از شر لیست بافر خلاص شوید.
583
584هنگامی که چندین بافر دارید، در هر زمان تنها یکی از آنها "جاری" است. آن
585بافر همان بافری است که شما ویرایش می کنید. اگر می خواهید بافر دیگری را
586ویرایش کنید، باید به آن "سوئیچ" کنید. اگر می خواهید به یک بافر سوئیچ کنید
587که مربوط به یک فایل است، می توانید با مراجعه مجدد به آن فایل با C-x C-f
588این کار را انجام دهید. اما یک راه ساده تر وجود دارد: از فرمان C-x b
589استفاده کنید. در آن فرمان باید نام بافر را تایپ کنید.
590
591>> با تایپ ‪C-x C-f foo <Return> ‬ فایلی به نام "foo" ایجاد کنید.
592 سپس ‪ C-x b TUTORIAL <Return>‬ را تایپ کنید تا به این آموزش بازگردید.
593
594اغلب اوقات، نام بافر با نام فایل یکی است(بدون قسمت پوشه فایل). به هر حال،
595این همیشه درست نیست. لیست بافری که با C-x C-b ایجاد می کنید، نام هر دو
596بافر و نام فایل هر بافر را به شما نشان می دهد.
597
598برخی از بافرها با فایل ها مطابقت ندارند. بافری با نام "*Buffer List*" که
599حاوی لیست بافری است که شما آن را با C-x C-b ساخته اید هیچ فایلی ندارد. این
600‪TUTORIAL buffer‬ که در ابتدا انجام شد فایلی ندارد، اما اکنون دارد، زیرا
601قبلا شما C-x C-s را تایپ کردید و آن را در یک فایل ذخیره کرده اید.
602
603بافر ی با نام "*Messages*" نیز با هیچ فایلی مطابقت ندارد. این بافر حاوی
604پیام هایی است که در در طول جلسه Emacs شما، در خط پایین ظاهر شده اند.
605
606>> حالا < C-x b *Messages* <Return را تایپ کنید تا به بافر پیام ها نگاه کنید.
607 سپس < C-x b TUTORIAL <Return را تایپ کنید تا به این آموزش بازگردید.
608
609اگر در متن یک فایل تغییراتی ایجاد کردید و سپس فایل دیگری را پیدا کنید، این
610فایل اول را ذخیره نمی کند. آن تغییرات در Emacs در بافر آن فایل باقی می ماند.
611ایجاد یا ویرایش فایل دوم بافر، هیچ تاثیری روی بافر فایل اول ندارد.
612این بسیار مفید است، اما این بدان معناست که شما به یک راه راحت برای ذخیره
613بافر فایل اول نیاز دارید. نیاز به برگشت به بافِر اول برای ذخیره آن توسط
614C-x C-s کمی دردسرامیز است. بنابراین فرمانِ زیر را داریم.
615
616‏ C-x s برخی از بافرها را ذخیره کنید
617
618فرمان C-x s در مورد هر بافری که حاوی تغییراتی که ذخیرِه
619نشده است از شما می پرسد.
620
621>> یک خط متن وارد کنید، سپس C-x s را تایپ کنید.
622 باید از شما بپرسد که آیا بافر با نام TUTORIAL را ذخیره می کنید یا خیر.
623 با تایپ "y" به سوال پاسخ مثبت دهید.
624
625
626* گسترش مجموعه فرمانها
627---------------------------
628
629فرمانهایِ Emacs بسیار بسیار بیشتر است از آنچه که امکان قراردادن همه آنها
630با کاراکترها ی کنترل و متا باشد.
631 Emacs با فرمان( X (eXtend این کار را میسر میکند.
632دو حالت برای این وجود دارد:
633
634‏ C-x کاراکتر برای eXtend. بعد از یک کاراکتر.
635‏ M-x فرمانی با نام eXtend. بعد از یک نام طولانی.
636
637اینها فرمانهایی هستند که عموما مفید هستند، اما کمتر ازفرمانهایی که قبلاً در
638مورد آنها آموخته اید استفاده می شوند. شما قبلاً چند مورد از انها را
639دیده‌اید: برای مثال فرمان فایل C-x C-f را برای یافتن و C-x C-s را برای
640ذخیره کردن در نظر بگیرید. مثال دیگر، فرمان C-x C-c فرمان پایان دادن به جلسه
641Emacs است. (نگران از دست دادن تغییراتی که ایجاد کرده اید نباشید C-x C-c
642پیشنهاد می کند هر فایل تغییر یافته را ذخیره کنید قبل از اتمام جلسه Emacs.)
643
644
645اگر از صفحه نمایش گرافیکی استفاده می کنید، نیازی به فرمان خاصی برای انتقال
646از Emacs به برنامه دیگر ندارید. شما می توانید این کار رابا ماوس یا با
647فرمانهای مدیر پنجره انجام دهید. با این حال،اگر شمااز ترمینال متنی که می
648تواند تنها یک برنامه را در یک زمان نشان دهد، استفاده می کنیدباید Emacs را
649"تعلیق" کنید تا به هر برنامه دیگری بروید.
650
651فرمان C-z خروج *موقت*--- از Emacs است تا بتوانید به همان جلسه Emacs
652برگردید. هنگامی که Emacs روی یک ترمینال متنی اجرا می شود، C-z، Emacs را به
653حالت تعلیق در می آورد. یعنی به shell برمی گردد اما کار Emacs را از بین نمی
654برد. در رایج ترین shell ها، شما می تواند Emacs را با فرمان "fg" یا با‪
655"%emacs"‬ از سر بگیرد.
656
657زمان استفاده از C-x C-c زمانی است که می خواهید از سیستم خارج شوید. همچنین
658برای خروج از Emacs و ویرایش سریع استفاده می شود، همانند یک ابزار مدیریت
659ایمیل.
660
661فرمانهای C-x زیادی وجود دارد. در اینجا لیستی از مواردی که یاد گرفته اید است:
662
663‏ C-x C-f فایل را پیدا کنید
664‏ C-x C-s ذخیره فایل
665‏ C-x s برخی از بافرها را ذخیره کنید
666‏ C-x C-b لیست بافرها
667‏ C-x b سوئیچ بافر
668‏ C-x C-c از Emacs خارج شوید
669‏ C-x 1 تمام پنجره ها را به جز یک حذف کنید
670‏ C-x u لغو فرمان
671
672فرمانهایی با نام eXtended فرمانهایی هستند که به طور مکرر کمتر مورد استفاده
673قرار می گیرند یا فرمانهایی که فقط در حالت های خاصی استفاده می شوند.
674به عنوان یک مثال فرمان replace-string است که یک رشته حروف را جایگزین رشته
675حروف دیگری در بافر می کند. وقتی M-x را تایپ می‌کنید، Emacs درپایین صفحه با
676نشان دادنِ M-x از شما می‌خواهد نام فرمان را تایپ کنید؛ در اینجا یعنی
677"replace-string". فقط " <repl s<TAB" را تایپ کنید و Emacs نام فرمان را
678تکمیل می کند. (<TAB> کلید Tab است که معمولاً جایگاهش بالای کلید CapsLock یا
679Shift نزدیک لبه سمت چپ کیبورد است.) نام کامل شده فرمان را با <Return>
680ارسال کنید.
681
682فرمان replace-string به دو آرگومان نیاز دارد -- رشته جایگزین شونده
683و رشته ای که جایگزین آن شود.شما باید هر آرگومان رابا <Return> پایان دهید.
684
685
686>> مکان نما را به خط خالی دو خط زیر این یکی ببرید.
687 سپس < M-x repl s<Return>changed<Return>altered<Return را تایپ کنید.
688
689
690 توجه کنید که این خط چگونه تغییر کرده است: شما کلمه "changed" را با"altered"
691 جایگزین کرده اید. هر جایی که بعد از موقعیت اولیه مکان نما رخ داد.
692
693
694* ذخیره خودکار
695---------------
696
697وقتی تغییراتی در فایلی ایجاد کرده اید، اما هنوز آنها را ذخیره نکرده اید،
698اگر کامپیوتر شما خراب شود، ممکن است از بین بروند. برای محافظت شما از آن،
699Emacs به صورت دوره ای برای هر فایلی که شما در حال ویرایش آن هستید یک فایل
700"ذخیره خودکار" می نویسد. نام فایل ذخیره خودکار دارای یک # در ابتدا و در
701پایان است؛ به عنوان مثال، اگر فایل شما "hello.c" نام دارد، ذخیره خودکار نام
702فایل "#hello.c#" است.وقتی فایل را به روش عادی ذخیره می کنید، Emacs فایل
703ذخیره خودکار خود را حذف می کند.
704
705اگر رایانه خراب شد، می‌توانید ویرایش ذخیره‌شده خودکار خود را توسط
706یافتن فایل به طور معمول (فایلی که در حال ویرایش آن بودید، نه ذخیره فایل خودکار)
707و سپس تایپ M-x recover-this-file <Return> بازیابی کنید . هنگامی که
708تأیید آن را می خواهد،< yes<Return را تایپ کنید تابه ذخیره خودکار داده ها
709ادامه دهید و آن را بازیابی کنید.
710
711
712
713* منطقه اکو
714-----------
715
716اگر Emacs ببیند که به آرامی فرمانهای چند کاراکتری را تایپ می کنید، آن را
717انجام می دهد آنها را در پایین صفحه در ناحیه ای به نام "منطقه اکو" به شما
718نشان می دهد. ناحیه اکو حاوی خط پایین صفحه نمایش است.
719
720
721* خط حالت ( MODE LINE)
722-----------------------
723
724خط بلافاصله بالای ناحیه اکو "mode line" نامیده می شود.
725خط حالت چیزی شبیه به این می گوید:
726
727‏ TUTORIAL 63% L749 (Fundamental) −**:−
728
729این خط، اطلاعات مفیدی در مورد وضعیت Emacs
730و متنی که در حال ویرایش آن هستید می دهد.
731
732شما از قبل می دانید که نام فایل به چه معناست -- این فایلی است که شما دارید.
733 NN% موقعیت فعلی شما را در متن بافر نشان می دهد. این
734به این معنی است که NN درصد از بافر بالای صفحه نمایش است.
735اگر بالای بافر روی صفحه باشد، به آن "Top" بجای "0٪" می گوید.
736اگر پایین بافر روی صفحه باشد، "Bot" می گوید.
737اگر به بافری نگاه می کنید که آنقدر کوچک است که همه آن روی صفحه جا می شود,
738خط مد می گوید, "All".
739
740حرف L و ارقام، موقعیت را به طریق دیگری نشان می دهند: آنها شماره خط فعلیِ
741نقطه را نشان می دهند.
742
743ستاره های نزدیک به جلو به این معنی است که شما تغییراتی در متن ایجاد کرده
744اید. درست پس از بازدید یا ذخیره یک فایل، آن قسمت از خط حالت، با خطوط تیره
745و بدون ستاره نمایش داده می شود.
746
747آن بخشی از خط حالت که در داخل پرانتز است گویایِ
748حالت‌های ویرایشی فعلی هستند. حالتی که الان استفاده می کنید Fundamental است.
749این نمونه ای از "مد ماژر (major mode)" است.
750
751ایمکس حالت های اصلی مختلف فراوان دارد. برخی از آنها برای
752ویرایش زبان های برنامه ریزی مختلف مثل Lisp هستند و برخی برای
753ویرایش متن هستند، و غیره.
754
755در هر زمان یک و تنها یک مد ماژر فعال است، و نام آن را همیشه می توان در خط
756حالت، دقیقاً در جایی که اکنون "Fundamental" است، یافت.
757
758هر مد ماژر باعث می شود که برخی از فرمانها متفاوت عمل کنند. مثلا، فرمانهایی
759برای ایجاد comment در یک برنامه وجود دارد و از آنجایی که هر کدام از
760زبانهای برنامه نویسی ایده متفاوتی در مورد آنچه که یک comment باید باشد
761دارند هر مد ماژر باید comment رابه طور متفاوتی درج کند. هر یک از مدهای
762ماژر نام یک فرمان توسعه یافته است، که چگونه می توانید به آن حالت تغییر
763دهید. برای مثال، M-x fundamental-mode فرمانی است که به حالت اساسی بروید.
764
765اگر قرار است متنی به زبان انسانی مانند: این فایل را ویرایش کنید، شما
766احتمالا باید از حالت متن استفاده کنید.
767
768>> تایپ کنید < M-x text-mode <Return
769
770نگران نباشید، هیچ یک از فرمانهایِ Emacs که یاد گرفته اید تغییر نمی کند اما
771می توانید مشاهده کنید که M-f و M-b اکنون آپاستروف ها به عنوان بخشی از
772کلمات رفتارمی کنند.قبلاً در حالت بنیادی، M-f و M-b مانند آپاستروف ها به عنوان
773جداکننده کلمات رفتار می کردند.
774
775
776اکثر فرمانها در هر مد ماژر "همان کار" را انجام می دهند، امادرمواردی مانند
777مثال بالا کمی متفاوت عمل می کنند.
778
779
780برای مشاهده اطلاعات امدادی در مد ماژر فعلی خود، C-h m را تایپ کنید.
781
782>> مکان نما را به خط زیر این خط ببرید.
783>> C-l C-l را تایپ کنید تا این خط به بالای صفحه نمایش داده شود.
784>> C-h m را تایپ کنید تا ببینید مدِ Text با مدِ Fundamental چه تفاوتی دارد.
785>> C-x 1 را تایپ کنید تا اطلاعات امدادی را از روی صفحه حذف کنید.
786
787مد ماژور را ماژر می نامند زیرا مد ماینور نیز وجود دارد. مدهای ماینور
788جایگزینی برای مدهای ما‍‍‍ژور نیستند، فقط آنها را تغیر و تبدیل می کنند. هر مد
789ماینور می تواند خودش مستقلانه روشن یا خاموش گردد، مستقل ازتمام مدهای
790ماینور دیگر،و مستقل از مد ماژر فعلی شما. بنابراین می توانید از هیچ مد
791ماینور، یک مد ماینور و یاترکیبی از چند مد ماینور استفاده کنید.
792
793
794یک مد ماینور که بسیار مفید است، به خصوص برای ویرایش متن به زبان انسانی
795(human-language)، مد ماینورِ خود−پر کن (Auto Fill mode) است. وقتی این مد
796روشن است, و شما با نوشتن متن، خطی بوجود می آورد که خیلی طولانی است،Emacs
797خط بین کلمات را به طور خودکار می شکند.
798
799
800شما می توانید با انجام <M-x auto-fill-mode <Return, مد ماینور خودکار را
801روشن کنید. وقتی مد روشن است، می توانید با انجام < M-x auto-fill-mode
802<Return دوباره آن را خاموش کنید. اگر مد خاموش باشد، با این فرمان روشن می
803شود واگر مد روشن است، این فرمان آن را خاموش می کند. ما به این فرمان "تغییر
804مد" می گوییم.
805
806
807>>اکنون <M-x auto-fill-mode <Return را تایپ کنید.
808 سپس یک خط "asdf" را وارد کنید،آن را تکرار کنید تا زمانی که ببینید که به
809 دو خط تقسیم شده است. شماباید فاصله (spaces) بین آنها بوجود آورید، زیرا
810 Auto Fill خطوط را فقط درفواصل می شکند.
811
812حاشیه معمولاً از 70 کاراکتر تشکیل می شود، اما شما می توانید آن را با فرمان
813C-x f تغییر دهید. شما باید تنظیمات حاشیه ای را که می خواهید بدهید،همراه با
814استدلال عددی باشد.
815
816‏> C-x f را با آرگومان 20 تایپ کنید. (C-u 2 0 C-x f).
817 سپس مقداری متن را تایپ کنید و سپس ببینید Emacs، خطوط 20 کاراکتری را با
818 آن پر می کنید. سپس با استفاده از C-x f، دوباره حاشیه را به 70
819 برگردانید.
820
821
822اگر در وسط پاراگراف تغییراتی ایجاد کردید، حالت پر کردن خودکار دوباره آن را
823برای شماپر نمی کند. برای پر کردن مجدد پاراگراف، M-q (META-q) رابا مکان نما
824در داخل آن پاراگراف تایپ کنید.
825
826
827>> مکان نما را به پاراگراف قبلی ببرید و M-q را تایپ کنید.
828
829
830* جستجوکردن
831-----------
832
833با Emacs می توانید رشته ها را جستجو کند («رشته:string » گروهی از
834کاراکترهای به هم پیوسته است). جستجو به جلو در متن یا به عقب در متن.
835جستجوی برای یک string یک فرمان حرکت مکان نما است. آن مکان نما را به مکان
836بعدی که آن رشته ظاهر می شود حرکت می دهد.
837
838فرمان جستجوی Emacs "افزایشی" است. این بدان معنی است که
839جستجو زمانی اتفاق می افتد که رشته مورد نظر را برای جستجو تایپ می کنید.
840
841فرمان شروع جستجو C-s برای جستجوی جلو و C-r برای جستجوی معکوس است.
842اما صبر کنید! اکنون آنها را امتحان نکنید.
843
844وقتی C-s را تایپ می کنید متوجه خواهید شد که رشته "I-search" به صورت یک
845اعلان در ناحیه اکو ظاهر می شود. این به شما می گوید که Emacs مشغول کاری است
846که یک جستجوی افزایشی نامیده می شود و در آن حالت منتظر شماست تامورد جستجو
847را تایپ کنید. <Return> یک جستجو را خاتمه می دهد.
848
849>> اکنون C-s را برای شروع جستجو تایپ کنید
850 کلمه"مکان نما" را به آرامی، با تک تک حروف تایپ کنید، پس از تایپ
851 هر کاراکتر مکث کنید, تا متوجه آنچه برای مکان نما اتفاق می افتد شوید.
852 اکنون یک بار "مکان نما" را جستجو کرده اید.
853>> دوباره تایپ کنید C-s، برای جستجوی رخداد بعدی "مکان نما".
854>> اکنون <DEL> را چهار بار تایپ کنید و ببینید مکان نما چگونه حرکت می کند.
855>> برای پایان یافتن جستجو، <Return> را تایپ کنید.
856
857دیدید چه اتفاقی افتاد؟ Emacs، در یک جستجوی افزایشی، سعی می کند
858به رخداد رشته ای که تاکنون تایپ کرده اید بروید.
859برای رفتن به رخداد بعدی "مکان نما"، فقط C-s را دوباره تایپ کنید. اگر چنین
860رخدادی وجود ندارد، Emacs بوق می‌زند و به شما می‌گوید جستجو در حال حاضر
861"شکست" خرده است. C-g نیز جستجو را خاتمه می دهد.
862
863اگر در وسط یک جستجوی افزایشی هستید و <DEL> را تایپ کنید،
864جستجو، "عقب نشینی" به مکان قبلی میکند. اگر برای پیشرفت جستجوی رشته ای بعدی،
865بعد از اینکه C-s را تایپ کردید <DEL> را تایپ کنید،
866<DEL> مکان نما را به یک اتفاق قبلی برمی گرداند. اگر
867هیچ مورد قبلی در رشته جستجو وجود نداشته باشد، <DEL> آخرین کاراکتر را
868در رشته جستجوپاک می کند.
869 برای مثال، فرض کنید "م" را تایپ کرده اید
870برای اولین بار "م" را جستجو کنید. حالا اگر "ک" را تایپ کنید،
871مکان نما به اولین رخداد "مک" حرکت می کند. حالا <DEL> را تایپ کنید.
872این "ک" را از رشته جستجو پاک می کند و مکان نما به به اولین وقوع "م" در
873رشته جستجو به عقب برمی گردد.
874
875اگر در وسط یک جستجو هستید و کاراکتر کنترل یا متا را تایپ کنید،
876شخصیت (به استثنای معدود کاراکتر هایی که در یک جستجو خاص هستند،
877مانند C-s و C-r)، جستجو خاتمه می یابد.
878
879با C-s جستجو را بعد از موقعیت مکان نمای فعلی شروع می کنید و هر رخدادی از رشته
880بعد از مکان نما جستجو می شود. اگر می خواهید چیزی در متن قبل از مکان نما جستجو
881شود، به جای آن، C-r را تایپ کنید. همه چیزهایی که ما در مورد C-s
882گفته ایم برای C-r نیز صدق می کند، با این تفاوت که جهت جستجو معکوس می شود.
883
884
885* پنجره های چندگانه
886--------------------
887
888یکی از ویژگی های خوب Emacs این است که می توانید در یک زمان بیشتر ازیک
889پنجره روی صفحه نمایش نشان دهید. (توجه داشته باشید که Emacs ازاصطلاح
890"frames"-- که در بخش بعدی توضیح داده شده است -- برای برخی کاربرد دیگر
891"windows" گفته می شود. کتابچه راهنمای Emacs حاوی واژه نامه ای ازشرایط
892استفاده Emacs.)
893
894>> مکان نما را به این خط ببرید و C-l C-l را تایپ کنید.
895
896>> حالا C-x 2 را تایپ کنید که صفحه را به دو پنجره تقسیم می کند. هر دو
897 پنجره این آموزش را نمایش می دهند. مکان نمای ویرایش در پنجره بالا باقی
898 می ماند.
899
900>> تایپ C-M-v برای رفتن به پایین پنجره .
901 (اگر کلید META واقعی ندارید، <ESC> C-v را تایپ کنید.)
902
903>> تایپ کنید C-x o ("o" برای "other"دیگر ) برای حرکت مکان نما به پنجره پایین.
904>> از C-v و M-v در پنجره پایین برای پیمایش استفاده کنید.
905 به خواندن این فرمانهای عمل، در پنجره بالا ادامه دهید.
906
907>> دوباره C-x o را تایپ کنید تا مکان نما را به پنجره بالا برگردانید.
908 مکان نما در پنجره بالا دقیقاً همان جایی است که قبلا بود.
909
910می توانید از C-x o برای جابجایی بین پنجره ها استفاده کنید. "پنجره انتخاب
911شده" جایی که بیشترین ویرایش در آن صورت می گیرد، همان پنجره ای است که مکان
912نما برجسته است، و زمانی که تایپ نمی کنید چشمک می زند. پنجره های دیگر
913موقعیت مکان نمای خود را دارند. اگر Emacs را به صورت گرافیکی اجرا می کنید،
914آن مکان نماها به صورت کادرهای توخالی بدون چشمک‌زن ترسیم می‌شوند.
915
916
917فرمان C-M-v هنگامی که متن را در یک پنجره ویرایش می کنید و از پنجره دیگر
918فقط برای مرجع استفاده میکند، بدون ترک پنجره انتخاب شده، بسیار مفید است.
919می توانید متن را باC-M-v در پنجره دیگر پیمایش کنید.
920
921مثال C-M-v نمونه ای از یک کاراکتر CONTROL-META است. اگر یک کلید META
922‪(Alt یا)‬ دارید با نگه داشتن هر دو کلید CONTRO و META و تایپ v,
923میتوانید C-M-v را تایپ کنید. مهم نیست که CONTROL اول باشد یا META.
924زیرا هر دوی این کلیدها با تغییر کاراکترهای شما عمل می کنند.
925
926
927اگر کلید META ندارید و به جای آن از <ESC> استفاده می کنید، مهم است که
928ترتیب را انجام دهید: باید <ESC> و سپس CONTROL-v را تایپ کنید، زیرا
929CONTROL-<ESC> v کار نخواهد کرد. این به این دلیل است که <ESC> در نوع خود
930یک کاراکتر است، نه یک کلید اصلاح کننده.
931
932>> با تایپ C-x 1 (در پنجره بالا) از شر پنجره پایین خلاص شوید.
933
934(اگر C-x 1 را در پنجره پایین تایپ کرده بودید، پنجره بالا خلاص می شد. این
935فرمان را به صورت «فقط یک پنجره را -- هم آنکه هم اکنون در آن هستم نگه دار»
936در نظر بگیرید.
937
938
939شما مجبور نیستید یک بافر را در هر دو پنجره نمایش دهید. اگر شما از C-x C-f
940برای پیدا کردن فایل در یک پنجره استفاده کنید، در پنجره دیگر تغییر ایجاد
941نمی شود. شما می توانید یک فایل را در هر پنجره به طور مستقل پیدا کنید.
942
943در اینجا روش دیگری برای استفاده از دو پنجره برای نمایش دو چیز مختلف وجود دارد:
944
945>> فرمان C-x 4 C-f و سپس نام یکی از فایل های خود را تایپ کنید.
946 با <Return> خاتمه دهید. ببینید فایل مشخص شده در پایین ظاهر می شود و
947 پنجره مکان نما نیز به آنجا می رود.
948
949>> برای بازگشت به پنجره بالا C-x o و برای حذف پنجره پایین C-x 1 را تایپ کنید.
950
951
952*فریم های چندگانه (MULTIPLE FRAMES)
953----------------------------------
954
955با Emacs همچنین می توانید چندین "فریم" ایجاد کنید. یک فریم، مجموعه ای
956ازپنجره ها است که فهرست آن: اسکرول بارها، اکو بار، و غیره است. در
957نمایشگرهای گرافیکی، چیزی که Emacs آن را "فریم" می نامد همان چیزی است که
958اکثر برنامه های کاربردی دیگر "پنجره" می نامند. فریم های گرافیکی متعدد را
959می توان همزمان بر روی صفحه نمایش نشان داد. در یک ترمینال متنی فقط یک فریم
960را می توان در یک زمان نشان داد.
961
962‏ >> C-x 5 2 را تایپ کنید.
963 مشاهده می کنید که یک فریم جدید روی صفحه نمایش شما ظاهر می شود.
964
965شما می توانید هر کاری را که در فریم اصلی انجام داده اید در فریم جدید
966انجام دهید. هیچ چیز خاصی در فریم اول وجود ندارد.
967
968‏>> C-x 5 0 را تایپ کنید.
969 این فریم انتخاب شده را حذف می کند.
970
971شما همچنین می توانید یک فریم را با استفاده از روش معمولی ارائه شده توسط
972سیستم گرافیکی (اغلب با کلیک روی دکمه ای با نشان "X" در گوشه بالای فریم)بردارید.
973اگر آخرین فریمِ کار Emacs را به این ترتیب حذف کنید،از Emacs خارج می شود.
974
975
976* سطوح ویرایش بازگشتی
977----------------------
978
979گاهی اوقات وارد چیزی می شوید که«سطوح ویرایش بازگشتی» نامیده می شود.
980این با کروشه های مربع در خط حالت اطراف پرانتزهای نام مد ماژر
981نشان داده می شود. برای مثال، ممکن است [(اساسی)] را به جای (اساسی) ببینید.
982
983برای خارج شدن از سطح ویرایش بازگشتی، <ESC> <ESC> <ESC> را تایپ کنید.
984این یک فرمان همه منظوره "برو بیرون" است. همچنین می توانید از آن برای
985حذف پنجره های اضافی و خارج شدن از مینی بافر استفاده کنید.
986
987>> تایپ M-x، تا وارد یک مینی بافر شوید. سپس برای بیرون رفتن
988‏ <ESC> <ESC> <ESC> را تایپ کنید.
989
990شما نمی توانید از C-g برای خارج شدن از یک سطح ویرایش بازگشتی استفاده کنید.
991زیرا C-g برای لغو فرمانها و آرگومان ها در داخل سطح ویرایش بازگشتی
992استفاده می شود.
993
994
995
996* دریافت کمک بیشتر
997-------------------
998
999در این آموزش سعی شده است اطلاعات کافی برای شروع به استفاده از Emacs در
1000اختیار شما قرار گیرد. اطلاعات موجود در مورد Emacs آنقدر زیاد است که توضیح
1001همه چیز در اینجا غیرممکن است. با این حال، ممکن است بخواهید اطلاعات بیشتری
1002در مورد Emacs کسب کنید زیرا Emacs دارای بسیاری از ویژگی های مفید دیگر است.
1003Emacs فرمانهایی رابرای خواندن اسناد در مورد Emacs ارائه می دهد. فرمانهای
1004"help" همه با کاراکتر CONTROL-h که " کارکتر Help" نامیده می شود شروع
1005می شوند.
1006
1007
1008برای استفاده از ویژگی های Help، کاراکتر C-h و سپس کارکتری که می گوید شما
1009چه نوع کمکی می خواهید را تایپ کنید. اگر شما واقعاً گم شده اید، ? C-h را
1010تایپ کنید و Emacs به شما خواهد گفت که چه نوع کمکی می تواند ارائه دهد. اگر
1011C-h را تایپ کرده اید و به این نتیجه رسیده اید که هیچ کمکی نمی خواهید، فقط
1012برای لغو آن، C-g را تایپ کنید.
1013
1014(اگر C-h پیامی در مورد راهنما در پایین صفحه نمایش نمی دهد،
1015روی صفحه به جای آن کلید F1 یا< M-x help <Return را تایپ کنید.)
1016
1017اساسی ترین ویژگی HELP یا کمک، C-h c است. تایپ کنید C-h، کاراکتر c و یک
1018کاراکتر یا دنباله فرمان؛ سپس Emacs یک خلاصه بسیار کوتاه از شرح فرمان نمایش
1019می دهد.
1020
1021‏ >> C-h c C-p را تایپ کنید.
1022
1023پیام باید چیزی شبیه این باشد:
1024
1025‏ C-p runs the command previous-line
1026
1027این "نام فرمان -- function" را به شما می گوید. نام فرمان از بابت کاری که
1028فرمان انجام می دهد انتخاب می شود. نام فرمان می تواند به عنوان اطلاعات
1029امدادی بسیار مختصر باشد - برای یادآوری فرمانهایی که شما قبلا یاد گرفته اید.
1030
1031
1032فرمانهایی چند کاراکتری مانند C-x C-s و ESC>v> (به جای M-v،اگر کلید META یا
1033ALT ندارید) همچنین پس از C-h c نیز مجاز هستند.
1034
1035
1036برای دریافت اطلاعات بیشتر در مورد یک فرمان، به جای C-h c از C-h k استفاده
1037کنید.
1038
1039
1040‏>> C-h k C-p را تایپ کنید.
1041
1042این مستندات تابع و همچنین نام آن را در یک پنجره ایمکس نمایش می دهد.
1043وقتی خواندن خروجی تمام شد، برای خلاص شدن از شر آن پنجره C-x 1 را تایپ کنید.
1044شما مجبور نیستید این کار را به سرعت انجام دهید.
1045می توانید در حین مراجعه به متن راهنما مقداری ویرایش انجام دهید
1046و سپس C-x 1 را تایپ کنید.
1047
1048در اینجا چند گزینه مفید دیگر C-h وجود دارد:
1049
1050‏ C-h x یک فرمان را توصیف کنید. شما نام آن فرمان را تایپ می کنید.
1051
1052
1053>> فرمانِ <C-h x previous-line <Return را تایپ کنید.
1054 این تمام اطلاعات ایمکس را در مورد آن نمایش می دهد.
1055 تابعی که فرمان C-p را پیاده سازی می کند.
1056
1057یک فرمان مشابه C-h v اطلاعات امدادیِ متغیرها "variables" را نمایش می دهد, و
1058گاهی اجازه میدهد تا بتوانید مقادیر متغیرها را برای خاص کردن رفتار ایمکس
1059تنظیم کنید. زمانی که ایمکس از آن درخواست کرد، باید نام متغیر را تایپ کنید.
1060
1061‏ C-h a فرمان Apropos.
1062 یک کلمه کلیدی را تایپ کنید و ایمکس تمام فرمانهایی که نام
1063 آنها حاوی آن کلمه کلیدی است لیست میکند. همه این فرمانها
1064 را می توان با META-x احضار کرد. برای برخی از فرمانها،
1065 Command Apropos نیز یک فهرست دنباله ای است از یک یا چند
1066 کاراکتر که بافرمان یکسان اجرا می شود.
1067
1068
1069>> فرمان <c-h a file <Return راتایپ کنید.
1070
1071در پنجره ای دیگر لیستی از تمام فرمانهایی M-x با "file" به نام آنها نمایش
1072داده می شود. شما فرمانهای کاراکتر را در کنار آن نام فرمانهای مربوطه (مانند
1073C-x C-f در کنار find-file) خواهید دید.
1074
1075
1076>> برای پیمایش پنجره راهنما، C-M-v را تایپ کنید. این را چند بار انجام دهید.
1077
1078‏>> C-x 1 را تایپ کنید تا پنجره راهنما را حذف کنید.
1079
1080‏ C-h i خواندن کتابچه راهنمای همراه (با نام مستعار اطلاعات Info).
1081 این فرمان شما را به یک بافر ویژه به نام "*info*" یا
1082 اطلاعات قرار می دهد که در آن شما می توانید کتابچه
1083 راهنمای بسته های نصب شده روی سیستم خود را بخوانید. برای
1084 خواندن کتابچه راهنما < m emacs<Return را تایپ کنید. اگر
1085 قبلاً از Info استفاده نکرده‌اید، Emacs و h را تایپ کنید,
1086 آن شما را به یک راهنمای تور از امکانات حالت info می برد.
1087 پس از اتمام این آموزش، باید به کتابچه راهنمای
1088 Emacs Info به عنوان مستندات اصلی خود مراجعه کنید.
1089
1090
1091* ویژگی های بیشتر
1092------------------
1093
1094شما می‌توانید با مطالعه کتابچه راهنمای ایمکس اطلاعات بیشتری کسب کنید. مانند
1095یک کتاب چاپ شده، یا داخل Emacs (از منوی Help یا C-h r استفاده کنید). دو
1096ویژگی که ممکن است به خصوص دوست داشته باشید، توانایی تکمیل "Completion" که
1097باعث کمتر تایپ کردن میشود و dired، که مدیریت رسیدگی به فایل را ساده می کند.
1098
1099تکمیل راهی برای جلوگیری از تایپ غیر ضروری است. به عنوان مثال، اگر شما
1100می‌خواهید به بافر *Messages* بیاید، می‌توانید< C-x b *M<Tab را تایپ کنید، و
1101Emacs بقیه نام بافر را تا جایی که می تواند از آنچه قبلاً تایپ کرده اید پر
1102می کند. تکمیل کردن هم چنین برای نام فرمانها ونام فایل ها به کار می آید. در
1103کتابچه راهنمای ایمکس، در بخشی به نام "تکمیل Completion " توضیح داده شده
1104است.
1105
1106
1107با Dired شما قادر هستید تا فایل ها (و به صورت اختیاری زیر شاخه های آن) را
1108در یک فهرست کنید. در اطراف آن لیست حرکت کنید، بازدید کنید، نام خود را
1109تغییر دهید، حذف کنید و به صورت دیگر روی فایل ها کار کنید. در کتابچه
1110راهنمای ایمکس در بخشی به نام "Dired" توضیح داده شده است.
1111
1112
1113این کتابچه راهنمای بسیاری از ویژگی های دیگر ایمکس را نیز توضیح می دهد.
1114
1115
1116* جمع بندی
1117------------
1118
1119برای خروج از Emacs از C-x C-c استفاده کنید.
1120
1121این آموزش برای همه کاربران جدید باید قابل درک باشد، بنابراین اگر
1122چیز مبهمی پیدا کردید، ننشینید و تو سر خودتان نزنید - شکایت کنید!
1123
1124
1125* کپی برداری
1126--------------
1127
1128این آموزش حاصل زنجیره ای طولانی از آموزش های Emacs است که با کتابی به نوشته
1129Stuart Cracraft سر چشمه گرفت.
1130
1131این نسخه از آموزش بخشی از GNU Emacs است. دارای حق چاپ است
1132و با مجوز برای توزیع کپی در شرایط خاص همراه است:
1133
1134 Copyright (C) 1985, 1996, 1998, 2001-2022 Free Software Foundation, Inc.
1135
1136 This file is part of GNU Emacs.
1137
1138 GNU Emacs is free software: you can redistribute it and/or modify
1139 it under the terms of the GNU General Public License as published by
1140 the Free Software Foundation, either version 3 of the License, or
1141 (at your option) any later version.
1142
1143 GNU Emacs is distributed in the hope that it will be useful,
1144 but WITHOUT ANY WARRANTY; without even the implied warranty of
1145 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1146 GNU General Public License for more details.
1147
1148 You should have received a copy of the GNU General Public License
1149 along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>.
1150
1151لطفاً فایل COPYING را بخوانید و سپس کپی هایی از GNU Emacs را به دوستانتان بدهید.
1152کمک کنید تا از شر قاعدیِ اشتباهِ کپی رایت غربی راحت شویم.
1153
1154
1155
1156--- end of TUTORIAL.fa ---
1157
1158;;; Local Variables:
1159;;; coding: utf-8
1160;;; bidi-display-reordering: t
1161;;; sentence-end-double-space: nil
1162;;; bidi-paragraph-direction: nil
1163;;; fill-column: 74
1164;;; End:
diff --git a/etc/tutorials/TUTORIAL.translators b/etc/tutorials/TUTORIAL.translators
index 64d71b61e84..30e169d263f 100644
--- a/etc/tutorials/TUTORIAL.translators
+++ b/etc/tutorials/TUTORIAL.translators
@@ -8,6 +8,7 @@ Maintainer: Ognyan Kulev <ogi@tower.3.bg>
8* TUTORIAL.cn: 8* TUTORIAL.cn:
9Author: Sun Yijiang <sunyijiang@gmail.com> 9Author: Sun Yijiang <sunyijiang@gmail.com>
10Maintainer: Xue Fuqiao <xfq.free@gmail.com> 10Maintainer: Xue Fuqiao <xfq.free@gmail.com>
11 Ruijie Yu <ruijie@netyu.xyz>
11 12
12* TUTORIAL.cs: 13* TUTORIAL.cs:
13Author: Milan Zamazal <pdm@zamazal.org> 14Author: Milan Zamazal <pdm@zamazal.org>
@@ -30,6 +31,10 @@ Maintainer: Rafael Sepúlveda <drs@gnulinux.org.mx>
30Author: Protesilaos Stavrou <info@protesilaos.com> 31Author: Protesilaos Stavrou <info@protesilaos.com>
31Maintainer: Protesilaos Stavrou <info@protesilaos.com> 32Maintainer: Protesilaos Stavrou <info@protesilaos.com>
32 33
34* TUTORIAL.fa:
35Author: Mohsen BANAN <emacs@mohsen.1.banan.byname.net>
36Maintainer: Mohsen BANAN <emacs@mohsen.1.banan.byname.net>
37
33* TUTORIAL.fr: 38* TUTORIAL.fr:
34Author: Éric Jacoboni <jaco@teaser.fr> 39Author: Éric Jacoboni <jaco@teaser.fr>
35Maintainer: Éric Jacoboni <jaco@teaser.fr> 40Maintainer: Éric Jacoboni <jaco@teaser.fr>