# How to use multiple cursors in VS Code on Mac: Option+Click, ⌘D and column selection

> Learn how to use multiple cursors in VS Code on Mac with Option+Click, ⌥⌘↓, ⌘D and column selection. Menu paths and shortcuts for 2026.

URL: https://www.lazur.app/how-to/use-multiple-cursors-in-vs-code
Updated: 2026-11-09

To use multiple cursors in VS Code on Mac, hold Option (⌥) and click each spot where you want one. Press ⌥⌘↓ or ⌥⌘↑ to add a cursor below or above, and press ⌘D to select the next match.

## Quick answer

- Hold Option (⌥) and click to add a cursor at each spot you want to edit.
- Press ⌥⌘↓ or ⌥⌘↑ to add cursors on the lines below or above.
- Press ⌘D to select the next match, and ⇧⌘L to select every match at once.
- Use Shift+Option+drag to make a column selection across lines.
- Want Cmd+Click instead? Set editor.multiCursorModifier to ctrlCmd, or use the Selection menu switch.

Applies to: VS Code on macOS, per the stable 1.145 docs (November 2026). Time: 10 min. Difficulty: Easy.

## What you need

- VS Code installed on your Mac
- A text or code file open in the editor
- A keyboard with Option and Command keys

## How to Add multiple cursors in VS Code on Mac in VS Code on a Mac

1. **Open a file.** Open the file in the editor. Multi-cursor works in any text file, including code, Markdown and plain text. Tip: Start with a file where the same word or pattern repeats, so the shortcuts have something to act on.
2. **Place the first cursor.** Click where you want the first cursor. A single click places one cursor in the text.
3. **Add more cursors with Option+Click.** Shortcut: ⌥ + Click. Hold Option (⌥) and click each extra spot. Each click adds one more cursor. This is the default setting on Mac. Tip: If Command-click does nothing, you are holding the wrong key. Option is the default.
4. **Add cursors above or below.** Shortcut: ⌥⌘↓ / ⌥⌘↑. Press ⌥⌘↓ to add a cursor one line below, or ⌥⌘↑ to add one above. Keep pressing to add more lines.
5. **Select every match.** Shortcut: ⌘D. Select a word and press ⌘D. Press it again to add the next match. Press ⇧⌘L to select all matches in one step.
6. **Skip a match you do not want.** Shortcut: ⌘K ⌘D. Press ⌘K ⌘D to skip the next matching occurrence. Press ⌘D again to continue to the matches you want.
7. **Make a column selection.** Shortcut: ⇧⌥ + drag. Put the cursor in one corner of the block. Hold Shift and Option (⇧⌥), then drag to the opposite corner.
8. **Switch to Cmd+Click if you prefer.** (Selection > Switch to Ctrl+Click for Multi-Cursor) Open the Selection menu and choose the multi-cursor switch item. The docs name Switch to Ctrl+Click for Multi-Cursor and Switch to Alt+Click for Multi-Cursor. Check the Mac label on your build. Tip: Set editor.multiCursorModifier to ctrlCmd if you would rather edit settings directly.
9. **Open the Keyboard Shortcuts editor.** (File > Preferences > Keyboard Shortcuts) Shortcut: ⌘K ⌘S. Open the Keyboard Shortcuts editor to check or change a binding. Search for the command, then right-click the entry to find conflicts.
10. **Check for shortcut conflicts.** Right-click an entry and choose Show Same Keybindings. Use Remove Keybinding if another command takes a key you need. Tip: The docs describe these two menu items in the Keyboard Shortcuts editor.
11. **Practise on a test file.** Make a short test file and run through each shortcut once before you rely on it in real work.

Multiple cursors let you edit several places in a file at once. Each cursor takes the same typed text, deletion or paste, so one change lands everywhere you put a cursor. On a Mac, this is one of the fastest ways to change lines that look alike. Examples include a list of function names, a set of config keys or a column of values. You do not need an extension for this. Multi-cursor is part of VS Code's editor, and the docs describe the behaviour as stable for years.

## Add multiple cursors with Option+Click

Option+Click is the default way to add a cursor. The VS Code docs write this as Alt+Click, because Alt is the label on Windows keyboards. Apple's keyboard guide says the Alt key on those keyboards is used in place of Option. On your Mac keyboard, you press Option (⌥). Click once to place the first cursor, then hold Option and click each extra spot. Every click adds one more cursor.

![Developer working at a desk with a code editor open on a Mac, a common setup for VS Code on Mac users](https://images.lazur.app/content-images/howto/use-multiple-cursors-in-vs-code/how-to-use-multiple-cursors-in-vs-2-25de63.jpg)

1. Click the first spot in the file to place a cursor.
2. Hold Option (⌥) and click the second spot.
3. Keep holding Option and click any other spots you need.
4. Type, delete or paste. The change appears at every cursor.
5. Read each spot before you save, especially when the lines differ slightly.

The most common mistake is clicking with Command instead of Option. With the default setting, Command-click does not add a cursor. If nothing happens, check which key you are holding. Also check that you have not changed the modifier setting. That change is covered in the Cmd+Click section below.

## Add cursors above and below with ⌥⌘↓ and ⌥⌘↑

Use the keyboard when the same change applies to a run of lines. ⌥⌘↓ adds a cursor one line down. Press it again to keep going. ⌥⌘↑ adds a cursor one line up in the same way. Put the cursor on the first line, press the key until cursors sit on every line you need, then type. On Windows, the same jobs use Ctrl+Alt+Down and Ctrl+Alt+Up.

Here is a worked example. Say you have a block of lines that each start with the same prefix, and you want to add a comment marker to every line. Click at the start of the first line. Press ⌥⌘↓ until a cursor sits on each line in the block. Type the marker once. Then scroll up and check the whole block before you save. A cursor that stops one line short is easy to miss.

## Select every match with ⌘D and ⇧⌘L

⌘D is the tool for renaming and quick edits. Put the cursor on a word and press ⌘D. The first press selects the word at the cursor. Each press after that adds a cursor at the next occurrence of the selection. ⇧⌘L skips the stepping and adds a cursor to every occurrence in one go. Press ⌘K ⌘D when one match should stay as it is. It skips the next matching occurrence and moves on.

Here is a rename example. You want to change userId to accountId inside one function. Put the cursor on userId and press ⌘D until every match you want is selected. If the next match belongs to another variable, press ⌘K ⌘D to skip it. Then type accountId once. Read the function again afterwards. A match inside a comment or string may have changed too.

## Shortcut table for Mac and Windows

| Action | Mac | Windows |
| --- | --- | --- |
| Add cursor with the mouse | Option+Click | Alt+Click |
| Add cursor below | ⌥⌘↓ | Ctrl+Alt+Down |
| Add cursor above | ⌥⌘↑ | Ctrl+Alt+Up |
| Select word or next match | ⌘D | Ctrl+D |
| Skip next match | ⌘K ⌘D | Ctrl+K Ctrl+D |
| Select all occurrences | ⇧⌘L | Ctrl+Shift+L |
| Column selection | Shift+Option+drag | Shift+Alt+drag |

_Mac and Windows keys from the VS Code Basic editing and keybindings docs._

Read the table as a translation. The Mac column swaps Ctrl for ⌘ and Alt for ⌥. Most of the time, that is the whole change. Tutorials written for Windows often give you the Ctrl keys, so check the Mac column before you decide a shortcut is broken.

## Column selection with Shift+Option+drag

Column selection, also called box selection, is for text with the same shape across lines. A table of values, a block of aligned comments or a set of short assignments all fit. Put the cursor in one corner of the block. Hold Shift and Option (⇧⌥), then drag to the opposite corner. VS Code places a cursor on each line inside the box.

Once the box is selected, typing and deleting apply to every line in it. Paste works too. If you copy several lines and paste them with multiple cursors, VS Code distributes the rows in document order. The editor.multiCursorPaste setting controls that behaviour. Check the result before you save, because a row in the wrong place is easy to miss.

![Programmer typing code on a laptop, the kind of editing where multiple cursors save time in VS Code on Mac](https://images.lazur.app/content-images/howto/use-multiple-cursors-in-vs-code/how-to-use-multiple-cursors-in-vs-1-f76f23.jpg)

## Use Cmd+Click for multiple cursors instead

Some people prefer Command-click, because it matches how they select things in other apps. VS Code supports this through the editor.multiCursorModifier setting. The default value is alt, which means Option+Click on Mac. Set it to ctrlCmd and multi-cursor uses Cmd+Click on macOS, and Ctrl+Click on Windows and Linux.

You can change the setting without editing JSON. The Basic editing docs name Selection menu items for switching between the two modes, Switch to Ctrl+Click for Multi-Cursor and Switch to Alt+Click for Multi-Cursor. The Mac label may read slightly differently in your build. Look for the multi-cursor item in the Selection menu and read it carefully.

Switching has a cost. Some users report that Cmd+Click stops opening definitions after the change. Those reports come from third-party posts, not the VS Code docs. The reported fix is to set the modifier back to alt. Test the switch in a real project before you rely on it.

## Check and change shortcuts in the Keyboard Shortcuts editor

If a shortcut does nothing, another command may be using it. Open File > Preferences > Keyboard Shortcuts. On a Mac, you can also press ⌘K ⌘S to open the same editor. The Command Palette has a matching command, Preferences: Open Keyboard Shortcuts. Type the key or command name in the search box to see its current binding.

Right-click an entry and choose Show Same Keybindings. That lists every command that uses the same key, which is how you find a conflict. Choose Remove Keybinding if another command takes a shortcut you need for multi-cursor. The docs give only the File > Preferences path. If your menu bar looks different, the Command Palette route works the same way.

- **1.145** Latest stable VS Code release in the docs, published 4 November 2026 ([source](https://code.visualstudio.com/updates))
- **70.9%** Of Stack Overflow 2026 respondents who used a code editor in the past year used VS Code ([source](https://survey.stackoverflow.co/2026/technology/data))

## When not to use multiple cursors

Multiple cursors are not always the right tool. If each change depends on the one before it, a find and replace with a clear pattern is often safer. Use multiple cursors for edits you can check at a glance. A long list of small, similar changes is the sweet spot. A change that needs judgement on every line is not.

## Mistakes people make with multiple cursors on Mac

- Pressing Command instead of Option, which does not add a cursor with the default setting.
- Pressing Control+Arrow. On macOS, Control+Up Arrow opens Mission Control, and Control+Down Arrow shows the windows of the front app.
- Expecting ⌘D to understand code. It matches text, so a repeated word in a comment can be picked too.
- Typing before you check where the cursors landed. Look at every line first.
- Using Windows keys from an old tutorial. Check the Mac column in the table above.
- Assuming the shortcuts behave the same in the browser. The VS Code for the Web docs do not cover multi-cursor shortcuts.

To find a clash with Control+Arrow, open System Settings > Keyboard > Keyboard Shortcuts > Mission Control. Turn off or change the Mission Control shortcut that uses Control+Arrow. Most multi-cursor shortcuts in this guide use Option and Command, so they do not clash with Mission Control in the first place.

## Which VS Code version this guide matches

The steps match the VS Code docs dated 4 November 2026. The latest stable release in those docs is 1.145, released 4 November 2026. Updates 1.145.1 and 1.145.2 are also listed. The 1.145 headlines cover remote agents, automations, agent verbosity and file exclusions. None of them mention multi-cursor, Alt+Click or the Selection menu.

The docs do not say which release first added these shortcuts, so this guide does not give a first version number. If a key does not match your build, compare your version with the 1.145 docs before you assume the shortcut is wrong.

## A short practice run before real work

1. Create a new file and type a short list. Put the same word on several lines.
2. Click the word, then press ⌘D until each copy is selected.
3. Type the replacement word once. Check each line.
4. If the result looks wrong, undo the change and try again. Press ⌘K ⌘D to skip one match you do not want.
5. Select the same word with ⇧⌘L and compare how the result looks.

Doing this on a throwaway file teaches the rhythm. ⌘D steps through matches one at a time, so you can check each one. ⇧⌘L is faster but gives you less control. Pick the one that fits the edit, not the one that feels quickest.

![Person using a MacBook in an office and reviewing text in a code editor before saving changes](https://images.lazur.app/content-images/howto/use-multiple-cursors-in-vs-code/how-to-use-multiple-cursors-in-vs-3-90f797.jpg)

## Where to go next

Once multi-cursor feels natural, [split the editor in VS Code on Mac](https://www.lazur.app/how-to/split-the-editor-in-vs-code) to compare two files side by side. If you want to change how the editor looks first, see [how to change the color theme in VS Code on Mac](https://www.lazur.app/how-to/change-the-color-theme-in-vs-code). For terminal work, [install the code command in VS Code on Mac](https://www.lazur.app/how-to/install-the-code-command-in-vs-code) so you can open folders from the shell.

## Shortcuts

- Add cursor with the mouse: ⌥ + Click
- Add cursor below: ⌥⌘↓
- Add cursor above: ⌥⌘↑
- Select word or next match: ⌘D
- Skip next matching occurrence: ⌘K ⌘D
- Select all occurrences: ⇧⌘L
- Column selection: ⇧⌥ + drag
- Keyboard Shortcuts editor: ⌘K ⌘S

## If it does not work

- **Option+Click does not add a cursor** Check that editor.multiCursorModifier is alt, the default. If you switched it to ctrlCmd, use Cmd+Click instead. Or use the Selection menu switch to flip it back to Alt+Click.
- **Control+Arrow opens Mission Control** Control+Up Arrow opens Mission Control by default on macOS. Open System Settings > Keyboard > Keyboard Shortcuts > Mission Control and change or turn off the clashing shortcut.
- **⌘D picks a match you did not want** Press ⌘K ⌘D to skip the next match. Check the selection before you type, because ⌘D matches text, including text in comments.
- **Cmd+Click stops opening definitions** Reports of this come from third-party posts, not the VS Code docs. The reported fix is to set editor.multiCursorModifier back to alt. Test before you change it for good.
- **A shortcut does nothing** Open the Keyboard Shortcuts editor with ⌘K ⌘S, search for the command, right-click the entry and choose Show Same Keybindings to find the conflict.
- **Shortcuts fail in VS Code for the Web** The web docs do not cover multi-cursor shortcuts, so test them first. In the browser build, ⌘W closes the browser tab.

## With Lazur

Lazur is a voice assistant for the Mac that lives in the notch. Hold ⌥ ⌘ and ask; it sees your screen, answers out loud, points at buttons and walks you through apps. Hold fn to dictate. Free for 3 days, then $18/month: https://www.lazur.app/download

- “Where is the Selection menu, and how do I switch to Ctrl+Click for multi-cursor?”: Lazur points at the Selection menu, then waits for each click while you pick the multi-cursor item yourself. (Walks you through it)

## FAQ

### Why does the VS Code guide say Alt+Click when I press Option?

VS Code's docs use the Windows label, Alt. Apple's keyboard guide says the Alt key on Windows keyboards is used in place of Option. On a Mac, press Option and click.

### What is the difference between ⌘D and ⇧⌘L?

⌘D adds the next match one press at a time, so you can check each one. ⇧⌘L selects every occurrence and adds a cursor to each at once. Use ⌘D when you want control, and ⇧⌘L when every match should change.

### Can I use Cmd+Click for multiple cursors on Mac?

Yes. Set editor.multiCursorModifier to ctrlCmd, or use the Selection menu item that switches the modifier. With ctrlCmd, Cmd+Click adds cursors on macOS. Some users report side effects, so test it first.

### Which VS Code version does this guide match?

The steps match the VS Code docs dated 4 November 2026. The latest stable release in those docs is 1.145, released 4 November 2026. The docs do not say which version first added these shortcuts.

### Do I need an extension to use multiple cursors?

No. Multi-cursor is part of the editor. The docs describe the behaviour as stable for years, and the shortcuts in this guide come from the Basic editing page.

### Do multiple cursors work in VS Code for the Web on a Mac?

The VS Code for the Web docs do not cover multi-cursor shortcuts, so test them in your browser first. In the browser build, ⌘W closes the browser tab, which can catch you out.

### How popular is VS Code with developers?

In the 2026 Stack Overflow survey, 70.9% of respondents who regularly used a code editor in the past year used Visual Studio Code. The survey is self-selected, so treat the figure as a signal, not a census.

## Sources

1. [Basic editing (VS Code docs)](https://code.visualstudio.com/docs/editing/codebasics), Microsoft, checked 2026-11-09
2. [Keyboard shortcuts (VS Code docs)](https://code.visualstudio.com/docs/configure/keybindings), Microsoft, checked 2026-11-09
3. [Key bindings (VS Code getting started)](https://code.visualstudio.com/docs/getstarted/keybindings), Microsoft, checked 2026-11-09
4. [VS Code Updates](https://code.visualstudio.com/updates), Microsoft, checked 2026-11-09
5. [VS Code for the Web](https://code.visualstudio.com/docs/editor/vscode-web), Microsoft, checked 2026-11-09
6. [Use modifier keys in Mac keyboard shortcuts](https://support.apple.com/en-us/102650), Apple, checked 2026-11-09
7. [Stack Overflow Developer Survey 2026: Technology](https://survey.stackoverflow.co/2026/technology), Stack Overflow, checked 2026-11-09
8. [Stack Overflow Developer Survey 2026: Technology data](https://survey.stackoverflow.co/2026/technology/data), Stack Overflow, checked 2026-11-09
