Voici un plugin Vim issu d’une expérience qu’on mène avec un collègue: vim-refactor. Il fonctionne pour l’instant sur du code Ruby et permet d’extraire une méthode.

À partir de ce genre de code:

class HelloWorld

  def greet
    greeting = "Hello World!"
    puts greeting
  end

end

En étant positionné sur la ligne 4, et en appelant :ExtractMethod (ou bien sûr un mapping quelconque) vous obtenez ceci:

class HelloWorld

  def greet
    puts greeting
  end

  def greeting
    "Hello World!"
  end
end

C’est vraiment une version alpha. On espère implémenter d’autres types de refactoring et supporter d’autres langages.

À demain.