1. 개요
Language Server Protocol, LSPIDE상에서 다양한 프로그래밍 언어의 개발 편의 기능을 보편적으로 구현하기 위해 탄생한 프로토콜. 여기서의 개발 편의 기능에는 포맷팅, 자동 완성, 구문 강조 등이 포함된다.
LSP등장 이전에는, 흔히 IDE에서 제공되는 문법 검사, 구문 강조 등의 기능은 각 IDE가 자체적으로 구현할 몫이었다. 그러나 이는 효율적이지 못한 것이, 한 언어의 명세는 하나인데도 이에 따른 IDE의 구현이 양립할 수 밖에 없었다. 또한 새로운 언어가 탄생했다면, 어떤 IDE가 관련 편의기능을 구현해서 실사용이 가능하기까지의 과정도 길었다.
따라서 언어 관련 처리를 IDE 자체에서 구현하는 것이 아닌, 각 언어의 종속적인 기능들만 처리하는 '언어 서버'를 두어 이 둘을 분리하도록 한 것이다.
2. 유래와 역사
LSP는 Visual Studio Code의 개발 과정에서 탄생했다.2020년대에는 LSP가 빠르게 표준으로 자리잡아 다양한 IDE 및 기업에서 채용되었다.