My work requires me to add lots of logging statements to my code. This makes the code untidy. So, at least on my IDE, I want these specific lines to be grayed out. Does Eclipse offer some REGEX / rule based color palette capabilities?
When I use Cmd+K to go to the next occurrence of the selected word, Eclipse leaves behind these red "cursors" right before the copies of the word that I navigate through. If I then edit the last occurrence that I find, Eclipse "helpfully" edits all the occurrences that I've navigated through in the same way. This leaves corruption in parts of my file that I'm not currently looking at, which is really infuriating.
I want to disable this "feature", but I haven't got a clue what to call it, so I don't know how to find the setting that turns it off. Searching the Eclipse preferences for "occurrence" only gives various versions of "Mark Occurrences" for each editor plugin, which doesn't disable this behavior when unchecked.
EDIT: Here's a video displaying the behavior I'm talking about: https://youtu.be/8xeKRLyGSLg
This isn't really given by PyDev, it's a feature added by LiClipse (http://www.liclipse.com/multi_edition_video.html).
After the link is done with Ctrl+K, you can press ESC to remove those links if you don't want the multi-edition to happen (so that when you edit one occurrence you don't edit the others).
I must say this is the first request to have that turned off... I'm pretty certain as I just took a look and there's no setting to do that -- so, unfortunately, until the next release, you have to either live with it, remembering to press ESC if you don't want the multi edition to happen or use a plain Eclipse install with PyDev, but you'd also be without other LiClipse benefits, such as textmate bundles, vertical indent guides, theming integration, etc.
Still, note that ideally, I'd say you should get used to it as it can be a real time-saver -- although I'll implement the setting to turn it off for the next release anyways, as it's something that should really be there ;)
I just set up Eclipse for PHP Developers on a new machine, and now I have a problem I haven't experienced before.
Normally, I keep track of short-term work that I want to do by adding TODOs in comments on a file. These show up on the right side of the editing window as little blue rectangles. This helps me find the next thing I need to work on.
That part is working, but when I remove the comment the blue rectangles aren't going away. I have used Eclipse for years and never had this problem before.
Anyone know why this isn't working?
For tasks added in the source file's syntax, you often need to Clean and Build the project again to reprocess the file (those are handled in the relevant compiler). For ones that don't get "compiled", check the General->Editors->Structured Text Editors->Task Tags page and have it try to redetect them from there.
I never had this issue with Eclipse before (Eclipse Classic 4.2.2, Indigo) but it started happening on my new iMac recently, that it stops highlighting similar occurrences or variable names, etc. Then it automatically starts working just fine.
Needless to say its a pain when it doesn't show the multiple occurrences of variable names and I have to find them using Find.
I was wondering if there is a sequence of keys which I press by mistake which causes it? I haven't find an answer to this anywhere else yet.
Attached is the screenshot from the Preferences. As I edit this question, again the Mark Occurrences is greyed out and I'll have to check it again to make it work.
A work around for this is to click on e.g. the Outline view, and then click back on the editor. The mark occurrences should start working again. I don't know of a long term fix.
In NetBeans the GUI Builder generates code that is off limits to you from the editor.
I know you can switch to Design Mode and specify custom code and then enter edit in indirectly that way, but it's a pain to not be able to edit text that's 2 lines from your cursor.
Can I allow editing within those regions... I promise I'll be careful :)
Thanks.
Note: I don't want to lose code generation
If you open it in an external editor, there are two possibilities:
there is no guarantee that the changes you make will work (and not break anything) in the Netbeans UI Editor
The next time you edit the file in Netbeans it will be regenerated.
Either way, probably not what you want. The best thing to do would probably be to make the whole design up in the gui editor and when you are happy with it, delete the comments and continue on.
[sarcasm]
With the drag and drop gui editor, what could you possibly want to change by hand anyway?
[/sarcasm] ;)
If you open the .java files in Notepad or WordPad, you'll find pairs of comments that say
// GEN-BEGIN: <name of section>
...
// GEN-END: <name of section>
Delete those comments, and two things will happen.
You'll be able to edit anywhere in the file in NetBeans.
NetBeans will not be able to regenerate the file from the GUI editor.
So it can be done, but don't do it unless you really mean it.
EDIT: "Note: I don't want to lose code generation." Ok, let's see here.
You want to change what is generated.
You don't want to lose code generation.
You don't want to use the facilities NetBeans provides for adding custom code.
It sounds like you're wishing yourself trouble. :D
I had a same problem. I extended JPanel with my own panel class and I was not able to pack it with the rest of UI. First I searched the web and I found your question. I was not able to find elegant solution to this problem.
Therefore, I decided to create another java class and copy NetBeans created code into it. It worked like a charm.
I agree, it would be nice if we can modify existing code like in .NET.
I copy the initcomponents() method, create my own method newInitComponents() paste the generated code, and override what needs to be overridden before i distribute the code. That way when a change is made in the editor, you can still copy paste the code into your new method. You keep the functionality without costing you the ability to override where necessary. Just call newInitComponents() in your constructor rather than the original. This is not the most efficient way of doing things, but it does what you want.
You can also try moving the .form file in
(project name)\src\(name of JFrame/JPanel).form
NetBeans will now see it as a .java file.
If you did not edit anything necessary for the GUI editor, you can move the .form file back into the src folder.
Can you subclass the class and redefine the method where this code is? Of course then you'll have to maintain the method over time as you make changes to the GUI.
You can maybe also look into AspectJ. It will modify the byte-code at build time and make the changes you define. Not sure if this gives you enough control over what code to change.
If you use APT you can rewrite source code at compile time. This way you can overwrite the code that's there at the moment. You could keep the new code in the same Java file along with comments to explain what is going on. This tutorial makes it pretty easy to get started. Copy that code, get it working, then tweak it to your liking. To find out where in the code the annotated method is call getPosition() on the Declaration.
Go to design page and select any one of the fields. Right click on any selected field and choose Customizer Code , In Customizer Code change all default code to custom creation . Now you can edit your design code as you like...
Very simple... the crappy UTF-8 did not let me compile one JasperReport (everything done by GUI). So, I needed to change Project to iso-8859-1. Result? The project is messed up and some of the things to correct are in the blocked parts of the code. So, I really NEED to edit those automatically generated parts. When they are regenerated, they will be fine because the project is now iso-8859-1.
Step # 1 Close the project in NetBeans
Step # 2 Delete the .form file from the source directory of your project
Reopen the project and it will be editable now!