= Welcome to the manual page of [http://plc.inf.elte.hu/erlang RefactorErl] = !RefactorErl is a source code analyser and transformer tool for Erlang, developed at Eötvös Loránd University, Budapest, Hungary. This wiki aims to help the (prospective) users understand the main features of the tool and to guide their everyday use. == Main features == * Semantic Queries (to query different kinds of syntactic and semantic information about the source code) * User-defined [wiki:SemanticQuery semantic queries] (see [wiki:QueryComponents the reference of available components]) and integrated with them, [wiki:MetricQuery metric queries] * [wiki:PreDefinedSemanticQuery Pre-defined semantic queries] in the web interface * [wiki:SideEffect Side effect] analysis * [wiki:DataFlow Data-flow] and [wiki:DynFunAnal dynamic function call] analysis * [wiki:Dependency Dependency] analysis * [wiki:InterfaceLayers Interface layer] consistency check * [wiki:ModuleFunctionClustering Module and function clustering] * 24 different [wiki:RefactoringSteps refactoring steps] * Layout preservation for unmodified source parts * Two different storage backends: [wiki:MnesiaDB Mnesia] and [wiki:NifDB C++ graph based] == Interfaces == * [wiki:ri Interactive] and [wiki:ris scriptable] Erlang shell interface * [wiki:WebInterface Web interface] * [wiki:CommandLineInterface Linux shell interface (CLI)] * [wiki:EmacsInterface Emacs/XEmacs interface] * [wiki:EclipseInterface Eclipse], [wiki:VimInterface Vim plugin] == HOWTOs == === Installing and configuring the tool or the interfaces === * [wiki:HowtoInstallErlang How to install Erlang?] * [wiki:Install How to install the tool?] * [wiki:HowtoInstallYaws How to install Yaws?] * [wiki:HowtoConfigureEmacs] * [wiki:HowtoConfigureEclipse] * [wiki:HowtoConfigureVim] * [wiki:HowtoWebInterface] === Starting the tool === * [wiki:HowtoStartAsAStandaloneServer] * [wiki:] [wiki:FirstUsage Starting the tool] === Analysing the source code === * [wiki:HowtoAddFiles] * [wiki:HowtoAddIncludePaths] * [wiki:] [wiki:InitialLoadingError Handling errors at initial loading] == To be continued... == {{{#!comment = Welcome to Trac 0.12.2 = Trac is a '''minimalistic''' approach to '''web-based''' management of '''software projects'''. Its goal is to simplify effective tracking and handling of software issues, enhancements and overall progress. All aspects of Trac have been designed with the single goal to '''help developers write great software''' while '''staying out of the way''' and imposing as little as possible on a team's established process and culture. As all Wiki pages, this page is editable, this means that you can modify the contents of this page simply by using your web-browser. Simply click on the "Edit this page" link at the bottom of the page. WikiFormatting will give you a detailed description of available Wiki formatting commands. "[wiki:TracAdmin trac-admin] ''yourenvdir'' initenv" created a new Trac environment, containing a default set of wiki pages and some sample data. This newly created environment also contains [wiki:TracGuide documentation] to help you get started with your project. You can use [wiki:TracAdmin trac-admin] to configure [http://trac.edgewall.org/ Trac] to better fit your project, especially in regard to ''components'', ''versions'' and ''milestones''. TracGuide is a good place to start. Enjoy! [[BR]] ''The Trac Team'' == Starting Points == * TracGuide -- Built-in Documentation * [http://trac.edgewall.org/ The Trac project] -- Trac Open Source Project * [http://trac.edgewall.org/wiki/TracFaq Trac FAQ] -- Frequently Asked Questions * TracSupport -- Trac Support For a complete list of local wiki pages, see TitleIndex. }}}