Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I get a cursor on every line in vscode

People also ask

How do I put a cursor on multiple lines in Visual Studio?

If you want to edit multiple lines in non aligned blocks you need to press Ctrl+Alt and explicitly click where you want each cursor to be and then just start typing as in example 2 below.

How do you put a comma after each line in VS Code?

Select all by pressing CTRL+A (or Command+A for Mac). From Selection, choose Add Cursors to Line Ends by pressing SHIFT+ALT+I (or SHIFT+OPTION+I). Type the Comma character.


The command Selection / Add Cursors to Line Ends altshifti will put a cursor on every line in the current selection. (For mac use optshifti)

Tip: You can pull up the keyboard shortcut reference sheet with ctrlk,ctrls (as in, those two keyboard combos in sequence). (For mac use cmdk,cmds)


Hold Alt+Shift and select the block. Then press End or Right button. You get selected individual lines.

I use version VSCode 1.5.3 in Windows.


  • Hold Alt+Shift+i

  • Hold Home (fn+-> Mac) for right-most or End for left most(fn+<- Mac)

enter image description here


This feature is actually called split selection into lines in many editors.

  • Sublime Text uses the default keybinding, CTRLSHIFT L
  • VSCode uses ALTSHIFTI
  • For Atom you actually need to edit your keymap to something like this
'.platform-win32 .editor, .platform-linux .editor':
  'ctrl-shift-L': 'editor:split-selections-into-lines' 

Install the extension Sublime Commands.

[Sublime Commands] Adds commands from Sublime Text to VS Code: Transpose, Expand Selection to Line, Split into Lines, Join Lines.

(Don't forget to add the keybinding(s) from the extensions details page to your keybindings.json)


Doesn't VS Code already have a "split into lines" command?

Yes, yes it does. However it differs from the one in Sublime.

In VS Code, when you split into lines your selection gets deselected and a cursor appears at the end of each line that was selected (except for the last line where the cursor appears at the end of the selection).

In Sublime, when you split into lines a cursor appears at the end of each line (with the same exception as in VS Code) and the selection is divided on each line and "given" to the same line.


Real Lines vs Display Lines

First we have to understand the difference between Real Lines and Display Lines to completely understand the answer of the question.

When Word Wrap is enabled, each line of text that exceeds the width of the window will display as wrapped. As a result, a single line in the file may be represented by multiple lines on the display.

The easiest way to tell the difference between Real Lines and Display Lines is by looking at the line number in the left margin of the text editor. Lines that begin with a number correspond to the real lines, which may span one or more display lines. Each time a line is wrapped to fit inside the window, it begins without a line number.

Cursor At the Beginning of each Display Lines:

display lines

Cursor At the Beginning of each Real Lines:

enter image description here

Answer to the Question

Now that we know the difference between Display Lines and Real Lines, we can now properly answer the actual question.

Hold AltShift and select the text block.

Press Home to put cursor on the beginning of every Display Line.

Press End to put cursor on the end of every Display Line.

Press HomeHome (Home twice) to put cursor on the beginning of every Real Line.

Press EndEnd (End twice) to put cursor on the end of every Real Line.

Please understand that altshifti put cursor on the end of every Real Line.