Этот урок не простойvim
Операция введение, больше сIntellj Idea
Сотрудничать. нужно иметь обаIntellj Idea
а такжеvim
Используйте базовые знания одноклассников.
01. Введение
Vim
текстовый редактор с широкими возможностями настройки, предназначенный для эффективного создания и изменения любого типа текста. это как "vi
«входит в большинствоUNIX
система иApple OS X
середина. Vim очень стабилен и постоянно совершенствуется.
Его особенности включают в себя:
-
Постоянное многоуровневое дерево отмены
-
Обширная система плагинов
-
Поддержка сотен языков программирования и форматов файлов
-
Мощный поиск и замена
-
Интеграция со многими инструментами
Зачем использовать Vim с Intelj Idea? Когда мы изучаем новый навык или новый язык программирования, новую модель программирования. Мы должны спросить себя, что заставляет нас так поступать? Какие болевые точки он может решить для вас после его изучения. Так у нас будет больше мотивации учиться.
позвольте мне попробовать научитьсяVim
Причина:
Mac
под платформойIntellj Idea
многие из часто используемыхaction
все нужноcommand + option
Эта комбинация клавиш, от I go toMac
Я был очень раздражен, когда нажал на кнопку Лично я считаю, что эта кнопка очень античеловеческая.
Будучи студентом, изучающим серверную часть, мне по-прежнему часто приходитсяlinux
Перейдите на сервер, чтобы изменить системный файл конфигурации сервера. Напримерnginx
конфигурация, в настоящее время неизбежно использованиеvim
редактор. Если вы не квалифицированы, это довольно неудобно работать.
существуетIntellj Idea
установлен вvim
после плагина. является дополнительным состоянием, которое использует сильные стороны каждого из них для повышения эффективности программирования.
02. Установка
существуетIntellj Idea
Установите следующие три плагина
-
IdeaVim
-
IdeaVim-EasyMotion
-
IdeaVimExtension
Когда вы обнаружите, что значок запрограммирован с маленьким квадратом, как показано выше, это означает, что плагин успешно установлен.
03. Vim
должен сказатьvim
Есть еще некоторые затраты на обучение, и типичный вход сложен, и вам это понравится после того, как вы начнете. Здесь я кратко подытожу и организую некоторые основные операции.
Упражнение 1: Клавиши со стрелками для связи с hjkl
Основываясь на собственном опыте, я перешел от нативных редакторов кVim
Самое непривычное, что движение клавиш со стрелками изменилось с исходных клавиш со стрелками наhjkl
На самом деле об этом особо нечего сказать, но это препятствие необходимо преодолеть. Просто практикуйтесь. (На картинке ниже показана демонстрация Gif)
Упражнение 2. Копирование и вставка
CV
Дафа хороший, ведь люди иногда смеются над собойC V
Инженер 😈 Так что копировать и вставлять все равно надо учиться с первого раза, чтобы было лучшеcoding
💩.
-
yy
скопировать текущую строку -
p
вставить
Упражнение 3: Узнайте немного больше
В обучении некоторые другие команды подают эффективность.
y p f h c i
Шаги в GIF следующие:
-
yy
скопировать текущую строкуprivate String username;
-
p
Вставьте скопированный контент -
f;
перейти к персонажу;
, здесь фактически эквивалентно положению строки. -
h
переместить один курсор влево -
ciw
удалить текущее слово и ввести插入模式
-
password
Введите пароль для завершения
v j d
Шаги в GIF следующие:
-
V
Войти в режим выбора контента -
kkk
Поднимитесь на 3 строки вверх и выберите -
d
удалить выделение
Удалить на уровне блока "общий" di* da*
di"
удалять"
Содержание внутри, я лично считаю, что это все еще очень часто используется. Это также метод работы, который изначально превосходит традиционную интеллектуальную идею с точки зрения эффективности. Если вы хотите войти в режим вставки сразу после удаления, вы можете использоватьci"
di(
удалять(
Если вы хотите войти в режим вставки сразу после удаления, вы можете использоватьci(
di{
удалять{
Если вы хотите войти в режим вставки сразу после удаления, вы можете использоватьci{
Различные входы в режим вставки
-
i
перед курсором войти в режим вставки -
I
В начале этой строки введите режим вставки -
a
После курсора войдите в режим вставки -
A
В конце строки введите режим вставки -
o
Добавьте новую строку после этой строки и войдите в режим вставки -
O
Добавьте новую строку перед этой строкой и войдите в режим вставки -
s
Удалить текущий символ и войти в режим вставки -
S
Удалить весь текст в текущей строке и войти в режим вставки
Когда я впервые изучил vim, я знал толькоi
Войдите в режим вставки. Позже я узнал, что есть так много способов.
Если вы действительно переключитесь, все методы здесь могут быть использованы.
Ниже приведена демо-версия gif, вы можете сразу ее пропустить.
-
a
После курсора войдите в режим вставки
-
i
перед курсором войти в режим вставки
-
o
Добавьте новую строку после этой строки и войдите в режим вставки
-
A
В конце строки введите режим вставки
-
I
В начале этой строки введите режим вставки
-
O
Добавьте новую строку перед этой строкой и войдите в режим вставки
Упражнение 4: прыжок
Я должен сказать, что мы больше используем vim, чтобы уменьшить количество операций с мышью, потому что для использования мыши ваши руки должны отрываться от клавиатуры.
Снова и снова беда! ! ! Поэтому нам нужно больше знать о движении курсора.
-
[n]f{word}
f
найти втекущая строкаЕсть ли символ после текущего курсора{word}
Переместите курсор, если он существует -
$ | ^
$
перейти в конец строки^
перейти к началу строки -
%
Прыжок в скобках() [] {}
-
*
Перейти к позиции предыдущего символа -
[n]h/j/k/l
Цифры плюс клавиши со стрелками показывают, сколько раз повторять прогон. -
2jj перейти на две строки вниз
-
10l сдвинуться на 10 символов вправо
-
3кк спуститься на 3 строчки вниз
-
20h сдвинуться на 20 символов влево
-
G | gg
-
G перейти к последней строке
-
gg перейти на первую строку
-
H | M | L
-
H перейти на первую строку текущей страницы
-
M, чтобы перейти в середину редактора
-
L перейти к последней строке текущей страницы
-
[n]w
Перейти к началу следующего слова, которому предшествует число, указывающее, сколько раз повторять -
e
перейти к концу следующего слова -
b
перейти к началу предыдущего слова -
zz
Измените общее положение окна и переместите текущую позицию курсора в середину окна.
Ниже приведена демо-версия gif
-
[n]f{word}
f
найти втекущая строкаЕсть ли символ после текущего курсора{word}
Переместите курсор, если он существует. -
Если вы измените f здесь на F, это будет обратный поиск
-
$ | ^
$
перейти в конец строки^
перейти к началу строки
-
%
Прыжок в скобках() [] {}
Упражнение 5. Изучите некоторые распространенные сценарии
Другие полезные команды
-
zo | zc
-
dt{char}
04. Конфигурация
Фактически, после установки Vim официальный представитель предоставил нам только базовую полку, которая может реализовать основные операции Vim. Если вы хотите использовать его более плавно, вам нужно сделать собственную персонализированную конфигурацию Vim. Это чистый лист бумаги, и вам решать, как он будет написан.
Как настроить модули Vim в Idea
Щелкните значок Vim в правом нижнем углу, затем щелкнитеOpen ~/.ideavimrc
Базовая конфигурация
Старые правила, лично я считаю, что новичкам для настройки редактора лучше обратиться к общей конфигурации сообщества. Когда вы станете более опытным в Vim, вы сможете добавлять свои собственные вещи.
"语法高亮syntax on"显示行号set number relativenumber"显示光标所在位置的行号和列号set rulerset wrap "自动折行set shiftwidth=4set tabstop=4set softtabstop=4set expandtab "将tab替换为相应数量空格set smartindentset backspace=2set co=5"设置取消备份 禁止临时文件生成set nobackupset noswapfile" 为IdeaVim插件增加自动切换为英文输入法的功能," idea 需要安装 IdeaVimExtension pluginset keep-english-in-normal"设置匹配模式 类似当输入一个左括号时会匹配相应的那个右括号set showmatchset clipboard^=unnamed,unnamedplus"set laststatus=2 "命令行为两行"set fenc=utf-8 "文件编码"set mouse=a "启用鼠标"set ignorecase "忽略大小写set cursorline "突出显示当前行"set cursorcolumn "突出显示当前列set fdm=marker
Более специальная конфигурация выше
-
Установите относительный номер, чтобы вы могли видеть относительный номер строки
-
Keep-english-in-normal После включения этой настройки способ ввода может автоматически переключаться на английский язык после входа в командный режим. Это по-прежнему очень рекомендуется установить, иначе каждый раз, когда вы переключаетесь из режима вставки в командный режим, если на этот раз используется китайский метод ввода, опыт будет очень плохим.
-
set clipboard^=unamed,unnamedplus
Общий буфер обмена, буфер обмена Vim и буфер обмена системы изолированы. После настройки им можно поделиться.
Конфигурация действий
В идее, большинство операций могут быть абстрагированы на такое действие
-
Переименуйте файл
-
Переименовать переменную или имя класса RenameElement
-
Перейти к интерфейсу, реализующему GotoImplementation
-
Скопируйте ссылку на класс CopyReference
-
...
В Vim вы можете вызывать действия напрямую, вставив командный режим
Изображение GIF выше демонстрируется вызовомRenameElement
Действие по переименованию переменной.
После первоначального знакомстваIntellj Idea
изaction
После этого я поделюсь некоторыми из наиболее часто используемых конфигураций, которые я использую в настоящее время, которые можно вызывать с помощью сочетаний клавиш.action
"jk退出insert模式inoremap jk <ESC>let mapleader = '\<space>'"Idea action 配置" 重命令元素nnoremap <Leader>re :action RenameElement<CR>nnoremap <Leader>gi :action GotoImplementation<CR>nnoremap <Leader>im :action ImplementMethods<CR>nnoremap <Leader>rv :action IntroduceVariable<CR>nnoremap <Leader>cr :action CopyReference<CR>nnoremap <Leader>em :action ExtractMethod<CR>nnoremap <Leader>sw :action SurroundWith<CR>
action listIntellj Idea
только во всехaction
список
Конфигурация плагина
На самом деле система плагинов в Vim очень мощная, но поскольку мы находимся вIntellj Idea
используется вVim
можно использовать многоIntellj Idea
Многие оригинальные функции. Пока не нашел очень яркого плагина. Так что, если вы также используете его, вы можете поделиться им.
05. Ссылки
Введение в vim на станции B: bilibili.com/video/BV1Yt411X7mu
Краткое руководство по прокачке VIM: coolshell.cn/articles/5426.html
Learn-Vim: github.com/iggredible/Learn-Vim
Конфигурация Vim: ruanyifeng.com/blog/2018/09/vimrc.html
Соавтор: Ху Чуанган
Знайте домашнюю страницу: zhihu.com/people/hu-chuan-gang-58
Домашняя страница GitHub:GitHub.com/Xiao Xiu, иди…