MyEclipse for JavaScript under evaluation – some questions

This topic contains 4 replies, has 2 voices, and was last updated by Profile photo of Brian Fernandes Brian Fernandes 3 years, 6 months ago.

Viewing 5 posts - 1 through 5 (of 5 total)
  • Author
  • #324623


    I am evaluating MyEclipse. My background is >25 years in Smalltalk, thus I may be a bit spoiled regarding development tools.

    What I am missing in MyEclipse and asking if that is available and if I overlooked it:

    1) JavaScript preprocessors
    That would be the minimal prerequisite of any code management system that goes a little bit beyond an editor. I found nothing in MyEclise.

    2) Detachable editor forms
    It is extremely annoying, yet in the long run absolutely unacceptable to be unable to detach editor windows that that multiple views can be split over my monitors. Scrolling in my (relatively small source) files is a waste of time.

    Honestly: Expecting one to work in ONE SINGLE undetachable window is just mad, sick, absolutely unrealistic.

    FYI: In my Smalltalk development, not only I am (but every Smalltalker) accustomed to having typically between 30 and often more than 50 different views open at the same time and many are on the same classes or even methods. Of course, they are interralated through change events.

    3) No split views
    Seems that I cannot even split ONE editor form into TWO views. Instead, I must do endless scrolling and must remember the line numbers (which is a great disadvantage of file based code anyway, but that is not MyEclipse’s fault but a stupid concept of JavaScript and many other languages).

    4) The copy/replace tool is extremely primitive
    No way to exchange multi line text. I must use an external editor like EditPlius to achieve this. This is very poor for a huge tool like MyEclipse. (Not to mention Smalltalk, which can even do a lot more)

    5) Any chance to include CoffeeScript
    Being a Smalltalker I hate this JavaScript hassle and nuissance of brackes and semicolons (it’s wasting my time) and I would like to avoid this rubbish by being able to include CeffeeScript into my sources. Any chance / support with MyEclipse? Of course, this requires preprocessing.

    I would very much appreciate an answer if and where I have overlooked any feature of MyEclipse.

    The only really positive thing I found so far is the ability to search for classes and methods. The way it’s implemented is stoneage state compared to the senders and implementers in any Smalltalk dev environments (since the mid-80-ies BTW) but still better than nothing or a plain text file search.

    To be honest, at this moment after about one week of intensive use, I would decide against it and go back to my simple editor, which is faster, offers split views, much better replacing and I can use multiple instances in read-only mode to get simple multiple views detached from any ONE big window.

    (who feels like visiting the Flintstones when working in JavaScript compared to what Smalltalk has been offering for more than 30 years already)



    I just found out that the relatively unimportant Navigator (file list) form can be detached. Ok, nice, but why is that impossible for the editor windows?!

    Detaching editor windows would be 100 times more important!

    And this proves to me that it does work with your UI. So why are you forcing the user to have ONE view only open at any give time instead of distributing all needed views of the 2, 3 or 4 monitors that we work with?!

    I can’t understand that decision to NOT make editor windows detachable!


    Profile photo of Brian Fernandes
    Brian Fernandes


    1) JavaScript pre-processors
    Could you give me an example here? What sort of JavaScript script/code would you expect to be pre-processed?

    2) Detachable editors and 3) Split views

    If you right click the editor tab, you will see a “new Editor” option. You can use this to create a new editor for that same file and edit in both editors simultaneously. If you drag the editor tab to the edge of the window, it will tile accordingly. Changes made in one editor are reflected immediately in the other because the editor model is shared.

    You could also use Window > New Window to create a new MyEclipse window entirely, which you could place on another monitor. Simultaneous editing is still possible, of course.

    As far as detaching is concerned – views are different from editors, the Navigation view, Package Explorer, Console, etc. are views, not editors. Views can be detached, but editors cannot.

    The good news is that MyEclipse 11 due in the second half of this year will be based on e4, and you will be able to detach editors in this version, just like you can detach views now.

    4) Copy / replace support for multi-line text.
    Could you please clarify this – do you want to search for text that spans multiple lines and then replace it with text that could also span several lines?

    5) CoffeeScript
    I’m afraid that this is the first request for CS that we’ve had – I’ll put that on our radar. If there is an external Eclipse plugin for CS, we could look at integrating that with MyEclipse or at least making sure MyEclipse is compatible with it. It will be some time before we can think of developing in-house support for this from the ground up (or requests for this must drastically increase).

    There are also some hacks that you will be able to use right now to at least do some pre-processing on CS within MyEclipse, but I haven’t tried those out myself yet.

    I hope this helps, let me know on #1 and #4.


    Hello Brian,

    Thank you for your reply and the good news!

    1) Preprocessor
    Well, essentially I would a JavaScript preprocessor expect to perform similar jobs as the preprocessors for C, which have been doing this for the last couple of hundred years or so. In fact, there are a few preprocessors available for JavaScript but I found none that also supports #include, which I consider to be the most important feature.

    Also, I had expected MyEclipse to be some kind of a code management system and part of this should also be a configuration tool (at least in a light version), which allows me to conditionally include other files into source files and to compile them (not in the sense of translating into binary code but in the original sense of French “compiler”, i.e. collecting them into one or a small series of files, which then go into a obfuscator and minifier [in my case]).

    In general, working with codes source in separate files is a nightmare from me as a Smalltalker, because this general concept of JavaScript (like most other languages) incorporates such an extreme amount of disadvantages compared to an “image” based code storage that is inherent to Smalltalk, that I’m trying to circumvent some of these many disadvantages by at least using a preprocessor.

    My goal is to split up much of the code into smaller chunks and to have the preprocessor collect them (to avoid the word compile) as defined in preprocessor directives into one or a small number of bigger files, which then make up the individual source for the given version and/or configuration.

    As a general recommendation: in the very long run you should really consider storing sources in a huge change file similar to Smalltalk, which offers an enormous amount of advantages in many respects over this current JavaScript concept. It should well be possible with JavaScript and this would also allow a code browser the way that Smalltalkers have used it for ages (more than 30 years!). This would also offer new possibilities of referring to existing code and it would be much quicker compared to the current implementation of searching. But of course, this would not be a simple task.

    2) Detached editor windows
    Well, that feature is very well hidden! I never tried the menu item Window -> New Window. And to a certain degree I consider this to be an inconsistent UI design, because for the Navigator view there is a right mouse menu offering “Detached”. This is missing over the editor views. Thus I thought it’s not available.

    Also, when I try to pick up an editor (rather “drag it”), it changes into its rectangular shape but I cannot drop it outside the underlying main window.

    I therefore thought that detached editor windows were not available (which, of course, would have been a real disaster). I am glad to read that this is available. Since this feature is available, split views are not that important anymore.

    4) Copy/replace multi-line text
    First of all, the area to enter any data for copying and replacing is very small and limited to one line only. If you look at a relatively simple general editor like EditPlus (, they are offering a much wider and multi-line editing field both for the copy and the replace values. Also, it is very useful to be able to immediately have access format entries when one wants to reuse something that had been entered a while ago. I did not find any similar feature in the overall much more editing of all MyEclipse.

    In this respect, I want to give you a little hint of a small but extremely useful feature, that all Smalltalkers have been using for many years: an internal multi-item clipboard. See below.

    5) CoffeeScript
    Well, in the meantime I played a bit with CofeeScript and I am deeply impressed how useful and powerful this tool really is. As far as I can see, one could well enter the needed code in the MyEclipse editor. It would simply be marked to be erroneous but it should work in general.

    6) New proposal: multi-item clipboard
    this is an enormously powerful, yet extremely simple to implement feature in Smalltalk: by pressing Ctrl-Shift V, a selection pop-up window comes up with the last number (user changeable, in my case 50) entries into the clipboard. Having the clipboard limited just to the last entry is extremely cumbersome and often requires unnecessary typing.


    Profile photo of Brian Fernandes
    Brian Fernandes


    1) Pre-processor
    I understand what you mean on the pre-processor front. So we have to pick a good JS framework which allows pre-processing and then build support for that into MyEclipse, so that MyEclipse can understand the JS code (some sort of include for instance)and can provide the right validation and content assist support.

    If you find a pre-processing framework that works well, please let us know. We’ll be looking out as well. I believe jQuery has some support.

    2) Detached Windows
    I’m glad you find this useful, I agree that it may not be easy to find if you don’t know where to look. I didn’t know the “Detached” option even existed for the Navigator view.

    In case you missed it in my last post, you might also find the “new Editor” option useful – you could have multiple editors for the same file in the same window (but text editors only, not the visual designers)

    4) Multi-line find/replace
    I understand your requirements. You can do a multi-line search and replace in Eclipse using regular expressions as shown below, but I understand it isn’t as convenient as a multiline text box; we’ll keep this in mind.

    6) Multi-item clipboard
    Before Eclipse I was an emacs user and enjoyed the fact that you could maintain a history of copied items. You could install a plugin that does allows this into MyEclipse – like more clipboard: (I haven’t tried this myself). You could also install on your system an external clipboard manager (I use ditto) which keeps track of your copied content globally, not just in Eclipse.

    Thanks again for the detailed feedback.

Viewing 5 posts - 1 through 5 (of 5 total)

The forum ‘General’ is closed to new topics and replies.