diff options
| author | Mohsen Banan | 2023-04-23 21:26:06 -0700 |
|---|---|---|
| committer | Eli Zaretskii | 2023-04-25 12:19:24 +0300 |
| commit | 76f50df15391a20f1889f189627b16e73b5358ce (patch) | |
| tree | 95d56e923a955129b77a1373ab5d6fd5f7bd199a /etc/tutorials | |
| parent | 8eacfaea6d83391e1ddc0921cbbb7ed9de0f4009 (diff) | |
| download | emacs-76f50df15391a20f1889f189627b16e73b5358ce.tar.gz emacs-76f50df15391a20f1889f189627b16e73b5358ce.zip | |
Add Farsi/Persian translation of the tutorial
* etc/tutorials/TUTORIAL.fa: New file.
* lisp/language/misc-lang.el (arabic-shaper-ZWNJ-handling): Fix
typo in doc string.
Diffstat (limited to 'etc/tutorials')
| -rw-r--r-- | etc/tutorials/TUTORIAL.fa | 1169 |
1 files changed, 1169 insertions, 0 deletions
diff --git a/etc/tutorials/TUTORIAL.fa b/etc/tutorials/TUTORIAL.fa new file mode 100644 index 00000000000..5c9c0e1941a --- /dev/null +++ b/etc/tutorials/TUTORIAL.fa | |||
| @@ -0,0 +1,1169 @@ | |||
| 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 | |||
| 19 | |||
| 20 | |||
| 21 | [وسط صفحه برای اهداف آموزشی خالی مانده است. ادامه متن در زیر] | ||
| 22 | |||
| 23 | |||
| 24 | |||
| 25 | >> اکنون C-v را تایپ کنید (نمایش صفحه بعدی) تا یک صفحه کامل به پایین بروید. | ||
| 26 | (این کار را با نگه داشتن کلید CONTROL و فشار کلید v انجام دهید). | ||
| 27 | از این پس، لطفاً هر زمان که به انتهای صفحه رسیدید، این کار را انجام دهید. | ||
| 28 | |||
| 29 | توجه داشته باشید که وقتی یک صفحه کامل را اسکرول می کنید، دو خط همپوشانی دارند؛ | ||
| 30 | این مقداری تداوم را فراهم می کند تا بتوانید به خواندن متن ادامه دهید. | ||
| 31 | |||
| 32 | این یک کپی از متن آموزشی Emacs است که کمی برای شما شخصی سازی شده است. | ||
| 33 | بعداً به شما آموزش خواهیم داد که فرمانهای مختلفی را برای تغییر این متن استفاده | ||
| 34 | کنید. اگر قبل از اینکه به شماگفته باشیم، این متن را تغییر داده اید، | ||
| 35 | نگران نباشید. این کار «ویرایش» نامیده می شود و Emacs برای همین است. | ||
| 36 | |||
| 37 | اولین چیزی که باید بدانید این است که چگونه از یک مکان به اطراف حرکت کنید. | ||
| 38 | شما از قبل می دانید که با C-v چگونه یک صفحه به جلو حرکت میکند. | ||
| 39 | برای حرکت یک صفحه به سمت عقب، M-v را تایپ کنید (کلید META را نگه دارید | ||
| 40 | و v را تایپ کنید، یا اگر کلید META، یا ALT را ندارید، <ESC>vرا تایپ کنید). | ||
| 41 | |||
| 42 | >> چند بار M-v و سپس C-v را تایپ و امتحان کنید. | ||
| 43 | |||
| 44 | شما می توانید این متن را با روش های دیگری که میدانید اسکرول کنید. | ||
| 45 | |||
| 46 | * خلاصه | ||
| 47 | --------- | ||
| 48 | |||
| 49 | فرمانهای زیر برای مشاهده کل صفحه نمایش مفید هستند: | ||
| 50 | |||
| 51 | C-v یک صفحه نمایش به جلو حرکت کنید. | ||
| 52 | M-v یک صفحه نمایش به عقب حرکت کنید. | ||
| 53 | C-l پاک کردن صفحه و نمایش مجدد تمام متن، | ||
| 54 | جابجایی مکان نما و متن به مرکز صفحه نمایش | ||
| 55 | (این CONTROL-L است، نه CONTROL-1.) | ||
| 56 | |||
| 57 | >> مکاننما را پیدا کنید و توجه داشته باشید که چه متنی در نزدیکی آن است. | ||
| 58 | سپس C-l را تایپ کنید. دوباره مکان نما را پیدا کنید وتوجه کنید که هنوز | ||
| 59 | نزدیک همان متن است. اما مکان نما، اکنون در مرکز صفحه است. | ||
| 60 | اگر دوباره C-l را فشار دهید، این قطعه متن به بالای صفحه منتقل می شود. | ||
| 61 | مجددا C-l را فشار دهید، صفحه نمایش دوباره به پایین حرکت می کند. | ||
| 62 | |||
| 63 | اگر ترمینال شما کلیدهای PageUp و PageDn را دارد، میتوانید برای جابهجایی یک | ||
| 64 | صفحه کامل از آنها استفاده کنید. | ||
| 65 | اما در صورت استفاده از C-v و M-v شما می توانید کارآمدتر ویرایش کنید. | ||
| 66 | |||
| 67 | * کنترل مکان نما | ||
| 68 | ---------------------- | ||
| 69 | |||
| 70 | حرکت از یک صفحه نمایش به صفحه نمایش دیگر مفید است، اما چگونه | ||
| 71 | به مکان خاصی در متنِ روی صفحه حرکت کنید؟ | ||
| 72 | |||
| 73 | چندین راه وجود دارد که می توانید این کار را انجام دهید. می توانید از | ||
| 74 | کلیدهای جهت دار استفاده کنید، اما کارآمدتر است که دستان خود را در وضعیت | ||
| 75 | استاندارد نگه دارید. از فرمانهایِ C-p، C-b، C-f و C-n استفاده کنید. این فرمان ها | ||
| 76 | معادل چهار کلید جهت دار هستند، مانند: | ||
| 77 | |||
| 78 | سطر قبل، C-p | ||
| 79 | : | ||
| 80 | : | ||
| 81 | به عقب، C-b .... موقعیت مکان نما فعلی .... به جلو، C-f | ||
| 82 | : | ||
| 83 | : | ||
| 84 | خط بعدی، C-n | ||
| 85 | |||
| 86 | >> با استفاده از C-n یا C-p مکان نما را به خط وسط نمودار بالا حرکت دهید. | ||
| 87 | سپس C-l را تایپ کنید تا کل نمودار را در مرکز صفحه نمایش ببینید. | ||
| 88 | |||
| 89 | |||
| 90 | به راحتی می توانید این حروف را با کلماتی که مخفف آنها هستند به خاطر بسپارید: | ||
| 91 | Previous) p) برای قبلی، Next) n) برای بعدی, Backward) b) برای عقب و | ||
| 92 | Forward) f) برای جلو. شما همیشه از این فرمانهایِ اصلی تعیین موقعیت مکان نما | ||
| 93 | استفاده خواهید کرد. | ||
| 94 | |||
| 95 | >> برای پایین آوردن مکان نما به این خط، چند C-n انجام دهید. | ||
| 96 | |||
| 97 | >> حرکت به جلو، روی خط با C-f و سپس به بالا با C-p. | ||
| 98 | ببینید C-p وقتی مکان نما در وسط خط قرار دارد چه می کند. | ||
| 99 | |||
| 100 | هر خط از متن با یک کاراکترِ Newline به پایان می رسد، که | ||
| 101 | آن را از خط زیر جدا میکند. (به طور معمول،یک فایل در پایان دارای | ||
| 102 | یک Newline خواهد بود، اما Emacs به آن نیاز ندارد.) | ||
| 103 | |||
| 104 | >> هنگامی که نشانگر در ابتدای خط است، از C-b استفاده کنید. باید به انتهای | ||
| 105 | خط قبلی حرکت کند. به این دلیل است که این حرکت از سراسر Newline میگذرد. | ||
| 106 | |||
| 107 | فرمان C-f می تواند مانند C-b روی خط جدید حرکت کند. | ||
| 108 | |||
| 109 | >> چند C-b دیگر انجام دهید، بنابراین می توانید نشانگر را در مکان مورد | ||
| 110 | نظر قرار دهید. سپس C-f را انجام دهید تا به انتهای خط برگردید. | ||
| 111 | سپس یک C-f دیگر انجام دهید تا به خط زیر بروید. | ||
| 112 | |||
| 113 | |||
| 114 | وقتی از بالا یا پایین صفحه عبور می کنید، متن فراتر می رود | ||
| 115 | لبه روی صفحه نمایش جابجا می شود. به این "پیمایش یا اسکرول" می گویند. این | ||
| 116 | Emacs را قادر می سازد تا مکان نما را به مکان مشخص شده در متن منتقل کند | ||
| 117 | بدون اینکه آن را از صفحه نمایش جدا کنید. | ||
| 118 | |||
| 119 | >> سعی کنید مکان نما را از پایین صفحه با C-n حرکت دهید و | ||
| 120 | ببیند چه اتفاقی می افتد. | ||
| 121 | |||
| 122 | اگر حرکت بر اساس کاراکترها خیلی کند است، می توانید با کلمات حرکت کنید. M-f | ||
| 123 | (META-f) یک کلمه را جلو می برد و M-b یک کلمه را به عقب می برد. | ||
| 124 | |||
| 125 | >> چند M-f و M-b تایپ کنید. | ||
| 126 | |||
| 127 | وقتی در وسط یک کلمه هستید، M-f به انتهای کلمه می رود. | ||
| 128 | هنگامی که در فضای خالی بین کلمات قرار دارید، M-f به انتهای کلمه بعدی منتقل | ||
| 129 | می شود. M-b نیز در جهت مخالف کار می کند. | ||
| 130 | |||
| 131 | >> فرمان M-f و M-b را چند بار با C-f و C-b در هم آمیخته تایپ کنید، | ||
| 132 | تا عمل M-f و M-b را از انواع مکان های درون و بین کلمات مختلف مشاهده کنید. | ||
| 133 | |||
| 134 | |||
| 135 | به موازات بین C-f و C-b از یک طرف و M-f و M-b از طرف دیگر توجه کنید. | ||
| 136 | |||
| 137 | عملیات مربوط به واحدهای تعریف شده توسط زبان (کلمات، جملات، پاراگراف ها) | ||
| 138 | اغلب با کاراکترهای متا انجام می شود، | ||
| 139 | در حالی که کاراکترهای Control بر روی واحدهای اصلی، مستقل از آنچه در حال | ||
| 140 | ویرایش هستید (حروف، خطوط و غیره) عمل می کنند. | ||
| 141 | |||
| 142 | این توازی بین خطوط و جملات اعمال می شود: C-a و C-e حرکت به | ||
| 143 | ابتدا یا انتهای یک خط، و M-a و M-e به ابتدا یا پایان یک جمله حرکت می کنند. | ||
| 144 | |||
| 145 | |||
| 146 | >>دو C-a، و سپس دو C-e را امتحان کنید. | ||
| 147 | چند M-a و سپس چند M-e را امتحان کنید. | ||
| 148 | |||
| 149 | |||
| 150 | ببینید چگونه C-a های تکراری هیچ کاری انجام نمی دهند، اما M-a های تکراری به | ||
| 151 | حرکت خود ادامه می دهند. اگرچه اینها کاملاً مشابه نیستند، اما هر یک طبیعی | ||
| 152 | به نظر می رسد. | ||
| 153 | |||
| 154 | |||
| 155 | به مکانِ مکان نما در متن "نقطه" نیز می گویند. | ||
| 156 | به عبارت دیگر، مکان نما روی صفحه نشان می دهد که نقطه در کجای متن قرار دارد. | ||
| 157 | |||
| 158 | |||
| 159 | در اینجا خلاصه ای از عملیات ساده حرکت مکان نما، از جمله | ||
| 160 | فرمانهایِ حرکت کلمه و جمله نشان داده می شود: | ||
| 161 | |||
| 162 | C-f یک کاراکتر را به جلو حرکت دهید | ||
| 163 | C-b یک کاراکتر را به عقب حرکت دهید | ||
| 164 | |||
| 165 | M-f یک کلمه را به جلو حرکت دهید | ||
| 166 | M-b یک کلمه را به عقب حرکت دهید | ||
| 167 | |||
| 168 | C-n به خط بعدی بروید | ||
| 169 | C-p به خط قبلی بروید | ||
| 170 | |||
| 171 | C-a حرکت به ابتدای خط | ||
| 172 | C-e حرکت به انتهای خط | ||
| 173 | |||
| 174 | M-a به ابتدای جمله برگردید | ||
| 175 | M-e حرکت به جلو تا پایان جمله | ||
| 176 | |||
| 177 | >> همه این فرمانها را اکنون چند بار برای تمرین امتحان کنید. | ||
| 178 | این فرمانها بیشترین استفاده را دارند. | ||
| 179 | |||
| 180 | دو فرمان مهم دیگر حرکت مکان نما عبارتند از M-< : (META کمتر از)، | ||
| 181 | که به ابتدای کل متن حرکت می کند و M-> (META بزرگتر از)، | ||
| 182 | که به انتهای کل متن می رود. | ||
| 183 | |||
| 184 | در اکثر ترمینالها، ">" بالای کاما است، بنابراین باید با استفاده از کلید | ||
| 185 | shift آن را تایپ کنید. | ||
| 186 | در این ترمینالها باید از کلید shift برای تایپ >-M نیز استفاده کنید. | ||
| 187 | بدون کلید shift، شما کاما، M را تایپ می کنید. | ||
| 188 | |||
| 189 | >> اکنون >-M را امتحان کنید تا به ابتدای آموزش بروید. | ||
| 190 | سپس از C-v مکرراً برای بازگشت به اینجا استفاده کنید. | ||
| 191 | |||
| 192 | >> اکنون <-M را امتحان کنید تا به انتهای آموزش بروید. | ||
| 193 | سپس از M-v مکرراً برای بازگشت به اینجا استفاده کنید. | ||
| 194 | |||
| 195 | همچنین می توانید مکان نما را با کلیدهای جهت دار حرکت دهید، اگر ترمینال شما | ||
| 196 | آن را داشته باشد. ما استفاده از C-b، C-f، C-n و C-p را به سه دلیل توصیه میکنیم. | ||
| 197 | |||
| 198 | اول، آنها بر روی انواع ترمینالها کار می کنند. | ||
| 199 | دوم, هنگامی که مهارت شما در استفاده از Emacs بیشتر شود، متوجه خواهید شد که | ||
| 200 | تایپ با کنترل کاراکترها، سریعتر از تایپ کلیدهای جهت دار است. | ||
| 201 | (زیرا احتیاج نیست که شما دستان خود را از موقعیت تایپ لمسی دور کنید). | ||
| 202 | سوم، وقتی شما عادت به استفاده از فرمانهایِ کاراکتر Control را دارید، می توانید | ||
| 203 | به راحتی یاد بگیرید که از دیگر فرمانهایِ پیشرفته حرکت مکان نما نیز استفاده کنید. | ||
| 204 | |||
| 205 | اکثر فرمانهایِ Emacs یک آرگومان عددی را می پذیرند. برای اکثر فرمانها، این | ||
| 206 | به عنوان یک شمارش تکرار عمل می کند. | ||
| 207 | نحویِ تحویل تعداد تکرار، با تایپ C-u و سپس اعداد قبل از تایپ فرمان است. اگر | ||
| 208 | شما یک کلید META (یا ALT) دارید، راه جایگزینی دیگری برای وارد کردن | ||
| 209 | آرگومان عددی وجود دارد: ارقام را در حالی که کلید META را نگه داشتهاید | ||
| 210 | تایپ کنید. ما توصیه می کنیم استفاده از C-u را یاد بگیرید زیرا در هر ترمینال | ||
| 211 | کار می کند. آرگومان عددی "آرگومان پیشوند" نیز نامیده می شود. | ||
| 212 | زیرا آرگومان را قبل از فرمانی که روی آن اعمال می شود تایپ می کنید. | ||
| 213 | |||
| 214 | به عنوان مثال، C-u 8 C-f هشت کاراکتر به جلو حرکت می کند. | ||
| 215 | |||
| 216 | >> سعی کنید فقط با یک فرمان، C-n یا C-p با آرگومان عددی برای حرکت مکان نما | ||
| 217 | از خط نزدیک به این خط استفاده کنید. | ||
| 218 | |||
| 219 | اکثر فرمانها از آرگومان عددی به عنوان تعداد تکرار استفاده می کنند، | ||
| 220 | اما برخی فرمانها از آن به روش دیگری استفاده می کنند. | ||
| 221 | چندین فرمان که از آن به عنوان یک علامت تعغیر استفاده میشود. | ||
| 222 | (اما هیچ کدام از فرمانهایِی که تا به حال آموخته اید نیستند.) | ||
| 223 | وجود یک آرگومان پیشوند، صرف نظر از مقدار آن، فرمان متفاوتی را انجام می دهد. | ||
| 224 | |||
| 225 | C-v و M-v استثناهای دیگری هستند. با تحویل آرگومان، | ||
| 226 | آنها متن را با این تعداد خط به بالا یا پایین اسکرول می کنند نه با یک | ||
| 227 | صفحه نمایش. برای مثال، C-u 8 C-v هشت خط پیمایش می کند. | ||
| 228 | |||
| 229 | >> اکنون C-u 8 C-v را تایپ کنید. | ||
| 230 | |||
| 231 | این فرمان باید متن را 8 خط به بالا اسکرول کند. اگر مایل باشید | ||
| 232 | دوباره به پایین برگردید، می توانید یک آرگومان به M-v بدهید. | ||
| 233 | |||
| 234 | اگر از یک سیستم نمایشِ گرافیکی مانند X یا MS-Windows استفاده می کنید، | ||
| 235 | باید یک ناحیه مستطیل شکل بلند به نام نوار پیمایش در یک طرف پنجره Emacs | ||
| 236 | وجود داشته باشد. با کلیک کردن بر روی نوار، متن را اسکرول کنید. | ||
| 237 | |||
| 238 | اگر ماوس شما دگمه چرخ دارد، می توانید از آن برای اسکرول نیز استفاده کنید. | ||
| 239 | |||
| 240 | |||
| 241 | * اگر EMACS پاسخ نمی دهد. | ||
| 242 | --------------------------- | ||
| 243 | |||
| 244 | اگر Emacs به فرمانهایِ شما پاسخ نمی دهد، می توانید با خیال راحت با | ||
| 245 | تایپ کردن C-g آن را متوقف کنید. می توانید از C-g برای متوقف کردن فرمانی که | ||
| 246 | انجامش طولانی شده است استفاده کنید. | ||
| 247 | |||
| 248 | همچنین میتوانید از C-g برای حذف یک آرگومان عددی یا ابتدای فرمانی که | ||
| 249 | نمی خواهید آن را تمام کنید استفاده کنید. | ||
| 250 | |||
| 251 | >> با عمل C-u 100 یک آرگومان عددی 100 بسازید، سپس C-g وبعد از آن | ||
| 252 | C-f را تایپ کنید. بااین فرمانها فقط یک حرف به جلو حرکت می کنید، زیرا شما | ||
| 253 | آرگومان را با C-g لغو کرده اید. | ||
| 254 | |||
| 255 | اگر یک <ESC> را اشتباه تایپ کرده اید، می توانید با یک C-g از شر آن خلاص شوید. | ||
| 256 | |||
| 257 | |||
| 258 | * فرمانهایِ غیر فعال | ||
| 259 | ------------------- | ||
| 260 | |||
| 261 | برخی از فرمانهایِ Emacs "غیرفعال" هستند تا کاربران مبتدی نتوانند | ||
| 262 | از آنها به طور تصادفی استفاده کنند. | ||
| 263 | |||
| 264 | اگر یکی از فرمانهایِ غیرفعال را تایپ کنید، Emacs پیامی را نمایش می دهد | ||
| 265 | که فرمان چیست و از شما می پرسد که آیامایل به اجرای آن هستید؟ | ||
| 266 | |||
| 267 | اگر واقعاً می خواهید فرمان را اجرا کنید، <SPC> (نوار فاصله) را در پاسخ به | ||
| 268 | سوال تایپ کنید. به طور معمول، اگر نمی خواهید آن را اجرا کنید، به سوال با | ||
| 269 | "n" پاسخ دهید. | ||
| 270 | |||
| 271 | >> عمل C-x C-l (که یک فرمان غیرفعال است) را انجام دهید، | ||
| 272 | سپس n را در پاسخ به سوال تایپ کنید. | ||
| 273 | |||
| 274 | |||
| 275 | * پنجره ها | ||
| 276 | ---------- | ||
| 277 | |||
| 278 | با Emacs می تواند چندین "پنجره" داشته باشد که هر کدام متن خاص خود را نشان | ||
| 279 | می دهد. ما بعداً در مورد نحوه استفاده از چندین پنجره توضیح خواهیم داد. در | ||
| 280 | حال حاضر می خواهیم برای نحوه حذف پنجره های اضافی و بازگشت به حالت اولیه | ||
| 281 | ویرایش یک پنجره توضیح دهیم. این عمل آسان است: | ||
| 282 | |||
| 283 | C-x 1 یک پنجره (یعنی تمام پنجره های دیگر را حذف کنید). | ||
| 284 | |||
| 285 | فرمان C-x 1 پنجره ای تمام صفحه، که حاوی مکان نما است را باز می کند. | ||
| 286 | این فرمان تمام پنجره های دیگر را حذف میکند. | ||
| 287 | |||
| 288 | |||
| 289 | >> مکان نما را به این خط ببرید و C-u 0 C-l را تایپ کنید. | ||
| 290 | >> C-h k C-f را تایپ کنید. | ||
| 291 | ببینید چگونه این پنجره کوچک می شود، در حالی که یک پنجره جدید برای نمایش | ||
| 292 | اطلا عات در فرمان C-f ظاهر می شود. | ||
| 293 | |||
| 294 | |||
| 295 | >> با تایپ C-x 1 پنجره فهرست اسناد ناپدید می شود. | ||
| 296 | |||
| 297 | یک سری کامل از فرمانها با CONTROL-x شروع می شوند. بسیاری از | ||
| 298 | آنها با ویندوز، فایل ها، بافرها و موارد وابسته ارتباط دارند. | ||
| 299 | این فرمانها دو، سه یا چهار کاراکتر هستند. | ||
| 300 | |||
| 301 | |||
| 302 | * درج و حذف | ||
| 303 | ------------ | ||
| 304 | |||
| 305 | اگر می خواهید متن را وارد کنید، فقط متن را تایپ کنید. حروف معمولی، | ||
| 306 | مانند A، 7، *، و غیره، هنگام تایپ آنها نوشته می شوند. برای انجام نوشتن | ||
| 307 | خط جدید، <Return> را تایپ کنید (این کلید روی صفحه کلید است | ||
| 308 | که گاهی اوقات با عنوان "Enter" شناخته می شود). | ||
| 309 | |||
| 310 | برای حذف کاراکترِ قبل از مکان نمای فعلی ، <DEL> را تایپ کنید. این کلید روی | ||
| 311 | صفحه کلید است که معمولاً با برچسب "Backspace"است −− همان که معمولاً در خارج | ||
| 312 | از Emacs نیز برای حذف آخرین حرفِ نوشته شده استفاده می کنید. | ||
| 313 | |||
| 314 | |||
| 315 | همچنین ممکن است کلید دیگری روی صفحه کلید شما با عنوان <Delete> وجود داشته | ||
| 316 | باشد، اما این چیزی نیست که ما در Emacs به آن <DEL> می گوییم. | ||
| 317 | |||
| 318 | >> اکنون این کار را انجام دهید - چند کاراکتر را تایپ کنید، سپس آنها را حذف | ||
| 319 | کنید. چند بار <DEL> را تایپ کنید. نگران این فایل نباشید در حال تغییر؛ | ||
| 320 | شما آموزش اصلی را تغییر نمی دهید. این کپی شخصی شما از آن است. | ||
| 321 | |||
| 322 | وقتی نوشتن یک خط در متن بیش از حد طولانی می شود، خط بر روی سطر دوم صفحه | ||
| 323 | "ادامه" می یابد. اگر از یک صفحه نمایش گرافیکی استفاده می کنید برای نشان | ||
| 324 | دادن جایی که یک خط ادامه یافته است فلش های منحنی کوچکی در فضاهای باریک در | ||
| 325 | دو طرف ناحیه متن (حاشیههای چپ و راست ) ظاهر می شوند. اگر از ترمینال متنی | ||
| 326 | استفاده می کنید، خطِ ادامه یافته با علامت معکوس ('\') در سمت راست ستون | ||
| 327 | صفحه نمایش نشان داده می شود. | ||
| 328 | |||
| 329 | |||
| 330 | >> به نوشتن متن پس از رسیدن به انتهای خط ادامه دهید. | ||
| 331 | خواهید دید که یک خطِ ادامه ظاهر می شود. | ||
| 332 | |||
| 333 | >> از <DEL > برای حذف متن استفاده کنید تا زمانی که نوشته مجدداً روی یک خط | ||
| 334 | صفحه قرار گیرد. خط ادامه از بین می رود. | ||
| 335 | |||
| 336 | شما می توانید حروف خط جدید را مانند هر حرف دیگری حذف کنید. حذف کاراکتر | ||
| 337 | Newline بین دو خط آنها را با هم ادغام می کند. اگر خط ترکیبی به دست آمده | ||
| 338 | بیش از حد طولانی باشد که در آن جا نمی شود، عرض صفحه نمایش، با یک خط ادامه، | ||
| 339 | نمایش داده می شود. | ||
| 340 | |||
| 341 | >> مکان نما را به ابتدای یک خط ببرید و <DEL> را تایپ کنید. این فرمان | ||
| 342 | آن خط را با خط قبلی ادغام می کند. | ||
| 343 | |||
| 344 | >> حالا <Return> را تایپ کنید تا خط جدیدی را که حذف کرده اید دوباره وارد کنید. | ||
| 345 | |||
| 346 | کلید <Return> ویژه است، زیرا با فشار دادن آن ممکن است بیش از این کار انجام شود. | ||
| 347 | فقط یک کاراکتر Newline وارد کنید. بسته به متن اطراف، | ||
| 348 | ممکن است بعد از کاراکتر Newline فضای خالی را وارد کند، به طوری که وقتی | ||
| 349 | شما شروع به تایپ کردن در خط جدید می کنید، متن با خط قبلی آن ردیف می شود. | ||
| 350 | ما به این رفتار (که در آن فشار دادن یک | ||
| 351 | کلید چیزی بیش از وارد کردن کاراکتر مربوطه انجام می دهد) می گوییم "electric". | ||
| 352 | |||
| 353 | >> در اینجا مثالی از الکتریکی بودن <Return> آورده شده است. | ||
| 354 | <Return> را در انتهای این خط تایپ کنید. | ||
| 355 | |||
| 356 | باید ببینید که بعد از درج Newline فاصله ها هم درج می شوند، | ||
| 357 | به طوری که مکان نمابه جای مناسب حرکت می کند. | ||
| 358 | |||
| 359 | به یاد داشته باشید که به اکثر فرمانهایِ Emacs می توان تعداد تکرار، داده شود. | ||
| 360 | این شامل کاراکترهای متنی نیز است. تکرار درج کاراکتر متنی برای چندین بار. | ||
| 361 | |||
| 362 | |||
| 363 | >> اکنون آن را امتحان کنید - C-u 8 * را برای درج ******** تایپ کنید. | ||
| 364 | |||
| 365 | شما اکنون ابتدایی ترین راه را برای تایپ با Emacs و تصحیح خطاها یاد گرفته اید. | ||
| 366 | شما می توانید کلمات یا خطوط را نیز حذف کنید. | ||
| 367 | در اینجا خلاصه ای از عملیات حذف آمده است: | ||
| 368 | |||
| 369 | <DEL> کاراکتر را درست قبل از مکان نما حذف می کنید. | ||
| 370 | C−d کاراکتر بعدی، بعد از مکان نما را حذف می کنید. | ||
| 371 | |||
| 372 | <M-<DEL کلمه را بلافاصله قبل از مکان نما حذف می کنید. | ||
| 373 | M-d کلمه بعدی را بعد از مکان نما حذف می کنید. | ||
| 374 | |||
| 375 | C-k از موقعیت مکان نما تا انتهای خط را حذف می کنید. | ||
| 376 | M-k از موقعیت مکان نما تا انتهای جمله را حذف میکنِید. | ||
| 377 | |||
| 378 | توجه داشته باشید که <DEL> و C-d در مقابل <M-<DEL و M-d موازاتی را گسترش می دهند | ||
| 379 | که با C-f و M-f شروع شده است (خوب، <DEL> واقعاً یک کاراکتر کنترلی نیست، اما | ||
| 380 | بیایید نگران این نباشیم). C-k و M-k مانند C-e و M-e هستند، به نوعی، در آن | ||
| 381 | خطوط با جملات جفت می شوند. | ||
| 382 | |||
| 383 | شما همچنین می توانید یک بخش از متن را با یک روش یکسان حذف کنید . به انتهای | ||
| 384 | یک قسمت حرکت کنید، و سپس <C-<SPC را تایپ کنید. (<SPC> کلید نوار Space | ||
| 385 | است.) سپس مکان نما را به انتهای دیگر متنی که قصد دارید حذف کنید، ببرید. | ||
| 386 | با انجام این کار، Emacs متن بین مکان نما وموقعیتی که با <C-<SPC تایپ کرده اید | ||
| 387 | را مشخص می کند. در نهایت C-w را تایپ کنید. با این عمل متنِ بین دو موقعیت | ||
| 388 | را حذف میکنید. | ||
| 389 | |||
| 390 | |||
| 391 | >> مکان نما را در ابتدای پاراگراف قبلی به «ش» حرکت دهید. | ||
| 392 | |||
| 393 | >> با تایپ <C-<SPC، در پایین صفحه نمایش Emacs باید یک پیام "Mark set" را | ||
| 394 | نمایش دهد. | ||
| 395 | |||
| 396 | >> در خط دوم ازمتن، مکان نما را به «ی» در "یک"، حرکت دهید. | ||
| 397 | |||
| 398 | >> C-w را تایپ کنید. با این کار متنی که از «ش» شروع می شود و درست قبل از | ||
| 399 | «ی» به پایان می رسد را از بین می برید. | ||
| 400 | |||
| 401 | تفاوت بین "کشتن" و "حذف" در همان متن این است که "کشته" را می توان دوباره | ||
| 402 | درج کرد (در هر موقعیتی)، در حالی که چیزهای "حذف شده" را نمی توانید به این | ||
| 403 | روش دوباره درج کنید (اما می توانید حذف را لغو کنید - در زیر ببینید.) درج | ||
| 404 | مجدد متن کشته شده "yanking" نامیده می شود. ( به عنوان عقب نشینی یا عقب | ||
| 405 | کشیدن متنی که برداشته شده است به آن فکرکن.) | ||
| 406 | |||
| 407 | به طور کلی، فرمانهایِی که می توانند متن زیادی را حذف کنند، متن را «میکشند». | ||
| 408 | (آنها به گونه ای تنظیم شده اند که بتوانید متن را باز گردانند)، در حالی که | ||
| 409 | فرمانهایِی که فقط یک کاراکتر را حذف می کند، یا فقط خطوط و فاصله های خالی را | ||
| 410 | حذف می کند، حذف را انجام می دهند (بنابراین نمی توانید آن متن را برگرداند). | ||
| 411 | <DEL> و C-d در ساده ترین حالت، بدون هیچ آرگومان حذف را انجام می دهند.وقتی | ||
| 412 | آرگومان به آنها داده می شود درعوض مکشند. | ||
| 413 | |||
| 414 | >> مکان نما را به ابتدای خطی که خالی نیست حرکت دهید. | ||
| 415 | سپس C-k را تایپ کنید تا متن روی آن خط حذف شود. | ||
| 416 | |||
| 417 | >> بار دوم C-k را تایپ کنید. خواهید دید که Newline را می کشد که بعد از آن | ||
| 418 | خط است. | ||
| 419 | |||
| 420 | توجه داشته باشید که یک C-k محتویات خط را می کشد و یک C-k ثانوی خود خط را | ||
| 421 | می کشد و همه خطوط دیگر را به سمت بالا حرکت می دهد. C-kبه طور خاص با یک | ||
| 422 | آرگومان عددی برخورد می کند: این تعداد خطوط و محتویات آنهارا میکشد. این | ||
| 423 | صرفا یک تکرار نیست. C-u 2 C-k دو خط و Newline آنها را می کشد. دو بار تایپ | ||
| 424 | کردن C-k این کار را نمی کند. | ||
| 425 | |||
| 426 | میتوانید متن کشتهشده را در همان مکانی که در آن قرار داشت، باز گردانید. | ||
| 427 | یا در جای دیگری از متنی که در حال ویرایش آن هستید، یا حتی در | ||
| 428 | یک فایل متفاوت میتوانید یک متن را چندین بار باز گردانید. که | ||
| 429 | چندین کپی از آن می سازد. با مراجعه به کتابچه راهنمایِ Emacs در موارد "کشتن" و | ||
| 430 | انحرافِ "برش" و "چسباندن" میتوانید اطلاعات بیشتری کسب کنید. | ||
| 431 | |||
| 432 | |||
| 433 | فرمانِ"yank" ,C-y است. آخرین متن کشته شده را در موقعیت مکان نما فعلی دوباره | ||
| 434 | درج می کند. | ||
| 435 | |||
| 436 | |||
| 437 | >> آن را امتحان کنید. C-y را تایپ کنید تا متن را به عقب برگردانید. | ||
| 438 | |||
| 439 | اگر چندین C-k را پشت سر هم انجام دهید، تمام متن کشته شده ذخیره می شود، | ||
| 440 | به طوری که یک C-y همه خطوط را به یکباره انحراف می دهد. | ||
| 441 | |||
| 442 | >> اکنون این کار را انجام دهید، C-k را چندین بار تایپ کنید. | ||
| 443 | |||
| 444 | حال برای بازیابی آن متن کشته شده: | ||
| 445 | |||
| 446 | >> C-y را تایپ کنید. سپس مکان نما را چند خط پایین ببرید و دوباره C-y را | ||
| 447 | تایپ کنید اکنون نحوه کپی کردن متن را مشاهده می کنید. | ||
| 448 | |||
| 449 | اگر متنی داشته باشید که می خواهید به عقب برگردید، چه کار می کنید چیز دیگری | ||
| 450 | می کشید؟ C-y کشتن اخیر را از بین می برد. ولی متن قبلی گم نمی شود می توانید | ||
| 451 | با استفاده از M-y به آن برگردید فرمان بعد از اینکه C-y را برای دریافت | ||
| 452 | آخرین kill انجام دادید، تایپ کنید M-y آن متن یاک شده را با kill قبلی | ||
| 453 | جایگزین می کند. تایپ کردن M-y بارها و بارها کشتارهای قبلی و قبلی را به | ||
| 454 | ارمغان می آورد. وقتی به متن مورد نظر رسیدید، لازم نیست کاری انجام دهید تا | ||
| 455 | نگهش دارید. فقط به ویرایش خود ادامه دهید و متن انحرافی را رها کنید. | ||
| 456 | |||
| 457 | اگر تعداد M-y به دفعات کافی داشته باشید، به نقطه شروع باز می گردید | ||
| 458 | (بیشترین کشتن اخیر). | ||
| 459 | |||
| 460 | >> یک خط را بکشید، در اطراف حرکت کنید، یک خط دیگر را بکشید. | ||
| 461 | سپس C-y را انجام دهید تا دومین خط کشته شده را برگردانید. | ||
| 462 | سپس M-y را انجام دهید تا اولین خط کشته شده جایگزین آن شود. | ||
| 463 | M-y های بیشتری انجام دهید و ببینید چه چیزی به دست می آورید. به انجام | ||
| 464 | آنها ادامه دهید تا زمانی که خط کشتن دوم برمی گردد، و سپس چند بار دیگر. | ||
| 465 | اگر دوست دارید، میتوانید امتحان کنیدو به M-y آرگومانهای مثبت و منفی | ||
| 466 | بدهید. | ||
| 467 | |||
| 468 | |||
| 469 | |||
| 470 | * لغو | ||
| 471 | ------ | ||
| 472 | |||
| 473 | اگر تغییری در متن ایجاد کنید و سپس تصمیم به برگرداندن آن تغییر بگیرید، | ||
| 474 | شما می توانید تغییر را با فرمان (undo) C-/ لغو کنید. | ||
| 475 | |||
| 476 | به طور معمول، C-/ تغییرات ایجاد شده توسط یک فرمان را خنثی می کند. | ||
| 477 | اگر C-/ را چندین بار پشت سر هم، تکرار کنید هر تکرار یک فرمان دیگر | ||
| 478 | را خنثی می کند. | ||
| 479 | |||
| 480 | اما دو استثنا وجود دارد: فرمانهایِی که متن را تغییر نمی دهند | ||
| 481 | به حساب نمی آیند (این شامل فرمانهایِ حرکت مکان نما و فرمانهایِ اسکرول می شود.) | ||
| 482 | و کاراکترهای خود درج معمولاً در گروهای، تا ۲۰ تایی رسیدگی می شوند. | ||
| 483 | (این برای کاهش تعداد C-/ هایی است که باید برای لغو درج متن) تایپ کنید. | ||
| 484 | |||
| 485 | |||
| 486 | >> این خط را با C-k بکشید، سپس /-C را تایپ کنید تا دوباره ظاهر شود. ـ-C یک | ||
| 487 | فرمان لغو جایگزین است. دقیقاً مانند C-/ کار می کند. در برخی از پایانه | ||
| 488 | های متنی، تایپ C-/ در واقع _-C را به Emacs ارسال می کند. از طرف | ||
| 489 | دیگر، C-x u نیز دقیقاً مانند C-/ کار می کند، اما کمی کمتر است و راحتر | ||
| 490 | تایپ میشود. | ||
| 491 | |||
| 492 | |||
| 493 | یک آرگومان عددی /-C-_ ، C, یا C-x u به عنوان یک تعداد تکرار عمل می کند. | ||
| 494 | |||
| 495 | همانطور که می توانید حذف متن را لغو کنید، می توانید کشتن متن رانیز لغو کنید. | ||
| 496 | تمایز بین کشتن چیزی و حذف آن در مورد C-y تأثیر می گذارد، برای لغو فرقی نمی کند. | ||
| 497 | |||
| 498 | |||
| 499 | * فایل ها | ||
| 500 | --------- | ||
| 501 | |||
| 502 | برای اینکه متنی را که ویرایش می کنید دائمی کنید، باید آن را در یک فایل | ||
| 503 | قرار دهید. در غیر این صورت، با خروج از Emacs از بین می رود. برای اینکه متن | ||
| 504 | خود را در یک فایل قرار دهید، قبل از وارد کردن فایل باید آن را "پیدا کنید". | ||
| 505 | (به این "بازدید از فایل" نیز گفته می شود.) | ||
| 506 | |||
| 507 | پیدا کردن یک فایل به این معنی است که شما محتویات فایل را در داخل Emacs | ||
| 508 | می بینید از بسیاری جهات، گویی در حال ویرایش خود فایل هستید. با این حال، | ||
| 509 | تغییراتی که با استفاده از Emacs ایجاد می کنید دائمی نمی شوند تا زمانی که | ||
| 510 | فایل را "ذخیره" کنید. این به این دلیل است که شما بتوانید از ذخیره کردن | ||
| 511 | فایل نیمه کامل اجتناب کنید. حتی هنگامی که فایل را ذخیره کردید Emacs فایل | ||
| 512 | اصلی را با نام دیگری برایتان نگه میدارد، چون ممکن است بعداً تصمیم بگیرید که | ||
| 513 | تغییرات شما اشتباه بوده است. | ||
| 514 | |||
| 515 | اگر به پایین صفحه نگاه کنید، خطی را خواهید دید که | ||
| 516 | با حروف "−" شروع می شود و چیزی مانند: "TUTORIAL ---:-" در آن را نشان می دهد. | ||
| 517 | این قسمت از صفحه نمایش معمولاً نام فایلی که در حال حاضر از آن بازدید می | ||
| 518 | کنید را نشان میدهد. شما اکنون در حال بازدید از کپی شخصی آموزش Emacs خود که | ||
| 519 | "TUTORIAL" نام دارد هستید. وقتی شما یک فایل را با Emacs پیدا کردید، نام آن | ||
| 520 | فایل بطور دقیق در همان نقطه ظاهر می شود. | ||
| 521 | |||
| 522 | یک مورد خاص در مورد فرمان برای یافتن یک فایل این است که شما باید بگویید چه | ||
| 523 | نام فایلی را می خواهید. ما می گوییم فرمان "خواندن یک ارگومان" | ||
| 524 | (در این مورد، آرگومان نام فایل است.)بعد از تایپ فرمان. | ||
| 525 | |||
| 526 | |||
| 527 | با C-x C-f یک فایل را پیدا کنید. Emacs از شما می خواهد که نام فایل را تایپ | ||
| 528 | کنید. نام فایلی که تایپ می کنید در خط پایین صفحه نمایش ظاهر می شود. خط | ||
| 529 | پایین زمانی که برای این نوع ورودی استفاده می شود، «مینی بافر» نامیده می | ||
| 530 | شود. شما می توانید ازفرمانهایِ ویرایش معمولی Emacs برای ویرایش نام فایل | ||
| 531 | استفاده کنید. | ||
| 532 | |||
| 533 | در حالی که نام فایل (یا هر ورودی مینی بافر دیگر) را وارد می کنید، | ||
| 534 | می توانید با C-g فرمان را لغو کنید. | ||
| 535 | |||
| 536 | >> فرمانِ C-x C-f را تایپ کنید، سپس C-g را تایپ کنید. این فرمانِ مینی بافر | ||
| 537 | را لغو می کند، و همچنین فرمان C-x C-f را که مینی بافر از آن استفاده می | ||
| 538 | کرد را لغو می کند، بنابراین شما هیچ فایلی را پیدا نمی کنید. | ||
| 539 | |||
| 540 | وقتی نام فایل را وارد کردید، <Return> را تایپ کنید تا | ||
| 541 | آن را خاتمه دهید. مینی بافر ناپدید می شود و فرمان C-x C-f | ||
| 542 | برای یافتن فایلی که انتخاب کرده اید اعمال میشود. | ||
| 543 | |||
| 544 | محتویات فایل اکنون روی صفحه ظاهر می شود و می توانید آن را ویرایش کنید. | ||
| 545 | هنگامی که می خواهید تغییرات خود را دائمی کنید، فرمان | ||
| 546 | |||
| 547 | C-x C-s فایل را ذخیره کنید | ||
| 548 | |||
| 549 | این فرمان متن را در فایل درون Emacs کپی می کند. اولین باری که این | ||
| 550 | کار را انجام دهید، Emacs نام فایل اصلی را به نام جدید تغییر می دهد بنابر این | ||
| 551 | گم نمی شود. نام جدید با افزودن "~" به انتهای نام فایل اصلی ساخته می شود. | ||
| 552 | هنگامی که ذخیره به پایان رسید، Emacs نام فایل نوشته شده را نمایش می دهد. | ||
| 553 | |||
| 554 | |||
| 555 | >> <C-x C-s TUTORIAL <Return را تایپ کنید. | ||
| 556 | این فرمان باید این آموزش را در فایلی به نام TUTORIAL ذخیره کند و | ||
| 557 | و " Wrote...TUTORIAL " را در پایین صفحه نشان دهد. | ||
| 558 | |||
| 559 | می توانید یک فایل موجود را پیدا کنید، آن را مشاهده یا ویرایش کنید. شما | ||
| 560 | همچنین می توانید فایلی را پیدا کنید که قبلاً وجود ندارد. این راه ایجاد یک | ||
| 561 | فایل با Emacs است: فایل را پیدا کنید که خالی شروع می شود و سپس شروع به درج | ||
| 562 | متن در آن کنید، وقتی شما درخواست ذخیره فایل را می کنید، Emacs در واقع فایل | ||
| 563 | را با متنی که شما درج کرده اید ایجاد می کند. از آن به بعد، می توانید خود | ||
| 564 | را در حال ویرایش فایل موجود بدانید. | ||
| 565 | |||
| 566 | |||
| 567 | |||
| 568 | * بافرها | ||
| 569 | --------- | ||
| 570 | |||
| 571 | اگر فایل دومی را با C-x C-f پیدا کردید، فایل اول داخل Emacs باقی می ماند. | ||
| 572 | برای برگشت مجدد به آن شما میتوانید با C-x C-f ، دو باره آن را پیدا کنید. | ||
| 573 | با این روش می توانید تعداد زیادی فایل را در داخل Emacs باز کنید. | ||
| 574 | |||
| 575 | ایمکس متن هر فایل را در یک مکان به نام "بافر" ذخیره می کند. | ||
| 576 | پیدا کردن یک فایل، یک بافر جدید در Emacs ایجاد می کند. برای دیدن لیستی از | ||
| 577 | بافرهایی که در حال حاضر وجود دارند، تایپ کنید | ||
| 578 | |||
| 579 | C-x C-b لیست بافرها | ||
| 580 | |||
| 581 | >> اکنون C-x C-b را امتحان کنید. | ||
| 582 | |||
| 583 | ببینید که چگونه هر بافر یک نام دارد و همچنین ممکن است نام فایلی که محتویات | ||
| 584 | آن را نگه می دارد داشته باشد. هر متنی که در پنجره Emacs می بینید همیشه | ||
| 585 | بخشی از یک بافر است. | ||
| 586 | |||
| 587 | >> با تایپ C-x 1 میتوانید از شر لیست بافر خلاص شوید. | ||
| 588 | |||
| 589 | هنگامی که چندین بافر دارید، در هر زمان تنها یکی از آنها "جاری" است. آن | ||
| 590 | بافر همان بافری است که شما ویرایش می کنید. اگر می خواهید بافر دیگری را | ||
| 591 | ویرایش کنید، باید به آن "سوئیچ" کنید. اگر می خواهید به یک بافر سوئیچ کنید | ||
| 592 | که مربوط به یک فایل است، می توانید با مراجعه مجدد به آن فایل با C-x C-f | ||
| 593 | این کار را انجام دهید. اما یک راه ساده تر وجود دارد: از فرمان C-x b | ||
| 594 | استفاده کنید. در آن فرمان باید نام بافر را تایپ کنید. | ||
| 595 | |||
| 596 | >> با تایپ C-x C-f foo <Return> فایلی به نام "foo" ایجاد کنید. | ||
| 597 | سپس C-x b TUTORIAL <Return> را تایپ کنید تا به این آموزش بازگردید. | ||
| 598 | |||
| 599 | اغلب اوقات، نام بافر با نام فایل یکی است(بدون قسمت پوشه فایل). به هر حال، | ||
| 600 | این همیشه درست نیست. لیست بافری که با C-x C-b ایجاد می کنید، نام هر دو | ||
| 601 | بافر و نام فایل هر بافر را به شما نشان می دهد. | ||
| 602 | |||
| 603 | برخی از بافرها با فایل ها مطابقت ندارند. بافری با نام "*Buffer List*" که | ||
| 604 | حاوی لیست بافری است که شما آن را با C-x C-b ساخته اید هیچ فایلی ندارد. این | ||
| 605 | TUTORIAL buffer که در ابتدا انجام شد فایلی ندارد، اما اکنون دارد، زیرا | ||
| 606 | قبلا شما C-x C-s را تایپ کردید و آن را در یک فایل ذخیره کرده اید. | ||
| 607 | |||
| 608 | بافر ی با نام "*Messages*" نیز با هیچ فایلی مطابقت ندارد. این بافر حاوی | ||
| 609 | پیام هایی است که در در طول جلسه Emacs شما، در خط پایین ظاهر شده اند. | ||
| 610 | |||
| 611 | >> حالا < C-x b *Messages* <Return را تایپ کنید تا به بافر پیام ها نگاه کنید. | ||
| 612 | سپس < C-x b TUTORIAL <Return را تایپ کنید تا به این آموزش بازگردید. | ||
| 613 | |||
| 614 | اگر در متن یک فایل تغییراتی ایجاد کردید و سپس فایل دیگری را پیدا کنید، این | ||
| 615 | فایل اول را ذخیره نمی کند. آن تغییرات در Emacs در بافر آن فایل باقی می ماند. | ||
| 616 | ایجاد یا ویرایش فایل دوم بافر، هیچ تاثیری روی بافر فایل اول ندارد. | ||
| 617 | این بسیار مفید است، اما این بدان معناست که شما به یک راه راحت برای ذخیره | ||
| 618 | بافر فایل اول نیاز دارید. نیاز به برگشت به بافِر اول برای ذخیره آن توسط | ||
| 619 | C-x C-s کمی دردسرامیز است. بنابراین فرمانِ زیر را داریم. | ||
| 620 | |||
| 621 | C-x s برخی از بافرها را ذخیره کنید | ||
| 622 | |||
| 623 | فرمان C-x s در مورد هر بافری که حاوی تغییراتی که ذخیرِه | ||
| 624 | نشده است از شما می پرسد. | ||
| 625 | |||
| 626 | >> یک خط متن وارد کنید، سپس C-x s را تایپ کنید. | ||
| 627 | باید از شما بپرسد که آیا بافر با نام TUTORIAL را ذخیره می کنید یا خیر. | ||
| 628 | با تایپ "y" به سوال پاسخ مثبت دهید. | ||
| 629 | |||
| 630 | |||
| 631 | * گسترش مجموعه فرمانها | ||
| 632 | --------------------------- | ||
| 633 | |||
| 634 | فرمانهایِ Emacs بسیار بسیار بیشتر است از آنچه که امکان قراردادن همه آنها | ||
| 635 | با کاراکترها ی کنترل و متا باشد. | ||
| 636 | Emacs با فرمان( X (eXtend این کار را میسر میکند. | ||
| 637 | دو حالت برای این وجود دارد: | ||
| 638 | |||
| 639 | C-x کاراکتر برای eXtend. بعد از یک کاراکتر. | ||
| 640 | M-x فرمانی با نام eXtend. بعد از یک نام طولانی. | ||
| 641 | |||
| 642 | اینها فرمانهایی هستند که عموما مفید هستند، اما کمتر ازفرمانهایی که قبلاً در | ||
| 643 | مورد آنها آموخته اید استفاده می شوند. شما قبلاً چند مورد از انها را | ||
| 644 | دیدهاید: برای مثال فرمان فایل C-x C-f را برای یافتن و C-x C-s را برای | ||
| 645 | ذخیره کردن در نظر بگیرید. مثال دیگر، فرمان C-x C-c فرمان پایان دادن به جلسه | ||
| 646 | Emacs است. (نگران از دست دادن تغییراتی که ایجاد کرده اید نباشید C-x C-c | ||
| 647 | پیشنهاد می کند هر فایل تغییر یافته را ذخیره کنید قبل از اتمام جلسه Emacs.) | ||
| 648 | |||
| 649 | |||
| 650 | اگر از صفحه نمایش گرافیکی استفاده می کنید، نیازی به فرمان خاصی برای انتقال | ||
| 651 | از Emacs به برنامه دیگر ندارید. شما می توانید این کار رابا ماوس یا با | ||
| 652 | فرمانهای مدیر پنجره انجام دهید. با این حال،اگر شمااز ترمینال متنی که می | ||
| 653 | تواند تنها یک برنامه را در یک زمان نشان دهد، استفاده می کنیدباید Emacs را | ||
| 654 | "تعلیق" کنید تا به هر برنامه دیگری بروید. | ||
| 655 | |||
| 656 | فرمان C-z خروج *موقت*--- از Emacs است تا بتوانید به همان جلسه Emacs | ||
| 657 | برگردید. هنگامی که Emacs روی یک ترمینال متنی اجرا می شود، C-z، Emacs را به | ||
| 658 | حالت تعلیق در می آورد. یعنی به shell برمی گردد اما کار Emacs را از بین نمی | ||
| 659 | برد. در رایج ترین shell ها، شما می تواند Emacs را با فرمان "fg" یا با | ||
| 660 | "%emacs" از سر بگیرد. | ||
| 661 | |||
| 662 | زمان استفاده از C-x C-c زمانی است که می خواهید از سیستم خارج شوید. همچنین | ||
| 663 | برای خروج از Emacs و ویرایش سریع استفاده می شود، همانند یک ابزار مدیریت | ||
| 664 | ایمیل. | ||
| 665 | |||
| 666 | فرمانهای C-x زیادی وجود دارد. در اینجا لیستی از مواردی که یاد گرفته اید است: | ||
| 667 | |||
| 668 | C-x C-f فایل را پیدا کنید | ||
| 669 | C-x C-s ذخیره فایل | ||
| 670 | C-x s برخی از بافرها را ذخیره کنید | ||
| 671 | C-x C-b لیست بافرها | ||
| 672 | C-x b سوئیچ بافر | ||
| 673 | C-x C-c از Emacs خارج شوید | ||
| 674 | C-x 1 تمام پنجره ها را به جز یک حذف کنید | ||
| 675 | C-x u لغو فرمان | ||
| 676 | |||
| 677 | فرمانهایی با نام eXtended فرمانهایی هستند که به طور مکرر کمتر مورد استفاده | ||
| 678 | قرار می گیرند یا فرمانهایی که فقط در حالت های خاصی استفاده می شوند. | ||
| 679 | به عنوان یک مثال فرمان replace-string است که یک رشته حروف را جایگزین رشته | ||
| 680 | حروف دیگری در بافر می کند. وقتی M-x را تایپ میکنید، Emacs درپایین صفحه با | ||
| 681 | نشان دادنِ M-x از شما میخواهد نام فرمان را تایپ کنید؛ در اینجا یعنی | ||
| 682 | "replace-string". فقط " <repl s<TAB" را تایپ کنید و Emacs نام فرمان را | ||
| 683 | تکمیل می کند. (<TAB> کلید Tab است که معمولاً جایگاهش بالای کلید CapsLock یا | ||
| 684 | Shift نزدیک لبه سمت چپ کیبورد است.) نام کامل شده فرمان را با <Return> | ||
| 685 | ارسال کنید. | ||
| 686 | |||
| 687 | فرمان replace-string به دو آرگومان نیاز دارد -- رشته جایگزین شونده | ||
| 688 | و رشته ای که جایگزین آن شود.شما باید هر آرگومان رابا <Return> پایان دهید. | ||
| 689 | |||
| 690 | |||
| 691 | >> مکان نما را به خط خالی دو خط زیر این یکی ببرید. | ||
| 692 | سپس < M-x repl s<Return>changed<Return>altered<Return را تایپ کنید. | ||
| 693 | |||
| 694 | |||
| 695 | توجه کنید که این خط چگونه تغییر کرده است: شما کلمه "changed" را با"altered" | ||
| 696 | جایگزین کرده اید. هر جایی که بعد از موقعیت اولیه مکان نما رخ داد. | ||
| 697 | |||
| 698 | |||
| 699 | * ذخیره خودکار | ||
| 700 | --------------- | ||
| 701 | |||
| 702 | وقتی تغییراتی در فایلی ایجاد کرده اید، اما هنوز آنها را ذخیره نکرده اید، | ||
| 703 | اگر کامپیوتر شما خراب شود، ممکن است از بین بروند. برای محافظت شما از آن، | ||
| 704 | Emacs به صورت دوره ای برای هر فایلی که شما در حال ویرایش آن هستید یک فایل | ||
| 705 | "ذخیره خودکار" می نویسد. نام فایل ذخیره خودکار دارای یک # در ابتدا و در | ||
| 706 | پایان است؛ به عنوان مثال، اگر فایل شما "hello.c" نام دارد، ذخیره خودکار نام | ||
| 707 | فایل "#hello.c#" است.وقتی فایل را به روش عادی ذخیره می کنید، Emacs فایل | ||
| 708 | ذخیره خودکار خود را حذف می کند. | ||
| 709 | |||
| 710 | اگر رایانه خراب شد، میتوانید ویرایش ذخیرهشده خودکار خود را توسط | ||
| 711 | یافتن فایل به طور معمول (فایلی که در حال ویرایش آن بودید، نه ذخیره فایل خودکار) | ||
| 712 | و سپس تایپ M-x recover-this-file <Return> بازیابی کنید . هنگامی که | ||
| 713 | تأیید آن را می خواهد،< yes<Return را تایپ کنید تابه ذخیره خودکار داده ها | ||
| 714 | ادامه دهید و آن را بازیابی کنید. | ||
| 715 | |||
| 716 | |||
| 717 | |||
| 718 | * منطقه اکو | ||
| 719 | ----------- | ||
| 720 | |||
| 721 | اگر Emacs ببیند که به آرامی فرمانهای چند کاراکتری را تایپ می کنید، آن را | ||
| 722 | انجام می دهد آنها را در پایین صفحه در ناحیه ای به نام "منطقه اکو" به شما | ||
| 723 | نشان می دهد. ناحیه اکو حاوی خط پایین صفحه نمایش است. | ||
| 724 | |||
| 725 | |||
| 726 | * خط حالت ( MODE LINE) | ||
| 727 | ----------------------- | ||
| 728 | |||
| 729 | خط بلافاصله بالای ناحیه اکو "mode line" نامیده می شود. | ||
| 730 | خط حالت چیزی شبیه به این می گوید: | ||
| 731 | |||
| 732 | TUTORIAL 63% L749 (Fundamental) −**:− | ||
| 733 | |||
| 734 | این خط، اطلاعات مفیدی در مورد وضعیت Emacs | ||
| 735 | و متنی که در حال ویرایش آن هستید می دهد. | ||
| 736 | |||
| 737 | شما از قبل می دانید که نام فایل به چه معناست -- این فایلی است که شما دارید. | ||
| 738 | NN% موقعیت فعلی شما را در متن بافر نشان می دهد. این | ||
| 739 | به این معنی است که NN درصد از بافر بالای صفحه نمایش است. | ||
| 740 | اگر بالای بافر روی صفحه باشد، به آن "Top" بجای "0٪" می گوید. | ||
| 741 | اگر پایین بافر روی صفحه باشد، "Bot" می گوید. | ||
| 742 | اگر به بافری نگاه می کنید که آنقدر کوچک است که همه آن روی صفحه جا می شود, | ||
| 743 | خط مد می گوید, "All". | ||
| 744 | |||
| 745 | حرف L و ارقام، موقعیت را به طریق دیگری نشان می دهند: آنها شماره خط فعلیِ | ||
| 746 | نقطه را نشان می دهند. | ||
| 747 | |||
| 748 | ستاره های نزدیک به جلو به این معنی است که شما تغییراتی در متن ایجاد کرده | ||
| 749 | اید. درست پس از بازدید یا ذخیره یک فایل، آن قسمت از خط حالت، با خطوط تیره | ||
| 750 | و بدون ستاره نمایش داده می شود. | ||
| 751 | |||
| 752 | آن بخشی از خط حالت که در داخل پرانتز است گویایِ | ||
| 753 | حالتهای ویرایشی فعلی هستند. حالتی که الان استفاده می کنید Fundamental است. | ||
| 754 | این نمونه ای از "مد ماژر (major mode)" است. | ||
| 755 | |||
| 756 | ایمکس حالت های اصلی مختلف فراوان دارد. برخی از آنها برای | ||
| 757 | ویرایش زبان های برنامه ریزی مختلف مثل Lisp هستند و برخی برای | ||
| 758 | ویرایش متن هستند، و غیره. | ||
| 759 | |||
| 760 | در هر زمان یک و تنها یک مد ماژر فعال است، و نام آن را همیشه می توان در خط | ||
| 761 | حالت، دقیقاً در جایی که اکنون "Fundamental" است، یافت. | ||
| 762 | |||
| 763 | هر مد ماژر باعث می شود که برخی از فرمانها متفاوت عمل کنند. مثلا، فرمانهایی | ||
| 764 | برای ایجاد comment در یک برنامه وجود دارد و از آنجایی که هر کدام از | ||
| 765 | زبانهای برنامه نویسی ایده متفاوتی در مورد آنچه که یک comment باید باشد | ||
| 766 | دارند هر مد ماژر باید comment رابه طور متفاوتی درج کند. هر یک از مدهای | ||
| 767 | ماژر نام یک فرمان توسعه یافته است، که چگونه می توانید به آن حالت تغییر | ||
| 768 | دهید. برای مثال، M-x fundamental-mode فرمانی است که به حالت اساسی بروید. | ||
| 769 | |||
| 770 | اگر قرار است متنی به زبان انسانی مانند: این فایل را ویرایش کنید، شما | ||
| 771 | احتمالا باید از حالت متن استفاده کنید. | ||
| 772 | |||
| 773 | >> تایپ کنید < M-x text-mode <Return | ||
| 774 | |||
| 775 | نگران نباشید، هیچ یک از فرمانهایِ Emacs که یاد گرفته اید تغییر نمی کند اما | ||
| 776 | می توانید مشاهده کنید که M-f و M-b اکنون آپاستروف ها به عنوان بخشی از | ||
| 777 | کلمات رفتارمی کنند.قبلاً در حالت بنیادی، M-f و M-b مانند آپاستروف ها به عنوان | ||
| 778 | جداکننده کلمات رفتار می کردند. | ||
| 779 | |||
| 780 | |||
| 781 | اکثر فرمانها در هر مد ماژر "همان کار" را انجام می دهند، امادرمواردی مانند | ||
| 782 | مثال بالا کمی متفاوت عمل می کنند. | ||
| 783 | |||
| 784 | |||
| 785 | برای مشاهده اطلاعات امدادی در مد ماژر فعلی خود، C-h m را تایپ کنید. | ||
| 786 | |||
| 787 | >> مکان نما را به خط زیر این خط ببرید. | ||
| 788 | >> C-l C-l را تایپ کنید تا این خط به بالای صفحه نمایش داده شود. | ||
| 789 | >> C-h m را تایپ کنید تا ببینید مدِ Text با مدِ Fundamental چه تفاوتی دارد. | ||
| 790 | >> C-x 1 را تایپ کنید تا اطلاعات امدادی را از روی صفحه حذف کنید. | ||
| 791 | |||
| 792 | مد ماژور را ماژر می نامند زیرا مد ماینور نیز وجود دارد. مدهای ماینور | ||
| 793 | جایگزینی برای مدهای ماژور نیستند، فقط آنها را تغیر و تبدیل می کنند. هر مد | ||
| 794 | ماینور می تواند خودش مستقلانه روشن یا خاموش گردد، مستقل ازتمام مدهای | ||
| 795 | ماینور دیگر،و مستقل از مد ماژر فعلی شما. بنابراین می توانید از هیچ مد | ||
| 796 | ماینور، یک مد ماینور و یاترکیبی از چند مد ماینور استفاده کنید. | ||
| 797 | |||
| 798 | |||
| 799 | یک مد ماینور که بسیار مفید است، به خصوص برای ویرایش متن به زبان انسانی | ||
| 800 | (human-language)، مد ماینورِ خود−پر کن (Auto Fill mode) است. وقتی این مد | ||
| 801 | روشن است, و شما با نوشتن متن، خطی بوجود می آورد که خیلی طولانی است،Emacs | ||
| 802 | خط بین کلمات را به طور خودکار می شکند. | ||
| 803 | |||
| 804 | |||
| 805 | شما می توانید با انجام <M-x auto-fill-mode <Return, مد ماینور خودکار را | ||
| 806 | روشن کنید. وقتی مد روشن است، می توانید با انجام < M-x auto-fill-mode | ||
| 807 | <Return دوباره آن را خاموش کنید. اگر مد خاموش باشد، با این فرمان روشن می | ||
| 808 | شود واگر مد روشن است، این فرمان آن را خاموش می کند. ما به این فرمان "تغییر | ||
| 809 | مد" می گوییم. | ||
| 810 | |||
| 811 | |||
| 812 | >>اکنون <M-x auto-fill-mode <Return را تایپ کنید. | ||
| 813 | سپس یک خط "asdf" را وارد کنید،آن را تکرار کنید تا زمانی که ببینید که به | ||
| 814 | دو خط تقسیم شده است. شماباید فاصله (spaces) بین آنها بوجود آورید، زیرا | ||
| 815 | Auto Fill خطوط را فقط درفواصل می شکند. | ||
| 816 | |||
| 817 | حاشیه معمولاً از 70 کاراکتر تشکیل می شود، اما شما می توانید آن را با فرمان | ||
| 818 | C-x f تغییر دهید. شما باید تنظیمات حاشیه ای را که می خواهید بدهید،همراه با | ||
| 819 | استدلال عددی باشد. | ||
| 820 | |||
| 821 | > C-x f را با آرگومان 20 تایپ کنید. (C-u 2 0 C-x f). | ||
| 822 | سپس مقداری متن را تایپ کنید و سپس ببینید Emacs، خطوط 20 کاراکتری را با | ||
| 823 | آن پر می کنید. سپس با استفاده از C-x f، دوباره حاشیه را به 70 | ||
| 824 | برگردانید. | ||
| 825 | |||
| 826 | |||
| 827 | اگر در وسط پاراگراف تغییراتی ایجاد کردید، حالت پر کردن خودکار دوباره آن را | ||
| 828 | برای شماپر نمی کند. برای پر کردن مجدد پاراگراف، M-q (META-q) رابا مکان نما | ||
| 829 | در داخل آن پاراگراف تایپ کنید. | ||
| 830 | |||
| 831 | |||
| 832 | >> مکان نما را به پاراگراف قبلی ببرید و M-q را تایپ کنید. | ||
| 833 | |||
| 834 | |||
| 835 | * جستجوکردن | ||
| 836 | ----------- | ||
| 837 | |||
| 838 | با Emacs می توانید رشته ها را جستجو کند («رشته:string » گروهی از | ||
| 839 | کاراکترهای به هم پیوسته است). جستجو به جلو در متن یا به عقب در متن. | ||
| 840 | جستجوی برای یک string یک فرمان حرکت مکان نما است. آن مکان نما را به مکان | ||
| 841 | بعدی که آن رشته ظاهر می شود حرکت می دهد. | ||
| 842 | |||
| 843 | فرمان جستجوی Emacs "افزایشی" است. این بدان معنی است که | ||
| 844 | جستجو زمانی اتفاق می افتد که رشته مورد نظر را برای جستجو تایپ می کنید. | ||
| 845 | |||
| 846 | فرمان شروع جستجو C-s برای جستجوی جلو و C-r برای جستجوی معکوس است. | ||
| 847 | اما صبر کنید! اکنون آنها را امتحان نکنید. | ||
| 848 | |||
| 849 | وقتی C-s را تایپ می کنید متوجه خواهید شد که رشته "I-search" به صورت یک | ||
| 850 | اعلان در ناحیه اکو ظاهر می شود. این به شما می گوید که Emacs مشغول کاری است | ||
| 851 | که یک جستجوی افزایشی نامیده می شود و در آن حالت منتظر شماست تامورد جستجو | ||
| 852 | را تایپ کنید. <Return> یک جستجو را خاتمه می دهد. | ||
| 853 | |||
| 854 | >> اکنون C-s را برای شروع جستجو تایپ کنید | ||
| 855 | کلمه"مکان نما" را به آرامی، با تک تک حروف تایپ کنید، پس از تایپ | ||
| 856 | هر کاراکتر مکث کنید, تا متوجه آنچه برای مکان نما اتفاق می افتد شوید. | ||
| 857 | اکنون یک بار "مکان نما" را جستجو کرده اید. | ||
| 858 | >> دوباره تایپ کنید C-s، برای جستجوی رخداد بعدی "مکان نما". | ||
| 859 | >> اکنون <DEL> را چهار بار تایپ کنید و ببینید مکان نما چگونه حرکت می کند. | ||
| 860 | >> برای پایان یافتن جستجو، <Return> را تایپ کنید. | ||
| 861 | |||
| 862 | دیدید چه اتفاقی افتاد؟ Emacs، در یک جستجوی افزایشی، سعی می کند | ||
| 863 | به رخداد رشته ای که تاکنون تایپ کرده اید بروید. | ||
| 864 | برای رفتن به رخداد بعدی "مکان نما"، فقط C-s را دوباره تایپ کنید. اگر چنین | ||
| 865 | رخدادی وجود ندارد، Emacs بوق میزند و به شما میگوید جستجو در حال حاضر | ||
| 866 | "شکست" خرده است. C-g نیز جستجو را خاتمه می دهد. | ||
| 867 | |||
| 868 | اگر در وسط یک جستجوی افزایشی هستید و <DEL> را تایپ کنید، | ||
| 869 | جستجو، "عقب نشینی" به مکان قبلی میکند. اگر برای پیشرفت جستجوی رشته ای بعدی، | ||
| 870 | بعد از اینکه C-s را تایپ کردید <DEL> را تایپ کنید، | ||
| 871 | <DEL> مکان نما را به یک اتفاق قبلی برمی گرداند. اگر | ||
| 872 | هیچ مورد قبلی در رشته جستجو وجود نداشته باشد، <DEL> آخرین کاراکتر را | ||
| 873 | در رشته جستجوپاک می کند. | ||
| 874 | برای مثال، فرض کنید "م" را تایپ کرده اید | ||
| 875 | برای اولین بار "م" را جستجو کنید. حالا اگر "ک" را تایپ کنید، | ||
| 876 | مکان نما به اولین رخداد "مک" حرکت می کند. حالا <DEL> را تایپ کنید. | ||
| 877 | این "ک" را از رشته جستجو پاک می کند و مکان نما به به اولین وقوع "م" در | ||
| 878 | رشته جستجو به عقب برمی گردد. | ||
| 879 | |||
| 880 | اگر در وسط یک جستجو هستید و کاراکتر کنترل یا متا را تایپ کنید، | ||
| 881 | شخصیت (به استثنای معدود کاراکتر هایی که در یک جستجو خاص هستند، | ||
| 882 | مانند C-s و C-r)، جستجو خاتمه می یابد. | ||
| 883 | |||
| 884 | با C-s جستجو را بعد از موقعیت مکان نمای فعلی شروع می کنید و هر رخدادی از رشته | ||
| 885 | بعد از مکان نما جستجو می شود. اگر می خواهید چیزی در متن قبل از مکان نما جستجو | ||
| 886 | شود، به جای آن، C-r را تایپ کنید. همه چیزهایی که ما در مورد C-s | ||
| 887 | گفته ایم برای C-r نیز صدق می کند، با این تفاوت که جهت جستجو معکوس می شود. | ||
| 888 | |||
| 889 | |||
| 890 | * پنجره های چندگانه | ||
| 891 | -------------------- | ||
| 892 | |||
| 893 | یکی از ویژگی های خوب Emacs این است که می توانید در یک زمان بیشتر ازیک | ||
| 894 | پنجره روی صفحه نمایش نشان دهید. (توجه داشته باشید که Emacs ازاصطلاح | ||
| 895 | "frames"-- که در بخش بعدی توضیح داده شده است -- برای برخی کاربرد دیگر | ||
| 896 | "windows" گفته می شود. کتابچه راهنمای Emacs حاوی واژه نامه ای ازشرایط | ||
| 897 | استفاده Emacs.) | ||
| 898 | |||
| 899 | >> مکان نما را به این خط ببرید و C-l C-l را تایپ کنید. | ||
| 900 | |||
| 901 | >> حالا C-x 2 را تایپ کنید که صفحه را به دو پنجره تقسیم می کند. هر دو | ||
| 902 | پنجره این آموزش را نمایش می دهند. مکان نمای ویرایش در پنجره بالا باقی | ||
| 903 | می ماند. | ||
| 904 | |||
| 905 | >> تایپ C-M-v برای رفتن به پایین پنجره . | ||
| 906 | (اگر کلید META واقعی ندارید، <ESC> C-v را تایپ کنید.) | ||
| 907 | |||
| 908 | >> تایپ کنید C-x o ("o" برای "other"دیگر ) برای حرکت مکان نما به پنجره پایین. | ||
| 909 | >> از C-v و M-v در پنجره پایین برای پیمایش استفاده کنید. | ||
| 910 | به خواندن این فرمانهای عمل، در پنجره بالا ادامه دهید. | ||
| 911 | |||
| 912 | >> دوباره C-x o را تایپ کنید تا مکان نما را به پنجره بالا برگردانید. | ||
| 913 | مکان نما در پنجره بالا دقیقاً همان جایی است که قبلا بود. | ||
| 914 | |||
| 915 | می توانید از C-x o برای جابجایی بین پنجره ها استفاده کنید. "پنجره انتخاب | ||
| 916 | شده" جایی که بیشترین ویرایش در آن صورت می گیرد، همان پنجره ای است که مکان | ||
| 917 | نما برجسته است، و زمانی که تایپ نمی کنید چشمک می زند. پنجره های دیگر | ||
| 918 | موقعیت مکان نمای خود را دارند. اگر Emacs را به صورت گرافیکی اجرا می کنید، | ||
| 919 | آن مکان نماها به صورت کادرهای توخالی بدون چشمکزن ترسیم میشوند. | ||
| 920 | |||
| 921 | |||
| 922 | فرمان C-M-v هنگامی که متن را در یک پنجره ویرایش می کنید و از پنجره دیگر | ||
| 923 | فقط برای مرجع استفاده میکند، بدون ترک پنجره انتخاب شده، بسیار مفید است. | ||
| 924 | می توانید متن را باC-M-v در پنجره دیگر پیمایش کنید. | ||
| 925 | |||
| 926 | مثال C-M-v نمونه ای از یک کاراکتر CONTROL-META است. اگر یک کلید META | ||
| 927 | (Alt یا) دارید با نگه داشتن هر دو کلید CONTRO و META و تایپ v, | ||
| 928 | میتوانید C-M-v را تایپ کنید. مهم نیست که CONTROL اول باشد یا META. | ||
| 929 | زیرا هر دوی این کلیدها با تغییر کاراکترهای شما عمل می کنند. | ||
| 930 | |||
| 931 | |||
| 932 | اگر کلید META ندارید و به جای آن از <ESC> استفاده می کنید، مهم است که | ||
| 933 | ترتیب را انجام دهید: باید <ESC> و سپس CONTROL-v را تایپ کنید، زیرا | ||
| 934 | CONTROL-<ESC> v کار نخواهد کرد. این به این دلیل است که <ESC> در نوع خود | ||
| 935 | یک کاراکتر است، نه یک کلید اصلاح کننده. | ||
| 936 | |||
| 937 | >> با تایپ C-x 1 (در پنجره بالا) از شر پنجره پایین خلاص شوید. | ||
| 938 | |||
| 939 | (اگر C-x 1 را در پنجره پایین تایپ کرده بودید، پنجره بالا خلاص می شد. این | ||
| 940 | فرمان را به صورت «فقط یک پنجره را -- هم آنکه هم اکنون در آن هستم نگه دار» | ||
| 941 | در نظر بگیرید. | ||
| 942 | |||
| 943 | |||
| 944 | شما مجبور نیستید یک بافر را در هر دو پنجره نمایش دهید. اگر شما از C-x C-f | ||
| 945 | برای پیدا کردن فایل در یک پنجره استفاده کنید، در پنجره دیگر تغییر ایجاد | ||
| 946 | نمی شود. شما می توانید یک فایل را در هر پنجره به طور مستقل پیدا کنید. | ||
| 947 | |||
| 948 | در اینجا روش دیگری برای استفاده از دو پنجره برای نمایش دو چیز مختلف وجود دارد: | ||
| 949 | |||
| 950 | >> فرمان C-x 4 C-f و سپس نام یکی از فایل های خود را تایپ کنید. | ||
| 951 | با <Return> خاتمه دهید. ببینید فایل مشخص شده در پایین ظاهر می شود و | ||
| 952 | پنجره مکان نما نیز به آنجا می رود. | ||
| 953 | |||
| 954 | >> برای بازگشت به پنجره بالا C-x o و برای حذف پنجره پایین C-x 1 را تایپ کنید. | ||
| 955 | |||
| 956 | |||
| 957 | *فریم های چندگانه (MULTIPLE FRAMES) | ||
| 958 | ---------------------------------- | ||
| 959 | |||
| 960 | با Emacs همچنین می توانید چندین "فریم" ایجاد کنید. یک فریم، مجموعه ای | ||
| 961 | ازپنجره ها است که فهرست آن: اسکرول بارها، اکو بار، و غیره است. در | ||
| 962 | نمایشگرهای گرافیکی، چیزی که Emacs آن را "فریم" می نامد همان چیزی است که | ||
| 963 | اکثر برنامه های کاربردی دیگر "پنجره" می نامند. فریم های گرافیکی متعدد را | ||
| 964 | می توان همزمان بر روی صفحه نمایش نشان داد. در یک ترمینال متنی فقط یک فریم | ||
| 965 | را می توان در یک زمان نشان داد. | ||
| 966 | |||
| 967 | >> C-x 5 2 را تایپ کنید. | ||
| 968 | مشاهده می کنید که یک فریم جدید روی صفحه نمایش شما ظاهر می شود. | ||
| 969 | |||
| 970 | شما می توانید هر کاری را که در فریم اصلی انجام داده اید در فریم جدید | ||
| 971 | انجام دهید. هیچ چیز خاصی در فریم اول وجود ندارد. | ||
| 972 | |||
| 973 | >> C-x 5 0 را تایپ کنید. | ||
| 974 | این فریم انتخاب شده را حذف می کند. | ||
| 975 | |||
| 976 | شما همچنین می توانید یک فریم را با استفاده از روش معمولی ارائه شده توسط | ||
| 977 | سیستم گرافیکی (اغلب با کلیک روی دکمه ای با نشان "X" در گوشه بالای فریم)بردارید. | ||
| 978 | اگر آخرین فریمِ کار Emacs را به این ترتیب حذف کنید،از Emacs خارج می شود. | ||
| 979 | |||
| 980 | |||
| 981 | * سطوح ویرایش بازگشتی | ||
| 982 | ---------------------- | ||
| 983 | |||
| 984 | گاهی اوقات وارد چیزی می شوید که«سطوح ویرایش بازگشتی» نامیده می شود. | ||
| 985 | این با کروشه های مربع در خط حالت اطراف پرانتزهای نام مد ماژر | ||
| 986 | نشان داده می شود. برای مثال، ممکن است [(اساسی)] را به جای (اساسی) ببینید. | ||
| 987 | |||
| 988 | برای خارج شدن از سطح ویرایش بازگشتی، <ESC> <ESC> <ESC> را تایپ کنید. | ||
| 989 | این یک فرمان همه منظوره "برو بیرون" است. همچنین می توانید از آن برای | ||
| 990 | حذف پنجره های اضافی و خارج شدن از مینی بافر استفاده کنید. | ||
| 991 | |||
| 992 | >> تایپ M-x، تا وارد یک مینی بافر شوید. سپس برای بیرون رفتن | ||
| 993 | <ESC> <ESC> <ESC> را تایپ کنید. | ||
| 994 | |||
| 995 | شما نمی توانید از C-g برای خارج شدن از یک سطح ویرایش بازگشتی استفاده کنید. | ||
| 996 | زیرا C-g برای لغو فرمانها و آرگومان ها در داخل سطح ویرایش بازگشتی | ||
| 997 | استفاده می شود. | ||
| 998 | |||
| 999 | |||
| 1000 | |||
| 1001 | * دریافت کمک بیشتر | ||
| 1002 | ------------------- | ||
| 1003 | |||
| 1004 | در این آموزش سعی شده است اطلاعات کافی برای شروع به استفاده از Emacs در | ||
| 1005 | اختیار شما قرار گیرد. اطلاعات موجود در مورد Emacs آنقدر زیاد است که توضیح | ||
| 1006 | همه چیز در اینجا غیرممکن است. با این حال، ممکن است بخواهید اطلاعات بیشتری | ||
| 1007 | در مورد Emacs کسب کنید زیرا Emacs دارای بسیاری از ویژگی های مفید دیگر است. | ||
| 1008 | Emacs فرمانهایی رابرای خواندن اسناد در مورد Emacs ارائه می دهد. فرمانهای | ||
| 1009 | "help" همه با کاراکتر CONTROL-h که " کارکتر Help" نامیده می شود شروع | ||
| 1010 | می شوند. | ||
| 1011 | |||
| 1012 | |||
| 1013 | برای استفاده از ویژگی های Help، کاراکتر C-h و سپس کارکتری که می گوید شما | ||
| 1014 | چه نوع کمکی می خواهید را تایپ کنید. اگر شما واقعاً گم شده اید، ? C-h را | ||
| 1015 | تایپ کنید و Emacs به شما خواهد گفت که چه نوع کمکی می تواند ارائه دهد. اگر | ||
| 1016 | C-h را تایپ کرده اید و به این نتیجه رسیده اید که هیچ کمکی نمی خواهید، فقط | ||
| 1017 | برای لغو آن، C-g را تایپ کنید. | ||
| 1018 | |||
| 1019 | (اگر C-h پیامی در مورد راهنما در پایین صفحه نمایش نمی دهد، | ||
| 1020 | روی صفحه به جای آن کلید F1 یا< M-x help <Return را تایپ کنید.) | ||
| 1021 | |||
| 1022 | اساسی ترین ویژگی HELP یا کمک، C-h c است. تایپ کنید C-h، کاراکتر c و یک | ||
| 1023 | کاراکتر یا دنباله فرمان؛ سپس Emacs یک خلاصه بسیار کوتاه از شرح فرمان نمایش | ||
| 1024 | می دهد. | ||
| 1025 | |||
| 1026 | >> C-h c C-p را تایپ کنید. | ||
| 1027 | |||
| 1028 | پیام باید چیزی شبیه این باشد: | ||
| 1029 | |||
| 1030 | C-p runs the command previous-line | ||
| 1031 | |||
| 1032 | این "نام فرمان -- function" را به شما می گوید. نام فرمان از بابت کاری که | ||
| 1033 | فرمان انجام می دهد انتخاب می شود. نام فرمان می تواند به عنوان اطلاعات | ||
| 1034 | امدادی بسیار مختصر باشد - برای یادآوری فرمانهایی که شما قبلا یاد گرفته اید. | ||
| 1035 | |||
| 1036 | |||
| 1037 | فرمانهایی چند کاراکتری مانند C-x C-s و ESC>v> (به جای M-v،اگر کلید META یا | ||
| 1038 | ALT ندارید) همچنین پس از C-h c نیز مجاز هستند. | ||
| 1039 | |||
| 1040 | |||
| 1041 | برای دریافت اطلاعات بیشتر در مورد یک فرمان، به جای C-h c از C-h k استفاده | ||
| 1042 | کنید. | ||
| 1043 | |||
| 1044 | |||
| 1045 | >> C-h k C-p را تایپ کنید. | ||
| 1046 | |||
| 1047 | این مستندات تابع و همچنین نام آن را در یک پنجره ایمکس نمایش می دهد. | ||
| 1048 | وقتی خواندن خروجی تمام شد، برای خلاص شدن از شر آن پنجره C-x 1 را تایپ کنید. | ||
| 1049 | شما مجبور نیستید این کار را به سرعت انجام دهید. | ||
| 1050 | می توانید در حین مراجعه به متن راهنما مقداری ویرایش انجام دهید | ||
| 1051 | و سپس C-x 1 را تایپ کنید. | ||
| 1052 | |||
| 1053 | در اینجا چند گزینه مفید دیگر C-h وجود دارد: | ||
| 1054 | |||
| 1055 | C-h x یک فرمان را توصیف کنید. شما نام آن فرمان را تایپ می کنید. | ||
| 1056 | |||
| 1057 | |||
| 1058 | >> فرمانِ <C-h x previous-line <Return را تایپ کنید. | ||
| 1059 | این تمام اطلاعات ایمکس را در مورد آن نمایش می دهد. | ||
| 1060 | تابعی که فرمان C-p را پیاده سازی می کند. | ||
| 1061 | |||
| 1062 | یک فرمان مشابه C-h v اطلاعات امدادیِ متغیرها "variables" را نمایش می دهد, و | ||
| 1063 | گاهی اجازه میدهد تا بتوانید مقادیر متغیرها را برای خاص کردن رفتار ایمکس | ||
| 1064 | تنظیم کنید. زمانی که ایمکس از آن درخواست کرد، باید نام متغیر را تایپ کنید. | ||
| 1065 | |||
| 1066 | C-h a فرمان Apropos. | ||
| 1067 | یک کلمه کلیدی را تایپ کنید و ایمکس تمام فرمانهایی که نام | ||
| 1068 | آنها حاوی آن کلمه کلیدی است لیست میکند. همه این فرمانها | ||
| 1069 | را می توان با META-x احضار کرد. برای برخی از فرمانها، | ||
| 1070 | Command Apropos نیز یک فهرست دنباله ای است از یک یا چند | ||
| 1071 | کاراکتر که بافرمان یکسان اجرا می شود. | ||
| 1072 | |||
| 1073 | |||
| 1074 | >> فرمان <c-h a file <Return راتایپ کنید. | ||
| 1075 | |||
| 1076 | در پنجره ای دیگر لیستی از تمام فرمانهایی M-x با "file" به نام آنها نمایش | ||
| 1077 | داده می شود. شما فرمانهای کاراکتر را در کنار آن نام فرمانهای مربوطه (مانند | ||
| 1078 | C-x C-f در کنار find-file) خواهید دید. | ||
| 1079 | |||
| 1080 | |||
| 1081 | >> برای پیمایش پنجره راهنما، C-M-v را تایپ کنید. این را چند بار انجام دهید. | ||
| 1082 | |||
| 1083 | >> C-x 1 را تایپ کنید تا پنجره راهنما را حذف کنید. | ||
| 1084 | |||
| 1085 | C-h i خواندن کتابچه راهنمای همراه (با نام مستعار اطلاعات Info). | ||
| 1086 | این فرمان شما را به یک بافر ویژه به نام "*info*" یا | ||
| 1087 | اطلاعات قرار می دهد که در آن شما می توانید کتابچه | ||
| 1088 | راهنمای بسته های نصب شده روی سیستم خود را بخوانید. برای | ||
| 1089 | خواندن کتابچه راهنما < m emacs<Return را تایپ کنید. اگر | ||
| 1090 | قبلاً از Info استفاده نکردهاید، Emacs و h را تایپ کنید, | ||
| 1091 | آن شما را به یک راهنمای تور از امکانات حالت info می برد. | ||
| 1092 | پس از اتمام این آموزش، باید به کتابچه راهنمای | ||
| 1093 | Emacs Info به عنوان مستندات اصلی خود مراجعه کنید. | ||
| 1094 | |||
| 1095 | |||
| 1096 | * ویژگی های بیشتر | ||
| 1097 | ------------------ | ||
| 1098 | |||
| 1099 | شما میتوانید با مطالعه کتابچه راهنمای ایمکس اطلاعات بیشتری کسب کنید. مانند | ||
| 1100 | یک کتاب چاپ شده، یا داخل Emacs (از منوی Help یا C-h r استفاده کنید). دو | ||
| 1101 | ویژگی که ممکن است به خصوص دوست داشته باشید، توانایی تکمیل "Completion" که | ||
| 1102 | باعث کمتر تایپ کردن میشود و dired، که مدیریت رسیدگی به فایل را ساده می کند. | ||
| 1103 | |||
| 1104 | تکمیل راهی برای جلوگیری از تایپ غیر ضروری است. به عنوان مثال، اگر شما | ||
| 1105 | میخواهید به بافر *Messages* بیاید، میتوانید< C-x b *M<Tab را تایپ کنید، و | ||
| 1106 | Emacs بقیه نام بافر را تا جایی که می تواند از آنچه قبلاً تایپ کرده اید پر | ||
| 1107 | می کند. تکمیل کردن هم چنین برای نام فرمانها ونام فایل ها به کار می آید. در | ||
| 1108 | کتابچه راهنمای ایمکس، در بخشی به نام "تکمیل Completion " توضیح داده شده | ||
| 1109 | است. | ||
| 1110 | |||
| 1111 | |||
| 1112 | با Dired شما قادر هستید تا فایل ها (و به صورت اختیاری زیر شاخه های آن) را | ||
| 1113 | در یک فهرست کنید. در اطراف آن لیست حرکت کنید، بازدید کنید، نام خود را | ||
| 1114 | تغییر دهید، حذف کنید و به صورت دیگر روی فایل ها کار کنید. در کتابچه | ||
| 1115 | راهنمای ایمکس در بخشی به نام "Dired" توضیح داده شده است. | ||
| 1116 | |||
| 1117 | |||
| 1118 | این کتابچه راهنمای بسیاری از ویژگی های دیگر ایمکس را نیز توضیح می دهد. | ||
| 1119 | |||
| 1120 | |||
| 1121 | * جمع بندی | ||
| 1122 | ------------ | ||
| 1123 | |||
| 1124 | برای خروج از Emacs از C-x C-c استفاده کنید. | ||
| 1125 | |||
| 1126 | این آموزش برای همه کاربران جدید باید قابل درک باشد، بنابراین اگر | ||
| 1127 | چیز مبهمی پیدا کردید، ننشینید و تو سر خودتان نزنید - شکایت کنید! | ||
| 1128 | |||
| 1129 | |||
| 1130 | * کپی برداری | ||
| 1131 | -------------- | ||
| 1132 | |||
| 1133 | این آموزش حاصل زنجیره ای طولانی از آموزش های Emacs است که با کتابی به نوشته | ||
| 1134 | Stuart Cracraft سر چشمه گرفت. | ||
| 1135 | |||
| 1136 | این نسخه از آموزش بخشی از GNU Emacs است. دارای حق چاپ است | ||
| 1137 | و با مجوز برای توزیع کپی در شرایط خاص همراه است: | ||
| 1138 | |||
| 1139 | Copyright (C) 1985, 1996, 1998, 2001-2022 Free Software Foundation, Inc. | ||
| 1140 | |||
| 1141 | This file is part of GNU Emacs. | ||
| 1142 | |||
| 1143 | GNU Emacs is free software: you can redistribute it and/or modify | ||
| 1144 | it under the terms of the GNU General Public License as published by | ||
| 1145 | the Free Software Foundation, either version 3 of the License, or | ||
| 1146 | (at your option) any later version. | ||
| 1147 | |||
| 1148 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 1149 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 1150 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 1151 | GNU General Public License for more details. | ||
| 1152 | |||
| 1153 | You should have received a copy of the GNU General Public License | ||
| 1154 | along with GNU Emacs. If not, see <https://www.gnu.org/licenses/>. | ||
| 1155 | |||
| 1156 | لطفاً فایل COPYING را بخوانید و سپس کپی هایی از GNU Emacs را به دوستانتان بدهید. | ||
| 1157 | کمک کنید تا از شر قاعدیِ اشتباهِ کپی رایت غربی راحت شویم. | ||
| 1158 | |||
| 1159 | |||
| 1160 | |||
| 1161 | --- end of TUTORIAL.fa --- | ||
| 1162 | |||
| 1163 | ;;; Local Variables: | ||
| 1164 | ;;; coding: utf-8 | ||
| 1165 | ;;; bidi-display-reordering: t | ||
| 1166 | ;;; sentence-end-double-space: nil | ||
| 1167 | ;;; bidi-paragraph-direction: nil | ||
| 1168 | ;;; fill-column: 74 | ||
| 1169 | ;;; End: | ||