What is it ?
xStructure is a plugin for IntellijIDEA which provides a flexible way to display structure of XML files to make navigation easier. It is not only based on tags names, but also uses attributes and tag values.
Instead of this :
you could see this :
or this :
How do I install it ?
IntellijIDEA provides a plugin manager which allows user to download plugins from IDE. Plugin manager is available from Settings dialog.
No further step is required, see Settings for available options.
How does it work ?
xStructure provides a flexible way to customize Structure view. This is achieved through custom mapping definition files. These files define how each XML element must be displayed (or hidden) inside Structure view. Rules are based on regular expressions or XPath. A mapping definition file is associated to one or more DTD or XML Schemas. When a XML file is opened inside IntellijIDEA, Structure view is automatically customized according to mappings found for current file.
How do I find mapping definition files ?
A set of definition files are bundled in xStructure plugin. They target some common XML file types : Maven, Web Application, Portlet Application, Spring Beans, Hibernate Mapping,...
These files are automatically copied in
%INTELLIJ_CONFIG_DIR%/xstructure/default directory so you may customized them.
You'll also find other definition files on this page : MappingDefinitionRepository.
Can I create or change mapping definition files ?
Yes, xStructure plugin loads all XML files stored in
%CONFIG_DIR%/xstructure directory, recursively. You can change existing files or create new ones. See this page to help you writing mapping definition files (but reading an existing file should be enough): CustomizationGuide.
You are welcome to share your contributions by sending them to me on sylfradev:yahoo:fr. I will publish them on mapping definition repository.
What is planned for next releases ?
See the Features page to see features planned for next releases.
You are also welcome to send your requests using Issue tracker.
Found a bug ?
Please, describe it using Issue tracker.