Blog

  • Eclipse Advanced Editor Review

    Eclipse Editor Features Review

    Eclipse is a Java-based integrated programming environment (IDE). Eclipse is free, open source and cross-platform (Mac, Windows and Linux).

    This review is based on features I require of an advanced text editor. A list of required features was created after using different editors. Some features require extensions or plug-ins.

    Eclipse is a free IDE for Java from http://www.eclipse.org. There are downloadable packages for Linux, Mac and Windows systems. Eclipse can easily be extended by plug-ins to develop applications in other programming languages.

    Test Tools

      Test system:

    • CPU: Intel(R) i7 2600 @ 3.40GHz.
    • Memory: 8GB DDR3.
    • Operating System: Debian Jessie Testing 64bit.
    • Desktop: Xfce Desktop Environment 4.10.

      Test suite:

    • Large file: 1GB human-readable text.
    • Regex file: text with word “Eclipse” repeated.
    • Syntax file: PHP file containing HTML, CSS & JavaScript.
    • Media file: Smiley face JPEG file.
    • Java: OpenJDK7
    • Eclipse: Version 3.7 Indigo SR2 64bit

      Test Score:

    1. Each feature has two parts
    2. Score of zero indicates missing feature
    3. A part of a feature is worth a score of 0.5

    Three bias elimination steps were utilized. The editor was used for at least three years on different platforms. Attempts were made to get stable plug-ins for missing features. The same editor was compared between the one in the repository, the developers website, and the compiled version if applicable.

    Selecting Editor Version

    Eclipse was downloaded from the developer’s website for portability. Eclipse and its plug-ins are bloated. I did not wish to reinstall Eclipse every time I changed my distribution.

    Eclipse was installed on a separate partition that is immediately available for other installed Linux distributions. All plug-ins such as Android and Blackberry were installed once and never require re-installation.

    Image Missing
    Eclipse Multiple Editor View

    Features

    The theme cannot be native for the editor in terms of the background. Eclipse dark and light themes can be created or downloaded. The score for the theme was 0.5.

    Dragging and dropping a text file into the editor opens a new tab. It is possible to specify the tab location during the drag and drop operation. The score was a perfect 1.0 for drag and drop into editor.

    Opening a very large text file did not crash Eclipse. An out of memory window was shown and it was not possible to edit the large file. The score for opening a large file was 0.5.

    Multiple documents can opened in multiple tabs. Tear-off tabs do not work because Eclipse cannot not be opened as multiple instances which is handy for multiple monitors. The score for multiple documents was 0.5.

    Multiple editors can be opened as new tabs with drag options. Every new editor tab can be split vertically or horizontally. The score for multiple editor view was a perfect 1.0.

    Creating non-project files is impossible. Non-project files can be opened by the drag and drop operation. The score for creating non-project files was 0.5.

    Soft word wrap requires a plug-in by CDHQ.de called Word-wrap. Automatic soft wrap for documents is not available for Eclipse. The score for word wrap was 0.5.

    Spell check works as words are typed. Spelling errors are shown in opened documents. The score for spell check was a perfect 1.0.

    Word count is not available for Eclipse. Selection word count is not available. The score for word count was 0.0.

    Go to line can jump to a specified line. It is possible to jump to either the first or last line. The score for go to line was a perfect 1.0.

    Indentation can default to user-defined tab stops. Children are automatically indented. The score for indentation was a perfect 1.0

    Fonts cannot be dynamically scaled. The system font can be bypassed and a new editor font and size can be set. The score for fonts was 0.5.

    Find and replace using regular expressions cannot be utilized for all open documents in the current session. Find and replace will work for the current document or a selection in the current document. The score for find and replacing using regular expressions was 0.5.

    Multiple language syntax highlighting in one file is enabled if the language plug-ins are installed. Each language has code-sensitive syntax colours which can be modified. The score for multiple language syntax highlighting was a perfect 1.0.

    Code folding works for markup languages such as HTML. Code folding also works for programming languages such as Java. The score for code folding was a perfect 1.0.

    Selecting rectangular block per column works. Rectangular block selections work with word wrap enabled. The score for selecting rectangular block was a perfect 1.0.

    Multiple selection is not available for Eclipse. Search multiple selection is not available. The score for multiple selection was 0.0.

    Distraction-free mode to hide panes works. Line numbers can be toggled to improve distraction-free mode. The score for distraction-free was a perfect 1.0.

    Image Missing
    Eclipse Distraction-free

    The file manager can create and delete folders. Media files can be dragged and dropped into the file manager pane. The score for file manager was a perfect 1.0.

    Terminal requires a plug-in by Google called Terminal. The terminal does not follow folder. Terminal can execute system commands. The score for terminal was 0.5.

    Results

    Eclipse is a very powerful IDE. By default, the Eclipse editor is missing required features which can be installed by using extensions. For my required features, the Eclipse editor scored 70% or 7 out of 10.

    Conclusion

    Eclipse is a very powerful integrated programming environment. Basic editor features are missing in Eclipse. Important editor features require Eclipse plug-ins. Overall Eclipse only scored 7 out of 10 for essential text editor features.

    Eclipse is able to use most of the system native theme and fonts. Eclipse has one of the best multiple editor views available for any editor. The select rectangular block is one of the easiest to use of any editor.

      Recommendations:

    1. Look for required plug-ins before deciding to try Eclipse.
    2. Download Eclipse from the developer’s website.
    3. Install Eclipse in a permanent location.

  • HTML5 Game Physics Moving Elastic Collisions

    HTML5 Game Physics Bouncing Elastic Collisions

    This tutorial is the third in a series about HTML5 game physics. Game character movement becomes more realistic when multiple collisions are utilized. At each collision, a character will need to reverse or lose some momentum.

    The third tutorial will move the game character in different directions after each collision. The bounce effect will be achieved by using a constant acceleration. The canvas sides will act as a non-moving object for collision with the moving game character.

    (more…)

  • HTML5 Game Physics Elastic Collisions

    HTML5 Game Physics Acceleration And Elastic Collisions

    This tutorial is the second in a series about HTML5 game physics. Game character movement becomes more realistic when acceleration is used. Acceleration is the rate at which the velocity of a game character changes with time.

    The second tutorial will move the game character vertically downwards according to gravity. Air or fluid resistance will be provided by a set drag coefficient. The bottom will act as a non-moving object for collision with the moving game character.

    (more…)

  • HTML5 Game Physics Velocity

    HTML5 Game Physics Position And Velocity

    This tutorial is the first in a series about HTML5 game physics. The HTML5 canvas element will act as a stage for all game characters. JavaScript will be used for game logic and updating canvas items.

    The first tutorial will draw a simple rectangle that will act as a game character. The character will move horizontally across the canvas. The code is based on an article by Hunter Loftis for Skookum Digital Works titled “Physics for Lazy Game Developers”.

    (more…)