Mercurial > emacs
annotate etc/TUTORIAL.ru @ 61154:81b738b4c729
shell-quote-argument, not comint-quote-filename
author | Karl Berry <karl@gnu.org> |
---|---|
date | Thu, 31 Mar 2005 00:24:57 +0000 |
parents | fe937402466e |
children | ee24a0da4818 4da4a09e8b1b |
rev | line source |
---|---|
61143 | 1 учебник Emacs |
54958
5a38f694f332
Add "2004" to the list of copyright years.
Juri Linkov <juri@jurta.org>
parents:
54957
diff
changeset
|
2 Вы читаете учебник Emacs. Условия копирования в конце файла. |
5a38f694f332
Add "2004" to the list of copyright years.
Juri Linkov <juri@jurta.org>
parents:
54957
diff
changeset
|
3 Copyright (c) 1985, 1996, 2004 Free Software Foundation, Inc. |
48983 | 4 |
5 Для управления Emacs обычно используется ключ (сочетание клавиш клавиатуры | |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
6 и/или кнопок мыши), включающий в себя клавишу CONTROL (иногда отмечаемая |
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
7 как CTRL или CTL) или клавишу META (иногда помеченную как ALT или EDIT). В |
54957 | 8 дальнейшем вместо того, чтобы каждый раз писать META или CONTROL, мы будем |
48983 | 9 использовать следующее сокращение: |
10 | |
54957 | 11 C-<chr> следует удерживать клавишу CONTROL, пока набирается символ <chr>. |
48983 | 12 Так, C-f должно означать: нажать клавишу CONTROL и f. |
54957 | 13 M-<chr> следует удерживать клавишу META, пока набирается символ <chr>. Если |
48983 | 14 нет клавиши META, ALT или EDIT, то нажмите <ESC>, отпустите ее, |
15 а потом наберите символ <chr>. | |
16 | |
54957 | 17 Важное замечание: для завершения сеанса Emacs, наберите C-x C-c. (Два |
48983 | 18 символа). Символы ">>" с левой стороны указывают, что вам нужно делать, |
54957 | 19 чтобы применить команду. Например: |
20 <<Середина страницы оставлена пустой для учебных целей. Текст продолжается ниже>> | |
48983 | 21 >> Теперь нажмите C-v (Просмотр следующего экрана) для перемещения на |
22 следующий экран. (Выполните это, удерживая клавишу CONTROL нажимая v). | |
23 Теперь вы должны это сделать еще раз, когда закончите читать экран. | |
24 | |
25 Обратите внимание на то, что, пока вы движетесь с экрана на экран, | |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
26 перекрываются две строчки; это обеспечивает некоторую непрерывность, так |
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
27 что вы можете продолжить читать текст. |
48983 | 28 |
54957 | 29 Первое, что вам необходимо знать -- как передвигаться по тексту из одного |
48983 | 30 места в другое. Вы уже знаете, как переместиться вперед один экран, |
54957 | 31 используя ключ C-v. Для перемещения назад на один экран, нажмите M-v |
32 (удерживайте клавишу META и наберите v, или нажмите <ESC>v, если у вас нет | |
33 клавишы META, EDIT, или ALT). | |
48983 | 34 |
35 >> попробуйте набрать M-v и потом C-v, несколько раз. | |
36 | |
37 | |
38 * КРАТКАЯ СВОДКА | |
54957 | 39 ---------------- |
48983 | 40 |
41 Для просмотра используются следующие команды: | |
42 | |
43 C-v Перейти на один экран вперед | |
44 M-v Перейти на один экран назад | |
45 C-l Очистить экран и отобразить все заново, разместив | |
46 текст, находящийся возле курсора, в центре экрана. | |
47 (Это CONTROL-L, а не CONTROL-1.) | |
48 | |
54957 | 49 >> Найдите курсор, и запомните текст возле него. Потом нажмите C-l. |
48983 | 50 Найдите курсор снова и убедитесь, что возле него все тот же текст. |
51 | |
52 | |
53 * БАЗОВЫЕ КОМАНДЫ УПРАВЛЕНИЯ КУРСОРОМ | |
54957 | 54 ------------------------------------- |
48983 | 55 |
56 Движение от экрана к экрану удобно, но как переместиться в определенное | |
57 место текста на экране? | |
58 | |
54957 | 59 Есть несколько способов сделать это. Основной способ -- использовать команды |
60 C-p, C-b, C-f и C-n. Каждая из этих команд передвигает курсор на одну | |
48983 | 61 строку или колонку на экране в определенном направлении. Эта таблица |
62 показывает четыре команды и четыре направления их движения: | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
63 |
48983 | 64 Предыдущая строка, C-p |
65 : | |
66 : | |
67 Назад, C-b .... Текущая позиция курсора .... Вперед, C-f | |
68 : | |
69 : | |
70 Следующая строка, C-n | |
71 | |
72 >> Переместите курсор на строку рядом с диаграммой, используя C-n или C-p. | |
73 Потом, нажмите C-l и посмотрите как диаграмма разместится в центре | |
74 экрана. | |
75 | |
76 Вам будет несложно запомнить эти команды по буквам -- B-назад (backward) и | |
77 F-вперед (forward). Это основные команды позиционирования курсора, которыми | |
78 Вы будете пользоваться ВСЕГДА, так что будет неплохо их выучить. | |
79 | |
54957 | 80 >> Нажмите несколько раз C-n, чтобы опустить курсор вниз на эту строку. |
48983 | 81 |
82 >> Переместитесь по строке, используя C-f и потом поднимитесь вверх с | |
83 помощью C-p. Посмотрите, как изменилось положение курсора при нажатии | |
84 С-р, если он находился в середине строки. | |
85 | |
86 Каждая строка текста завершается символом перевода строки (Newline | |
87 character), который отделяет ее от следующей строки. Последняя строка в | |
88 вашем файле должна бы тоже завершаться символом перевода строки (но Emacs не | |
89 требует этого). | |
90 | |
91 >> Попробуйте использовать C-b в начале строки. Курсор должен переместиться | |
92 на конец предыдущей строки. Это происходит потому, что он движется назад | |
93 через символ перевода строки. | |
94 | |
95 C-f может перемещать курсор через символ перевода строки так же, как и C-b. | |
96 | |
54957 | 97 >> Попробуйте несколько раз применить C-b так, чтобы Вы увидели, как |
48983 | 98 движется курсор. Далее используйте C-f чтобы вернуться на конец |
99 строки. Нажмите C-f еще раз, чтобы перейти к началу следующей строки. | |
100 | |
101 Когда вы перемещаетесь за верхний или нижний край экрана, текст, находящийся | |
102 за экраном, сдвигается внутрь экрана. Это называется "прокрутка | |
103 (scrolling)". Прокрутка позволяет Emacs'у перемещать курсор в нужное место | |
104 текста без перемещения его за пределы экрана. | |
105 | |
106 >> Попробуйте переместить курсор за нижнюю границу экрана, используя C-n, и | |
107 посмотрите, что изменится. | |
108 | |
109 Если посимвольное перемещение слишком медленно, Вы можете двигаться по | |
110 словам. M-f (META-f) перемещает вперед на слово, а M-b назад на слово. | |
111 | |
112 >> Нажмите несколько раз M-f и M-b. | |
113 | |
114 Если курсор находится в середине слова, M-f переместит его в конец слова. | |
115 Если курсор находится между словами, M-f переместит его в конец следующего | |
116 слова. M-b работает точно так же, но в противоположном направлении. | |
117 | |
118 >> Нажмите M-f и M-b несколько раз, перемежая их с C-f и C-b -- так вы | |
119 сможете заметить действия M-f и M-b из разных позиций в словах и между | |
120 ними. | |
121 | |
122 Отметьте параллель между C-f и C-b с одной стороны, и M-f и M-b с | |
123 другой. Очень часто Meta-символы используются для соответствующих операций | |
124 над единицами, определенными в языке (слова, предложения, абзацы), тогда как | |
125 Control-символы работают с основными единицами, независимо от того, что Вы | |
126 редактируете (символы, строки, и т.д.). | |
127 | |
128 Эта параллель существует между строками и предложениями: C-a и C-e | |
129 перемещает курсор в начало и конец строки, а M-a и M-e перемещает курсор в | |
130 начало и конец предложения. | |
131 | |
54957 | 132 >> Попробуйте нажать пару раз C-a, и потом пару раз C-e. Попробуйте пару |
48983 | 133 раз нажать M-a, после этого пару раз нажать M-e. |
134 | |
135 Посмотрите, что повтор C-a ничего не изменяет, а повтор M-a продолжает | |
136 движение курсора к следующему предложению. Это не сохраняет аналогию, но | |
137 выглядит естественно. | |
138 | |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
139 Положение курсора в тексте также называют "точкой вставки". Скажем иначе: |
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
140 курсор показывает место на экране в какой точке будет расположен вводимый |
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
141 текст. |
48983 | 142 |
143 Здесь собраны простые команды перемещения курсора, включая движение по | |
144 словам и предложениям: | |
145 | |
146 C-f На символ вперед | |
147 C-b На символ назад | |
148 | |
149 M-f На слово вперед | |
150 M-b На слово назад | |
151 | |
152 C-n На следующую строку | |
153 C-p На предыдущую строку | |
154 | |
155 C-a В начало строки | |
156 C-e В конец строки | |
157 | |
158 M-a Назад, в начало предложения | |
159 M-e Вперед, в конец предложения | |
160 | |
161 >> Попробуйте сейчас на практике применить несколько раз все эти команды. | |
162 Это наиболее используемые команды. | |
163 | |
164 Две другие важные команды движения курсора M-< (META Less-then | |
165 {Меньше-Чем}), которая перемещает курсор в начало текста, и M-> (META | |
166 Greater-than {Больше-Чем}), которая перемещает курсор в конец текста. | |
167 | |
168 На большинстве терминалов знак "<" находится над знаком точки, и чтобы | |
54957 | 169 набрать его, вы должны использовать клавишу Shift. На этих терминалах вы так |
170 же должны использовать Shift, чтобы набрать M-< (без удержания клавиши Shift | |
171 вы наберете M-точка). | |
48983 | 172 |
54957 | 173 >> Сейчас попробуйте M-<, чтобы переместиться в начало учебника. Потом |
174 используйте C-v, чтобы вернуться назад. | |
48983 | 175 |
54957 | 176 >> Сейчас попробуйте M->, чтобы переместиться к концу учебника. Используйте |
177 M-v, чтобы вернуться снова. | |
48983 | 178 |
179 Курсор можно перемещать клавишами управления курсора (стрелками), если ваш | |
180 терминал оборудован ими. Мы рекомендуем выучить C-b, C-f, C-n и C-p по трем | |
54957 | 181 причинам. Во-первых, они работают на любых терминалах. Во-вторых, однажды |
48983 | 182 получив практику использования Emacs, вы поймете, что использовать |
183 CTRL-символы удобнее и быстрее, чем кнопки со стрелочками (потому что вы не | |
54957 | 184 убираете руки с обычного их положения при печати). В-третьих, как только вы |
48983 | 185 привыкните использовать CTRL-символы, вы сможете так же легко выучить и |
186 использовать другие, расширенные команды перемещения курсора. | |
187 | |
188 Большинство команд Emacs допускают задание цифрового аргумента; для | |
189 большинства команд, это служит счетчиком повторений. Чтобы задать счетчик | |
190 повторений для команды, нажмите C-u, потом число повторений, и укажите | |
191 команду. Если у вас есть клавиша META (или EDIT или ALT), то цифровой | |
192 аргумент можно задать другим способом: наберите цифры, удерживая клавишу | |
193 META. Мы рекомендуем освоить использование C-u, поскольку эта | |
194 последовательность клавиш работает на любом терминале. Числовой аргумент | |
54957 | 195 также называется "префиксным аргументом", поскольку вы набираете аргумент до |
48983 | 196 выполнения команды. |
197 | |
198 Например, C-u 8 C-f переместит курсор на восемь символов вперед. | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
199 |
48983 | 200 >> Попробуйте использовать C-n или C-p с цифровым аргументом, чтобы |
201 переместить курсор на строку рядом с этой командой. | |
202 | |
203 Многие команды используют числовой аргумент как счетчик повторений, но | |
204 некоторые команды используют его другим способом. Некоторые команды (но ни | |
205 одна из них не была еще изучена здесь) используют его как флаг -- наличие | |
206 префиксного аргумента вне зависимости от его значения, изменяет поведение | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
207 команды. |
48983 | 208 |
209 Другим видом исключений являются ключи C-v и M-v. При получении числового | |
210 аргумента, они прокручивают экран вверх или вниз на указанное число строк, | |
211 вместо такого же числа экранов. Например, C-u 8 C-v прокрутит экран на 8 | |
212 строк. | |
213 | |
214 >> Сейчас попробуйте комбинацию C-u 8 C-v. | |
215 | |
216 Эта команда должна прокрутить экран на 8 строк вверх. Если вы хотите | |
217 прокрутить его вниз, можете задать аргумент для M-v. | |
218 | |
219 Если вы используете оконную систему, такую как X11 или MS-Windows, должна | |
54957 | 220 быть прямоугольная область, именуемая полосой прокрутки с левой стороны окна |
48983 | 221 Emacs. Вы можете прокручивать текст, используя манипулятор мышь. |
222 | |
223 >> Попробуйте перемещать мышь при нажатой средней кнопке мыши. Вы увидите | |
224 как текст прокручивается вверх и вниз. | |
225 | |
226 | |
227 * УПРАВЛЕНИЕ КУРСОРОМ НА X-ТЕРМИНАЛЕ | |
228 ------------------------------------ | |
229 | |
230 Если у вас X-терминал, то вам, вероятно, для управления курсором покажется | |
231 более легким использовать клавиши на цифровой клавиатуре (справа). Стрелки | |
232 влево, вправо, вверх и вниз передвигают курсор в ожидаемом направлении; они | |
233 работают точно также как C-b, C-f, C-p и C-n, но легче в наборе и | |
234 запоминании. Вы так же можете использовать сочетания C-left и C-right для | |
54957 | 235 передвижения по словам, и C-up и C-down для передвижения по блокам (т.е. |
48983 | 236 параграфам, если вы редактируете текст). Если у вас есть кнопки помеченные |
237 HOME (или BEGIN) или END, то они будут перемещать курсор в начало и конец | |
238 строки, соответственно, и C-home и C-end будут перемещать в начало и конец | |
239 файла. Если на вашей клавиатуре есть кнопки PgUp и PgDn, то вы можете их | |
240 использовать для перемещения вверх и вниз поэкранно, также как и M-v и C-v. | |
241 | |
242 Все эти команды могут получать цифровой аргумент, как рассказано выше. Вы | |
243 можете использовать ускоренный способ ввода этого аргумента: просто нажмите | |
244 CONTROL или META и наберите число. Например, для перемещения на 12 слов | |
245 вправо, наберите C-1 C-2 C-right. Запомните что так очень легко набирать, | |
246 потому что вы не отпускаете кнопку CONTROL между нажатиями. | |
247 | |
248 | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
249 * ЕСЛИ EMACS ЗАВИС |
48983 | 250 ------------------ |
251 | |
54957 | 252 Если Emacs перестал реагировать на ваши команды, вы можете остановить это, |
253 просто нажав C-g. Вы можете использовать C-g, чтобы остановить выполнение | |
254 команды, которая слишком долго выполняется. | |
48983 | 255 |
54957 | 256 Вы также можете использовать C-g для отмены цифрового аргумента или начатой |
48983 | 257 команды, которую вы не хотите завершать. |
258 | |
54957 | 259 >> Наберите C-u 100 для задания аргумента 100, потом нажмите C-g. Теперь |
48983 | 260 нажмите C-f. Курсор должен переместиться всего на один символ, потому что |
261 вы отменили аргумент нажатием C-g. | |
262 | |
263 Если вы нажали <ESC> по ошибке, вы так же можете избавиться от этого | |
264 нажатием C-g. | |
265 | |
266 | |
54957 | 267 * ЗАПРЕЩЕННЫЕ КОМАНДЫ (DISABLED COMMANDS) |
48983 | 268 ----------------------------------------- |
269 | |
270 Некоторые команды Emacs "запрещены", поскольку начинающие пользователи могут | |
271 их случайно использовать. | |
272 | |
273 Если вы набрали одну из запрещенных команд, то Emacs покажет сообщение | |
274 говорящее о том, какая команда вызывается, и спросит, хотите ли вы | |
275 продолжить и выполнить эту команду. | |
276 | |
277 Если вы действительно хотите попробовать выполнить команду, то нажмите | |
278 клавишу Пробел (Space) в ответ на этот вопрос. Обычно, если вы не хотите | |
279 выполнять запрещенную команду, то отвечайте на вопрос нажатием клавиши "n". | |
280 | |
281 >> Нажмите `C-x C-l' (выключенная команда), потом ответьте "n" на вопрос. | |
282 | |
283 | |
284 * ОКНА | |
285 ------ | |
286 | |
287 Emacs может иметь несколько окон, каждое из которых отображает свой текст. | |
288 Мы объясним позже как использовать множество окон. Прямо сейчас мы хотим | |
289 объяснить как избавляться от лишних окон и вернуться к редактированию в | |
290 одном окне. Выполнить это очень просто: | |
291 | |
292 C-x 1 Одно окно. (закрыть все другие окна). | |
293 | |
54957 | 294 Это CONTROL-x со следующей цифрой 1. C-x 1 развернет окно, которое содержит |
48983 | 295 курсор, так, чтобы оно заняло весь экран. При этом будут удалены все |
296 остальные окна. | |
297 | |
298 >> Переместите курсор на эту строку и нажмите C-u 0 C-l. | |
299 | |
300 >> Наберите CONTROL-h k CONTROL-f. | |
301 Посмотрите, как текущее окно сожмется, когда новое | |
302 появится и отобразит документацию на команду CONTROL-f. | |
303 | |
54957 | 304 >> Наберите C-x 1 и посмотрите, как окно с документацией исчезнет. |
48983 | 305 |
306 Эта команда отличается от других команд, которые вы изучили, тем, что она | |
307 состоит из двух символов. Она начинается со знака CONTROL-x. Есть целый | |
308 набор команд, которые начинаются с CONTROL-x; многие из них работают с | |
309 окнами, буферами, файлами и аналогичными вещами. Эти команды имеют длину 2, | |
310 3 или 4 знака. | |
311 | |
312 | |
313 * ВСТАВКА И УДАЛЕНИЕ | |
314 -------------------- | |
315 | |
316 Если вы хотите вставить текст, просто наберите текст. Символы, которые вы | |
317 можете видеть, такие как A, 7, *, и пр. понимаются Emacs'ом как текст и | |
318 вставляются немедленно. Нажмите <Return> (кнопка перевода каретки) для | |
319 вставки символа новой строки. | |
320 | |
321 Вы можете удалить последний набранный символ нажимая клавишу | |
322 <Delete>. Клавиша <Delete> на клавиатуре может быть обозначена как "Del". В | |
323 некоторых случаях, клавиша "Backspace" работает как <Delete>, но не всегда! | |
324 | |
325 В основном, <Delete> удаляет символ непосредственно перед текущей позицией | |
326 курсора. | |
327 | |
328 >> Попробуйте выполнить это сейчас -- наберите несколько символов, потом | |
54957 | 329 удалите их нажимая <Delete> несколько раз. Не волнуйтесь об изменениях |
48983 | 330 этого файла; вы не изменяете главный учебник. Это ваша личная копия |
331 учебника. | |
332 | |
333 Когда строка текста становится слишком большой для строки экрана, строка | |
334 текста "продолжается" на следующей строке экрана. Символ "обратное деление" | |
335 ("\") (или если вы используете оконную систему, то маленькая изогнутая | |
336 стрелка) с правой границы показывает, что строка будет продолжена. | |
337 | |
338 >> Вводите текст, пока не достигните правой границы, и продолжайте | |
54957 | 339 вставку. Вы увидите, как появится символ продолжения строки. |
48983 | 340 |
341 >> Используйте <Delete> для удаления текста, пока строка не поместится в | |
342 экран снова. Символ продолжения строки исчезнет. | |
343 | |
344 Можно удалять символ новой строки точно так же, как и любой другой. Удаление | |
345 символа новой строки между двумя строками приведет к склейке их в одну. Если | |
346 полученная строка слишком длинная, чтобы вместиться в экран, она будет | |
347 отображена как продолженная строка. | |
348 | |
349 >> Переместите курсор в начало строки и нажмите <Delete>. Это соединит | |
350 текущую строку с предыдущей. | |
351 | |
352 >> Нажмите <Return> для вставки символа новой строки снова, вместо | |
353 удаленного вами. | |
354 | |
355 Помните, что многие команды Emacs могут получать счетчик повторения; простые | |
54957 | 356 символы не являются исключением. Набирайте простые символы, вставляя их по |
48983 | 357 несколько за один раз. |
358 | |
359 >> Попробуйте выполнить это -- наберите C-u 8 * для вставки ********. | |
360 | |
361 Теперь вы научились основному способу набрать что-нибудь в Emacs и | |
54957 | 362 исправлять ошибки. Также вы можете удалять слова и строки. Здесь собраны |
48983 | 363 операции удаления: |
364 | |
365 <Delete> удалить символ перед курсором | |
366 C-d удалить символ следующий за (над) курсором | |
367 | |
368 M-<Delete> Убить строку непосредственно перед курсором | |
369 M-d Убить слово следующее за курсором | |
370 | |
371 C-k Убить все от курсора до конца строки | |
372 M-k Убить все до конца предложения | |
373 | |
54957 | 374 Заметьте, что <Delete> и C-d против M-<Delete> и M-d расширяют параллель, |
375 начатую C-f и M-f (да, <Delete> это не реальный управляющий символ, но не | |
48983 | 376 нужно волноваться об этом). C-k и M-k, как и C-e и M-e, проводят параллель |
377 между строками и предложениями. | |
378 | |
379 Вы можете удалить любую часть буфера одним единообразным | |
380 методом. Переместитесь на один из концов региона и наберите type C-@ или | |
381 C-SPC (одну из них). (SPC обозначает клавишу пробела). Переместитесь на | |
382 другой конец региона и наберите C-w. Эта операция удалит весь текст между | |
383 двумя указанными позициями. | |
384 | |
385 >> Переместите курсор к букве В в начало предыдущего параграфа. | |
386 >> Наберите C-SPC. Emacs должен отобразить в нижней части экрана сообщение | |
387 "Mark set". | |
388 >> Переместите курсор к букве о в слове "концов", на второй строке | |
389 параграфа. | |
390 >> Наберите C-w. Это удалит текст начиная с буквы В, и оканчивающуюся перед | |
391 буквой о. | |
392 | |
393 Отличие между "убить (killing)" и "удалить (deleting)" заключается в том, | |
394 что "убитый" текст может быть заново вставлен, в то время как "удаленные" | |
395 части не могут быть вставлены. Вставка "убитого" текста называется | |
54957 | 396 "восстановление (yanking)". В общем, команды, которые могут убирать большие |
397 части текста, убивают этот текст (они так настраиваются так, что вы можете | |
398 восстановить текст), в то время как команды, которые убирают только один | |
48983 | 399 символ, или только пустые строки и пробельные символы, выполняют удаление |
400 (так что вы не можете восстановить текст). | |
401 | |
54957 | 402 >> Переместите курсор на начало непустой строки. Теперь нажмите C-k, чтобы |
48983 | 403 убить текст в этой строке. |
404 | |
405 >> Нажмите C-k еще раз. Вы видите, что это убьет символ новой строки | |
406 следующий за этой строкой. | |
407 | |
408 Заметьте, что первое C-k убивает содержимое строки, а второе C-k убивает | |
409 саму строку и поднимает другие строки вверх. C-k обрабатывает числовой | |
54957 | 410 аргумент специальным образом: убивает столько строк _И_ их содержимое. Это не |
48983 | 411 просто повторение. C-u 2 C-k удалит две строи и завершающие их символы новой |
412 строки; ввод C-k два раза не сделает этого. | |
413 | |
414 Возврат назад убитого текста называется "восстановление (yanking)". (Думайте | |
415 об этом, как о восстановлении или помещении назад, некоторого взятого | |
416 текста). Вы можете восстановить удаленный текст в том же месте, или в любой | |
417 другой точке буфера, или даже в другом файле. Вы можете восстановить текст | |
418 несколько раз и получить много копий. | |
419 | |
420 Командой для восстановления текста является C-y. Она восстанавливает | |
421 последний убитый текст в место расположение курсора. | |
422 | |
54957 | 423 >> Попробуйте выполнить это; наберите C-y, чтобы вернуть текст назад. |
48983 | 424 |
425 Помните, если вы использовали несколько команд C-k в строке, все убитые | |
54957 | 426 строки будут сохранены вместе так, что C-y восстановит их вместе. |
48983 | 427 |
428 >> Попробуйте выполнить это сейчас, нажмите C-k несколько раз. | |
429 | |
430 Теперь вернем этот убитый текст: | |
431 | |
432 >> Нажмите C-y. Теперь переместите курсор на несколько строк вниз, и снова | |
433 нажмите C-y. Сейчас вы видите как можно скопировать некоторый текст. | |
434 | |
435 Что делать, если есть некоторый текст, который вы хотите вернуть назад и | |
436 потом убить что-то еще? C-y вернет не более чем последний удаленный текст. | |
54957 | 437 Но предыдущий текст не будет потерян. Вы сможете его вернуть назад, используя |
438 команду M-y. После того, как вы вернули последний удаленный текст, нажмите | |
48983 | 439 M-y, и замените этот восстановленный текст тем, который был убит ранее. |
440 Нажатие M-y снова и снова будет возвращать ранее убитый текст. Когда вы | |
441 достигните искомого текста, вам не нужно делать ничего более чтобы сохранить | |
442 его. Просто продолжайте редактирование, оставив восстановленный текст там, | |
443 где он есть. | |
444 | |
445 Нажимая M-y достаточное число раз, вы можете вернуться в начальную точку | |
446 (наиболее раннее удаление). | |
447 | |
448 >> Убейте строку, переместите курсор вокруг этой точки, потом удалите еще | |
449 одну строку. Затем используйте C-y для восстановления второй убитой | |
54957 | 450 строки. Затем используйте M-y, и она будет заменена первой убитой |
48983 | 451 строкой. Нажмите M-y еще несколько раз, чтобы увидеть полученный |
452 результат. Продолжайте делать это, пока вторая убитая строка не вернется, | |
453 и еще чуть-чуть. Если вам хочется, то вы можете задавать для M-y | |
454 положительные и отрицательные аргументы. | |
455 | |
456 | |
457 * ОТМЕНА (UNDO) | |
458 --------------- | |
459 | |
460 Если вы сделали изменения в тексте, и решили, что ошиблись, можете | |
461 отменить изменения командой "отмена", C-x u. | |
462 | |
463 Обычно, C-x u отменяет изменения, сделанные одной командой; если повторить | |
464 C-x u несколько раз подряд, каждый раз будет отменяться еще одна команда. | |
465 | |
54957 | 466 Но есть два исключения: команды, которые не изменяют текст, не учитываются |
48983 | 467 (это включает команды перемещения курсора и прокрутки), и самовставляющиеся |
468 (self-inserting) символы обрабатываются группами до 20. (Это уменьшает | |
469 число C-x u которые вы можете набрать для отмены ввода текста). | |
470 | |
471 >> Убейте эту строку используя C-k, затем наберите C-x u и она должна | |
472 вернуться назад. | |
473 | |
474 C-_ альтернативная команда отмены; она работает также как и C-x u, но легче | |
54957 | 475 в использовании несколько раз подряд. Неудобное положение C-_ на некоторых |
48983 | 476 клавиатурах делает неочевидным способ ее набора. Поэтому мы предлагаем |
54957 | 477 использовать C-x u. На некоторых терминалах, вы можете набирать C-_, нажимая |
48983 | 478 / и удерживая клавишу CONTROL. |
479 | |
480 Числовой аргумент для C-_ или C-x u работает как счетчик повторения. | |
481 | |
54957 | 482 Вы можете отменить удаление текста точно так же, как отмену убития |
48983 | 483 текста. Отличие между убийством и удалением чего-либо заключается в том, что |
484 вы можете восстановить убитый текст с помощью C-y; но это не делает различий | |
485 для отмены. | |
486 | |
487 * ФАЙЛЫ | |
488 ------- | |
489 | |
490 Чтобы созданный текст можно было редактировать позже, вы должны его | |
54957 | 491 поместить в файл. Иначе, он исчезнет, когда вы выйдите из Emacs. Вы помещаете |
492 ваш текст в файл, "открывая" файл. (Еще это называют "посетить" файл.) | |
48983 | 493 |
54957 | 494 Открыть файл означает посмотреть его содержимое, используя Emacs. Во многих |
495 случаях, это происходит, когда вы редактируете файл сами. Однако ваши | |
48983 | 496 изменения, сделанные с использованием Emacs не будут зафиксированы, пока вы |
497 не сохраните файл. Так вы можете не оставлять полуизмененный файл в системе, | |
498 если вы не хотите этого. Даже когда вы сохраняете файл, Emacs оставляет | |
54957 | 499 оригинальный файл с измененным именем, чтобы вы могли позже решить, что ваши |
48983 | 500 изменения были ошибочны. |
501 | |
502 Если вы посмотрите в нижнюю часть экрана, то вы увидите строку, которая | |
503 начинается с тире и начинается с "--:-- TUTORIAL.ru" или чего-то | |
54957 | 504 подобного. Эта часть экрана всегда показывает имя файла, который вы |
505 открыли. Итак, сейчас вы открыли файл с именем "TUTORIAL.ru", который | |
506 является вашей персональной копией учебника Emacs. Для любого файла, который | |
48983 | 507 вы откроете, имя этого файла появится в этом месте. |
508 | |
54957 | 509 Одной из специальных вещей, которую вам нужно знать о команде открытия файла, |
510 это то, что вы должны ввести имя файла, который нужно читать. Мы это | |
511 называем командой, "читающей аргумент с терминала" (в этом случае, аргументом | |
48983 | 512 является имя файла). После ввода команды |
513 | |
514 C-x C-f Открыть (найти) файл | |
515 | |
516 Emacs попросит вас ввести имя файла. Имя файла вы наберете в нижней строке | |
517 экрана. Нижняя строка называется мини-буфер, он используется для короткого | |
518 ввода. Вы можете использовать обычные команды редактирования Emacs для | |
519 редактирования имени. | |
520 | |
521 Когда вы вводите имя файла (или любую информацию в мини-буфер), вы можете | |
522 отменить команду нажав C-g. | |
523 | |
524 >> Нажмите C-x C-f, затем нажмите C-g. Это отменит мини-буфер, и команду | |
54957 | 525 C-x C-f, которая использовала мини-буфер. В итоге, вы не открыли ни одного |
48983 | 526 файла. |
527 | |
528 Когда вы завершите ввод имени файла, нажмите <Return>. Далее сработает | |
54957 | 529 команда C-x C-f, которая откроет указанный вами файл. Мини-буфер исчезнет, |
530 когда команда C-x C-f завершится. | |
48983 | 531 |
532 И мгновением позже содержимое файла появится на экране, и вы сможете его | |
54957 | 533 редактировать. Когда вы закончите редактирование, чтобы сохранить изменения, |
48983 | 534 наберите команду |
535 | |
536 C-x C-s Сохранить файл | |
537 | |
538 Это скопирует текст из Emacs в файл. В первый раз, когда вы это сделаете, | |
539 Emacs переименует оригинальный файл в файл с новым именем, чтобы он не | |
540 потерялся. Новое имя получается добавлением символа "~" к оригинальному | |
541 имени файла. | |
542 | |
543 Когда сохранение завершится, Emacs напечатает имя записанного файла. Вы | |
54957 | 544 должны сохранять изменения достаточно часто, чтобы не потерять много |
545 работы, если вдруг система зависнет. | |
48983 | 546 |
547 >> Наберите C-x C-s, сохраните вашу копию учебника. В нижней строке экрана | |
548 должна появиться надпись "Wrote ...TUTORIAL.ru". | |
549 | |
550 ЗАМЕЧАНИЕ: На некоторых системах, ввод C-x C-s заблокирует экран и вы не | |
54957 | 551 увидите последующего вывода Emacs`а. Это означает, что операционная система |
552 имеет "особенность", именуемую "flow control", перехватывающую C-s и не | |
48983 | 553 пропускающую этот символ к Emacs`у. Для разблокировки экрана, нажмите C-q. |
54957 | 554 Смотрите раздел "Spontaneous Entry to Incremental Search" руководства Emacs, |
555 чтобы узнать, как бороться с этой "особенностью". | |
48983 | 556 |
557 Вы можете открыть существующий файл для просмотра или редактирования. Вы | |
558 также можете найти файл, которого еще не существует. Другими словами -- | |
559 создать файл с помощью Emacs: найти файл, создать новый, и начать вводить | |
560 текст. Когда вы скажите "сохрани" файл, Emacs создаст реальный файл с | |
561 набранным вами текстом. Далее, как вы поняли, вы будете редактировать уже | |
562 существующий файл. | |
563 | |
564 | |
565 * БУФЕРА | |
566 -------- | |
567 | |
568 Если вы находите второй файл с использованием C-x C-f, то первый остается | |
569 внутри Emacs. Вы можете переключиться назад, найдя его снова C-x C-f. Это | |
570 способ загрузить несколько файлов в Emacs. | |
571 | |
54957 | 572 >> Создайте файл с именем "foo", набирая C-x C-f foo <Return>. |
573 Вставьте какой-нибудь текст, отредактируйте его, и сохраните "foo", | |
48983 | 574 набрав C-x C-s. |
54957 | 575 Наконец, наберите C-x C-f TUTORIAL.ru <Return>, |
48983 | 576 чтобы вернуться назад к учебнику. |
577 | |
54957 | 578 Emacs сохраняет текст каждого файла внутри в объекте, называемом "буфер" |
579 ("buffer"). Открытие файла создает новый буфер внутри Emacs. Чтобы увидеть | |
580 список буферов, созданных в текущем Emacs, наберите | |
48983 | 581 |
582 C-x C-b Список буферов | |
583 | |
584 >> Попробуйте C-x C-b сейчас. | |
585 | |
54957 | 586 Мы видим, что каждый буфер имеет имя, и может иметь имя файла, содержимое |
48983 | 587 которого в нем хранится. Некоторые буфера не соответствуют файлам. Например, |
54957 | 588 буфер, названный "*Buffer List*", не содержит никакого файла. В этом буфере |
589 содержится список буферов, который был создан командой C-x C-b. ЛЮБОЙ текст, | |
590 который вы видите в окне Emacs, всегда является частью какого-либо буфера. | |
48983 | 591 |
54957 | 592 >> Наберите C-x 1, чтобы избавиться от списка буферов. |
48983 | 593 |
594 Если вы изменяете текст одного файла, потом открываете другой, то первый | |
54957 | 595 остается несохраненным. Изменения останутся внутри Emacs, в файловом |
596 буфере. Создание или редактирование следующего файлового буфера не | |
48983 | 597 сказывается на первом буфере. Это очень удобно, но имейте в виду, что вам |
598 нужно иметь удобный способ сохранить первый файловый буфер. Было бы | |
599 неприятно каждый раз возвращаться назад с помощью C-x C-f и потом | |
54957 | 600 использовать C-x C-s. Поэтому существует команда |
48983 | 601 |
602 C-x s Сохранить некоторые буфера. (Save some buffers) | |
603 | |
54957 | 604 C-x s спрашивает вас о каждом буфере, который содержит несохраненные |
605 изменения. Для каждого такого буфера у вас спрашивают: сохранять или не | |
48983 | 606 сохранять изменения. |
607 | |
608 >> Вставьте строку текста, потом наберите C-x s. | |
54957 | 609 У вас должны спросить, сохранять ли буфер с именем TUTORIAL.ru. |
610 Ответьте на вопрос да, набрав "y". | |
48983 | 611 |
612 | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
613 * РАСШИРЕННЫЙ НАБОР КОМАНД |
48983 | 614 -------------------------- |
615 | |
616 У Emacs очень много команд, они могут быть назначены на все control- и meta- | |
617 символы. Emacs обходит это, используя X-команду (eXtend). Есть две | |
618 возможности: | |
619 | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
620 C-x Символ расширения (Character eXtend). |
48983 | 621 За ним следуем один символ. |
622 M-x Именованные расширенные команды (Named command eXtend). | |
623 За ним следует имя команды. | |
624 | |
625 Это команды, которые обычно используются, но вы уже выучили некоторые из | |
626 них. Вы уже видели: команды работы с файлами C-x C-f -- открыть, и C-x C-s | |
54957 | 627 -- сохранить. Другой пример - завершения работы с Emacs -- это команда C-x |
48983 | 628 C-c. (Не волнуйтесь о том, что вы потеряете сделанные изменения, C-x C-c |
54957 | 629 предлагает сохранить изменения перед тем, как удалит буфер Emacs.) |
48983 | 630 |
54957 | 631 C-z это команда *временного* выхода из Emacs -- вы можете вернуться в ту же |
632 сессию Emacs позже. | |
48983 | 633 |
54957 | 634 На системах, которые допускают это, C-z "приостанавливают" ("suspends") |
635 Emacs; возвращают в оболочку (shell), но не закрывают Emacs. В большинстве | |
636 оболочек вы можете продолжить работу в Emacs, используя команду `fg' или | |
48983 | 637 `%emacs'. |
638 | |
54957 | 639 В системах, не поддерживающих приостановку процессов, C-z создает новую |
48983 | 640 оболочку (subshell), запущенную из-под Emacs, чтобы дать вам возможность |
54957 | 641 выполнить другую программу, и потом вернуться в Emacs; это не настоящий |
48983 | 642 выход из Emacs. В этом случае, команда `exit' вернет вас в Emacs из |
643 оболочки. | |
644 | |
54957 | 645 Используйте C-x C-c, если вы хотите выйти (log out) из системы. Это также |
646 используется, чтобы выйти из Emacs, вызванного из почтовой программы, или другой | |
647 утилиты, которая может не знать, как справиться с приостановленным Emacs. | |
648 Обычно, если вы не выходите из системы, лучше приостановить Emacs, | |
48983 | 649 используя C-z вместо выхода их него. |
650 | |
651 Существует очень много C-x команд. Эти вы уже выучили: | |
652 | |
653 C-x C-f Открыть файл. | |
654 C-x C-s Сохранить файл. | |
655 C-x C-b Список буферов. | |
656 C-x C-c Выход из Emacs. | |
657 C-x 1 Удаляет все окна кроме одного. | |
658 C-x u Отмена. | |
659 | |
660 Именованные расширенные команды используются гораздо реже, или используются | |
661 только в определенных режимах. В качестве примера команда замена строки, | |
662 которая заменяет одну строку на другую во всем тексте. Когда вы наберете | |
663 M-x, Emacs предложит вам ввести имя команды в нижней строке экрана; в нашем | |
54957 | 664 случае, "replace-string". Только наберите "repl s<TAB>", и Emacs дополнит |
48983 | 665 имя. (<TAB> -- это клавиша табуляции, обычно находящаяся выше клавиш |
666 CapsLock или Shift слева на клавиатуре). Завершите имя вводом <Return>. | |
667 | |
54957 | 668 Команда замены строки (replace-string) требует два аргумента -- строку, |
669 которая будет заменена, и строку, на которую нужно заменить. Вы должны | |
48983 | 670 завершать каждый аргумент вводом <Return>. |
671 | |
672 >> Переместите курсор на две пустые строки ниже этой. | |
673 Наберите M-x repl s<Return>changed<Return>altered<Return>. | |
674 | |
54957 | 675 Заметьте, как эта строка изменится: вы замените слово c-h-a-n-g-e-d |
48983 | 676 словом "altered" везде, где оно встретится, ниже позиции курсора. |
677 | |
678 | |
679 * АВТОСОХРАНЕНИЕ | |
680 ---------------- | |
681 | |
682 Когда вы изменяете файл, но не сохраняете его, то в случае краха системы | |
54957 | 683 вы можете потерять информацию. Чтобы защитить вас от этого, Emacs |
48983 | 684 периодически сохраняет каждый файл, который вы редактируете. Автосохранение |
685 происходит в файл, имя которого такое же, но начинается и заканчивается | |
686 символом "#"; например, если ваш файл называется "hello.c", то | |
687 автосохраненный файл будет называться "#hello.c#". Когда вы сохраните файл | |
54957 | 688 обычным способом, Emacs удалит автосохраненный файл. |
48983 | 689 |
54957 | 690 Если система зависла, вы можете восстановить ваши изменения, который были |
691 сохранены автоматически, путем открытия нормального файла (файла, который вы | |
692 редактировали, не автосохраненного), и затем набрав M-x recover-file<return>. | |
693 Когда у вас спросят подтверждение, наберите yes<return>, чтобы восстановить | |
48983 | 694 автосохраненные данные. |
695 | |
696 | |
697 * ОБЛАСТЬ ЭХО (ECHO AREA) | |
698 ------------------------- | |
699 | |
54957 | 700 Если Emacs видит, что вы медленно набираете команды, он показывает их вам |
48983 | 701 внизу экрана, в области называемой "область эхо". Область эхо -- это самая |
702 нижняя строка экрана. | |
703 | |
704 | |
705 * СТРОКА РЕЖИМА | |
54957 | 706 --------------- |
48983 | 707 |
708 Строка сразу над областью эхо называется "строка состояния". | |
709 Выглядит эта строка примерно так: | |
710 | |
54957 | 711 --:** TUTORIAL.ru (Fundamental)--L670--58%---------------- |
48983 | 712 |
713 Эта строка сообщает полезную информацию о состоянии Emacs и текста, который | |
714 вы редактируете. | |
715 | |
54957 | 716 Вы уже знаете, что означает имя файла -- это файл, который вы открыли. -NN%-- |
48983 | 717 показывает текущую позицию курсора в тексте; это означает что NN процентов |
718 текста выше, чем начало экрана. Если первая строка находится в первой строке | |
719 экрана, вы там увидите --Top-- вместо --00%--. Если на экране отображается | |
720 последняя строка, то будет отображено --Bot--. Если текст настолько мал, что | |
721 весь вмещается в экран, строка состояния сообщит --All--. | |
722 | |
723 Буква L и цифры показывают позицию другим способом: они показывают номер | |
724 текущей строки с курсором. | |
725 | |
726 Звездочки в начале строки означают, что вы изменяли текст. Как только вы | |
727 открыли или сохранили файл, эта часть строки будет содержать не звездочки, а | |
728 тире. | |
729 | |
730 Часть строки статуса внутри скобок сообщает вам режим редактирования, | |
731 которым вы пользуетесь. Стандартный режим -- Fundamental, его вы используете | |
732 и сейчас. Это пример "основного режима" ("major mode"). | |
733 | |
734 Emacs имеет много различных основных режимов. Некоторые из режимов означают, | |
735 что вы редактируете текст на различном языке и/или различные виды текста, | |
736 такие как Lisp-режим, Text-режим и пр. В любое время действует только один | |
737 основной режим, и его название вы можете найти в скобках, где сейчас | |
738 находится слово "Fundamental" (базовый). | |
739 | |
740 Каждый основной режим имеет несколько отличительных команд. Например, команды | |
741 создания комментария в программе, и поскольку в каждом языке программирования | |
742 комментарии записываются по-своему, каждый основной режим вставляет их | |
743 по-разному. Каждый основной режим имеет именованную команду, которая включает | |
744 его. Например, M-x fundamental-mode - команда, которая переключает в базовый | |
745 (Fundamental) режим. | |
746 | |
54957 | 747 Если вы редактируете русский текст, например как этот (конечно, не именно |
48983 | 748 этот, а TUTORIAL) файл, вы вероятно должны переключиться в Text-режим. |
749 | |
750 >> Наберите M-x text mode<Return>. | |
751 | |
752 Не волнуйтесь, ни одна из выученных вами команд Emacs не изменилась. Но вы | |
54957 | 753 можете заметить, что M-f и M-b теперь различают апострофы как части слова. |
48983 | 754 Ранее, в базовом режиме (Fundamental mode), M-f и M-b понимали апострофы |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
755 как разделители слов. |
48983 | 756 |
757 Основной режим обычно делает небольшие изменения, такие как: большинство | |
758 команд делают "ту же работу" в каждом из режимов, но их работа отличается | |
759 какой-нибудь мелочью. | |
760 | |
761 Для просмотра документации о вашем текущем основном режиме, нажмите C-h m. | |
762 | |
763 >> Используйте C-u C-v один раз или более, чтобы расположить эту строку ближе | |
764 к верху экрана. | |
54957 | 765 >> Наберите C-h m, чтобы посмотреть отличия Text-режима от базового. |
766 >> Наберите C-x 1, чтобы убрать документацию с глаз долой :) | |
48983 | 767 |
768 Основной режим называется основным потому, что есть несколько дополнительных | |
769 (minor) режимов. Дополнительные режимы не являются альтернативами основным, | |
770 они только немного изменяют их поведение. Каждый дополнительный режим | |
771 включается/выключается независимо от других дополнительных режимов, и | |
772 независимо от вашего основного режима. Вы можете использовать основной режим | |
773 без дополнительных, или с любой их комбинацией. | |
774 | |
775 Один из дополнительных режимов очень полезен, особенно для редактирования | |
776 текста - это режим автозаполнения (Auto Fill mode). Когда этот режим | |
777 включен, Emacs разрывает строки между словами автоматически, когда вы | |
778 вставляете текст и делаете строки слишком длинными. | |
779 | |
54957 | 780 Вы можете включить режим автозаполнения, набрав M-x auto fill mode<Return>. |
48983 | 781 Когда этот режим включен, его можно выключить - M-x auto fill mode<Return>. |
782 Если режим включен -- команда его выключит, если выключен -- включит. Мы | |
783 называем это командой "переключения режима". | |
784 | |
785 >> Наберите M-x auto fill mode<Return>. Затем вводите строку из слов | |
54957 | 786 "фыва " пока не увидите, как она разделится на две строки. Вы должны |
48983 | 787 помещать пробелы между словами, потому что режим автозаполнения разделяет |
788 строки только по пробелам. | |
789 | |
790 Граница обычно выставлена на 70-ти символах, но вы можете изменить ее | |
791 используя команду C-x f. Вы должны задать границу в виде числового аргумента | |
792 для этой команды. | |
793 | |
794 >> Введите C-x f с аргументом 20. (C-u 2 0 C-x f). Затем введите | |
795 какой-нибудь текст, и посмотрите как Emacs заполняет строки по 20 | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
796 символов в каждой. Верните значение границы 70 назад, |
48983 | 797 снова используя C-x f. |
798 | |
799 Если вы сделали изменения в середине параграфа, автозаполнение не перестроит | |
800 текст для вас. Чтобы перестроить параграф, наберите M-q (META-q) в то время, | |
801 когда курсор находится внутри параграфа. | |
802 | |
803 >> Переместите курсор в предыдущий параграф, и нажмите M-q. | |
804 | |
805 | |
806 * ПОИСК | |
807 ------- | |
808 | |
54957 | 809 Emacs умеет искать строки (непрерывные группы символов или слова) вперед |
810 по тексту, или назад. Поиск строки - это команда перемещения курсора; она | |
48983 | 811 перемещает курсор в следующую точку, где найдена искомая строка. |
812 | |
813 Команда поиска Emacs отличаются от аналогичных команд большинства других | |
54957 | 814 редакторов тем, что она инкрементальная. Это означает, что поиск происходит |
815 по мере, того как вы набираете искомую строку. | |
48983 | 816 |
817 Команда, начинающая поиск вперед -- C-s, а C-r ищет назад. ПОДОЖДИТЕ! Не | |
818 нужно пробовать прямо сейчас. | |
819 | |
54957 | 820 Когда вы нажмете C-s, вы увидите строку "I-search", появившуюся в области эхо. |
821 Вам сообщается, что Emacs ждет ввода слова, которое вы хотите найти. | |
48983 | 822 <Return> завершает поиск. |
823 | |
54957 | 824 >> Теперь нажмите C-s для начала поиска. Медленно, одну букву за один раз, |
48983 | 825 набирайте слово 'курсор', останавливаясь после каждой введенной буквы и |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
826 замечая что происходит с курсором. |
48983 | 827 Сейчас вы нашли первое вхождение слова "курсор". |
828 >> Нажмите C-s снова, чтобы найти следующее вхождение слова "курсор". | |
829 >> Теперь нажмите <Delete> четыре раза и проследите за перемещениями курсора. | |
830 >> Нажмите <Return> для завершения поиска. | |
831 | |
54957 | 832 Вы видели, что происходило? Emacs в режиме инкрементального поиска пытался |
833 переходить к строкам, совпадающим с набираемой вами, подсвечивая их для вас. | |
48983 | 834 Чтобы перейти к следующему вхождения слова 'курсор' просто нажмите C-s |
54957 | 835 снова. Если больше нет вхождений, Emacs издаст звуковой сигнал, и сообщит, |
836 что ваш поиск не удался ("failing"), C-g также может отменить поиск. | |
48983 | 837 |
54957 | 838 ЗАМЕЧАНИЕ: На некоторых системах ввод C-s заморозит экран, и вы не увидите |
839 последующего вывода Emacs`а. Это означает, что операционная система имеет | |
840 "особенность", именуемую "flow control", перехватывающую C-s и не пропускающую | |
841 этот символ к Emacs`у. Для разморозки экрана, нажмите C-q. Смотрите раздел | |
842 "Spontaneous Entry to Incremental Search" руководства Emacs, чтобы узнать, | |
843 как бороться с этой "особенностью". | |
48983 | 844 |
54957 | 845 Если вы во время инкрементального поиска нажмете <Delete>, вы можете заметить, |
48983 | 846 что последний символ в искомой строке удалился, и поиск вернулся к предыдущему |
54957 | 847 найденному месту. Например, предположим, что вы набрали "к", поиск перейдет к |
848 первому вхождению символа "к". Теперь, если вы наберете "у", курсор перейдет к | |
849 первому вхождению "ку". Нажатие <Delete> удалит символ "у" из строки поиска, и | |
850 курсор вернется к первому вхождению "к". | |
48983 | 851 |
852 Если вы во время поиска введете control- или meta- символ (за некоторыми | |
853 исключениями -- символы вызывающие поиск, а именно C-s и C-r), поиск | |
854 прекратится. | |
855 | |
856 C-s начинает поиск и смотрит на любые вхождения искомой строки ПОСЛЕ текущей | |
54957 | 857 позиции курсора. Если вы хотите найти что-то ранее в тексте, нажмите C-r. |
858 Все, что мы говорили о C-s, применимо и к C-r, за исключением противоположного | |
48983 | 859 направления поиска. |
860 | |
861 | |
862 * МНОЖЕСТВО ОКОН (MULTIPLE WINDOWS) | |
54957 | 863 ----------------------------------- |
48983 | 864 |
865 Одна из приятных особенностей Emacs это то, что вы можете одновременно | |
866 отображать на экране более чем одно окно. | |
867 | |
868 >> Переместите курсор на эту линию, и наберите C-u 0 C-l (это CONTROL-L, а | |
869 не CONTROL-1). | |
870 | |
54957 | 871 >> Теперь наберите C-x 2, что разделит экран на два окна. |
48983 | 872 Оба окна отображают учебник. Курсор остался в верхнем окне. |
873 | |
874 >> Нажмите C-M-v для прокрутки нижнего окна. | |
875 (если у вас нет настоящей кнопки META (Alt), нажмите ESC C-v.) | |
876 | |
877 >> Нажмите C-x o ("o" от слова "other" - другое) для перемещения курсора в | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
878 нижнее окно. |
54957 | 879 >> Используйте C-v и M-v в нижнем окне, чтобы прокручивать его. |
48983 | 880 Продолжите чтение этих инструкций в верхнем окне. |
881 | |
54957 | 882 >> Нажмите C-x o снова, чтобы переместить курсор назад в верхнее окно. |
48983 | 883 Курсор в верхнем окне там же, где и был до того. |
884 | |
885 Вы можете продолжать переключаться между окнами, используя C-x o. Каждое | |
886 окно хранит свою позицию курсора, но только одно показывает курсор. Все | |
887 обычные команды редактирования применяются к окну, в котором отображается | |
888 курсор. Мы называем это окно "выбранным" ("selected window"). | |
889 | |
890 Команда C-M-v очень удобна, когда вы редактируете текст в одном окне, и | |
891 используете второе в качестве справочника. Вы можете всегда сохранять курсор | |
892 в окне редактирования и последовательно продвигаться во втором, используя | |
893 C-M-v. | |
894 | |
54957 | 895 C-M-v - пример CONTROL-META символа. Если у вас есть настоящая кнопка META |
896 (Alt), то вы можете набрать C-M-v, нажав одновременно CONTROL и META и, | |
897 не отпуская их, нажать v. И не важно, какая из клавиш будет нажата первой, | |
48983 | 898 CONTROL или META, поскольку эти кнопки модифицируют тип символа. |
899 | |
900 Если у вас нет настоящей кнопки META, и вы используете ESC вместо нее, | |
901 порядок должен быть следующим: вы должны нажать ESC, а затем CTRL-v; | |
902 CONTROL-ESC v не будет работать. Потому, что ESC имеет свой собственный | |
903 символ -- это не модифицирующая кнопка. | |
904 | |
54957 | 905 >> Нажмите C-x 1 (в верхнем окне), чтобы избавиться от нижнего. |
48983 | 906 |
907 (Если вы нажали C-x 1 в нижнем окне, то вы избавились от верхнего. Понимайте | |
54957 | 908 эту команду как "Оставить только одно окно, то, в котором я сейчас нахожусь"). |
48983 | 909 |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
910 Вам не нужно отображать один и тот же буфер в обоих окнах. Если вы |
54957 | 911 используете C-x C-f, чтобы открыть файл в одном окне, другое останется без |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
912 изменения. Вы можете открывать файлы в каждом окне независимо. |
48983 | 913 |
54957 | 914 Есть другой путь использовать два окна, отображающих разные файлы: |
48983 | 915 |
54957 | 916 >> Наберите C-x 4 C-f, затем имя одного и ваших файлов. Завершите <Return>. |
917 Посмотрите, что выбранный файл появился в нижнем окне. Курсор перешел | |
48983 | 918 туда же. |
919 | |
54957 | 920 >> Наберите C-x o, чтобы вернуться в верхнее окно, и C-x 1, чтобы удалить |
921 нижнее окно. | |
48983 | 922 |
923 | |
924 * РЕКУРСИВНЫЕ УРОВНИ РЕДАКТИРОВАНИЯ (RECURSIVE EDITING LEVELS) | |
925 -------------------------------------------------------------- | |
926 | |
927 Иногда вы будете включать так называемые "рекурсивные уровни | |
54957 | 928 редактирования". На это указывают прямоугольные скобки в строке состояния, |
929 окружающие обычные скобки вокруг имени основного режима. Например, вы можете | |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
930 увидеть [(Fundamental)] вместо (Fundamental). |
48983 | 931 |
54957 | 932 Чтобы выйти из рекурсивных уровней редактирования, нажмите ESC ESC ESC. Это |
933 многоцелевая команда "выход". Вы также можете использовать ее как для | |
48983 | 934 уничтожения лишних окон, так и для выхода из мини-буфера. |
935 | |
54957 | 936 >> Нажмите M-x, чтобы попасть в мини-буфер; затем нажмите ESC ESC ESC, |
937 чтобы покинуть его. | |
48983 | 938 |
54957 | 939 Вы не можете использовать C-g, чтобы выйти из рекурсивных уровней |
940 редактирования. Потому, что C-g используется для отмены команды и | |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
941 аргументов БЕЗ рекурсивных уровней редактирования. |
48983 | 942 |
943 | |
944 * КАК ПОЛУЧИТЬ ПОМОЩЬ (GETTING MORE HELP) | |
945 ----------------------------------------- | |
946 | |
947 В этом учебнике мы попытались снабдить вас только той информацией, которая | |
948 поможет начать использовать Emacs. Очень много информации доступно в Emacs, | |
949 и невозможно всю ее представить здесь. Однако, вы можете выучить больше | |
950 возможностей Emacs и узнать другие полезные особенности. Emacs предоставляет | |
951 команды для чтения документации о командах Emacs. Эти команды "помощи" | |
952 ("help") все начинаются с символа CONTROL-h, который является "символом | |
953 помощи". | |
954 | |
955 Чтобы использовать особенности Помощи, нажмите C-h, и затем символ, который | |
54957 | 956 расскажет, какой именно вид помощи вы хотите получить. Если вы ДЕЙСТВИТЕЛЬНО |
957 растерялись, наберите C-h ?, и Emacs расскажет вам какую помощь он может вам | |
48983 | 958 предоставить. Если вы нажали C-h и передумали обращаться к помощи, просто |
54957 | 959 нажмите C-g, чтобы отменить эту команду. |
48983 | 960 |
961 (Кое-где переназначают символ C-h. Реальной необходимости в этом нет, | |
962 сообщите о ней системному администратору. Тем временем, если C-h не вызывает | |
963 сообщение помощи внизу экрана, попробуйте вместо этого нажать клавишу F1 или | |
964 набрать M-x help RET). | |
965 | |
966 Самая основная возможность ПОМОЩИ - C-h c. Нажмите C-h, затем c, и символ | |
967 команды или последовательность, и Emacs отобразит очень краткое описание | |
968 команды. | |
969 | |
970 >> Нажмите C-h c C-p. | |
971 Сообщение должно выглядеть примерно так | |
972 | |
973 C-p runs the command previous-line | |
54957 | 974 (C-p выполняет команду previous-line {предыдущая-строка}) |
48983 | 975 |
54957 | 976 Вам сообщают "имя функции". Имена функций используются в основном для |
977 настройки и расширения Emacs. Имена функций выбраны так, чтобы показать, | |
978 что именно команда делает, также они позволяют с помощью этой краткой | |
48983 | 979 информации легче запомнить уже выученные команды. |
980 | |
981 Многосимвольные команды, такие как C-x C-s и (если у вас нет кнопки META или | |
54957 | 982 EDIT или ALT) <ESC>v также будут доступны после C-h c. |
48983 | 983 |
984 Получите больше информации о команде используя C-h k вместо C-h c. | |
985 | |
986 >> Наберите C-h k C-p. | |
987 | |
988 Вы увидите описание функции, а также ее имя в отдельном окне Emacs. Когда вы | |
54957 | 989 завершите чтение, нажмите C-x 1, чтобы избавиться от текста помощи. Вы |
48983 | 990 можете выполнить какое-то редактирование во время просмотра текста справки, |
54957 | 991 а только затем нажать C-x 1. |
48983 | 992 |
993 Есть еще несколько полезных опций C-h: | |
994 | |
54957 | 995 C-h f Описывает функцию. Вам необходимо набрать имя функции. |
48983 | 996 |
997 >> Попробуйте набрать C-h f previous-line<Return>. | |
998 Это распечатает информацию Emacs о этой функции, которая выполняется | |
999 командой C-p. | |
1000 | |
1001 Аналогичная команда C-h v отображает документацию о переменных, значение | |
54957 | 1002 которых вы можете изменить для настройки поведения Emacs. Вам нужно набрать |
48983 | 1003 имя переменной, когда Emacs запросит его. |
1004 | |
1005 C-h a Hyper Apropos. Введите ключевое слово и Emacs покажет вам | |
1006 список всех функций и переменных, имена которых содержат это | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
1007 слово. Команды, которые могут быть вызваны через Meta-x, |
48983 | 1008 будут отмечены звездочкой слева. |
1009 | |
1010 >> Наберите C-h a file<Return>. | |
1011 | |
54957 | 1012 это отобразит полный список функций и переменных, имена которых начинаются |
1013 с "newline". Нажмите <Return> или кликните средней кнопкой мышки, чтобы | |
1014 получить больше информации о функции или переменной. Нажмите `q', чтобы | |
1015 выйти из hyper-apropos. | |
48983 | 1016 |
1017 Это отобразит в другом окне список всех команд M-x со словом "file" в их | |
54957 | 1018 именах. Также в списке кроме команд таких, как find-file, вы увидите |
1019 соответствующие символьные команды такие, как C-x C-f. | |
48983 | 1020 |
1021 >> Наберите C-M-v для прокрутки окна справки. Выполните это несколько раз. | |
1022 | |
1023 >> Наберите C-x 1 для удаления окна справки. | |
1024 | |
1025 C-h i Читать интерактивные руководства (a.k.a. Info). Эта команда | |
1026 переходит в специальный буфер с именем `*info*', где вы | |
54957 | 1027 можете читать интерактивные руководства для пакетов, |
48983 | 1028 установленных в вашей системе. Наберите m emacs <Return> для |
1029 чтения руководства по Emacs. Если вы никогда ранее не | |
1030 использовали Info, то наберите ? и Emacs откроет учебник по | |
1031 возможностям режима Info. Однажды ознакомившись с этим | |
1032 учебником, вы должны использовать руководство Emacs Info в | |
54957 | 1033 качестве основной документации. |
48983 | 1034 |
1035 | |
1036 * ЗАКЛЮЧЕНИЕ | |
1037 ------------ | |
1038 | |
54957 | 1039 Запомните, чтобы совсем выйти из Emacs, используется сочетание клавиш |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
1040 C-x C-c. А чтобы временно выйти в оболочку (shell) и потом вернуться |
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
1041 обратно, используйте C-z. |
48983 | 1042 |
54957 | 1043 Этот учебник должен быть понятен всем новым пользователям, но если вы |
1044 найдете что-нибудь неясное, не нужно сидеть и порицать себя -- жалуйтесь! | |
48983 | 1045 |
1046 | |
1047 * COPYING | |
54957 | 1048 --------- |
48983 | 1049 |
1050 Этот учебник произошел из длинной серии учебников Emacs, начатой с однажды | |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
1051 написанного by Stuart Cracraft для оригинального Emacs. |
48983 | 1052 |
1053 Эта версия учебника, как и GNU Emacs, защищена правами копирования | |
1054 (copyrighted), и приходит с ограничениями распространения копий со | |
1055 следующими соглашениями: | |
1056 | |
1057 Copyright (c) 1985, 1996 Free Software Foundation | |
1058 | |
1059 Permission is granted to anyone to make or distribute verbatim copies | |
1060 of this document as received, in any medium, provided that the | |
1061 copyright notice and permission notice are preserved, | |
1062 and that the distributor grants the recipient permission | |
1063 for further redistribution as permitted by this notice. | |
1064 | |
1065 Permission is granted to distribute modified versions | |
1066 of this document, or of portions of it, | |
1067 under the above conditions, provided also that they | |
1068 carry prominent notices stating who last altered them. | |
1069 | |
1070 Условия копирования самого Emacs более сложные, но в том же духе. | |
1071 Пожалуйста, прочтите файл COPYING и затем дайте копию GNU Emacs вашим | |
1072 друзьям. Помогите уничтожить обструкционизм в области программного | |
54957 | 1073 обеспечения ("владение"), используя, создавая и распространяя свободное |
48983 | 1074 программное обеспечение! |
1075 | |
54915
8c186f4bffa6
Changes by Alex Ott checked in.
David Kastrup <dak@gnu.org>
parents:
52401
diff
changeset
|
1076 // замечания, исправления ошибок с нетерпением жду по адресу ottalex@narod.ru |
49600
23a1cea22d13
Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents:
48983
diff
changeset
|
1077 // Alex Ott. |
48983 | 1078 // Большое спасибо Владимиру Бормотову, на базе перевода которого был сделан |
1079 // этот перевод | |
54923
44e2974055ec
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-221
Miles Bader <miles@gnu.org>
parents:
54915
diff
changeset
|
1080 |
54958
5a38f694f332
Add "2004" to the list of copyright years.
Juri Linkov <juri@jurta.org>
parents:
54957
diff
changeset
|
1081 ;;; Local Variables: |
5a38f694f332
Add "2004" to the list of copyright years.
Juri Linkov <juri@jurta.org>
parents:
54957
diff
changeset
|
1082 ;;; coding: cyrillic-koi8 |
5a38f694f332
Add "2004" to the list of copyright years.
Juri Linkov <juri@jurta.org>
parents:
54957
diff
changeset
|
1083 ;;; sentence-end-double-space: nil |
5a38f694f332
Add "2004" to the list of copyright years.
Juri Linkov <juri@jurta.org>
parents:
54957
diff
changeset
|
1084 ;;; End: |
5a38f694f332
Add "2004" to the list of copyright years.
Juri Linkov <juri@jurta.org>
parents:
54957
diff
changeset
|
1085 |
54923
44e2974055ec
Revision: miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-221
Miles Bader <miles@gnu.org>
parents:
54915
diff
changeset
|
1086 ;;; arch-tag: ad4e5698-ea8b-45b7-b236-ed5ad5b72d2b |