Основные термины Emacs

Буфер — это основная единица редактирования; один буфер соответствует одному куску редактируемого текста. Вы можете иметь несколько буферов, но в каждый конкретный момент вы редактируете только один выбранный буфер. При этом, разумеется, если вы используете несколько окон, то видимыми могут быть несколько буферов. Чаще всего буферы обращаются к какому-либо файлу, считывая данные из файла в буфер, или записывая данные из буфера в файл. Просто имейте в виду, что при работе с файлами буфер означает «копию файла, которая находится в памяти в данный момент».

Точка вставки (point) — это место в буфере, в котором происходит вставка или удаление данных. Считается, что точка вставки находится между двумя знаками, а не на каком-то одном из них. Курсор терминала показывает положение точки вставки.

В Emacs блок текста (т.е. фрагмент текущего буфера) между точкой и меткой называется областью (region). Метка указывает на позицию в тексте. Она определяет один конец области, в то время как точка вставки находится на другом конце области. Многие команды работают с текстом целиком от точки вставки до метки. Каждый буфер имеет свою метку.

Окно в Emacs — это область экрана, в которой отображается буфер.

Фрейм (frame) — это отдельное окно используемой оконной системы, в котором отображаются одно или несколько окон Emacs. При этом несколько фреймов, открытых одновременно, являются частью одного сеанса Emacs.

Команды Emacs

Если в вашей системе установлен Emacs, то вы можете его запустить, набрав emacs в командной строке любого терминала. Как и Vim, Emacs использует весь экран терминала, хотя интерфейс у него более богатый: вверху экрана находится строка с пунктами меню, под ней – окно для отображения и редактирования текста, которое заканчивается строкой режима, отображаются сведения о происходящем в окне. В самом низу экрана – строка минибуфера, используемая для диалога с пользователем, в частности для отображения и редактирования вводимых команд.

В Emacs в отличии от Vi и Vim нет специального командного режима, но использован тот факт, что с клавиатуры можно вводить не только печатные, но и некоторые управляющие символы. Для этого используются несколько управляющих клавиш терминала (прежде всего Ctrl и Alt), нажатые в сочетании с различными текстовыми символами. Чтобы ввести такой символ, нужно нажать управляющую клавишу (например, Ctrl) и, удерживая ее, нажать клавишу с одним из печатных символов (например, x). Кроме того, в Emacs используется управляющая клавиша Meta. На тех терминалах, где она отсутствует, ее функции обычно передаются клавише Alt. На «настоящих» терминалах обычно не бывает ни Meta, ни Alt; из клавиатурных модификаторов присутствуют только Ctrl и Shift. Тогда на помощь приходит старая добрая ESC: нажатие ESC, а после нее – печатного символа (того же x) эквивалентно Meta x. Для лаконичной записи длинных клавиатурных комбинаций в сообществе пользователей Emacs сложилась особая традиция сокращенных обозначений. Клавишу Ctrl обозначают заглавной буквой C, MetaM.

Команда C-h? (набрать C-h и затем нажать “?”) – справка по командам помощи, C-h t – интерактивный учебник для начинающих пользователей Emacs, и C-h i – полное руководство по Emacs (в формате info). С ключа C-x начинаются основные команды Emacs, в частности, для работы с файлами и буферами. Чтобы завершить работу Emacs, нужно ввести C-x C-c.

Работа с файлами

В Emacs, как и в Vim, пользователь редактирует текст не в самом файле, а в буфере. Если нужно создать новый файл – его следует открыть командой C-x C-f, точно так же открывается для редактирования уже существующий файл.

С текстом в минибуфере можно обращаться почти так же, как с командной строкой shell или Vim: редактировать, использовать автодополнение (клавишей Tab), перемещаться по истории стрелочками вверх/вниз. Сохранить сделанные изменения можно командой C-x Cs.

В Emacs несколько видов поиска: существуют отдельные команды для поиска строки и поиска по регулярному выражению. Если требуется найти ближайшее употребление конкретного слова, удобнее всего воспользоваться наращиваемым поиском по команде C-s. Поиск в обратном направлении (к началу буфера) осуществляется командой C-r.

Изменение текста

В Emacs есть множество команд, позволяющих пользователю выполнять меньше действий при редактировании текста. Если пользователь осознает, что набрал что-то неправильно, он может разом удалить последнее слово (M-Del) или предложение (C-x Del). Emacs хранит не только последний удаленный фрагмент, но и все предыдущие, формируя список удалений. Только что уничтоженный текст можно вставить командой C-y.

Хорошо продуманы команды для перестановки частей текста вокруг точки: двух знаков (C-t), слов (M-t), строк (C-x C-t). Можно проверить написание отдельного слова, в котором находится точка (M-x $) или завершить недописанное слово, основываясь на орфографическом словаре (M-x Tab).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: