Visual Studio Code'da birden çok imleç [kapalı]


579

VS Kodunda düzenleme yaparken nasıl birden fazla imleç oluşturabilirsiniz? Hem macOS hem de Windows ile ilgileniyorum.


114
Sadece Altdüğmeyi basılı tutun ve farklı yerlerde tıklamaya başlayın. Bu kadar.
kullanıcı adı

40
CMD + Alt + Aşağı ok istediğiniz şeydir. stackoverflow.com/questions/30037808/…
Valentine Bondar

4
Mac kullanıyorsanız, SHIFT + CTRL + AŞAĞI / YUKARI 1.14.2'den itibaren istediğiniz şeydir.
Ben Creasy

2
Ayrıca, Cmd + Alt + Down, 1.14.2'den itibaren varsayılan olarak editor.action.goToDeclaration tarafından eşlenmiş gibi görünüyor
Ben Creasy

14
Bu kadar ilgi çeken bir konuyu kapatmaya karar vermenin utanç verici olması, yaklaşık 400 oyu var ve gönderildikten yaklaşık 4 yıl sonra hala ziyaretçileri var. Keşke SO editörlerinin biraz gevşemesini ve topluluğun büyümesini ve birbirini teşvik etmesini diliyorum. 2019 bilgisiyle ilgili cevapların ne olacağını merak ediyorum. :(
Mike Williamson

Yanıtlar:


580

Düğmesine basın Altve tıklayın. Bu Windows ve Linux * üzerinde çalışır ve Mac üzerinde de çalışmalıdır.

Visual Studio Code 0.2'de artık daha çok imleç özelliği bulunmaktadır:

Çoklu imleç geliştirmeleri
Ctrl+D( Cmd+DMac'te) imlecin altındaki sözcüğün bir sonraki tekrarlamasını seçer veya geçerli seçim
Ctrl+K Ctrl+D, son eklenen imleci imlecin altındaki bir sonraki sözcüğe veya geçerli seçime taşır
. Komutlar varsayılan olarak matchCase kullanır. Bul widget'ı açıksa, bul widget ayarları (matchCase / matchWholeWord), bir sonraki tekrarlamayı
Ctrl+U( Cmd+UMac'te) belirlemek için kullanılacaktır , bu nedenle imleci çok fazla eklediyseniz veya bir hata yaptıysanız, önceki imleç durumuna geri dönmek için Ctrl+U( Cmd+UMac'te) tuşuna basın . İmleç yukarı veya aşağı ekleme ( Ctrl+Alt+Up/ Ctrl+Alt+Down) ( Cmd+Alt+Up/Cmd+Alt+Down Mac'te) artık tek seferde 1'den fazla görünüm yüksekliğinde birden çok imleçle çalışmayı kolaylaştırmak için son eklenen imleci ortaya çıkarır (yani 300 satır seçin ve görünüm alanına yalnızca 80 sığdır).

Bu, çoklu imleçleri tanıtmayı çok daha kolay hale getirir

* Linux sürükle-pencere çakışması:

Bazı dağıtımlar (örn. Ubuntu) Alt+LeftMouse, VSCode ile çakışacak olan pencere sürüklemeyi atar.

Bu nedenle, VSCode'un son sürümleri, başka bir yanıtta ayrıntılı olarak açıklandığı gibi Seçim menüsü arasında Alt+LeftMouseve Ctrl+LeftMousealtında geçiş yapmanızı sağlar .

Alternatif olarak, başka bir yanıttagsettings belirtildiği gibi kullanarak OS anahtar bağlarınızı değiştirebilirsiniz .


20
Klavye kısayolları ? Command + click olduğunu anladım. Ama bu iğrenç .. hızlı bir yol değil :(
Kiba

8
F2 veya Ctrl + F2 yardımcı olabilir. Ama Ctrl + D gibi bir şey bulamadım.
vilicvane

13
Alt + click Linux'ta çalışmıyor gibi görünüyor. Benim için işe yarayan Ctrl + shift + sol / sağ / yukarı / aşağı
Yonatan Simson

18
alt + üst karakter + mac'ta tıklayın (2017)
Hoff

5
hmmm, ctrl + alt + yukarı veya aşağı, birden fazla imleç yerine ekranımı (win10'da) döndürür
Reinsbrain

158

Çok Kodlu (ve çok satırlı) imleçler / VS Kodunda seçim

Çok kelime:

Windows / OS X:

  • Ctrl+Shift+L/ ⌘+Shift+Lmevcut vurgulanan kelimenin tüm örneklerini seçer
  • Ctrl+D/ ⌘+Dsonraki örneği seçer ... ve bundan sonraki örneği ... vb.

Çok çizgili:

İçin çok hatlı seçimi, Ctrl+Alt+Down/ ⌘+Alt+Shift+Downsonraki satıra seçiminizi veya imleç konumunu uzatacaktır. Ctrl+Right/ ⌘+Rightne kadar uzun olursa olsun, her satırın sonuna gider. Çok satırlı seçimden çıkmak için tuşuna basın Esc.

VS Kodu tuş bağlamalarına bakın (işletim sistemine duyarlı)


15
Ha ha makinemde Intel video sürücüsünde ekranın baş aşağı gitmesi için bir kısayol tuşu Ctrl-Alt-Down var. Beni yakaladı
:)

3
Neden Shift-Alt-Down / Up kullanan SSMS (ve muhtemelen Visual Studio) ile aynı değil, Ctrl-Alt-Down değil ???
Ters Mühendis

@DaveBoltman - Bilmiyorum! Ancak tuş takımlarını özelleştirebilirsiniz.
Dave Everitt

2
Ctrl-Alt-Down ekranınızı tersine çevirir mi? Kaç kullanıcının bir kısayol tuşunda olması gerektiği gibi? 🙄
gman

3
Aptal Intel kısayol tuşunu devre dışı bırakmak için masaüstüne sağ tıklayabilirsiniz> Grafik seçenekleri> Kısayol Tuşları> Devre Dışı Bırak
alxgb

138

ALT tuşu ile sorunum vardı, düzeltme çalıştırarak, alt+clickVSCode çoklu imleç clobbers bir Gnome kısayol olarak değiştirmek için super+click:

gsettings set org.gnome.desktop.wm.preferences mouse-button-modifier "<Super>"   

Kaynak: http://2buntu.com/articles/1529/visual-studio-code-comes-to-linux/


7
+1 bu yöntem işe yarıyor! Sadece Ubuntu 14.04.05 ile doğruladı .. Daha önce denedim dconf-editorve CompizConfig"pencere taşımak" eklenti yapılandırmalarını değiştirmek ve berbat ve neredeyse benim Ubuntu kırdı.
Dimitry K

2
Bu Ubuntu'da çalışıyor!
jonan.pineda

11
gsettings set org.cinnamon.desktop.wm.preferences mouse-button-modifier "<Super>"Linux Mint (Tarçın) için kullanın .
vossad01

Müthiş! Ubuntu 16.04 üzerinde çalışır.
Bruno Gomes

1
Sisteminizin varsayılan ayarlarına dokunmak istemiyorsanız, "Seçim> CTRL'ye Geç + Çoklu İmleç için Tıkla" seçeneğini de kullanabilirsiniz. Bu Linux Mint'te çalışır, bu yüzden Ubuntu'da da çalışmalıdır.
Mayıs 19:24

125

Mayıs 2017
Sürüm 1.13'ten itibaren Ctrl/ Cmd+ ile birden çok imleç ekleyinClick

VSCodegeliştiriciler, yeni bir ayarla gelmiş editor.multiCursorModifieriçin çok imleçler uygulamak için değiştirici tuşuna değiştirmek için, Cmd+ ClickMacOS ve Ctrl+ ClickWindows ve Linux üzerinde. Bu, Yüce Metin veya Atom gibi diğer editörlerden gelen kullanıcıların aşina oldukları klavye değiştiricisini kullanmaya devam etmelerini sağlar.

Ayar şu şekilde ayarlanabilir:

  • ctrl/Cmd- CtrlWindows ve CmdmacOS'ta eşler.
  • alt- Mevcut varsayılan Alt.

Ayrıca bu ayarı hızlıca değiştirmek için menüde Ctrl+ Clickiçin yeni bir menü öğesi var . Multi-CursorSelectionresim açıklamasını buraya girin

Tanıma Git ve Açık Bağlantı hareketleri de bu ayara saygı gösterecek ve çakışmayacak şekilde uyarlanacaktır. Örneğin, ayar olduğunda ctrl/Cmd, Ctrl/ Cmd+ ile birden çok imleç eklenebilir Clickve bağlantıları açmak veya tanımlamaya gitmek Alt+ ile çağrılabilir Click.

Sorun # 2106'nın düzeltilmesiyle, mevcut bir seçimin üstünde aynı hareketi kullanarak imleci kaldırmak da artık mümkün.


1
Ctrl + tıklama neden işe yaramıyordu. Değiştirmek için bir seçenek olduğunu bilmiyordum. :-)
ankush981

5
Ayar editor.multiCursorModifierdan alt etmek ctrlCmd harika çalıştı. Şimdi tek yapmam gereken ctrl + tıklayın ve birden fazla imleç kullanacak :) Muchas gracias!
protoEvangelion

Ctrl + tıklama olarak değiştirebilirim, işe yarıyor, ancak sınıfın tanımına gitmek ya da bir şey gitti, nasıl düzeltebilirim?
Vuong Tran

Bu en yararlı cevap. Çoğu editörde CTRL + tıklama çoklu seçim için kullanılır. Bir düzenleyicinin çalışması için işletim sistemi davranışını değiştirmeye gerek yoktur. Bu seçenek, çoklu seçim davranışını en sık kullanılan desene değiştirir.
Ruby Racer

83

Fare olmadan Ctrl+ Alt+ Shift+ ' ⬇ / ⬆yı deneyin veya "alt" tuşunu basılı tutun ve istediğiniz tüm satırları tıklayın.

Not : Windows'ta test edilmiştir.


21
CMD+ OPTION+ SHIFT+ ⬇ / ⬆benim için Mac'te 1.15.1 sürümüyle çalışıyor.
Tyler Collier

2
Windows 10'da bunu olmadan yapabilirimshift
Pini Cheyni

2
Daha hızlı gitmek için sayfayı yukarı / aşağı da kullanabilirsiniz!
Maxime

olmadan SHIFTbenim için çalışma değildi thx
BartusZak

1
Çok imleci oluşturmak için Cmd + Alt + (Yukarı / Aşağı) kısayoluyla bazı gelişmiş özelliklerle Akıllı Çok imleç uzantısı yükledim .
Danny

47

Cmd+ Option+ Shift⬇ / ⬆benim için en yeni VSCode 1.29.1 ve en yeni OSX High Sierra 10.13.6, Macbook Pro'da çalışıyor.

Bu, ekrana OptionYüce Metin'de + Tıklama / Dikey Sürükleme gibi dikey bir çizgi yukarı / aşağı ekler .

Çok imleçler eklemek için dosyanızda herhangi noktalarda birden fazla olanlar dahil, aynı hat , do Cmd (or Option)+ sen gösterilen, istediğiniz herhangi bir yere tıklayın Bu video . Ayrıca Cmd, birden çok kez yinelenen metni ( + F) arayabilir , ardından HER sözcüğün sonuna imleç eklemek için Option+ tuşuna basabilirsiniz Return.


30

On Ubuntu , sırayla yeniden atama Alt gerekir + altına komutu çalıştırarak, ilk tıklama tıklayarak çoklu imleci etkinleştirmek için. Bunun nedeni, Ubuntu'nun varsayılan olarak kısayolun kendisini kullanması ve önceliğe sahip olmasıdır.

> gsettings set org.gnome.desktop.wm.preferences mouse-button-modifier "<Super>"

25

XFCE'de şu adrese gidin: Applications -> Settings -> Settings editor - > xfwm4 -> easy_click(disable value)

Şimdi Insert Cursorile yapabilirsinizAlt + Tıklama

Ayrıca L / R Çalışma Alanı ( ctrl+ alt+ L/R) ayarlarını devre dışı bıraktımSettings -> Window manager -> Keyboard


1
?? XFCE burada ne?
Martian2049

1
@ Martian2049, Unix benzeri işletim sistemlerinde (Linux, BSD vb.) Bir Masaüstü Ortamıdır. Bunu henüz bilmiyorsanız, muhtemelen cevabım sizin için yararlı olmaz, diğer cevapları kontrol edin.
lav-lav

Benim için easy_click'i devre dışı bıraktıktan sonra çalışıyor, teşekkürler günümü kurtardın.
Mohamed M. Hagag

Benim için çalışıyor. ALT + tıklama pencereleri taşımak için olduğundan easy_click ALT'da CTRL olarak değiştirdim.
millonesj

Güzel cevap. Benim için işe yarar @ lav-lav.
abu abu


18

Tam olarak ne istediğiniz için bir bağlayıcı yoktur.

Yaklaşan tek şey , hepsini bir kerede seçecek olan Ctrl+ F2.

Aşağıdakileri yaparak Ctrl+ ' ya bağlayabilirsiniz D:

  • Tıklamak File > Preferences > Keyboard Shortcuts
    akım bağlamaları tam ve özel bağlamaları doğru bir listedeki bir bölmeyi görmelisiniz You
  • Mevcut bağlantılarda Ctrl+F2 ve tüm satırı kopyalayın ve sağ bölmeye yapıştırın.
  • Sen sonunda virgül kaldırmak ve daha sonra değiştirmek gerekebilir Ctrl+ F2için Ctrl+ Dve ardından dosyayı kaydetmektedir.

Bunun gibi bir şeye benzemeli:

// Place your key bindings in this file to overwrite the defaults
[
{ "key": "ctrl+d",               "command": "editor.action.changeAll",
                                    "when": "editorTextFocus" }
]

Fare tekerleğine basmak gibi çok imleç yapabilir miyim?
Miguel

Bunu yapmanın bir yolunu bulamadım
intrepion

Aramak ve değiştirmek istemediğinizde, aynı anda düzenlemek için binlerce satırınız varsa bu en etkili yoldur! TEŞEKKÜR !
Bağlantı

10

Ctrl+ Alt+ ⬇ / ⬆geçerli satırın üstüne ve altına imleç ekleyin. Yine de yüce veya parantez kadar iyi bir yer yok. Klavye kısayolları dosyasında yüce Ctrl+ D'ya eşdeğer bir şey göremiyorum .


3
Mac için: Alt + Commandve yukarı veya aşağı ok.
Leniel Maccaferri

Ubuntu'da buCtrl+Shift+Up/Down
tobalr

Windows'da varsayılan olarak "ekranı döndür" gibi görünüyor.
19'te BlaM

1
Ekranınızı döndürüyorsa, bu sizin grafik sürücünüzdür, pencereler değil. Bu kısayolu grafik ayarlarından devre dışı bırakabilirsiniz.
Daniel

9

https://code.visualstudio.com/Updates

Yeni sürüm (Visual Studio 0.3.0) daha çok imleç özelliğini destekler.

Multi-cursor
Here's multi-cursor improvements that we've made.

⌘D selects the word at the cursor, or the next occurrence of the current selection.
⌘K ⌘D moves the last added cursor to next occurrence of the current selection.
The two actions pick up the matchCase and matchWholeWord settings of the find widget.
⌘U undoes the last cursor action, so if you added one cursor too many or made a mistake, press ⌘U to return to the previous cursor state.
Insert cursor above (⌥⌘↑) and insert cursor below (⌥⌘↓) now reveals the last added cursor, making it easier to work with multi-cursors spanning more than one screen height (i.e., working with 300 lines while only 80 fit in the screen).

Ve seçili çoklu imlecin kısa kesimi cmd + d'ye dönüşür (Sublime Text ile aynıdır. Lol)

Bir sonraki sürümün çoklu imleç hakkında daha uygun özelliği desteklemesini bekleyebiliriz;)




4

Benim XFCE (sürüm 4.12), içinde Settings -> Window Manager Tweaks -> Accessibility.

Bir açılır alan var Key used to grab and move windows:, bunu şu şekilde ayarlayın None.

Alt + Click daha fazla imleç eklemek için VS Kodu şimdi çalışıyor.


4

Seçim menüsüne göre aşağıdakileri yapabilirsiniz:

VS Kodunda Seçim menüsünün ekran görüntüsü

Basın / tutma Alt+Ctrl+Up Arrow/ Alt+Ctrl+Down Arrow yeterli imleçler oluşturmak gerektiği gibi, daha sonra Ctrl+Dseçimleri genişletmek için kullanılabilir.


3

Ubuntu-MATE'de de aynı sorun var, ancak burada sorunu şu şekilde çözersiniz:

gsettings set org.mate.Marco.general mouse-button-modifier "<Super>"

2

Alt + Command + Shift, seçtiğiniz bir sonraki örneğe bir imleç ekler. Örneğin, bir değişken veya işlev adı


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.