-
IntelliJ: 코드 자동 완성(Live Template) 완벽하게 사용하기(w/Auto import)IntelliJ IDEA 2022. 6. 15. 14:35
Auto Import를 곁들여서 Live Template 완벽하게 사용하기
* 이 글은 인텔리제이의 Live Template 기능과 Auto Import 기능이 어떻게 유용한지, 그리고 설정 방법을 간략하게 알아보는 글입니다. 글의 끝에는 예시로 써먹을만한 템플릿 몇 개를 추천하고 있으니, 입맛에 맞게 수정/추가해서 써보도록 하시죠!
* 들어가기 앞서: 설정창 단축키는 Ctrl+Alt+S, 맥의 경우에는 커맨드 + , 이다. 원하는 설정을 좌상단에 검색해서 편하게 수정할 수 있다.
Live Template란?
psvm이나 main을 입력하고 Tab을 치면 메인메서드가 완성되는, 바로 그 기능입니다.
이건 인텔리제이에서 제공하는 코드 자동 완성 기능인데요. 기본적으로 main, fori, itar 등 유용한 템플릿이 준비되어있지만, 사용자 필요에 따라 커스텀 할 수 있기 때문에 더욱 유용합니다.
설정의 Live Template 원하는 코드템플릿을 만들어놓고 키워드를 지정하면 사용 준비 완료! 에디터에서 키워드를 입력한 후 자동완성 단축키(Tab or Alt+Enter)를 누르면 코드가 완성됩니다.
하지만 조금 부족한 점은
말 그대로 대신 '타이핑만 쳐주는 것'이기 때문에, import해야 할 패키지가 있다면 F2와 Alt+Enter 조합으로 하나씩 임포트 해야 해요.
하지만 그건 너무 귀찮은 일이죠...... 오히려 하나 하나 찾아가야 하기 때문에, 이게 편한건가?...라는 생각이 들기도 합니다.
어떻게 하면 한 글자라도 덜 누를 수 있을까요?
해결은 Auto Import
역시 똑똑한 인텔리제이!
인텔리제이에는 알아서 import 해주는 기능이 있습니다! 바로 Auto Import입니다. ㅎㅎ.
마찬가지로 설정에 들어가서 Auto Import를 검색하신 후에 아래 그림과 같이 표시하고 저장하시면 간단히 적용이 됩니다.
그러면 이런 코드 템플릿도 가능해집니다
- test : 테스트코드 작성용 템플릿입니다. 자동완성을 마무리할 수 있도록 입력이 필요한 곳에 저절로 커서가 가요! (빨간줄은 아무 클래스에서 Test코드를 만들어서 & 아직 입력칸을 채우지 않아서 그어진 것이므로 무시해주세요!)
아래 코드를 라이브템플릿으로 저장하면 사용가능합니다. '$내용$'과 같은 식으로 자동완성 커서가 이동할 위치를 지정할 수 있습니다. 모든 자동완성을 마치고 커서를 뒀으면 하는 곳을 $END$로 지정하면 됩니다.
@Test @DisplayName("$1$") void $2$() { // given $END$ // when // then //Assertions }
- getcon : HTTP GET 요청을 처리하기 위한 컨트롤러 메소드. 수정해서 put이나 post도 사용할 수 있겠죠?
@GetMapping("/$1$") public $String$ $name$($param$) { $END$ return $ret$; }
- auto : 테스트 클래스에서 필드 주입을 위해 자주 사용하는 @Autowired 애노테이션... 은근 쓰기 귀찮죠?(저만 그런가요..)
@Autowired
- mainb : 요런 용도로도 활용 가능하단 걸 보여드리려고 가져와봤어요. 백준 PS 시 BufferedReader로 입력값을 받는 메인 메서드 템플릿입니다. 손에 익지 않은 코드라면 연습삼아 쳐볼 수도 있겠지만, 매번 쓰는게 귀찮아요. 필요한 형식의 코드만 주석을 해제하고 나머지는 주석으로 두거나 deleteLine 합니다. 똑같은 용도로 Scanner도 구현해놓았네요. ㅋㅋ.
public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); $END$// int n = Integer.parseInt(br.readLine()); // String str = br.readLine(); /*StringTokenizer st = new StringTokenizer(br.readLine()); int n = Integer.parseInt(st.nextToken());*/ }
이것 외에도 정말 다양하고 복잡한 템플릿을 만들 수도 있습니다. 한 번 활용해보시기를 적극 추천드려요!
'IntelliJ IDEA' 카테고리의 다른 글
IntelliJ IDEA: 구글 스타일 포맷팅 간단하게 적용하기 (2) 2022.10.07 IntelliJ IDEA: 잘못된 의존을 찾기 위한 옵션(w/layered architecture) (2) 2022.09.30 IntelliJ IDEA: gradle 버전 변경하기 (0) 2022.06.14 IntelliJ: "JDK is missing" 오류 (0) 2022.05.14 인텔리제이(IntelliJ IDEA)가 갑자기 안 켜질 때: Internal Error. ... (0) 2022.05.13 IntelliJ IDEA 윈도우 단축키 Cheatsheet (2) 2022.04.23