CLion의 새로운 기능

CLion 2024.1은 CMake 편집 환경을 개선하고, 다중 프로세스 디버그 기능을 제공하며, 기기 트리 파일에서 보다 정확한 하드웨어 설명을 지원하고, 버전 관리 시스템과의 통합을 크게 향상합니다.

주요 업데이트

CMake 업데이트

CMake 업데이트

CMake 스크립트 편집이 어렵다고 느끼시나요? CLion 2024.1에서는 CMake 타깃에 대한 쓰기 지원이 향상되어 훨씬 더 쉽게 스크립트를 편집할 수 있습니다. 이제 CLion은 코드 완성, 탐색, 타깃 이름에 대한 Find Usages(사용 위치 찾기)는 물론 새 타깃을 생성하기 위한 라이브 템플릿을 제안합니다.

자세히 알아보기

디버그 기능 개선

디버그 기능 개선

JetBrains는 디버거 백엔드와 CLion의 통합을 지속적으로 개선하고 있습니다. 이번 최신 릴리스를 사용하면 CLion에서 다중 프로세스 타깃을 디버그할 수 있습니다. 이제 GDB 사용자는 최신 GDB 14.1 버전에 대한 번들 지원의 이점을 누릴 수 있습니다. GDB 색인 생성을 지원하는 새로운 옵션도 추가되어 디버그 성능이 더욱 향상되었습니다.

자세히 알아보기

Meson 지원

Meson 지원

CLion의 Meson 지원을 지속적으로 개선하고 있습니다. 이번 2024.1 버전에는 유용한 명령어가 많이 포함된 Meson 도구 창, Meson에 대한 사용자 지정 설정, CLion의 New Project(새 프로젝트) 마법사에서 새 Meson 프로젝트를 생성하는 옵션이 제공됩니다.

자세히 알아보기

VCS 개선 사항

VCS 개선 사항

Diff 뷰어 개선, 브랜치 검색 기능 강화, 코드 검토 워크플로 간소화 및 전체 하위 시스템에 걸친 기타 여러 유용한 개선 사항을 통해 CLion 및 기타 JetBrains IDE의 VCS 지원을 크게 업데이트했습니다.

자세히 알아보기

CMake

라이브 템플릿

라이브 템플릿

새로운 CMake 타깃이 필요하신가요? add_executable(exe를 입력) 및 add_library(lib를 입력) CMake 명령어를 자동으로 생성하는 새로운 라이브 템플릿이 추가되었습니다.

타깃 이름 완성

타깃 이름 완성

CLion은 이제 CMake 명령어에서 타깃 이름을 완성합니다. 그 결과, 파일을 타깃에 연결하고 기타 타깃 관련 작업을 수행하기가 더욱 쉬워집니다.

타깃 정의로 이동

타깃 정의로 이동

특정 타깃이 정의된 위치를 찾고 있나요? 이제 CLion을 사용하면 한 번의 클릭으로 타깃 사용 위치에서 해당 add_library 또는 add_executable 명령어로 이동할 수 있습니다.

타깃의 Find Usages(사용 위치 찾기)

타깃의 Find Usages(사용 위치 찾기)

프로젝트에서 타깃의 모든 사용 위치를 나열하려면 Find Usages(사용 위치 찾기)(Alt+F7)를 사용하세요. 도구 창의 항목이 사용 위치와 타깃 정의에 따라 정렬됩니다.

필요한 최소 버전

필요한 최소 버전

필요한 최소 버전의 CMake가 활성화되어 있지 않아 CMake가 로드되지 않는 경우, CLion은 CMake 도구 창에서 수정 사항을 제안합니다. Fix...(수정...)를 클릭하면 CLion이 cmake_minimum_required 명령어를 업데이트합니다.

CMake 프리셋 로드

CMake 프리셋 로드

이제 CLion으로 가져올 CMake 프리셋 유형을 구성할 수 있습니다. 예를 들어, 가져오기 목록에서 Configure(구성) 옵션을 선택할 수 있습니다. Settings(설정)/Preferences(환경 설정) | Advanced Settings(고급 설정) | CMake | Automatically import CMake Presets(자동으로 CMake 프리셋 가져오기)을 사용하면 됩니다.

마지막으로, CLion 2024.1에는 CMake 3.28 버전이 번들로 포함되어 있습니다.

Meson

Meson 도구 창

Meson 도구 창

2023.3 버전부터 CLion에는 Meson 프로젝트 모델에 대한 지원이 포함되었습니다. 이제 Meson 도구 창(View(뷰) | Tool Windows(도구 창) | Meson)이 함께 제공됩니다. 여기에서 빌드 타깃 목록과 clean, install, test 등과 같은 유용한 명령어를 찾을 수 있습니다.

새로운 Meson 프로젝트

새로운 Meson 프로젝트

새로운 Meson 프로젝트를 시작하시나요? 이제 CLion의 New Project(새 프로젝트) 마법사에는 프로세스를 간소화하는 데 도움이 되는 옵션이 제공됩니다. 이 새로운 Meson 프로젝트의 파일 템플릿은 Settings(설정)/Preferences(환경 설정) | Editor(에디터) | File and Code Templates(파일 및 코드 템플릿) | Meson Project(Meson 프로젝트)에서 구성할 수 있습니다.

Meson 설정

Meson 설정

Meson 실행 파일에 대한 사용자 지정 경로를 지정해야 하는 경우, 이제 CLion의 Meson 설정에서 지정할 수 있습니다. Setup options(설정 옵션) 필드를 사용하여 추가 Meson 명령어를 제공할 수도 있습니다.

디버거

포크된 프로세스 디버그

포크된 프로세스 디버그

CLion에서는 이제 다중 프로세스 타깃을 디버그할 수 있습니다. 최신 릴리스를 사용하면 컨텍스트 메뉴에서 추적 및 분리 정책을 업데이트할 수 있습니다. 이는 Linux(LLDB 및 GDB 포함) 및 원격 도구 체인(WSL, 원격 및 Docker)에서 작동합니다.

관련 문서에서 이러한 설정에 대해 자세히 알아보세요.

기타 디버거 개선 사항

  • CLion은 이제 GDB 14.1을 번들로 제공합니다. 이 CLion 버전에서 처음에 손상되었던 표준 타입의 표시가 이제 수정되었습니다.
  • GDB에서 성능 문제가 발생하는 경우 새로운 setting(설정)을 사용해 보세요. 이는 IDE에서 실행되는 실행 파일용 Linux 시스템에서 작동하며, 활성화되면 CLion이 디버그 세션이 시작되기 전에 GDB에 대한 색인을 준비합니다.

기기 트리

하드웨어용으로 개발 중이고 기기 트리 파일을 작성하는 경우, 2023.3 버전에 추가된 CLion의 기기 트리 파일 코딩 지원을 유용하게 이용할 수 있습니다. 이 새 버전에서는 기기 트리 파일의 코드 분석을 개선했으며 기본적으로 CMake를 Zephyr 설정과 동기화했습니다.

프로퍼티 타입 확인

프로퍼티 타입 확인

바인딩을 통해 노드 프로퍼티의 유효성을 검사할 수 있도록 잘못된 프로퍼티 타입과 필수 또는 선언되지 않은 프로퍼티에 대한 새로운 검사가 제공됩니다.

중복 요소

중복 요소

Duplicate element(중복 요소) 검사는 기기 트리 노드 내에서 중복된 요소를 찾아냅니다. 이는 동일한 이름을 가진 두 개 이상의 프로퍼티이거나 두 개 이상의 노드일 수 있습니다.

열거형 값 확인

열거형 값 확인

열거형 타입이 사용되면 CLion은 해당 프로퍼티 값의 유효성을 검사하고 허용되지 않는 값을 보고합니다.

코드 완성

코드 완성

기기 트리 파일을 쉽게 작성하도록 루트 노드에 대한 코드 완성 기능을 추가했습니다.

새 터미널 베타

새 터미널

이제 JetBrains IDE v2024.1에서 새로운 터미널(베타)을 사용할 수 있습니다. Settings(설정)/Preferences(환경 설정) | Tools(도구) | Terminal(터미널) | Enable New Terminal(새 터미널 사용)에서 이전 터미널과 새 터미널 사이를 전환할 수 있습니다.

기능 세트를 확장하고 시각적인 모양을 개선했으며 IDE의 새로운 모양과 느낌에 맞추었습니다.

  • 이제 각 명령어가 터미널에 개별 블록으로 배치됩니다. 각 명령어는 그 시작과 끝을 쉽게 알 수 있도록 시각적으로 구분되어 있습니다. 방향키를 사용하여 블록 사이를 쉽게 탐색하거나 Ctrl+↑Ctrl+↓ 키보드 단축키를 사용하여 프롬프트와 출력 사이에서 포커스를 전환할 수 있습니다.
  • 명령어, 경로, 인수, 옵션 등에 대한 문서가 포함된 코드 완성 기능은 필수 작업을 더 빠르게 시작하는 데 도움을 줍니다.
  • 명령어 기록은 새로운 Terminal(터미널) 도구 창에서도 제공됩니다.
  • Terminal 도구 창에 사용되는 색 구성표가 쉽게 알아볼 수 있도록 업데이트되었습니다.

현재는 Bash, Zsh 및 PowerShell만 지원하며 다른 셸은 개발 중입니다. 자세한 내용을 알아보려면 계속해서 읽어보세요.

버전 관리

이번 릴리스에서는 다음을 포함하여 CLion의 VCS 지원 업데이트가 제공됩니다.

  • GitLab 및 GitHub 저장소에 대한 에디터 내 코드 검토
  • Git 도구 창에서 CI 상태 확인
  • 대용량 파일이 저장소에 커밋되는 것을 방지
  • Commit(커밋) 도구 창에 새로운 Stash(보류 항목) 탭 추가
  • 비교에서 폴더 및 파일을 제외하는 옵션
  • 이외에도 다양한 기능이 있습니다.

여기에서 모든 변경 사항에 대해 알아보세요.

IDE UI 업데이트

스크롤하는 동안 고정된 줄

스크롤하는 동안 고정된 줄

새로운 코드 베이스와 대용량 파일을 탐색하는 일은 까다로울 수 있습니다. 이를 돕기 위해 이제 스크롤하는 동안 IDE에 고정된 줄이 표시됩니다. 이 기능을 사용하면 스크롤할 때 클래스나 함수의 시작 부분과 같은 주요 구조 요소를 에디터 상단에 고정할 수 있습니다. 그러면 범위가 항상 표시되고, 이러한 줄을 클릭하여 코드를 즉시 탐색할 수 있습니다.

전체 IDE 축소

전체 IDE 축소

이전에 CLion에서는 전체 IDE를 확대 및 축소하여 모든 UI 요소의 크기를 동시에 조정하는 기능을 도입했습니다. 그러나 그 당시의 크기 조정 범위는 100%에서 200% 사이로 제한되었습니다. 이제 사용자가 IDE를 90%, 80% 또는 70%로 축소할 수 있는 새로운 옵션을 도입하여 확장된 사용자 지정 옵션을 제공합니다.

기타 개선 사항

  • CMake Application(CMake 애플리케이션) 실행 구성에만 있었던 입력 스트림 리디렉션 옵션을 이제 C/C++ File(C/C++ 파일) 실행 구성에서도 사용할 수 있습니다.
  • 화면 표시와 UX를 개선하기 위해 Assembly(어셈블리) 뷰를 업데이트했습니다.
    • 이제 ARM 타깃의 Assembly 뷰가 올바르게 표시됩니다.
    • Refresh(새로고침) 버튼을 수동으로 클릭할 필요 없이 Assembly 뷰 설정이 즉시 적용됩니다.
    • Assembly 뷰에 열려 있는 파일을 편집하면 미리보기를 새로 고칠 것을 제안하는 힌트가 사용자에게 표시됩니다.

CLion 2023.3의 새로운 기능

CLion 2023.3에는 테스트 버전 단계를 마친 JetBrains AI Assistant가 포함되어, 일상적인 C++ 개발 워크플로에 도움을 주는 더 많은 컨텍스트 및 프로젝트 인식 액션을 제공합니다. 또한 새 릴리스는 프로젝트 모델 지원을 확장하고, 보다 심층적인 코드 분석 및 기본 어셈블리 보기를 위한 도구를 제공하며, 임베디드 개발자에게 디바이스 트리 파일에 대한 지원을 제공합니다.

주요 업데이트

테스트 단계를 마친 AI Assistant

테스트 단계를 마친 AI Assistant 정식 출시

JetBrains의 AI Assistant가 이제 JetBrains IDE에서 생산성을 높이기 위한 여러 가지 새롭고 향상된 기능과 함께 정식 출시되었습니다.

CLion 2023.3에서는 AI Assistant가 문서를 더 정확하게 생성하고 런타임 오류를 설명할 수 있습니다. 최신 업데이트에는 확장된 컨텍스트를 사용하여 보다 포괄적인 결과를 제공하는 프로젝트를 인식하는 AI 액션 및 컨텍스트를 인식하는 AI 채팅도 포함되었습니다.

JetBrains AI 구독을 통해 CLion에서 AI Assistant를 추가 기능으로 이용할 수 있습니다.

CLion Nova

CLion Nova 테스트 버전

오랫동안 지속되어 온 성능 및 품질 문제를 해결하고 모든 C++ 도구에서 사용자 경험을 통합하기 위해 CLion Nova를 출시합니다. 이는 ReSharper C++ 및 JetBrains Rider의 C++ 언어 엔진이 포함된 CLion의 무료 테스트 버전으로, 다음을 보장합니다.

  • 더욱 빨라진 강조 표시 속도
  • 개선된 UI 반응성
  • 리팩터링 시 정지 및 멈춤 현상이 현저히 감소
  • 더욱 빨라진 Find Usages(사용 위치 찾기)
  • 테스트 색인 생성 속도 개선

자세히 알아보고 테스트 버전 무료로 사용해 보기

더 많은 C 및 C++ 프로젝트 모델

더 많은 C 및 C++ 프로젝트 모델

C 및 C++ 프로젝트에는 다양한 프로젝트 모델이 사용됩니다. CLion은 CMake, 컴파일 데이터베이스, Makefile 및 Autotools 프로젝트에서 즉시 작동합니다. V2023.3은 이제 오랫동안 기다려온 Meson 지원을 제공하고 Bazel for CLion 플러그인의 많은 문제를 해결했습니다.

변경 사항에 대해 자세히 알아보기

C++ 코드 개선을 위한 노력

C++ 코드 개선을 위한 노력

CLion에는 코드를 작성할 때 지속적으로 실행되어 코드 품질을 향상하는 데 도움을 주는 데이터 흐름 분석기가 내장되어 있습니다. 2023.3 버전에서는 전체 분석의 정확성과 성능을 향상하고 메모리 누수 분석을 추가했습니다.

새로운 분석에 대해 자세히 알아보기

심도 있는 코드 분석

심도 있는 코드 분석

CLion은 코드가 실제로 수행하는 작업을 사용자가 이해하고 코드 베이스에서 버그를 검색할 수 있도록 최선의 도움을 줍니다. 새로운 Run to Cursor(커서 위치까지 실행) 인레이 옵션을 사용하면 디버거의 코드 탐색 속도가 빨라지고, 파일의 Assembly(어셈블리) 뷰는 버그를 찾거나 코드의 런타임 성능을 최적화할 때 유용합니다.

새로운 기능에 대해 자세히 알아보기

임베디드 개발

임베디드 개발

디바이스 트리는 하드웨어를 설명하는 데 주로 사용되는 계층적 데이터 구조입니 Zepyr에서 널리 사용되며 하드웨어의 초기 구성을 제공합니다. 이제 CLion을 사용하여 이러한 파일을 읽고, 탐색하고, 유지 관리하기가 훨씬 쉬워졌습니다. 확장자가 .dts.dtsi인 파일은 IDE에서 디바이스 트리 파일로 처리되므로 이제 디바이스 트리에서 코딩 지원 옵션을 사용할 수 있습니다.

DTS 지원에 대해 자세히 알아보기

프로젝트 모델

Bazel for CLion 플러그인

Google의 Bazel for CLion 플러그인에 중요한 품질 개선이 구현되었습니다.

  • 이제 CLion은 strip_include_prefix 인수를 고려하므로 포함된 헤더를 찾을 때 올바른 경로를 사용합니다.
  • 이제 Bazel의 가상 includes 아래에 심볼릭 링크된 헤더에 대해 코드 분석 기능이 올바르게 작동합니다.
  • local_repository 또는 new_local_repository를 사용하여 WORKSPACE.bazel에 추가된 프로젝트가 이제 CLion에서 올바르게 동기화되고 색인 생성됩니다.

Meson 지원

CLion에서 Meson이 지원됩니다! CLion에서 Meson 프로젝트를 열고 빌드, 실행 및 디버그할 수 있습니다. WSL 및 Docker를 포함한 모든 플랫폼과 모든 로컬 및 원격 툴체인에서 작동합니다.

meson.build 파일 편집을 돕기 위해 CLion은 다음을 제공합니다.

  • 코드 강조 표시
  • executable(...)library(...) 명령어가 파일에 있는 경우, Structure(구조) 뷰에 실행 파일과 라이브러리가 표시됩니다.

CLion에서 Meson 프로젝트로 작업하는 방법 알아보기

CMake 개선 사항

이제 CMake 프리셋 조건 equalsnotEquals가 지원됩니다. 즉, CLion은 더 이상 이러한 조건과 일치하지 않는 프리셋을 표시하지 않습니다.

Assembly(어셈블리)

파일의 Assembly(어셈블리) 뷰

파일의 Assembly(어셈블리)

CLion 2023.3을 사용하면 기본 어셈블리 코드를 탐색하는 데 디버그 세션이 필요하지 않습니다! 새로운 Show Assembly(어셈블리 표시) 액션은 현재 선택된 해결 구성의 컴파일러 설정을 사용하고, 현재 표시된 C/C++ 파일의 코드를 어셈블리로 컴파일링하며, 어떤 소스 코드가 어떤 어셈블리를 생성하는지 보여주는 미리보기가 포함된 에디터를 엽니다.

자세히 알아보기

Intel 구문

Intel 구문

CLion의 모든 Assembly(어셈블리) 뷰(디버그 세션 포함 및 제외)가 x86 어셈블리(Intel) 구문으로 전환하는 기능으로 향상되었습니다. 이렇게 하려면 Assembly(어셈블리) 뷰 창에서 Options(옵션)로 이동하고, 뷰를 새로 고침하여 변경 사항을 적용합니다.

자세히 알아보기

디버거

Run to cursor(커서 위치까지 실행)

Run to cursor(커서 위치까지 실행)

CLion 2023.3에는 디버그하는 동안 특정 코드 줄로 빠르게 이동할 수 있는 새로운 Run to Cursor(커서 위치까지 실행) 인레이 옵션이 도입되었습니다. 프로그램이 일시 중지되면 프로그램 실행을 중단하려는 코드 줄 위로 마우스를 가져간 다음 Run to Cursor(커서 위치까지 실행) 팝업을 클릭하여 팝업에서 클릭한 해당 줄에 도달할 때까지 코드를 실행할 수 있습니다.

임베디드 개발

하드웨어를 세부 조정하는 데 도움이 되도록 CLion은 디바이스 트리 파일을 지원합니다. 확장자가 .dts.dtsi인 파일은 IDE에서 디바이스 트리 파일로 처리되므로 디바이스 트리에서 이에 대한 코딩 지원 옵션이 제공됩니다. 자세한 내용은 온라인 문서에서 확인하세요.

디바이스 트리 파일 읽기

기존 디바이스 트리 파일을 읽는 데 도움이 되도록 CLion은 다음을 제공합니다.

  • 디바이스 트리 파일의 구문 강조 표시
  • 디바이스 트리 파일의 코드 서식 지정
  • 디바이스 트리 요소 위로 마우스를 가져가 코드 문서 표시
  • 디바이스 트리 파일을 통한 Structure(구조) 뷰 및 코드 탐색

디바이스 트리 파일 쓰기

디바이스 트리 파일을 보다 효과적으로 작성하도록 CLion은 다음을 지원합니다.

  • 표준 노드, /<commands>/ 및 라벨에 대한 코드 완성
  • 입력할 때 라벨 및 노드 이름에 대한 유효성 검사
  • 정의된 경우 트리의 요소 순서에 대한 유효성 검사
  • /bits/ 옵션으로 정의된 배열 크기 검사

정적 분석

Function summaries

CLion 2023.3의 새로운 'function summaries' 접근 방식을 사용하여 임의의 중첩 호출 체인에 대한 다양한 함수 컨텍스트를 구별할 수 있어 데이터 흐름 분석이 더 정확해졌습니다.

필드 분석

필드 분석

이제 DFA의 기존 검사에서 필드도 고려하며, 일부 필드가 초기화되지 않았을 때 이를 경고하는 새로운 검사가 있습니다.

메모리 누수 분석

메모리 누수 분석

새로운 메모리 누수 분석이 구현되었습니다. 따라서 이제 메모리가 할당되었지만 액세스가 중단되기 전에 해제되지 않은 경우를 쉽게 포착할 수 있습니다.

QML

QML

CLion은 프로젝트에서 QML 유형을 감지하여 구문을 분석하고 이를 기반으로 코딩 지원을 제공합니다. 그러나 라이브러리 QML 유형이나 사용자 플러그인의 유형은 다른 위치에 있는 경우가 많습니다. 이 문제를 해결하기 위해 Settings(설정)/Preferences(환경 설정) | Languages & Frameworks(언어 및 프레임워크) | QML에 새로운 Extra QML imports(추가 QML 가져오기) 설정을 도입했습니다. 이를 통해 IDE는 지정된 위치에서 QML 가져오기를 검색하고 사용자 코드에서 유형을 분석할 수 있습니다.

파일 템플릿

파일 템플릿

CLion의 New Project(새 프로젝트) 마법사를 통해 새 프로젝트를 생성하면 main.cpp 또는 main.c 파일이 자동으로 생성됩니다. 하지만 경우에 따라 이러한 파일에 대해 사용자 지정 템플릿을 사용하고 싶을 수도 있습니다. 이제 CLion 2023.3에서는 Settings(설정)/Preferences(환경 설정) | Editor(에디터) | File and Code Templates(파일 및 코드 템플릿) | Other(기타)에서 이러한 템플릿을 편집할 수 있습니다.

IDE Features Trainer

IDE Features Trainer는 필수 IDE 기능을 다루는 대화형 튜토리얼 모음입니다. 시작 화면이나 Help(도움말) | Learn IDE Features(IDE 기능 배우기)에서 시작하세요. 온라인 문서에서 자세히 알아보세요.

간편한 온보딩

교육은 뷰와 패널 탐색, 에디터에서 파일 열기, 프로그램 실행, 심볼 자동 완성, 빠른 수정 적용, 심볼 검색 등 CLion과 주요 사용자 작업을 익히는 데 도움이 되는 온보딩 투어로 시작됩니다.

IDE 핵심 기능 자세히 알아보기

기초 내용을 마친 다음에는 코드 편집, 리팩터링, 코드 완성 및 Git 섹션으로 진행할 수 있습니다. 목록에 있는 수업을 어떤 순서로든 진행할 수 있으므로 가장 흥미로운 주제를 먼저 살펴볼 수 있습니다.

사용자 경험

메인 툴바 숨기기

메인 툴바 숨기기

보다 간소화된 IDE 뷰를 선호하는 사용자를 위해 디폴트 보기 모드에서 메인 툴바를 숨기는 옵션이 새로 도입되었습니다. 숨기려면 View(보기) | Appearance(모양)로 이동하여 Toolbar(툴바) 옵션의 선택을 취소하세요.

파일 탭의 색상 구분

에디터에서 다양한 파일 형식으로 작업할 때 탐색 경험을 향상시키기 위해 Project(프로젝트) 도구 창의 색상과 에디터 탭의 색상 코드가 기본적으로 일치하도록 색상 코드를 추가했습니다.

단축키를 통해 Speed Search(빠른 검색) 가능

단축키를 통해 Speed search(빠른 검색) 가능

도구 창과 대화상자 내에서 빠르게 탐색할 수 있는 Speed search(빠른 검색) 기능을 이제 단축키로 사용할 수 있습니다. 트리나 목록에 포커스를 놓은 상태로 도구 창의 Options(옵션) 메뉴에서 Ctrl+F를 누르거나 간단히 쿼리를 입력하여 검색을 쉽게 호출할 수 있습니다.

Default(디폴트) 도구 창 레이아웃

Default(디폴트) 도구 창 레이아웃

CLion의 사용자 지정 도구 창 레이아웃을 디폴트 레이아웃으로 빠르게 되돌리려면 이제 Window(창) | Layouts(레이아웃) | Default(디폴트)를 사용하여 작업 공간의 모양을 디폴트 상태로 되돌릴 수 있습니다.

기타 개선 사항

Tests(테스트) 범위

테스트 색인 생성 단계에서 시간을 절약하려면 특정 디렉터리에서 테스트를 찾도록 CLion에 수동으로 지시할 수 있습니다. 이렇게 하려면 Tests(테스트) 범위를 생성하세요. 그러면 테스트 색인화 중에 이 범위로 필터링된 파일만 색인이 생성됩니다.

Tests 범위를 사용하여 Project(프로젝트) 뷰를 필터링하고 프로젝트의 테스트 파일에 빠르게 액세스할 수 있습니다. 자세히 알아보기

Dev Container에 대한 지원 개선

CLion 2023.3에서는 Dev Container에 대한 지원이 크게 확장되었습니다. 이제 Dev Container 기능을 사용하여 추가 개발 도구, 런타임 및 라이브러리를 쉽게 추가할 수 있어 필수 구성 요소 설정이 간단해집니다. 또한 자동 포트 포워딩을 구현했습니다. 즉, 애플리케이션이 Dev Container에서 수신 대기를 시작하는 모든 포트가 원활하게 포워딩됩니다. 여기에서 자세한 내용을 알아보세요.

올인원 Diff 뷰어

CLion 2023.3에는 변경 사항을 검토하는 개선된 방식이 도입되었습니다. 이제 각 파일을 하나씩 살펴보는 대신 스크롤 가능한 단일 프레임에서 변경 세트의 수정된 모든 파일을 볼 수 있습니다. 이 새로운 Diff 뷰어는 GitLab, GitHub 및 JetBrains Space 검토와 호환됩니다.

GitLab 스니펫 지원

CLion 2023.2 릴리스에 도입된 GitLab 통합을 확장하여 GitLab 스니펫에 대한 지원을 추가했습니다. 이제 IDE 내에서 공개 또는 비공개 스니펫을 직접 생성할 수 있습니다.

CLion 2023.2의 새로운 기능

CLion 2023.2에서 PlatformIO 통합 및 vcpkg 지원이 개선되었으며 핵심 IDE 사용자 워크플로에 자연스럽게 통합된 AI Assistant 기능이 제공됩니다. 또한 로우 레벨, 원격, 임베디드 디버그 경험도 개선되었습니다.

주요 업데이트

AI Assistant

AI Assistant 제한적 액세스

CLion 2023.2에는 AI Assistant 기능이 도입되어 IDE의 기본 사용자 워크플로의 일부로 자연스럽게 통합되었습니다. AI Assistant 기능은 C 및 C++ 언어로 선택된 코드를 설명하고, 코드 조각의 리팩터링 개선 방안을 제안하거나, 잠재적 문제를 찾아낼 수 있습니다. 또한 커밋 메시지를 생성하고 CMake 오류도 설명합니다.

자세히 알아보기

디버거 업데이트

디버거 업데이트

CLion 2023.2에서 현재 프레임의 레지스터를 검사하는 기능이 도입되어 로우 레벨 디버그를 보다 쉽게 수행할 수 있습니다. 디스어셈블리 뷰에서 인라인화된 레지스터 값을 바로 확인할 수도 있습니다. Attach to Process(프로세스에 연결) 대화상자의 주요 업데이트는 원격 및 WSL 프로세스 연결을 지원합니다.

자세히 알아보기

PlatformIO 통합

PlatformIO 통합

PlatformIO is an open-source platform that helps embedded developers with their projects. CLion 2023.2는 이 플랫폼과 네이티브 통합을 제공합니다. IDE에서 platformio.ini 파일을 바로 사용할 수 있으므로 파일의 변경 사항을 추적하고 그에 따라 프로젝트 정보를 업데이트할 수 있습니다.

자세히 알아보기

vcpkg 통합

vcpkg 통합

vcpkg is one of the most widely adopted package managers in C++. vcpkg는 클래식 모드 및 매니페스트 모드라는 2가지 모드로 제공됩니다. CLion 2023.2는 이 두 가지 모드를 모두 지원합니다. CLion UI는 두 가지 모드를 명확히 구분할 수 있도록 구성되었으며, 전용 버튼을 사용해 매니페스트 모드로 간편하게 전환할 수 있습니다.

자세히 알아보기

AI Assistant
제한적 액세스

모든 IntelliJ 기반 IDE 및 .NET 도구의 2023.2 버전에는 AI Assistant라는 새로운 주요 기능이 포함되었습니다. 이 기능은 아직 개발 초기 단계에 있으나 IDE의 사용자 기본 워크플로에 AI Assistance를 적용하고, 코드 이해를 위해 전문적인 AI 기능을 통합하고자 합니다. 웹 도움말 페이지에서 자세한 내용을 확인하세요.

AI Assistant는 현재 JetBrains IDE 안정화 릴리스에 번들로 제공되지 않으며 별도의 플러그인으로 설치할 수 있습니다. 현재로서는 AI Assistant 기능 액세스를 위한 대기자 명단을 통해 이용할 수 있습니다.

AI Assistant의 채팅 기능

AI Assistant의 채팅 기능

AI Assistant의 기본 주제는 프로그래밍이며 프로젝트별 컨텍스트가 제공되면 더 정확하게 작동합니다. 새로운 전용 도구 창에서 반복 작업을 수행하고 만족스러운 결과가 나오면 Insert Snippet at Caret(캐럿 위치에 스니펫 삽입) 기능을 사용하거나 간단히 복사하여 붙여넣는 방식으로 AI가 생성한 코드를 에디터에 삽입할 수 있습니다.

AI Actions...(AI 액션...) 메뉴

AI Actions...(AI 액션...) 메뉴

에디터에서 특정 코드 조각을 선택한 후, AI Actions...(AI 액션...) 컨텍스트 메뉴의 액션을 호출해 보세요.

AI Assistant는 다음과 같은 도움을 제공합니다.

  • 선택한 코드 조각에서 잠재적 이슈 발견.
  • 코드 조각에 대해 향상된 리팩터링 방법 제안.
  • 선택한 코드에 대한 설명 제공.
  • 선택한 코드와 관련하여 새로운 AI 채팅 시작.
커밋 메시지 생성

커밋 메시지 생성

AI Assistant는 사용자가 변경한 내용을 설명하는 데 도움이 될 수 있습니다. 커밋 메시지 대화상자에서 Generate Commit Message with AI Assistant(AI Assistant로 커밋 메시지 생성) 버튼을 클릭하면 변경 내용의 Diff를 LLM으로 전송하고, 변경 내용을 설명하는 커밋 메시지가 생성됩니다.

CMake 오류 설명

CMake 오류 설명

프로젝트에서 CMake 실행 실패가 발생한 경우, CMake 도구 창의 Explain with AI(AI로 설명)를 클릭하면 오류 발생 원인과 해결 방법을 더 쉽게 이해할 수 있습니다.

디버거

Attach to Process(프로세스에 연결) 대화상자

Attach to Process(프로세스에 연결) 대화상자를 통해 CLion 외부에서 실행된 프로세스를 로컬로 혹은 원격으로 디버그하거나, IDE 디버거 통합 기능을 활용할 수 있습니다.

2023.2 버전에서 다음과 같은 기능이 지원됩니다.

  • 로컬, 원격, WSL 프로세스에 연결.
  • 툴체인에 구성된 디버거 선택.
  • 원격으로 실행된 프로세스에 관리자 권한으로 연결.
레지스터 디버그

레지스터 디버그

현재 프레임의 레지스터를 검사하는 기능이 도입되어 로우 레벨 디버그를 보다 쉽게 수행할 수 있습니다. CLion 디버거 도구 창의 Variables(변수) 탭에 레지스터 값이 표시됩니다.

ARM 어셈블리

ARM 어셈블리

CLion은 ARM 어셈블리 언어를 지원하므로 디스어셈블리 뷰에서 ARM 어셈블러에 대한 코드 강조 표시가 제공됩니다.

어셈블리 레지스터 디버그

어셈블리 레지스터 디버그

디스어셈블리 코드 디버그 시 CLion은 디스어셈블리 뷰에서 레지스터 값을 인라인으로 표시합니다.

기타 디버거 개선 사항은 다음과 같습니다.

  • CLion에서 LLDB v16 및 GDB v13.1을 번들로 제공합니다.
  • Memory View(메모리 뷰) 에서 즉각적 메모리 편집이 지원되며, 편집 후 바로 값이 표시됩니다.
  • CLion은 원격 툴체인에 대한 외부 라이브러리 디버그를 개선할 수 있도록 라이브러리에 설정된 중단점을 올바르게 처리하고, 요청 시 누락된 소스 파일을 다운로드합니다.

임베디드 개발

PlatformIO와 기본 통합

PlatformIO와 기본 통합

PlatformIO is an open-source platform that helps embedded developers with their projects. CLion 2023.2에서 PlatformIO 통합 기능 중 중간 CMake 수준이 제거되었습니다. 이제 IDE에서 platformio.ini 파일을 바로 사용할 수 있으므로 파일의 변경 사항을 추적하고 그에 따라 프로젝트 정보를 업데이트할 수 있습니다.

PlatformIO 플러그인을 설치하고 새로운 프로젝트를 생성하거나 기존 프로젝트를 여는 방법을 웹 도움말에서 알아보세요.

PlatformIO 액션 및 도구 창

PlatformIO 액션 및 도구 창

터미널로 전환하지 않고도 일부 pio 명령어를 IDE에서 바로 호출할 수 있습니다(Tools(도구) | PlatformIO). 프로젝트 다시 로드, 프로젝트에서 정적 분석 실행, 기기 모니터 호출 등이 이에 포함됩니다.

PlatformIO 도구 창에서 가장 자주 사용하는 명령어 및 프로젝트 액션을 빠르게 이용할 수 있습니다.

기타 개선 사항:

CLion에서 Segger J-Link GDB 서버를 올바르게 디버그할 수 있도록 이제 일반적인 SIGINTSIGSTOP뿐 아니라 SIGTRAP 시그널도 처리합니다.

vcpkg

프로젝트 종속성 및 외부 라이브러리 관리를 지원하기 위해 C/C++ 패키지 관리자인 vcpkg가 CLion에 통합되었습니다. 또한 2023.2 버전부터 통합이 대폭 업데이트되어 더 많은 지원 시나리오가 추가되었습니다.

매니페스트 모드

매니페스트 모드

vcpkg는 클래식 모드 및 매니페스트 모드라는 2가지 모드로 제공됩니다. CLion UI는 두 가지 모드를 명확히 구분할 수 있도록 구성되었으며, 전용 버튼을 사용해 매니페스트 모드로 간편하게 전환할 수 있습니다.

Console(콘솔) 탭

Console(콘솔)

vcpkg의 클래식 모드를 더욱 편리하게 이용할 수 있도록 vcpkg 도구 창에 모든 명령어 및 출력이 표시되는 Console(콘솔) 탭을 추가했습니다.

CMake

프로젝트에 새 파일 추가 시 CMake 타깃 생성

프로젝트에 새 파일 추가 시 CMake 타깃 생성

CLion 2023.2에서 새 파일을 추가할 CMake 타깃이 없는 경우를 고려해 새로운 C/C++ 파일 생성 대화상자를 개선했습니다. 새로운 Add new target...(새 타깃 추가...) 액션을 사용하면 새 타깃을 생성하고 선택한 CMakeLists.txt 파일에 추가할 수 있습니다. 타깃을 추가한 후 새 파일을 해당 타깃에 추가할 수 있습니다.

CMake 3.25 및 3.26 지원

CMake 3.25 및 3.26 지원

CLion 2023.2에는 CMake 3.25의 새로운 매개변수와 요청된 범위에서 명령어 그룹을 실행하는 데 사용되는 새로운 블록 명령어에 대한 강조 표시 및 코드 완성 기능이 추가되었습니다. CLion에서 새로운 명령어에 대한 올바른 강조 표시, 서식 지정, 접기 및 문서화가 지원됩니다.

CLion 2023.2는 CMake 3.26을 번들로 제공합니다.

CMake 매개변수 정보

CMake 매개변수 정보

Parameter Info(매개변수 정보) 팝업에서 입력 시 시그니처 variant가 표시되며, CMake 명령어에도 해당 팝업이 지원됩니다. 이 팝업은 특히 여러 variant가 있는 명령어 사용 시 다음에 입력할 매개변수를 파악하는 데 도움이 됩니다.

WSL에서 Docker 지원

WSL에서 Docker 지원

프로젝트에 Linux 기반 환경의 Docker 파일이 있으며 Windows 시스템에서 애플리케이션을 개발하려는 경우 WSL 및 Docker를 사용해 CLion에서 이를 설정할 수 있습니다.

출력 콘솔의 터미널

WSL에서 Docker 지원

이제 Emulate terminal in the output console(출력 콘솔에서 터미널을 에뮬레이션 처리) 옵션이 각 구성에 대해 개별적으로 활성화되거나 비활성화됩니다. 이 옵션은 기본적으로 비활성화되어 있으며, 옵션을 관리하는 설정이 Advanced Settings(고급 설정)에서 Run Configuration(실행 구성) 섹션으로 이동되었습니다.

Windows에서 일반 또는 관리자 권한으로 MSVC LLDB 기반 디버그에서 이 옵션을 사용할 수 있습니다.

사용자 경험

밝은 헤더가 있는 밝은 테마

밝은 헤더가 있는 밝은 테마

2023.2 버전에서는 창 헤더, 툴팁 및 알림 풍선에 그에 어울리는 밝은 색상을 제공하는 Light with Light Header(밝은 헤더가 있는 밝은 테마)라는 또 다른 옵션을 도입하여 Light(밝은) 테마의 사용자 경험을 개선했습니다.

실행 구성 고정

실행 구성 고정

여러 실행 구성을 더 쉽게 관리할 수 있도록 Run(실행) 위젯에서 원하는 구성을 고정하는 옵션을 구현했습니다.

macOS에서 창 제어 기능 업데이트

macOS에서 창 제어 기능 업데이트

새 UI를 사용하여 macOS에서 전체 화면 모드로 작업할 때 창 제어 기능이 이제 이전처럼 플로팅 바가 아닌 메인 툴바에 바로 표시됩니다.

Linux의 새로운 UI에서 제목 표시줄 제거

Linux의 새로운 UI에서 제목 표시줄 제거

Linux 사용자의 편의를 위해 새 UI 적용 시 운영 체제의 기본 헤더가 제거되어 한층 깔끔한 인터페이스를 지원합니다. 이제 사용자 지정 IDE 헤더가 기본적으로 표시되며, 작업공간을 맞춤 설정할 수 있는 다양한 사용자 지정 옵션이 제공됩니다.

색상이 지정된 프로젝트 헤더

색상이 지정된 프로젝트 헤더

CLion에는 열려 있는 여러 프로젝트 사이를 쉽게 이동할 수 있도록 색상이 지정된 헤더가 도입되었습니다. 이제 각 프로젝트에 고유한 색상과 아이콘을 지정하여 작업공간에서 쉽게 구분할 수 있습니다.

메인 툴바 사용자 지정

메인 툴바 사용자 지정

새로운 UI 메인 툴바의 사용자 지정 옵션이 확장되었습니다. 이제 드롭다운 메뉴를 사용해 툴바에 추가할 액션을 빠르게 선택할 수 있습니다. 위젯을 마우스 오른쪽 버튼으로 클릭하고 Add to Main Toolbar(메인 툴바에 추가)를 선택한 다음 사용 가능한 옵션을 둘러보세요.

Search Everywhere(전체 검색)의 텍스트 검색

Search Everywhere(전체 검색)는 파일, 클래스, 메서드, 액션 및 설정을 검색하는 데 주로 사용됩니다. 이번 업데이트로 Find in Files(파일에서 찾기)와 유사한 텍스트 검색 기능이 제공됩니다.

기타 개선 사항

  • CLion 및 기타 IntelliJ 기반 IDE의 2023.2 버전에 GitLab 조기 통합 기능이 도입되어 IDE에서 바로 Merge Request(병합 요청) 기능을 사용하고 개발 워크플로를 간소화할 수 있습니다.
  • Windows에서 이제 CLion은 ARM이 아닌 시스템에서 x86 대신 amd64 Visual Studio 툴체인 아키텍처를 기본적으로 지원합니다.