1 Учебник Emacs. Условия распространения приведены в конце файла.
3 Для управления Emacs обычно используются сочетания клавиш (key -- сочетание
4 клавиш клавиатуры и/или кнопок мыши), включающие в себя клавишу CONTROL
5 (иногда отмечаемая как CTRL или CTL) или клавишу META (иногда помеченную как
6 ALT или EDIT). Вместо того, чтобы каждый раз писать META или CONTROL, мы
7 будем использовать следующие сокращения:
9 C-<chr> -- следует удерживать клавишу CONTROL, пока набирается символ
10 <chr>. Так, C-f должно означать: одновременно нажать клавиши CONTROL и f.
11 M-<chr> -- следует удерживать клавишу META, пока набирается символ
12 <chr>. Если нет клавиши META, ALT или EDIT, то нажмите <ESC>,
13 отпустите ее, а потом наберите символ <chr>.
15 Важное замечание: для завершения работы Emacs, наберите C-x C-c (два сочетания
16 клавиш). Чтобы прервать частично набранную команду, нажмите C-g.
17 Символы ">>" с левой стороны указывают, что вам нужно делать, чтобы
18 попробовать применить команду. Например:
19 <<Blank lines inserted here by startup of help-with-tutorial>>
20 [Середина страницы оставлена пустой в учебных целях. Текст продолжается ниже]
21 >> Теперь нажмите C-v (просмотр следующего экрана) для перемещения к следующему
22 экрану. (Выполните эту команду удерживая клавишу CONTROL и нажимая v.) Теперь
23 вы должны это сделать еще раз, когда вы закончите читать текст на экране.
25 Обратите внимание на то, что при переходе с экрана на экран показываются две
26 строки с предыдущего экрана -- это обеспечивает некоторую непрерывность
27 восприятия, так что вы можете продолжать читать текст не теряя нити
30 Первое, что вам необходимо знать -- это то, как передвигаться по тексту из
31 одного места в другое. Вы уже знаете, как переместиться вперед на один экран
32 используя сочетание клавиш C-v. Для перемещения назад на один экран, нажмите
33 M-v (удерживайте клавишу META и наберите v, или нажмите <ESC> и затем v,
34 если у вас нет клавиши META, EDIT или ALT).
36 >> попробуйте набрать M-v, а затем C-v, несколько раз.
39 * КРАТКИЙ ПЕРЕЧЕНЬ КОМАНД
40 -------------------------
42 Следующие сочетания клавиш полезны при по-экранном просмотре текста:
44 C-v Перейти на один экран вперед
45 M-v Перейти на один экран назад
46 C-l Очистить экран и отобразить все заново,
47 разместив текст, находящийся возле курсора,
48 в центре экрана. (это CONTROL-L, а не CONTROL-1.)
50 >> Найдите курсор и запомните текст возле него. Потом нажмите C-l.
51 Найдите курсор снова и убедитесь, что возле него все тот же текст.
53 Вы также можете использовать клавиши PageUp и PageDn для перемещения между
54 экранами (если они есть на вашем терминале), но вы сможете работать более
55 эффективно, если будете использовать сочетания C-v и M-v.
58 * БАЗОВЫЕ КОМАНДЫ УПРАВЛЕНИЯ КУРСОРОМ
59 -------------------------------------
61 Движение от экрана к экрану удобно, но как переместиться в определенную
62 точку в тексте на экране?
64 Есть несколько способов сделать это. Вы можете использовать клавиши
65 управления курсором (стрелки), но более эффективным будет сохранение рук в
66 их стандартной позиции и использовать команды C-p, C-b, C-f и C-n. Эти
67 команды эквивалентны четырем клавишам перемещения курсора, как это показано
70 Предыдущая строка, C-p
73 Назад, C-b .... Текущая позиция курсора .... Вперед, C-f
78 >> Переместите курсор на строку с центром диаграммы, используя сочетания
79 клавиш C-n или C-p. Затем нажмите C-l и посмотрите как диаграмма
80 переместится в центр экрана.
82 Вам будет несложно запомнить эти команды по первым буквам соответствующих
83 слов: P -- предыдущий (previous), N -- следующий (next), B -- назад
84 (backward) и F -- вперед (forward). Вы постоянно будете использовать эти
85 основные команды позиционирования курсора.
87 >> Нажмите несколько раз C-n, чтобы опустить курсор вниз к этой строке.
89 >> Переместитесь по строке, используя C-f, и потом поднимитесь вверх с
90 помощью C-p. Посмотрите, как изменилось положение курсора при нажатии
91 С-р, если он находился в середине строки.
93 Каждая строка текста завершается символом перевода строки (Newline
94 character), который отделяет ее от следующей строки. (Обычно, последняя
95 строка файла завершается символом перевода строки, но Emacs не требует
98 >> Попробуйте использовать C-b в начале строки. Курсор должен переместиться
99 на конец предыдущей строки. Это происходит потому, что он движется назад
100 через символ перевода строки.
102 C-f может перемещать курсор через символ перевода строки так же, как и C-b.
104 >> Попробуйте несколько раз применить C-b так, чтобы вы увидели, как
105 движется курсор. Далее используйте сочетание клавиш C-f чтобы вернуться
106 на конец строки. Нажмите C-f еще раз, чтобы перейти к началу следующей
109 Когда вы перемещаетесь за верхний или нижний край экрана, текст, находящийся
110 за экраном, сдвигается внутрь экрана. Это называется "прокрутка"
111 (scrolling). Прокрутка позволяет Emacs перемещать курсор в нужное место
112 текста без перемещения его за пределы экрана.
114 >> Попробуйте переместить курсор за нижнюю границу экрана, используя C-n, и
115 посмотрите, что произойдет.
117 Если посимвольное перемещение слишком медленно, вы можете двигаться по
118 словам. M-f (META-f) перемещает вперед на слово, а M-b назад на слово.
120 >> Нажмите несколько раз M-f и M-b.
122 Если курсор находится в середине слова, M-f переместит его в конец слова.
123 Если курсор находится между словами, M-f переместит его в конец следующего
124 слова. M-b работает точно так же, но в противоположном направлении.
126 >> Нажмите M-f и M-b несколько раз, перемежая их с C-f и C-b, -- так вы
127 сможете увидеть как действуют M-f и M-b из разных позиций в словах и
130 Отметьте параллель между C-f и C-b с одной стороны, и M-f и M-b с другой.
131 Очень часто Meta-сочетания используются для соответствующих операций над
132 единицами, определенными в языке (слова, предложения, абзацы), тогда как
133 Control-сочетания работают с базовыми единицами, независимо от того, что вы
134 редактируете (символы, строки, и т.д.).
136 Эта параллель также применима к строкам и предложениям: C-a и C-e перемещает
137 курсор в начало и конец строки, а M-a и M-e перемещает курсор в начало и
140 >> Попробуйте пару раз нажать C-a, а потом пару раз C-e. Попробуйте пару раз
141 нажать M-a, после этого пару раз нажать M-e.
143 Посмотрите, что повтор C-a ничего не изменяет, а повтор M-a продолжает
144 движение курсора к следующему предложению. Это не совсем аналогично, но
145 выглядит естественно.
147 Положение курсора в тексте также называют "точкой вставки" (point). Скажем
148 иначе: курсор показывает место на экране в котором будет расположен вводимый
151 Вот список всех основных команд перемещения курсора, включая движение по
152 словам и предложениям:
160 C-n На следующую строку
161 C-p На предыдущую строку
166 M-a Назад, в начало предложения
167 M-e Вперед, в конец предложения
169 >> Попробуйте сейчас несколько раз использовать все эти команды.
170 Это наиболее часто используемые команды.
172 Две другие важные команды перемещения курсора: M-< (META Less-then
173 {Меньше-Чем}), которая перемещает курсор в начало текста, и M-> (META
174 Greater-than {Больше-Чем}), которая перемещает курсор в конец текста.
176 На большинстве терминалов знак "<" находится над знаком точки, и чтобы
177 набрать его, вы должны использовать клавишу Shift. На этих терминалах вы так
178 же должны использовать Shift, чтобы набрать M-< (без удержания клавиши Shift
179 вы наберете M-точка).
181 >> Сейчас попробуйте M-<, чтобы переместиться в начало учебника.
182 Потом используйте C-v, пока не вернетесь назад.
184 >> Сейчас попробуйте M->, чтобы переместиться к концу учебника.
185 Используйте M-v, пока не вернетесь назад.
187 Курсор можно перемещать клавишами управления курсора (стрелками), если ваш
188 терминал оборудован ими. Мы рекомендуем выучить C-b, C-f, C-n и C-p по трем
189 причинам. Во-первых, они работают на любых терминалах. Во-вторых, однажды
190 получив практику использования Emacs, вы поймете, что использовать
191 Control-сочетания удобнее и быстрее, чем клавиши со стрелочками (потому что
192 вы не убираете руки с обычного их положения при печати). В-третьих, как
193 только вы привыкнете использовать Control-сочетания, вы сможете так же легко
194 выучить и использовать другие, более сложные команды перемещения курсора.
196 Большинство команд Emacs допускают задание цифрового аргумента; для
197 большинства команд, это служит счетчиком повторений. Чтобы задать счетчик
198 повторений для команды, нажмите C-u, потом число повторений, и затем укажите
199 команду. Если у вас есть клавиша META (или EDIT или ALT), то цифровой
200 аргумент можно задать другим способом: наберите цифры, удерживая клавишу
201 META. Мы рекомендуем привыкнуть к использованию C-u, поскольку это сочетание
202 клавиш работает на любом терминале. Числовой аргумент также называется
203 "префиксным аргументом", поскольку вы задаете аргумент до выполнения
206 Например, C-u 8 C-f переместит курсор на восемь символов вперед.
208 >> Попробуйте использовать C-n или C-p с цифровым аргументом, чтобы
209 переместить курсор на эту строку с помощью одной команды.
211 Многие команды используют числовой аргумент как счетчик повторений, но
212 некоторые команды используют его другим способом. Некоторые команды (но мы
213 еще не изучили ни одну из них) используют его как флаг -- наличие
214 префиксного аргумента вне зависимости от его значения, изменяет поведение
217 Другим видом исключений являются сочетания клавиш C-v и M-v. При получении
218 числового аргумента, они прокручивают экран вверх или вниз на указанное
219 число строк, вместо указанного числа экранов. Например, C-u 8 C-v прокрутит
222 >> Сейчас попробуйте набрать комбинацию C-u 8 C-v.
224 Эта команда должна прокрутить экран на 8 строк вверх. Если вы хотите
225 прокрутить его вниз, можете задать аргумент для M-v.
227 Если вы используете оконную систему, такую как X11 или MS-Windows, то должна
228 быть видна прямоугольная область, именуемая полосой прокрутки, расположенная
229 с одной из сторон окна Emacs. Вы можете прокручивать текст, щелкая кнопкой
230 мыши на полосе прокрутки.
232 Если ваша мышь имеет колесо прокрутки, вы можете использовать его.
237 Если Emacs перестал реагировать на ваши команды, то вы можете вывести его из
238 этого состояния нажав C-g. Вы можете использовать C-g, чтобы остановить
239 выполнение команд, которые слишком долго выполняются.
241 Вы также можете использовать C-g для отмены набранного цифрового аргумента
242 или команды, которая начала выполняться, но которую вы не хотите завершить.
244 >> Наберите C-u 100 для задания аргумента 100, потом нажмите C-g. Теперь
245 нажмите C-f. Курсор должен переместиться всего на один символ, потому что
246 вы отменили аргумент нажатием C-g.
248 Если вы нажали <ESC> по ошибке, то вы так же можете использовать C-g чтобы
249 избежать воздействия данной команды.
252 * ЗАПРЕЩЕННЫЕ КОМАНДЫ (DISABLED COMMANDS)
253 -----------------------------------------
255 Некоторые команды Emacs "запрещены", так что начинающие пользователи не
256 смогут случайно использовать их.
258 Если вы набрали одну из запрещенных команд, то Emacs покажет сообщение,
259 говорящее о том, какая команда вызывается, и запросит у вас, хотите ли вы
260 продолжать работу и выполнить данную команду.
262 Если вы действительно попробовать выполнить эту команду, то нажмите клавишу
263 <SPC> (пробел) в ответ на заданный вопрос. Обычно, если вы не хотите
264 выполнять запрещенную команду, то ответьте на вопрос нажатием клавиши "n".
266 >> Нажмите `C-x C-l' ("запрещенная" команда), а потом ответьте "n" на
273 Emacs может отображать информацию в нескольких "окнах", каждое из которых
274 отображает свой текст. Позже мы объясним как работать с несколькими окнами.
275 А сейчас мы хотим объяснить вам как избавляться от лишних окон и вернуться к
276 редактированию в одном окне. Это очень просто сделать:
278 C-x 1 Одно окно. (закрыть все другие окна).
280 Это CONTROL-x со следующей цифрой 1. C-x 1 развернет окно, которое содержит
281 курсор, так, чтобы оно заняло весь экран. При этом будут удалены все
284 >> Переместите курсор на эту строку и нажмите C-u 0 C-l.
286 >> Наберите C-h k C-f.
287 Посмотрите, как текущее окно сожмется, когда появится новое окно и
288 отобразит документацию для сочетания клавиш C-f.
290 >> Наберите C-x 1 и посмотрите, как окно с документацией исчезнет.
292 Эта команда отличается от других изученных команд, что она состоит из двух
293 сочетаний клавиш. Она начинается с сочетания CONTROL-x. Есть целый набор
294 команд, которые начинаются с CONTROL-x -- многие из них работают с окнами,
295 буферами, файлами и т.п. вещами. Эти команды состоят из двух, трех или
296 четырех сочетаний клавиш.
302 Если вы хотите вставить текст, то просто набирайте его. Обычные символы,
303 такие как A, 7, *, и пр. вставляются сразу как вы нажимаете на них. Чтобы
304 вставить символ новой строки нажмите <Return> (клавиша перевода каретки,
305 часто помечена как "Enter").
307 Чтобы удалить символ перед курсором, нажмите клавишу <DEL>. Обычно это
308 клавиша помеченная как "Backspace" -- та самая клавиша, которую вы обычно
309 используете вне Emacs для удаления последнего набранного символа.
311 На клавиатуре может присутствовать и другая клавиша, помеченная как
312 "Delete", но она имеет другую функцию, отличную от <DEL>.
314 >> Попробуйте сделать это -- наберите несколько символов, а затем удалите их
315 нажимая <DEL>. Не волнуйтесь что этот файл изменяется -- вы не изменяете
316 учебник. Это ваша личная копия учебника.
318 Когда строка текста становится слишком большой для строки экрана, то она
319 "продолжается" на следующей строке. Если вы используете графический
320 дисплей, то небольшие изогнутые стрелки появятся на обоих сторонах экрана
321 ("fringes") чтобы показать, что строка продолжается с предыдущей
322 строки. Если вы используете текстовый терминал, то "продолжаемая" строка
323 обозначается символом "обратный слэш" ("\") в правой части экрана.
325 >> Вводите текст, пока он не достигнет правой границы, и продолжайте вставку
326 символов. Вы увидите что появится "продолжаемая" строка.
328 >> Используйте <DEL> для удаления текста до тех пор, пока строка снова не
329 поместится в экран. Символ продолжения строки исчезнет с экрана.
331 Символ новой строки можно удалять точно так же, как и любой другой символ.
332 Удаление символа новой строки между двумя строками приведет к их склейке в
333 одну. Если полученная строка будет слишком длинной, чтобы вместиться в
334 экран, то она будет отображена как строка "с продолжением".
336 >> Переместите курсор в начало строки и нажмите <DEL>. Это соединит
337 текущую строку с предыдущей.
339 >> Нажмите <Return> для вставки символа новой строки, вместо удаленного
342 Помните, что многие команды Emacs могут получать счетчик повторения --
343 обычные символы не являются исключением. Вы можете вставлять по несколько
344 символов, используя счетчики повторений.
346 >> Попробуйте -- наберите C-u 8 * для вставки ********.
348 Вы уже научились основам набора текста в Emacs и исправления ошибок. Вы
349 также можете удалять слова и строки. Вот основные операции удаления:
351 <DEL> удалить символ перед курсором
352 C-d удалить символ следующий за (над) курсором
354 M-<DEL> "убить" слово, стоящее перед курсором
355 M-d "убить" слово, стоящее за курсором
357 C-k "убить" все от курсора до конца строки
358 M-k "убить" все до конца предложения
360 Заметьте, что <DEL> и C-d, вместе с M-<DEL> и M-d продолжает параллель,
361 начатую C-f и M-f (да, <DEL> -- это не настоящий управляющий символ, но не
362 нужно об этом волноваться). C-k и M-k, также как и C-e и M-e, продолжают
363 параллель между строками и предложениями.
365 Вы можете "убить" любую часть текста следующим методом. Переместитесь к
366 одному из концов выбранной области и нажмите C-<SPC> (<SPC> -- клавиша
367 пробела). Переместите курсор к другому концу текста, который вы собираетесь
368 "убить". По мере того, как вы будете это делать, Emacs будет подсвечивать
369 текст между курсором и точкой, где вы нажали C-<SPC>. Затем нажмите C-w. Эта
370 операция убьет весь текст между двумя указанными позициями.
372 >> Переместите курсор к букве В в начале предыдущего параграфа.
373 >> Наберите C-<SPC>. Emacs должен отобразить в нижней части экрана сообщение
374 "Mark set" (метка установлена).
375 >> Переместите курсор к букве о в слове "концов", на второй строке параграфа.
376 >> Нажмите C-w. Это удалит текст начиная с буквы В, и оканчивающийся перед
379 Отличие между "убить" (killing) и "удалить" (deleting) заключается в том,
380 что "убитый" текст может быть заново вставлен (в любой точке), в то время
381 как "удаленные" части не могут быть вставлены (вы однако можете отменить
382 удаление -- см. ниже). Вставка "убитого" текста называется "восстановление"
383 (yanking). В общем, команды, которые могут удалять большие части текста,
384 убивают этот текст (они настраиваются так, что вы можете восстановить
385 текст), в то время как команды, которые убирают только один символ, или
386 убирают только пустые строки и пробельные символы, выполняют операцию
387 удаления (так что вы не можете восстановить текст). В простейшем случае,
388 без дополнительного аргумента, команды <DEL> и C-d выполняют удаление.
389 Однако, если им передан аргумент, то они "убивают" текст.
391 >> Переместите курсор на начало не пустой строки. Теперь нажмите C-k, чтобы
392 убить текст в этой строке.
394 >> Нажмите C-k еще раз. Вы видите, что это действие убьет символ новой
395 строки, который следует за этой строкой.
397 Заметьте, что первое выполнение C-k убивает содержимое строки, а второй
398 вызов C-k убивает саму строку и поднимает вверх другие строки. C-k
399 обрабатывает числовой аргумент специальным образом -- убивает заданное
400 количество строк _И_ их содержимое. Это не просто повторение команды. C-u 2
401 C-k удалит две строки, а также завершающие их символы новой строки;
402 выполнение C-k два раза подряд этого не сделает.
404 Возврат убитого ранее текста называется "восстановление" (yanking). (Думайте
405 об этом, как о восстановлении или помещении назад некоторого взятого
406 текста). Вы можете восстановить убитый текст в месте удаления или в любой
407 другой точке редактируемого текста или даже в другом файле. Вы можете
408 восстановить текст несколько раз и получить несколько копий данного текста.
409 Некоторые редакторы называют операции "убить" и "восстановить" иначе:
410 "вырезать" (cutting) и "вставить" (pasting) (ознакомьтесь с глоссарием
411 (Glossary) в руководстве по Emacs).
413 Для восстановления убитого текста используется сочетание клавиш C-y. Данная
414 команда восстанавливает последний убитый текст в точке расположения курсора.
416 >> Попробуйте -- наберите C-y, чтобы вставить текст назад.
418 Помните, что если вы использовали несколько команд C-k подряд, то все убитые
419 строки будут сохранены вместе, так что C-y также восстановит их вместе.
421 >> Попробуйте -- нажмите C-k несколько раз.
423 Теперь вернем убитый текст:
425 >> Нажмите C-y. Теперь переместите курсор на несколько строк вниз, и снова
426 нажмите C-y. Вы увидите копию некоторого текста.
428 Что делать, если есть некоторый текст, который вы хотите вернуть назад, а
429 потом убить что-то еще? Одно нажатие C-y вернет только последний удаленный
430 текст. Но предыдущий текст не потерян -- вы можете его вернуть назад,
431 используя команду M-y. После того как вы вернули последний удаленный текст с
432 помощью C-y, нажмите M-y для замены этого восстановленного текста тем,
433 который был убит ранее. Выполняя M-y снова и снова, вы будете возвращать
434 ранее убитые части текста. Когда вы достигнете нужного текста, то вам не
435 нужно ничего делать, чтобы сохранить его. Просто продолжайте работать,
436 оставив восстановленный текст там, где он есть.
438 Нажимая M-y достаточное число раз, вы можете вернуться в начальную точку
439 (наиболее раннее удаление).
441 >> Убейте строку, переместите курсор и убейте еще одну строку. Затем
442 используйте C-y для восстановления второй убитой строки. Затем нажмите
443 M-y, и она будет заменена первой убитой строкой. Нажмите M-y еще
444 несколько раз, чтобы увидеть что вы получаете. Продолжайте выполнять эту
445 команду до тех пор, пока вторая убитая строка не будет восстановлена
446 снова. Если вам хочется, то вы можете задавать положительные и
447 отрицательные аргументы для команды M-y.
453 Если вы сделали изменения в тексте, и решили, что это была ошибка, то вы
454 можете отменить изменения с помощью команды "отмена" (undo), которая
455 привязана к сочетанию клавиш С-/.
457 Обычно, C-/ отменяет изменения, сделанные одной командой; если повторить
458 C-/ несколько раз подряд, то каждый раз будет отменяться еще одна команда.
460 Но есть два исключения: не учитываются команды не изменяющие текст (сюда
461 включаются команды перемещения курсора и прокрутки текста), а команды
462 вставки символов собираются в группы до 20 символов. (Это уменьшает число
463 нажатий C-/, которые вам нужно будет набрать для отмены ввода текста).
465 >> Убейте эту строку с помощью C-k, а затем наберите C-/, и строка должна
468 C-_ -- это еще команда отмены; она работает точно так же, как и C-/. На
469 некоторых текстовых терминалах, набор C-/ в действительности приводит к
470 отправке C-_. Кроме того, вы можете использовать C-x u для выполнения этой
471 же операции, но эту команду менее удобно набирать
473 Числовой аргумент для C-/, C-_ или C-x u используется как счетчик повторений.
475 Вы можете отменить удаление текста точно так же, как и отмену "убития"
476 текста. Отличие между убийством и удалением чего-либо заключается в том,
477 что вы можете восстановить убитый текст с помощью команды C-y; но для
478 команды отмены нет никакой разницы между этими операциями.
483 Для того, чтобы сохранить отредактированный текст вы должны поместить его в
484 файл. Иначе он исчезнет, когда вы закончите работу Emacs. Чтобы поместить
485 ваш текст в файл, вы должны "найти (открыть)" (find) файл до ввода
486 текста. (Эту операцию также называют "посетить" (visiting) файл).
488 Открыть файл означает что вы видите его содержимое в Emacs. Это практически
489 также как редактирование самого файла. Однако, ваши изменения, сделанные с
490 помощью Emacs, не будут сохранены, пока вы не сохраните файл. Так что вы
491 можете не оставлять частично измененный файл в системе, если вы не хотите
492 его сохранять. Даже когда вы сохраняете файл, то Emacs оставляет
493 оригинальный файл, но с другим именем, на случай, если вы решите что ваши
494 изменения были ошибкой.
496 Если вы посмотрите в нижнюю часть экрана, то вы увидите строку, которая
497 начинается с тире, и начало которой выглядит примерно так " -:--- TUTORIAL.ru".
498 Эта часть экрана всегда показывает имя открытого вами файла. Итак, сейчас у
499 вас открыт файл с именем "TUTORIAL.ru", который является вашей персональной
500 копией учебника Emacs. Когда вы открываете файл в Emacs, имя этого файла
501 появится в этой строке.
503 Одной из вещей, которые вам нужно знать о команде открытия файла -- это то,
504 что вы должны ввести имя файла, который нужно открыть. Такие команды мы
505 называем командами, "читающими аргумент" (в нашем случае аргументом является
506 имя файла). После ввода команды
508 C-x C-f Открыть (найти) файл
510 Emacs попросит вас ввести имя файла. Имя файла набирается в нижней строке
511 экрана. Нижняя строка называется мини-буфером когда она используется для
512 ввода данных. Вы можете использовать обычные команды редактирования Emacs
513 для ввода имени файла.
515 Когда вы вводите имя файла (или любую другую информацию в мини-буфере), вы
516 можете отменить текущую команду нажав C-g.
518 >> Нажмите C-x C-f, а затем нажмите C-g. Это действие отменит ввод данных в
519 мини-буфере, и заодно и команду C-x C-f, которая использовала мини-буфер
520 для ввода аргумента. В итоге, вы не открыли никакого файла.
522 Когда вы завершите ввод имени файла, нажмите <Return>. Мини-буфер исчезнет и
523 команда C-x C-f выполнит работу по открытию указанного вами файла.
525 А мгновением позже содержимое файла появится на экране, и вы сможете его
526 редактировать. Когда вы захотите сохранить изменения, наберите команду
528 C-x C-s Сохранить файл
530 Эта команда скопирует текст из Emacs в файл. В первый раз, когда вы это
531 сделаете, Emacs переименует оригинальный файл в файл с новым именем, так что
532 он не будет потерян. Имя файла с предыдущим содержимым получается
533 добавлением символа "~" к оригинальному имени файла.
535 Когда сохранение завершится, Emacs отобразит имя сохраненного файла. Вы
536 должны сохранять изменения достаточно часто, чтобы не потерять внесенные
537 изменения, если система вдруг "рухнет" (см. раздел "Автоматическое
540 >> Наберите C-x C-s TUTORIAL.ru <Return>.
541 Эта команда должна сохранить вашу копию учебника в файле TUTORIAL.ru. В
542 нижней строке экрана должна появиться надпись "Wrote ...TUTORIAL.ru".
544 Вы можете открыть существующий файл для просмотра или редактирования. Вы
545 также можете открыть файл, который еще не существует. Таким образом вы
546 можете создать файл с помощью Emacs: откройте несуществующий файл (Emacs
547 покажет его пустым) и вводите в него текст. Когда вы выполните команду
548 сохранения файла в первый раз, Emacs создаст настоящий файл с набранным
549 вами текстом. Далее, как вы поняли, вы будете редактировать уже существующий
556 Если вы откроете еще один файл с помощью C-x C-f, то предыдущий файл
557 остается внутри Emacs. Вы можете переключиться назад к предыдущему файлу,
558 открыв его снова с помощью C-x C-f. Таким образом вы можете загрузить
559 большое количество файлов в Emacs.
561 Emacs хранит текст каждого файла в объекте, называемом "буфер" (buffer).
562 Открытие файла создает новый буфер внутри Emacs. Чтобы увидеть список
563 буферов, созданных в текущем сеансе Emacs, наберите
565 C-x C-b Отобразить список буферов
567 >> Попробуйте выполнить C-x C-b.
569 Мы видим, что каждый буфер имеет имя и может иметь связанное с ним имя
570 файла, содержимое которого хранится в данном буфере. ЛЮБОЙ текст, который вы
571 видите в окне Emacs, всегда является частью какого-либо буфера.
573 >> Наберите C-x 1, чтобы избавиться от списка буферов.
575 Когда у вас есть несколько буферов, только один из них является "текущим" в
576 конкретный момент времени. Это тот буфер, который вы редактируете. Если вы
577 хотите редактировать другой буфер, то вы должны "переключиться" в него.
578 Если вы хотите переключиться в буфер, связанный с файлом, то вы можете
579 открыть этот файл снова с помощью C-x C-f. Но есть более простой способ --
580 использовать команду C-x b. В качестве аргумента для данной команды вы
581 должны указать имя буфера.
583 >> Наберите C-x b foo <Return> для переключения в буфер "foo". Затем
584 наберите C-x b TUTORIAL.ru <Return> для возвращения в буфер с учебником.
586 Чаще всего имя буфера совпадает с именем файла (только без имени каталога).
587 Но иногда это не так. Список буферов, который вы создаете с помощью команды
588 C-x C-b, показывает вам имя буфера и имя файла для каждого буфера.
590 Некоторые буфера не относятся к файлам. Например, буфер с именем "*Buffer
591 List*", который создан с помощью C-x C-b и содержит список всех буферов, не
592 связан ни с каким файлом. Буфер с данным учебником также сначала не был
593 связан с файлом, но сейчас уже связан, поскольку в предыдущем разделе мы
594 использовали C-x C-s для сохранения его в файле.
596 Буфер с именем "*Messages*" также не связан ни с каким файлом; он содержит
597 сообщения, которые отображаются в самой нижней строке окна Emacs в течение
598 текущего сеанса работы с Emacs.
600 >> Наберите C-x b *Messages* <Return> для просмотра содержимого буфера
601 сообщений. Затем наберите C-x b TUTORIAL.ru <Return> для возврата к
604 Если вы изменили текст одного файла, а затем открываете другой, то текст в
605 первом буфере остается не сохраненным. Изменения останутся внутри Emacs, в
606 буфере, связанном с файлом. Создание или редактирование следующего буфера не
607 влияет на первый буфер. Это очень удобно, но имейте в виду, что вам нужно
608 иметь удобный способ сохранить буфер первого файла. Было бы неприятно каждый
609 раз возвращаться назад используя C-x C-f и потом использовать C-x C-s для
610 сохранения данных. Поэтому существует команда
612 C-x s Сохранить некоторые буфера. (Save some buffers)
614 C-x s запрашивает у вас подтверждение о сохранении для каждого буфера,
615 который содержит не сохраненные изменения. Для каждого такого буфера у вас
616 запросят: сохранять или не сохранять изменения.
618 >> Вставьте строку текста, потом наберите C-x s.
619 Должен появиться запрос: сохранять ли буфер с именем TUTORIAL.ru.
620 Ответьте на запрос утвердительно нажатием клавиши "y".
623 * РАСШИРЕНИЕ НАБОРА КОМАНД
624 --------------------------
626 У Emacs очень много команд, и они все не могут быть назначены на control- и
627 meta- сочетания. Emacs решает эту проблему, используя X-команду (eXtend,
628 расширять). Есть два варианта:
630 C-x Расширение с помощью ввода префикса. За ним следует один символ.
631 M-x Расширение набора команд с помощью их именования. За ним
634 Это полезные команды, но они используются менее часто, чем те команды,
635 которые мы уже изучили. Вы уже видели некоторые из этих команд. Например,
636 команды работы с файлами: C-x C-f -- открыть файл, и C-x C-s -- сохранить
637 файл. Другой пример -- команда завершения работы Emacs: C-x C-c. (Не
638 волнуйтесь о том, что вы потеряете сделанные изменения, C-x C-c предлагает
639 сохранить изменения перед выходом из Emacs).
641 Если вы работаете на графическом дисплее, то вам не нужно выполнять
642 специальных команд чтобы переключится от Emacs к другой программе. Вы можете
643 сделать это используя мышь или соответствующее команды операционной системы.
644 Но когда вы используете текстовый терминал, который способен показывать
645 только одну программу в конкретный момент времени, то для переключения к
646 другой программе вам понадобится "приостановить" (suspend) Emacs.
648 C-z -- это команда *временного* выхода из Emacs. Вы можете позже вернуться в
649 ту же сессию Emacs. Когда Emacs запускается на текстовом терминале, команда
650 C-z "приостанавливает" (suspend) Emacs, т.е. она возвращает вас в командный
651 процессор (shell), но не завершает Emacs. В большинстве командных
652 процессоров вы можете вернуться в Emacs с помощью команды `fg' или `%emacs'.
654 Чтобы покинуть Emacs используйте C-x C-c. Это сочетание также используется,
655 чтобы выйти из Emacs, вызванного из почтовой программы или другой утилиты.
657 Существует много команд с префиксом C-x. Вы уже изучили следующие команды:
660 C-x C-s Сохранить файл
661 C-x s Сохранить некоторые буфера
662 C-x C-b Получить список буферов
663 C-x b Переключиться в буфер
664 C-x C-c Завершить Emacs
665 C-x 1 Удалить все окна, кроме текущего
666 C-x u Отмена изменений
668 Именованные расширенные команды -- это команды, которые используются гораздо
669 реже, или используются только в определенных режимах. В качестве примера
670 можно привести команду replace-string, которая заменяет одну строку на
671 другую во всем тексте. Когда вы наберете M-x, Emacs предложит вам ввести имя
672 команды; в нашем случае это команда "replace-string". Наберите лишь
673 "repl-s<TAB>", и Emacs дополнит имя. (<TAB> -- это клавиша табуляции, обычно
674 находящаяся над клавишами CapsLock или Shift в левой части клавиатуры.)
675 Подтвердите имя нажатием <Return>.
677 Команда replace-string требует два аргумента -- строку, которая будет
678 заменена, и строку, на которую нужно заменить. Вы должны завершать каждый
679 аргумент вводом <Return>.
681 >> Переместите курсор к пустой строке на две строчки ниже этой.
682 Наберите M-x repl-s<Return>файл<Return>файлы<Return>.
684 Заметьте, как эта строчка изменится: вы замените слово файл
685 словом "файлы" везде, где оно встретится, ниже позиции курсора.
688 * АВТОМАТИЧЕСКОЕ СОХРАНЕНИЕ
689 ---------------------------
691 Если вы измените файл, но не сохраните его, то в случае "падения" системы вы
692 можете потерять информацию. Чтобы защитить вас от этого, Emacs периодически
693 сохраняет каждый файл, который вы редактируете. Автоматически сохраняемый
694 файл имеет имя с символами "#" в начале и в конце. Например, если ваш файл
695 называется "hello.c", то автоматически сохраненный файл будет называться
696 "#hello.c#". Когда вы сохраните файл обычным способом, Emacs удаляет
697 автоматически сохраненный файл.
699 Если система зависла, то вы можете восстановить ваши изменения, которые были
700 сохранены автоматически, путем открытия нужного файла (файла, который вы
701 редактировали, а не того, что бы сохранен автоматически) и затем набрав M-x
702 recover-file<Return>. Когда у вас запросят подтверждение, наберите
703 yes<Return>, чтобы восстановить автоматически сохраненные данные.
706 * ОБЛАСТЬ ЭХА (ECHO AREA)
707 -------------------------
709 Если Emacs видит, что вы медленно набираете команды из нескольких сочетаний
710 клавиш, то он покажет их вам в нижней части экрана, в области называемой
711 "область эха" (echo area). Область эха -- это самая нижняя строка окна
715 * СТРОКА СОСТОЯНИЯ (MODE LINE)
716 -----------------------------
718 Строка сразу над областью эха называется "строкой состояния" (mode
719 line). Выглядит эта строка примерно так:
721 --:** TUTORIAL.ru 63% L749 (Fundamental)-----------------------
723 Эта строка сообщает полезную информацию о состоянии Emacs и текста, который
726 Вы уже знаете, что означает имя файла -- это файл, который вы открыли. NN%
727 показывает вашу текущую позицию в тексте. Это означает что NN процентов
728 текста находятся выше начала окна. Если отображается начало текста, вы
729 увидите "Top" вместо "0%". Если отображается конец текста, то будет
730 отображено "Bot". Если текст настолько мал, что вмещается в один экран, то
731 строка состояния сообщит "All".
733 Буква L и цифры показывают позицию другим способом -- они показывают номер
734 строки в которой находится курсор.
736 Звездочки в начале строки означают, что вы изменяли текст. Сразу после
737 открытия или сохранения файла эта часть строки будет содержать не звездочки,
740 Часть строки состояния внутри скобок сообщает вам о режиме редактирования,
741 который вы сейчас используете. Стандартный, или базовый, режим -- Fundamental,
742 он используется и в данном учебнике. Это пример "основного режима" ("major
745 Emacs имеет много различных основных режимов. Некоторые из режимов
746 используются для редактирования текста на различных языках и/или различных
747 видов текста, такие как Lisp-режим, Text-режим и пр. В каждый момент
748 времени действует только один основной режим, и его название вы можете найти
749 в скобках -- там, где сейчас находится слово "Fundamental" (базовый).
751 Каждый основной режим заставляет некоторые команды вести себя по разному.
752 Например, имеются команды создания комментариев в программе, и поскольку в
753 каждом языке программирования комментарии записываются по своему, то и
754 каждый основной режим вставляет их по разному. Каждый основной режим имеет
755 именованную команду, которая включает его. Например, M-x fundamental-mode --
756 это команда, которая включает базовый (Fundamental) режим.
758 Если вы редактируете текст на естественном языке, например, как этот файл,
759 то вы, вероятно должны переключиться в режим Text.
761 >> Наберите M-x text mode<Return>.
763 Не волнуйтесь, ни одна из выученных вами команд Emacs не изменилась. Но вы
764 можете заметить, что M-f и M-b теперь рассматривают апострофы как часть
765 слова. Ранее, в базовом режиме (Fundamental mode), M-f и M-b воспринимали
766 апострофы как разделители слов.
768 Как правило, основные режимы производят незначительные изменения:
769 большинство команд "работает одинаково" в каждом из режимов, но их действие
770 отличается какой-нибудь мелочью.
772 Для просмотра документации о текущем основном режиме, нажмите C-h m.
774 >> Используйте C-l C-l чтобы расположить эту строку вверху экрана.
775 >> Наберите C-h m, чтобы посмотреть отличия Text-режима от базового.
776 >> Наберите C-x 1, чтобы убрать документацию с глаз долой :)
778 Основной режим называется основным потому, что также существуют
779 дополнительные (minor) режимы. Дополнительные режимы не являются
780 альтернативами основным, они только немного изменяют их поведение. Каждый
781 дополнительный режим включается/выключается независимо от других
782 дополнительных режимов и независимо от вашего основного режима. Вы можете
783 использовать основной режим без дополнительных, или с любой комбинацией
784 нескольких дополнительных режимов.
786 Один из дополнительных режимов очень полезен, особенно для редактирования
787 текста -- это режим автозаполнения (Auto Fill mode). Когда этот режим
788 включен, то Emacs автоматически разрывает строку между словами в тех
789 случаях, когда вставленный текст делает строку слишком длинной.
791 Вы можете включить режим автозаполнения, набрав M-x auto-fill-mode<Return>.
792 Когда этот режим включен, его можно выключить с помощью той же команды --
793 M-x auto-fill-mode<Return>. Если режим включен, то такая команда его
794 выключит, если выключен, то включит. Мы говорим что команда "переключает
797 >> Наберите M-x auto-fill-mode<Return>. Затем вводите строку из слов "фыва "
798 пока не увидите, как она разделится на две строки. Эти пробелы между
799 словами необходимы, потому что режим автозаполнения разбивает строки
802 Граница разбиения обычно равна 70-ти символам, но вы можете изменить ее
803 используя команду C-x f. Вы должны задать границу в виде числового
804 аргумента для этой команды.
806 >> Введите C-x f с аргументом 20 (C-u 2 0 C-x f).
807 Затем введите какой-нибудь текст и посмотрите как Emacs заполняет строки
808 по 20 символов в каждой. Верните значение границы равное 70 назад,
809 используя команду C-x f.
811 Если вы сделали изменения в середине параграфа, то автозаполнение не
812 переформатирует текст автоматически.
813 Чтобы переформатировать параграф, наберите M-q (META-q), когда курсор
814 находится внутри параграфа.
816 >> Переместите курсор в предыдущий параграф, и нажмите M-q.
822 Emacs умеет искать строки (строка -- непрерывная группа символов) вперед или
823 назад по тексту. Поиск строки -- это команда перемещения курсора -- она
824 перемещает курсор в следующую точку, где найдена искомая строка.
826 Команда поиска в Emacs является инкрементальной. Это означает, что поиск
827 происходит по мере того, как вы набираете искомую строку.
829 Команда, начинающая поиск вперед -- C-s, а C-r ищет назад. ПОДОЖДИТЕ! Не
830 нужно пробовать прямо сейчас.
832 Когда вы нажмете C-s, вы увидите строку "I-search", появившуюся в области
833 эха. Вам сообщается, что Emacs ждет ввода строки, которую вы хотите найти.
834 <Return> завершает поиск.
836 >> Теперь нажмите C-s для начала поиска. Медленно, по одной букве, набирайте
837 слово 'курсор', останавливаясь после каждой введенной буквы и замечая, что
838 происходит с курсором.
839 Сейчас вы нашли первое вхождение слова "курсор".
840 >> Нажмите C-s снова, чтобы найти следующее вхождение слова "курсор".
841 >> Теперь нажмите <DEL> четыре раза и проследите за перемещениями курсора.
842 >> Нажмите <Return> для завершения поиска.
844 Вы заметили, что произошло? Emacs в режиме инкрементального поиска пытался
845 переходить к строкам, совпадающим с набираемой вами строкой. Чтобы перейти
846 к следующему вхождению слова 'курсор', просто нажмите C-s снова. Если больше
847 нет вхождений, то Emacs издаст звуковой сигнал и сообщит, что ваш поиск не
848 удался ("failing"), C-g также завершает поиск.
850 Если вы во время инкрементального поиска нажмете <DEL>, то поиск "вернется"
851 к предыдущему найденному месту. Если вы наберете <DEL> сразу после того как
852 вы нажали C-s для перемещения к следующей позиции, то <DEL> переместит к
853 предыдущему вхождению. Если предыдущей позиции не было, то <DEL> удалит
854 последний символ в строке поиска. Например, предположим, что вы набрали "к",
855 поиск перейдет к первому вхождению символа "к". Теперь, если вы наберете
856 "у", курсор перейдет к первому вхождению "ку". Нажатие <DEL> удалит символ
857 "у" из строки поиска, и курсор вернется к первому вхождению "к".
859 Если вы во время поиска введете control- или meta- сочетание клавиш (за
860 некоторыми исключениями, например, такими, как C-s и C-r, которые имеют
861 специальное значение в поиске), то поиск прекратится.
863 C-s начинает поиск и ищет любые вхождения искомой строки ПОСЛЕ текущей
864 позиции курсора. Если вы хотите найти что-то ранее в тексте, то нажмите
865 C-r. Все, что мы говорили о C-s, применимо и к C-r, только C-r ищет в
866 противоположном направлении.
869 * МНОЖЕСТВО ОКОН (MULTIPLE WINDOWS)
870 -----------------------------------
872 Одной из приятных возможностей Emacs является то, что вы можете одновременно
873 отображать на экране несколько окон. (Заметьте, что Emacs использует термин
874 "фрейм" (frame), описанный в следующем разделе, для того, что другие
875 приложения называют окна. В Руководстве Emacs имеется подробный глоссарий).
877 >> Переместите курсор на эту строку и наберите C-l C-l.
879 >> Теперь наберите C-x 2, что разделит экран на два окна.
880 Оба окна отображают учебник. Курсор остался в верхнем окне.
882 >> Нажмите C-M-v для прокрутки нижнего окна.
883 (если у вас нет клавиши META (Alt), то нажмите <ESC> C-v.)
885 >> Нажмите C-x o ("o" от слова "other" -- другое) для перемещения курсора в
887 >> Используйте C-v и M-v в нижнем окне, для прокрутки текста.
888 Продолжите чтение этой инструкции в верхнем окне.
890 >> Снова нажмите C-x o, чтобы переместить курсор назад в верхнее окно.
891 Курсор в верхнем окне там же, где и был до того.
893 Вы можете продолжать использовать C-x o для переключения между окнами.
894 "Выбранное окно", где производится редактирование -- это окно с видимым
895 курсором, который мигает когда вы не набираете текст. Остальные окна
896 сохраняют собственные позиции курсора. Если вы используете Emacs в
897 графической среде, то эти курсоры будут отображаться как немигающие полые
900 Команда C-M-v очень удобна, когда вы редактируете текст в одном окне, а
901 второе используете в качестве справочника. С помощью C-M-v вы можете
902 прокручивать текст в другом окне не покидая текущего окна.
904 C-M-v -- пример CONTROL-META сочетания клавиш. Если у вас есть клавиша META
905 (или Alt), то вы можете набрать C-M-v, нажав одновременно CONTROL и META и,
906 не отпуская их, нажать v. Не важно, какая из клавиш, CONTROL или META, будет
907 нажата первой, поскольку обе эти клавиши изменяют набираемый вами символ.
909 Если у вас нет клавиши META, и вместо нее вы используете <ESC>, то порядок
910 нажатия важен: сначала вы должны нажать <ESC>, а затем CTRL-v, поскольку
911 CONTROL-<ESC> v не будет работать. Это происходит потому, что <ESC> сама
912 является символом, а не модифицирующей клавишей.
914 >> Нажмите C-x 1 (в верхнем окне), чтобы избавиться от нижнего окна.
916 (Если бы вы нажали C-x 1 в нижнем окне, то вы бы избавились от верхнего.
917 Понимайте эту команду как "Оставить только одно окно -- то, в котором я
920 Вам не нужно отображать один и тот же буфер в обоих окнах. Если вы
921 используете C-x C-f, чтобы открыть файл в одном окне, другое останется без
922 изменения. Вы можете независимо открывать файлы в каждом окне.
924 Есть и другой путь использовать два окна, отображающих разные файлы:
926 >> Наберите C-x 4 C-f, и введите имя одного из ваших файлов. Завершите ввод
927 нажатием <Return>. Заметьте, что выбранный файл появился в нижнем окне.
928 Курсор перешел туда же.
930 >> Наберите C-x o, чтобы вернуться в верхнее окно, и затем C-x 1, чтобы
934 * МНОЖЕСТВО ФРЕЙМОВ (MULTIPLE FRAMES)
935 -------------------------------------
937 Emacs также может создавать множество "фреймов" (frames). Фрейм -- это то,
938 что мы называем коллекцией окон, вместе со строкой меню, полосами прокрутки,
939 областью эхо, и т.д. На графических дисплеях, то что в Emacs называется
940 "фрейм", большинство других приложений называют "окно". В графической среде
941 одновременно может быть отображено несколько фреймов. А на текстовых
942 терминалах, может быть показан только один фрейм в конкретный момент
945 >> Наберите M-x make-frame <Return>.
946 Вы увидите что новый фрейм появился на экране.
948 В новом фрейме вы можете делать все то же самое что и в оригинальном
949 фрейме. Между ними нет особых отличий.
951 >> Наберите M-x delete-frame <Return>.
952 Эта команда удалит текущий фрейм.
954 Вы также можете удалить фрейм используя стандартные методы вашей графической
955 среды (часто путем нажатия кнопки "X" в верхней части фрейма). Если вы
956 таким способом удалите последний имеющийся фрейм Emacs, то это приведет к
957 завершению работы Emacs.
960 * РЕКУРСИВНЫЕ УРОВНИ РЕДАКТИРОВАНИЯ (RECURSIVE EDITING LEVELS)
961 --------------------------------------------------------------
963 Иногда вы будете попадать в так называемые "рекурсивные уровни
964 редактирования". На это указывают прямоугольные скобки в строке состояния,
965 окружающие обычные скобки вокруг имени основного режима. Например, вы
966 увидите [(Fundamental)] вместо (Fundamental).
968 Чтобы выйти из рекурсивных уровней редактирования, нажмите <ESC> <ESC>
969 <ESC>. Это многоцелевая команда "выхода". Вы также можете использовать ее
970 как для уничтожения лишних окон, так и для выхода из мини-буфера.
972 >> Нажмите M-x, чтобы попасть в мини-буфер, а затем нажмите <ESC> <ESC>
973 <ESC>, чтобы покинуть его.
975 Вы не можете использовать C-g для выхода из рекурсивных уровней
976 редактирования. Это потому, что C-g используется для отмены команд и
977 аргументов ВНУТРИ рекурсивных уровней редактирования.
980 * КАК ПОЛУЧИТЬ ДОПОЛНИТЕЛЬНУЮ ПОМОЩЬ
981 ------------------------------------
983 В этом учебнике мы попытались снабдить вас достаточной информацией для
984 начала использования Emacs. В Emacs очень много разной функциональности, и
985 представить все это здесь не представляется возможным. Однако, возможно вы
986 захотите узнать больше о возможностях Emacs. Emacs предоставляет команды
987 для чтения документации о командах Emacs. Все команды "справки" (help)
988 начинаются с сочетания CONTROL-h, который является "символом справки".
990 Чтобы использовать справку, нажмите C-h, а затем -- символ, который
991 расскажет, какой именно вид справки вы хотите получить. Если вы
992 ДЕЙСТВИТЕЛЬНО растерялись, наберите C-h ?, и Emacs расскажет вам о том,
993 какую справку он может вам предоставить. Если вы нажали C-h и передумали
994 обращаться к справке, то просто нажмите C-g, чтобы отменить эту команду.
996 (Если C-h не отображает справку внизу экрана, то попробуйте вместо этого
997 нажать клавишу F1 или набрать M-x help RET).
999 Одна из самых главных функций справки -- C-h c. Нажмите C-h, а затем c и
1000 символ команды или последовательность, и Emacs отобразит краткое описание
1003 >> Нажмите C-h c C-p.
1005 Сообщение должно выглядеть примерно так:
1007 C-p runs the command previous-line
1008 (C-p выполняет команду previous-line {предыдущая строка})
1010 Вам сообщают "имя функции". Поскольку имена функций выбраны так, чтобы
1011 показать, что именно команда делает, то они могут служить короткой
1012 документацией -- достаточно чтобы напомнить вам об уже выученных командах.
1014 Многосимвольные сочетания клавиш, такие как C-x C-s и (если у вас нет клавиши
1015 META или EDIT или ALT) <ESC> v также будут доступны для получения справки с
1018 Вы можете получить больше информации о сочетании клавиш используя C-h k вместо C-h c.
1020 >> Наберите C-h k C-p.
1022 В отдельном окне Emacs вы увидите описание функции, а также ее имя. Когда вы
1023 завершите чтение, нажмите C-x 1, чтобы избавиться от окна с текстом справки.
1024 Не обязательно нажимать C-x 1 сразу: вы можете сначала выполнить какие-либо
1025 изменения текста во время просмотра текста справки, и только затем нажать
1028 Есть еще несколько полезных функций, доступных через C-h:
1030 C-h f Описывает функцию. Вам необходимо набрать имя функции.
1032 >> Попробуйте набрать C-h f previous-line<Return>.
1033 Это отобразит информацию Emacs о функции, которая выполняется командой
1036 Аналогичная команда C-h v отображает документацию о переменных, включая те,
1037 значение которых вы можете изменить для настройки поведения Emacs. Вам нужно
1038 набрать имя переменной, когда Emacs запросит его.
1040 C-h a (Command Apropos). Введите ключевое слово и Emacs покажет вам
1041 список всех команд и функций, имена которых содержат это слово.
1042 Эти команды могут быть запущены с помощью Meta-x.
1043 Для некоторых команд, эта команда также покажет последовательности
1044 клавиш которые могут использоваться для их запуска.
1046 >> Наберите C-h a file<Return>.
1048 Это отобразит в другом окне список всех команд M-x, у которых в именах
1049 содержится слово "file". Также в списке кроме таких команд, как find-file,
1050 вы увидите соответствующие символьные команды, такие как C-x C-f.
1052 >> Наберите C-M-v для прокрутки окна справки. Выполните это несколько раз.
1054 >> Наберите C-x 1 для удаления окна справки.
1056 C-h i Читать интерактивные руководства (команда Info). Эта команда
1057 переходит в специальный буфер с именем `*info*', где вы можете
1058 читать интерактивные руководства для пакетов, установленных в вашей
1059 системе. Наберите m emacs <Return> для чтения руководства по
1060 Emacs. Если вы никогда ранее не использовали Info, то наберите ? и
1061 Emacs откроет учебник по возможностям режима Info. Однажды
1062 ознакомившись с этим учебником, вы должны использовать руководство
1063 Emacs Info в качестве основной документации.
1066 * ДОПОЛНИТЕЛЬНЫЕ ВОЗМОЖНОСТИ
1067 ----------------------------
1069 Вы можете узнать больше об Emacs, читая руководство по нему, книги или
1070 интерактивный справочник (используйте меню Help или наберите F10 h r). Вам
1071 особенно понравятся две функции -- дополнение имен (completion), которое
1072 сокращает количество нажимаемых клавиш, и dired, который упрощает работу с
1075 Дополнение имен используется для того, чтобы избежать набора лишних
1076 символов. Например, если вы хотите переключиться в буфер *Messages*, то вы
1077 можете набрать C-x b *M<Tab> и Emacs дополнит остаток имени буфера,
1078 поскольку он может определить его из того, что вы уже набрали. Дополнение
1079 имен описано в Info-версии руководства по Emacs в разделе "Completion".
1081 Dired позволяет вам отображать список файлов в каталоге (а также
1082 подкаталогах, в зависимости от настройки), перемещаться по списку файлов,
1083 открывать их, переименовывать, удалять и выполнять прочие действия над
1084 файлами. Dired описан в Info-версии руководства по Emacs в разделе "Dired".
1086 В руководстве также описаны остальные возможности Emacs.
1092 Для выхода из Emacs, используется сочетание клавиш C-x C-c.
1094 Этот учебник должен быть понятен всем новым пользователям, но если вы
1095 найдете что-нибудь неясное, не нужно сидеть и порицать себя -- жалуйтесь!
1098 * УСЛОВИЯ РАСПРОСТРАНЕНИЯ
1099 -------------------------
1101 Этот учебник произошел из длинной серии учебников Emacs, начатой с однажды
1102 написанного Stuart Cracraft учебника для оригинального Emacs.
1104 Эта версия учебника, как и GNU Emacs, защищена правами копирования
1105 (copyrighted) и приходит с ограничениями распространения копий со
1106 следующими соглашениями:
1108 Copyright (C) 1985, 1996, 1998, 2001-2012 Free Software Foundation, Inc.
1110 Permission is granted to anyone to make or distribute verbatim copies
1111 of this document as received, in any medium, provided that the
1112 copyright notice and permission notice are preserved,
1113 and that the distributor grants the recipient permission
1114 for further redistribution as permitted by this notice.
1116 Permission is granted to distribute modified versions
1117 of this document, or of portions of it,
1118 under the above conditions, provided also that they
1119 carry prominent notices stating who last altered them.
1121 Условия распространения самого Emacs более сложные, но примерно в том же духе.
1122 Пожалуйста, прочтите файл COPYING и затем раздайте копию GNU Emacs вашим
1123 друзьям. Помогите уничтожить обструкционизм в области программного
1124 обеспечения ("владение"), используя, создавая и распространяя свободное
1125 программное обеспечение!
1127 // жду замечаний и исправления ошибок по адресу alexott@gmail.com.
1130 ;;; Local Variables:
1132 ;;; sentence-end-double-space: nil