📜  nvim css 语言服务器 cssls unknown at rule (1)

📅  最后修改于: 2023-12-03 14:44:50.204000             🧑  作者: Mango

CSS Language Server (cssls)

CSS Language Server (cssls) 是一个用于提供对 CSS 文件语言服务的工具。它能够分析 CSS 文件并提供自动完成、跳转到定义、查找引用等功能,以提高程序员在处理 CSS 文件时的效率。

介绍

cssls 是基于 Language Server Protocol (LSP) 构建的,它为编辑器或集成开发环境(IDE)提供了一种与后端语言服务器进行通信的标准化方式。

该语言服务器可以通过与编辑器插件配合使用,为程序员提供了一系列便利的功能,包括:

  • 自动完成:根据当前上下文提供相应的 CSS 属性、选择器、值等的自动完成建议。
  • 跳转到定义:在 CSS 文件中点击某个选择器或属性时,可以跳转到相应的定义位置。
  • 查找引用:查找 CSS 文件中对某个选择器或属性的引用位置。
  • 重命名:对某个选择器或属性进行重命名,同时更新其他相关的引用位置。
  • 代码片段:提供一些常用的代码片段,可以快速插入到 CSS 文件中。

除了上述功能外,cssls 还支持代码格式化、错误提示、语法高亮等常见的编辑器功能,以提升开发效率和代码质量。

如何使用

要使用 cssls,首先需要将其与编辑器或 IDE 集成。以下是在 nvim(Neovim)编辑器中集成 cssls 的示例配置:

1. 安装 nvim 插件管理器(例如 `vim-plug` 或 `dein.vim`)
2. 在 nvim 的配置文件中添加以下内容:

   ```vim
   " 使用 vim-plug 插件管理器
   Plug 'prabirshrestha/vim-lsp'
   Plug 'prabirshrestha/asyncomplete.vim'
   Plug 'prabirshrestha/asyncomplete-lsp.vim'
   Plug 'css-lsp/css-languageserver', { 'do': 'npm install' }

   " 配置 css-languageserver
   au User lsp_setup call lsp#register_server({
        \ 'name': 'cssls',
        \ 'cmd': {server_info->['node', '$HOME/.vim/plugged/css-languageserver/node_modules/vscode-css-languageserver-bin/cssServerMain.js', '--stdio']},
        \ 'whitelist': ['css'],
        \ })
  1. 重启 nvim,并打开任意 CSS 文件,即可开始使用 cssls 提供的功能。

## 注意事项

- 在使用 cssls 之前,确保已经安装了 Node.js 和 npm,并且在安装 css-languageserver 时成功执行了 `npm install` 命令。
- 需要根据你的编辑器或 IDE 的要求进行适当的配置,以让其能够识别和连接到 cssls 提供的语言服务。

以上是有关 CSS Language Server (cssls) 的简要介绍,通过将其与编辑器或 IDE 集成,开发人员可以更高效地处理 CSS 文件,并享受到提供的丰富功能。希望这对你有帮助!