Ktlint

Kyojun Jin·2024년 8월 21일
0

Insta Tistory Automator

목록 보기
6/8

ktlint

ktlint 검색하면 두 개 나와서 헷갈릴 수가 있다.
검색 결과로 많이 나오는 "org.jlleitschuh.gradle.ktlint" 이거는 그래들에서 설정하기 편하게 래핑한 것일 뿐임.
실제로는 Pinterest 사에서 만든 Ktlint를 사용하고 있음. 그래들에 플러그인 달고 나서는 이것을 신경 쓸 필요가 없음.

현재 이 wrapper는 12.1.1 버전을 사용하고 있고, 이는 이 버전 이후로 지원함.

Minimal supported versions
This plugin was written using the new API available for the Gradle script Kotlin builds. This API is available in new versions of Gradle.


Minimal supported Gradle version: 7.4
Minimal supported Kotlin version: 1.4
Minimal supported ktlint version: 0.47.1
Minimal supported Android Gradle plugin version: 4.1.0

ktlint의 현재 최신 버전은 1.3.1임.

ktlint 설정하는 법

https://pinterest.github.io/ktlint/latest/rules/configuration-ktlint/
.editorconfig에다가 ktlint_standard_옵션명=disabled 하면 됨
주의: intellij에서는 띄어쓰기 하면 무시됨
그리고 The property is not supported 라는 오류 뜨는데 띄어쓰기 안했다면 적용은 됨

ktlint 설정값

https://pinterest.github.io/ktlint/1.3.1/rules/standard/#final-newline
ktlint_standard 뒤에 적을 옵션명들

intellij integration

intellij 쓰면 editorconfig에 추가해줘야 할 사항
https://pinterest.github.io/ktlint/latest/rules/configuration-intellij-idea/

root = true

[*]
insert_final_newline = true

[{*.kt,*.kts}]
ij_kotlin_code_style_defaults = KOTLIN_OFFICIAL

#  Disable wildcard imports entirely
ij_kotlin_name_count_to_use_star_import = 2147483647
ij_kotlin_name_count_to_use_star_import_for_members = 2147483647
ij_kotlin_packages_to_use_import_on_demand = unset

추가 IntelliJ 설정

import 에서 use single name import 둘 다 설정

그리고 그 밑의 packages to use import with * 에서 전부 제거
import layout도 전부 제거 (import all other imports만 남음)

Ktlint plugin 설치하고 Distract free 켜면 나한테 에러 안 띄우고 지가 알아서 조용히 수정함(빈칸이나 그런 거)

0개의 댓글