This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 156460 - Bind "action" to be "pre-save"
Summary: Bind "action" to be "pre-save"
Status: RESOLVED DUPLICATE of bug 140719
Alias: None
Product: editor
Classification: Unclassified
Component: Key bindings (show other bugs)
Version: 6.x
Hardware: All All
: P3 blocker with 2 votes (vote)
Assignee: David Strupl
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-01-08 09:15 UTC by Lukas Hasik
Modified: 2011-04-21 13:29 UTC (History)
0 users

See Also:
Issue Type: ENHANCEMENT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Lukas Hasik 2009-01-08 09:16:33 UTC
http://www.nabble.com/Proposal%3A-address-carpel-tunnel-syndrome-in-Netbeans-to21342949.html

it might be useful to provide users a way to bind an action to be run before save. This "pre-save" state could be set up
in the new Keymap table of 7.0
Comment 1 Vitezslav Stejskal 2009-01-08 10:06:16 UTC
Yeah, that sounds cool, but can potentially have zillions of side effects. Are you (QA) going to test that all and each
action when marked as 'pre-save' works and causes no other harm? And their combinations?

Obviously for many actions marking them as 'pre-save' makes absolutely no sense. Why would somebody want to 'Open
Project' when saving files? So this feature should not be allowed just for any action. Maybe we could pick a few that
are suitable for running on save, which would greatly limit the test matrix. Just random thoughts.
Comment 2 Lukas Hasik 2009-01-08 10:10:46 UTC
>Are you (QA) going to test that all and each action when marked as 'pre-save' works and causes no other harm? And their
combination?
-definitely not

>Obviously for many actions marking them as 'pre-save' makes absolutely no sense. Why would somebody want to 'Open
>Project' when saving files? So this feature should not be allowed just for any action. Maybe we could pick a few that
>are suitable for running on save, which would greatly limit the test matrix. Just random thoughts.
-I completely agree. 
Comment 3 Petr Dvorak 2009-01-08 12:38:45 UTC
I would be more in favor of explicitly stating which actions can be pre/post-save. I don't think it is a good idea we
allow user to do anything in the Keymap dialog - imagine the defects saying (roughly): "IDE freezes if I make Save
action a post-save"... Formatting, fixing imports/ commit, ... these all make sense to me...

But probably not in the Keymap dialog that we have now (I don't know how to fit it there - maybe tabs in the Keymap
section?).
Comment 4 Petr Dvorak 2009-01-08 12:40:14 UTC
See also issue 140817 - maybe this is sufficient in the beginning (format+fix imports on Save for Java files)...
Comment 5 tkellerer 2009-01-08 16:57:49 UTC
I brought this up in the NetBeans forum. Thanks to Lukas for logging this

I don't think we need to be able to bind /any/ action to the pre-save "event". From my point of view, only actions that
"modify" the source code are of interest. 

I definitely would like to see "remove trailing spaces" there :)
Comment 6 Vitezslav Stejskal 2009-01-12 10:30:12 UTC
> I definitely would like to see "remove trailing spaces" there :)

6.5 does that automatically for lines that were modified by a user (in order not to interfere with VCS too much).
Comment 7 tkellerer 2009-03-06 17:43:47 UTC
> 6.5 does that automatically for lines that were modified by a user 
No it doesn't :( 

When you e.g. hit enter to create empy lines, NB will indent according to the previous line (which is fine), but those
lines will have "trailing" spaces. 

The same is true when using Copy & Paste. That can also leave trailing spaces in lines that I edited. 

So I still need "remove trailing spaces" as a pre-save action ;)
Comment 8 fan_42 2010-11-04 21:19:11 UTC
If we go with the action that I would like to see there:

- Format
- Organize imports
- add final to private fields which can be final
- remove trailing space
- add @Override to methods which override a method
- add {} at if, for etc.
- remove unnecessary casts. 

I guess we could find some more :)
Comment 9 David Strupl 2011-04-21 13:29:50 UTC

*** This bug has been marked as a duplicate of bug 140719 ***