Learning Eclipse MDT-UML2 Sequence Diagrams - eclipse

Are there any tutorials or documentation files for drawing Sequence Diagrams with Eclipse MDT-UML2?
I can't put a Lifeline on the page. It took me 10 minutes to figure out that I first have to make a big Iteraction, and then I can put Lifelines into it.
I can't figure out how to make the Participant box wider in the lifeline. Any name more than 4 characters is too wide for the box. When I do the obvious thing of clicking and dragging the handles, the box springs back to its original size.
I can add a Message by clicking "Message" in the pallette and click-dragging an arrow from line Lifeline to another. Now I have an arrow labeled "1: *". I've tried every way I can think of to change that name: double-clicking on it, shift-clicking, ctrl-clicking, changing Name in the properties.
Can anyone help?

As I understand it MDT-UML2 is in the very early stages, it may not work as it should always. Additionally, the sequence diagram is a newer one, see below. There were no tutorial I could find, but I did link to samples below. I also found a comment in the eclipse bug tracker for this feature:
Here are the most important issues from my side: moving of lifelines, create messages,
replies are causing strange behaviour (some kind of auto alignment). Moreover it
should be possible to give the messages names.
They say it is resolved, but you be the judge.
From the wiki (Note:What you want is UML2 Tools):
http://wiki.eclipse.org/MDT-UML2Tools
Interaction diagrams (in progress):
Sequence (new in Galileo)
This may not help, but here is a link to the samples: http://wiki.eclipse.org/images/3/3a/UML2Tools_samples.psf
The tutorial reference does not seem to cover the new stuff, just the class diagram.
http://www.vogella.de/articles/UML/article.html
Search stackoverflow for other open source tools to use. The MDT-UML2 is coming along and can be used for some stuff, especially simple DSMs/DSLs/UML Profiles, but for drawing easily there are a host of good tools. An ok thread: What's the best UML diagramming tool? or
https://stackoverflow.com/questions/390438/good-free-uml-tool-for-java-eclipse

Related

How can I duplicate a non-editor panel in Eclipse?

I had exactly the same problem another user (arghtype) is having here in this question's thread: How to enable duplicate tabs in Eclipse? (i.e. duplicate windows)
Although, it is only an answer post that doesn't necessarily achieve what we both want.
It recommends opening a separate, duplicated window, which is a bit resource heavy for what I need.
I wanted to formally ask this question in case anyone has the appropriate answer instead of a work-around or compromise, or we can open a feature request in the Eclipse work item tracker, and this way the answer and any history can become more apparent for this specific issue.
Also note I have tried the Menu options "Window" > "Show View" > "Other...", and then have selected the view/panel I wanted, with the current one in my UI both selected and unselected in different cases, and I still do not receive a duplicate panel.
I would also appreciate sources such as links to any documentation, or at least a screen shot with an answer, since I am very carefully not asking about the editor panel in the UI, which is commonly found as an issue on the internet.
To add, my specific case is using RTC 5.0.2 with Eclipse 4.2.2 (Juno), and I would like
multiple "Work Items" panels open for my workflow. One for overall reference, one for current, immediate work, and any more for what have you.
Another related source I found that all seem to speak about the similar, more prevalent issue, specifically concerning only the editor tab/panel:
How do you split a window/view in Eclipse IDE?
Edit:
I have opened an Eclipse Bug/Enhancement request for the UI here: Bug 471001 - Allow user to create duplicate panels in perspective view.
We will see how it is handled. Either my version is too old to have this feature, or it does not exist, and could prospectively be added.
So far without a firm answer, I have opened an Eclipse Bug/Enhancement request for the UI here: Bug 471001 - Allow user to create duplicate panels in perspective view.
We will see how it is handled. Either my version is too old to have this feature, or it does not exist, and could prospectively be added.

Xcode 4 Tips and Tricks for Xcode 3 users [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
As most of you have probably seen, Xcode 4 has been released officially today. Now I know that plenty of devs out there have been using the preview versions, and it'd be great if people could post any great tips, tricks, or keyboard shortcuts they've learned using those version now they're no longer under NDA. This could be especially useful for those upgrading from Xcode 3 (like me, downloading right now).
Note: Apple have released a 'transition guide' that has plenty of stuff in about getting from version 3 to version 4, but I bet there are loads of great tricks people out there have learned that aren't in there.
I liked reading this Blog: Pilky.me - Xcode 4: the super mega awesome review.
It presents a good comparison, I especially liked his conclusion near the end.
Currently I have only one tip for Xcode 3 users - don't use xcode 4 unless you have free time to start learning again and/or are willing to report lots of bugs. Wait at least until 4.1. There are still lots of bugs unresolved. Nothing is stable. Also Xcode 4 advertises as having single window ui which is nice, but is unstable as U238. Also - it's probably single thing that is good about new Xcode 4. So here are some of my headaches currently:
There is no possibility to commit whole project (except for separately selected modified files);
There is no possibility to push (if SMC is git). At least I haven't found that;
Since symbol indexing is broken you cannot:
see normal syntax highlight;
jump to certain symbol definitions;
Jump bar is just one big misunderstanding:
Previously comfortable Ctrl+2 shortcut from Xcode 3 which lists method names and pragma marks has now become finger breaking Ctrl+6 (emacs user's rejoice</flamewar>).
There is no direct button to switch between interface and implementation files.
If you have 13.3" macbook[pro] - don't even try to use navigators with utilities (inspectors or libraries).
Also transition guide is made for working Xcode 4 which it is far from.
Update 1:
There is no such thing as "Build & Run". Only build, build for running, build for testing, build for profiling, build for archiving. Then just run without building and run without profiling. AFAIK it supposed to be easier so summa summarum - 8 actions instead of 1. Go figure.
So these are only few of my instantly found glitches for Xcode 4.
P.S. probably will be updating this in upcoming few days.
#Ohmu: The 3-finger up/down trackpad/magic mouse swipe gesture for switching between header (.h) and implementation (.m) files still works a treat.
XCode 4 has a lot of awesome new features. I'd recommend starting to adjust to it by watching last year's WWDC2010 videos - they dedicated a lot of time to going through some of the new stuff.
I love the new assistant mode - it makes it really easy to navigate through your interface/implementation files. This mode also allows you to create your user interfaces alongside your controller classes, which makes development both easier and more effective than doing it in two completely separate programs!
The jump bar (found along the top of your source code) is a really fast way to leap about your project, making it really easy to get exactly to the place in your code that you're interested in.
The version control viewer makes it really easy to track changes. I now use SVN for all my projects, even the ones I work on alone because it really makes it clear to see how the project has evolved over time.
There are settings to set how your layout changes and what's displayed when you build, when you run, when you end a run etc. etc. which I'm also finding really useful because you want to see different things when you'e debugging to when you're back in your code. It's really nice that Xcode helps you easily arrange your layout to exactly how you want for different scenarios.
The code templates (which can be found in the toggleable right-hand-side toolbar) are also really useful, and you can create your own in order to quickly get code you often write down.
Some more subtle things that I've grown to like:
The 'Fix It' feature works really well for quickly replacing typos. I find I don't even have to read the correction Fix It will make because the fix is so natural.
Control-I short cut for re-indenting code. This is really useful if you add a new pair of braces round your code and you want to quickly reformat. I don't think there was a nice shortcut for this in Xcode 3.
Hitting the escape key to bring up autocomplete suggestions seems to bring up much more helpful suggestions in C++, and looks a lot more beautiful all round!
On reliability, I've been using a combination of Xcode 4 and Xcode 3 since Xcode 4 first entered beta. Whenever Xcode 4 packed in for me or wouldn't let me continue with what I wanted to do then I'd just switch over to Xcode 3 as the two are completely compatible. What I got was a really nice transition period and now I'm completly using the latest build (first week of March) so I think it's very stable.
For people that don't like change, this update is going to be hard. It'll be particularly challenging as a lot of the keyboard shortcuts have changed to make new for a lot of new features. The most obvious difference that people are going to oppose is the new all-in-one window layout. I'm sure people will get used to it over time and realize that this way of viewing everything to do with your project is much more effective both in real estate and in navigation terms.
Enjoy using Xcode 4, it really is an amazing improvement over the last version, and it continues to add to the awesome time I'm having writing Mac and iOS applications. :D
More shortcuts than you can shake a stick at here:
http://cocoasamurai.blogspot.com/2011/03/xcode-4-keyboard-shortcuts-now.html
However, completeness is obscuring clarity. For example, I can't straightaway see the shortcut for toggling between a header file and its associated method file. so I recommend one shortcut per answer, and the votes will filter out the best ones.
If you need to open plist files when you are not coding you should keep a copy of XCode3/Applications/Utilities/Property List Editor.
Property List Editor opens within the blink of an eye. But XCode4 takes minutes until it finally shows the plist file.
I guess Apple wants me to replace my 2008 MBPro
NB: Apple's official transition guide has moved/been updated (they didn't update the URL, sigh). It's now at:
http://developer.apple.com/library/mac/documentation/IDEs/Conceptual/Xcode4TransitionGuide/Xcode4TransitionGuide.pdf
The only way for me to like XCode4 is thinking it as a different product.
There's NO evolution over XCode3, just lots of drawbacks for the way I use it.
Who changes (almost all) shortcuts between version of the same software?
Why do I have to learn back from zero how to use and configure my projects? Sounds like punishment, not evolution.
How good is XCode4 for multiple monitors usage? It was clearly designed for a single monitor user, but unlike Xcode3, its UI cannot be as easily (and persistently) changed.
Although it can be disabled (and must), auto code check for errors... So we're back on VB6 now?
I'm a BIG Apple fan, though XCode4 falls short on developer satisfaction due to its lack of customization (compared to XCode3).
Not using XCode3 as a comparison, it is indeed a good IDE.
A frustrated developer,
Cheers.
Risky business: Moving to Xcode 4 will introduce you to a whole new level of strange behaviour, bugs, and pain. E.g. having third-party frameworks (like Three20) in your app, means that you won't be able to build a proper archive, without jumping through various levels of hoops. Don't move to Xcode 4 yet, if you can. If you do, there are some tips below.
Keep your archives safe: ...prior to installing Xcode 4 (from 3). You will lose them (most likely) and with them lose your ability to symbolicate your crash logs.
Adding frameworks: It took me a while to figure this out, and it's nowhere in the docs. You cannot simply do this by right-clicking on the project or a group (like in Xcode 3). You need to go to the project view, select your target and go to "Build Phases" tab. Frameworks can be managed under the "Link Binary with Libraries" section.
Setting target dependencies: Similar to the above, in the "Target Dependencies" section of the "Build Phases" tab.
Delete action-BEWARE: "Delete" (instead of "Remove Reference Only") directly erases the file from your drive. It doesn't go into the Trash, so you cannot recover it.
Text Editor: Here a couple of good ones:
Cmd-clicking on a class name will take you to the implementation (or header) file of that class, cmd-clicking on an object will take you to where the object is declared.
Alt-clicking will open a documenation popup for the object you clicked on.
3-finger sideways gesture to left is the Back button, and goes to your previous file. Gesture to right goes to your next file in the stack. (not sure if this was true in XCode3)
http://pragmaticstudio.com/screencast-tags/xcode4
After watching these great little videos, I instantly warmed to XCode4
They have really sorted it out big-time in so many different places, making conceptual changes such as:
one window = NICE
TextWrap
removed annoying 'stop running + rerun' dialog
good color scheme facility
CMD SHIFT O to locate a header file
The auto completion is sorted out beautifully
clear console button
search & replace NICE
new keybindings NICE
On-the-fly error checking - love it!
As you can see, I made notes over the first 2 days of using it; every time I liked something, or every time something went wrong I would jot it down.
So far I have listed 16 problems, but these are all glitches, such as the colouring system going wrong in certain situations etc... ie all minor things that will get patched up pretty soon in updates.
With the occasional crash, I am not going back to 3.x unless I absolutely have to.
The only thing which really gets my goat is that Apple STILL refuse to support incremental updates. it is totally crazy, and I hope everyone makes a lot of noise about it until they sort it out.
I wondered where per-file compiler flags had gotten to.
Spoiler: Select project, select target, select Build Phases tab, expand Compile Sources phase and rejoice.

TODO/FIXME plugin for Eclipse

In my project there are large no. of FIXME / TODO which are to addressed at some point of time. Actually there about 480 which can be seen from 'TASKS' list but not organised.
I googled and found the Task Tag Decorator plugin.
But unfortunately this is not working.
Can anyone suggest a plugin for FIXME/TODO
apart from this.
I would also wanted to hear from all how these situations are usually managed
What you don't want to hear is that how these situations are usually managed is by not letting them grow so big. But I'm afraid that is the case.
The Pragmatic Programmers advise us Don't live with broken windows. The point being, that if we leave something broken instead of fixing it then other things will be left and before we know it we have 480 items on our TODO list. Plus, there is a danger that some part of our application will come to rely on the "broken" behaviour, so when we address the TODO item we also have fix that as well.
Not everybody can live up to the Pragmatic Programmers' high standards. An alternative approach is to have a list of stuff which needs to be worked on (sometimes known as the Kaizen list). People who are blocked on their assigned work can pick up one of those tasks.
As for your current situation....
I have a rule of thumb which states that nothing can be done in less than half-a-day: not once you include source control, documentation, discussing the change with Bob, etc. Of course, my rule of thumb doesn't apply to truly trivial tasks, but if these tasks were truly trivial they would have been fixed on the spot, not marked as TODO, right?
So you're looking down the barrel of 240 days of effort. If lots of those tasks can be combined into a single fix then you can reduce the per task overhead. But first you've got a chunk of work just to sift through the tasks, categorising and prioritising them. This is why thay call it "technical debt": the longer we leave it the more it costs to fix, and it has the compound interest rate of the average doorstep loanshark.
Unless you have a very understanding project manager/paying customer I think you will have to accept that you aren't going to be able to clear all these items. So you need a brief triaging exercise: assign each TODO into one of three categories:
Stuff that is intolerable and needs
to be fixed right now
Stuff that ought to be fixed as and
when there is an opportunity
Stuff that you're just going to have
to live with
Good luck!
Just wanted to chime in and say that I was able to get the Task Tags Decorator working in eclipse 3.5.0. Here's how.
Install from the update site : Task Tags Decorator Update Site
In preferences: General->Appearance->Label Decorators->Task Tag Decorators
Set up your decorators there.
Then go to: General->Appearance->Label Decorators and check the "Task Tag Decorator" box and Apply
I found this very frustrating to figure out and I hope it helps others. I really like the plugin and have found it helpful for me to visually keep track of TODOs. I think it also helps me keep the TODO list short since it's not out-of-sight-out-of-mind.
In what way do you want them to be organised? More specifically what doesn't the Task View do that you want to do?
For information you can do the following with the standard tasks view:
Click each column header in the task view to sort by that column ascending/descending.
Select the View Menu (downward triangle in top right of view) and
Group tasks by type
Show only a particular task type
Select Configure Contents... then :
Select a Scope to restrict the tasks shown to your desired scope (I find On selected element and its children particularly handy).
Filter tasks by description text (using contains or does not contain)
Filter based on Priority and/or Completed status and Task Type
There are also a few other options you may find useful if you dig through the View Menu.
You might want to look into Mylyn.
It might also be worth considering what it means to use one of these tags.
The trouble is that if you have almost five hundred of these things it doesn't seem likely that you are going to be able to delete them as 'stuff to do' at any point soon. Thus, the impact of using the tag and the process implied therein is diminished, and you end up with the problem you are citing, that the data set has become unmanageable.
The point is that the code is the truth, not the comments, whether they are marked up with task tags or not. You have to have something measurable by which you improve the code.
As an example, when I do code reviews I use these tags in a first pass before the code review pairing begins. The aim is that by the time the code review is complete the tags do not exist.

How do you keep track of your programming TODOs? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm one of those people who can't get anything done without a to-do list. If it isn't on the list it doesn't exist.
Notepad Method:
When I'm programming I've been keeping notepad open with a list of to-do's for my current project. I'll constantly re-arrange these based off priority and I cross them off and move them to the completed section when I'm finished with that particular task.
Code Comments:
Some programmers pepper their projects source code with:
// TODO: Fix this completely atrocious code before anyone sees it
Plus, I know that there are some tools that show you a list of all TODOs in your code as well.
Website Task Tracker:
Remember The Milk
Backpack
Manymoon
Voo2do
Gmail Tasks
TeuxDeux
TodoDodo
Ta-da lists
... and many more
What have you found to be the best method of keeping track of your to-do lists for multiple projects?
Like others, I pepper them about my code, but I use the warning directive to generate a compiler warning too:
#warning TODO: Implement foobar
This way I can still search for "TODO" but they also shout at me whenever I build.
Pen and paper.
Combined with the genious PocketMod, it's totally perfect.
Striking TODOs is soooo satisfying!
I can't speak for other IDE's, but Eclipse will search your project's source files for TODO comments (as well as FIXME and XXX by default) and create tasks for you in the tasks view.
This leads to intriguing situations where you check the tasks view, double-click on a TODO task, and read the comment:
// TODO: Add this functionality.
Eclipse will also add TODO comments when generating certain code blocks, like method implementations, catch blocks for exceptions, etc.
TODO (and other) comments are great with Visual Studio and ReSharper installed:
(source: jetbrains.com)
Although I didn't try it I really like the idea of tests as todos. What else should get you going if not a failed test?
NextAction, from TimeSnapper
Personal Abstract Todos
I use Tomboy Notes or paper to make a quick list of abstract high level tasks. Often when I'm on the phone with my manager, I just need to get things written down.
Source Code Specfic Todos
I use the inline TODO: / #todo comment marker in my code and then use the Netbeans plugins that give me a running list of todos throughout the project. Since Netbeans can aggregate todo markers from multiple projects, it does not make a difference how many different projects I'm running.
Multiperson Tasks / Todos
Once I have to keep track of todos for more than myself, I move to project management software like OpenProj, MS Project, etc. Also, if the todos involve bugs or feature requests, I use our bugtracker. Other todos, can be manged by a helpdesk system as well.
I use ToDoList from AbstractSpoon. It lets you divide your ToDo list into projects and can even be used by a number of users for larger projects using a shared network drive.
For every task in a project i create a new entry in the issue tracker (Bugzilla for me).
A big advantage is that you can track back every changes made by the issue ID.
You can report customers or project members the status of your task.
You can create a new bug type like "task", "todo" or "feature-request".
It's a central solution. No local stuff...
I our development team there is a rule which says: "Do never change any code without a corresponding entry in the issue tracker. Never!"
I use Pen and Paper to jot down notes. I also use TODO/FIXME tags in code that gets highlighted yellow in Vim and tracked by the TODO extension in Komodo.
One of the most useful additions for me has been using Samurize to embed a plain text file onto my desktop (http://lifehacker.com/software/plain-text/geek-to-live--incorporate-text-files-onto-your-desktop-213280.php). I have 3 virtual desktops and it lives on my email desktop which is where I wind up first thing every morning. It contains a text file with the items that I need to do and it rarely runs more than a week ahead.
Wednesday 2/11/2009
- Item 1
- Item 2
Thursday 2/12/2009
- Item 3
I use Executor that has a keyword "todo" that automatically opens gvim with this file when I want to edit/add/remove items. This makes it about 3 keystrokes to get it open and ready to modify. It helps me remember the Monday morning production moves before I get buried in email and meetings. As soon as I edit, it's reflected on the desktop.
Obviously for longer and more detailed things, I rely on Roundup, Outlook reminders, etc. but this has been a handy way to jot things down so they won't get lost in the shuffle.
I use inline TODO: comments as Visual Studio will track these for me, of course I still have to look at the task list to see them. I cannot count the number of times I have found a TODO: comments whilst reviewing some code I thought was complete.
I would make a clear difference between FIXME and TODO. FIXME is a critical and must be fixed before commit/release. TODO can live a bit longer but should be cleaned away eventually.
A simple plain text file (TODO) in the top level of the project's cvs/svn area works for me for simple projects.
Like others have mentioned, I use the standard FIXME/TODO/XXX in my code comments, and then can find the list of tasks within my IDE using their various tools. I also use hudson's task scanner plugin to keep track of everything, since I'm a sucker for graphs.
I created a build task that picks out //TODO: lines from my code files and generates a report I include in team city. It gives you a quick way of see any outstandings on a project without having to check it out.
you can also use the CodeTagsPlugin with Trac
When programming Java in Eclipse, I find it really useful to, as you say "pepper my source code with // TODO: comments - mainly because Eclipse looks up each one in the project and compiles a task list for me =) In Visual Studio, there is a Task List panel, which I use sometimes, but I don't find it as streamlined as just having the comments in Eclipse.
I use eclipse as IDE, which collects all TODO's to a list and shows it in an outline. Very easy and usable.
I use emacs org-mode to keep track of not only code TODOs, but my whole life. It works as an extremely powerful outliner with some spreadsheet and calendar features as well. I use mercurial for lightweight version handling and simple replication between different machings.
It works surprisingly well.
Having done an extensive search for a suitable "to do list" application I settled on mylyn - the one that comes supplied with Eclipse.
It is easy to create and manage tasks. Tasks can be imported and linked to Bugzilla or a number of other different task repositories. It also has a "task context" which enables files that are relevant to a task to be highlighted and those that are irrelevant to be hidden (which is far more useful than I anticipated it would be).
Eclipse tracks your TODO and list them in a proper windows automatically. I find it powerful enough if you don't need advanced features.
I'm quite fond of tracks. It has the flavour of GTD without getting too regimented about it.
I can quickly whack stuff in there as I think of it, and then not have to worry about forgetting after that.
Wow, I just had this question yesterday. After some searching, I settled on the ReminderFox Firefox extension. It's completely integrated into the browser and has pop ups to remind you every time you open your browser when a task is due.
I like Mylyn a lot: integrated into Eclipse, works with many trackers as well as without (local tasks) and realizes new concepts like the focused UI.
There is also Task Scanner Plugin for Hudson (in case it fits in your environment). With that you can track number of TODOs/FIXMEs on your continuous integration build reports.
alt text http://www.86th.org/hudson.jpg
We use the "Open Tasks Trend" feature in Hudson, this works for a slew of languages. For our C# project we have 3 levels of tasks and this is accomplished by different TODO: style comments.
High Priority
Matches on FIXME:, HARDCODED: or HACK:
Medium Priority
Matches on TODO:
Low Priority
Matches on MEH: or CODEREVIEW:
Hudson will then take this list and trend graph it as shown in the picture, as well as have a sortable, filterable list of the tasks and it will display the messages on the web page with links that will take you right to the line in the source code on Hudson.
Plus we can easily setup points of interest for code reviews with CODEREVIEW: and have a nice concise list to print out.
I use Sandglaz and place my todos in 3 columns now, next and later (a little like their blog, but only one row)...and its easy and fast to use. I'm a freelancer so I work on several projects at a time so it works for me
I use pending tests only to remind myself to write tests. I use Rspec, so it has that build it.
For C++ projects (native/ATL):
#ifndef _TODO_H_
#define _TODO_H_
#pragma once
// from atldef.h:
#ifndef _ATL_STRINGIZE
#define __ATL_STRINGIZE(_Value) #_Value
#define _ATL_STRINGIZE(_Value) __ATL_STRINGIZE(_Value)
#endif
// put x in quotes, no need to use #pragma!
#define __TODO(x) __pragma(message(__FILE__"("_ATL_STRINGIZE(__LINE__)") : TODO: "x))
#define __WTF(x) __pragma(message(__FILE__"("_ATL_STRINGIZE(__LINE__)") : WTF?! "x))
// prefer to use ISO-formatted date
#define __BUGFIX(date, x) __pragma(message(__FILE__"("_ATL_STRINGIZE(__LINE__)") : BUGFIX: "#date" "x))
#define __CHANGE(date, x) __pragma(message(__FILE__"("_ATL_STRINGIZE(__LINE__)") : CHANGE: "#date" "x))
#endif _TODO_H_
Looking for something like that for C#.
doxygen can track such issues
One of our source code modules is absolutely littered with inline #pragma todo lines. The build output is polluted so we never can really tell when there are any new compiler warnings. Some of the todos have been there for years and the original developer has long since left the company.
When I have many many todos I discovered that it is useless to track them. You end up with hundreds of todos that can't be done.
Only write what you are asked (boss ) and do what bring the biggest benefits everyday.
I however have a next list. I wrote what I'm currently doing at the top and things I need to fix to complete it. My next list can be done in hours or days usually.

From Eclipse to IntelliJ

I know some (crazy) people want to move from IntelliJ to Eclipse. On my side, I am moving the "normal way", i.e. from Eclipse 3.3 to IntelliJ 8.0.1
I really like it, but I am a little lost sometimes.
Do you know any specific IntelliJ guide or tutorial created specifically for Eclipse users?
For example, after some tests, I missed some options usefull on Eclipse (I don't say they don't exist in IntelliJ, I just say that I didn't find them !):
Automatic insert at the correct position of the ';' character
Actions made on save (format, reorganize and clean imports)...
Check this FAQ in the Jetbrains home page: link. It is not a guide or tutorial, but it goes through some basic concepts that Eclipse users should accustom themselves with when they move.
For automatically inserting ';' at the correct position (as well as braces) the last time I've looked (probably Idea 6, maybe 7) it didn't exist. My colleagues always wonder why I insert ';' in stupid places when I'm pairing with them. I told them to notify me when this feature becomes available in Idea, but until now they didn't.
There's the two topmost related questions (see right column) covering "Things possible in A that aren't possible in B" for both directions - you might find ideas there as well as in the comments to the answers where people tell you what to alternatively do.
Edit (maybe this is better here than in the comments);
...it seems to be somewhat possible. See the comment to my answer to the related question: . One could argue that CTRL-SHIFT-ENTER is less intuitive than ';', but in Idea you get used to type a lot more of such shortcuts than in eclipse... This comes closest to the functionality you asked for. Hope it helps...