Android Studio의 코드에서 여러 장소 (숭고함)를 선택하는 방법은 무엇입니까?


87

Android Studio의 코드에서 여러 위치를 선택하는 방법은 무엇입니까?

소스 코드의 여러 위치에 동일한 텍스트를 삽입하고 싶습니다. 두 개 이상의 마우스 커서가있는 것처럼. Android Studio에서 수행하는 방법을 잘 모르겠지만 VS2012에서 쉽게 수행했습니다.

답변:


213

이 멋진 기능을 여러분과 공유하는 방법을 찾았습니다. 세 가지 멋진 기능을 찾았습니다.

  1. 다중 선택의 경우 alt+ shift를 누른 상태 에서 마우스 클릭으로 변경할 때마다 선택한 다음 동시에 여러 위치에 쓸 수있는 것을 입력합니다.

  2. 또 다른 멋진 기능은 열 선택입니다. 이렇게하면 특히 리팩토링 할 때 훌륭한 방식으로 클릭 할 수 있고 많은 도움이됩니다.

대부분의 시스템에서는 middleMouseButton코드 를 잡고 드래그하여 작동하고 다른 시스템에서는 코드를 잡고 alt선택하여 작동합니다.

이렇게 선택합니다

  1. 세 번째 멋진 기능은 코드에서 동일한 단어를 찾아서 변경하거나 쉽게 추가 할 수있는 숭고한 선택입니다. Windows / Linux에서는 +를 , Mac에서는 alt+ j를 누르면 됩니다. 어떻게 작동하는지보세요 :ctrlg

리팩토링에 좋습니다.

또한 @Narayana가 주석에서 말했듯이 Ctrl+ Shift+ Alt+ j는 원샷 리팩토링을 위해 모든 발생을 한 번에 선택합니다.


13
정말 멋지다! 감사. 또한 Ctrl+ Shift+ Alt+ j 원샷 리팩토링을 위해 한 번에 모든 발생을 선택합니다 .
Narayana J

tnx. 아픈 내 대답에 추가
아미르 Ziarati

Mac에서이 옵션을 실행 취소하는 방법
Savad

Esc가해야합니다.
Amir Ziarati

27

Alt+ 를 사용 Shift하고 여러 위치를 클릭하여 여러 커서를 사용할 수 있습니다 .

파일에서 유사한 항목을 선택하려면 Alt+를 사용하십시오 j.

자세한 내용은 여기를 클릭 하십시오.


16

여러 줄 캐럿 (마우스 제외)

Windows : CTRL+CTRL (길게 누르기) +↑ / ↓

Mac : + (길게 누르기) +↑ / ↓

ESC 여러 줄 모드를 종료합니다.

다중 캐럿 단축키 변경

사용자 지정 키맵을 추가하려면 CTRL+ SHIFT+ A를 입력 keymap하고 Settings하위 텍스트가 있는 키맵을 클릭합니다 . 검색 Clone Caret AboveClone Caret Below .

나는 ALT+ SHIFT+에 매핑↑ / ↓ .

보너스

지주 조합 시도 CTRL, SHIFT향상된 선택 전력 및 화살표.


1
감사합니다, 매우 유용합니다! "Clone Caret Above / Below"를 CTRL + SHIFT + UP / DOWN으로 매핑했습니다. ALT를 사용하면 이미 선을 이동하는 데 사용하고 자주 사용하기 때문입니다.
Micer

13

Shift+ Alt+ Insert조합을 눌러 열 선택 모드에서 편집합니다.


좋은 지적. 나는 그것을 몰랐다. 당신은을 사용하여 열 선택 및 일반 선택 전환 할 수 있습니다
아미르 Ziarati에게

2
경고, Shift+ Alt+를 Insert다시 눌러 편집 모드를 종료하십시오. :). 이 경우 커서는 공백이 아닌 일반적인 방식으로 위아래로 이동할 수 있습니다.
CoolMind

@CoolMind 예, 귀하의 의견을 수락합니다. 그러나 열 선택 모드가 활성화되면 예상되는 동작이라고 말할 수 있습니다.
vgokul129

2
@ vgokul129, 감사합니다. 이 동작을 비활성화하는 방법을 몰랐기 때문에 그렇게 썼습니다.
CoolMind

10

Mac과 Windows 모두 상황에 맞는 메뉴를 열고 "열 선택 모드"를 클릭하여 동작을 활성화하거나 비활성화합니다.

여기에 이미지 설명 입력



0

Windows에서는 이름이 ConyEdit 인 플러그인을 사용해 볼 수 있습니다. 정규 표현식을 기반으로 한 훌륭한 열 모드가 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.