Організація екрану

На текстовому терміналі Emacs займає весь екран В системі X Windows Emacs створює для себе свої X-вікна Ми використовуємо термін фрейм для позначення всього текстового екрану або всього X-вікна, використовуваного Emacs Обидва види фреймів використовуються в Emacs однаково для відображення вашого тексту Зазвичай Emacs запускається тільки з одним фреймом, але при бажанні ви можете створити додаткові Див Глава 17 [Фрейми], с 147

Коли ви запускаєте Emacs, весь фрейм, за винятком першої та останньої рядки, відводиться для редагованого тексту Ця область називається вікном Перший рядок називається смужкою меню, а остання – Це особлива відлунняобласть або вікно мінібуфера, де зявляються запити, і куди ви можете ввести відповіді Подальші відомості про ці спеціальних рядках дивіться нижче

Текстове вікно може бути поділено по горизонталі або вертикалі на кілька інших вікон, кожне з яких може бути використано для окремого файлу (див Глава 16 [Вікна], с 141) У цьому посібнику слово вікно завжди позначає частину фрейму всередині Emacs

Те вікно, в якому знаходиться курсор, називається обраним вікном в ньому йде редагування Більшість команд Emacs неявно відносяться в текстом в обраному вікні (хоча команди миші як правило діють в тому вікні, в якому ви клацнули, незалежно від того, вибрано воно чи ні) Решта вікна існують просто для довідки, поки ви не виберете одне з них Якщо ви використовуєте кілька фреймів в системі X Windows, то передача фокусу введення деякого фрейму вибирає вікно в цьому фреймі

Останній рядок кожного текстового вікна називається рядком режиму, яка описує те, що відбувається в цьому вікні Вона виводиться в інверсному вигляді, якщо термінал підтримує це, і містить текст, який починається при старті Emacs з рядка

‘-: * Scratch *. Рядок режиму показує відомості про поточний стан, наприклад, який буфер показаний у вікні над нею, які основні та другорядні режими в ньому використовуються, і чи містить цей буфер збережені зміни

11  Точка

Курсор терміналу всередині Emacs показує позицію, в якій буде виконуватися команда редагування Це позиція називається точкою Багато команд Emacs переміщують точку по тексту, так що ви маєте можливість редагувати в будь-якому місці Ви також можете встановити точку, клацнувши першою кнопкою миші

Коли курсор вказує на знак, то слід думати, що точка знаходиться між двома знаками вона розташована перед знаком, над яким зявляється курсор Наприклад, якщо ваш текст виглядає як frob, а курсор знаходиться над b, то точка розташована між

‘O і b. Якщо ви вставите в цій позиції знак !’, То отримаєте fro B, з точкою між

‘!’ І b. Таким чином, курсор залишиться над b, як і раніше

Іноді говорять курсор, маючи на увазі точку, або говорять про команди руху точки як про команди руху курсора.

Термінали мають тільки один курсор, і коли відбувається процес виведення, курсор повинен знаходитися там, де йде набір Це не означає, що точка переміщається Це означає лише те, що Emacs може показати вам позицію точки, тільки коли термінал не працює

Якщо ви редагуєте в Emacs декілька файлів, кожен у своєму буфері, то всякий буфер має свою власну позицію точки Буфер, який не показується в даний час, запамятовує, де знаходиться точка, на випадок, якщо ви знову виведете його на екран

Коли фрейм розбитий на кілька вікон, кожне з них має свою власну позицію точки Курсор ж показує позицію точки в обраному вікні Цим способом ви також можете дізнатися, яке з вікон вибрано Якщо один і той же буфер зявляється більш ніж в одному вікні, то кожне з них має свою позицію точки

Якщо є кілька фреймів, кожен з них може відобразити один курсор Курсор у вибраному фреймі заповнений кольором курсор в інших фреймах – це порожня клітка, яка зявляється в тому вікні, яке було б обраним, якщо б ви передали фокус введення цього фрейму

Термін точка походить від назви знака .’, Який був командою TECO (мова, на якому був написаний первісний Emacs) для отримання значення величини, званої тепер точкою.

12  Ехообласть

Рядок внизу фрейма (під рядком режиму) називається лунаобластю Вона використовує-

ся для показу невеликих фрагментів тексту в декількох цілях

Ехо позначає відображення набираються вами знаків Поза Emacs, операційна систе-

ма зазвичай відображає весь ваш ввід Emacs управляє відлуння інакше

Emacs ніколи не повторює команди, що складаються з одиночного знака, а команди, що складаються з декількох, повторюються, тільки якщо ви зупиняєтеся в процесі їх набору Як тільки ви зупиняєтеся більш ніж на секунду в середині команди, всі знаки цієї команди відразу ж відображаються Це служить підказкою для закінчення команди Як тільки включається відлуння, закінчення команди відображається негайно в процесі набору Така поведінка призначене для того, щоб впевнений користувач отримував швидкий результат, в той же час це дозволяє невпевненим користувачам отримати максимум зворотного звязку Ви можете змінити цю поведінку, встановивши особливу змінну (див Розділ 117 [Змінні зображення], с 84)

Якщо команда не може бути виконана, вона в друкує луна-області повідомлення про помилку Повідомлення про помилку супроводжується звуковим сигналом або миготінням екрану Крім того, коли сталася помилка, будь набраний перед цим введення скидається

Деякі команди друкують у луна-області інформаційні повідомлення Вони схожі на повідомлення про помилки, але без звукового сигналу, і набрана раніше інформація не скидається Іноді ці повідомлення говорять вам, що команда виконана, у разі, якщо це явно не спостерігається при перегляді редагованого тексту Іноді єдиною метою команди є друк повідомлення, що дає вам специфічну інформацію Наприклад, команда С-х = використовується, щоб надрукувати повідомлення, яке описує позицію точки в тексті і її поточний стовпець у вікні Команди, що вимагають для свого виконання тривалий час, часто виводять під час роботи повідомлення, що закінчуються на …’, а в кінці, коли вони закінчилися, слово done.

Інформативні повідомлення з ехо-області зберігаються в буфері, званому

‘* Messages *. (Ми ще не пояснили, що таке буфер для отримання більшої інформації про них дивіться Глава 15 [Буфери], с 135) Якщо ви пропустили повідомлення, яке недовго відображалося на екрані, ви можете переключитися в буфер * Messages * і знову подивитися його (Послідовні повідомлення про проміжні результати часто згортаються в цьому буфері в одне)

Розмір буфера * Messages * обмежений певним числом рядків, це число задає мінлива message-log-max Як тільки буфер доростає до цього розміру, кожна нова рядок видаляє один рядок з початку Див Розділ 312 [Змінні], с 343, щоб дізнатися, як встановити змінні, такі як message-log-max

Ехо-область використовується також для відображення мінібуфера: вікна, яке використовується для зчитування аргументів для команд, наприклад, імені файлу для редагування Коли використовується мінібуфер, луна-область починається з рядка підказки, яка

зазвичай кінчається двокрапкою крім того, в цьому рядку зявляється курсор, так як вона стає обраним вікном Ви завжди можете вийти з мінібуфера, набравши Cg Див Глава 5 [мінібуфер], с 45

13  Рядок режиму

Останній рядок в кожному вікні називається рядком режиму, вона описує те, що відбувається в цьому вікні Коли є тільки одне текстове вікно, рядок режиму знаходиться безпосередньо над луна-областю це передостання рядок фрейма Рядок режиму показується в інверсному зображенні, якщо термінал підтримує це, і починається і закінчується дефісами

Зазвичай рядок режиму виглядає так:

-Ськ: з буф (основний другорядні)-стр-поз —-

Це дає інформацію про буфері, відображеному у вікні: його імя, використовувані основний і другорядний режими, чи змінювався текст буфера, і як далеко вниз по буферу ви зараз перебуваєте

з містить дві зірочки **, якщо текст в буфері редагувався (буфер змінено),

або -, якщо буфер не редагував Для буферів, доступних тільки для читання, це

‘% *, Якщо буфер змінений, і %% в іншому випадку

буф – це імя буфера даного вікна Найчастіше воно збігається з імям файлу, який ви редагуєте Див Глава 15 [Буфери], с 135

Буфер, що знаходиться в обраному вікні (у тому вікні, в якому знаходиться курсор), є також обраним буфером Emacs – тим буфером, де відбувається редагування Коли ми говоримо, що деякі команди виконуються для буфера, ми говоримо про поточний обраному буфері

стр – це L, за якою слід поточної номер рядка, де знаходиться точка Цей номер виводиться, коли включений режим Line Number (зазвичай це так) Ви можете за бажанням показати також і номер поточного стовпця, включивши режим Column Number (він не включається за замовчуванням, тому що працює трохи повільніше) Див Розділ 115 [Можливості рядки режиму], с 83

поз говорить вам, чи є ще текст зверху від початку або нижче кінця вікна Якщо буфер невеликий і вміщується у вікні цілком, то поз має значення All. Інакше він має значення Top, якщо ви дивитеся початок файлу, Bot, якщо кінець, або nn% , Де nn означає кількість відсотків файлу, що знаходиться над верхом вікна

основний – імя основного режиму, який діє в цьому буфері У будь-який момент кожен буфер знаходиться в одному і тільки одному з можливих основних режимів Існуючі основні режими включають режим Fundamental (Найменш спеціалізований), режим Text, режим Lisp, режим С, режим Texinfo і багато інших Див Глава 19 [Основні режими], с 175, щоб докладніше дізнатися про те, чим режими відрізняються, і як вибрати один з них

Деякі основні режими показують після імені додаткові відомості Наприклад, буфери Rmail показують номер поточного повідомлення і загальне число повідомлень Буфери Compilation і Shell відображають стан подпроцесса

другорядні – це список деяких другорядних режимів, які включені в даний момент в буфері вибраного вікна Наприклад, Fill означає, що включений режим Auto fill Abbrev означає, що включений режим Word Abbrev Ovwrt означає, що включений режим Overwrite Див Розділ 311 [Другорядні режими], с 341, для більш докладної інформації Narrow означає, що область редагування відображуваного буфера обмежена тільки частиною його тексту Насправді це не другорядне режим, але діє схоже Див Розділ 308 [Звуження], с 335 Def означає, що зараз визначається макрос клавіатури Див Розділ 313 [Макроси клавіатури], с 353

Крім того, якщо в даний момент Emacs знаходиться всередині рівня рекурсивного редагування, то всередині круглих дужок, які оточують імена режимів, зявляються квадратні дужки ([..]) Якщо Emacs знаходиться на деякому рівні рекурсивного редагування всередині іншого, то зявляються подвійні квадратні дужки, і так далі Так як рівень рекурсивного редагування ставиться до всього Emacs, а не до кожного буферу окремо, то квадратні дужки зявляються або в рядках режиму всіх вікон або ні в одній з них Див Розділ 3012 [Рекурсивне редагування], с 338

Неоконів термінали можуть показати тільки один фрейм Emacs в один час (див Глава 17 [Фрейми], с 147) На таких терміналах рядок режиму відображає імя обраного фрейма, після з Початковий фрейм називається ‘F1’

ск позначає систему кодування, яка використовується в редагованому файлі Дефіс вказує на стан, яке встановлюється за замовчуванням: відсутність перетворення, за винятком перетворення кінця рядка, якщо вміст файлу вимагає цього = Позначає повна відсутність перетворень Не настільки прості перетворення представляються різними буквами – наприклад, 1 відноситься до ISO Latin-1 Див Розділ 187 [Системи кодування], с 165, для докладної інформації Якщо ви використовуєте метод введення, до початку ск додається рядок у формі в>; в ідентифікує метод введення (Деякі методи введення показують замість > знак + або @.) Див Розділ 184 [Методи введення], с 163

Коли ви користуєтеся текстовим терміналом (Не віконною системою), ск використовує три знаки для опису, відповідно, системи кодування для введення з клавіатури, системи кодування для термінального виводу і системи кодування, що застосовується в редагованому файлі

Коли вимкнена підтримка багатобайтові знаків, СК не зявляється зовсім Див Раз-

справ 182 [Включення багатобайтові знаків], с 161

Двокрапка після ск може змінюватися в деяких обставинах на інший знак Emacs використовує для розділення рядків в буфері переклад рядка Деякі файли використовують іншу угоду про розділення рядків: повернення каретки і переведення рядка (угода MSDOS) або просто повернення каретки (угода Macintosh) Якщо файл в буфері використовує повернення каретки і переведення рядка, двокрапка замінюється на зворотну косу риску (\) або

‘(DOS), в залежності від вашої операційної системи Якщо в цьому файлі застосовується просто повернення каретки, то двокрапка замінюється на косу межу (/) або (Mac). На деяких системах Emacs позивает замість двокрапки рядок (Unix), навіть для файлів, що використовують для розділення рядків переклад рядка

Ви можете налаштувати спосіб відображення в рядку режиму кожного з форматів розділення рядків, встановлюючи змінні eol-mnemonic-unix, eol-mnemonic-dos, eolmnemonic-mac і eol-mnemonic-undecided рівними рядкам, які ви знаходите підходящими Див Розділ 312 [Змінні], с 343, де пояснюється, як встановлювати змінні

Див Розділ 115 [Можливості рядки режиму], с 83, подробиці про можливості додавання в рядок режиму іншої корисної інформації, наприклад номера поточного шпальти в точці, поточного часу та повідомлення про прихід пошти

14  Смужка меню

Кожен фрейм Emacs зазвичай має зверху смужку меню, яку ви можете використовувати для твори певних дій Немає необхідності перераховувати їх тут, тому що вам простіше подивитися самим

Коли ви використовуєте віконну систему, ви можете вибирати команди з смужки меню за допомогою миші Спрямована вправо стрілка після пункту меню вказує, що цей пункт веде до вторинного меню …’ в кінці означає, що до початку роботи ця команда вважає аргументи з клавіатури

Щоб переглянути повне імя команди і документацію до пункту меню, надрукуйте Ch k і потім виберіть потрібний пункт за допомогою миші звичайним способом (Див Розділ 71 [Довідка про ключі], с 56)

На текстових терміналах, де немає миші, ви можете використовувати меню, надрукувавши M-або hF10i  (Вони запускають команду tmm-menubar) Ця команда входить в режим, де ви можете вибрати пункт меню за допомогою клавіатури Попередній вибір показується в луна-області Ви можете використовувати праву і ліву курсорні стрілки для руху по меню до різних пунктах Коли ви знайшли потрібний вам пункт, надрукуйте hRETi, Щоб вибрати його

До кожного пункту меню також приписується буква або цифра зазвичай це перша перша буква якогось слова з імені пункту Ця буква або цифра відділяється від імені значком =>. Для вибору пункту ви можете надрукувати його букву або цифру

Деякі команди в меню мають також звичайні привязки до ключа в такому випадку після самого пункту перераховується один еквівалентний ключ в круглих дужках

Джерело: Річард Столмен, Керівництво по GNU Emacs

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*