Основні команди редагування – ЧАСТИНА 3

Ви також можете бачити номер поточного рядка в рядку режиму Див Розділ 13 [Рядок режиму], с 25 Якщо ви звузили буфер, то номер рядка в рядку режиму відраховується відносно доступною частини (див Розділ 308 [Звуження], с 335)

На противагу цьому, what-page підраховує номер рядка і відносно звуженої області, і щодо всього буфера і показує обидва числа Див Розділ 214 [Сторінки], с 184

З цього приводу ми могли б згадати М-= (count-lines-region), яка друкує число рядків в області (див Глава 8 [Позначка], с 63) Див Розділ 214 [Сторінки], с 184, для інформації про команду Cx l, яка вважає рядка на поточній сторінці

Команда С-х = (what-cursor-position) може бути використана для впізнавання стовпця, в якому знаходиться курсор, а також іншої різноманітної інформації про точку Вона друкує в луна-області рядок, яка виглядає наступним чином:

Char:  c (0143,  99,  0x63)  point=24781  of  31832(78%)  column 52

(Насправді, це результат, отриманий, коли точка була перед словом column в самому прикладі)

Чотири величини після Char: описують знак, наступний за крапкою перший показує його, а інші дають його вісімковий, десятковий і шістнадцятковий код Для багатобайтові НЕ-ASCII-знака після цих чисел слід ext і шестнадцатиричное уявлення в системі кодування даного буфера, якщо ця система кодування безпечно може представити цей знак в одному байті (див Розділ 187 [Системи кодування], с 165) Якщо код знака більше одного байта, Emacs показує ext ..’.

Після point = слід позиція точки, виражена через кількість знаків Початку буфера присвоюється позиція 1, наступного знаку 2 і так далі Наступне, більше число означає загальне число знаків в буфері Потім в круглих дужках знаходиться позиція, виражена як відсоток від загального розміру

Після column пишеться горизонтальна позиція точки, в шпальтах від лівого краю вікна

Якщо буфер був звужений, і деяка кількість тексту на початку і в кінці тимчасово недоступно, то С-х = друкує додатковий текст, що описує поточні кордону доступу Наприклад, команда може показати таке:

Char:  C  (0103,  67,  0x43)    point=252  of  889(28%) &lt231 599&gt   column 0

де два доданих числа дають найменшу і найбільшу допустимі для точки позиції знаків Доступними є знаки між двома цими позиціями Див Розділ 308 [Звуження], с 335

Якщо точка знаходиться в кінці буфера (або наприкінці видимої частини), у висновку С-х = не описується знак, що стоїть після крапки Висновок може виглядати так:

point=26957  of  26956(100%)    column 0

Cu Cx = показує замість координат і шпальти додаткову інформацію про знак: імя набору знаків і коди даного знаку в цьому наборі ASCII-знаки ідентифікуються як належать набору символів ASCII Крім того, після ext показується повний код знака, навіть якщо він займає більше одного байта Ось приклад для знаку A з акцентом гравер з Latin-1, в буфері з системою кодування iso-2022-7bit1:

Char:  `A  (04300,  2240,  0x8c0,  ext  ESC, A  @)  (latin-iso8859-1  64)

410  Числові аргументи

У математиці та компютерної практиці слово аргумент означає дані, що надаються функції або операції” Ви можете передати будь-якій команді Emacs числовий аргумент (також званий префіксним аргументом) Деякі команди інтерпретують аргумент як лічильник повторень Наприклад, команда Cf з аргументом, рівним десяти, пересуває вперед на десять знаків, а не на один У цих командах відсутність аргументу еквівалентно аргументу, рівному одиниці Негативні аргументи говорять більшості таких команд, що треба рухатися або діяти в протилежному напрямку

Якщо на вашій клавіатурі є клавіша hMETAi, Найпростіший спосіб встановити число-

вої аргумент – набрати цифри і / або знак мінуса, притиснувши клавішу META Наприклад,

M-5 C-n

пересунула б на пять рядків вниз Знаки Meta-1, Meta-2, і так далі, а також Metaделают це, так як це ключі, привязані до команд (digit-argument і negativeargument), які визначені як передавальні аргумент на наступну команду Цифри і з модифікатором Control або Control і Meta також задають числовий аргумент

Інший спосіб задати аргумент – це використовувати команду Cu (universal-argument), за якою слідують цифри аргументу За допомогою Cu ви можете набрати цифри аргументу, що не утримуючи клавіші-модифікатори Cu працює на всіх терміналах Щоб набрати негативний аргумент, введіть після Cu знак мінус Просто знак мінуса без цифр зазвичай позначає 1

Cu, за якою слід знак, який не є ні цифрою, ні знаком мінус, має спеціальний зміст, множення на чотири. Вона примножує аргумент подальшою команди на чотири Дві послідовні Cu множать його на шістнадцять Таким чином, Cu Cu Cf пересуває вперед на шістнадцять знаків Це зручний спосіб пересуватися вперед швидко, так як він пересуває вперед приблизно на 1/5 всіх рядків, що вміщується на екрані звичайного розміру Інші корисні сполучення – це Cu Cn, Cu Cu Cn (рухає вниз на великий шматок екрану), Cu Cu Co (створює багато порожніх рядків) і Cu Ck (знищує чотири рядки)

Деяким командам важливо тільки присутність або відсутність аргументу, але не його значення Наприклад, команда Mq (fill-paragraph) без аргументу заповнює текст, а з аргументом того ж вирівнює текст по правій межі (Див Розділ 215 [Заповнення], с 185, для більш докладної інформації про Mq) Просто Cu дає зручний спосіб надання аргументів для таких команд

Деякі команди використовують аргумент як лічильник повторень, але їх дії з аргументом і без нього мають деякі специфічні риси Наприклад, команда Ck (kill-line) з аргументом n знищує n рядків, включаючи обмежують їх знаки

1 На терміналах, які підтримують Latin-1, знак після Char: відображається як справжній гліф для A з акцентом гравер

нового рядка Але Ck без аргументу діє по-іншому: вона знищує текст аж до переведення рядка, або, якщо точка стоїть якраз в кінці рядка, знищує переклад рядка Таким чином, дві команди Ck без аргументу можуть знищити непорожню рядок, аналогічні результати можна отримати, набравши команду Ck з аргументом, рівним одиниці (Див Розділ 91 [Знищення], с 69, для більш докладної інформації про C-k)

Кілька команд трактують просту Cu не так, як звичайний аргумент Деякі інші команди можуть розрізняти аргумент у вигляді просто знака мінус і аргумент 1 Ці незвичайні випадки будуть описані, коли прийде черга цих команд вони виникають завжди з причин зручності використання окремих команд

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

ка Це працює прямо, якщо тільки знак – не цифри наприклад, C-u 4 червня a вставляє

64 копії знака a. Але це не працює для вставки цифр Cu 6 4 1 задає аргумент 641, а не вставляє небудь Щоб відокремити цифру від аргументу, наберіть ще один Cu наприклад, C-u 4 червня C-u 1 на самому справі вставляє 64 копії знака 1 .

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

411  Повторення команди

Команда Cx z (repeat) надає ще один спосіб повторити команду Emacs кілька разів Ця команда повторює попередню команду Emacs, яка б вона не була При повторенні команда використовує ті ж аргументи, які у неї були раніше вона не зчитує нові аргументи кожного разу

Щоб повторити команду кілька разів, надрукуйте ще знаки z: кожен знак z повторить цю команду ще один раз Повторення закінчується, коли ви вводите знак, відмінний від z, або натискаєте кнопку миші

Припустимо наприклад, що ви надрукували Cu 2 0 Cd, щоб видалити 20 знаків Ви можете повторити цю команду (разом з її аргументом) ще три рази, щоб видалити в цілому 80 знаків, надрукувавши C-x z z z Перший Cx z повторює цю команду один раз, а кожний наступний z повторює ще раз

5 Мінібуфер

Мінібуфер використовується командами Emacs для читання більш складних, ніж просте число, аргументів Аргументами мінібуфера можуть бути імена файлів, імена буферів, імена функцій Лиспа, імена команд Emacs і багато інших речей в залежності від зчитувальних аргумент команд Для редагування аргументів на мінібуфер можуть бути використані звичайні команди редагування Emacs

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

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

Найпростіший спосіб дати аргумент мінібуфер – набрати бажаний текст і завершити його hRETi, Клавішею для виходу з мінібуфера Ви можете скасувати команду, яка запитує аргумент, і вийти з мінібуфера, набравши Cg

Джерело: Річард Столмен, Керівництво по 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>

*

*