IntelliJ 를 쓰면서 유용하다 싶었던 기능들 하나하나를 최대한 이클립스에 비슷하게 넣어보고자 한다.
Eclipse sysout vs IntelliJ sout
이클립스에서 기본으로 제공하는 템플릿 중에 sysout 입력후 자동완성을 하면 System.out.println(); 이 자동완성된다.
IntelliJ 에서는 이와 유사하게 sout 을 입력하면 System.out.println(); 이 나온다.
IntelliJ soutp soutv soutm
IntelliJ 는 여기에 더불어 soutp, soutv, soutm 템플릿을 제공하는데
soutm 은 함수명
soutp 는 parameter 명들
soutv 는 변수 명을 선택할수 있게끔 하여 템플릿을 제공한다.
soutm , soutp
soutv
Eclipse 에서 soutp
안타깝게도 이클립스에서 soutp , soutm, soutv 와 같은 템플릿은 기본으로 제공하지 않기에 열심히 구글링해본 결과를 바탕으로 그나마 유사한 방법을 구현해 보았다.
Windows > Preferences > Java > Editor > Template
New 클릭하여 아래와 같이 입력 해주면 끝
Editor창에서 soutp 입력후 자동완성하면 아래와 같은 코드 자동생성
private static void test(int ddd, String abbb) {
String[] lArgsNames = "ddd, abbb".split(", ");
Object[] lArgsValues = new Object[] { ddd, abbb };
for (int i = 0; i < lArgsValues.length; i++) {
logger.info("{} = {}", lArgsNames[i], lArgsValues[i]);
}
}
결과물
int1 = 5
str1 = ddd
logger 이용한 버전
String[] lArgsNames = "${enclosing_method_arguments}".split(", ");
Object[] lArgsValues = new Object[] {${enclosing_method_arguments}};
for (int i = 0; i < lArgsValues.length; i++) {
logger.info("{} = {}",lArgsNames[i], lArgsValues[i]);
}
System.out.print 이용한 버전
String[] lArgsNames = "${enclosing_method_arguments}".split(", ");
Object[] lArgsValues = new Object[] {${enclosing_method_arguments}};
for (int i = 0; i < lArgsValues.length; i++) {
System.out.println(lArgsNames[i] + " = " + lArgsValues[i]);
}