Я думаю , что было бы полезно иметь возможность для обмена true
и false
значений в коде быстро, с комбинацией ctrl+ aили ctrl+ x. Есть ли какой-нибудь плагин для этого или что-то еще?
key-bindings
Александр Мышов
источник
источник
Существует switch.vim , и он настраивается.
Например, если курсор находится
true
в следующем коде:затем, после выполнения
:Switch
,true
превратится вfalse
.источник
Множество плагинов
Переключение
true
/false
и подобное было реализовано многими авторами плагинов. Два из них уже были упомянуты:Другие - переключение Тимо Тейфеля ( # 895 ), понедельник - Стефана Карлссона ( # 1046 ), toggle_words - Винсента Вана ( # 1676 ), toggle_word - Александра Унгура ( # 1748 ), incbool.vim - Дмитрия Петрова ( # 4361 , github ) , следующий шаг Майкла Арлта ( # 4536 , github ).
На всякий случай, если вы хотите увеличить числа в соответствии с пользовательской серией, например, серией Фибоначчи, обратитесь к Nexus от Barry Arthur ( github ).
Плагины с наддувом
Ctrl-A/X
Однако не все из них следуют по умолчанию идее расширения,
Ctrl-A/X
но определяют новую команду и / или новое отображение (в том числе switch.vim и toggle-bool ). Я хочу выделить те плагины, которые «перезаряжаются»Ctrl-A/X
из коробки и, следовательно, по умолчанию предоставляют то, что запросил ОП:Связанный плагин, который также расширяет,
Ctrl-A/X
является ускоренным датированием Тимом Поупом ( # 2120 , github ), который позволяет увеличивать даты.Отступать
Некоторые плагины позволяют комбинировать второй
Ctrl-A/X
плагин инкремента в качестве запасного варианта, напримерSwapIt от Майкла Брауна:
цикл по bootleq:
switch.vim от Андрея Радева:
Примечание.
Если вы используете поведение поиска встроенной функции
Ctrl-A/X
(найдите следующее возможное значение в строке для приращения), перегружать их может помешать.источник
измените отображение на то, что вы хотите использовать
отмена в том случае, если вы используете его поверх пробела, так как ciw будет редактировать пробел вместо слова (и нет простого способа надежно добраться до нужного слова)
также обратите внимание, что ^ M должен быть
<C-V><Enter>
, а не буквально ^ Mисточник
<C-a>
и<C-x>
когда текущее слово не является логическим, таким образом OP действительно сможет использовать эти отображения. Кроме того, вы можете использовать<CR>
вместо^M
своего отображения, и, как правило, рекомендуется предоставить режим для вашейmap
команды, здесьnnoremap
более подходящим, чемnoremap
.