Aptana Studio Developer Wiki
From Aptana Development
Welcome to the Aptana Developer Page!
Contents |
Quick Links
- ScriptDoc XML Reference (JavaScript code assist)
- ScriptDoc XSD (JavaScript code assist)
- Use http://www.xmlme.com/Validator.aspx for quick online validation
- Metadata XML Reference (HTML/CSS code assist)
- Adding support for a new Ajax library
Accessing the Aptana Source
GitHub Repositorys
Aptana has moved towards utilizing Github for repository management. You can checkout our GitHub Home Page here. Our home is to increase community support and development involvement.
Aptana Studio
There are a number of repositories that you might find helpful to begin contributing to Aptana Studio
- Studio: http://github.com/aptana/studio (our umbrella feature source)
- Ide_core: http://github.com/aptana/ide_core ( holds the Aptana Studio Core plugins and features)
- XULrunner: http://github.com/aptana/xulrunner
RadRails
- RadRails: http://github.com/aptana/radrails ( the RadRails plugin source and standalone customizations)
- RDT: http://github.com/aptana/rdt
AJAX Libraries
- AJAX Libraries: http://github.com/aptana/frameworks
Connecting to source control
- Getting started with Subversion
- Getting started with GIT
- Connecting to Source Control
- Building the Aptana Studio source code
- Subversion tips and tricks
Guidelines (To Be Updated)
- Submitting a Patch
- Debugging the build process
- Adding a plugin to the build process
- Source Code Conventions
- Trac Ticket Guidelines
Developing for Aptana
Topics on extending the existing Aptana code base. If you'd like to see a topic added, please add it to the list here, and we'll do our best to fill it in.
- Development Guidelines
- Java Coding Standard
- OSS License Compatibility
- Eclipse tips and tricks
- Adding context-sensitive Help to a plugin
- Setting a run-time preference manually
- Embedding a JAR into a plugin
- Adding a new plugin to the product
- Creating a new Aptana Editor
- Creating a plugin
- Creating an Editor extension
- Creating a file wizard
- Creating file wizard extensions
- Defining file wizard content
- Creating an Aptana Editor class
- Lexing your language
- Colorizing your language
- Adding parser for your language
- Adding folding support
- Adding custom validator
- Adding custom pair finder
- Contributing to context toolbar
- Creating a Virtual File Manager
- Adding new browser support
- Utilizing custom browser URLs
- Extension Points
- Editor Philosophy
- Internal HTTP servers
Testing
Before Basic acceptance tests are performed, the complete suite of unit tests should be run.
- Smoke Tests
- Acceptance Tests
- Aptana Cloud Tests
Reference
Items useful as references when developing Aptana code or web sites
- ScriptDoc XML Reference (JavaScript code assist)
- Metadata XML Reference (HTML/CSS code assist)
- Aptana Debugger Protocol
- Corporate Colors
Extending Editor Views
Adding support for a new Ajax library
Developing for Aptana Rails
Topics on extending the existing Rails code base. If you'd like to see a topic added, please add it to the list here, and we'll do our best to fill it in.
Distributing Aptana
Topics on creating packagers for the Aptana IDE
- Creating a Windows Aptana IDE installer
- Creating a OS X Aptana IDE installer
- Creating a Debian Aptana IDE package
Code Samples
These are useful snippets of code we either ran across or developed while working on Aptana. If you have other snippets, please add them here. Remember to add attribution headers to the code comments if you'd like to to be acknowledged.
- Abstract JavaFileEditorInput changes between Eclipse 3.1 and Eclipse 3.2
- Abstract NonExistingFileEditorInput changes between Eclipse 3.1 and Eclipse 3.2
- Determining the calling method in Java
- Setting the preferences for a plugin programmatically
Standards Work
Documents and other items designed for future standards body submissions.
Planning
Figured it out the Hard Way
Tips and tricks that only were discovered through trial and error, and didn't show up in any Google searches we did. Putting them here in case someone else finds them useful
- Trac
- Eclipse RCP
- CruiseControl
- Windows


