Since the last announcement of clj-refactor in this group, there's been a flurry of activity. Lars Andersen <https://github.com/expez> and Benedek Fazekas <https://github.com/benedekfazekas> have been hard at work with the editor-agnostic refactor-nrepl <https://gitter.im/clojure-emacs/refactor-nrepl> package, which was spawned out of clj-refactor.el. I'm happy to say that there are now refactorings in both Light Table <https://github.com/rundis/clj-light-refactor> and vim <https://github.com/Deraen/vim-cider> available based on this effort.
As for clj-refactor, the latest releases have brought a lot of new features - here are some highlights: - *Add project dependency* gives you a list of artifacts on Clojars, lets you select version and adds it to your project.clj, then hotloads the dependency into your REPL. demo <https://github.com/clojure-emacs/clj-refactor.el/wiki/cljr-add-project-dependency> - *Add missing libspec* finds the symbol at point in your classpath, and adds the proper require statement to your namespace. demo <https://github.com/clojure-emacs/clj-refactor.el/wiki/cljr-add-missing-libspec> - *Find usages* opens a grep-like buffer with all usages of the symbol at point. demo <https://github.com/clojure-emacs/clj-refactor.el/wiki/cljr-find-usages> - *Rename symbol* renames all occurences of the symbol at point, in your project. demo <https://github.com/clojure-emacs/clj-refactor.el/wiki/cljr-rename-symbol> - *Clean namespace* - Eliminates :use clauses in favor of refer :all. - Sorts required libraries, imports and vectors of referred symbols - Raises errors if any inconsistencies are found (e.g. a libspec with more than one alias). - Removes any duplication in the :require and :import form. - Removes any unused libspec vectors - Removes unused symbols from the :refer vector, or removes it completely. - Removes any unused imports - Optionally rewrites to favor prefix form, e.g. [clojure [string test]] instead of two separate libspecs demo <https://github.com/clojure-emacs/clj-refactor.el/wiki/cljr-clean-ns> - *Extract function* extracts the form at point, or the nearest enclosing form, into a toplevel defn.demo <https://github.com/clojure-emacs/clj-refactor.el/wiki/cljr-extract-function> - *Inline symbol* replaces the symbol at point with its definition. Removes empty lets afterwards.demo <https://github.com/clojure-emacs/clj-refactor.el/wiki/cljr-inline-symbol> - *Add stubs* adds a skeleton implementation of the protocol or interface at point. demo <https://github.com/clojure-emacs/clj-refactor.el/wiki/cljr-add-stubs> And a whole bunch more. See everything clj-refactor has to offer <https://github.com/clojure-emacs/clj-refactor.el/wiki>. Thanks to all the contributors, and especially to Lars and Ben! -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.