What are the different eclipse shortcuts available? - java

I wanted to know the different eclipse shortcuts available like when we wanted to write this
System.out.println(); then we simply write syso and hit ctrl+space
then we get System.out.println();.I do not want shortcuts like for copy ctrl+c or to cut ctrl +X
screenshot of templates

These are called "editor templates", and you can see the full list in
Window --> Preferences --> Java --> Editor --> Templates
You can also create your own there, with various placeholders, e.g. I have one isequalto defined like this:
${:importStatic(org.fest.assertions.api.Assertions.assertThat)}assertThat(${actual}).isEqualTo(${expected});
This will automatically add a static import and add cursor positions that can be navigated to with TAB. This can be invoked by typing isequalto (or just ise) and ctrl+SPACE.
For a try/catch bock, just type try and ctrl+SPACE.

What you're looking for are not shortcuts, but Templates.
Open Window -> Preferences -> Java -> Editor -> Templates and you'll see the full list.
You can even add your own templates.

GO to Help Menu in Eclipse
And Click Key Assist

The shortcuts your referring to are called templates.
You can view them all in the IDE or make your own:
Window > Preferences > Java > Editor > Templates
Basically to use any of these templates, type their name followed by CTRL + SPACE. Once you have enough of the name typed that the name is distinct, for instance syso you can use CTRL + SPACE. So you may not need to type the whole name.

see Eclipse Short Cuts
It may be for Eclipse 3 but those shortcuts have been standardised for a while.

Related

Why is VS Code showing this these labels or parameter names for System.out.println() in java files?

I have the java extension pack installed. This just started happening today. Not sure if this is due to some json settings or something else.
See Random things such as "s:", "x:", and name of parameters are showing up inside of my print statements: java extension issues.
It's a new feature introduced in 1.5.0, called inlay hint. We use that
to display the parameter names of those arguments.
If you do not want to have them in your editor, you can set the
setting java.inlayHints.parameterNames.enabled to none
The newest extension has enabled inlay hints. They are actually helpful, but if you want to remove them:
Mac: Code -> Preferences -> Settings
Windows: File -> Preferences -> Settings.
**Type "inlay" in the search, and disable inlay hints.
To disable this setting Open 'setting.json' file
(CTRL + SHIFT + P and type "Open Settings (JSON)" to open setting.json)
Add this code in this file
"editor.inlayHints.enabled": "off"
The Java tooltip is now showing you the variable names from the methods in question. System.out is a PrintStream. The relevant method signatures are PrintStream.print(String s) and PrintStream.println(String x).
lets say you have a function setPassword that takes parameter of the name newPasswordandoldPassword. So, when you call that function, it would hightlight what the parameter is supposed to be. like
setPassword(newPassword: "SOME_NEW_PASSWORD",oldPassword:"SOME_OLD_PASSWORD")
This is supposed to reduce any confusion as to what value you entered is what. Extremely helpful when working with functions that take multiple parameters.
It's called inlay hints. You can set that to not show unless needed.
In Command Palette -> Language Specified Settings -> Java -> Search for inlay
-> Enable or Disable.
P.S. It's really helpful in debugging Problems, So you can set it to "offUnlessPressed".
None of this worked for me so here is how I fixed it:
When I did settings through CTRL + SHIFT + P and type "Open Settings
(JSON)", an uneditable JSON file would pop up called
defaultSettings.json that had the setting I needed to change.
Here is an image of this file:
defaultSettings.json
I had to find settings through the file directory (win + R) %APPDATA%
-> Code -> User -> settings.json
Then I just added "editor.inlayHints.enabled": "off",
Make sure to add a comma at the end of the previous line if there was
not an existing one or else an error will appear.
Here is an image of the settings.json file: settings.json

Is it possible to tweak the settings so it automatically places quotations when using System.out.println()?

I am using java on Intellij and I wonder if it is possible to make it so that it automatically places quotations System.out.println(here);
Thanks
Yes, it is possible.But a bit tedious. (EDITED)
ECLIPSE
you need to know that Ctrl+space opens options for autofill.
you need to create a simple template at
Window>Preferences>Java(dropping menu)>Editor>Templates>New...
In the open window at Name type: Syso
at Pattern: System.out.println("")
Make sure the checkbox Automatically insert is on.
Apply and close
Now every time you type Syso and hit Ctrl+Space there will be first option
of autofill with quotations. Profit.
oof, didn't notice about Intellij , my bad. Thought about Eclipse. Well here is one for Intellij
INTELLIJ
I believe the Intellij version of cntl+space is Tab button
Go to Settings>Editor>Live Templates
Pick any template and press Plus icon. Choose Live Template
In abbreviation type your desired word (I would put: Syso)
In Template txt type : System.out.println("")
Make sure the box with Reformat according to style is checked
Now every time you type Syso you can hit Enter and have PROFIT!

How to create new key-bindings for ecplipse

Most germans probably know the hassle to reach specific symbols like "{" or "}" within the german keyboard layout, that are often used, when programming in java.
Does anyone know a simple way to rebind those keys for the java editor in eclipse? I'd love to have it the following way, but I am open to alternatives too, as long as they are easy to reach:
ALT GR + Ö results in "{"
ALT GR + Ä results in "}"
I tried several third party keybinding tools like Sharpkeys, but most of them don't recognize those specific german keys within their layouts. I also tried inner eclipse solutions like templates, but those don't feel naturally to use, since you can't bind them to a key. I also tried macro add ons, but those usually can only hold the last recorded macro.
Anyone with a nice clean idea on how to solve this?
OS = Windows 10
You could do the following to type ö/ä followed by Enter for {/}:
In Window > Preferences: Java > Editor > Templates:
Click New...
Enter/choose the following values:Name: öContext: JavaDescription: {Pattern: {
Repeat the last two steps for ä and }
In Window > Preferences: Java > Editor > Content Assist add öä as Auto activations triggers for Java (by default it is ., so change it to .öä)
Result: In the Java editor, if you type ö/ä, the content assist automatically opens and hitting Enter will select the ö/ä template.

How to rename a variable in Eclipse JEE Mars 2?

I would like to rename a variable and all its references in my code base. I am using Eclipse Java EE IDE for Web Developers (Mars.2 Release (4.5.2)).
When I right-click, I do not see any menu item called Rename in any of the context-menus or sub-menus.
I looked up all the context menu items before posting this question. The first place I looked was the Refactor \ Rename context-menu item because that's where I would have found it in Visual Studio. I am a C# developer.
When I right-click, I do not see any menu item called Rename
The menu item is Refactor, under which you have Rename.
Select the variable pres Alt + Shift + R and type new name.
Or Select the variable -> right click -> Refactor -> Rename and type new name
It is in the context menu Refactor \ Rename....
And the keyboard shortcut is Alt+Shift+R.
You first have to select the variable you want to rename and then use either the context menu (right click) on it, or use the shortcut.

Adding your own custom macros like "sout"in IntelliJ

I really like to be able to type sout and get System.out.println. In fact, I like it so much that I want to add more of these. For example, fb could be final boolean.
How do I add that?
Like said in the comments, these macros are called "Live Templates".
To create one:
open the settings menu
select the "Live Templates" entry in the left menu
select the category where you like to create your new template
press the "+" button on the right hand side of the settings menu window
add the abbreviation, "fb" in your case
add a description
... and then the text:
final boolean
($END$ can be omitted here)
Now select the context (link is beneath the text field) where this template will be used and recognized by IDEA
I've used the contexts Java Statement, Expression, Declaration and Other (but "Other" isn't shown in the list of contexts).
It could like this:
To use it write fb on the appropriate place and either wait until IDEA suggests to use the template or press ctrl + space to activate the auto complete, it should create:
final boolean
You may find some more information about creating and editing live templates on the official help page: Creating and Editing Live Templates

Categories