Еще горстка материалов:

Редактор Vim

Что может делать Vim?

1. Редактирование текста

Переместить курсор вниз на 7 строк 

Нажать 7j

Удалить слово

Нажать dw

Поиск и замена только в строках с 10-ой по 50-ую?

Выполнить :10,50s/old/new/g

Посмотреть две разные части одного и того же файла

Выполнить :sp ('split') для разделения показываемого 

Разделить текущее окно на 2 и открыть файл «filename», если указан;

:sp[lit] [filename]

Открыть файл имя которого прописано в текущем документе и курсор стоит на нем ?

Нажать gf

Включить подсветку синтаксиса

Выполнить :syntax on

У вас есть какие то данные где только первые 10 символов в каждой строке являются полезными а остальное уже не нужно для вас. Как вы получить эти данные?

Нажмите ctrl-v, выделите текст и нажмите y для копирования выделенных строк и столбцов текста

Запустить замену только в 20 первых строках текста и получить возможность подтверждения да/нет для каждой замены

0,20s/from/to/gc. Опция с ('c'onfirmation) означает, что мы хотим подтверждение для каждой замены .

Переход в начало строки, если находимся в нужной строке

I

перемещает курсор в начало строки а затем переключает в режим вставки 

Поместить курсор на предыдущую позицию и включить режим вставки

i

Разместить курсор после текущей позиции

a

Добавить текст в конце строки

A

Создать новую строку ниже и начать ввод данных

o

Создать новую строку выше и начать ввод данных

O

Замена текущего символа

s

Замена текущей строки

S

Курсор к началу слова

Заменить текущий символ

r

Заменить несколько последовательно расположенных символов

R

Предположим что вы хотите выделить несколько слов и заменить их полностью каким то новым текстом

 

 

Поместить курсор в начало текста и нажать v, чтобы начать визуальный режим. Используя клавиши со стрелками или какие либо текстовые команды перейти в конец соответствующего текста (например нажмите 5e для перехода к концу пятого слова от текущей позиции курсора а), а затем нажмите c ("c'hange), чтобы изменить текст. В этой конкретной операции вы будете переведены в режим вставки поэтому после его окончания нажмите esc. Команда v работает с символами. Если вы хотите работать со строками используйте верхний регистр V.

Переместить курсор на 45 строк вниз

Нажмите 45j

Переход в начало строки

^

Переход в конец строки 

$

Перемещение на один экран назад

Ctrl-b

Перемещение на один экран вперед

Ctrl-f

Строку на которую перейти, например 60

60G

Последняя строка в файле

G

В начало файла

1G

Переместить на 30 символов в право

30l

Последняя строка показанная на экране

L

Первая строка в окне

H

На 2 слова вперед

2w

Назад на 2 слова

2b

Перемещения на предыдущее предложение

(

Перемещения на следующее предложение

)

 

2. Работа с файлами

Сохранение моего файла

:w

Для открытия файлов

:e ../tmp/test.txt

Удалить строку

dd

Копировать

y

Вставить

p

вырезать

d

Удалить слово

dw

Вставить после текущей позиции курсора

p (нижний регистр)

Вставить до текущей позиции курсора

P (верх регистр)

Поменять два слова

dwwP

 

3. Vim множество окон

Есть два файла file1.txt и file2.txt. Открое file1.txt :e file1.txt. Теперь давайте откроем новый буфер разделив окно с помощью команды :new. Теперь вам доступно обычное редактирование в новом буфере в новом окне. Перемещаемся по окнам клавишами Ctrl-w

Практическая ситуация в которой применение нескольких окон полезно когда вы хотите посмотреть две разные части одного и того же файла одновременно. Просто запустите :sp ('sp'lit) , для создания разделенного окна. Для создания вертикального разделения используйте :vsp

4. Настройки Vim

Отобразить нумерацию строк

:set number

Переносить длинные строки

:set wrap

Включить/выключить подсветку синтаксиса

:syntax on/off

Запустить внешнюю команду «cmd»

:!cmd

Отсортировать выделенный текст

:!sort

Сортировка всего текста

:%!sort

 

 

 

Обновлено 06.04.2016 20:36

unix-way