1. Overview

IntelliJ IDEA 를 처음 설치했을때 할만한 세팅과 유용한 플러그인을 알아봅니다.

Ultimate 을 기준으로 합니다.

  • Configuration
    • SDK 설정
    • Auto Import 체크
    • 대소문자 구분 체크 해제
    • Build Memory 늘리기
    • Memory Indicator
    • Always Select Opened File
    • Gradle Build 를 IntelliJ IDEA 로 변경
    • Annotation Processor
    • Inlay Hints
    • 파일 끝에 개행 추가
  • Plugin
    • Key Promoter X
    • Rainbow Brackets
    • CodeGlance
    • GitToolBox

2. Configuration

필수 설정도 있고 단순한 편의 용도도 있습니다.


2.1. SDK 설정

File > Project Structure... > Project SDK 에서 사용 중인 JDK 를 지정합니다.



2.2. Auto Import 체크



2.3. 대소문자 구분 체크 해제

system 을 검색하면 대소문자가 구별되어서 System 이 안나오기 때문에 체크 해제합니다.

대소문자 구분이 필요하면 검색창에서 필터를 추가할 수 있습니다.



2.4. Build Memory 늘리기

빌드할 때 메모리 때문에 실패할 수 있습니다.

Heap Size 를 늘려줍니다.


Help > Edit Custom VM Options.. 에서 추가로 아래 설정을 해주면 좀더 쾌적하게 이용 가능합니다.

(IntelliJ Memory Option 최적화 참고)

-Xmx4096m
-Xms4096m

2.5. Memory Indicator

메모리 정보를 실시간으로 확인하고 싶다면 인텔리제이 우측 하단을 우클릭하고 Memory Indicator 를 체크하면됩니다.



2.6. Always Select Opened File

파일 위치를 검색해서 들어가는 경우 왼쪽 파일 리스트에서 위치를 찾지 못할 때가 있습니다.

Project > Show Options Menu (톱니바퀴) > Always Select Opened File 을 활성화하면 현재 열려있는 파일 위치로 이동시켜줍니다.



2.7. Gradle Build 를 IntelliJ IDEA 로 변경

Gradle 을 사용할 때만 Build 속도를 향상시킬 수 있습니다.



2.8. Annotation Processor



2.9. Inlay Hints

Kotlin 을 사용하는 경우 val, var 를 사용하여 변수를 선언하는데, 타입을 명시하지 않는 경우도 있습니다.

타입을 생략하는 경우 어떤 타입인지 한눈에 안들어올 수가 있는데 Inlay Hints 를 켜면 타입을 알려줍니다.

언어별로 설정할 수도 있으며 저는 그냥 다 켜두는 편입니다.



2.10. 파일 끝에 개행 추가

파일을 저장할때 자동으로 맨 밑에 개행을 추가해주는 기능입니다.



3. Plugin

플러그인은 필수는 아니지만 설치하면 개발 생산성 향상에 도움을 줍니다.


3.1. Key Promoter X

마우스 클릭으로 어떤 액션을 하면 단축키를 알려줍니다.

인텔리제이 단축키를 잘 모르거나 헷갈릴때 익히는 데 도움을 줍니다.



3.2. Rainbow Brackets

여러 개의 괄호가 중첩될 때 색으로 구분해줍니다.



3.3. CodeGlance

코드 우측에 미니맵을 보여줍니다.

파일 크기가 크면 스크롤 할 때 편리하지만 분할해서 볼 때 공간을 차지하기 때문에 호불호가 좀 갈릴 거 같네요.



3.4. GitToolBox

Git 에 관한 지원을 해줍니다.

Inline Blame 이 특히 유용합니다.



Reference

Overview

최근에 Mac OS 를 BigSur 로 업그레이드 하면서 데이터를 초기화 했습니다.

거의 2년 넘게 사용하던 설정들이 다 초기화 돼서 하나씩 설정했는데 다음에 또 세팅할 일이 생기면 볼 수 있게 기록해둡니다.


1. 환경설정

    1. 트랙패드 탭해서 클릭
    1. 트랙패드 세손가락으로 드래그](#12-트랙패드-세손가락으로-드래그)
    1. 마우스 가속도 끄기
    1. ₩ 를 ` 로 입력하게 바꾸기
    1. Mac 에서 한글 입력이 잘 안되는 현상
    1. 화면 Zoom in 기능

1.1. 트랙패드 탭해서 클릭

맥북은 기본적으로 꾹 눌러서 클릭하는데 위 설정을 키면 손가락 한번 탭한 것으로 클릭 가능합니다.

더블 클릭도 마찬가지로 두번 탭하면 됩니다.


1.2. 트랙패드 세손가락으로 드래그

환경설정 > 손쉬운 사용 > 포인터 제어기 > 트랙패드 옵션 에 들어가서 활성화 가능합니다.

아이콘, 이미지 등을 드래그 할 때 꾹 누르는 대신 세 손가락으로 쉽게 드래그 가능합니다.


1.3. 마우스 가속도 끄기

# 현재 감도 확인
defaults read .GlobalPreferences com.apple.mouse.scaling

# 새로운 감도 지정 (-1 로 설정하면 끄기)
defaults write .GlobalPreferences com.apple.mouse.scaling -1

기본적으로 마우스 가속도가 켜져 있는데 저는 불편해서 끄는 편입니다.

인텔 맥북에서만 가능하고 M1 맥북에서는 별도의 툴을 다운받아야 한다고 하네요.


1.4. ₩ 를 ` 로 입력하게 바꾸기

BigSur OS 로 업그레이드 하고 나니 한글 상태에서 1 왼쪽에 있는 키가 ` (백틱) 대신 로 입력되어 마크다운이나 코드블럭을 작성할 때 불편했습니다.

https://ani2life.com/wp/?p=1753 포스트를 참고하여 키 설정 변경 후 각 애플리케이션들을 새로 시작하면 각각 적용됩니다.

# KeyBindings 디렉토리 생성
$ mkdir ~/Library/KeyBindings

# DefaultkeyBinding.dict 생성 및 편집
$ vi ~/Library/KeyBindings/DefaultkeyBinding.dict

# 아래 내용 추가
{
    "₩" = ("insertText:", "`");
}

1.5. Mac 에서 한글 입력이 잘 안되는 현상

개인적인 이슈였을 수도 있는데, 맥북 에디터에서 한글을 입력하면 자음이나 모음 한두개가 입력되지 않고 씹히는 현상을 겪었습니다.

환경설정 > 키보드 > 입력 소스 로 이동해서 "삭제 방식" 을 "글자" 로 변경하면 해결됩니다.

변경 후에는 백스페이스로 글자를 지울 때 자음, 모음 단위로 안 지워지고 무조건 문자 단위로 지워지는데 크게 불편한 점은 못느끼고 있습니다.


1.6. 화면 Zoom in 기능

Control + 마우스 스크롤 로 화면을 확대할 수 있습니다.


2. 유용한 앱들

다음은 제가 맥북에서 사용하는 앱들입니다.

    1. iShot
    1. itsycal
    1. Rectangle
    1. AppCleaner
    1. Notion
    1. Spark
    1. Amphetamine
    1. Visual Studio Code

2.1. iShot

App Store 에서 다운 받을 수 있는 화면 캡쳐 프로그램입니다.

실행만 하면 option + A 조합으로 별다른 설정 없이 바로 사용할 수 있습니다.

전체화면, 특정 창, 드래그, 스크롤 캡쳐 등 다양한 기능을 제공하고 캡쳐한 사진을 바로 편집해서 복사, 저장할 수 있습니다.


2.2. itsycal

https://www.mowglii.com/itsycal/ 에서 다운로드 하거나 brew install --cask itsycal 명령어로 설치할 수 있습니다.

맥북은 달력 보기가 굉장히 불편해서 하나 설치해서 보면 좋습니다.

맥 캘린더랑 연동도 되는 것 같은데 달력 보는 용도 외에는 사용해본 적 없는거 같네요.


2.3. Rectangle

https://rectangleapp.com/ 에서 직접 다운받아 사용 가능합니다.

윈도우에서는 기본으로 제공되는 화면 분할이 맥에서는 없기 때문에 별도의 앱이 필요합니다.

control + option + @ 의 조합으로 사용할 수 있으며 생각한것보다 굉장히 유용합니다.

더블 모니터를 사용하는 경우에는 서로 이동도 돼서 마우스 사용 빈도가 낮아졌습니다.


2.5. AppCleaner

앱 지울 때 사용하기 위해 다운 받습니다.


2.6. Notion

https://www.notion.so/desktop 에서 다운가능합니다.

업무용, 개인용으로도 사용하기 굉장히 좋은 메모 앱입니다.

Mac OS, Window, Mobile 전부 호환 돼서 편리합니다.


2.7. Spark

맥북 기본 메일앱이 마음에 안들어서 App Store 에서 다운 받았습니다.

기본 앱은 메일을 받아도 노티가 오래 걸렸는데 스파크는 속도가 빨라서 유용하게 사용하고 있습니다.


2.8. Amphetamine

App Store 에서 다운 가능한 잠자기 방지 앱입니다.

원래는 환경 설정에서 화면 보호기 없는걸로 세팅했었는데 이 앱을 사용하면 좀더 여러 가지 설정이 가능합니다.

저는 그냥 항상 깨움 상태로 사용합니다.


2.9. Visual Studio Code

유용한 에디터이며 공식 홈페이지에서 다운 가능합니다.

개발용으로도 많이 쓰지만 저는 JetBrain 제품을 사용하기 때문에 마크다운 에디터로만 사용하고 있습니다.

설치한 확장팩

  • Markdown All in One : Markdown 작성 도와주는 확장팩
  • Markdown Preview Enhanced : Markdown Github 스타일로 미리보기 가능
  • Material Icon Theme : 그냥 아이콘이 이뻐보여서..
  • One Dark Pro : 그냥 테마
  • Paste Image (by mushan) : 클립보드 이미지를 붙여넣을 때 자동으로 이미지 파일이 생성되게 도와줌
    • Paste Image: Path 설정을 ${currentFileDir}/images 으로 변경
    • Paste Image: Default Name 설정을 Y_MM_DD_HH_mm_ss 으로 변경
    • Paste Image: Name Prefix 설정을 screen_ 으로 추가

1. Hack Font 설치

개인적으로 가장 선호하는 폰트입니다.

https://sourcefoundry.org/hack/#download 에서 Mac OS Zip 을 다운받고 풀어서 ttl 파일들을 실행시면 서체를 다운받을 수 있습니다.


2. Iterm2 설치

Iterm2 은 기본 터미널 애플리케이션보다 다양한 기능과 테마가 탑재된 보조 터미널 애플리케이션입니다.

공식 홈페이지 에서 설치하거나 Homebrew 로 설치 가능합니다.

$ brew install --cask iterm2

설치 후에는 Preference > Profiles > Text 로 이동해서 폰트를 변경할 수 있습니다.



2.1. Iterm2 테마 변경 (Dracula)

$ git clone https://github.com/dracula/iterm.git

위 명령어로 Dracula 테마를 아무 위치에나 다운 받습니다.

다운 받은 폴더에 들어가 Dracula.itermcolors 파일 더블클릭 하면 자동으로 테마가 추가됩니다.

Iterm2 > Perferences > Profiles > Colors > Color Presets... 로 가서 Dracula 를 선택합니다.



2.2. 한글 깨짐 수정



3. Oh My ZSH 설치

Oh My Zsh 는 기본 쉘보다 더 다양한 기능을 제공하는 Z Shell 의 플러그인입니다.

Catalina OS 부터 zsh 가 기본 터미널이 되었기 때문에 따로 설치할 필요는 없고 플러그인만 설치하면 됩니다.

https://github.com/ohmyzsh/ohmyzsh 를 참고해서 설치 가능합니다.

# ohmyzsh curl 설치
$ sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"



3.1. zsh 테마 적용

agnoster 가 국룰인것 같은데 저는 powerlevel10k 테마를 적용했습니다.

# zsh 테마에 powerlevel10k 추가
$ git clone https://github.com/romkatv/powerlevel10k.git ~/.oh-my-zsh/themes/powerlevel10k

# .zshrc 파일 수정
$ vi ~/.zshrc

ZSH_THEME="powerlevel10k/powerlevel10k"

# 변경한 .zshrc 적용하면 여러 가지 설정 Step 이 나오고 다 선택하면 최종 적용됨
$ source ~/.zshrc

3.2. Syntax Highlighting 플러그인 적용

존재하지 않은 명령어를 입력하면 빨간색으로 알려주는 편리한 플러그인입니다.

존재하는 명령어는 녹색으로 표시됩니다.

# 설치
$ brew install zsh-syntax-highlighting

# 적용 (.zshrc 맨 밑에 추가해야 터미널을 껐다 켜도 적용됨)
# 환경에 따라 zsh 파일 위치가 다를 수 있으므로 설치 후 터미널 가이드 참고
$ source /opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

3.3. 자동완성제안 (Auto Suggestions) 플러그인 적용

과거에 입력한 명령어를 자동으로 만들어주는 기능입니다.

이미 입력해본 적이 있는 명령어라면 조금만 입력해도 위 사진처럼 가장 최근에 입력한 명령어를 보여줍니다.

이 상태에서 방향키 오른쪽 버튼을 누르면 전체 명령어를 완성해줍니다.

# 설치
$ brew install zsh-autosuggestions

# 적용 (.zshrc 맨 밑에 추가해야 터미널을 껐다 켜도 적용됨)
# 환경에 따라 zsh 파일 위치가 다를 수 있으므로 설치 후 터미널 가이드 참고
source /opt/homebrew/share/zsh-autosuggestions/zsh-autosuggestions.zsh

3.4. autojump 플러그인 추가

# 설치
brew install autojump

# .zshrc 수정
plugins=(git autojump)

과거에 방문했던 위치를 적당히 힌트만 주면 알아서 찾아줍니다.

예를 들어 위 사진 처럼 /Downloads 에서 j study 를 입력하면 study 라는 이름을 가진 디렉토리 중 가장 많이 방문한 곳으로 이동합니다.

j -s 명령어로 방문한 디렉토리 기록도 확인 가능합니다.

  1. IntelliJ IDEA > Preferences > Editor > Inspections 으로 이동
  2. Non-ASCII characters 체크 해제
  1. IntelliJ IDEA > Preferences > Editor > Inspections 으로 이동
  2. JPA 를 검색한 뒤 Unresolved database references in annotations 체크 해제

원래 티스토리에 포스팅 할 때 Github 글을 그대로 복사해서 넣으면 제대로 들어갔는데 언제부터인가 티스토리 전체 설정이 바뀌었는지 적용이 잘 안되어서 새로 적용하게 되었습니다.


1. 티스토리 자체 플러그인 해제

아래 플러그인이 사용중이 아니어야 합니다.


2. 스킨편집 > HTML 코드 추가

HTML 코드에서 Head 태그 안에 다음 스크립트를 추가합니다.

첫번째 link 태그에서 원하는 테마를 추가합니다.

저는 인텔리제이에서도 사용중인 atom-one-dark 테마를 추가하였고 아래 예시에 나와있는 것처럼 stylesmin.css 사이에 추가하면 됩니다.

맨 아래의 initHighlightingOnLoad 를 사용해서 추가한 스크립트를 즉시 반영합니다.

<link rel="stylesheet"
      href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.4.1/styles/atom-one-dark.min.css">

<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.4.1/highlight.min.js"></script>

<script>hljs.initHighlightingOnLoad();</script>

3. 스킨편집 > CSS 코드 추가

테마를 추가해도 맘에 안드는 부분이 좀 있을 수 있습니다.

이럴땐 CSS 를 직접 수정해야 합니다.

원래 존재하던 pre 태그와 code 태그를 주석 처리하고 아래 코드를 추가합니다.

CSS 설정은 기호에 맞게 수정해서 사용하시면 됩니다.

/* Code block style */
code {
    padding: 0.25rem;
    background-color: #F1F1F1;
    border-radius: 5px;
    font-family: "D2Coding", "Hack", "Sans Mono", "Courier";
    font-size: 0.9rem;
}

pre > code {
    margin: 1rem auto;
    white-space: pre;
    overflow:auto !important; /* scroll setting */
}

+ Recent posts