Команды для исправления опечаток
В этой главе мы описываем команды, которые особенно полезны в тех случаях,
когда вы обнаружили в вашем тексте ошибку сразу после того, как вы её допустили, или если вы изменили ваши намерения во время сочинения текста.
Наиболее фундаментальная команда для исправления ошибочного редактирования --
это команда отмены, C-x u или C-_. Эта команда отменяет
одну команду (как правило), часть команды (в случае query-replace )
или несколько самовставляющихся знаков подряд. Последовательное повторение команд C-_ или C-x u отменяет все более ранние изменения до конца доступной информации отмены. Смотрите раздел Отмена сделанных
изменений, для получения дальнейших сведений.
Уничтожение ваших ошибок
- DEL
- Удалить последний знак (
delete-backward-char ).
- M-DEL
- Уничтожить последнее слово (
backward-kill-word ).
- C-x DEL
- Уничтожить всё до начала предложения
(
backward-kill-sentence ).
Символ DEL (delete-backward-char ) -- наиболее важная
команда исправления. Она удаляет знак перед точкой. Когда её используют после самовставляющейся знаковой команды, её можно рассматривать как отмену этой
команды. Но избегайте ошибочной мысли, что DEL -- это универсальный способ отменить команду!
Когда ваша ошибка длиннее, чем пара знаков, то может оказаться более удобным
использовать M-DEL или C-x DEL.
M-DEL уничтожает все знаки назад до начала последнего
слова, а C-x DEL уничтожает назад до начала последнего
предложения. C-x DEL особенно полезна в случае, когда вы
меняете свое мнение о формулировке текста, который вы пишите.
M-DEL и C-x DEL записывают
уничтоженный текст для восстановления с помощью C-y и M-y.
Смотрите раздел Восстановление.
M-DEL часто полезна, даже когда вы набрали всего
несколько ошибочных знаков, если вы знаете, что запутались и не уверены точно,
что именно вы набрали. В этом случае вы не можете исправлять с помощью
DEL, не изучая экран, чтобы увидеть, что же вы сделали. Часто
уничтожение всего слова и его повторный набор потребует меньших раздумий.
Перестановка текста
- C-t
- Переставить два знака (
transpose-chars ).
- M-t
- Переставить два слова (
transpose-words ).
- C-M-t
- Переставить два сбалансированных выражения (
transpose-sexps ).
- C-x C-t
- Переставить две строки (
transpose-lines ).
Распространенная ошибка перестановки
двух знаков может быть исправлена, если они являются соседними, с помощью
команды C-t (transpose-chars ). Обычно C-t
переставляет два знака, стоящие по обе стороны от точки. Когда она даётся в
конце строки, то вместо того, чтобы поменять местами последний знак символ и
перевод строки, что было бы бесполезно, C-t переставляет последние
два знака на строке. Так, если вы отловили вашу ошибку перестановки сразу, вы
можете исправить её просто с помощью C-t. Если вы отловили её не так
быстро, вы должны перевести курсор назад и установить его между двумя
переставленными знаками. Если вы переставили пробел и последний знак в слове
перед ним, то команды движения по словам служат удобным способом добраться до
этого места. Однако, обратный поиск (C-r) часто бывает самым лучшим
способом. Смотрите раздел Поиск и замена.
M-t
(transpose-words ) переставляет слово перед точкой со словом после
нее. Она двигает точку вперёд через слово, также перемещая вперёд слово,
предшествующее точке или содержащее её. Знаки пунктуации между словами не
двигаются. Например, `FOO, BAR' превращается в `BAR,
FOO', а не в `BAR FOO,'.
C-M-t (transpose-sexps ) -- аналогичная команда для
перестановки двух выражений (смотрите раздел Списки и
s-выражения), а C-x C-t (transpose-lines ) меняет
местами строки. Они работают так же, как M-t, за исключением
определения деления текста на синтаксические единицы.
Числовой аргумент для команд перестановки работает как счетчик повторений: он
указывает команде перестановки передвинуть знак (слово, строку, выражение) перед
точкой или содержащий её через несколько других знаков (слов, строк, выражений).
Например, C-u 3 C-t передвигает знак перед точкой вперёд через три
других знака. Это эквивалентно трехкратному повторению C-t. C-u
- 4 M-t двигает слово перед точкой назад через четыре слова. C-u -
C-M-t отменила бы действие простой C-M-t.
Числовому аргументу, равному нулю, придается специальное значение (так как в
противном случае команды с нулевым счетчиком повторов должны были бы ничего не
делать): переставить знак (слово, выражение, строку), оканчивающийся после
точки, со знаком (словом, выражением, строкой), оканчивающимся после метки.
Изменение регистра
- M-- M-l
- Перевести последнее слово в нижний регистр. Отметим, что Meta--
означает Meta-минус.
- M-- M-u
- Перевести последнее слово в верхний регистр.
- M-- M-c
- Перевести последнее слово в нижний регистр с первой заглавной буквой.
Набор слова в
неправильном регистре -- очень распространенная ошибка. Поэтому команды
изменения регистра M-l, M-u и M-c обладают
специальным свойством, когда используются с отрицательным аргументом: они не
передвигают курсор. Как только вы увидите, что последнее слово набрано
неправильно, вы можете просто изменить в нём регистр и продолжать набор.
Смотрите раздел Команды
преобразования регистра.
Поиск и исправление орфографических ошибок
Этот раздел описывает команды для проверки правописания отдельного слова или
части буфера. Эти команды работают с программой проверки правописания Ispell,
которая не является частью Emacs.
- M-x flyspell-mode
- Включает режим Flyspell, который выделяет все неправильно написанные
слова.
- M-$
- Проверяет и исправляет написание слова в точке (
ispell-word ).
- M-TAB
- Завершает слово перед точкой, основываясь на орфографическом словаре
(
ispell-complete-word ).
- M-x ispell-buffer
- Проверяет и исправляет написание всех слов в буфере.
- M-x ispell-region
- Проверяет и исправляет написание всех слов в области.
- M-x ispell-message
- Проверяет и исправляет написание всех слов в черновике почтового
сообщения, за исключением цитируемого материала.
- M-x ispell-change-dictionary RET словарь
RET
- Перезапускает процесс Ispell, используя словарь в качестве
словаря.
- M-x ispell-kill-ispell
- Уничтожает подпроцесс Ispell.
Режим Flyspell предоставляет полностью
автоматический способ проверить правописание во время редактирования в Emacs. Он
работает путем проверки слов по мере того, как вы изменяете или вставляете их.
Когда он находит нераспознанное слово, он выделяет его. Это не влияет на ваше
редактирование, но когда вы видите выделенное слово, вы можете переместиться к
нему и исправить. Чтобы включить этот режим в текущем буфере, наберите M-x
flyspell-mode.
Когда режим Flyspell выделяет неправильно написанное слово, вы можете
щёлкнуть на этом слове Mouse-2, чтобы получить меню возможных
исправлений и действий. Вы также можете исправить слово, отредактировав его
вручную любым способом, который вам нравится.
Другие возможности Emacs по проверке правописания проверяют или ищут слова,
когда вы даёте явную команду для этого. Проверка всего или части буфера полезна,
когда у вас есть текст, который был написан не в данном сеансе Emacs и может
содержать любое число ошибок.
Для проверки орфографии в слове вокруг
точки или после нее и, возможно, для его исправления, используйте команду
M-$ (ispell-word ). Если слово написано неправильно, эта
команда предложит вам несколько вариантов действий.
Чтобы проверить весь текущий буфер,
запустите команду M-x ispell-buffer. Используйте M-x
ispell-region для проверки только текущей области. Чтобы проверить
орфографию в почтовом сообщении, которое вы пишите, используйте M-x
ispell-message; она проверяет весь буфер, но не трогает материал, в
котором сделан отступ, или который процитирован из других сообщений.
Каждый раз, когда эти команды встречают неправильно написанное слово, они
спрашивают вас о дальнейших действиях. Они показывают список вариантов, обычно
включающий несколько "похожих слов" -- которые близки по написанию с проверяемым
словом. Затем вы должны напечатать один знак. Вот допустимые варианты ответа:
- SPC
- Пропустить это слово -- продолжать считать это слово неправильным, но не
изменять его здесь.
- r новое RET
- Заменить это слово (только в этом месте) на новое.
- R новое RET
- Заменить это слово на новое и выполнить
query-replace , чтобы вы могли заменить его во всех других местах
буфера, если хотите.
- цифра
- Заменить это слово (только в этом месте) на одно из показанных похожих
слов. Каждое похожее слово перечисляется с цифрой; чтобы выбрать его, наберите
эту цифру.
- a
- Принять неправильное слово -- считать его правильным, но только в этом
сеансе редактирования.
- A
- Принять неправильное слово -- считать его правильным, но только в этом
сеансе редактирования и для этого буфера.
- i
- Вставить это слово в ваш личный файл словаря, чтобы Ispell отныне считал
его правильным даже в будущих сеансах.
- u
- Вставить это слово в нижнем регистре в ваш личный файл словаря.
- m
- Как i, но вы также можете указать сведения о завершении для
словаря.
- l слово RET
- Поискать в словаре слова, сопоставляющиеся со словом. Эти слова
становятся новым списком "похожих слов"; вы можете выбрать для замены одно из
них, набрав цифру. Вы можете использовать в слове знак
`*' для описания шаблона.
- C-g
- Выйти из интерактивной проверки правописания. Вы можете перезапустить её позже с помощью C-u M-$.
- X
- То же, что и C-g.
- x
- Выйти из интерактивной проверки правописания и переместить точку назад,
где она была, когда вы запустили проверку.
- q
- Выйти из интерактивной проверки правописания и уничтожить процесс Ispell.
- C-l
- Перерисовать экран.
- C-z
- Этот ключ имеет свое обычное значение (приостановить Emacs или
минимизировать этот фрейм).
Команда ispell-complete-word , которая
привязана к ключу M-TAB в режиме Text и родственных с ним
режимах, показывает список завершений, основываясь на исправлении орфографии.
Вставьте начало слова, а затем напечатайте M-TAB; эта
команда отобразит окно со списком завершений. Чтобы выбрать одно из
перечисленных завершений, щелкните на нём Mouse-2 или переместите к
нему курсор и нажмите RET. Смотрите раздел Режим Text.
Однажды будучи запущенным, подпроцесс Ispell продолжает работать (ожидать какой-либо работы), чтобы последующие
команды проверки правописания завершались быстрее. Если вы хотите избавиться от
процесса Ispell, воспользуйтесь M-x ispell-kill-ispell. Обычно это не
так необходимо, поскольку этот процесс не занимает время, когда вы не проводите
проверку правописания.
Ispell использует два словаря: стандартный и ваш личный.
Переменная ispell-dictionary задаёт имя используемого файла
стандартного словаря. Значение nil говорит, что нужно использовать
словарь по умолчанию. Команда M-x ispell-change-dictionary
устанавливает эту переменную и затем перезапускает подпроцесс Ispell, чтобы он
использовал другой словарь.
Назад |
Вперед |
Содержание
|
Социальные сети