Red de conocimiento informático - Material del sitio web - Usando ccls en eglot

Usando ccls en eglot

En primer lugar, eglot es un entorno integrado para el modo lsp. El autor dice que es más que una simple herramienta lsp. Pero no obtengo mucha más información de la documentación. eglot es prácticamente solo un marco. Lo que necesita debe instalarse por separado, y la relación correspondiente es la siguiente:

javascript-typescript-stdio de Java

rls de Rust

pyls de Python

Solargraph de Ruby

Servidor de lenguaje JDT Eclipse de Java

Servidor de lenguaje bash de Bash

Servidor de lenguaje php de PHP

ccls de C/C (también se pueden usar cquery y clangd)

Motor IDE de Haskell

Servidor de lenguaje kotlin de Kotlin

Golang go-langserver

Servidor de lenguaje ocaml de Ocaml

Servidor de lenguaje de R

Servidor de lenguaje_dart de Dart

Por ejemplo, esta prueba requiere soporte lsp para Python. Necesitas instalar Pyls. Las entradas para cada lsp se pueden encontrar en el archivo README de eglot. Aquí se explica cómo instalar eglot (pyls).

Eglot depende de pyls. Por lo tanto necesitas instalar ambos archivos al mismo tiempo.

M-x package-install RET eglot RET

pip3 install 'python-language-server[all]'

Configuración después de completar la instalación:

(add-hook 'python-mode-hook 'eglot-ensure)

Abrir ".

Pero la función de autocompletar no es muy útil y no lo hará automáticamente. Solicite elementos completables. Debe presionar la tecla TAB para que aparezca. Y no admite el uso de M-n (n es 0-9) para seleccionar elementos completados. ccls es un servidor de lenguaje C/C/ObjC/CUDA. Amplio conjunto de características: finalización automática para buscar definiciones, referencias y otras referencias cruzadas, árbol de llamadas/árbol de miembros/árbol de herencia formato automático (formato clang integrado) cambio de nombre de símbolos símbolos de documentos y símbolos de espacio de trabajo diagnóstico de información al pasar el cursor Mensajes y acciones de código Resaltado semántico y omitir áreas de preprocesamiento. La navegación semántica rápida admite todos los editores que admiten el protocolo del servidor de idiomas. Algunos editores proporcionan complementos para una personalización más completa.