1
2
3
4
5
6
7
8
9
10
11
12
13
14

fun <T : Comparable<T>> List<T>.quickSort(): List<T> = when {

size < 2 -> this

else -> {

val pivot = first()

val (smaller, greater) = drop(1).partition { it <= pivot }

smaller.quickSort() + pivot + greater.quickSort()

}

}


fun main() {

print(listOf(5, 0, 1, 5, 3, 7, 4, 2).quickSort())

}

기본 에디터 폰트

JetBrains IDE

IntelliJ IDEA 2020.1 이후

1.

가독성 향상을 위해 높이 연장

문자 구조 탐색

2.

코드 읽기에 적합

탐색

3.

코드 전용 이음자

이음자(ligature) 탐색

5.

지원되는 이탤릭체 굵기의 종류

글꼴군 탐색

6.

JetBrains Mono는 무료 오픈 소스입니다.

문자의 높이를 늘려 가독성을 향상

문자의 너비는 표준으로 유지되지만 소문자 높이는 최대화됩니다. 이 접근법은 개발자가 기대하는 길이로 코드줄을 유지하며 각 문자가 더 많은 픽셀을 차지하므로 렌더링을 개선하는 데 도움이 됩니다.

비교

다른 글꼴과 비교해 보세요. 예를 들어, Consola 글꼴은 글자가 약간 더 넓습니다. 그러나 크기는 여전히 작기 때문에 글꼴을 읽기 쉽도록 크기를 한 포인트씩 늘려야 합니다. 이에 따라 코드 줄이 예상보다 길어질 수 있습니다.

JetBrains Mono의 표준 너비 문자는 줄이 예상 길이로 유지되도록 도와줍니다.

코드에 따른 눈의 움직임

타원 모양이 직사각형 기호의 모양과 비슷하기 때문에 텍스트의 전체 패턴이 더 명확하게 보입니다.

타원의 바깥쪽은 텍스트를 세로로 검토할 때 눈에 추가적인 장애물이 없도록 방지합니다.


함수 생성

JetBrains Mono의 서체 양식은 단순하고 불필요한 디테일이 없습니다. 작은 크기로 렌더링되어 텍스트가 더 선명하게 보입니다.

형태가 간단할수록 눈이 더 빨리 인식하고 뇌가 정보를 처리하는 데 필요한 수고가 줄어듭니다.



구별하기 쉬운 기호

"1", "l"(L 소문자), "I"(대문자 I) 이 쉽게 구별됩니다.

숫자 0은 내부에 점이 찍혀 있고, 문자 "O"는 그렇지 않습니다.

쉼표의 모양이 마침표와 차별화되어 작은 크기에서도 쉽게 구분할 수 있습니다. 이는 파생 기호에도 동일하게 적용됩니다.


깔끔하게 잘린 획의 끝

획의 끝이 깔끔하게 잘려 픽셀 그리드에 더 잘 맞으며 더 엄격하고 '기술적인' 느낌을 서체에 부여합니다.


Italic

좋은 이탤릭체의 핵심은 곧은 글꼴과 기울임 글꼴 간의 대비를 정교하게 조정하는 것입니다. 일반적인 각도는 약 11°~12°이지만 JetBrains Mono의 각도는 9°입니다. 이 각도는 최적의 대비를 유지하여 집중력 저해와 눈의 피로를 최소화합니다.

시선의 수평적 흐름을 조금 향상하기 위해 "a", "y", "f"에 한정하여 True italic의 구조를 적용했습니다.

코드용 이음자

이음자란 2개 이상의 합쳐진 기호로 구성된 문자로, 원래 인쇄 텍스트에서 공간 절약 기법으로 소개되었습니다. 코드에서 이 기법은 연산자를 표시하는 데 사용되거나 다음 두 가지 목적을 위해 주로 사용됩니다.


1.

노이즈를 감소시키기 위해 기호를 합치고 디테일을 제거하여 눈이 처리하는 정보를 줄입니다.


2.

공백의 균형을 더 효율적으로 맞추기 위해 특정 상황에서 상형 문자 위치를 조정합니다.

JetBrains Mono 글꼴군


regular

단어 위로 마우스 커서를 올려서 변화를 살펴보세요.

로마자 기본

a b c d e f g h i j k l m N o p q r s t u v w x y Z

a b c d e f g h i j k l m n o p q r s t u v w x y z

고정 너비 이음자

--> // /** /* */ <!-- := ->> <<- -> <- <=> == != <= >= =:= !== && &&& || ... .. /// === ++ -- => |> <| ||> <|| |||> <|||::= |] [| |} {| [< >] :?> :? /= [||] !! ?: ?. :: +++ ?? ## ### #### ::: .? ?= =!= <|> <: :< :> >: <> *** ;; /== .= .- __ =/= <-< <<< >>> <=< <<= <== <==> ==> =>> >=> >>= >>- >- <~> -< -<< << --- <-| <=| \ \/ |=> |-> <~~ <~ ~~ ~~> ~> <$> <$ $> <+> <+ +> <*> <* *> </ </> /> <-> ..< ~= ~- -~ ~@ ^= -| _|_ |- ||- |= ||= #{ #[ ]# #( #? #_ #_( #: #! #=

철자 부호

À Á Ã Ä Å Ā Ă Ą Æ Ç Ć Ĉ Ċ Č Ð Ď È É Ê Ë Ē Ĕ Ė Ę Ě Ĝ Ğ Ġ Ģ Ĥ Ħ Ì Í Î Ï Ĩ Ī Į İ Ĭ Ĵ Ķ Ł Ŀ Ļ Ľ Ĺ Ñ Ń Ň Ņ Ŋ Ò Ó Ô Õ Ö Ø Ō Ŏ Ő Œ Ŕ Ř Ŗ Š Ś Ŝ Ş Ș Ť Ț Ŧ Ţ Ù Ú Û Ü Ũ Ū Ŭ Ů Ű Ų Ŵ Ẁ Ẃ Ẅ Ÿ Ý Ŷ Ž Ź Ż

à á â ã ä å ā ă ą æ ç ć ĉ ċ č đ ď è é ê ë ē ĕ ė ę ě ĝ ğ ġ ģ ĥ ħ ı ì í î ï ĩ ī į ĭ ĵ ȷ ķ ł ŀ ļ ĺ ľ ñ ń ň ņ ʼn ŋ ò ó ô õ ö ø ō ŏ ő œ ŕ ř ŗ š ś ŝ ş ș ț ŧ ţ ť ù ú û ü ũ ū ŭ ů ű ų ŵ ẁ ẃ ẅ ý ÿ ŷ ž ź ż

기타 부호

1 2 3 4 5 6 7 8 9 0 Þ þ ß ƒ ð ſ ∏ ∫ Ω ∆ ∑ π √ ∞ ∂ ≈ ◊ ℓ ℮ ≤ ≥ ~ ‹ › « » − ± × ÷ ¦ < ≠ > * ^ € ‘ ’ “ ” ‚ „ • _ – — ¯ ¬ ™ ® © ¤ ¢ £ ¥ ƒ … · ¡ ¿ ° ª º ¹ ² ³ ⁄ ¼ ½ ¾ ‰ µ ¶ § † ‡ ≠ , . ; : ! ? @ # $ & % ` ~ ^ * ( ) [ ] _ = - + < > // \\ | ' "

키릴 문자

А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я Ё Ђ Ѓ Ґ Є Ѕ І Ї Ј Љ Њ Ћ Ќ Ў Џ

а б в г д е ж з и й к л м н о п р с т у ф х ц ч ш щ ъ ы ь э ю я ё ђ ѓ ґ є ѕ і ї ј љ њ ћ ќ ў џ


145개 언어 지원

간다어

갈리시아어

구시어

그린란드어(라틴)

남소토어

남은데벨레어

냔자어

네덜란드어

노르웨이 뉘노르스크어

노르웨이 부크몰어

니안콜레어

덴마크어

독일어

라딘어

라로통가어

라트비아어

러시아어

로만시어

로지반어

로토카스어

롬바르드어

롬보어

루마니아어

루오어

루이아어

룩셈부르크어

룬디어

르완다어

리투아니아어

마사이어

마오리어

마케도니아어

마콘데어

마하메어

막후와메토어

막후와어

말라가시어

말레이어

맨섬어

메루어

모리셔스크리올어

몰타어

몽골어

바스크어

발저어

베나어

벨라루스어

벰바어

보스니아어

북사미어

북소토어

북은데벨레어

분조어

불가리아어

사르디니아어

삼부루어

상고어

상구어

샴발라어

세나어

세르비아어

세부아노어

소가어

소르비아어(고지 소르비아어)

소르비아어(저지 소르비아어)

소말리아어

쇼나어

스와티어

스와힐리어

스웨덴어

스위스 독일어

스코틀랜드 게일어

스페인어

슬로바키아어

슬로베니아어

아수어

아이슬란드어

아일랜드어

아프리칸스어

알바니아어

에르자어

에스토니아어

에스페란토어

엠부어

영어

오로모어

오세트어(라틴)

오시왐보어

옥시탄어

완론어

우크라이나어

월로프어

이나리사미어

이도어

이탈리아어

인공 국제어

인도네시아어

잉그리아어(이조라어)

자바어(라팅)

저지 독일어

저지어

졸라포니어

줄루어

줄루어

체코어

총가어

츠와나어

치가어

카라칼팍어(라틴)

카렐리아어(라틴)

카보베르데어

카슈비아어

카탈로니아어

카팜팡안어(라틴)

칵치켈어

칼라라가우야어

칼렌진어

캄바어

케크치어

코르시카어

콘월어

쿠르드어(라틴)

퀘차어

크로아티아어

키냐르완다어

키룬디어

키리바티어

키콩고어

키쿠유어

타로코어

타이타어

터키어

테소어

투르크멘어

파피아멘토어

페로어

포르투칼어

폴란드어

프랑스어

프리울리어

피에몬테어

핀란드어

필리핀어

헝가리어

호사어

설치 방법


In JetBrains IDEs

JetBrains Mono의 최근 버전은 JetBrains IDE 2019.3 버전부터 포함됩니다.

JetBrains Mono를 IDE에서 다음과 같이 선택하세요. Preferences(기본 설정)/Settings(설정) → Editor(에디터) → Font(글꼴)로 이동한 다음, Font(글꼴) 드롭다운에서 JetBrains Mono를 선택합니다.


다른 IDE 또는 JetBrains IDE의 이전 버전

  1. 글꼴 다운로드
  2. 아카이브를 압축 해제한 글꼴을 설치하세요.
    • 폴더에서 모든 글꼴 파일을 선택한 후 두 번 클릭하세요. 'Install Font'(글꼴 설치) 버튼을 클릭하세요.
    • 폴더에서 모든 글꼴 파일을 선택한 후 우클릭한 다음, 메뉴에서 'Install'(설치)을 선택하세요.
    • Unpack fonts to ~/.local/share/fonts (or /usr/share/fonts, to install fonts system-wide) and execute fc-cache -f -v
  3. IDE를 다시 시작하세요.
  4. Preferences(기본 설정)/Settings(설정) → Editor(에디터) → Font(글꼴)로 이동한 다음, Font(글꼴) 드롭다운에서 JetBrains Mono를 선택하세요.

글꼴 권장 설정

크기: 13
줄 간격: 1.2

라이선스

JetBrains Mono 서체는 Apache 2.0 라이선스에 따라 제공되며 영리적 및 비영리적 목적으로 무료로 사용할 수 있습니다. JetBrains에 대해 언급을 해주지 않으셔도 되지만, 해주신다면 매우 감사드리겠습니다.


자주 묻는 질문

JetBrains Mono를 개인 시스템에 설치하여 코드 에디터에서 사용해도 되나요?
-> .

JetBrains Mono로 포스터를 제작하여 인쇄해도 되나요?
-> .

JetBrains Mono를 로고서체에 사용해도 되나요?
-> .

JetBrains Mono를 웹사이트에 사용해도 되나요?
-> .

JetBrains Mono를 애플리케이션에서 사용해도 되나요?
-> .

JetBrains Mono를 기반으로 자체 글꼴을 디자인해도 되나요?
-> . 이 경우 해당 글꼴이 JetBrains Mono를 기반으로 한다는 것을 명시해야 합니다.


Credits

서체 디자이너

Philipp Nurullin

프로젝트 리드

Konstantin Bulenkov

감사한 분:

Nikita Prokopov
Eugene Auduchinok
Dmitrij Batrak
Tatiana Tulupenko
IntelliJ UX 팀
+ 전체 JetBrains 팀