-
[IntelliJ] MAC 단축키 등 알아두기!우아한 테크코스/테크코스 2020. 2. 6. 20:55반응형
뭐가 이상할 때
[Build] > [Rebuild project]
[File] > [Invalidate caches / Restart] > [Invalidate and Restart]
이래도 안되면 그냥 인텔리제이 끄고 프로젝트의 .idea와 .gradle을 지우고 다시 인텔리제이를 켰다.
단축키
⌃ + ⇧ + SPACE (길게): 스마트완성 - 현재 컨텍스트에 적용할 수 있는 가장 적합한 심볼 목록 표시
⌃ + ⇧ + SPACE (길게)를 두 번: 체인완성 - 스마트완성보다 자세히 분석하여, 현재 컨텍스트에서 메서드나 게터로 액세스할 수 있으며 적용 가능한 심볼 목록을 표시
⌥ + ENTER : 오류 수정을 위해 선택할 수 있는 액션 목록이 열림
⌘ + N : (프로젝트 도구창) 새 항목 만들기
⇧ + ⇧ : 검색 - 인텔리제이 또는 프로젝트와 관련된 것을 열기 or 실행하기 or 이동하기
⇧ + ⌘ + A : 작업 찾기 - 명령을 찾아서 실행 or 도구창 열기 or 설정 검색하기 - 필요한 항목 선택 후 Enter
⌥ + ENTER : 오류 수정을 위해 선택할 수 있는 액션 목록이 열림
F2 : 다음 강조 표시된 오류로 이동
⇧ + F2 : 이전 강조 표시된 오류로 이동
⌘ + E : 최근 파일들 보기 - 목록에서 최근에 연 파일 선택
⇧ + ⌘ + ENTER : Vim의 o키와 같은 기능, 다음 줄에 공란 삽입하고 이동
⌥ + ⌘ + L: 코드 포맷 - 현재 코드 스타일 설정에 따라 포매팅
⌃ + T : 리팩터링 창 호출
⌃ + V : VCS 운영
⌥ + ⬆️ : 선택 확장 - 코드 선택 범위를 늘려나감
⌥ + ⬇️ : 선택 축소 - 코드 선택 범위를 줄여나감
⌘ + / : 라인 주석 // 추가 or 제거
⌥ + ⌘ + / : 블록 주석 /* */ 추가
⌘ + B : 메서드 또는 변수의 초기 선언으로 이동, 초기 선언에서 선택시 사용하는 곳으로 이동
⌥ + F7 : 사용한 곳 찾기 - 프로젝트 전체에서 해당 요소가 사용된 모든 장소를 Find 탭에 표시
⌘ + 1 : 프로젝트 도구창에 포커스
ESC : 에디터에 포커스
⌥ + F12 : 터미널창에 포커스
⌘ + , : 키맵 구성 확인
⇧ + ⌘ + 방향키 : 도구 창의 크기 조정
⇧ + F6 : 요소의 이름 변경
⌥ + ⌘ + V : 변수 추출
⌥ + ⌘ + P : 파라미터 추출
⌥ + ⌘ + F : 필드 추출
⌥ + ⌘ + C : 상수 추출
⌥ + ⌘ + V : 변수 추출
⌥ + ⌘ + M : 메서드 추출
⌥ + ⌘ + N : 인라인 (추출 반대)
F5 : 클래스 복사
F6 : 메서드, 필드 이동
⌘ + F6 : 클래스 또는 메서드의 Signature 변경 - 접근제어자, 파라미터 타입 및 이름 등
⇧ + ⌘ + 방향키 위/아래 : 줄 이동(여러 줄도 가능함)
⌘ + D : 그 줄 복사
⌘ + X : 그 줄 제거
⌥ + ⌘ + O : import 제거
프로젝트 구역
Command + Enter >> 프로젝트 설정창
자동완성 (쓸 것 같은 것들...)
클래스 블럭에서의 자동완성
/* psvm */ /* main */ public static void main(String[] args) { } /* psf */ /* prsf */ public static final /* psfi */ public static final int /* psfs */ public static final String /* todo * 주석으로 오늘 날짜가 추가되는 듯? */ // TODO: 06/02/2020 /* fixme */ // FIXME: 06/02/2020 /* STOPSHIP */ // STOPSHIP: 06/02/2020 /* logt */ private static final String TAG = "Test"; /* key */ private static final String KEY_ = ""; /* geti */ public static Test getInstance() { return ; } /* sbc */ /////////////////////////////////////////////////////////////////////////// // /////////////////////////////////////////////////////////////////////////// /* starter */ public static void start(android.content.Context context) { android.content.Intent starter = new Intent(context, Test.class); starter.putExtra(); context.startActivity(starter); } /* const */ private static final int = 363; /* newInstance */ public static Test newInstance() { android.os.Bundle args = new Bundle(); Test fragment = new Test(); fragment.setArguments(args); return fragment; } /* noInstance */ private Test() { //no instance } /* noop */ /* no-op */
메서드 블럭에서의 자동완성
/* ritar */ for (int i = args.length - 1; i >= 0; i--) { String arg = args[i]; } /* rgs */ .getString(R.string.) /* rouiT */ getActivity().runOnUiThread(new Runnable() { @Override public void run() { } }); /* sout */ System.out.println(); /* soutv */ System.out.println("args = " + args); /* souf */ System.out.printf(""); /* soutm */ System.out.println("Test.main"); /* soutp */ System.out.println("args = " + Arrays.deepToString(args)); /* serr */ System.err.println(); /* fori */ for (int i = 0; i < ; i++) { } /* foreach */ for (: ) { } /* wtf */ android.util.Log.wtf(TAG, "main: ", ); /* todo */ // TODO: 06/02/2020 /* stopship */ // STOPSHIP: 06/02/2020 /* FIXME */ // FIXME: 06/02/2020 /* lst */ args[args.length - 1] /* thr */ throw new /* toar */ .toArray(new Object[.size()]) /* ifn */ if (args == null) { } /* lazy */ if (args == null) { args = new String[] (); } /* inn */ if (args != null) { } /* inst */ if (args instanceof Object) { Object o = (Object) args; } /* itar */ for (int i = 0; i < args.length; i++) { String arg = args[i]; } /* itco */ for (Iterator iterator = collection.iterator(); iterator.hasNext(); ) { Object next = iterator.next(); } /* iten */ while (enumeration.hasMoreElements()) { Object nextElement = enumeration.nextElement(); } /* iter */ for (String arg : args) { } /* itit */ while (iterator.hasNext()) { Object next = iterator.next(); } /* itli */ for (int i = 0; i < list.size(); i++) { Object o = list.get(i); } /* ittok */ for (StringTokenizer stringTokenizer = new StringTokenizer(); stringTokenizer.hasMoreTokens(); ) { String s = stringTokenizer.nextToken(); } /*
반응형'우아한 테크코스 > 테크코스' 카테고리의 다른 글
2주차 리뷰 (0) 2020.02.15 정규표현식(Regular expression) (0) 2020.02.08 1주차 리뷰 (0) 2020.02.08 [Java] 일급 컬렉션을 알아보자! (0) 2020.02.06 [Java] JUnit (0) 2020.02.05