= Welcome to the manual page of !RefactorErl! [http://plc.inf.elte.hu/erlang RefactorErl] is a source code analyser and transformer tool for [http://www.erlang.org/ Erlang], developed at [http://www.elte.hu/en Eötvös Loránd University], [http://en.wikipedia.org/wiki/Budapest Budapest], [http://en.wikipedia.org/wiki/Hungary Hungary]. This wiki aims to help our users understand the main features of the tool and to guide their everyday use. If you are new to !RefactorErl, you can find some installation and configuration instructions. == Getting started * [wiki:Install How to install the tool] * How to start the tool in [StartUp#Normalmode normal] / [StartUp#Servermode server] / [StartUp#Clientmode client] mode * How to configure GUIs: [WebInterface#Startingup Web] / [EmacsInterface#ConfigurationinXEmacsEmacs Emacs] / [VimInterface#Installation Vim] {{{#!comment [EclipseInterface#Configuration Eclipse] }}} {{{#!comment == Analysing Source Code * HowtoAddFiles * HowtoAddIncludePaths * [InitialLoadingError Handling errors at initial loading] }}} == Feature highlights * Static analysis * Side effects * Data-flow, Control-flow * [DynamicCallAnalysis Dynamic function calls] (e.g. apply) * [wiki:Dependency Module and function dependencies] * [InterfaceLayers Interface layer] consistency check * Program comprehension (code inspection, grokking) * [SemanticQuery Custom (ad-hoc) semantic queries] (see the reference of [SemanticQuery/Components available components]) * [PreDefinedSemanticQuery Pre-defined semantic queries] (available via the web interface) * [MetricQuery Metric queries] * Multiple storage back-ends: [wiki:MnesiaDB Mnesia] and [wiki:NifDB C++ graph based] * Code refactoring: 24 different [RefactoringSteps refactoring steps] * [ModuleFunctionClustering Module and function clustering] == User interfaces * [ErlangShellInterface Interactive] and [ScriptableInterface scriptable] Erlang shell * [WebInterface Web based] * [CommandLineInterface Linux shell (CLI)] * [EmacsInterface Emacs/XEmacs integration] * [VimInterface Vim plugin] {{{#!comment [EclipseInterface Eclipse], }}}