편집기와 분석 분리
언어 서버는 소스 분석 기능을 편집기와 분리해 제공한다. Ccls를 지원하는 클라이언트와 연결하면 코드 완성과 진단, 이름 변경 등의 기능을 사용할 수 있다. 실제 표시 방식과 조작은 편집기 통합에 따라 달라진다.
프로젝트의 관계 탐색
정의와 참조뿐 아니라 호출 및 상속 관계 같은 구조를 탐색할 수 있다. 프로젝트 전체 색인은 파일 사이의 관계를 찾는 데 중요하다. 최초 색인을 병렬로 처리하고 이후 변경을 반영하는 방식으로 탐색 자료를 관리한다.
설정과 색인 상태
소스를 올바르게 이해하려면 헤더 경로와 매크로 등 빌드 조건이 맞아야 한다. 색인이 완성되기 전에도 요청에 응답할 수 있으므로 초기 결과와 전체 색인 뒤의 결과를 구분한다. 탐색 결과가 부족하면 설정과 색인 진행 상태를 함께 점검한다.
관련 문서
Clangd / Clang / Compiledb / Bear 컴파일 데이터베이스