|
||||||||||||
Задача текстовых редакторовПосле основных утилит для работы с файлами и текстом первая программа, которая понадобится любому пользователю Linux — это текстовый редактор (для краткости — просто редактор). Из предыдущих лекций и собственных экспериментов Мефодию уже стало понятно, какое значительное место занимают в системе Linux данные в текстовом формате, т. е. состоящие из символов, которые могут быть отображены на экране терминала и которые может прочесть человек. Однако пока Мефодий мог работать с текстом только последовательно: строка за строкой, даже если имел дело с файлом, он не мог вернуться и отредактировать уже переданные системе строки. Именно для того, чтобы работать с текстовым файлом как со страницей, по которой можно перемещаться и редактировать текст в любой точке, и нужны текстовые редакторы1. Текстовый редактор потребуется пользователю Linux в первую очередь для того, чтобы изменить настройки системы или своего окружения, например, shell — при этом нужно будет редактировать конфигурационные файлы, которые всегда представлены в текстовом формате (см. лекции Возможности командной оболочки и Конфигурационные файлы). Но и собственные задачи пользователя могут потребовать редактирования текстовых файлов: например, сценарии и программы, электронные письма, а также заметки для себя, которые пишет Мефодий — это всё данные в текстовом формате. Текстовые данные, полученные при помощи стандартных утилит, тоже бывает удобно сохранять в файлах и редактировать. Не стоит путать текстовые редакторы и текстовые процессоры. Текстовые процессоры, — например, OpenOffice Writer или Microsoft Word — предназначены для создания документов, в которых, помимо собственно текста, содержится и различная метаинформация (информация об оформлении): размещение текста на странице, шрифт и т. п. Поскольку в текстовом формате не предусмотрено средств для сохранения информации об оформлении (там есть только символы и строки), текстовые процессоры используют свои собственные форматы для хранения данных. Текст, в котором нет никакой метаинформации об оформлении, называют «plain text» (только текст, «плоский», простой текст). Однако при помощи текстовых редакторов можно работать не только с форматом plain text. Различная метаинформация (об оформлении, способе использования текста, например, в качестве ссылки и пр.) может быть записана и в виде обычных символов (т. е. в текстовом формате), но со специальным соглашением, что эти символы нужно интерпретировать особым образом: как инструкции по обработке текста, а не как текст. Такие инструкции называются разметкой. Таким образом устроен, например, формат htm. Для того, чтобы обработать разметку htm и в соответствии с ней отобразить текст, нужна специальная программа — броузер, но редактировать файлы htm и прочие форматы разметки можно и при помощи текстового редактора. Кроме того, программы на любых языках программирования и сценарии (программы на shell), тоже представляют собой текстовые файлы. Многие текстовые редакторы ориентированы на работу не только с плоским текстом, но и с текстом в различных форматах. Для этого придумана масса усовершенствований, уменьшающих количество символов, которые нужно вводить вручную: специальные команды, клавиатурные сокращения и автодополнение ключевых слов и конструкций. Важнейшее условие для текстового редактора в Linux — возможность работать в терминале, т. к. это основной способ управления системой. Поэтому и ввод данных, и редактирование должны полностью осуществляться средствами терминала, т. е. алфавитно-цифровыми и некоторыми функциональными клавишами. Поскольку функциональных клавиш, на которые можно рассчитывать на любом терминале, совсем немного, а команд, которые нужно отдавать редактору, — много очень, требуется способ вводить любые команды ограниченными средствами терминала. Это условие, равно как и требование удобной работы с разнообразными структурированными текстами, выполнено в двух «главных» текстовых редакторах Linux — Vi и Emacs, о которых в основном и будет идти речь в этой лекции. Vi и лучше, чем ViВ любой системе Linux, даже самой минимальной, всегда присутствует текстовый редактор, поскольку в любой — даже самой катастрофической — ситуации у пользователя должна быть возможность отредактировать конфигурационные файлы, чтобы привести систему в рабочее состояние. По сложившейся традиции текстовым редактором, который обязательно запустится из любой командной строки Linux, является Vim2. Однако верно и обратное: если Вы работаете в незнакомой системе Linux или произошёл сбой, в результате которого доступна только очень небольшая часть системы, нельзя быть увереным, что найдётся хоть какой-нибудь другой текстовый редактор кроме Vim. Поэтому каждому пользователю Linux нужны хотя бы основные навыки работы в Vim. При первом знакомстве c Vim работа обычно не ладится: очень уж он непривычен, его нельзя с удобством использовать, запомнив только две-три простейшие команды редактирования. Стоит понять основные принципы работы в Vim и потратить некоторое время на его освоение, тогда в нём откроется мощный инструмент, позволяющий очень эффективно работать с текстом. Под именем Vim, на самом деле, могут скрываться несколько разных программ: с
момента появления Vim в операционной системе UNIX (а это произошло около 30-ти
лет назад), этот редактор стал чем-то вроде стандарта. К настоящему времени
существует ряд программ либо в точности повторяющих вид и поведение
«классического» Vim (например, Популярность Vi не случайна: этот текстовый редактор позволяет не только производить простые операции редактирования текстовых файлов, но и хорошо приспособлен для максимально быстрого и эффективного решения ряда смежных с редактированием задач. Среди самых важных его возможностей — инструменты для работы с текстами на различных языках программирования и в различных форматах разметки. Vim умеет подсвечивать разными цветами синтаксические конструкции языка программирования или разметки3, автоматически выставлять отступы, что облегчает восприятие структуры документа. Кроме того, в Vi есть специальные средства для организации цикла отладки программы: компиляция–правка исходного текста–компиляция... Подробнее об этих и прочих возможностях Vi можно узнать из руководств по Vi. Объём данной лекции позволяет описать только самые начала работы с Vi, более подробное введение в этот текстовый редактор можно найти в книге [Курячий:2004]. Запуск viЧтобы начать сеанс редактирования в Vim, достаточно выполнить команду Vim на
любом терминале. Чтобы открыть для редактирования уже существующий файл, путь к
этому файлу нужно указать в качестве параметра: « Для отображения текста и работы с ним Vim использует весь экран терминала,
только последняя строка предназначена для диалога с пользователем: вывода
информационных сообщений и ввода команд. Пока буфер не заполнен текстом, в
начале каждой строки экрана отображается символ «
Символ « РежимыВ Vim проблема разделения команд редактору и вводимого текста решена при помощи режимов: в командном режиме нажатие на любую клавишу — это команда редактору, в режиме вставки нажатие на клавишу приводит к вставке соответствующего символа в редактируемый текст. Поэтому при работе с Vim пользователю всегда нужно обращать внимание на то, в каком режиме находится редактор.
Vim всегда начинает работу в командном режиме. В этом режиме есть два способа отдавать команды редактору. Во-первых, нажатие практически на любую клавишу редактор воспринимает как команду. В Vi, даже в режиме Vim-совместимости, командное значение определено для всех латинских букв (в верхнем и нижнем регистрах), цифр, знаков препинания и большинства других печатных символов. При нажатии на эти клавиши вводимые команды нигде не отображаются, они просто исполняются.
Не нужно пытаться вводить текст в командном режиме: поскольку у каждой буквы есть командное значение, результат может быть самым неожиданным! Во-вторых, у Vim есть своя командная строка: чтобы её вызвать, нужно ввести
« Главная команда командной строки Vi — вызов подсистемы помощи
« Команда « Наконец, чтобы ввести текст, нужно перейти из командного режима в режим
вставки, нажав клавишу « В режиме вставки можно вводить текст, завершая строку нажатием на Enter. Однако нужно помнить, что в некоторых (ортодоксальных) версиях Vim в режиме ввода не работают никакие команды перемещения по тексту, здесь можно только набирать. Если Вы заметили, что ошиблись в наборе — не нужно сразу пытаться переместить курсор и пытаться исправлять ошибку: гораздо удобнее будет вносить все исправления потом, в командном режиме, где доступно множество специальных команд быстрого перемещения и замены текста. Чтобы перейти из режима вставки обратно в командный режим, нужно нажать ESC.
Если Vim пришёл в непонятное для Вас состояние, нажмите ESC, чтобы вернуться в командный режим (иногда требуется нажать ESC дважды). Мефодий начал упражняться с Vim на файле примеров:
Vim начал работу — как и положено — в командном режиме. В последней
строке возникли некоторые полезные сведения об открытом файле: его имя, общее
количество строк («
Теперь Vim в режиме вставки: в последней строке появилось информационное
сообщение об этом. Набрав текст, Мефодий может вернуться в командный режим,
нажав ESC (подсказка « На самом деле, из командного режима можно перейти в режим ввода несколькими
командами, разница между ними заключается в том, в какой точке начнётся ввод
символов. Например, по командам « Работа с файламиРедактируя текст в Vim, пользователь работает не непосредственно с файлом, а с буфером. Если открывается уже существующий файл, Vim копирует его содержимое в буфер и отображает буфер на экране. Все изменения, которые делает пользователь, происходят именно в содержимом буфера — открытый файл пока остаётся неизменным. Если же Vim вызван без параметра, то создаётся пустой буфер, который пока не связан ни с каким файлом5. Чтобы записать сделанные изменения в файл, используется команда
«
Мефодий не указал, куда именно записать содержимое буфера, и по умолчанию оно
было записано в тот файл, который он и открывал для редактирования:
« Наиболее важна для новичка команда выхода из Vim —
« Однако если в буфере есть изменения, которые ещё не записаны ни в каком
файле, то Vim откажется выполнять команду « В Vim предпринято множество усилий для экономии сил и времени пользователя,
командующего редактором. Поэтому вполне можно одним разом записать текст и выйти
из редактора: командой « Перемещение по текстуПри редактировании в тексте всегда есть точка, в которой вы «находитесь» в данный момент: вводимые с клавиатуры символы появятся именно здесь, удаляться символы будут тоже отсюда, к этой точке будут применяться команды редактора и т. п. Обычно эта точка обозначается курсором, а в последней (информационной) строке экрана Vim указывает номера текущей строки и колонки (номер символа в строке), в которых находится курсор. Для того, чтобы выполнять редактирование текста, по нему необходимо перемещаться, т. е. перемещать курсор. Самый очевидный способ это делать — воспользоваться клавишами со стрелками. Нажатие на одну из этих клавиш обычно заставляет курсор переместиться на один символ влево/вправо или на одну строку вверх/вниз. Трудно придумать более неэффективный и медленный способ перемещения, если нужно попасть на другой конец объёмистого текста, и даже простое перемещение к началу или концу строки может занять несколько секунд. Заметим, что в процессе редактирования текста обычно возникает необходимость перемещаться не в произвольную точку, а в некоторые ключевые: начало и конец строки, слова, предложения, абзаца, выражения, заключённого в скобки, целого текста. Особенно это заметно, если требуется редактировать структурированный текст: программу (например, сценарий), конфигурационный файл и т. п. В Vim для каждого такого перемещения предусмотрены специальные команды, обычно состоящие в нажатии одной клавиши в командном режиме. Используя их, можно не только одной кнопкой переместиться на любое расстояние в тексте, но и двигаться по структурным элементам, переходя к предыдущему/следующему слову, предложению, абзацу, скобке и т. д.
Прежде чем начинать экспериментировать с перемещением, нужно перейти в командный режим. Итак, передвинуть курсор на начало текущей строки можно командой
« Передвинуть курсор вперёд на начало следующего слова можно командой
« В Vim никогда не следует вручную повторять по нескольку раз одну и ту же
команду: если нужно перейти на три слова вперёд, не следует трижды нажимать
«
Не сразу очевидно, что поиск шаблона в тексте (строки или регулярного
выражения) — это тоже команда перемещения. Как и любое перемещение, поиск
осуществляется в командном режиме: прежде всего нужно нажать « Совсем просто перейти к следующему употреблению в тексте того слова, на
котором стоит курсор: для этого нужно просто нажать « Изменение текстаВ командном режиме нельзя вводить символы в текст с клавиатуры, но изменить
текст при этом можно, например, удаляя символы. Чтобы удалить отдельный
символ (тот, на котором стоит курсор), достаточно нажать « Из командной строки Vim можно выполнить операцию поиска и замены: для простой
строки или для регулярного выражения. Причём синтаксис команды поиска и замены
полностью воспроизводит синтаксис потокового редактора
Мефодий хотел заменить в своём файле точки в концах строки многоточиями. Для
этого в командном режиме он нажал « Форматирование текста — это расставление символов конца строки, пробелов
и табуляций таким образом, чтобы текст хорошо смотрелся на экране терминала.
Делать форматирование вручную крайне неэффективно. В Vi автоматичекое
форматирование текста (если редактируется программа на каком-либо языке
программирования, то с учётом правил этого языка) может происходить прямо в
режиме вставки, в режиме вставки же можно изменять отступ текущей
строки (по командам « Режим ввода не богат специальными командами изменения текста, что и понятно:
он предназначен именно для ввода, и больше ни для чего. Однако в Vi (но
не в Vim!) есть некоторые удобства, упрощающие и сам процесс набора. Если слово,
которое нужно ввести, уже встречалось в тексте, можно набрать только первые
буквы и нажать « Иногда, изменив текст, тут же хочется вернуть всё обратно, для этого в Vim
предусмотрена команда отмены последнего изменения: « Работа с фрагментами текстаЛюбая команда перемещения определяет две точки в тексте: та, в которой был
курсор до перемещения, и та, в которую он переместился в результате данной
команды. Расположенный между этими двумя точками отрезок текста однозначно
задаётся командой перемещения. Например, команда «
Очень часто возникает необходимость заменить фрагмент в тексте: слово,
предложение, строку и т. д. Это можно сделать в два действия: сначала удалить
часть текста, затем перейти в режим вставки и вставить замену. Vim предоставляет
возможность упростить эту операцию, сведя два действия к одному: заменить.
Гнездовая команда « Мефодий не забыл, что команды перемещения можно использовать с
множителями, и попробовал заменить сразу три слова в своём
файле на другие: для этого он в командном режиме подогнал курсор в начало слова
«первая» и набрал «
В примере знак « Перестановка частей — типичная задача, возникающая в процессе
редактирования. Для перестановки требуется удалить фрагмент в одном месте текста
и вставить его же в другом. Для решения первой части задачи в Vim не понадобится
специальных средств, потому что любая команда удаления («
Для того, чтобы скопировать фрагмент текста, служит команда « Для того, чтобы применить команду к нескольким строкам текста, не
обязательно подгонять к ним курсор. В командной строке Vim любой команде может
предшествовать указание диапазона в тексте, к которому следует
эту команду применить. Команды с указанием диапазона выглядят так:
« Последним свойством Мефодий воспользовался, чтобы удалить плоды своих
экспериментов: он выполнил команду «
Настройка Vi и VimВид и поведение Vim и Vi можно довольно существенно изменить при помощи
настроек, приспособив редактор именно к своим вкусам и привычкам. Прямо во время
работы редактора можно менять настройки из командной строки Vim при помощи
команды « Лучше, чем Emacs?Заголовок этого раздела сформулирован таким провокационным образом не случайно: любому пользователю похожей на UNIX операционной системы (к таким системам относится и Linux), в любом случае необходим текстовый редактор. Выбор очень многих пользователей падает на один из двух наиболее популярных и, как следствие, наиболее универсальных (реализованных и работающих везде) текстовых редактора: Vim (или одну из его улучшенных версий, чаще всего Vi) и Emacs. Оба эти редактора появились около тридцати лет назад, но их почтенный возраст только пошёл им на пользу: огромное количество пользователей по всему миру все эти годы занималось их отладкой, локализацией и расширением. Vim и Emacs образуют альтернативную пару не только по исторической случайности: оба редактора претендуют на роль универсального средства для работы с текстом на любых естественных и искусственных языках. И действительно, трудно назвать сравнимый с ними по возможностям текстовый редактор, да ещё и настолько нетребовательный к интерфейсу: и Vi, и Emacs будут работать на любом терминале. Однако ограниченные возможности интерфейса терминала требуют от программ надёжного способа отделения команд редактору от вводимого текста. В Vi и Emacs эта задача решена по-разному — отсюда большая часть различий в стиле работы с этими редакторами, отсюда и традиционный спор приверженцев этих редакторов о том, который из них лучше. Тексты на разных языкахГлавное свойство, которое сделало Emacs таким популярным и многофункциональным редактором — это заложенная в нём с самого начала принципиальная расширяемость. Emacs почти полностью написан на специально созданном для него языке программирования: Emacs Lisp, и у любого пользователя есть возможность запрограммировать любые необходимые именно ему функции и подключить их в качестве модуля к Emacs. При этом сам Emacs никак изменять не требуется. Сообщество программистов не замедлило воспользоваться расширяемостью Emacs, и к настоящему времени важнейшее достоинство этого редактора состоит именно в свободно распространяемых пакетах расширений, содержащих инструменты для решения самых разнообразных задач, связанных с редактированием текста. Современный Emacs — это не просто текстовый редактор, а интегрированная среда для работы в системе. Основная идея сообщества разработчиков и пользователей Emacs состоит в том, что Emacs позволяет работать с любыми данными, которые могут быть представлены как текст (в лекции Работа с текстовыми данными обсуждалось, что таким образом можно представить очень многое в системе). Естественно, список содержащихся в каталоге файлов, программа на каком-либо языке программирования или электронное письмо — это тексты, которые сильно различаются по структуре и по тому, что от них нужно пользователю. В Emacs для работы с текстами разного типа используются режимы.
Каждый буфер в Emacs находится в одном из основных режимов. Основной режим — это набор функций и настроек Emacs приспособленных для редактирования текста определённого вида. Каждый основной режим по-своему переопределяет некоторые управляющие символы, так что наиболее доступными становятся команды, чаще всего нужные именно для работы с текстом данного типа. Команды, специфичные для текущего основного режима, обычно начинаются с управляющего символа C-c. Некоторое представление о возможностях Emacs может дать весьма неполный список тех текстов, для которых существуют основные режимы:
Обратите внимание, что в Emacs понятие «режим» имеет совершенно иной смысл, чем в Vim! Не менее хорошо в Emacs развиты средства работы с текстами на самых разных
естественных языках с самыми экзотическими письменностями. Просто для оценки
возможностей Emacs в этой области можно выполнить команду « Команды EmacsЕсли в вашей системе установлен Emacs, то вы можете запустить, набрав
Vi и вслед за ним Vi — это многорежимные редакторы, когда
команды вводятся в одном режиме, а текст — в другом, что позволяет
использовать в качестве командных любые клавиши. В Emacs нет специального
командного режима, но использован тот факт, что с клавиатуры можно вводить не
только печатные, но и некоторые управляющие символы. Для этого
используются несколько управляющих клавиш терминала (прежде всего
Ctrl и Alt), нажатые в сочетании с
различными текстовыми символами. Чтобы ввести такой символ, нужно нажать
управляющую клавишу (например, Ctrl) и, удерживая её,
нажать клавишу с одним из печатных символов (например, « Команд в редакторе Emacs чрезвычайно много, доступных управляющих символов на всех не хватает, поэтому чтобы вызвать команду Emacs, обычно требуется ввести ключ, начинающийся с управляющего символа, за которым следует комбинация из управляющих или обычных символов, или просто полное имя команды. Последовательность символов, достаточная для вызова команды, называется законченным ключом, а если введённых символов недостаточно для однозначного определения команды, это — префиксный ключ. Общее правило здесь таково: чем чаще нужна команда, тем короче вызывающий её
ключ, и наоборот. Для лаконичной записи длинных клавиатурных комбинаций в
сообществе пользователей Emacs сложилась особая традиция сокращённых
обозначений. Клавишу Ctrl обозначают заглавной буквой
« У любой команды Emacs есть собственное имя, по этому имени можно вызвать
команду даже если она не привязана ни к какому клавиатурному ключу. Для вызвова
команд по имени используется префиксный ключ M-x.
Например, посмотреть справку о помощи в Emacs можно командой « Работа с файламиВ Emacs, как и в Vim, пользователь редактирует текст не в самом файл, а в
буфере. Отличие Emacs в том, что нельзя написать «безымянный»
текст и затем сохранить его в файле. При запуске Emacs без параметров
открывается специальный буфер — « После того, как Мефодий нажал « Когда Мефодий захотел открыть ещё один буфер, чтобы отердктировать один из
своих сценариев, он запамятовал точное название нужного файла и, набрав
«
Как указано в строке режима, это Dired, редактор каталогов, режим emacs, предназначенный для просмотра и изменения каталогов прямо из редактора. В Dired можно выбирать отдельные файлы, или группы файлов и производить над ними различные действия: открыть для редактирования, удалить, скопировать, переместить, переимновать по определённой схеме — словом, Dired, довольно мощное средство для наглядной работы с файловой системой, особенно он удобен для работы с группой файлов. Подробности о командах, доступных в этом режиме, можно найти в руководстве по Emacs. Перемещение по текстуВ Emacs, как и в Vim есть понятие точка, это то место в буфере, где будет происходить вставка или удаление данных. Перемещение по тексту — это перемещение точки. Команды перемещения по структурным элементам текста развиты не менее, чем в Vim, помимо обычных стрелок, действуют команды перемещения в начало и конец строки (C-a и C-e), буфера (M-< и M->), предложения (M-a и M-e); к предыдущему и следующему слову (M-f и M-b), абзацу (M-{ и M-}). Различные основные режимы предоставляют специализированные команды для перемещения по структурным элементам текстов на разных языках программирования, разметки и пр. В Emacs несколько видов поиска: существуют отдельные команды для поиска
строки и поиска по регулярному выражению. Если требуется найти ближайшее
употребление конкретного слова, удобнее всего воспользоваться
наращиваемым поиском по команде C-s.
Наращиваемый поиск уже встречался Мефодию: так был устроен поиск по истории
команд в Изменение текстаВ Emacs доступно множество команд, экономящих усилия при редактировании текста. Если пользователь осознаёт, что набрал что-то неправильно, то можно удалить разом последнее слово (M-Del), предложение (C-x Del). Можно уничтожать и вперёд: до конца слова (M-d) и предложения (M-k). Emacs хранит не только последний удалённый фрагмент, но и все предыдущие, формируя список удалений. Только что уничтоженный текст можно вставить командой C-y. После этого его можно заменить предыдущим уничтоженным фрагментом — M-y. Можно двигаться и далее назад по списку удалений, повторяя M-y. Хорошо продуманы команды для перестановки частей текста вокруг точки: двух
знаков (C-t), слов (M-t), строк
(C-x C-t). Команда M-t не перемещает
знаки препинания между словами, поэтому « Прямо из Emacs можно вызвать программу проверки орфографии
(« В Emacs так много специальных команд для изменения текста, что команды поиска
и замены бывают нужны не так часто. Произвести замену строки всюду в буфере
можно по команде « Если нужно заменить строку только в некоторых случаях, пригодится команда M-%, запрашивающая подтверждение о замене при каждой найденной строке. Аналогичная команда для регулярных выражений — C-M-%. Любые изменения в тексте можно отменить командой C-_
(нужно нажать Ctrl, Shift и
« Работа с фрагментами текстаМногие команды Emacs работают с произвольным фрагментом текущего буфера. Такие команды всегда применяются к текущей области. Область — это отрезок текста между точкой (где находится курсор) и меткой. Метка в любой момент присутствует в любом буфере, пользователь может установить её в любом месте текста явно — командой M-Пробел. Метка может перемещаться и без вмешательства пользователя: команды перемещения и редактирования могут изменять положение метки. Таким образом, чтобы выделить в буфере фрагмент текста, можно произвести следующие операции:
Есть группа команд, позволяющих работать с меткой более эффективно:
установить метку после конца следующего слова (M-@),
пометить текущий абзац (M-h), весь буфер
(«
Как и в Vim, в Emacs можно использовать для хранения информации
регистры. В регистре Emacs можно сохранить позицию в буфере и
затем перейти к этой позиции (« Настройка EmacsКоротко говоря, в Emacs можно настроить всё: связи между
ключами и командами редактора, определить макрокоманды,
написать собственные расширения. Есть возможность изменять настройки Emacs как в
процессе работы, так и при помощи конфигурационного файла
Просто текстовые редакторыИ в Vim, и в Emacs интегрировано множество средств для автоматизации прочесса
редактирования. Эти редакторы становятся удобны в том случае, если прежде, чем
браться делать что-то вручную, пользователь обращается к руководству и находит в
нём способ выполнить свою задачу максимально быстро и с минимальными затратами
ручного труда. Однако если пользователя не устраивает такой принцип работы
(когда нужно часто и подолгу читать документацию и думать, чтобы «ручную» работу
выполнял компьютер), Vim и Emacs будут не самым лучшим выбором. Для обычного
редактирования текста вручную лучше выбрать один из текстовых редакторов с
простым и привычным интерфейсом: в дистрибутивах Linux можно найти огромное
количество таких текстовых редакторов с большими или меньшими возможностями:
1Эта кажущаяся сегодня тривиальной возможность сколько угодно редактировать текст, не оставляя при этом никаких следов, была радикальнейшим достижением прогресса по сравнению с пишущей машинкой. 2Vi, как и большинство основных утилит и принципов, унаследован Linux от UNIX. Название Vim происходит от visual editor, «визуальный», экранный редактор, поскольку Vim — первый редактор для UNIX, использующий весь экран для отображения текста и позволяющий работать с текстом не построчно, а перемещаясь по нему в любых направлениях, как по странице. 3Обычно современные терминалы и программы-эмуляторы терминалов поддерживают вывод текста по крайней мере несколькими разными цветами. 4Если используется не Vi, или настройка
5В действительности содержимое буфера хранится в специальном временном файле (swap file). Если сеанс работы в редакторе по какой-то причине прервался, то этот временный файл не будет удалён, и при следующей попытке продолжить незаконченную работу с файлом Vim предложит провести процедуру восстановления — на случай, если во временном файле остались несохранённые изменения. 6Управляющая последовательность « 7Символами « 8За свои длинные команды из разных комбинаций управляющих клавиш название Emacs получило шуточную расшифровку: Escape-Meta-Alt-Control-Shift. |
||||||||||||
Новости сайта Антивирус |
Дизайн: Alex