Wielokrotny wybór w programie Visual Studio?

88

Czy istnieje sposób na wybranie wielu nieprzylegających (całkowicie oddzielnych) tekstów w VS? Mogę to zrobić w MS Word, zaznaczając teksty osobno przytrzymując klawisz Ctrl, na przykład:

wprowadź opis obrazu tutaj

Moja wersja to 11.

Edycja: nie mówię o Alt+Selectwyborze bloku. Chciałbym również sprawdzić, czy istnieje technika w Notepad ++.

nawfal
źródło
1
Pytasz o Visual Studio 2012 lub Notepad ++?
Oded
@Oded Myślałem, że to oczywiste, że pytanie dotyczy VS (również zawarte w tytule). Problem z Notepad ++ był dodatkowym pytaniem.
nawfal
2
O ile wiem, to nie jest możliwe.
Oded
W zależności od tego, co chcesz zrobić z zaznaczeniem, możesz uzyskać wynik końcowy za pomocą wyszukiwania wyrażeń regularnych / ciągów.
MA

Odpowiedzi:

88

Edycja z wieloma kursorami jest natywnie obsługiwana w programie Visual Studio, począwszy od wersji 2017 Update 8. Poniżej znajduje się fragment dokumentacji :

  • Ctrl+ Alt+ kliknięcie: Dodaj dodatkowy daszek
  • Ctrl+ Alt+ dwukrotne kliknięcie: Dodaj drugie słowo
  • Ctrl+ Alt+ kliknięcie + przeciągnięcie: Dodaj drugi wybór
  • Shift+ Alt+ .: Dodaj następny pasujący tekst jako zaznaczenie
  • Shift+ Alt+ ;: Dodaj cały pasujący tekst jako zaznaczenia
  • Shift+ Alt+ ,: Usuń ostatnie wybrane wystąpienie
  • Shift+ Alt+ /: Pomiń następne pasujące wystąpienie
  • Alt + kliknięcie: Dodaj zaznaczenie pola
  • Esc lub kliknij: Wyczyść wszystkie wybory

Niektóre z tych poleceń są również dostępne w Editmenu:

Wiele menu Carets

Gian Marco
źródło
1
Nie widzę tych opcji przy użyciu wersji 2017 w wersji 15.9.3
Urasquirrel,
Wygląda na to, że w 15.9.3 polecenia w menu to tylko pierwsze dwa.
Gian Marco,
2
Zaktualizowany link: docs.microsoft.com/en-us/visualstudio/ide/ ...
brownmagik352
2
Zastanawiam się, czy kiedykolwiek zamierzają zapewnić odpowiednią obsługę wielu karetek, tak jak JetBrains już od lat. Spróbuj zrobić kilka daszków, wybierz słowo, a następnie skopiuj je i wklej. VS wkleja podwójnie (tzn. Wkleja całą zaznaczenie dokonane za pomocą obu karetek do każdego karetki. Nie wyobrażam sobie, kiedy byłoby to pożądane zachowanie. Powinni wkleić to tylko raz. Ponadto JetBrains ma skrót CTRL + CTRL, który umożliwia dodawanie daszków po naciśnięciu strzałki w dół lub w górę (na czas nieokreślony, podczas gdy klawisz CTRL jest wciśnięty). Jest o wiele bardziej produktywne niż wdrożenie VS 'w tym momencie.
zobacz
@obe lub jak sublime. Sposób, w jaki jest obecnie obsługiwany, nie jest dla mnie przydatny.
shashwat
54

Istnieje nowe rozszerzenie programu Visual Studio 2017 o nazwie SelectNextOccurrence, które jest bezpłatne i typu open source.

To rozszerzenie umożliwia wybranie kolejnych wystąpień zaznaczonego tekstu do edycji.

Ma na celu odtworzenie polecenia Ctrl + D Sublime Text w celu szybszego kodowania.

Cechy:

  • Wybierz następne wystąpienie bieżącego zaznaczenia.
  • Pomiń wystąpienie
  • Cofnij wystąpienie
  • Dodaj daszek powyżej / poniżej
  • Użyj wielu kursorów do edycji ( Alt-kliknij, aby dodać daszek)

Polecenia programu Visual Studio:

  • SelectNextOccurrence.SelectNextOccurrencejest domyślnie powiązany z Ctrl+ D.
  • SelectNextOccurrence.SkipOccurrencenie jest domyślnie powiązany. (Zalecane Ctrl+ K, Ctrl+ D)
  • SelectNextOccurrence.UndoOccurrencenie jest domyślnie powiązany. (Zalecane Ctrl+ U)
  • SelectNextOccurrence.AddCaretAbovenie jest domyślnie powiązany. (Zalecane Ctrl+ Alt+ Up)
  • SelectNextOccurrence.AddCaretBelownie jest domyślnie powiązany. (Zalecane Ctrl+ Alt+ Down)

Wybierz opcje NextOccurrence

https://marketplace.visualstudio.com/items?itemName=thomaswelen.SelectNextOccurrence

https://github.com/2mas/SelectNextOccurrence

Drew Noakes
źródło
1
Idealny! To jest jeden. Wielokrotny wybór i daszek działają bardzo dobrze. Testowane w VS Community 2017.
Dave,
1
@Dave tak, to rozszerzenie jest świetne. Rozważ wystawienie mu dobrej recenzji i / lub zagranie roli głównej projektu GitHub, jeśli uznasz to za przydatne.
Drew Noakes
Dziękujemy za znalezienie tego rozszerzenia! MixEdit działał, ale nie był zoptymalizowany pod kątem VS2017, a wyskakujące okienko wersji próbnej było szkodliwe.
Bill N.
Nie działa dla mnie. welp, nie wiem czego oczekiwałem od pani.
Bersan
Świetne rozwiązanie, wystarczy zauważyć, że musiałem również usunąć domyślne powiązania klawiszy z, Edit.Duplicateponieważ nadal były one honorowane, nawet podczas dodawania Ctrl+Ddo powiązania klawiszy dla SelectNextOccurrence. Domyślne skróty VS 2019: docs.microsoft.com/en-us/visualstudio/ide/ ...
Brandon Franklin
30

W programie Visual Studio Shift+Alt+. / Shift+Alt+,

  • Shift+Alt+. - karetka zapałek;
  • Shift+Alt+, - usuń poprzednią karetkę;

Ta sama funkcja jak w VSCode Ctrl+D.

Dużo więcej ustawień Tool - Options - Environment - keyboard. Dalej w Show commands containingwejściu Edit..

Można również użyć schematu klawiatury Visual Studio Code. Dostępne dla programu Visual Studio 2017

Podsumowując, ładne łącze Visual Studio All keyboard shortcuts

Арсений Савин
źródło
1
Dziękuję za odpowiedź życzliwej internaucie.
Urasquirrel
3
świetna odpowiedź. Potrzebowaliśmy tylko poleceń. Nie wiem, dlaczego wszyscy udzielali tak długich odpowiedzi, lol. dzięki
Javi
22

Rozszerzenie MixEdit dla programu Visual Studio umożliwia wykonywanie wielu zmian w sposób, w jaki opisujesz. Obsługuje wiele karetek i wiele wyborów.

robertojj89
źródło
8
Jeśli szukasz czegoś takiego jak Sublime text, to jest to!
Kenial
2
Jeśli ktoś się zastanawia, sposobem na osiągnięcie wielokrotnego wyboru w MixEdit jest dwukrotne kliknięcie słów po naciśnięciu Alt. To samo co w MS Word, z tym że jest Alttutaj zamiast Ctrl. MixEdit ma również wiele innych przydatnych opcji wielokrotnego wyboru. Pamiętaj, że to nic nie kosztuje tylko do oceny!
nawfal
2
Nie mogę już kupić licencji MixEdit. Sprawdź stronę internetową . Masz jakiś pomysł, jak mogę jakoś licencjonować i pozbyć się irytującego wyskakującego okienka?
vullnetyy
3
to rozszerzenie nie jest darmowe !!
Diogo Cid
6
Czy są jakieś alternatywy, które są bezpłatne lub można je kupić, więc nie musisz otrzymywać tego irytującego powiadomienia? lub możliwość usunięcia go z MixEdit, jeśli nie ma możliwości kupienia
Sonic Soul
13

W programie Visual Studio 2019 możesz umieścić swój kursor we właściwym miejscu, a następnie nacisnąć klawisz SHIFT ALT i. (kropka). Spowoduje to wybranie następnego wystąpienia.

Trausti Thor
źródło
7

Uwaga,

MixEdit nie jest całkowicie darmowy.

„To oprogramowanie nie jest obecnie licencjonowane dla żadnego użytkownika i działa w trybie ewaluacyjnym. MIXEDIT można pobrać i wypróbować bezpłatnie, jednak do dalszego używania należy zakupić licencję”.

Po instalacji i użyciu wyskakujące okienko przekierowuje na stronę internetową - podobnie jak wyskakujące okienko z nielicencjonowanym oprogramowaniem SublimeText.

SM23
źródło
1
a teraz nie możesz go nawet kupić. po prostu wyskakuje okienko ostrzegawcze z prośbą o licencję
Sonic Soul
6

Dla Visual Studio Code

Odpowiedziałem na to pytanie, ponieważ szukałem sposobu na wybranie wielu słów za pomocą kliknięcia myszą w programie VS Code, co powinno zostać osiągnięte za pomocą alt+click, ale to powiązanie klawiszy nie działało (myślę, że jest to coś związanego z moim systemem operacyjnym, Ubuntu ).

Dla każdego, kto szuka czegoś podobnego, spróbuj zmienić klucz na ctrl+click.

Przejdź do Selection>Switch to Ctrl+Click for Multi Cursor

jpenna
źródło
Na pewno nie mówisz o VS Code?
nawfal
Tak, jestem ... Czy powinienem to usunąć, czy po prostu tytuł jako „dla kodu vs”? Szukałem kodu, kiedy tu dotarłem
jpenna
2
nie ma potrzeby usuwania, przyda się innym. Wystarczy wspomnieć o tym w odpowiedzi.
nawfal
6

Aktualizacja: rozszerzenie MixEdit zapewnia teraz tę możliwość.

Rozszerzenie MultiEdit dla VS pozwala na coś podobnego (nie obsługuje wielu wyborów w chwili pisania tego tekstu, tylko wiele karetek)

Udaj się do Hanselman's po szybki animowany gif przedstawiający to w akcji: Jednoczesna edycja dla programu Visual Studio z bezpłatnym rozszerzeniem MultiEdit

Mrchief
źródło
1
To rozszerzenie nie obsługuje wielokrotnych wyborów, zgodnie z żądaniem w pierwotnym pytaniu. Przedłużenie MixEdit robi.
mcw
2
MixEdit nie istniał, kiedy OP opublikował swoje pytanie. Odpowiedziałem zgodnie z moją najlepszą wiedzą.
Mrchief
5

Nie mogłem znaleźć nic wbudowanego, co jest smutne. Jednak w CodeRush jest taka funkcjonalność .

W Notepad ++ ta funkcja jest wbudowana. Po prostu włącz wielokrotną edycję z

Ustawienia> Preferencje> Edycja> Ustawienia edycji wielokrotnej

Ale nie jest tak intuicyjny jak MS Word, który pozwala wybrać dwa słowa, klikając je dwukrotnie (oczywiście po Ctrl).

nawfal
źródło
4

w programie Visual 2019 otwórz Opcje, aby wyświetlić wszystkie, wprowadź tutaj opis obrazu

i wybór wielokrotny: zachowaj, Ctrl + Alta następnie kliknij pozycję, którą chcesz lub, przytrzymaj, Shift + Alta następnie kliknij pozycję, aby wybrać wiele linii od początku do końca klikniętej linii

Quan Tran Hai
źródło
0

Teraz wtyczka to sztuczki Multi Line. Przyciski końca i początku zepsuły wybór.

franca
źródło
jak zainstalować w Visual Studio 2015?
Diogo Cid