Команди для виправлення помилок

У цьому розділі ми описуємо команди, які особливо корисні в тих випадках, коли ви виявили у вашому тексті помилку відразу після того, як ви її допустили, або якщо ви змінили ваші наміри під час твори тексту

Найбільш фундаментальна команда для виправлення помилкового редагування – це команда скасування, Cx u або C-_ Ця команда скасовує одну команду (як правило), частина команди (у разі query-replace) або кілька самовставляющіхся знаків поспіль Послідовне повторення команд C-_ або Cx u скасовує всі більш ранні зміни до кінця доступної інформації скасування Див Розділ 44 [Скасувати], с 37, для отримання подальших відомостей

131  Знищення ваших помилок

hDELi              Видалити останній знак (delete-backward-char)

M-hDELi         Знищити останнє слово (backward-kill-word)

C-x hDELi     Знищити все до початку пропозиції (backward-kill-sentence)

Символ hDELi  (Delete-backward-char) – найбільш важлива команда виправлення Вона видаляє знак перед точкою Коли її використовують після самовставляющейся знаковою команди, її можна розглядати як скасування цієї команди Але уникайте хибної думки, що hDEL– Це універсальний спосіб скасувати команду

Коли ваша помилка довше, ніж пара знаків, то може виявитися більш зручним використовувати M-hDELабо C-x hDELi M-hDELзнищує всі знаки назад до початку останнього слова, а Cx hDELзнищує назад до початку останньої пропозиції C-x hDELособливо корисна у випадку, коли ви міняєте свою думку про формулювання тексту, який ви пишіть M-hDELі C-x hDELзаписують знищений текст для відновлення за допомогою Cy і My Див Розділ 92 [Відновлення], с 71

M-hDELi  часто корисна, навіть коли ви набрали всього кілька помилкових знаків, якщо ви знаєте, що заплуталися і не впевнені точно, що саме ви набрали У цьому випадку ви не можете виправляти за допомогою hDELi, Не вивчаючи екран, щоб побачити, що ж ви зробили Часто знищення всього слова і його повторний набір потребують менших роздумів

132  Перестановка тексту

Ct Переставити два знаки (transpose-chars)

Mt Переставити два слова (transpose-words)

CMt Переставити два збалансованих виразу (transpose-sexps)

Cx Ct Переставити два рядки (transpose-lines)

Поширена помилка перестановки двох знаків може бути виправлена, якщо вони є сусідніми, за допомогою команди Ct (transpose-chars) Зазвичай Ct переставляє два знаки, що стоять по обидві сторони від точки Коли вона дається в кінці рядка, то замість того, щоб поміняти місцями останній знак символ і переклад рядка, що було б марно, Ct переставляє останні два знаки на рядку Так, якщо ви відловили вашу помилку перестановки відразу, ви можете виправити її просто за допомогою Ct Якщо ви відловили її не так швидко, ви повинні перевести курсор назад і встановити його між двома переставленими знаками Якщо ви переставили пробіл і останній знак у слові перед ним, то команди руху за словами служать зручним способом дістатися до цього

місця Однак, зворотний пошук (Cr) часто буває найкращим способом Див Глава 12 [Пошук], с 87

Mt (transpose-words) переставляє слово перед точкою зі словом після неї Вона рухає точку вперед через слово, також переміщує вперед слово, попереднє точці або містить її Знаки пунктуації між словами не рухаються Наприклад, FOO, BAR перетворюється в BAR, FOO, а не в BAR FOO,.

CMt (transpose-sexps) – аналогічна команда для перестановки двох виразів (див Розділ 222 [Списки], с 206), а Cx Ct (transpose-lines) міняє місцями рядки Вони працюють так само, як Mt, за винятком визначення розподілу тексту на синтаксичні одиниці

Числовий аргумент для команд перестановки працює як лічильник повторень: він вказує команді перестановки пересунути знак (слово, рядок, вираз) перед крапкою або містить її через кілька інших знаків (слів, рядків, виразів) Наприклад, Cu 3 Ct пересуває знак перед точкою вперед через три інших знака Це еквівалентно триразовому повторення Ct Cu 4 Mt рухає слово перед точкою назад через чотири слова Cu CMt скасувала б дію простий CMt

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

133  Зміна регістра

MM-l Перевести останнє слово в нижній регістр Відзначимо, що Metaозначает

Meta-мінус

MM-u Перевести останнє слово у верхній регістр

MM-c Перевести останнє слово в нижній регістр з першою великою літерою

Набір слова в неправильному регістрі – дуже поширена помилка Тому команди зміни регістру Ml, Mu і Mc володіють спеціальною властивістю, коли використовуються з негативним аргументом: вони не пересувається курсор Як тільки ви побачите, що останнє слово набрано неправильно, ви можете просто змінити в ньому регістр і продовжувати набір Див Розділ 216 [Регістр], с 189

134  Пошук і виправлення орфографічних помилок

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

M-x flyspell-mode

Включає режим Flyspell, який виділяє все неправильно написані сло-

ва

M-$ Перевіряє і виправляє написання слова в точці (ispell-word)

M-hTABi         Завершує слово перед точкою, грунтуючись на орфографічному словнику

(ispell-complete-word)

M-x ispell-buffer

Перевіряє і виправляє написання всіх слів у буфері

M-x ispell-region

Перевіряє і виправляє написання всіх слів в області

M-x ispell-message

Перевіряє і виправляє написання всіх слів у чернетці поштового повідомлення,

за винятком цитованого матеріалу

M-x ispell-change-dictionary hRETсловник hRETi

Перезапускає процес Ispell, використовуючи словник в якості словника

M-x ispell-kill-ispell

Знищує подпроцесс Ispell

Режим Flyspell надає повністю автоматичний спосіб перевірити правопис під час редагування в Emacs Він працює шляхом перевірки слів у міру того, як ви змінюєте або вставляєте їх Коли він знаходить нераспознанное слово, він виділяє його Це не впливає на ваше редагування, але коли ви бачите виділене слово, ви можете переміститися до нього і виправити Щоб включити цей режим в поточному буфері, наберіть M-x flyspell-mode

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

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

Для перевірки орфографії в слові навколо точки або після неї і, можливо, для його виправлення, використовуйте команду M-$ (ispell-word) Якщо слово написано неправильно, ця команда запропонує вам кілька варіантів дій

Щоб перевірити правопис у всьому поточному буфері, запустіть команду Mx ispell-buffer Використовуйте Mx ispell-region для перевірки тільки поточної області Щоб перевірити орфографію в поштовому повідомленні, яке ви пишіть, використовуйте Mx ispell-message вона перевіряє весь буфер, але не чіпає матеріал, в якому зроблений відступ, або який процитовано з інших повідомлень

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

hSPCi              Пропустити це слово – продовжувати вважати це слово неправильним, але не змінювати його тут

r нове hRETi

Замінити це слово (тільки в цьому місці) на нове

R новеhRETi

Замінити це слово на нове і виконати query-replace, щоб ви могли замінити його у всіх інших місцях буфера, якщо хочете

цифра Замінити це слово (тільки в цьому місці) на одне з показаних схожих слів

Кожне схоже слово перераховується з цифрою щоб вибрати його, наберіть цю цифру

a Прийняти неправильне слово – вважати його правильним, але тільки в цьому сеансі редагування

A Прийняти неправильне слово – вважати його правильним, але тільки в цьому сеансі редагування і для цього буфера

i Вставити це слово в ваш особистий файл словника, щоб Ispell відтепер вважав його правильним навіть у майбутніх сеансах

u Вставити це слово в нижньому регістрі в ваш особистий файл словника

m Як i, але ви також можете вказати відомості про завершення для словника

l слово hRETi

Пошукати в словнику слова, зіставляти зі словом Ці слова стають новим списком схожих слів; ви можете вибрати для заміни одне з них, набравши цифру Ви можете використовувати в слові знак * для опису шаблону

Cg Вийти з інтерактивною перевірки правопису Ви можете перезапустити її пізніше за допомогою Cu M-$

X Те ж, що і Cg

x Вийти з інтерактивною перевірки правопису і перемістити точку назад,

де вона була, коли ви запустили перевірку

q Вийти з інтерактивною перевірки правопису і знищити процес Ispell

Cl Перемалювати екран

Cz Цей ключ має своє звичайне значення (призупинити Emacs або мінімізації-

ровать цей фрейм)

Команда ispell-complete-word, яка привязана до ключа M-hTABi  в режимі Text і споріднених з ним режимах, показує список завершень, грунтуючись на виправленні орфографії Вставте початок слова, а потім надрукуйте M-hTABi ця команда відобразить вікно зі списком завершень Щоб вибрати одне з перерахованих завершень, клацніть на ньому Mouse-2 або перемістіть до нього курсор і натиснітьhRETi Див Розділ 217 [Режим Text], с 190

Одного разу будучи запущеним, подпроцесс Ispell продовжує працювати (очікувати какойлибо роботи), щоб наступні команди перевірки правопису завершувалися швидше Якщо ви хочете позбутися від процесу Ispell, скористайтеся Mx ispell-kill-ispell Зазвичай це не так необхідно, оскільки цей процес не займає час, коли ви не проводите перевірку правопису

Ispell використовує два словника: стандартний і ваш особистий Мінлива ispelldictionary задає імя використовуваного файлу стандартного словника Значення nil каже, що потрібно використовувати словник за замовчуванням Команда Mx ispell-change-dictionary встановлює цю змінну і перезапускає подпроцесс Ispell, щоб він використовував інший словник

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

*

*