Skip to content

Custom vim movements for selecting variables in PHP and Ruby

License

Notifications You must be signed in to change notification settings

robmiller/vim-movar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 

Repository files navigation

movar

movar is a Vim plugin that adds a couple of movements that make working with variables easier.

av: around variable

movar adds the movement av — "around variable" — which makes it easy to yank, change, or delete variables in one fell swoop.

It covers a lot of use cases that previously would require several different movements. For example, with the cursor anywhere in the variable in the following examples, cav would always select the variable and only the variable:

if ( $_SERVER['REQUEST_URI'] === '/foo' ) {

(rather than ciW)

if ( isset($_SERVER['REMOTE_ADDR']) ) {

(rather than ci()

As well as some cases not easily covered by existing movements, like:

$foo->bar("baz")

...where no single movement would allow you to select $foo->bar from within the variable.

## iv: inner variable

For variables that have sigil characters — e.g. Ruby, which uses @ for instance variables and $ for global variables — movar adds another movement: iv, which matches the name of the variable but leaves the sigil intact. So, if you have:

@foo['bar']

…then calling civ from anywhere within the variable will change foo['bar'] and leave the @ in place.

## Language support

At the moment, movar supports PHP, Javascript, and Ruby, but it should be relatively straightforward to add new rules for different languages in the future.

About

Custom vim movements for selecting variables in PHP and Ruby

Resources

License

Stars

Watchers

Forks

Packages

No packages published