Anyone know the keyboard shortcut to copy/paste a line into a new line in Eclipse, without having to highlight the entire line?
ctrl-alt-down turns my whole screen upside down (I'm on windows). Interestingly, that's what's specified in the windows->preferences.
Ctrl-Alt-Down: copies current line or selected lines to below
Ctrl-Alt-Up:: copies current line or selected lines to above
Ctrl-Shift-L: brings up a List of shortcut keys
See Windows/Preference->General->Keys.
(Tested on Windows) [Per below comments, works as well in Ubuntu, IBM RTC 4 / RSA 9]
In Eclipse, press Ctrl+Shift+L two
times in succession (or Ctrl + 3 > type: Keys > Enter).
In 'type filter text' (search) text box, type Copy Lines
Select the filtered row, right click the 'Binding' field, and do Select All
Press Ctrl+Shift+V
Give OK
From now on, for any line you want to duplicate, just press Ctrl+Shift+V.
You have to turn off the graphics hot keys that flip the screen. If you're on Windows, you need to right click on the Windows desktop and select "Graphics Properties..." (or something similar depending on your version of Windows). This will bring up a screen where you can manage graphics and display options, look for a place where you can disable hot keys, sometimes it's hidden under something like "Options and Support". Turn off the CTRL + ALT + ↑ and CTRL + ALT + ↓ hotkeys (alternatively you can just disable all graphics hot keys if you're not using them).
If you want to copy a line to the clipboard you can also use the trick:
Ctrl-Alt-Down
followed by
Ctrl-X
The drawback is that the file where you copy the line from becomes dirty.
Ctrl-D would delete a line
Ctrl-Z would undo deletion, with highlithing entire line
Ctrl-X/C cut or copy entire line
The advantage over Ctrl-Alt-Down followed by Ctrl-X suggested by other users is that it doesn't make eclipse think that the file was changed in any way. It's also faster and causes no problems even if the user has rotating screen issue with Ctrl-Alt-Down/Up keyboard shorcut. So there's no need to remap shorcuts for this.
Another way to go would be hitting Alt-Shift-Up until the entire line gets selected. If you've gone too far, of course you can select less with Alt-Shift-Down.
If Your Window pc, you may try this, it's also for STS:
Ctrl + win + Alt + Down :: Copy current line or selected line to below
Ctrl + win + Alt + Up :: Copy current line or selected line to above
I've written the linecopypaste plugin for Eclipse that mimics Visual Studio's copy/cut/paste behaviour. I've also found copycutcurrentline which appears to do the same.
On my Mac the default setting is is ALT+CMD+Down
You can change/view all key bindings by going Eclipse -> Preferences (shortcut CMD+,) and then General -> Keys
Ctrl+Alt+Down Copies current line to below like notepad++ (Ctrl+D)
If your whole screen is 180° rotted then you should disable your hotkey settings.
Right Click -> Graphics Options -> Hot Keys -> Disable
That it now you done try shortcut Ctrl+Alt+Down
Try this in MAC.
ALT + COMMAND + DOWN
it works.
If anyone using Mac computer the CTRL + ALT + DOWN keys doesn't work.
Try it with,
ALT + COMMAND + DOWN
It works.
We can assign any command to any action(given) in Eclipse
From Menu Bar go to
Window > Preferences
then search for the keys
then search copy line
then click on copy line and then click on command in Binding
and peform a command which you wish to use for duplicating line i use ctrl+shift+d
you can choose whatever you want
On Mac, I've tried the linecopypaste and it works great
cmd+c -> Copy current (unselected) line, just like "yy" command in Vi/Vim
cmd+v -> Paste it, like "p" command in Vi/Vim
Thank's Larsch for your work!
PD: Using Eclipse Luna 4.4.2 in Yosemite
I have to change the assigned key,
e.g.
Windows/Preference --> General --> Keys
Select "Duplicate Lines" under command
Click on "Binding"
Ctrl + Shift + D
Just another approach:
1) Alt+Up and Alt+Down (or Alt+Down and Alt+Up, order does not matter)
2) Ctrl+C
But of course vim's "yy" is the fastest :)
Disabling the hot keys for the Intel Driver worked for me for Windows 7. However, for Windows 8, when I tried that, it prevented eclipse from getting the Ctrl-Alt-Down keystoke. I had to change the Intel driver key binding to Ctrl-Alt-F10 (or something else it will accept). Eclipse then gets the Ctrl-Alt-Down and copies the line.
For mac, shift+alt+down_arrow works in netbeans' editor.
It's working with me on ,
Eclipse + Spring tool suite .
ALT + COMMAND + DOWN
I am using Windows 7. To disable that all I did is to Right click on the Windows desktop and select "Graphics Properties" ->Options. Then selected "Off" at the left side on the resulting screen. This disabled all hotkey combination. I think there is no way to disable only some them, its all or none. Anyway I didn't need them. So now crtl+Alt+Up and Crtl+Alt+down works for me in Eclipse and my screen stays same :)
I think similar option also exist in other versions of Windows. Have fun :)
For personal usage, I add a vim plugin like Vrapper to Eclipse and just use yy to copy entire line.
The Ctrl+Alt+Down / Ctrl+Alt+Up flips my screen so I overrode that in the Eclipse shortcuts via
Window => Preferences => General => Keys.
Search for "dupl" to find the Duplicate Lines command. I overrode the default and chose Ctrl+Shift+D. For me, that's easy to remember just like Ctrl+D to delete lines
ctrl+alt+down/up/left/right takes precedence over eclipse settings as hot keys. As an alternative, I try different approach.
Step 1: Triple click the line you want to copy & press `Ctrl`-`C`(This will
select & copy that entire line along with the `new line`).
Step 2: Put your cursor at the starting of the line where you want to to paste
your copied line & press `Ctrl`-`V`.(This will paste that entire line & will
push previous existing line to the new line, which we wanted in the first place).
The combination of Ctrl + Shift + Alt + Down worked for me on Linux.
To copy text from the begining of line to the cursor position: ctrl + insert
It does the job and save a lot of time for me.
Another shortcut way to do this is press Ctrl+Shift+L and select which command you want to perform and hit enter
its best practice for beginner.
See how to make the eclipse default shortcut work ctrl alt↓
Select line: Put cursor on the line to copy, select line with ShiftHome if cursor in the end of line or ShiftEnd if cursor is in starting of line
Duplicate line below (default expected behavior) or above ctrl alt↓ or ctrl alt ↑ but the key here is you need to select the line/block
Some answers focus on disabling the screen Rotation in Windows or any other OS, that applies to prevent accidental keypress.
Related
I was wondering if there is a way to just remove the selection when I copy a line by doing ctrl + c on a line
before: I just have my cursor in a line:
after: I just press ctrl + c
I dont like how I have to do an extra step to unselect, there must be a way to just remove the select without removing any functionality. Vscode has it working perfectly but I would love to have the same experience in IntelIJ
You can simply use Ctrl+D to copy a complete line without selecting it.
More info in JetBrains Help
To just copy and paste the line, you don't need to select it at all.
Just use action Duplicate line or selection Ctrl + D
and Move Statement Up/Down Alt+Shift+Up or Alt+Shift+Down to the desired position with .
See JetBrains blog :
Like cut, we can copy a whole line with ⌘C, or Ctrl+C, without having to highlight it first, and paste this too. Sometimes it might be more useful to duplicate the line instead with ⌘D, or Ctrl+D.
When duplicating a line, the line will be copied directly as new line below and cursor is placed where it has been before.
Watch the youtube demo IntelliJ IDEA Tricks - Lecture 7: Duplicate and Delete Lines (0:41)
See also:
How to select/copy current line without using mouse in IntelliJ IDEA
JetBrains IDEA help: Write and edit source code, section Lines of Code
Dev.to blog: IntelliJ style line duplication in Visual Studio Code
I am using Intellij IDE on Windows 7. Here Shift + Up / Shift + Down is not working for Line selection operation. How to get this, as it is default way in other editors.
Thanks in advance.
You can change the key mapping in the settings (File -> Settings). Type in the search box (upper left) keymap. When on the keymap settings page find in the tree Main menu -> Code. There you find the Move Line Up and Move Line Down. Make a right click and select add keyboard shortcut to assign what you want. Most probably SHIFT-UP is already assigned to some action. It's up to you if you want to reassign it.
I've recently switched from Eclipse to IntelliJ IDEA 13. I use the VI keybindings.
One non-vi thing I am used to doing in Eclipse is using Shift + ↑ / Shift + ↓ to block a few lines of text. The behaviour of this text selection in Eclipse is the same as almost every other text input widget I've ever used. Typically I do one of two things after making the selection - delete this block or comment it out (⌘ + /).
I have no found equivalent keyboard-only multi-line selection function in IntelliJ IDEA 13.
Shift + ↑ does not start a block selection - it seems to page the cursor up and down the screen.
If I use the mouse to start making a selection, then the arrow keys do extend the selection. However, I'm unable to start a selection using the keyboard alone.
I'm aware of the ⌘ + W ever-outward-growing smart element selection - but if you then use the arrow keys, the selection is lost, not extended.
How can I start and then extend a selection region across multiple lines using the keyboard only on Mac OS X (that works with the VI keybindings enabled)?
Multi-line caret
For Mac, you can use ⌘+⌘(Hold)+↑ / ↓.
For Windows, replace the ⌘ with CTRL.
ESC will end multi-line mode.
Change Multi-caret Hotkey
To add a custom Keymap, ⌘+SHIFT+A, type keymap and click on the one with Settings as subtext. Search for Clone Caret Above and Clone Caret Below.
I mapped mine to ALT+SHIFT+↑ / ↓.
Bonus
Try holding combinations of ⌘, SHIFT, and arrows for improved selection power.
Sounds like you need to map it. In the default key mapping Shift+↑ and Shift+↓ work as expected (i.e. as you describe). I do not have the vi mapping available to check it. Go into Settings > [IDE Settings] > Keymap. In the Keymap, go to "Editor Actions". Configure the "Down with Selection" and "Up with Selection" options. This may mean removing the Shift+↑ and Shift+↓ mappings from something else.
I use the IdeaVIM plugin on Mac OS and I can increase or decrease my selection with the keyboard only with alt-Up/Down.
It is possible I customized the VIM keymap to this, can't remember if it is default or not. However, the editor action you are looking for in the keymap settings is "Select Word at Caret" and "Unselect Word at Caret". Repeatedly pressing the keystroke smartly selects/unselects the text. It almost always selects what I want.
You can use alt+Up/Down/Right/Left or alt+mouse-select to block select on mac in IntelliJ
I pushed a magic button and now my cursor (the blinking thing that shows where you type) split itself and now Eclipse is acting like a plain text editor/like Microsoft Word. The cursor, which usually looks like "|", now looks like "¦" (what Wikipedia calls a 'broken bar' or a 'parted rule' rather than a normal 'vertical bar').
I just want to know how to get Eclipse to act normal again, and what I accidentally did so I don't do it again.
It sounds like you have accidentally switched from Smart Insert mode to Insert mode.
Press Ctrl + Shift + Insert or tick Smart Insert Mode on the Edit menu to switch back.
Smart Insert is the feature that automatically insert closing quotes and brackets when you type the opener and places semi-colons at the end of the line when you press semi-colon (if you have the preference for that enabled.)
Maybe you pressed the insert key, which will change the Eclipse editor to Overwrite rather than Smart Insert (see the info bar at the bottom of the editor), and will change the cursor to a block rather than a vertical line?
Update: Thanks for clarification - see mikej's answer which is correct. I'll leave this answer in case anyone has the similar, related problem that I describe.
Just double click on "Smart Insert" / "Overwrite" in eclipse status bar
For reference, I am adding image.
If nothing works, restart eclipse. That is what I did !
Just click
Toggle Vrapper Icon in Toolbar..
That may causes some issues like these. Because I'm also faced the same issue until today.
Please refer the below images to get clear idea about this.
Make sure that it is in disable mode in status bar
On my windows computer I press Shift + 0 but the zero has to be on the numeric keypad not the top row numbers.
Shift + 0 toggle my cursor.
#Jeremy by saying " I have a vertical line with a gap in the middle of it, like the character above the forward slash " i guess you are referring to the ' Pipeline 'symbol, the one you use to denote' OR ' in programming languages. As people already answered, you are in Raw Insert Mode (as opposed to Smart Mode) so try Edit->Smart Insert Mode (Ctrl+Shift+Insert by default).
For more info you can visit this thread http://www.eclipse.org/forums/index.php/t/53833/
And remember, the symbol is called 'Pipe' symbol or 'Pipeline' symbol.
I also had same problem, you can fix this by pressing just INSERT button on keyboard (on windows platform) also.
It worked for me.
or you can restart your eclipse.
I've encountered this symptom in Eclipse 3.7 before. And after I restarted machine, it disappeared.
If your cursor symbol is " + " then press Alt+Shift+A.
or else we can use Edit menu options ==> Toggle Block Selections
If you are using spring tool suite then you can double click on highlighted Smart Insert . Some keyboards do not have insert button.
enter image description here
I've seen this done in TextMate and I was wondering if there's a way to do it in IDEA.
Say I have the following code:
leaseLabel = "Lease";
leaseLabelPlural = "Leases";
portfolioLabel = "Portfolio";
portfolioLabelPlural = "Portfolios";
buildingLabel = "Building";
What is the best way to append '+ "foo"' to every line? Column mode won't work since the lines are not correctly aligned on the right side... unless there is an easy way to right justify the text :P
Since Idea IntelliJ IDEA 13.1 there is a possibility to edit multiple lines.
Windows
Alt + Shift + Mouse click
macOS
Option + Shift + Mouse click
for selection. More about this new improvement in the IntelliJ blog post here. Very useful feature.
I use Column Selection Mode (Cmd+Shift+8 on Mac) which allows to create multiple cursors via Shift+Up or Shift+Down then edit all the lines together.
Starting from IntelliJ IDEA 14 there is also Clone Caret Above / Below:
Windows: Ctrl, Ctrl+Up/Down
MacOS: Option,Option + Up/Down
(hold the second press of the modifier key, then press the arrow key)
Another keyboard-only approach. It's possible (since 13.1 version) to use Alt+J / Shift+Alt+J (Ctrl+G for OS X) shortcuts for creating multiple carets. Alt+J selects the next occurrence of the currently selected text and adds another caret.
Select the first semicolon
Then press Alt+J four times
Edit what you want to
Press Esc to return to the first line.
Place caret at end
Windows: CTRL + CTRL(Hold) + ↑ / ↓
Mac: option + option(Hold) + ↑ / ↓.
To place caret at the end of rows: move caret to top row, clone down to bottom, and click END.
Change Multi-caret Hotkey
To add a custom Keymap, CTRL+SHIFT+A, type keymap and click on the one with Settings as subtext. Search for Clone Caret Above and Clone Caret Below.
I mapped mine to ALT+SHIFT+↑ / ↓ on Windows and ⌘+↑ / ↓ on Mac.
Bonus
Try holding combinations of CTRL, SHIFT, and arrows for improved selection power.
Column mode works just fine: first select all the lines in column mode, then press END: each cursor will jump to the end of respective line.
On Linux (NO MOUSE NEEDED):
ALT + SHIFT + INSERT to enter block-mode
SHIFT + UP or SHIFT + DOWN to select multiple lines
END to jump to the end of each line
now type foo, it will append it to each line:
Now deselect everything with ESCAPE and switch back to normal selection mode with ALT + SHIFT + INSERT.
Since WebStorm 2020.2 you can use AltShiftG to add carets at the end of each selected line.
The new action for working with multiple carets (Alt+Shift+G) lets you quickly place carets at the end of each selected line and removes the selection as soon as all carets are added.
What’s new in WebStorm 2020.2
You could also do a vertical code block selection by clicking mouse wheel and dragging:
Select Next Occurrence:
Alt+J on Windows, Ctrl-G on Mac OS X
Unselect Occurrence:
Alt+Shift+J on Windows, Ctrl-Shift-G on Mac OS X
Select All Occurrences:
Ctrl+Alt+Shift+J on Windows, Ctrl-Cmd-G on Mac OS X
for more reference: link
I just use the macros for this sort of thing. I start recording the macro, do it once, then play back the macro on each line I want to modify. You'd be amazed at how fancy you can get with the macro record/playback feature.
It took me a while to find out, but on a Mac you can double-press Option (press it once, release, press it again, keep it pressed) and use Up/Down keys to create/remove carets as you wish.
You can also hold Shift+Option and click to create/remove carets at specific points.
ALT + CTRL + SHIFT + CLICK on linux
Hold ALT and use the mouse for click and drag
It's Option + Shift + Click for Macbook.
All Important Intellij Shortcuts: https://docs.google.com/document/d/1KagEr4hDmTugMJJLsYUgc122zXEnbj4A2vHoe8PtKpo/edit?usp=sharing
I hold (Shift + option + command) then click where ever I want the extra cursor to go. Using Webstorm and on a Mac
In this case you can also just select the piece of code in which you want to do this and perform a replace on it. Replace:
";
with:
" + "foo";
So in case you didn't know: If you have text selected while you perform a replace (Ctrl+R or Cmd+R) it will only apply to the selected piece of text.
For newer versions use: Alt + Shift + Insert
You can set multiple carets from the search and replace tool.
Ctrl + R to open Search & Replace tool
Write the character or word identifying the beginning of each recurrence to edit
Clic on 'Select all occurence' in the Search & Replace tool, IntelliJ will put a caret for each occurence
Live the magic
For Mac:
Option + Shift + Click & Drag
What I usually use (NetBeans, but I believe it is simple to use in any IDE) is find&replace.
You just find ;\n and replace it with + $foo;\n then you don't apply to ALL lines but you place cursor on the first line and you just hit "replace" button (depends on your IDE I suppose) 7 times to change 7 lines in no time. Easy and simple and it should be done with the most basic and the most advanced IDE you can find.
EDIT:
In IntelliJ (don't know if it works in other IDEs too) you can use your regexp search&replace to selection only so you can actually use "replace all"
For mac users it's : ALT + SHIFT + Click
All the above answer are great, but if you want multiline edit at the end of lines then you have press "End" key while your multiline selection is active.
For Mac Sequence of command will be:
shift option click # select a set of lines
command right arrow # go to the end of lines
This will do multiline select at the end of the line and you can edit it as required