Изучаем vi и Vim. Не просто редакторы [8 ed.] 9785446120192

Среди текстовых редакторов, используемых программистами, самыми важными является vi и его вариации. В обновленном издани

181 22 11MB

Russian Pages 528 Year 2023

Report DMCA / Copyright

DOWNLOAD FILE

Изучаем vi и Vim. Не просто редакторы [8 ed.]
 9785446120192

  • Commentary
  • Publisher's PDF

Table of contents :
Предисловие
Структура книги
Способ подачи материала
Описание команд vi
Условные обозначения
Команды и клавиши
Список проблем
Что нужно знать перед началом работы
Использование примеров кода
О предыдущих изданиях
Восьмое издание
Что нового
Версии
Благодарности из 6-го издания
Благодарности из седьмого издания
Благодарности в восьмом издании
От издательства
Основные приемы работы в vi и Vim
Глава 1. Знакомство с vi и Vim
Текстовые редакторы и редактирование текста
Текстовые редакторы
Редактирование текста
Небольшая историческая справка
Открытие и закрытие файлов
Открытие файла из командной строки
Открытие файла из графического интерфейса
Проблемы при открытии файлов
Modus Operandi
Сохранение и закрытие файла
Закрытие файла без сохранения изменений
Проблемы при сохранении файлов
Упражнения
Глава 2. Основы редактирования
Команды vi
Перемещение курсора в командном режиме
Единичное перемещение
Числовые аргументы
Перемещение по строке
Перемещение по фрагментам текста
Базовые операции
Ввод текста
Добавление текста
Замена текста
Изменение регистра
Удаление текста
Перемещение текста
Копирование текста
Повторение или отмена последней команды
Другие способы вставки текста
Числовые аргументы для команд ввода
Объединение двух строк с помощью команды J
Проблемы с командами в vi
Индикаторы режимов
Перечень основных команд vi
Глава 3. Эффективная навигация
Перемещение по экранам
Прокрутка экрана
Изменение положения экрана с помощью команды z
Перерисовка экрана
Перемещение по видимой части экрана
Перемещение по строкам
Перемещение по текстовым фрагментам
Перемещение путем поиска
Повторный поиск
Поиск в текущей строке
Перемещение по номерам строк
Команда G (перейти к)
Перечень команд перемещения в vi
Глава 4. За пределами основ
Дополнительные комбинации команд
Параметры загрузки vi и Vim
Перемещение в определенное место
Режим чтения
Восстановление содержимого из буфера
Использование регистров
Восстановление удаленного текста
Работа c именованными регистрами
Маркеры
Другие расширенные возможности редактирования
Перечень регистров и маркировки
Глава 5. Знакомство с редактором ex
Команды ex
Упражнение: редактор ex
Проблема при переходе в визуальный режим
Редактирование с ex
Адреса строк
Определение диапазона строк
Символы адресов строк
Шаблоны поиска
Переопределение местоположения текущей строки
Глобальный поиск
Сочетание команд ex
Сохранение файлов и завершение работы
Переименование буфера
Сохранение части файла
Добавление в сохраненный файл
Копирование файла в другой файл
Редактирование нескольких файлов одновременно
Вызов Vim для нескольких файлов
Использование списка аргументов
Вызов нового файла
Сочетание клавиш для имени файла
Переключение файлов в командном режиме
Правки между файлами
Краткое описание команд ex
Глава 6. Глобальная замена
Команда замены
Подтверждение замены
Глобальные действия в файле
Контекстно-зависимая замена
Правила сопоставления с шаблоном
Метасимволы в шаблонах поиска
Выражения в квадратных скобках POSIX
Метасимволы в строках замены
Дополнительные приемы замены
Примеры сопоставления с шаблоном
Поиск общего класса слов
Перемещение фрагментов с помощью шаблонов
Еще примеры
Заключительные примеры сопоставления с шаблоном
Удаление неизвестного фрагмента текста
Переключение элементов в текстовой базе данных
Использование :g для повтора команды
Сбор строк
Глава 7
Часть II. Vim
Глава 8. Vim (улучшенный vi): обзор и отличия от vi
Немного о Vim
Обзор
Автор и история
Почему Vim?
Отличие от vi
Категории функций
Философия
Вспомогательные средства и простые режимы для новых пользователей
Встроенная справка
Параметры запуска и инициализации
Параметры командной строки
Поведения, связанные с именем команды
Системные и пользовательские конфигурационные файлы
Переменные окружения
Новые команды перемещения
Перемещение в визуальном режиме
Расширенные регулярные выражения
Расширенный откат изменений
Инкрементный поиск
Прокрутка слева направо
Резюме
Глава 9. Графический Vim (gvim)
Знакомство с gvim
Запуск gvim
Использование мыши
Полезные пункты меню
Настройка полос прокрутки, меню и панелей инструментов
Полосы прокрутки
Меню
Панели инструментов
Всплывающие подсказки
gvim в Microsoft Windows
gvim в системе X Window System
Запуск gvim в Microsoft Windows WSL
Установка gvim в WSL2
Установка сервера Х для Windows
Настройка сервера Х для Windows
Параметры GUI и краткое описание команд
Глава 10. Многооконный режим в Vim
Инициация многооконного редактирования
Инициация многооконности из командной строки
Многооконное редактирование внутри Vim
Открытие окон
Новые окна
Параметры во время разделения
Команды условного разделения
Краткое описание команд для окон
Перемещение по окнам (перемещение вашего курсора от окна к окну)
Перемещение окон
Перемещение окон (поворот или перестановка)
Перемещение окон и их перекомпоновка
Команды перемещения окон: краткое описание
Изменение размеров окон
Команды изменения размера окна
Параметры изменения размера окна
Краткое описание команд изменения размера окон
Буферы и их взаимодействие с окнами
Специальные буферы Vim
Скрытые буферы
Команды буфера
Краткое описание команд буфера
Управление тегами с помощью окон
Редактирование с вкладками
Закрытие и выход из окон
Резюме
Глава 11. Расширенные возможности Vim для программистов
Свертывание и создание структуры (режим структуры)
Команды свертывания
Ручное свертывание
Создание структуры
Несколько слов о других методах свертывания
Автоматические и умные отступы
Расширения autoindent Vim для autoindent vi
Параметр smartindent
Параметр indentexpr
Заключительное слово об отступах
Завершение по ключевым словам и словарю
Команды завершения вставки
Заключительные комментарии по автозавершению Vim
Стеки тегов
Подсветка синтаксиса
Первоначальный запуск
Настройка
Создание своего собственного файла синтаксиса
Компиляция и проверка ошибок в Vim
Дополнительные варианты использования окна Quickfix List
Пара заключительных слов о роли Vim для написания программ
Глава 12. Сценарии Vim
Какой ваш любимый цвет (цветовая схема)?
Условное выполнение
Переменные
Команда execute
Определение функций
Хитрый трюк
Настойка сценариев Vim с помощью глобальных переменных
Массивы
Динамическая конфигурация типа файла с помощью сценария
Автокоманды
Параметры проверки
Переменные буфера
Функция exists()
Автокоманды и группы
Удаление автокоманд
Некоторые соображения по поводу сценариев Vim
Полезный пример сценария Vim
Подробнее о переменных
Выражения
Расширения
Еще несколько слов о autocmd
Внутренние функции
Ресурсы
Глава 13. Прочие полезные возможности Vim
Напишите это по буквам (э-т-о)
Для других целей попробуйте тезаурус
Редактирование двоичных файлов
Диграфы: символы, отличные от ASCII
Редактирование файлов в других местах
Навигация по каталогам и их изменение
Резервные копии в Vim
Преобразование текста в HTML
В чем же разница?
viminfo: итак, где же я остановился?
Параметр viminfo
Команда mksession
Какова длина моей строки?
Сокращенные версии команд и параметров Vim
Несколько простых хитростей (не обязательно специфичных для Vim)
Другие ресурсы
Глава 14. Несколько продвинутых приемов работы с Vim
Несколько удобных переназначений
Упрощенный выход из Vim
Изменение размера вашего окна
Удвойте удовольствие
Переходим к более интересному
Поиск сложно запоминаемой команды
Анализ известной речи
Еще несколько случаев использования
Увеличиваем скорость
Улучшаем строку состояния
Резюме
Часть III. Vim в более широкой среде
Глава 15. Vim как IDE: требуется сборка
Менеджеры плагинов
Поиск подходящего плагина
Зачем нам нужен IDE?
Самостоятельная работа
EditorConfig: последовательная настройка редактирования текста
NERDTree: обход дерева файлов внутри Vim
nerdtree-git-plugin: NERDTree с индикаторами состояния Git
Fugitive: запуск Git из Vim
Завершение
Termdebug: прямое использование GDB внутри Vim
Универсальные IDE
Кодировать — это здорово, но если я писатель?
Заключение
Глава 16. vi повсюду
Введение
Различные способы улучшения и оптимизации работы с командной строкой
Совместное использование нескольких оболочек
Библиотека readline
Оболочка Bash
Другие программы
Файл .inputrc
Другие оболочки Unix
Оболочка Z (zsh)
Сохраняйте как можно больше истории
Редактирование командной строки: некоторые заключительные мысли
Windows PowerShell
Инструменты разработчика
Драйвер Clewn GDB
CGDB: обязательные операции GDB
Vim внутри Visual Studio
Vim для Visual Studio Code
Утилиты Unix
Больше или меньше?
screen
И наконец, браузеры!
Wasavi
Vim + Chromium = Vimium
vi для MS Word и Outlook
Достойны упоминания: инструменты с некоторыми функциями vi
Google Mail
Microsoft PowerToys
Резюме
Глава 17. Эпилог
Приложения
Приложение А. Редакторы vi, ex и Vim
Синтаксис командной строки
Параметры командной строки
Обзор операций vi
Командный режим
Режим ввода
Синтаксис команд vi
Команды строки состояния
Команды vi
Команды перемещения
Команды вставки
Команды редактирования
Сохранение и выход
Доступ к нескольким файлам
Команды окон (Vim)
Взаимодействие с системой
Макросы
Прочие команды
Конфигурация vi
Команда :set
Пример файла .exrc
Основы ex
Синтаксис команд ex
Адреса
Символы адресов
Параметры
Алфавитный указатель команд ex
Приложение Б. Установка параметров
Параметры Heirloom и Solaris vi
Параметры Vim 8.2
Приложение В. Более светлая сторона vi
Получение доступа к файлам
Примеры файлов
Источник clewn
Онлайн руководство vi
vi Powered!
vi для любителей Java
Педаль Vim
Поразите своих друзей!
Домашняя Страница Любителей Vi
Другой клон vi
Наслаждение чистым вкусом
Цитаты о vi
Приложение Г. vi и Vim: исходный код
и разработка
Ничего схожего с оригиналом
Где взять Vim
Установка Vim для Unix и GNU/Linux
Установка Vim для окружений Windows
Установка Vim для окружения Macintosh
Другие операционные системы
Об авторах
Иллюстрация на обложке

Polecaj historie