Я только что узнал о по-настоящему потрясающих object-select возможностях vim.С курсором в некотором «текстовом объекте», набор простых глаголов может выбирать или воздействовать на весь объект.Например, с курсором в любом месте внутри кавычек ниже (например, над 'o'):
print "Hello, world"
^
Команда vi"
выберет всю фразу внутри кавычек.Эта же возможность работает с рядом « текстовых объектов », которые определяет vim, включая слова, предложения, абзацы и символы, заключенные в кавычки, скобки и фигурные скобки.
Но теперь я хочу, чтобы это понятие «текстового объекта» знало язык, на котором я пишу.Например, рассмотрим следующий питон:
re.sub("[^A-Z ]", " ", string)
Я хотел бы иметь возможность разместить курсор где-нибудь над этим и выбрать все это.Вызов функции является четко определенной синтаксической конструкцией, но это не «слово», «предложение», «абзац» или заключенные в кавычки или фигурные скобки.
Существуют ли какие-либо плагины или хиты vimrc, которые определяют эти виды зависящих от языка "текстовых объектов"?