Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Извлечение и присоединение текста




Редактор vi предоставляет набор команд, которые разбивают текст в файл и набор команд, которые копируют часть текста и помещают в другое место в файле.

Перемещение текста

Вы можете переместить текст из одного места в буфере редактора vi в другое, удалив строки, а затем поместив их в требуемое место. Удаленный текст сохраняется во временном буфере. Переместите курсор на то место, куда вы хотите поместить текст и нажмите клавишу "p". Удаленные строки будут добавлены ниже текущей строки.

p - поместить содержимое временного буфера после курсора или ниже текущей строки.

Удаленная с помощью команды удаления строка может быть помещена в середине другой строки. Позиционируйте курсор между двумя словами, затем нажмите клавишу "p". Удаленная строка будет помещена после курсора.

Так как временный буфер сохраняет результат только последней команды, то команда "p" должна использоваться сразу же после команды удаления. Команда "p" используется также для копирования текста, помещенного во временный буфер командой "y"

Перемещение букв

Быстрым способом перемещения букв является комбинация команд "x" и "p" (xp). Команда "x" удаляет букву, "p" - помещает ее после следующего символа. Например, в следующем предложении есть ошибка:

    A line of tetx

Поместите курсор под буквой "t" в комбинации "tx" и затем нажмите клавиши "x" и "p". В результате получим:

    A line of text

Копирование текста

Вы можете копировать одну или несколько строк текста во временный буфер и затем поместить копию этого текста в определенное место в файле. Чтобы поместить текст на новое место, введите команду "y". Команда "y" имеет следующий общий формат:

    [number]y[text_object]

Копирование строк с помощью команды "y" не удаляет их с прежнего места в файле, т.е. вы можете поместить один и тот же кусок текста в нескольких местах.

Обратите внимание, что эта команда позволяет указывать номер объекта текста, который будет копироваться.

Копирование и перемещение текста с использованием регистров

Редактор vi предоставляет набор команд, которые разбивают текст в файл и набор команд, которые копируют часть текста и помещают в другое место в файле.

Перемещение и копирование нескольких разделов текста в различные части файла является утомительной работой. Редактор vi предлагает вам использовать так называемые регистры, в которых вы можете хранить текст до тех пор, пока он вам не понадобится. Сохранить текст вы можете либо с помощью команды "y", либо с помощью команды удаления. Использование регистров особенно полезно, если часть текста должна появиться во многих местах в файле. Извлекаемый текст остается в указанном регистре пока вы не завершите работу с ним, либо закончите работу с редактором, либо поместите в этот регистр другой текст.

Общий формат команды:

    [number]["X]command[text_object]

где X - имя регистра, состоящее из одной буквы верхнего регистра. Имени регистра должны предшествовать двойные кавычки.

Специальные команды

В этом подразделе приведены специальные команды, которые будут вам весьма полезны:
. - повторить последнюю команду;
j - объединить две строки;
^l - очистить экран и вновь отобразить его;
~ - заменить нижний регистр на верхний и vice versa (?).

Повторить последнюю команду

Команда "." (точка) повторяет последнюю введенную команду. Очень часто она используется с командой поиска.

Объединение строк

Команда "j" объединяет строки. Чтобы ввести эту команду, поместите курсор на текущей строке и нажмите клавиши SHIFT и j одновременно. Текущая строка объединяется со следующей строкой.

Например, вы имеете две строки текста:

   Dear Mr.

   Smith:

Объединим эти две строки в одну. Поместите курсор под любым символом в первой строке и введите команду "j". На экране появится строка:

   Dear Mr. Smith:

Обратите внимание, что редактор vi автоматически ставит пробел между последним словом в первой строке и первым словом второй строки.

Очистить окно и восстановить текст

Если другой пользователь системы UNIX посылает вам собщение с использованием команды write, а вы в это время редактируете с помощью vi, то посланное сообщение появится в вашем текущем окне поверх текста, который вы редактируете. Чтобы восстановить редактируемый текст после того, как вы прочтете посланное сообщение, нужно перейти в командный режим. Если вы находитесь в режиме ввода текста, то нажмите "^l". Редактор vi сотрет сообщение и восстановит окно в том виде, в котором оно было до прихода сообщения.

Заменить нижний регистр на верхний и vice versa

Чтобы быстро заменить букву нижнего регистра на букву верхнего регистра, надо поместить курсор под этой буквой и нажать клавишу "~" (тильда). Вы можете заменить несколько букв, нажав столько же раз клавишу "~", либо поставив перед тильдой число требуемых замен.

Использование команд построчного редактора

Редактор vi имеет доступ ко многим командам построчного редактора ex. В этом подразделе обсуждаются некоторые наиболее часто используемые команды.

Команды редактора ex очень похожи на команды редактора ed.

Команды построчного редактора начинаются с символа ":" (двоеточие). После того, как вы введете двоеточие, курсор опускается в низ экрана и отображает двоеточие. Оставшаяся часть команды тоже появляется внизу экрана.

Временный возврат к shell

Когда вы входите в vi, то содержимое буфера заполняет ваш экран, делая невозможным выдачу команд для shell. Однако вам может это понадобиться. Например, вам необходимо будет получить информацию из другого файла для присоединения ее к текущему тексту. Вы можете получить эту информацию, запустив одну из команд shell, которая отображает текст файла на экране. Например, cat или pg. Однако процедура завершения работы с редактором и повторный вход в редактор потребуют времени и сил. Редактор vi предлагает вам два способа временного выхода из редактора для того, чтобы вы могли ввести команды shell (и даже редактировать другие файлы) не покидая сам редактор. Это команды:sh и:!.

Команда:! позволяет вам выйти из редактора и запустить команду shell одной командной строкой. Находясь в командном режиме редактора vi, введите:!. Эти символы будут напечатаны в низу экрана. Сразу же после символа! введите команду shell. Shell запустит вашу команду, даст вам ответ и напечатает сообщение:

    Hit return to continue

После того, как вы нажмете клавишу RETURN, vi обновит экран и курсор примет свое прежнее положение.

Команда редактора:sh позволяет вам делать то же самое, но ведет по другому себя на экране. Из командного режима редактора vi введите:sh и нажмите клавишу RETURN. Подсказка команды shell появится на следующей строке. Ведите ваши команды после подсказки так, будто бы вы работаете в нормальном режиме с shell. Когда вы будете готовы вернуться к редактору vi, введите ^d или exit. Экран обновит информация из вашего буфера и курсор вновь переместится на прежнее место.

При временном переходе к shell даже изменение справочников не мешает возврату к буферу редактора vi при вводе ^d или exit.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...